summaryrefslogtreecommitdiffstats
path: root/media/libmedia/IMediaMetadataRetriever.cpp
Commit message (Collapse)AuthorAgeFilesLines
* Fix potential double close in IMediaMetadataRetriever::setDataSourceTaiju Tsuiki2015-12-181-1/+1
| | | | | | | | | | | | | | IMediaMetadataRetriever::setDataSource(fd, offset, length) takes the ownership of |fd| on the direct invocation, and doesn't take the ownership on invocation from Binder. This is inconsintent to other similar methods like IMediaPlayer::setDataSource, and causes potential double close of |fd|. This CL changes the caller and implementations to leave the ownership to make them consistent. Also, fixes a double close in IMediaPlayerService::setDataSource in an error case. Change-Id: Id551a1e725c4392b0fe6b7293871212eb101c0a5
* Unhide the android.media.[Media]DataSource interface.Chris Watkins2015-04-151-0/+18
| | | | | | | | | | | | | | | | | | | | | This allows apps to implement MediaDataSource, which is modeled on stagefright's DataSource, to supply media data to the framework. This was already implemented for MediaExtractor, but it was renamed from DataSource. MediaExtractor, MediaPlayer and MediaMetadataRetriever each have a new overload: #setDataSource(android.media.MediaDataSource) Only NuPlayer supports this new data source. The change introduces: * IDataSource: The binder interface for DataSource. * JMediaDataSource: The native counterpart to the java interface. It implements IDataSource. * CallbackDataSource: A stagefright DataSource that wraps an IDataSource. Change-Id: Ib3c944b49cc8a792c8eb9c85e5015c07f298ebc1
* namespace does not need a closing semicolonGlenn Kasten2015-03-231-1/+1
| | | | Change-Id: Ie8f9d42fc061f6d558f23b98414e04eb3d14b376
* Update calls to IInterface::asBinder()Marco Nelissen2014-11-141-3/+3
| | | | | | to use the new static version. Change-Id: I89a5988a0ac694ffc04d88cf939e8455bf925d4c
* libmedia: 64-bit compile warningsMark Salyzyn2014-06-201-2/+4
| | | | Change-Id: I600f062fa7148c01851023c1240c39939e648002
* resolved conflicts for merge of 47c888a9 to masterGlenn Kasten2014-05-021-3/+3
|\ | | | | | | Change-Id: I4ba2fdc6374a93a892bb7651b0d174e495f09bf6
| * When passing a size_t via binder, use 64-bits unconditionallyGlenn Kasten2014-02-131-3/+3
| | | | | | | | | | | | | | | | | | 64-bits is almost always over-kill. But it's easier and cleaner to change the binder code to be accurate, than to rename all the the API parameter types to be 32-bit. Bug: 12381724 Change-Id: Ib8f198d814a2027760ef24e9e3feacee21a973b1
| * Avoid invalid memory access when using extractMetadata()Sangkyu Lee2013-02-281-1/+16
| | | | | | | | | | | | | | | | | | | | | | BpMediaMetadataRetriever::extractMetadata() returns a string which is returned by readCString() function of the reply parcel object. However, the parcel object is destroyed at the end of the extractMetadata() function, and so the returned pointer is invalid. This patch fixes this problem by storing the metadata string value. Change-Id: I2a2ccba78246175b2845a237679d6cebe881e83b Signed-off-by: Sangkyu Lee <sk82.lee@lge.com>
* | FINAL ATTEMPT: HTTP services are now provided from JAVA and made available ↵Andreas Huber2014-02-041-2/+17
| | | | | | | | | | | | to media code Change-Id: I9f74a86e70422187c9cf0ca1318a29019700192d
* | Avoid invalid memory access when using extractMetadata()Sangkyu Lee2013-02-281-1/+16
|/ | | | | | | | | | | BpMediaMetadataRetriever::extractMetadata() returns a string which is returned by readCString() function of the reply parcel object. However, the parcel object is destroyed at the end of the extractMetadata() function, and so the returned pointer is invalid. This patch fixes this problem by storing the metadata string value. Change-Id: I2a2ccba78246175b2845a237679d6cebe881e83b Signed-off-by: Sangkyu Lee <sk82.lee@lge.com>
* libmedia: remove skia includeColin Cross2012-03-241-1/+0
| | | | | | skia is not used in this file, remove the unnecessary include. Change-Id: Ib4d0e0c0090c6b37ff8cfb816c0d8ba82a9638a4
* Rename (IF_)LOGV(_IF) to (IF_)ALOGV(_IF) DO NOT MERGESteve Block2011-10-261-2/+2
| | | | | | | See https://android-git.corp.google.com/g/#/c/143865 Bug: 5449033 Change-Id: I0122812ed6ff6f5b59fe4a43ab8bff0577adde0a
* Remove dead code related to gettidGlenn Kasten2011-06-031-23/+3
| | | | | | The gettid system call is always available now. Change-Id: Ib78b41781eda182dc8605daf456bbea7ff7c2dc0
* Support passing headers to MediaMetadataRetriever's setDataSource APIAndreas Huber2011-03-211-2/+27
| | | | | Change-Id: Ib1a5c08fc5034cac05034db27007a35c9b660b26 related-to-bug: 3506316
* Publish MediaMetadataRetriever.java as public APIJames Dong2011-01-121-16/+0
| | | | | | | | | | | | o Removed setMode() methods and related mode constants o Removed some of the unused the metadata keys o Updated the javadoc o part of a multi-project change. bug - 2433195 Change-Id: I5ed167f1fd6a53cb143b7dc385b149431d434438
* Prepare for publishing MediaMetadataRetriever as public APIJames Dong2010-12-031-23/+11
| | | | | | | | | | step one: o replaced captureFrame with getFrameAtTime o removed getMode bug - 2433195 Change-Id: I38a8cecef29014692f0b08b8818326e3ebb40a12
* Fix simulator build.Dave Sparks2009-11-231-3/+12
|
* Set metadata retriever thread group to the caller's group.Dave Sparks2009-11-231-3/+75
| | | | | | | | | | | | | | This patch modifies the native binder interface to the metadata retriever to pass the caller's thread group across the binder interface. On the server side, the thread scheduler group is set to the caller's scheduler group temporarily and restored after the request has completed. This patch also reverts a previous patch where the priority of the thread was forced to a low priority foreground thread. This should give apps more control over the priority of their metadata retrieval, particularly allow background process to run without hogging the CPU.
* Renamed all android.hardware.IMedia* strings to android.media.IMedia*niko2009-06-221-2/+1
| | | | | | | | | | The android.hardware.ICamera string have not been changed (but is looks like the camera service and client one should undergo the same procedure) The implementation of the interface must provide a unique string for it's interface name. Currently all these strings in the media framework start with 'android.hardware' when it should really be 'android.media', the interface token has nothing to do with hardware.
* some work to try to reduce the code size of some native librariesMathias Agopian2009-05-261-6/+0
| | | | | | | | | | | | | | | | | - make sure that all binder Bn classes define a ctor and dtor in their respective library. This avoids duplication of the ctor/dtor in libraries where these objects are instantiated. This is also cleaner, should we want these ctor/dtor to do something one day. - same change as above for some Bp classes and various other non-binder classes - moved the definition of CHECK_INTERFACE() in IInterface.h instead of having it everywhere. - improved the CHECK_INTERFACE() macro so it calls a single method in Parcel, instead of inlining its code everywhere - IBinder::getInterfaceDescriptor() now returns a "const String16&" instead of String16, which saves calls to String16 and ~String16 - implemented a cache for BpBinder::getInterfaceDescriptor(), since this does an IPC. HOWEVER, this method never seems to be called. The cache makes BpBinder bigger, so we need to figure out if we need this method at all.
* move libbinder's header files under includes/binderMathias Agopian2009-05-201-1/+1
|
* auto import from //depot/cupcake/@135843The Android Open Source Project2009-03-031-0/+218
|
* auto import from //depot/cupcake/@135843The Android Open Source Project2009-03-031-218/+0
|
* auto import from //branches/cupcake/...@125939The Android Open Source Project2009-01-091-1/+1
|
* Code drop from //branches/cupcake/...@124589The Android Open Source Project2008-12-171-0/+218