summaryrefslogtreecommitdiffstats
path: root/media/libstagefright/omx
Commit message (Collapse)AuthorAgeFilesLines
* Only emit padding at the end of the stream in the aac and mp3 decodersAndreas Huber2012-08-071-3/+14
| | | | | | if we actually discarded content at the beginning of the stream. Change-Id: I1e79835bb3a02350060a137b94f85f2c90f4a12b
* Synchronize access to OMX class member variablesHaynes Mathew George2012-07-201-7/+10
| | | | | | - Protect access to mLiveNodes KeyedVector member variable in freeNode function Change-Id: Ic86844aabc2bc897ffb7fc91cd1f54254f5e29fe
* Add NOTICE and MODULE_LICENSE_APACH2 to libs build under /frameworks/av/James Dong2012-06-134-0/+380
| | | | | Change-Id: I0a3af3e2abdedebd5934f3d941d01c32cfc75e26 related-to-bug: 6647465
* OMX IL wrapper for FLAC encoderJean-Michel Trivi2012-05-091-0/+1
| | | | | | | | | | Add wrapper around libFLAC for FLAC encoding in OpenMAX IL. Declare FLAC encoder in OMX component roles. Bug 5525503 Change-Id: I19bbce41c216870669d09365693f4ea89f8bc0f7
* Fix assertion triggered when mediaserver dies at roughly the sameAndreas Huber2012-05-011-1/+5
| | | | | | | time that a client attempts to explicitly free an OMX node. Change-Id: I767e6af402801357da20b328611cc7cddeed0260 related-to-bug: 6012750
* Software MPEG4/H263 video encoder is now OMX-basedJames Dong2012-04-251-0/+2
| | | | | | o related-to-bug: 6401068 Change-Id: If8eccea060f38e42ad31eb6e91aaa832e67c5559
* Software AVC encoder is now OMX-basedJames Dong2012-04-241-0/+1
| | | | | | o related-to-bug: 6383440 Change-Id: I0b1ae50a704b0979857ea447585eabe86602149a
* Implementation of a raw audio "decoder".Andreas Huber2012-03-291-0/+1
| | | | Change-Id: Ie89f01e59dd8106883937188afbb407550f0ac92
* AV Android make files changesJames Dong2012-03-282-2/+2
| | | | | | | o plus a few file relocation: ActivityManager.cpp/h, SoundPool.h, etc o remove some runtime dependencies to libandroid, libandroid_runtime, etc Change-Id: I047a47c5fb361dd5cf85cd98798c39f629a75d10
* Remove JNI in LOCAL_C_INCLUDE from non-JNI related Android.mk files.James Dong2012-03-242-3/+0
| | | | | | o related-to-bug: 6214141 Change-Id: Ic88d1732b3e014af47532a0809e01f6086e8464d
* Remove obsolete OMXComponentBase classAndreas Huber2012-03-163-298/+0
| | | | Change-Id: I701ff5a57b0ab49cc772c4f82d03b5005e54ec6f
* Switched to use the header files in /frameworks/nativeJames Dong2012-03-125-5/+6
| | | | | | | | and deleted the duplicate header files in /frameworks/base o related-to-bug: 6044887 Change-Id: I17e0692d9a9b5c8796ded36677c833ca8ab36795
* Move away from MediaDebug and use ADebug insteadJames Dong2012-02-106-25/+25
| | | | Change-Id: I963a3b6f79a7292891973cbeeaf3378b38629f08
* Merge "Removed a loop for buffer lookup"James Dong2012-02-021-17/+18
|\
| * Removed a loop for buffer lookupJames Dong2012-02-021-17/+18
| | | | | | | | | | | | | | o used the nInputPortIndex and nOutputPortIndex from header instead of assuming that the # of ports == 2 Change-Id: I4b615912b088b4e2bac9c00e89986e811a5c58bb
* | The AMR WB software encoder is now an OMX component.Andreas Huber2012-02-011-0/+1
| | | | | | | | Change-Id: Iebfb2696783a0163369ba4e8ef72e19ee76ad893
* | The software AMR NB encoder is now an OMX component.Andreas Huber2012-02-011-0/+1
| | | | | | | | Change-Id: I890eab052a7c36409b8b694c964884e28dd8d8fc
* | Merge "add tests module tag to omx_tests"James Dong2012-01-311-2/+4
|\ \
| * | add tests module tag to omx_testsJames Dong2012-01-311-2/+4
| |/ | | | | | | Change-Id: I5dcb5187f09a7ae980ac5857b7ade81001d459f8
* | Slighly improve the API to discover if the OMX stack is running in the localAndreas Huber2012-01-311-1/+1
|/ | | | | | process. Change-Id: Idd3c2f0d4a9542af01a3fdfd3b0bfab90e083505
* The software AAC encoder is now an OMX component.Andreas Huber2012-01-261-0/+1
| | | | | | Yay. Change-Id: I74938a20b4e0a622836ea5184d3761180eb0f5de
* Rename (IF_)LOGE(_IF) to (IF_)ALOGE(_IF) DO NOT MERGESteve Block2012-01-084-21/+21
| | | | | | | See https://android-git.corp.google.com/g/#/c/157220 Bug: 5449033 Change-Id: Ic9c19d30693bd56755f55906127cd6bd7126096c
* Rename (IF_)LOGW(_IF) to (IF_)ALOGW(_IF) DO NOT MERGESteve Block2012-01-061-1/+1
| | | | | | | See https://android-git.corp.google.com/g/157065 Bug: 5449033 Change-Id: I00a4b904f9449e6f93b7fd35eac28640d7929e69
* Rename (IF_)LOGI(_IF) to (IF_)ALOGI(_IF) DO NOT MERGESteve Block2012-01-041-7/+7
| | | | | | | See https://android-git.corp.google.com/g/156801 Bug: 5449033 Change-Id: Ib08fe86d23db91ee153e9f91a99a35c42b9208ea
* Rename (IF_)LOGV(_IF) to (IF_)ALOGV(_IF) DO NOT MERGESteve Block2011-10-264-14/+14
| | | | | | | See https://android-git.corp.google.com/g/#/c/143865 Bug: 5449033 Change-Id: I0122812ed6ff6f5b59fe4a43ab8bff0577adde0a
* Stagefright: idle OMX after ANW errorsJamie Gennis2011-10-192-0/+14
| | | | | | | | | | | | | | This change fixes an issue in Stagefright where the state of an OMXCodec object can get out of sync with the state of the OMX component. In particular, if one of the ANativeWindow functions failed and put the OMXCodec into the ERROR state, this would cause Stagefright to skip doing the Executing -> Idle transition. Without this transition the freeBuffersOnPort call would never be made, and the MediaBuffers would end up being leaked (which would also leak the Gralloc buffers they reference). Bug: 5333695 Change-Id: I85ea0cf92d18e7ef6d35c7d1e2a7b4e2c9745d34
* Various improvements to nuplayer playbackAndreas Huber2011-09-162-2/+2
| | | | | | | | | | | | | | | | | | | | - Drastically cut down the number of times we supply the AudioSink with data by estimating the time until the sink would run out of data and then scheduling a refill in advance of that. - Use a dedicated looper for video decoders since they are currently taking too long to return from OMX_FillThisBuffer (bug 5325201) - Revise thread priorities for the OMX dispatcher and software codecs, instead of running them at ANDROID_PRIORITY_AUDIO, they now only run at ANDROID_PRIORITY_FOREGROUND - Since threads created by pthread_create inherit all of the parent threads attributes including thread priority, briefly reset thread priority to ANDROID_PRIORITY_FOREGROUND before instantiating OMX components and then restore it. Change-Id: If9332a3a20dad5485333d68c11de0d2d5d3fffc3
* Merge "Remove useAndroidNativeBuffer(2) warning message."Chih-Chung Chang2011-08-211-3/+0
|\
| * Remove useAndroidNativeBuffer(2) warning message.Chih-Chung Chang2011-08-181-3/+0
| | | | | | | | Change-Id: I3e9765e7271d80fda302e521501720bf8c13e5c7
* | Stagefright: fix a compiler warningJamie Gennis2011-08-111-1/+1
|/ | | | Change-Id: Ia6b2027dfe80960450156d918bdd7fe1567cafea
* libstagefright: add destroyOMXPlugin and use C linkage for symbolsIliyan Malchev2011-07-271-2/+13
| | | | | | | | | | | | | | | | Add a destroyOMXPlugin() to complemenet createOMXPlugin(). Since the latter is an opaque call into a library, it is not safe to assume that the object thus returned may be destroyed by calling delete. This patch will call destroyOMXPlugin() in libstagefrighthw.so, if the symbol is defined there. Otherwise, it will default to a delete as before. Also, prefer C linkage for the symbol names. Using mangled C++ symbols is not very safe and makes it hard to grep for those symbols through the code. We attempt to locate createOMXPlugin as a C symbol then try it as a mangled C++ one. We only use C linkage for destroyOMXPlugin since this symbol is new. Change-Id: Ied23c910486856a0f18056df049c871234797c5c Signed-off-by: Iliyan Malchev <malchev@google.com>
* Remove PV AVC decoderJames Dong2011-07-191-1/+0
| | | | Change-Id: Icf056c852f95b5d6a07473728ddbf5b641990381
* Bug 5031179 possible fix for assert in joinGlenn Kasten2011-07-141-2/+7
| | | | Change-Id: Id3a24c152579b8fdcfb9d66a11aa11579406a7ec
* Merge "OMX CallbackDispatcher uses C++ Thread not pthread"Glenn Kasten2011-07-141-28/+35
|\
| * OMX CallbackDispatcher uses C++ Thread not pthreadGlenn Kasten2011-07-121-28/+35
| | | | | | | | | | | | This permits leveraging future improvements to Thread. Change-Id: I45e25a309e7edd1d4f0dacc5ec987329afa497d9
* | Remove the simulator target from all makefiles.Jeff Brown2011-07-111-8/+1
|/ | | | | | Bug: 5010576 Change-Id: I04d722f258951a3078fe07899f5bbe8aac02a8e8
* Update paths to test content used to run the omx_tests.Andreas Huber2011-06-271-11/+7
| | | | Change-Id: I23201ac1541df032426cb05b9dc872b28882f992
* Stagefright: add support for gralloc OMX_UseBuffer.Anu Sundararajan2011-06-231-0/+65
| | | | | | | | | | | | | | | XXX: This change should go along with a documentation change to HardwareAPI.h that describes the new extension. This change adds support for passing a buffer_handle_t to OMX_UseBuffer during OMXCodec initialization. This new way of passing the buffer_handle_t's replaces the old OMX_SetParameter-based approach, and this change deprecates that interface, but still supports it for OMX IL implementations that do not support the new interface. Change-Id: If9c1cb3c6c349c54dab094aeb8af13eae9f85271 Signed-off-by: Jamie Gennis <jgennis@google.com> Signed-off-by: Sarthak Aggarwal <sarthak@ti.com>
* Log an error instead of asserting if the OMX plugin reports an error.Andreas Huber2011-06-211-1/+5
| | | | Change-Id: I2bae80706495c5c5d4257cd607c2141c070c5ff9
* Remove unneeded #include <sys/resource.h>Glenn Kasten2011-06-151-1/+0
| | | | | | Suggested in code review for previous change. Change-Id: Ic3225b240367dc6c9bf56fb4498fb8a0f9f806ec
* Bug 4608375Glenn Kasten2011-06-141-1/+1
| | | | | | Update priority and policy together for audio threads Change-Id: Ib3b07b32586c222c4aacbf23414ae8b05db502be
* Initial-checkin for ON2 Software AVC/H264 decoderJames Dong2011-06-021-0/+1
| | | | | | | | | | | | | | o when neon is present, the performance gain of On2 AVC software decoder over PV software decoder is more than 30%. o In addition, it fixes some known PV software decoder issues like missing output frames o allow both pv and on2 software avc to be available for easy comparision o change output frames from 8 to 16 Change-Id: I567ad1842025ead7092f0c47e3513d6d9ca232dd
* Make sure all references to the decoder plugin are accounted forAndreas Huber2011-05-242-1/+7
| | | | | | | before calling dlunload(). Change-Id: I59aa1d19edf566b8a86a6f73b1c2eeb47c96b0de related-to-bug: 4466387
* Make sure the software mpeg4 decoder supports multiple input frames per ↵Andreas Huber2011-05-241-0/+2
| | | | | | | | input buffer to enable faster throughput in ACodec. Change-Id: I6f6a1c70d9446f9d52c3df257b2d22358b0e71f4
* Squashed commit of the following:Andreas Huber2011-05-1110-152/+1192
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | commit c80992e419ed567abef451042f09c4958534b90d Author: Andreas Huber <andih@google.com> Date: Wed May 11 14:00:07 2011 -0700 Support for the mp3 audio decoder as a software OMX component. Change-Id: I66e10c4d0be4c3aecdef1c21b15a2c7359ceb807 commit a358d0e1bf2a88897887445f42ccdda0f5f2f528 Author: Andreas Huber <andih@google.com> Date: Wed May 11 13:11:23 2011 -0700 Support for G.711 alaw and mulaw decoders as software OMX components Change-Id: Ia5c76c02cb83a9f94ce39a27b2251e5880218f03 commit 79088b9c9a5c8b8c97ea66cb4f90a2b0f0d34553 Author: Andreas Huber <andih@google.com> Date: Thu May 5 15:43:32 2011 -0700 Instead of using an RGB surface and conversion yuv420->rgb565 convert from OMX_COLOR_FormatYUV420Planar to HAL_PIXEL_FORMAT_YV12 instead. Change-Id: I8c4fc3c54c963f0d4ba6377f3c4ab4e0013152e5 related-to-bug: 4394005 commit 69469d3bd84425777b11b9fc938c5e0c61af26a7 Author: Andreas Huber <andih@google.com> Date: Tue May 10 15:46:42 2011 -0700 voip mustn't link against libstagefright.so Change-Id: I4d0ba9a8b9dc9380b792a1bd04bcda231964862c commit 2a9a9eeeeeb36ae3a9e680469c3016d509ff08c3 Author: Andreas Huber <andih@google.com> Date: Tue May 10 14:37:10 2011 -0700 Remove most non-OMX software decoders by default Change-Id: Ic56514bc1b56b8fa952e8c4a164ea7379ecb69d0 commit a4de62c37b335c318217765403a9fb282b20a216 Author: Andreas Huber <andih@google.com> Date: Mon May 9 16:50:02 2011 -0700 Conditionally build the old-style software decoders. Change-Id: I5de609e1d76c92d26d6eb81d1551462258f3f15f commit 5d8b039f9449dc3dad1e77c42c80cc0b54b0c846 Author: Andreas Huber <andih@google.com> Date: Mon May 9 16:13:12 2011 -0700 Support for MPEG4 and H.263 video decoders as soft OMX components. Change-Id: I5e3a4835afab89f98e3aa128d013628f5830eafe commit b25a1bfbeb0ff6e62e1cc694ce2599c91489c7d0 Author: Andreas Huber <andih@google.com> Date: Mon May 9 11:49:10 2011 -0700 Boost Soft OMX thread priority, fix timestamp handling in vorbis Soft OMX decoder. Change-Id: I68d26d4999f06fcc451d69e5303663fab0cba9e8 commit c0574362f8dc3319ce84d981097867062a698527 Author: Andreas Huber <andih@google.com> Date: Mon May 9 11:28:53 2011 -0700 Support for the AMR decoders (NB and WB) as Soft OMX components. Change-Id: Ia565f59833fb52653e23f26536e7e41fc329a754 commit 3e5575a8f0e27a490cb7bde77bd9456087837f08 Author: Andreas Huber <andih@google.com> Date: Wed May 4 13:41:25 2011 -0700 Signal an error if the aac decoder failed to initialize from codec specific data. Change-Id: I01da7831bdf722edd7d6dc5974486daa2cf2b209 related-to-bug: 4272179 commit f94aeaa9886e772ff4823e671ed237096649f4af Author: Andreas Huber <andih@google.com> Date: Tue May 3 13:07:38 2011 -0700 Software OMX nodes don't (yet?) support native_window mode. Change-Id: I7d9ca9164ef4abf66b573ca21dba12d672f8b12d commit eefdfabac8dc659e00daa56da69aea705c49cb67 Author: Andreas Huber <andih@google.com> Date: Tue May 3 12:57:16 2011 -0700 Fixing the OMX tests to refer to appropriate files from test content. Change-Id: I5b61c3498749bfb876abbd3946a5132356e3f6ff commit f31b7326aef14b6a1b7946520a9688f092e844d5 Author: Andreas Huber <andih@google.com> Date: Tue May 3 11:08:38 2011 -0700 Soft OMX components are now dynamiclly loaded/unloaded, not directly linked against. Change-Id: I1e2ecfbfab67a8869886f738eaf0c7b3c948b6d9 commit b7f0343879e4df06f0a1c9bfece24df557954e2f Author: Andreas Huber <andih@google.com> Date: Mon May 2 15:58:36 2011 -0700 Support for the AVC software decoder as an OMX component. Change-Id: I13c12df435ba4afbd968a9fc659f66b91c818bc2 commit 5bb9e616d6c8e1b13d531fe996b9a9affdfb2977 Author: Andreas Huber <andih@google.com> Date: Fri Apr 29 12:05:37 2011 -0700 Fix Vorbis OMX decoder's component role. Change-Id: I5e871e5e11b3f951c93590210e63fd7987c467b5 commit 089c91f2333062e196c7afd5fb0ca914878aa474 Author: Andreas Huber <andih@google.com> Date: Fri Apr 29 12:05:18 2011 -0700 Support vorbis_decoder OMX testing. Change-Id: I1985be178a12ae3f8768bc72067d9236238be170 commit 56e241fa36fc37219bc536b823bdc2ab82dc1fad Author: Andreas Huber <andih@google.com> Date: Fri Apr 29 12:01:46 2011 -0700 SoftVorbis OMX component now respects the number of valid frames per page. Change-Id: I82a117a064d9b083fc58a54ad900a987a763ef03 commit fcd618ec520c376fdb78f4cbb44b8d9f5d213e2b Author: Andreas Huber <andih@google.com> Date: Fri Apr 29 10:59:38 2011 -0700 Support for the vorbis audio decoder as a soft OMX component. Change-Id: Iaeb057e58ca306d3dce205c0445b74d5aefef492 commit d1fcc3203fc8003ad79c6e96b3a1fc4261743f16 Author: Andreas Huber <andih@google.com> Date: Fri Apr 29 10:07:50 2011 -0700 VPX decoder now properly resizes buffers after a port settings change. Change-Id: I110749a31b6cba087891d8e5dfe420830bdbf831 commit 35c7168243cb69849d88911144a2c7fdfed5c54e Author: Andreas Huber <andih@google.com> Date: Thu Apr 28 13:23:34 2011 -0700 Support for the VPX video decoder as a Software OMX component. Change-Id: Ic345add2d6d768d4af631160153f2e9b97fcea71 commit 923b2534b4211fc5405377b5190bfa6f2dd27f32 Author: Andreas Huber <andih@google.com> Date: Thu Apr 28 11:34:40 2011 -0700 Table-based registration of soft omx components. Change-Id: I7f45f0fa5b3a7950776e69c66349731f7674e937 commit 04a88f3edb2266a463da9c4481b80178be460902 Author: Andreas Huber <andih@google.com> Date: Thu Apr 28 11:22:31 2011 -0700 Apparently OMX_GetParameter is valid in any state other than OMX_StateInvalid OMX_SetParameter is still constrained to OMX_StateLoaded or a disabled port. Change-Id: I1032d7cf4011982d306aa369d4158a82830d26fb commit 9d70ca68445e7c40f5c9b2d12466e468f514de88 Author: Andreas Huber <andih@google.com> Date: Wed Apr 27 15:03:18 2011 -0700 Use the new soft OMX aac decoder for HTTP live playback. Change-Id: Ifbcfb732a9edb855cb46b49f6d0ac942170ee28f commit 213fe4a10ea93cce08e8622dc3908053f29878a1 Author: Andreas Huber <andih@google.com> Date: Tue Apr 12 16:39:45 2011 -0700 Foundation for supporting software decoders as OMX components Change-Id: I7fdab256563b35d1d090617abaea9a26b198d816 Change-Id: I83e9236beed4af985d10333c203f065df9e09a42
* Fix omx_tests to no longer refer to test files that are no longer available.Andreas Huber2011-04-271-8/+8
| | | | | | Also make sure that a seek beyond EOF does not just seek the final syncframe. Change-Id: I0a58490ef719ce095a94f1d6909c60eb20074a0b
* Ignore OMX codec messages once we're in ERROR state.Andreas Huber2011-03-281-1/+1
| | | | | Change-Id: I2bdf58ed705a641be1f3aec89fa41cada6acfc96 related-to-bug: 4175573
* Add an OMX IL API for querying buffer usage flags.Jamie Gennis2011-02-282-0/+44
| | | | | | | | | | This change defines an OpenMAX IL API for querying from the IL component the gralloc buffer usage flags that should be used to allocate the buffers. It also adds the Stagefright plumbing for using the new OMX IL API. Change-Id: I046b5e7be70ce61e2a921dcdc6e3aa9324d19ea6 Related-Bug: 3479027
* More instrumentation to track down the hardware decoder not shutting down bug.Andreas Huber2011-01-261-1/+19
| | | | | Change-Id: I3f31b6fdf5c90b436567bbce578dcbc4666ed7c2 related-to-bug: 3362836
* Avoid deadlock in OMX::freeNode by making sure OMXCodecObserver does not ↵James Dong2011-01-101-3/+9
| | | | | | | | hold the last reference of OMXCodec object bug - 3336424 Change-Id: I4c79b66a900c527e3ae6a833f76d5da1b75c5a89