History log of /frameworks/av/media/libstagefright/ACodec.cpp
Revision Date Author Comments (<<< Hide modified files) (Show modified files >>>)
41d3f579d2c166984958263533284209b90c87d5 06-Feb-2015 Marco Nelissen <marcone@google.com> Fix GSM WAV playback

Bug:19289381
Change-Id: If7bbf1ecf1cb8796188e61bc2c42f8a099510424
/frameworks/av/media/libstagefright/ACodec.cpp
5a52a060fcbe4804bcf4f61b8a457fe0e18a9014 31-Jan-2015 Lajos Molnar <lajos@google.com> stagefright: set consumer usage flags and desribe YV12 HAL format

Bug: 17906609
Bug: 19179288
Bug: 19179927
Change-Id: I3713d4e894d3350d46e25dc0206b21c0ff3b9009
/frameworks/av/media/libstagefright/ACodec.cpp
3a01a71dcbb467d06cc5da4a72a82bb588648cfc 31-Jan-2015 Lajos Molnar <lajos@google.com> stagefright: add fallback for native flex-YUV support

Use software renderer if codec cannot support flex-YUV on a surface

Bug: 17906609
Change-Id: I3d0e3ff5fee7d7b3e2416892968fa18f6139598a
/frameworks/av/media/libstagefright/ACodec.cpp
0d09182a1dde960f7acda1c28469e5deead1b996 30-Jan-2015 Lajos Molnar <lajos@google.com> stagefright: add support for native flex-YUV formats

Bug: 17906609
Change-Id: I14116796eaa94aa8ae62dcc29f67cb7d2c060d34
/frameworks/av/media/libstagefright/ACodec.cpp
3fb3917ae19f07ddfb2176a9da3c7cfa514522a5 30-Jan-2015 Rachad <rachad@google.com> Acodec: reset sideband handle for all non tunneled mode video playback

Bug: 19202023
Change-Id: I414847d72a3c9fd79f858c4ee457270ec65470b6
/frameworks/av/media/libstagefright/ACodec.cpp
78b01639c08fe5e7e9c1be5e9dc5de560f1383f9 30-Jan-2015 Rachad <rachad@google.com> Acodec: Send framerate information to OMX decoder if available

Bug: 19110889
Change-Id: Ia8dbe1b77aaac421ec9415884e1248b9b68168dc
/frameworks/av/media/libstagefright/ACodec.cpp
0b460ad7557f6be56aad3fa027d93b38d5995ac4 10-Jan-2015 Rachad <rachad@google.com> Merge "ACodec: Added support for E-AC3 decoders" into lmp-mr1-dev
1713460104b86f6be3a5d9993d9ace864d889b2d 08-Jan-2015 Chong Zhang <chz@google.com> mark any copyrighted content as protected to disable capture

bug: 18916274
Change-Id: I23f096b51433bf18a10dc5fe6dc6b75c3881c340
/frameworks/av/media/libstagefright/ACodec.cpp
8a4728966dc9c78e21c3c93a927707e93c05e5e0 24-Dec-2014 Rachad <rachad@google.com> ACodec: Added support for E-AC3 decoders

Bug: 17883772

Change-Id: I05f674c33522eec0e6ceeece88dd800b1857b3ab
/frameworks/av/media/libstagefright/ACodec.cpp
d0b9a2b8538c9e4538d92fd675cf6786644ccb85 13-Dec-2014 Rachad <rachad@google.com> Tunneled video Playback/Max resolution:
Call mOmx->prepareForAdaptivePlayback() to provide max resolution information
to tunneled OMX component.

bug: 17883772
Change-Id: I8f634824103e66483527828993bb24f65e68e419
/frameworks/av/media/libstagefright/ACodec.cpp
a0940a569f2bc24b00dc10ce0fa7658b1dc3a3a5 24-Sep-2014 Lajos Molnar <lajos@google.com> stagefright: misc fixes to software video encoders (and decoders)

- move logic to set encoder parameters to common encoder class
(similarly to what was done for decoders)
- set compressed buffer size based on frame size and compression ratio,
and codec-specific minimum size
- set raw buffer size based on frame size and metadata mode
- do not set stride and slice height on compressed ports
- advertise only QCIF support for google H263 encoder
- set large-enough input size for video decoders to support adaptive
playback
- do not change input buffer size on output port reconfiguration, as
no input buffer reallocation takes place
- do not return empty buffers with EOS after EOS has been signaled

Bug: 18513091
Bug: 18639027
Change-Id: Ib13492ef66adf331aa4572c67d2b283ea020cb41
/frameworks/av/media/libstagefright/ACodec.cpp
4e865a3cfe4c955e0890321a6b488cf661808b63 06-Dec-2014 Lajos Molnar <lajos@google.com> stagefright: preserve output format flags on format change

Some flags are only set in configure, and get lost when output
format changes.

Bug: 17383204
Change-Id: I2011bce70920c4ee46fccc378da3b428f3395c11
/frameworks/av/media/libstagefright/ACodec.cpp
6597c00f7015e5ec9a07601d7a760169ca7266d3 06-Nov-2014 Lajos Molnar <lajos@google.com> stagefright: add (temporary) support for automatic video frc

Use MediaFormat.setInteger("auto-frc", 1) to turn this feature on.
If supported, this feature will show up in codec.getOutputFormat().getInteger("auto-frc")
Otherwise, this key will not be present.

Bug: 17383204
Change-Id: I03549b3ede4de156e9e2d81b3883010360bb42ae
/frameworks/av/media/libstagefright/ACodec.cpp
a32d5435d9585794b72dd12546054f13adb845f2 25-Oct-2014 Lajos Molnar <lajos@google.com> libstagefright: set actual stride info for SW encoder input port

This fixes encoding flexible YUV content using SW encoders.
Also skip setting input color format if it is flexible YUV, as it
has already been translated to a color format supported by the codec.

Bug: 18124320
Change-Id: I423782936986f4d6cf65ea9ef89ae77a92e30140
/frameworks/av/media/libstagefright/ACodec.cpp
30358faf33fb9b638257b017fadb4c5f7352d903 22-Oct-2014 Lajos Molnar <lajos@google.com> stagefright: try to free codec instance if MediaCodec.release hangs

Bug: 18033275
Change-Id: If86cd26566d7b75941976f37829bbec619800778
/frameworks/av/media/libstagefright/ACodec.cpp
447898bca790fae2fdae304073162e980d816b79 14-Oct-2014 Lajos Molnar <lajos@google.com> Merge "ACodec: only check crop rect on output port" into lmp-dev
801a3ff80c36aa9b55dc9b360d0e59f863011a39 13-Oct-2014 Chong Zhang <chz@google.com> Merge "handle case OMX_AUDIO_CodingG711 in ACodec::getPortFormat" into lmp-dev
7225187b5126b921e40f0221db158a16c366344e 13-Oct-2014 Wei Jia <wjia@google.com> Merge "ACodec: process deferred messages when entering Loaded state." into lmp-dev
10d023beb0544591d0f5ff556f7f67356f0d9189 13-Oct-2014 Chong Zhang <chz@google.com> handle case OMX_AUDIO_CodingG711 in ACodec::getPortFormat

Bug: 17935293
Change-Id: Id09190ae813aa9e00a3c1ef6fb8a1bd3021deb6e
/frameworks/av/media/libstagefright/ACodec.cpp
667623ac75700fc1bb4829b8275c4fc29c631fe9 13-Oct-2014 Guang Zhu <guangzhu@google.com> Revert "handle case OMX_AUDIO_CodingG711 in ACodec::getPortFormat"

Bug: 17935293

fix 64-bit builds

This reverts commit 9c78328f4dfd2c8a1dd5d31010f10ffcd762f04b.

Change-Id: Ifbc499342fb47fd67cae02a79cb900e701caed68
/frameworks/av/media/libstagefright/ACodec.cpp
f393c33e65ae51a7cf168b4e15771b152f996b32 11-Oct-2014 Wei Jia <wjia@google.com> ACodec: process deferred messages when entering Loaded state.

Bug: 17792260
Change-Id: Ie8154cf41be5672fc8a9f3a2a82b7ede0a8b828f
/frameworks/av/media/libstagefright/ACodec.cpp
9c78328f4dfd2c8a1dd5d31010f10ffcd762f04b 10-Oct-2014 Chong Zhang <chz@google.com> handle case OMX_AUDIO_CodingG711 in ACodec::getPortFormat

Bug: 17935293
Change-Id: I8eab0acf55df6934e05947b0dbdd1fd456130088
/frameworks/av/media/libstagefright/ACodec.cpp
91a3cc00db31a713a25848f345bd624ac2ad8dc5 08-Oct-2014 Lajos Molnar <lajos@google.com> ACodec: only check crop rect on output port

Bug: 17789956
Change-Id: I0e17660d95ac0b3b051e7f555820188d9286571a
/frameworks/av/media/libstagefright/ACodec.cpp
584c14c370f141685b7e8963a13ed91584383ca1 07-Oct-2014 Rachad <rachad@google.com> Merge "stagefright: do not allocate output buffers for tunneled playback" into lmp-dev
a147b4f91143d9f2fb608e22f9fca14bbd029573 02-Oct-2014 Lajos Molnar <lajos@google.com> mediarecorder: set level if setting default profile

Bug: 17676461
Change-Id: If01ccd09935945d330de0842be95c3544951b6b9
/frameworks/av/media/libstagefright/ACodec.cpp
d0b9efe7d8300e48f7a99c1dd746d60060206b3c 01-Oct-2014 Chong Zhang <chz@google.com> Merge "add AAC audio decoder params for PCM limiter enable" into lmp-dev
2965f4eb7dceaf1173f0e2d93c11c28293aeead7 01-Oct-2014 Chong Zhang <chz@google.com> add AAC audio decoder params for PCM limiter enable

Bug: 17470065
Change-Id: Ib67aa1c50e3b6c24c4b12b0f31a996cc6874abd1
/frameworks/av/media/libstagefright/ACodec.cpp
ab76066c11e988ca3d3a5d6d74dd510ae080322e 23-Sep-2014 Rachad <rachad@google.com> stagefright: do not allocate output buffers for tunneled playback

Do not allocate native window buffers for tunneled video playback codecs.

Bug: 17112525
Change-Id: I262d8030a9df6188938fde5d62ebce8faf7dba1f
/frameworks/av/media/libstagefright/ACodec.cpp
b32ebac7e3afb49b41eeccf130c8a96c1dae85d1 24-Sep-2014 Lajos Molnar <lajos@google.com> stagefright: use frame height if slice height is 0

This is a workaround for some vendors that set slice height to 0.
Android uses slice height is the vertical stride for YUV planar
and semiplanar formats.

Bug: 13433554
Change-Id: I4da038e7a768dcd8360c33fa1a9ce95a172f16bb
/frameworks/av/media/libstagefright/ACodec.cpp
96e92b58b7e9647b4c7c2f54b62a1b357ab06b66 19-Sep-2014 Wei Jia <wjia@google.com> MediaBuffer: ABuffer will release MediaBuffer when it's destructed.

Bug: 17454455
Change-Id: Ia423bcc2e1fa39137f114eac44912ed15357bb99
/frameworks/av/media/libstagefright/ACodec.cpp
5da491bb05009e2062d8a98a153594bb3ff15188 04-Sep-2014 Lajos Molnar <lajos@google.com> stagefright: allow P-frames spacing of 0 and 1

Bug: 17387418
Change-Id: Ib966496b4ca220d96fb3741c29002c13cd2db848
/frameworks/av/media/libstagefright/ACodec.cpp
97827bd7c7e64dec22c8fe0f9e734a3c432ad7ee 29-Aug-2014 Rachad <rachad@google.com> Tunneled Video Playback:
Changed AudioHwSync token to int32_t to match Audio stack api.

Bug: 17112525
Change-Id: I673819495c2e7b540e8d7572cc95796bddbf63bb
/frameworks/av/media/libstagefright/ACodec.cpp
3fb9f68dea5d991288f0ea8037742b50c7df5767 20-Aug-2014 Wei Jia <wjia@google.com> ACodec: handle errors related to native window.

Bug: 17068327
Bug: 13133027
Change-Id: I9875e524222a10d1be26be5a84b9633b4aaeb210
/frameworks/av/media/libstagefright/ACodec.cpp
cd39746f8d83bb3f12e8f613e77c3c3b5f77c077 15-Aug-2014 Lajos Molnar <lajos@google.com> stagefright: allow specifying flac copmression level by 'complexity'

Bug: 11990470
Change-Id: I428961cc654b768773814078f753e2e67243f186
/frameworks/av/media/libstagefright/ACodec.cpp
e53350373ac516257b4f8956ff1e3f1ac48f607e 12-Aug-2014 Lajos Molnar <lajos@google.com> stagefright: allow scenarios when dequeueBufferFromNativeWindow fails

We can run out of native buffers when the bufferqueue is abandoned.

Bug: 16839124
Change-Id: If605f692b87082f1630e1da0fd44da0cb76133f5
/frameworks/av/media/libstagefright/ACodec.cpp
5a446aafff3020d607ad6fb14cc7ae76dd8f7947 30-Jul-2014 Rachad <rachad@google.com> Added Tunneled video playback support to ACodec

Bug:16132368
Change-Id: I88d2d66b8548fc203f4a2c4797196af15e56ff38
/frameworks/av/media/libstagefright/ACodec.cpp
ddabe554e95940891c5df9a7f092798351b5f75e 08-Aug-2014 Jean-Michel Trivi <jmtrivi@google.com> Merge "AAC decoder: add support for controlling presentation parameters" into lmp-dev
8045853d03649f43ea2f7107e7d2dbb9b2d20855 02-Aug-2014 Jean-Michel Trivi <jmtrivi@google.com> AAC decoder: add support for controlling presentation parameters

Control the dowmixing of the AAC decoder
Control the DRC processing of the AAC decoder

Bug 16740915

Change-Id: I9b06ea8785f56213ea120ed85eeb360c88223297
/frameworks/av/media/libstagefright/ACodec.cpp
317bb9163befccd87348c11bdfc0044e629b362b 08-Aug-2014 Andy Hung <hunga@google.com> Merge "Clarify and implement MediaCodec status codes" into lmp-dev
251d4be8aa5ab80bc915a82a2420233bdc62018e 31-Jul-2014 Andy Hung <hunga@google.com> Clarify and implement MediaCodec status codes

Clarify MediaCodec status codes in MediaError.h
When appropriate, return OMX error codes for status.
Optionally return a status code from CreateByType() and
CreateByComponentName().

Bug: 12034929
Bug: 13976475
Change-Id: I7463dd08d101074f730481b26127a69c9186c97e
/frameworks/av/media/libstagefright/ACodec.cpp
229d242665c612fd97431d1e7ac004823b47f181 07-Aug-2014 Lajos Molnar <lajos@google.com> stagefright: support flexible YUV format

- Report flexible format for standard OMX formats that are flexible.
- Accept flexible format when specifying video port formats.

Bug: 10706245
Change-Id: I9e82bc895bb0d5d606eb05fdf83bec766eaa2046
/frameworks/av/media/libstagefright/ACodec.cpp
b97cc6a9a3c81215e365c61b071a932073b56ff2 02-Aug-2014 Jean-Michel Trivi <jmtrivi@google.com> AAC encoder: add support for SBR mode selection

Change-Id: Ibc07bff7710398929c135f38324dd29857fa0ea6
/frameworks/av/media/libstagefright/ACodec.cpp
89869f692c35d0ca914c7de4a1f5ff63c9920634 28-Jul-2014 Lajos Molnar <lajos@google.com> stagefright: enable decoder color format selection

Bug: 10706245
Change-Id: I9a77631bfae0358be229b079228c1fcae0e77faf
/frameworks/av/media/libstagefright/ACodec.cpp
e9e63bcf6c36351f1129b0bdc5e93f17f0f9f0b4 31-Jul-2014 Chong Zhang <chz@google.com> handle rotation in NuPlayer

Bug: 16653284
Change-Id: I54165041da5a13498d627eee1b3ec59ef3c923b0
/frameworks/av/media/libstagefright/ACodec.cpp
03c556ae1eb409ad088c49037e185946c54e1d25 25-Jul-2014 Lajos Molnar <lajos@google.com> stagefright: add flexible YUV support

Bug: 10706245
Change-Id: Icd246f22edfc67ed5240d59f5a5bde3e5f749465
/frameworks/av/media/libstagefright/ACodec.cpp
4730fa07a3290cc3a904dcb16dbb92fcf46c36ac 23-Jul-2014 Wei Jia <wjia@google.com> Hook up querying of VP8 temporal layering support.

Bug: 14562236
Change-Id: I0ec5866173f7fb84dd3f79b588d1b35b523ca08a
/frameworks/av/media/libstagefright/ACodec.cpp
3cb576166020bfdc1522b33919fe5ff8d211d0a3 17-Jul-2014 Lajos Molnar <lajos@google.com> stagefright: use all input buffers in ACodec

Bug: 15699665
Change-Id: If37e5c70e56821375ede911e781b5d4b8d41f8ad
/frameworks/av/media/libstagefright/ACodec.cpp
7a727021b86c2fb2c9f60af2c999154dce1766eb 18-Jul-2014 Zhijun He <zhijunhe@google.com> stagefright: add error log when create omx component failed

Bug: 16343447
Change-Id: I6854b9b837a141a77ab318953dc002ec5ad5d31d
/frameworks/av/media/libstagefright/ACodec.cpp
d8cbe4a024ef54adf043b6ea31fa22271b8b2c51 08-Jul-2014 Lajos Molnar <lajos@google.com> stagefright: update ACodec to use CodecBase enumerations directly

Bug: 11784825
Change-Id: I9f322b78b52bfcc5040fda951486df4354cdba4f
/frameworks/av/media/libstagefright/ACodec.cpp
4ce87ac008bcd6a1004ca416f6d7031ba813078f 28-Jun-2014 Rachad <rachad@google.com> Merge "Add HEVC encoder support to ACodec"
c8efda9e9cd61dfe8e486c93fa8940b77cc3cceb 20-May-2014 Rachad <rachad@google.com> Add HEVC encoder support to ACodec

Bug: 14571712
Change-Id: Idaec2394d569541f3963befe722f46f6b0007937
/frameworks/av/media/libstagefright/ACodec.cpp
7791cf11186a22b3f84d98cfde67393bee748cb0 10-Jun-2014 Marco Nelissen <marcone@google.com> Fix logging

Make the log message specify whether it was an encoder or a decoder
that failed to instantiate.

Change-Id: Ie357775114c8dea722d87381c13affdfb19dcde4
/frameworks/av/media/libstagefright/ACodec.cpp
8c6693b73cb4aed9d1dcb8d5d0828a77b7471a55 28-May-2014 Vignesh Venkatasubramanian <vigneshv@google.com> libstagefright: Add Opus support to ACodec::getPortFormat

Bug: 15114855
Change-Id: Idb184ae15986450423fc8cf116cf077600b3ea67
/frameworks/av/media/libstagefright/ACodec.cpp
ddde219f2f93c1d81ff1cfaf4d3d31d95156f7a3 20-May-2014 Rachad <rachad@google.com> Merge "Add HEVC decoder support to ACodec bug: 14571712"
47aea1f7c58f5302b16822f9e7e1763f2af04ef5 15-May-2014 Lajos Molnar <lajos@google.com> ACodec: remove PTS log spam

Bug: 14976517
Bug: 11784827
Change-Id: Ibc1bbd80e7aac30b0f8f1e9ca2be1bb3e5e2ebbb
/frameworks/av/media/libstagefright/ACodec.cpp
f87e30fe71752dc431d8e8d5682c38271c03265a 14-May-2014 Andy Hung <hunga@google.com> Send 64 bit OMX codec handling to 32 bit MediaServer

This is a temporary fix for 64 bit OMX handling until 64 bit
codecs are more robust.

Bug: 13938273
Change-Id: Ifc79e360f9606f6c909b859d322b7dd5d416b26b
Signed-off-by: Andy Hung <hunga@google.com>
/frameworks/av/media/libstagefright/ACodec.cpp
609b815a3131d22da38b2f452faa9f89daad4039 02-May-2014 Andy Hung <hunga@google.com> Update OMX messages for 64 bit

Change node_id and buffer_id to uint32_t.
Ensure IOMX messages are fixed size.
Remove 64 bit compile warnings in associated files.

Change-Id: Icdbef00aca575e5dc502ebb52e3ce7d0d7883203
Signed-off-by: Andy Hung <hunga@google.com>
/frameworks/av/media/libstagefright/ACodec.cpp
2472b1c0d63454e5d90a982bd6c555de6c3127bd 06-May-2014 Rachad <rachad@google.com> Add HEVC decoder support to ACodec
bug: 14571712

Change-Id: I221625a42e143cb1c581059694f6730211e251ae
/frameworks/av/media/libstagefright/ACodec.cpp
fc7fca77caa12993dd938d5ff43797d781291027 08-May-2014 Lajos Molnar <lajos@google.com> MediaCodec: add renderAndReleaseOutputBuffer() method with timestamp

Bug: 11784827
Change-Id: Ia1dcbd6c1d1a4380db04b750c0eb3fa0bd58d7b4
/frameworks/av/media/libstagefright/ACodec.cpp
784e24e386b088c05d653ab482f2e95cb53e3d01 07-May-2014 Andy Hung <hunga@google.com> Remove legacy omx_message variables

Remove platform_private and data_ptr from omx_message.
These were used for legacy deferred buffer creation.
See OMXCodec quirks: kDefersOutputBufferAllocation and
kRequiresAllocateBufferOnOutputPorts.

Change-Id: I94da56bc64f3b46ee1276e93d67b36c1662e2eaf
Signed-off-by: Andy Hung <hunga@google.com>
/frameworks/av/media/libstagefright/ACodec.cpp
88014186c34dbc5c8f4cdf0936cae2a36e4b61ac 01-May-2014 Lajos Molnar <lajos@google.com> am ee46bd37: am 2b0b701f: am 0c388650: Merge "ACodec: add frame render/drop systrace"

* commit 'ee46bd378b7a68789be9c85d8a59fa02d4aed030':
ACodec: add frame render/drop systrace
ee46bd378b7a68789be9c85d8a59fa02d4aed030 01-May-2014 Lajos Molnar <lajos@google.com> am 2b0b701f: am 0c388650: Merge "ACodec: add frame render/drop systrace"

* commit '2b0b701f57c5efebe868d0eedce8cfc399007e8a':
ACodec: add frame render/drop systrace
2b0b701f57c5efebe868d0eedce8cfc399007e8a 01-May-2014 Lajos Molnar <lajos@google.com> am 0c388650: Merge "ACodec: add frame render/drop systrace"

* commit '0c388650722ac53571be21ee04ce342c1c9510c2':
ACodec: add frame render/drop systrace
6fbc1afd36f514f8b8d36ce67f5e69776c690bd2 30-Apr-2014 Lajos Molnar <lajos@google.com> ACodec: add frame render/drop systrace

Change-Id: I7a33d4a937d039fd454b889ddb12b7ca1c0ff3c2
/frameworks/av/media/libstagefright/ACodec.cpp
1a7be1ec9c769203e6c8e26378de0ab8e2ad493d 29-Apr-2014 Bill Yi <byi@google.com> Merge commit '91820d46b5f3065c2fded3cdf65d305715b33bb1' into HEAD
67ee990d324229ab0565ce632bd5a04297e16a01 24-Apr-2014 Alex Glaznev <glaznev@google.com> Merge "Support VP8 encoder key frame interval and number of temporal layers configuration."
4154795d5526750b7aec5f774831a9e1ba0a3f15 21-Mar-2014 Alex Glaznev <glaznev@google.com> Support VP8 encoder key frame interval and number of
temporal layers configuration.

- Change ACodec.cpp to populate VP8 extra parameters
structure with key frame interval, number of temporal
layers and quantization parameters.

- Change software VP8 encoder to select frame temporal
patterns and temporal layers bitrate distribution based
on the number of layers similar to patterns used in WebRTC.

- Calculate video frame duration in VP8 encoder from the
timestamps.

Bug: 11969958
Change-Id: Ia96054d886cd09d8c108dfe250fc5f4478eaa042
/frameworks/av/media/libstagefright/ACodec.cpp
dd01ce9c28e37d4556606f481faeec032a1fe04e 11-Apr-2014 Mark Salyzyn <salyzyn@google.com> am 52a861d2: Merge "warnings be gone."

* commit '52a861d2825544fe2eb90f8e5f6351d02ff95536':
warnings be gone.
d411b4ca2945cd8974a3a78199fce94646950128 11-Apr-2014 Andreas Huber <andih@google.com> warnings be gone.

(cherry picked from commit 84333e0475bc911adc16417f4ca327c975cf6c36)

Modified by Mark Salyzyn <salyzyn@google.com> to keep merge conflicts
or errors downstream to a minimum.

Change-Id: Ic3b272f9cbf3155001aabd2f79728f1bc31de613
/frameworks/av/media/libstagefright/ACodec.cpp
54b0bc74e051bd7df10cd657b481d88db6cdaa27 31-Mar-2014 Lajos Molnar <lajos@google.com> ACodec: do not signal kWhatShutdownCompleted on codec error

Do not signal kWhatShutdownCompleted when moving to Uninitialized
state due to receiving a codec error.

Do not abort if error happens just before handling a stop request.

Bug: 13675112
Change-Id: I4b14b2e64cff0f71215d2bbc24cd850617dfb67b
/frameworks/av/media/libstagefright/ACodec.cpp
5e184b0d12f1ec436246a391da8d9355cc21ee08 28-Mar-2014 Lajos Molnar <lajos@google.com> ACodec: ignore OMX messages to already freed component

Bug: 12916984
Change-Id: I92848797b8d556cff468b9b0f0a618946083208f
/frameworks/av/media/libstagefright/ACodec.cpp
4f1ef2cd65d734edae17f8586cf717598b40f2c3 28-Mar-2014 Lajos Molnar <lajos@google.com> am 1000d426: am f780d28d: Merge "DO NOT MERGE: Revert "mediaplayer: keep more buffers with the BufferQueue"" into klp-dev

* commit '1000d426bedb1ec38bdfff98fc8f004b64af13cb':
DO NOT MERGE: Revert "mediaplayer: keep more buffers with the BufferQueue"
ff382d0c40493303ceb81a6c22d1a48c0fecfe9c 28-Mar-2014 Lajos Molnar <lajos@google.com> am 8bf96c01: am 3d4e4fcb: Merge "DO NOT MERGE: Revert "stagefright: allow for minUndequeuedBufs to be one less"" into klp-dev

* commit '8bf96c011ff4128f9bf06b892a38d869192d6a25':
DO NOT MERGE: Revert "stagefright: allow for minUndequeuedBufs to be one less"
1000d426bedb1ec38bdfff98fc8f004b64af13cb 28-Mar-2014 Lajos Molnar <lajos@google.com> am f780d28d: Merge "DO NOT MERGE: Revert "mediaplayer: keep more buffers with the BufferQueue"" into klp-dev

* commit 'f780d28de2e3cf7f6b26b9626321dba75719736e':
DO NOT MERGE: Revert "mediaplayer: keep more buffers with the BufferQueue"
8bf96c011ff4128f9bf06b892a38d869192d6a25 28-Mar-2014 Lajos Molnar <lajos@google.com> am 3d4e4fcb: Merge "DO NOT MERGE: Revert "stagefright: allow for minUndequeuedBufs to be one less"" into klp-dev

* commit '3d4e4fcbcfc5c16dd794591727f5c713831ab6dc':
DO NOT MERGE: Revert "stagefright: allow for minUndequeuedBufs to be one less"
114c1b6553e3d2dc5f2780a76d92bb382234220c 28-Mar-2014 Lajos Molnar <lajos@google.com> DO NOT MERGE: Revert "mediaplayer: keep more buffers with the BufferQueue"

This reverts commit b635b0e66b257ab442e230bca96afd5105cf6829.

Bug: 13655631
/frameworks/av/media/libstagefright/ACodec.cpp
f5ee327780ea2b538b8affafa8063f0ce0390fe0 28-Mar-2014 Lajos Molnar <lajos@google.com> DO NOT MERGE: Revert "stagefright: allow for minUndequeuedBufs to be one less"

This reverts commit a0470879e25394cb85437366fa53ce8055cd556f.

Bug: 13655631
/frameworks/av/media/libstagefright/ACodec.cpp
2ceebb30a1ee5282d36bc47840f4c5a6187a7a92 19-Mar-2014 Lajos Molnar <lajos@google.com> am bd1f8f0a: am fb28c384: am 1faa4170: stagefright: allow for minUndequeuedBufs to be one less

* commit 'bd1f8f0a5cc55761edfbd2a472e229dd4b0d2cdf':
stagefright: allow for minUndequeuedBufs to be one less
bd1f8f0a5cc55761edfbd2a472e229dd4b0d2cdf 19-Mar-2014 Lajos Molnar <lajos@google.com> am fb28c384: am 1faa4170: stagefright: allow for minUndequeuedBufs to be one less

* commit 'fb28c384316518f699e7dd3e9149c9e84b05a525':
stagefright: allow for minUndequeuedBufs to be one less
fb28c384316518f699e7dd3e9149c9e84b05a525 19-Mar-2014 Lajos Molnar <lajos@google.com> am 1faa4170: stagefright: allow for minUndequeuedBufs to be one less

* commit '1faa41704e0b976e546321effcb09a85767d51ba':
stagefright: allow for minUndequeuedBufs to be one less
f4d9d45ebad478091d65b2a4c18544d308d3fff0 19-Mar-2014 Lajos Molnar <lajos@google.com> am 1faa4170: stagefright: allow for minUndequeuedBufs to be one less

* commit '1faa41704e0b976e546321effcb09a85767d51ba':
stagefright: allow for minUndequeuedBufs to be one less
1faa41704e0b976e546321effcb09a85767d51ba 19-Mar-2014 Lajos Molnar <lajos@google.com> stagefright: allow for minUndequeuedBufs to be one less

Bug: 13533477
Change-Id: I909324e3e24f65d8051e0d5474267620efcfc729
/frameworks/av/media/libstagefright/ACodec.cpp
129c76538570cd42fce2154bfb0aec934cf84ff3 19-Mar-2014 Lajos Molnar <lajos@google.com> am 9cde5172: am b635b0e6: mediaplayer: keep more buffers with the BufferQueue

* commit '9cde517297827156de1c3b2ff54e272a5d4ae7c3':
mediaplayer: keep more buffers with the BufferQueue
9cde517297827156de1c3b2ff54e272a5d4ae7c3 19-Mar-2014 Lajos Molnar <lajos@google.com> am b635b0e6: mediaplayer: keep more buffers with the BufferQueue

* commit 'b635b0e66b257ab442e230bca96afd5105cf6829':
mediaplayer: keep more buffers with the BufferQueue
4647dba9afd0b365e47b9493a680d71b59a361e6 19-Mar-2014 Lajos Molnar <lajos@google.com> am b635b0e6: mediaplayer: keep more buffers with the BufferQueue

* commit 'b635b0e66b257ab442e230bca96afd5105cf6829':
mediaplayer: keep more buffers with the BufferQueue
b635b0e66b257ab442e230bca96afd5105cf6829 14-Feb-2014 Lajos Molnar <lajos@google.com> mediaplayer: keep more buffers with the BufferQueue

Change OMX buffer allocation policy to allocate
nBufferCountMin + what is required for the BQ.

For the BQ, try to allocate 2 additional buffers than
the minimum undequeued count.

Also account for the fact that BQ may return one less
than the actual minimum undequeued count.

In most cases the resulting number of buffers ends up
being the same as with the previous policy, but we
keep more buffers with the BQ.

Change-Id: I826db8bf7dd333b620299dba60bf1b81b228275d
Bug: 13170236
/frameworks/av/media/libstagefright/ACodec.cpp
b1120b65c328cf6e35c0494d7d61addcbdc16821 14-Mar-2014 Lajos Molnar <lajos@google.com> Merge changes I1455bfc6,I90c7e34b,I06e001df

* changes:
NuPlayer: use MediaCodec instead of ACodec
MediaCodec: add getInputFormat() method
Revert "NuPlayer: Use a software renderer when using software codecs"
29c291f2337561b1f8c2f79bc34339b0b9c28b9c 14-Mar-2014 Chong Zhang <chz@google.com> am a671f943: am c69bc40a: Merge "Cap pts gap between adjacent frames to specified value" into klp-dev

* commit 'a671f943b72155460f0c94cdd92d829cb059b571':
Cap pts gap between adjacent frames to specified value
7c47cafa5be623f1db483483ac27f714c54dc1cc 14-Mar-2014 Chong Zhang <chz@google.com> am c69bc40a: Merge "Cap pts gap between adjacent frames to specified value" into klp-dev

* commit 'c69bc40a347c411751cb082b3eb4a82d976a68ec':
Cap pts gap between adjacent frames to specified value
a671f943b72155460f0c94cdd92d829cb059b571 13-Mar-2014 Chong Zhang <chz@google.com> am c69bc40a: Merge "Cap pts gap between adjacent frames to specified value" into klp-dev

* commit 'c69bc40a347c411751cb082b3eb4a82d976a68ec':
Cap pts gap between adjacent frames to specified value
e257e5ebefdd50f808ee3b4d1596db261c9b62dd 14-Feb-2014 Lajos Molnar <lajos@google.com> mediaplayer: keep more buffers with the BufferQueue

Change OMX buffer allocation policy to allocate
nBufferCountMin + what is required for the BQ.

For the BQ, try to allocate 2 additional buffers than
the minimum undequeued count.

Also account for the fact that BQ may return one less
than the actual minimum undequeued count.

In most cases the resulting number of buffers ends up
being the same as with the previous policy, but we
keep more buffers with the BQ.

Change-Id: I826db8bf7dd333b620299dba60bf1b81b228275d
Bug: 12080418
/frameworks/av/media/libstagefright/ACodec.cpp
8bd4d16aa5636e98522c07ae31236420788aa749 11-Jan-2014 Chong Zhang <chz@google.com> Cap pts gap between adjacent frames to specified value

- In the scenario of cast mirroring, encoding could be suspended
for prolonged periods. Limiting the pts gap to workaround the
problem where encoder's rate control logic produces huge frames
after a long period of suspension.

- Repeat last frame a couple more times to get better quality
on static scenes.

- Fix the timestamp on repeat frames (it was not set)

Bug: 11971963
Change-Id: I1d68ab3d269874bf3921aa429a985c5f63e428c7
(cherry picked from commit 94ee4b708acfa941581160b267afb79192b1d816)
/frameworks/av/media/libstagefright/ACodec.cpp
e0381245dff04aa823a59aa8b85869eddab0f39f 25-Feb-2014 Lajos Molnar <lajos@google.com> MediaCodec: add getInputFormat() method

Additional input-port format item:

int32: "adaptive-playback"
video decoders only
whether codec is configured for adaptive playback. In this case, if
codec has max-width/height limits, those limits are also exposed
(int32: "max-width", "max-height")

Also, getInput/OutputFormat() is now callable in CONFIGURED and
STARTING states, although output format may be missing CSD fields
until INFO_OUTPUT_FORMAT_CHANGED message.

Includes missing OMX support for MP3 software decoder.

Bug: 11785204
Change-Id: I90c7e34ba81c7b81c43641599f3f496e838958c6
/frameworks/av/media/libstagefright/ACodec.cpp
8e4b38470a367aec409e905aed392397e6b85bf4 07-Mar-2014 Lajos Molnar <lajos@google.com> am 2613347d: Merge "Added support to query ACodec whether adaptive playback is enabled." into klp-dev

* commit '2613347d74c3f35bc6fda5df1c29c1119c22d432':
Added support to query ACodec whether adaptive playback is enabled.
385691a374e0f202ee66c26ed0af94afccd745de 07-Mar-2014 Lajos Molnar <lajos@google.com> am 2338782d: Merge "Fixed misplaced bracket for switch-case block." into klp-dev

* commit '2338782d18d9bcc8197c63dbf205332a2a737440':
Fixed misplaced bracket for switch-case block.
7e65e101bd48461e274fd2e927b80fbbd8b71744 07-Mar-2014 Lajos Molnar <lajos@google.com> am 72d09f62: am 2613347d: Merge "Added support to query ACodec whether adaptive playback is enabled." into klp-dev

* commit '72d09f6280cd701e48922a86df0d2e5f4e61cd8e':
Added support to query ACodec whether adaptive playback is enabled.
414c2371ab38a9826dca2506c9cefd703af05c2b 07-Mar-2014 Lajos Molnar <lajos@google.com> am 4dbd814d: am 2338782d: Merge "Fixed misplaced bracket for switch-case block." into klp-dev

* commit '4dbd814de3a3bc95ca3fe39be2400418e7a05602':
Fixed misplaced bracket for switch-case block.
72d09f6280cd701e48922a86df0d2e5f4e61cd8e 07-Mar-2014 Lajos Molnar <lajos@google.com> am 2613347d: Merge "Added support to query ACodec whether adaptive playback is enabled." into klp-dev

* commit '2613347d74c3f35bc6fda5df1c29c1119c22d432':
Added support to query ACodec whether adaptive playback is enabled.
4dbd814de3a3bc95ca3fe39be2400418e7a05602 07-Mar-2014 Lajos Molnar <lajos@google.com> am 2338782d: Merge "Fixed misplaced bracket for switch-case block." into klp-dev

* commit '2338782d18d9bcc8197c63dbf205332a2a737440':
Fixed misplaced bracket for switch-case block.
05a4b64ea4d01e29c427d8b5f5107b8edc2dbb21 07-Mar-2014 Lajos Molnar <lajos@google.com> am 5db1e3a6: Merge "correct one logic error in decide whether should render or not"

* commit '5db1e3a6f30c252ed61461dd8c58786e905e5f5a':
correct one logic error in decide whether should render or not
933a4d3339ebbcd34a7f97b9e7350ec74b5ec29c 24-Jan-2014 Robert Shih <robertshih@google.com> Added support to query ACodec whether adaptive playback is enabled.

Bug: 11854054
Change-Id: I6b0308aa8550c643706959277e46dad586c37297
/frameworks/av/media/libstagefright/ACodec.cpp
b2be2f2e41d5502d79636b21cbad23f4f983bbd7 23-Jan-2014 Robert Shih <robertshih@google.com> Fixed misplaced bracket for switch-case block.

Bug: 11854054
Change-Id: I66b410e1e19601ad65d8357bda4c0c58e2dc15dc
/frameworks/av/media/libstagefright/ACodec.cpp
b4350af65dd66ed57f1ff79b1b426507f0e73b7b 04-Mar-2014 Lajos Molnar <lajos@google.com> Merge "Opus Matroska support in OpenMax"
bf927f8ec7979f2b64331c2b2f12a6a5dba05bca 29-Jan-2014 Vignesh Venkatasubramanian <vigneshv@google.com> Opus Matroska support in OpenMax

Adding Openmax component for libopus software decoder. This can
decode opus audio files embedded in matroska containers.

Change-Id: I7e0691cfc6d719c4e927b9efbd05a3143be49abc
Note: This CL is part of adding Opus support to Android.
/frameworks/av/media/libstagefright/ACodec.cpp
dc6ac201032d0f6ad0c8149ae2f009ec38693025 22-Feb-2014 Chong Zhang <chz@google.com> Merge "support for time lapse/slow motion when using SURFACE source"
2c9c8cba8562cc3a27532e4cd348912cc78d8d98 11-Feb-2014 Chong Zhang <chz@google.com> support for time lapse/slow motion when using SURFACE source

Bug: 13032650
Change-Id: Iecbadf9f29c8c49353416fc467fb3acdde279595
/frameworks/av/media/libstagefright/ACodec.cpp
ccb067b1d8424ba610cbd3de83368bd55b532b5b 11-Feb-2014 Andreas Huber <andih@google.com> fix the build by fixing more warnings.

Change-Id: Ied0ec39eb83b101582702d1e30c21643ccf6353e
/frameworks/av/media/libstagefright/ACodec.cpp
84333e0475bc911adc16417f4ca327c975cf6c36 08-Feb-2014 Andreas Huber <andih@google.com> warnings be gone.

Change-Id: Ie3bae3f037730e316d7fca12e7a3527973f752ef
/frameworks/av/media/libstagefright/ACodec.cpp
72cecca17d735db6532c45f0a7e10c47ee6f065a 26-Dec-2013 Chong Zhang <chz@google.com> Change StagefrightRecorder to use MediaCodec

Bug: 12305192
Change-Id: I72d7cb571be5bd348b58ad650f3269d24c15d350
/frameworks/av/media/libstagefright/ACodec.cpp
aae8d29f74d05460a57d0843f6bed95d36a2145b 04-Feb-2014 Changwan Ryu <changwan@google.com> am 90903383: [DO NOT MERGE] Support AC3 in stagefright

* commit '9090338367bd9f3fc5678032332a44d457a4a2fe':
[DO NOT MERGE] Support AC3 in stagefright
3627c74343617fa70ebfd40b46712c234888f456 03-Feb-2014 Robert Shih <robertshih@google.com> Merge "Added support to query ACodec whether adaptive playback is enabled."
3fe8a8f797ca62096f4c929b0d81573ebe4a5458 03-Feb-2014 Robert Shih <robertshih@google.com> Merge "Fixed misplaced bracket for switch-case block."
df900f87eb09e2392d19216f09e0c168883d1004 03-Feb-2014 Lajos Molnar <lajos@google.com> am 324d9157: am 5db1e3a6: Merge "correct one logic error in decide whether should render or not"

* commit '324d9157a30f85fb12afa56b2230663ccdd61ced':
correct one logic error in decide whether should render or not
324d9157a30f85fb12afa56b2230663ccdd61ced 03-Feb-2014 Lajos Molnar <lajos@google.com> am 5db1e3a6: Merge "correct one logic error in decide whether should render or not"

* commit '5db1e3a6f30c252ed61461dd8c58786e905e5f5a':
correct one logic error in decide whether should render or not
79ee2399b67c7a11042c5904dc1309712a76f8cb 14-Jan-2014 Jianzheng Zhou <jianzheng.zhou@freescale.com> correct one logic error in decide whether should render or not

Change-Id: Ie41663f6fd5a7d983279f14a2228cb57231771bf
Signed-off-by: Jianzheng Zhou <jianzheng.zhou@freescale.com>
/frameworks/av/media/libstagefright/ACodec.cpp
9090338367bd9f3fc5678032332a44d457a4a2fe 28-Oct-2013 Changwan Ryu <changwan@google.com> [DO NOT MERGE] Support AC3 in stagefright

Change-Id: I12016b424bd069413bd6e380ff11484e175e05f3
/frameworks/av/media/libstagefright/ACodec.cpp
94ee4b708acfa941581160b267afb79192b1d816 11-Jan-2014 Chong Zhang <chz@google.com> Cap pts gap between adjacent frames to specified value

- In the scenario of cast mirroring, encoding could be suspended
for prolonged periods. Limiting the pts gap to workaround the
problem where encoder's rate control logic produces huge frames
after a long period of suspension.

- Repeat last frame a couple more times to get better quality
on static scenes.

- Fix the timestamp on repeat frames (it was not set)

Bug: 11971963
Change-Id: I1d68ab3d269874bf3921aa429a985c5f63e428c7
/frameworks/av/media/libstagefright/ACodec.cpp
75832930a28fd70f6fc683ed966477ceea810668 24-Jan-2014 Robert Shih <robertshih@google.com> Added support to query ACodec whether adaptive playback is enabled.

Change-Id: I6b0308aa8550c643706959277e46dad586c37297
/frameworks/av/media/libstagefright/ACodec.cpp
625b93f1971039a547b239f87a2dc8a8d5716589 23-Jan-2014 Robert Shih <robertshih@google.com> Fixed misplaced bracket for switch-case block.

Change-Id: I66b410e1e19601ad65d8357bda4c0c58e2dc15dc
/frameworks/av/media/libstagefright/ACodec.cpp
4d69457c1d7f3e528455fa971c1719099d3699fc 29-Oct-2013 Changwan Ryu <changwan@google.com> Support for MPEG2 video

Change-Id: If1f4e20939c96c87c65c84d56e529501facb8597
(cherry picked from commit 774eb18c40c3a7da0bc1636a9779f02315ddbad8)
/frameworks/av/media/libstagefright/ACodec.cpp
4bdda35319d5f46efea2089b865c8a64816389cd 19-Nov-2013 Marco Nelissen <marcone@google.com> Only send a format change if the buffer has data

b/11696552

Change-Id: I31aba6e01a7b4d288f4d85d9e2ddec0aac1c2d1f
/frameworks/av/media/libstagefright/ACodec.cpp
704287d1b9427cc39e7be2fc44b0ae21840831e4 19-Nov-2013 Lajos Molnar <lajos@google.com> am 72afcd5d: am 5ea5b020: Merge "WA: Queue extra buffers on output port during reconfig if input EOS-ed" into klp-dev

* commit '72afcd5da296b1f5fb38ef037054855aaea88054':
WA: Queue extra buffers on output port during reconfig if input EOS-ed
4dd0a8a3d66c2853faf2834565b3c5df4f68734d 07-Nov-2013 Lajos Molnar <lajos@google.com> WA: Queue extra buffers on output port during reconfig if input EOS-ed

Some codecs may return input buffers before having them processed.
This causes a halt if we already signaled an EOS on the input
port. For now keep submitting output meta buffers one at a time if
the input EOS-ed, but the output not yet.

Normally, we submit an output buffer for each input buffer that is
with the component (waiting to be processed).

Change-Id: I8a1251bfb504f40f1e4085a1e220bf9a4d0b05d9
Signed-off-by: Lajos Molnar <lajos@google.com>
Bug: 11433909
/frameworks/av/media/libstagefright/ACodec.cpp
d725d23ae67045c22003d419d5c31ca1d551da89 12-Nov-2013 Andreas Huber <andih@google.com> am db50cb5f: am caee8747: Merge "configure bitrate and bitrate mode at encoder initialization for VP8/9" into klp-dev

* commit 'db50cb5f7ae6d2beacd8a4fa4a8991035b3c88e7':
configure bitrate and bitrate mode at encoder initialization for VP8/9
caee8747b7df3b1119426594d4ba1c0e300ff6db 12-Nov-2013 Andreas Huber <andih@google.com> Merge "configure bitrate and bitrate mode at encoder initialization for VP8/9" into klp-dev
a19c9d49ade935c86fcd58bb553ec17e1c9ce730 06-Nov-2013 Changwan Ryu <changwan@google.com> Merge "Support AC3 in stagefright"
97358c3e1adaf4a744cad78891a16d12e3e9c88e 28-Oct-2013 Changwan Ryu <changwan@google.com> Support AC3 in stagefright

Change-Id: I12016b424bd069413bd6e380ff11484e175e05f3
/frameworks/av/media/libstagefright/ACodec.cpp
89b31a3f670d8bec87bed50aaad9bcd8edec66b6 05-Nov-2013 Andreas Huber <andih@google.com> configure bitrate and bitrate mode at encoder initialization for VP8/9

Change-Id: I0389264db4102cabb0c6fcb4ca223d85cc9e86fb
related-to-bug: 11536167
/frameworks/av/media/libstagefright/ACodec.cpp
21264c4f0de2e2e74a62290a4aaafea4cc865528 05-Nov-2013 Lajos Molnar <lajos@google.com> am 2922d230: am 065789f2: Merge "Restore NuPlayer error and EOS handling" into klp-dev

* commit '2922d230155cb1be7acc0c11bef6f0ca0345bdb7':
Restore NuPlayer error and EOS handling
774eb18c40c3a7da0bc1636a9779f02315ddbad8 29-Oct-2013 Changwan Ryu <changwan@google.com> Support for MPEG2 video

Change-Id: If1f4e20939c96c87c65c84d56e529501facb8597
/frameworks/av/media/libstagefright/ACodec.cpp
7fa015217e618265ff5a844cf6961ecc316c81a4 28-Oct-2013 Lajos Molnar <lajos@google.com> Restore NuPlayer error and EOS handling

This was erroneously removed by commit a73c954

Change-Id: I4742339139e770f0181c99d427875897fd60b68e
Signed-off-by: Lajos Molnar <lajos@google.com>
Bug: 11413439
/frameworks/av/media/libstagefright/ACodec.cpp
7bab024867996bec6dc4e3e31ed4570da9afbc25 04-Oct-2013 Lajos Molnar <lajos@google.com> Merge "MediaCodec: avoid codec EOS if flushing during port reconfiguration" into klp-dev
fce0d1883cdbcb7d501625fb43844043cd28a267 03-May-2013 Lajos Molnar <lajos@google.com> stagefright: enable adaptive playback based on codec format key

Added support for prepareForAdaptivePlayback() call in
configureCodec, if max-width and max-height keys are specified
in the format. It is OK for this call to fail, if component
does not implement adaptive playback.

Change-Id: Ie15892bc666df103b635890a0fda799b204bb06c
Signed-off-by: Lajos Molnar <lajos@google.com>
Bug: 7093648
Bug: 10192531
/frameworks/av/media/libstagefright/ACodec.cpp
a73c954d947748a3b6f630cf2c160fe55ec596e3 02-Oct-2013 Lajos Molnar <lajos@google.com> MediaCodec: avoid codec EOS if flushing during port reconfiguration

Change-Id: Ic2e93f38feeb2e906f8d6b400ed6df2b7580ca87
Signed-off-by: Lajos Molnar <lajos@google.com>
Bug: 11045434
/frameworks/av/media/libstagefright/ACodec.cpp
530fdbdc1b5491f3fbf172752834d1515701e142 18-Sep-2013 Lajos Molnar <lajos@google.com> Use changed MediaCodec.PARAMETER_KEY_VIDEO_BITRATE value

Change-Id: I157bcafbf705865e66c81517b1eab10c3daa039e
Signed-off-by: Lajos Molnar <lajos@google.com>
Bug: 10461617
/frameworks/av/media/libstagefright/ACodec.cpp
c38fcfba95f711e5738e4c72bd5499317a2f30d9 12-Sep-2013 Lajos Molnar <lajos@google.com> ACodec: fix flush/resume for decoder-output-meta-data mode

When in decoder-output-meta-data mode, ACodec does not hold onto
buffers, but they are either with the native window, or with the
component/client. However, for flushing we did not release the
discarded buffers back to native window (this makes sense because
they will be resubmitted shortly.) This logic can be handled by
the normal resubmission.

Change-Id: Ic472b386422251515ef12f426e187f208f14decc
Signed-off-by: Lajos Molnar <lajos@google.com>
Bug: 10621959
Bug: 10192533
/frameworks/av/media/libstagefright/ACodec.cpp
0167414e261f88a96b5e4bf6cb592e6ca11e5a95 14-Aug-2013 Andreas Huber <andih@google.com> You can now opt-in to having the video decoder push blank buffers to the

surface on the transition from executing->idle by specifying the key
"push-blank-buffers-on-shutdown" with a value of 1 in the call to configure.

Change-Id: I1155fccf89f18e717728c985e590651597595515
/frameworks/av/media/libstagefright/ACodec.cpp
cd06d357ed4fcde991aa55dc97317d97cb287332 13-Aug-2013 Andreas Huber <andih@google.com> Merge "Optionally repeat the previously submitted frame to the encoder" into klp-dev
a61285dcf1da8a2cf40c499ee3a7b9fc4d74ac58 31-Jul-2013 Andreas Huber <andih@google.com> Optionally repeat the previously submitted frame to the encoder

if no new frame has been delivered by surface flinger within the timeout
interval.

Change-Id: I282f1b726dfe5646b178d7858d6f5d4f5a264fde
/frameworks/av/media/libstagefright/ACodec.cpp
b8689b31813f55cbc1bf8e9ca0d46a9ee113e38a 12-Aug-2013 Andreas Huber <andih@google.com> Support for "request-sync" parameter in ACodec

Also returns errors to caller instead of asserting...

Change-Id: Id3018655a2b3da4289167fba16af907350a511ae
/frameworks/av/media/libstagefright/ACodec.cpp
d0715867861c216e88a4a7523b6da8a3cb128724 22-Jul-2013 Lajos Molnar <lajos@google.com> IOMX: add updateGraphicBufferInMeta method for metadata mode

This is used to set the handle in the metadata buffer that is
valid in the mediaserver process, as well as to keep a reference
for the graphic buffers in BufferMeta.

Change-Id: I46bb68d8bed894f357eeeb25368360d11b276634
Signed-off-by: Lajos Molnar <lajos@google.com>
/frameworks/av/media/libstagefright/ACodec.cpp
760874ca0ff100ed04d80495347f7e98424c838a 18-Jul-2013 Dima Zavin <dima@android.com> Merge "stagefright: set scaling mode for blank frames in ACodec"
87eb285dca94b20dc5f0ff8e60a0d395a4ca3be9 18-Jul-2013 Dima Zavin <dima@android.com> stagefright: set scaling mode for blank frames in ACodec

Analogous to 1d5ac80d0c6d3deabcc9e9b4abc9e3ef536aeb27
(by jgennis), this sets the scaling mode for the ANativeWindow
to SCALE_TO_WINDOW prior to pushing the blank frames during
decoder tear down.

Without this, the window defaults to FREEZE and SF ignores the
new frames.

Bug: 9516405
Change-Id: I39ef30922d733034bf01100d7ff24ac9c0c33b7d
Signed-off-by: Dima Zavin <dima@android.com>
/frameworks/av/media/libstagefright/ACodec.cpp
e40cda70eec141fa05cbcca1de420fdb22b98be6 17-Jul-2013 Andreas Huber <andih@google.com> Support "suspension" of a video encoder in "surface-input" mode.

i.e. feed no more input frames to the encoder while suspended.

Change-Id: I51391e18c1517548e869f8ddece19f4af37e78f9
/frameworks/av/media/libstagefright/ACodec.cpp
3b6d6b1b95b9aefc4b2c78808ad7c873f1e8f0f5 26-Jun-2013 Lajos Molnar <lajos@google.com> Merge "Adds VP9 decoding support for stagefright."
94705aff3c9eef58cbb72ec6fe5d2dcfd9481646 24-Jun-2013 hkuang <hkuang@google.com> Adds VP9 decoding support for stagefright.

Also change the VP8 encoder role name from
video_encoder.vpx to video_encoder.vp8 for
future VP9 encoder support.


Requires the change in frameworks/native and media_codecs.xml
corresponding to the device.


VP9 decoding test will be added to cts repo later.
/frameworks/av/media/libstagefright/ACodec.cpp
054e7347cc60ad4b9dd2e8f456406f122f9f5879 03-May-2013 Lajos Molnar <lajos@google.com> stagefright: support for video decoder metadata mode

Change-Id: Id360f29236798163f9f3a82135f601083a8a5058
Signed-off-by: Lajos Molnar <lajos@google.com>
Bug: 7093648
/frameworks/av/media/libstagefright/ACodec.cpp
63e9f73c2db01fec30246adbcfea2880671e2108 12-Jun-2013 Lajos Molnar <lajos@google.com> am f8af99b7: am 0662f7b6: Merge "stagefright: synchronously change nativewindow crop" into jb-mr2-dev

* commit 'f8af99b7c10f1441d9a52676724b168f20752270':
stagefright: synchronously change nativewindow crop
577db6d42b8d83b3578c7e56b1391bdaca9cb705 12-Jun-2013 Lajos Molnar <lajos@google.com> stagefright: synchronously change nativewindow crop

Only change the nativewindow crop before queuing frames
with the new crop.

Change-Id: Icd8a84c82e66a8be3d6bc1675c777b1de8dc39b9
Signed-off-by: Lajos Molnar <lajos@google.com>
Bug: 9395753
/frameworks/av/media/libstagefright/ACodec.cpp
e532d37cf9342abbca398e4ce671b880369d90c6 27-Apr-2013 Lajos Molnar <lajos@google.com> stagefright: Fix port-reconfiguration & output-buffer-filled race condition

Remove the invalid assumption that when a port-reconfiguration event
is received, buffers cannot be downstream (waiting to be rendered).

Luckily, these buffers are properly handled (freed) after they are
sent to be rendered.

Change-Id: I1df39c1ffc2bfb96f8b7b4ee5be07cae654f956f
Signed-off-by: Lajos Molnar <lajos@google.com>
Bug: 8736466
/frameworks/av/media/libstagefright/ACodec.cpp
14f7672b5d450ed26a06fd3bb3ce045ea78b11b2 15-Jan-2013 Andreas Huber <andih@google.com> New HLS implementation supporting independent stream sources, audio-only streams

and more.

Change-Id: Icfc45a0100243b2f7a14a9e65696be45b67d6495
/frameworks/av/media/libstagefright/ACodec.cpp
308bcaa44e578279e61be32b572fdb0b11b1e4c7 04-May-2013 Chong Zhang <chz@google.com> wifi-display: add support for metadata mode on encoder output

pass buffer_handle_t from encoder output to HDCP encryptor input

Bug: 8968123

Change-Id: Iea8007ce568641e213fd2e3cf6947a6f7a95746c
/frameworks/av/media/libstagefright/ACodec.cpp
d7107bf350e6e7720ab412396891348b092f330b 11-May-2013 Marco Nelissen <marcone@google.com> am b12caf7b: am 519f7624: Merge "Don\'t render buffers that have size 0" into jb-mr2-dev

* commit 'b12caf7be3759c6b322fe82792f7c6fbc3600c0c':
Don't render buffers that have size 0
6aade6058521b0dbd35a9a4620f4d04f02f90444 09-May-2013 Marco Nelissen <marcone@google.com> Don't render buffers that have size 0

b/8857451

Change-Id: I12a31a2f85af76602db9e6f0ec80632954b3f7ed
/frameworks/av/media/libstagefright/ACodec.cpp
b6ac8e2ce3574160714fd3c0c6d6b5fbf6c8eeab 09-May-2013 Marco Nelissen <marcone@google.com> Don't render buffers that have size 0

b/8857451

Change-Id: I12a31a2f85af76602db9e6f0ec80632954b3f7ed
/frameworks/av/media/libstagefright/ACodec.cpp
1f9374bad4f59d619ef30f227705a926dabf41d5 01-May-2013 Andreas Huber <andih@google.com> am 9db1b382: am deff6910: Merge "Support MediaCodec::getOutputFormat for encoders" into jb-mr2-dev

* commit '9db1b382c279f992dcd33a56226b1f5d2a24afca':
Support MediaCodec::getOutputFormat for encoders
e96ee699aca0f711d41e6c0833e5de2341c4a36d 01-May-2013 Andreas Huber <andih@google.com> Support MediaCodec::getOutputFormat for encoders

codec specific data is provided as part of the MediaFormat if available.

Change-Id: I5a79c936e2411fe66ebc694791071faefc33941e
related-to-bug: 8616651
/frameworks/av/media/libstagefright/ACodec.cpp
cd4ac42ed448f1cb286ca4c3c7ea64621adf9d42 01-May-2013 Andreas Huber <andih@google.com> Support MediaCodec::getOutputFormat for encoders

codec specific data is provided as part of the MediaFormat if available.

Change-Id: I5a79c936e2411fe66ebc694791071faefc33941e
related-to-bug: 8616651
/frameworks/av/media/libstagefright/ACodec.cpp
2ded8b53014602d25b20bade8ce46db95a8da4b5 27-Apr-2013 Lajos Molnar <lajos@google.com> stagefright: Fix port-reconfiguration & output-buffer-filled race condition

Remove the invalid assumption that when a port-reconfiguration event
is received, buffers cannot be downstream (waiting to be rendered).

Luckily, these buffers are properly handled (freed) after they are
sent to be rendered.

Also, the case where buffers have been sent onto the native window
is already handled.

Change-Id: I1df39c1ffc2bfb96f8b7b4ee5be07cae654f956f
Signed-off-by: Lajos Molnar <lajos@google.com>
Bug: 8736466
/frameworks/av/media/libstagefright/ACodec.cpp
7e7013392e302a28364df1dcee79b82ad90978b4 19-Apr-2013 Andreas Huber <andih@google.com> A flush of a video decoder connected to a native window must reclaim

output buffers already queued for rendering before considering a flush
completed. Otherwise the decoder may not have enough output buffers to
continue decoding after the discontinuity and we'll never dequeue more
from the native window.

Change-Id: I42e275dc336568e180081c6d7c0dc05fc9637c79
related-to-bug: 8578467
/frameworks/av/media/libstagefright/ACodec.cpp
0ae2001f40587556e2f5ed56f791292fb5e9a329 19-Apr-2013 Andreas Huber <andih@google.com> A flush of a video decoder connected to a native window must reclaim

output buffers already queued for rendering before considering a flush
completed. Otherwise the decoder may not have enough output buffers to
continue decoding after the discontinuity and we'll never dequeue more
from the native window.

Change-Id: I42e275dc336568e180081c6d7c0dc05fc9637c79
related-to-bug: 8578467
/frameworks/av/media/libstagefright/ACodec.cpp
42392e49e167c6a0c573e55e1c1b4c7fa0ceb213 17-Apr-2013 Andreas Huber <andih@google.com> Apparently the mp3 decoder glitches if it was configured with the wrong

sample rate. Make sure we tell it about the one the extractor provides.

Change-Id: Ice5b9cf55485ca1a8f099a14be0202be9540e781
related-to-bug: 8621639
/frameworks/av/media/libstagefright/ACodec.cpp
2242fbd1d9327dff9c25ac2aba0fa7d5d471bb88 17-Apr-2013 Andreas Huber <andih@google.com> Apparently the mp3 decoder glitches if it was configured with the wrong

sample rate. Make sure we tell it about the one the extractor provides.

Change-Id: Ice5b9cf55485ca1a8f099a14be0202be9540e781
related-to-bug: 8621639
/frameworks/av/media/libstagefright/ACodec.cpp
089edf2e227c72b7ff4fd9b9ed96320e21811d50 12-Apr-2013 Marco Nelissen <marcone@google.com> Merge "Fix MediaCodec.flush()" into jb-mr2-dev
91b4e0d2b2dc0d3eeee375d51f48ff8cc243f6ca 12-Apr-2013 Marco Nelissen <marcone@google.com> Merge "Fix MediaCodec.flush()" into jb-mr2-dev
f3bd1972e039c6ded5154db715e5a32f1813a239 09-Apr-2013 Marco Nelissen <marcone@google.com> Fix MediaCodec.flush()

There were two problems here. One was that the skip/cut buffer
wasn't cleared when it should be, and the second was that we
were always sending the first buffer of encoded data to the AAC
decoder twice.
b/8543366

Change-Id: Ic040edabf16cccd1f6ef8c9e5c9cfbacbdd8a089
/frameworks/av/media/libstagefright/ACodec.cpp
b3ac921cae96686ec0902796bb8f8ef99ae08abd 09-Apr-2013 Marco Nelissen <marcone@google.com> Fix MediaCodec.flush()

There were two problems here. One was that the skip/cut buffer
wasn't cleared when it should be, and the second was that we
were always sending the first buffer of encoded data to the AAC
decoder twice.
b/8543366

Change-Id: Ic040edabf16cccd1f6ef8c9e5c9cfbacbdd8a089
/frameworks/av/media/libstagefright/ACodec.cpp
5157b1e8355ef3176536e4de793ec1b7679b7ad9 12-Apr-2013 Andreas Huber <andih@google.com> Merge "ACodec now signals an error if the mediaserver died while it is in" into jb-mr2-dev
99076b990cfc6514b7de3a4809b3b3ff3d76e43d 12-Apr-2013 Andreas Huber <andih@google.com> Merge "ACodec now signals an error if the mediaserver died while it is in" into jb-mr2-dev
ac0230da14a3d223c2144b165a3a163e8519d239 12-Apr-2013 Andreas Huber <andih@google.com> ACodec now signals an error if the mediaserver died while it is in

anything other than "uninitialized" state.

Change-Id: Id133d897ac65b455b34e5de17ff9c39b47285630
related-to-bug: 8397711
/frameworks/av/media/libstagefright/ACodec.cpp
6610a7d621c634fe059b855ca7eb3f58fb8d0757 12-Apr-2013 Andreas Huber <andih@google.com> ACodec now signals an error if the mediaserver died while it is in

anything other than "uninitialized" state.

Change-Id: Id133d897ac65b455b34e5de17ff9c39b47285630
related-to-bug: 8397711
/frameworks/av/media/libstagefright/ACodec.cpp
76ab6df08a2069eac6317715dadccbb6041e7fab 11-Apr-2013 Andreas Huber <andih@google.com> The framework really doesn't need to know the specifics of the codec

color format, so stop trying to enforce a whitelist.

Change-Id: I0ceb3bdd5bcc6c1bbd56740b0cd662a2b5820dfe
related-to-bug: 8596546
/frameworks/av/media/libstagefright/ACodec.cpp
3c09d025b60dedc605e893d630177bd54552f061 11-Apr-2013 Andreas Huber <andih@google.com> The framework really doesn't need to know the specifics of the codec

color format, so stop trying to enforce a whitelist.

Change-Id: I0ceb3bdd5bcc6c1bbd56740b0cd662a2b5820dfe
related-to-bug: 8596546
/frameworks/av/media/libstagefright/ACodec.cpp
6463e76d41430f9b03a79b221de84255f2475658 05-Apr-2013 Marco Nelissen <marcone@google.com> Make sure resume() and flush() are handled appropriately even if the codec

is in Loaded->Idle state.
b/8347958

Change-Id: Ic14d29502a7effc636251379bb1bbc25739db98e
/frameworks/av/media/libstagefright/ACodec.cpp
488bf2281134c549fcc9ffcec7bda9690c2d5617 05-Apr-2013 Marco Nelissen <marcone@google.com> Make sure resume() and flush() are handled appropriately even if the codec

is in Loaded->Idle state.
b/8347958

Change-Id: Ic14d29502a7effc636251379bb1bbc25739db98e
/frameworks/av/media/libstagefright/ACodec.cpp
d477b8d071826c0768620f7ac302f31d8b12b1ca 28-Mar-2013 Andreas Huber <andih@google.com> Make sure resume() and flush() are handled appropriately even if the codec

is in Idle->Executing state.

Change-Id: I16a10791fae0e062a19299732c472cc93e4ed971
related-to-bug: 8347958
/frameworks/av/media/libstagefright/ACodec.cpp
5e691cd3aed18b79cc7362b6689f67886ce90e56 28-Mar-2013 Andreas Huber <andih@google.com> Make sure resume() and flush() are handled appropriately even if the codec

is in Idle->Executing state.

Change-Id: I16a10791fae0e062a19299732c472cc93e4ed971
related-to-bug: 8347958
/frameworks/av/media/libstagefright/ACodec.cpp
6507d14c6d10f93d390de62b9eed267f9b544985 05-Mar-2013 Andy McFadden <fadden@android.com> Correct MediaCodec + Surface behavior

Assorted tweaks:
- Allow signalEndOfInputStream() before ACodec is in Executing
state (added message to two more states).
- Return an error if signalEndOfInputStream() is called a second
time on the same stream.
- Require AndroidOpaque color format in createInputSurface().
- Disallow dequeueInputBuffer() after an input surface has been
created (boolean flag in MediaCodec tracks it).
- Discard input surface when encoder is re-configure()ed (drop
OMXNodeInstance's ref when we go back to Loaded).

Bug 7991062

Change-Id: Iff30f3036e14eb5a2f6536910dcf11aba33031ee
/frameworks/av/media/libstagefright/ACodec.cpp
ba6218eae3dbcf3f962b3561b26374a214dbf5e2 05-Mar-2013 Andy McFadden <fadden@android.com> Correct MediaCodec + Surface behavior

Assorted tweaks:
- Allow signalEndOfInputStream() before ACodec is in Executing
state (added message to two more states).
- Return an error if signalEndOfInputStream() is called a second
time on the same stream.
- Require AndroidOpaque color format in createInputSurface().
- Disallow dequeueInputBuffer() after an input surface has been
created (boolean flag in MediaCodec tracks it).
- Discard input surface when encoder is re-configure()ed (drop
OMXNodeInstance's ref when we go back to Loaded).

Bug 7991062

Change-Id: Iff30f3036e14eb5a2f6536910dcf11aba33031ee
/frameworks/av/media/libstagefright/ACodec.cpp
7cd58537932ef6f481f68be0b9c597a89cebdfec 19-Feb-2013 Andy McFadden <fadden@android.com> Implement Surface input to MediaCodec.

Also, renamed a CHECK_INTERFACE macro that was clashing with the
Binder version.

Bug 7991062

Change-Id: If5e6ed0a06d9f67975497676e4b05abe3aa3d6c0
/frameworks/av/media/libstagefright/ACodec.cpp
f779bb50d9746d9526541c3e6dcdf619cac941b7 19-Feb-2013 Andy McFadden <fadden@android.com> Implement Surface input to MediaCodec.

Also, renamed a CHECK_INTERFACE macro that was clashing with the
Binder version.

Bug 7991062

Change-Id: If5e6ed0a06d9f67975497676e4b05abe3aa3d6c0
/frameworks/av/media/libstagefright/ACodec.cpp
a2eb22c1de262aa3fa7c356537ac2fe165afdf3d 07-Feb-2013 Andreas Huber <andih@google.com> Allow for dynamic reconfiguration of the video bitrate used

to encode video while running as a wfd source.

Change-Id: I44f7b2350c88fc5807047c61bfe594ef8fa79275
/frameworks/av/media/libstagefright/ACodec.cpp
c71601c3b1dd63afc9be462194809813e4dbacf1 07-Feb-2013 Andreas Huber <andih@google.com> Allow for dynamic reconfiguration of the video bitrate used

to encode video while running as a wfd source.

Change-Id: I44f7b2350c88fc5807047c61bfe594ef8fa79275
/frameworks/av/media/libstagefright/ACodec.cpp
0f6675d5fdf15d4b8765545fb6a351138acccdf6 16-Jan-2013 SeungBeom Kim <sbcrux.kim@samsung.com> ACodec Fix.

Bug: 7961269

Change-Id: Ie12530f89dd96dbce82e873de0c2310490390c34
Signed-off-by: SeungBeom Kim <sbcrux.kim@samsung.com>
/frameworks/av/media/libstagefright/ACodec.cpp
14e4016259e18f6d88446145f8973d22d9884505 16-Jan-2013 SeungBeom Kim <sbcrux.kim@samsung.com> ACodec Fix.

Bug: 7961269

Change-Id: Ie12530f89dd96dbce82e873de0c2310490390c34
Signed-off-by: SeungBeom Kim <sbcrux.kim@samsung.com>
/frameworks/av/media/libstagefright/ACodec.cpp
21ad778dcfcddb8f8fd9dc3fe4992fbef246c511 18-Dec-2012 Marco Nelissen <marcone@google.com> Report buffer size even when using hardware buffers

This makes it so that the buffers dequeued from a MediaCodec show
a non-zero size when there's actually data in them, which allows
the caller to distinguish between a valid frame and an empty buffer.

Change-Id: I891b2301501e26f0b4e8cf2e24c169e501a6d026
/frameworks/av/media/libstagefright/ACodec.cpp
616d9ea56744a9aeb3ae93e850450732acfe96a8 18-Dec-2012 Marco Nelissen <marcone@google.com> Report buffer size even when using hardware buffers

This makes it so that the buffers dequeued from a MediaCodec show
a non-zero size when there's actually data in them, which allows
the caller to distinguish between a valid frame and an empty buffer.

Change-Id: I891b2301501e26f0b4e8cf2e24c169e501a6d026
/frameworks/av/media/libstagefright/ACodec.cpp
516dacfb02d0b0eafe21114330c98ce0e7d90da9 04-Dec-2012 Andreas Huber <andih@google.com> Respect sample aspect ratio in NuPlayer.

related-to-bug: 7569402
Change-Id: I302de95d83b180bd2dc72ddd0c69a665dbce2527
/frameworks/av/media/libstagefright/ACodec.cpp
e9810fae2ca6620337b75a787786cc0ea52adecd 04-Dec-2012 Andreas Huber <andih@google.com> Respect sample aspect ratio in NuPlayer.

related-to-bug: 7569402
Change-Id: I302de95d83b180bd2dc72ddd0c69a665dbce2527
/frameworks/av/media/libstagefright/ACodec.cpp
239a901bb320383eb1aa2820c02c80937053acb4 29-Nov-2012 James Dong <jdong@google.com> am 296cb9dd: am 0dbe5a93: Added optional intra macroblock refresh support for encoding

* commit '296cb9ddd916c43983bfb4ddab9c69ed555d4cc4':
Added optional intra macroblock refresh support for encoding
2e57f4c428be32a574e31b0f4aeeae8de24e5895 29-Nov-2012 James Dong <jdong@google.com> am 296cb9dd: am 0dbe5a93: Added optional intra macroblock refresh support for encoding

* commit '296cb9ddd916c43983bfb4ddab9c69ed555d4cc4':
Added optional intra macroblock refresh support for encoding
f6f38287b97ec69b169387add6458f859b770e65 29-Nov-2012 Andreas Huber <andih@google.com> Clear the sticky EOS flags when transitioning to LOADED state

instead of transitioning _from_ UNINITIALIZED state. This makes codec instances
reusable.

Change-Id: I8f0c11923978ffee58b553a5ac59c740b0223c54
/frameworks/av/media/libstagefright/ACodec.cpp
16572becd56c43a43ceffd8edd33263895d0c045 29-Nov-2012 Andreas Huber <andih@google.com> Clear the sticky EOS flags when transitioning to LOADED state

instead of transitioning _from_ UNINITIALIZED state. This makes codec instances
reusable.

Change-Id: I8f0c11923978ffee58b553a5ac59c740b0223c54
/frameworks/av/media/libstagefright/ACodec.cpp
0dbe5a9321b24b6883fbb2fe97cd9d525128b0b5 15-Nov-2012 James Dong <jdong@google.com> Added optional intra macroblock refresh support for encoding

o related-to-bug: 7524791

Change-Id: I95ac4ee925e2dbeb00b3cfb2e29c611698c5cc9f
/frameworks/av/media/libstagefright/ACodec.cpp
e97adde42fabc3928a2ac0b8cdc88e35b24b85dc 15-Nov-2012 James Dong <jdong@google.com> Added optional intra macroblock refresh support for encoding

o related-to-bug: 7524791

Change-Id: I95ac4ee925e2dbeb00b3cfb2e29c611698c5cc9f
/frameworks/av/media/libstagefright/ACodec.cpp
ba933df89521d63f75ca66af12ce9d7ae9496b9e 15-Nov-2012 Marco Nelissen <marcone@google.com> Add GSM 6.10 decoder

Supports Microsoft frame packing only, since that's what the sample
file used.
b/6620569

Change-Id: Ia89d95bcbf0f8dcbaad42148a7401728f60e079d
/frameworks/av/media/libstagefright/ACodec.cpp
2ed5cf016c1b45426ae25ab105e02ff4bb992f28 15-Nov-2012 Marco Nelissen <marcone@google.com> Add GSM 6.10 decoder

Supports Microsoft frame packing only, since that's what the sample
file used.
b/6620569

Change-Id: Ia89d95bcbf0f8dcbaad42148a7401728f60e079d
/frameworks/av/media/libstagefright/ACodec.cpp
4471e47ece77be5b4159cc9cbbcef4d43900d36f 14-Nov-2012 Andreas Huber <andih@google.com> Properly signal an error if codec configuration goes wrong.

previously any error signaled by setupXXX inside ACodec::configureCodec
would be overwritten with the result of setMinBufferSize at the end
of the function.

Change-Id: Id4beb571ca52ea4646239d0af006e09ce1130268
related-to-bug: 7542181
/frameworks/av/media/libstagefright/ACodec.cpp
b81ed713b09d6db0f01d052fcd3f6bdfb5dd05c1 14-Nov-2012 Andreas Huber <andih@google.com> Properly signal an error if codec configuration goes wrong.

previously any error signaled by setupXXX inside ACodec::configureCodec
would be overwritten with the result of setMinBufferSize at the end
of the function.

Change-Id: Id4beb571ca52ea4646239d0af006e09ce1130268
related-to-bug: 7542181
/frameworks/av/media/libstagefright/ACodec.cpp
96076964863ee6887f0bed9d0f11f424b48ab9b9 01-Nov-2012 Andreas Huber <andih@google.com> Make video encoders' bitrate mode (constant, variable, ...) configurable

through the desired output format. Configure the video encoder to use
constant bitrate mode for WFD.

Change-Id: Id7bd619598153c13448a9c5acd69d80f8a01f333
related-to-bug: 7459597
/frameworks/av/media/libstagefright/ACodec.cpp
7b4262221c06951e9df75d5414c0a7daab365177 01-Nov-2012 Andreas Huber <andih@google.com> Make video encoders' bitrate mode (constant, variable, ...) configurable

through the desired output format. Configure the video encoder to use
constant bitrate mode for WFD.

Change-Id: Id7bd619598153c13448a9c5acd69d80f8a01f333
related-to-bug: 7459597
/frameworks/av/media/libstagefright/ACodec.cpp
3a0ef0dc71f3776d115f30d87f1d8867daefea88 28-Sep-2012 Andreas Huber <andih@google.com> Tell the encoder to emit SPS/PPS before IDR frames in wifi display code.

Change-Id: Ic40e09b66784dd2e370d30b688d50561a47ab85a
related-to-bug: 7245308
/frameworks/av/media/libstagefright/ACodec.cpp
13315ce05fbee1e1f5b920cfe4217c3a30167023 28-Sep-2012 Andreas Huber <andih@google.com> Tell the encoder to emit SPS/PPS before IDR frames in wifi display code.

Change-Id: Ic40e09b66784dd2e370d30b688d50561a47ab85a
related-to-bug: 7245308
/frameworks/av/media/libstagefright/ACodec.cpp
96fc6cc65ca93009a759a3a874b82a35771b9714 28-Sep-2012 Andreas Huber <andih@google.com> Various improvements to a cleaner shutdown of the wifi display connection.

Change-Id: Id029a89939e53c2bd1d20e572d3975ec2795c239
related-to-bug: 7247918
/frameworks/av/media/libstagefright/ACodec.cpp
a7f7e0ac9436a8417bb9f31aecedfec1909d4630 28-Sep-2012 Andreas Huber <andih@google.com> Various improvements to a cleaner shutdown of the wifi display connection.

Change-Id: Id029a89939e53c2bd1d20e572d3975ec2795c239
related-to-bug: 7247918
/frameworks/av/media/libstagefright/ACodec.cpp
496238cc7551d414067dcbbb4fe3bd801f205f95 14-Sep-2012 Andreas Huber <andih@google.com> Support IDR requests in wifi display, MediaCodec and ACodec.

Change-Id: I596cf8dd61b63465437f78413186fad2be287244
/frameworks/av/media/libstagefright/ACodec.cpp
03e2ffa64470eec4e886614a4fa4facbae58a862 14-Sep-2012 Andreas Huber <andih@google.com> Support IDR requests in wifi display, MediaCodec and ACodec.

Change-Id: I596cf8dd61b63465437f78413186fad2be287244
/frameworks/av/media/libstagefright/ACodec.cpp
d7bee3a9d2ad76d073d91f0ee36d5ac5f9df480c 29-Aug-2012 Andreas Huber <andih@google.com> Initial checkin of support for acting as a wifi display source

Change-Id: I08f17efa0c7d007e17408feb7d4fbef0a19f531a
/frameworks/av/media/libstagefright/ACodec.cpp
35213f1420c669f43314cb75eadea450d21a75cb 29-Aug-2012 Andreas Huber <andih@google.com> Initial checkin of support for acting as a wifi display source

Change-Id: I08f17efa0c7d007e17408feb7d4fbef0a19f531a
/frameworks/av/media/libstagefright/ACodec.cpp
e671207115fac3914134c61b336d5fa0242c68ca 26-Jun-2012 Andreas Huber <andih@google.com> Make sure codec names and corresponding quirks are returned together.

Previously they were returned in separate vectors and only one of them was sorted if
software codecs were preferred, leaving the quirks no longer matching the codec name
at the same index.

Change-Id: Id3f1e6f9f7f8c9cc4b6ebfb86a203b4d59de8604
related-to-bug: 6737884
/frameworks/av/media/libstagefright/ACodec.cpp
9fbe94294ce2053d102ff5de89846a0c5015fb58 30-Jul-2012 Ed Heyl <ed@google.com> Merge remote-tracking branch 'goog/jb-dev-mako' into jb-mr1-dev

Conflicts:
services/audioflinger/AudioFlinger.cpp

Change-Id: If27e4ff35de1e182394cc149e1557a49f0f7c95b
1e5b2b3361ddd07259bf4b29820ca4aa5f3a861b 14-Jun-2012 Jamie Gennis <jgennis@google.com> Update ANativeWindow client code for sync

This change updates all the uses of ANativeWindow to use the new ANW functions
that accept and return Sync HAL fence file descriptors.

Change-Id: Id7db42d8d6380f8b440d88476ce9211c6225fb16
/frameworks/av/media/libstagefright/ACodec.cpp
18faac2af4e3b27deec0a707757883e5e569c591 21-Jun-2012 Haynes Mathew George <hgeorge@codeaurora.org> Add vendor specific output color format

- Add Qualcomm specific color format support to OMXCodec and ACodec
- This is the default color format supported on QCom chipsets

Change-Id: Id947b158c3b403c2d347f708bc1e780b4d65e220
/frameworks/av/media/libstagefright/ACodec.cpp
755b9861197f1566f916785ba7d35cf86fd5b2d5 29-May-2012 Andreas Huber <andih@google.com> Unwedge ACodec if allocating output buffers fails while reconfiguring.

Change-Id: I871cf639167c01860e65c0408d3ce935f8f8f1ea
related-to-bug: 6571060
/frameworks/av/media/libstagefright/ACodec.cpp
bc098410be55f9d96f394b3981a0c482b83859b6 22-May-2012 Andreas Huber <andih@google.com> Tell surface flinger that we want to protect output buffers from being

sent to HDMI (without HDCP) and push a few black frames on IDLE->LOADED
similar to OMXCodec's behaviour.

Change-Id: Iea6055a115151ca881220a70a31af6ade2c58cb3
related-to-bug: 6537187
/frameworks/av/media/libstagefright/ACodec.cpp
91bfadb4aa75444c60e9949232de3c184cfe060a 21-May-2012 Andreas Huber <andih@google.com> If we encounter an error during buffer allocation change state back

to LOADED instead of remaining in the transitional state LOADED->IDLE
that won't properly handle flush or shutdown requests.

Change-Id: Ica1bf22eb884b220f18ed2a4f7a9c56eec228796
related-to-bug: 6516512
/frameworks/av/media/libstagefright/ACodec.cpp
1ec498e67f78fb0c3ab2a1cd9a071e6356618dad 15-May-2012 Andreas Huber <andih@google.com> Explicitly set the video scaling mode to "stretch".

Change-Id: I23b8848cfef51bc8ea72deb22783e21d093dbd98
related-to-bug: 6498150
/frameworks/av/media/libstagefright/ACodec.cpp
44f84ded62bffd5f04e0f5961e8304427a7b9f34 14-May-2012 Andreas Huber <andih@google.com> ACodec mustn't override the video scaling mod.

Change-Id: Id9b569446d73dcfe44ab4a3488812203758c9c42
related-to-bug: 6490687
/frameworks/av/media/libstagefright/ACodec.cpp
eb61431af13741aa8b7e57a39f69bba5a6c190dc 11-May-2012 Andreas Huber <andih@google.com> Increase AAC software decoder's buffer count. Refactor how clients

of ACodec get notified about codec buffers and buffer ids.

Change-Id: I962f873262dae7aa7b43f5f68a6d60268282f91e
related-to-bug: 6478823
/frameworks/av/media/libstagefright/ACodec.cpp
2f74ef3cdc192f817ee1121f41765f0852c1d81e 30-Apr-2012 Jean-Michel Trivi <jmtrivi@google.com> OMX IL wrapper for FLAC encoder

Add wrapper around libFLAC for FLAC encoding in OpenMAX IL.

Declare FLAC encoder in OMX component roles.

Bug 5525503

Change-Id: I19bbce41c216870669d09365693f4ea89f8bc0f7
/frameworks/av/media/libstagefright/ACodec.cpp
7c25df82dfc8bbedb58608242f0d923a4594bb14 07-May-2012 James Dong <jdong@google.com> Get rid of vendor specific video encoder component names from ACodec and OMXCodec

o related-to-bug: 6446245

Change-Id: I1fa07ad8a39337e3b19ac51c10533a2de8c11bb5
/frameworks/av/media/libstagefright/ACodec.cpp
9806555d3930be43e11106281dee354820ac1c88 03-May-2012 Andreas Huber <andih@google.com> Respect channel mask in ACodec and NuPlayer.

Refactor conversion from MetaData into AMessage while we're at it.

Change-Id: I5479129836ea4316e8de28cf1b472bf19e3ac4ab
related-to-bug: 6439076
/frameworks/av/media/libstagefright/ACodec.cpp
8b71241ce7353731ab75322c46e090ee35014a33 27-Apr-2012 Marco Nelissen <marcone@google.com> Fix mono gapless playback for decoders that output stereo

The old AAC decoder always outputs stereo, even for mono source material, so we
need to use the number of channels of the output when calculating the number of
bytes to skip, not the number of channels in the source.
This makes OMXCodec skip the right amount of data, and prevents NuPlayer from
writing half a frame and then asserting when the AudioSink doesn't accept it.
Also move use of the SkipCutBuffer from NuPlayer to ACodec, so that it also
works when using the new Java APIs, and make SkipCutBuffer derive from RefBase.
b/774846

Change-Id: I34df9fea3e6730617eae559afaa556f4085ef0a0
/frameworks/av/media/libstagefright/ACodec.cpp
aeb8fd460ed87d032b3fb8bb61e21eb542ce0f5b 19-Apr-2012 Dave Burke <daveburke@google.com> Add Fraunhofer AAC encoder with AAC-ELD support.

Change-Id: I6cd499d257d72f50a5b508bed97796a591a51506
/frameworks/av/media/libstagefright/ACodec.cpp
c1d8115e8a0bdaeb2b723d395b9a85a02c90c933 24-Apr-2012 Andreas Huber <andih@google.com> Make sure OMXCodec and ACodec both accept more than 2 channels of audio

and fill in the OMX channel mask properly.

Change-Id: I915950a0b252142b9eb3277cf7c6e0d9f5875305
/frameworks/av/media/libstagefright/ACodec.cpp
ecdd39c5af016e2fa57cbfd837aa670b706dabd3 29-Mar-2012 Andreas Huber <andih@google.com> Implementation of a raw audio "decoder".

Change-Id: Ie89f01e59dd8106883937188afbb407550f0ac92
/frameworks/av/media/libstagefright/ACodec.cpp
ed3e3e046840d5bf1ca84a8c0cc097425e89d6d6 26-Mar-2012 Andreas Huber <andih@google.com> Provisional support for secure decryption of media streams.

Change-Id: Ib3982a9c960bfdb0cb7e1b174440b141b194cfbe
/frameworks/av/media/libstagefright/ACodec.cpp
c5255ac5b1bd313dcb50159566163b24dce7483f 16-Mar-2012 Andreas Huber <andih@google.com> ACodec is a little more aggressive in its error checking now.

Update components to do the right thing.

Change-Id: Ibfbad3f53effc16368cca4a0e978d01d54d08a1d
/frameworks/av/media/libstagefright/ACodec.cpp
afc16d667afa23f5aa00154ccad62f8c45cf5419 01-Mar-2012 Andreas Huber <andih@google.com> Instead of hardcoding OMX component names in our code, support

a config file instead.

Change-Id: I5835903ab9f1c4a22ccc605ca99ed966767adf57
/frameworks/av/media/libstagefright/ACodec.cpp
c95c2ddcdfc974f42408a377fbe2de51b94a8c94 29-Feb-2012 Andreas Huber <andih@google.com> Separate the notion of "stop" from that of "release", i.e.

stop - means transition back to LOADED state and keeping the component
instance allocated.

release - means we get rid of the component completely.

Change-Id: I40ad01ce70821faaad43f57999249904f9144924
/frameworks/av/media/libstagefright/ACodec.cpp
df712ea86e6350f7005a02ab0e1c60c28a343ed0 26-Feb-2012 Mathias Agopian <mathias@google.com> fix libgui header location

Change-Id: Iec71706cdd4f29c6904993648ce873e83ef9cafe
/frameworks/av/media/libstagefright/ACodec.cpp
2d8bedd05437b6fccdbc6bf70f673ffd86744d59 21-Feb-2012 Andreas Huber <andih@google.com> Add new APIs AMessage::(set|find)Buffer to make it safer to pass

ABuffer objects through messages.

Change-Id: I9f8b4e4c4767d0d70a0105e0c0813b754379b49d
/frameworks/av/media/libstagefright/ACodec.cpp
5778822d86b0337407514b9372562b86edfa91cd 21-Feb-2012 Andreas Huber <andih@google.com> Implementation of a java media codec interface and associated tools.

Change-Id: I13e54062d4de584355c5d82bb027a68aeaf2923b
/frameworks/av/media/libstagefright/ACodec.cpp
29357bc2c0dd7c43ad3bd0c8e3efa4e6fd9bfd47 06-Jan-2012 Steve Block <steveblock@google.com> Rename (IF_)LOGE(_IF) to (IF_)ALOGE(_IF) DO NOT MERGE

See https://android-git.corp.google.com/g/#/c/157220

Bug: 5449033
Change-Id: Ic9c19d30693bd56755f55906127cd6bd7126096c
/frameworks/av/media/libstagefright/ACodec.cpp
5ff1dd576bb93c45b44088a51544a18fc43ebf58 06-Jan-2012 Steve Block <steveblock@google.com> Rename (IF_)LOGW(_IF) to (IF_)ALOGW(_IF) DO NOT MERGE

See https://android-git.corp.google.com/g/157065

Bug: 5449033
Change-Id: I00a4b904f9449e6f93b7fd35eac28640d7929e69
/frameworks/av/media/libstagefright/ACodec.cpp
7a3a2b2f9bb9421dcf83fbd47276e57917078aef 30-Nov-2011 James Dong <jdong@google.com> Fix the broken build

Change-Id: Ib508514891474d24f14ac69d721b0c9c700a0c3f
/frameworks/av/media/libstagefright/ACodec.cpp
8afbf8e07fd1d75dfa0a517267beb6c1fa818027 30-Nov-2011 Andreas Huber <andih@google.com> am 52607c53: am d12dc284: Merge "If an error occurs that prevents us from reallocating buffers during a format change" into ics-mr1

* commit '52607c5364446df6ac5b2f55cb50e146e6023a4f':
If an error occurs that prevents us from reallocating buffers during a format change
d3d822204249eaca4259bdf46f6f0357b96e8e21 28-Nov-2011 Andreas Huber <andih@google.com> If an error occurs that prevents us from reallocating buffers during a format change

we need to transition to executing state anyway to be able to properly flush/shutdown
in the future.

Change-Id: Ie48bc09ea31942009ae3a5a45aabc9ffad9fb91f
related-to-bug: 5655016
/frameworks/av/media/libstagefright/ACodec.cpp
3856b090cd04ba5dd4a59a12430ed724d5995909 20-Oct-2011 Steve Block <steveblock@google.com> Rename (IF_)LOGV(_IF) to (IF_)ALOGV(_IF) DO NOT MERGE

See https://android-git.corp.google.com/g/#/c/143865

Bug: 5449033
Change-Id: I0122812ed6ff6f5b59fe4a43ab8bff0577adde0a
/frameworks/av/media/libstagefright/ACodec.cpp
2944eca607304a095ea43ba2b8f0b9de61249f9f 08-Sep-2011 Andreas Huber <andih@google.com> Support for an MPEG2 Program Stream extractor.

Change-Id: I606d87c278f72b22a5b6d7ee57bce6b02e280d41
/frameworks/av/media/libstagefright/ACodec.cpp
729de186450f78c099637e1fce743fe531862c52 28-Sep-2011 Andreas Huber <andih@google.com> Support AMR, G.711 and vorbis audio in ACodec and friends.

Change-Id: I08c03219bf2d60fc5c6e89957bd4b4c615570983
/frameworks/av/media/libstagefright/ACodec.cpp
dc9bacd838442a524585887e6ea6696836be2eda 26-Sep-2011 Andreas Huber <andih@google.com> Propagate error signalled by the source all the way to the output EOS notification.

Change-Id: I30e959a6d669f09745c59fbdebee08f869511cf7
related-to-bug: 5372901
/frameworks/av/media/libstagefright/ACodec.cpp
078cfcf7cce9185ec7559910d08b0bc02bfc88a3 15-Sep-2011 Andreas Huber <andih@google.com> Various improvements to nuplayer playback

- 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
/frameworks/av/media/libstagefright/ACodec.cpp
cc54fbaa69c0b69929467449d2c19192f15b5039 12-Sep-2011 Andreas Huber <andih@google.com> Turn an another assertion into a runtime error in ACodec's implementation

Change-Id: I6779b29f200b90d088273ab3204724ef3d8d59bd
related-to-bug: 5284760
/frameworks/av/media/libstagefright/ACodec.cpp
cb67cd1b51ff9ab221e3124cf7e546515fef3c87 27-Aug-2011 Andreas Huber <andih@google.com> Signal errors to the client instead of asserting in ACodec.

Also make sure NuPlayer can properly shutdown in certain edge cases.

Change-Id: Iceb16d600d87ba66c802e60e95bf62f66487a453
/frameworks/av/media/libstagefright/ACodec.cpp
c92fd24c10a6bf80b346d7e261325434d9c6964b 16-Aug-2011 Andreas Huber <andih@google.com> Error handling in ACodec and Nuplayer.

Codec errors (and codec not found errors) now trigger a controlled shutdown
of playback and signal errors to the MediaPlayer client.

Change-Id: I2ee23ff2a1422d05a1a21e50ecb87d7c7ab958cc
/frameworks/av/media/libstagefright/ACodec.cpp
9bc7af17974f448291a44912566ec7472a0d798b 19-Jul-2011 Mathias Agopian <mathias@google.com> use SurfaceTexture new scaling mode in SF

SF now obeys SurfaceTexture's scaling mode instead
of inferring it from the buffer's size

Change-Id: I4d50e9851abedd7e64bfcfc8af9eefb9fb668529
/frameworks/av/media/libstagefright/ACodec.cpp
0af941927ef8f35f2da5380dfd8d04b7f4ed3532 01-Jul-2011 Andreas Huber <andih@google.com> Ignore all flush-complete notifications with port == OMX_ALL

Use of this notification is not consistent across
implementations. We'll drop this notification and rely
on flush-complete notifications on the individual port
indices instead.

Change-Id: I76c0dfdcfc92a7c9acf57abf3027d2638d77efca
/frameworks/av/media/libstagefright/ACodec.cpp
e5bf6409774fe73f968b7db215f535b64de66139 30-Jun-2011 Andreas Huber <andih@google.com> Some (most) OMX decoders do not send a OMX_CmdComplete/Flush OMX_ALL notification

Change-Id: I1bdcc7be5f12dab301891a5f9ee5cc981e09ba82
/frameworks/av/media/libstagefright/ACodec.cpp
1065b3f17d3048948e7d522049d1980b90df3dc1 28-Jun-2011 Andreas Huber <andih@google.com> Multiple changes to ACodec/codec tools:

Make sure sf2 does not coalesce input buffers, generalize ACodec's codec
instantiation based on OMXCodec's list of eligible component names.

Some changes/additions to the "sf2" commandline tool

Make surface options consistent with stagefright tool, i.e. use '-S' instead of '-s'
New option '-R' renders surface-allocated buffers.

Also fixes a longstanding bug introduced when generalizing from surfaces to native windows that never used surface-allocated buffers in sf2 even when the option was specified.

Change-Id: I59fd533f0f6ef0337ebe2806ddc81a46878eb3ae
/frameworks/av/media/libstagefright/ACodec.cpp
57ca262f8d1c0aabeea294ddb53e4db172fc6bec 03-Jun-2011 James Dong <jdong@google.com> Move OMX_QCOM_COLOR_FormatYVU420SemiPlanar definition to OMX_IVCommon.h

Change-Id: I5cbc7246a63301fa7ff735fa3d6512e940608d2b
/frameworks/av/media/libstagefright/ACodec.cpp
386d609dc513e838c7e7c4c46c604493ccd560be 19-May-2011 Andreas Huber <andih@google.com> Support mpeg1,2 audio and mpeg1,2,4 video content extraction from .ts streams.

Change-Id: I9d2ee63495f161e30daba7c3aab16cb9d8ced6a5
/frameworks/av/media/libstagefright/ACodec.cpp
bbba88cb1bdc34705d1477208990a06904c022e7 11-May-2011 Andreas Huber <andih@google.com> Squashed commit of the following:

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
/frameworks/av/media/libstagefright/ACodec.cpp
8ce2364512f7c32c824f5ec5719688830ba72427 01-May-2011 Iliyan Malchev <malchev@google.com> frameworks/base: android_native_buffer_t -> ANativeWindowBuffer

Change-Id: Idc2eabaa805bb6d308ebb315872623f28d428417
Signed-off-by: Iliyan Malchev <malchev@google.com>
/frameworks/av/media/libstagefright/ACodec.cpp
89c120e7adbe09c6283591789594c5e591aa5032 29-Mar-2011 Andreas Huber <andih@google.com> Surfaceflinger expects rectangles to be specified right/bottom edge exclusive.

Change-Id: Ib493572c614dbb74fa23b13c3e43899e3b31cf0e
related-to-bug: 4147205
/frameworks/av/media/libstagefright/ACodec.cpp
27c174483a8ae9688d5d4897c19074f62c7f1701 17-Mar-2011 James Dong <jdong@google.com> Fix missing AOSP copyright headers for a bunch of media framework files

bug - 4119349

Change-Id: If5924e16a5f596d5d73d9beb66eaf5ac9a6f0e50
/frameworks/av/media/libstagefright/ACodec.cpp
9a5f9b7dbe9ecdebfbd9e8f96452c42213b08a31 03-Mar-2011 Jamie Gennis <jgennis@google.com> Merge "Stagefright: Use the ANW min undequeued bufs query."
59e7879a8482284a434268d51b4b438f0625d1be 01-Mar-2011 Jamie Gennis <jgennis@google.com> Merge "Stagefright: Query buffer usage from the component."
258d4e3aef7984574b0972a66871afc8a13d8e4e 28-Feb-2011 Jamie Gennis <jgennis@google.com> Stagefright: Use the ANW min undequeued bufs query.

This change modifies Stagefright's ANativeWindow initialization to use
the new MIN_UNDEQUEUED_BUFFERS query on the ANativeWindow.

Change-Id: I62565945e90ac40de326de77adcfa5577ed89975
Related-Bug: 3356050
/frameworks/av/media/libstagefright/ACodec.cpp
74006804065941841883c4b46ee785070164023f 23-Feb-2011 Jamie Gennis <jgennis@google.com> Fix error recovery in Stagefright init.

This change fixes the error path of
OMXCodec::allocateOutputBuffersFromNativeWindow so that it cancels the
correct number of buffers if a dequeueBuffer operation fails.

Change-Id: Ib7cdcdf24f1718bc070ad218a5980949c0e942eb
/frameworks/av/media/libstagefright/ACodec.cpp
3c14b9745c4afc88cec247d9dd0b003e087cbb52 24-Feb-2011 Jamie Gennis <jgennis@google.com> Stagefright: Query buffer usage from the component.

This change makes Stagefright query the gralloc buffer usage flags from
the OMX IL component and passing those flags on to the ANativeWindow.

Change-Id: Ic9af8a9e6df9ff4aadc7355890324d68841bc488
Related-Bug: 3479027
/frameworks/av/media/libstagefright/ACodec.cpp
1173118eace0e9e347cb007f0da817cee87579ed 09-Feb-2011 Glenn Kasten <gkasten@google.com> Bug 3438258 Add SurfaceTexture as MediaPlayer sink

This change enables the use of a SurfaceTexture in place of a Surface
as the video sink for an android.media.MediaPlayer. The new API
MediaPlayer.setTexture is currently hidden.

This includes:
- New Java and C++ interfaces
- C++ plumbing and implementation (JNI, Binder)
- Stagefright AwesomePlayer and NuPlayer use ANativeWindow
(either Surface or SurfaceTextureClient)

Change-Id: I2b568bee143d9eaf3dfc6cc4533c1bebbd5afc51
/frameworks/av/media/libstagefright/ACodec.cpp
349d3fcb4afacf754f7b5b5186d2f258f5bf35e7 04-Feb-2011 Andreas Huber <andih@google.com> Improvements/fixes to ACodec.

- Make sure ACodec reverts its state when it's shutdown
- Defer "resume" to after handling the OutputPortSettingsChange

- If the OMX_EventPortSettingsChanged event comes in while we're flushing, defer it
and make sure the output port can be disabled by deleting all buffers not already
owned by the component.

Change-Id: I1f8cdffa71237b57d4275a48b834647a7b263e8b
/frameworks/av/media/libstagefright/ACodec.cpp
31e2508c75018145a8238925ff1a08cbde4e799a 10-Jan-2011 Andreas Huber <andih@google.com> NuPlayer now properly sends MEDIA_SET_VIDEOSIZE notifications.

Change-Id: I99b4223ad6ecfd8839a3c0e737fef3165565d76d
related-to-bug: 3336496
/frameworks/av/media/libstagefright/ACodec.cpp
5bc087c573c70c84c6a39946457590b42d392a33 23-Dec-2010 Andreas Huber <andih@google.com> Squashed commit of the following:

commit eaeaa2672d4e0a82891493b2bde8bdd0c0e79a1b
Author: Andreas Huber <andih@google.com>
Date: Thu Dec 23 10:26:48 2010 -0800

Remove lowest bandwidth stream if using the legacy player.

Change-Id: I2f885e26344996de9152f8fda9fd6bdef89bf953

commit 7d652972615b2750fd8f1c21b9fab0e136df2b82
Author: Andreas Huber <andih@google.com>
Date: Thu Dec 23 10:14:36 2010 -0800

Don't clear the packet source's format for legacy discontinuities.

Change-Id: I9bd5a21b9bd28043ad38bd0658ccc8eda3c1079a

commit 2b18a45aac17cbfe1aa089d0f6510957d438dd64
Author: Andreas Huber <andih@google.com>
Date: Thu Dec 23 10:13:55 2010 -0800

Use NuPlayer for HTTP live streaming based on runtime property.

adb shell setprop media.httplive.enable-nuplayer true

Change-Id: I22738df3403985dc8e6992b1ab5da5747309f773

commit 50d899fb7b9ea52c3994b0a58e993998d926aeed
Author: Andreas Huber <andih@google.com>
Date: Wed Dec 22 16:25:22 2010 -0800

Make ACodec a lot less verbose.

Change-Id: I94c7e499b61032321ffaf999f5ad2c913cde6a48

commit b19e1740cb4d02990a56844654b5d019987c6405
Author: Andreas Huber <andih@google.com>
Date: Wed Dec 22 16:22:22 2010 -0800

Wait until we have fresh codec-specific-data before instantiating the decoders

after a discontinuity involving a format change.

Change-Id: I7bcf9b5ae3319f08bf8978a117e8ee5220902e37

commit 06428c006906c9099e430aface3b439ff1d36ecc
Author: Andreas Huber <andih@google.com>
Date: Wed Dec 22 15:20:38 2010 -0800

Disable random seeks in the streaming tool for now.

Change-Id: Ie86fde422dcfc4b2c7a01be51a193fda9c88cd71

commit e19db68f3bea8a61c191f60f6940f30e3a0d5f1b
Author: Andreas Huber <andih@google.com>
Date: Wed Dec 22 15:20:27 2010 -0800

Tweak HTTP live parameters.

Change-Id: If4b71e12485facc523a8a43d8213d0feb190daab

commit 1e9942791538c2256b579d96c6c04264b0d8b087
Author: Andreas Huber <andih@google.com>
Date: Wed Dec 22 14:48:23 2010 -0800

Enable http live streaming through NuPlayer for http URLs containing the string m3u8

Change-Id: I1691fe12ae8f1507fe3673313959cd50bc324624

commit 4c33f96a6e499ee0efe0e70b687094430cb7c1c0
Author: Andreas Huber <andih@google.com>
Date: Wed Dec 22 14:40:27 2010 -0800

Support for HTTP live streaming in NuPlayer.

Change-Id: Iacba1c3ebaeb8d3b972185deaf4cff18c8009c54

commit ddf705ce553708bc5b13d89a878484cf839bd674
Author: Andreas Huber <andih@google.com>
Date: Wed Dec 22 13:42:47 2010 -0800

StreamingSource now a subclass of abstract NuPlayer::Source

Change-Id: Ia6c7c639628910b9d1f37decc55da48b07a70de3

commit 9e04a8406b1882a8e3fdeb7b4d52db5ae70b970a
Author: Andreas Huber <andih@google.com>
Date: Wed Dec 22 13:33:52 2010 -0800

Refactor media data sourcing to NuPlayer::Source.

Change-Id: I1db9fb08c4e527bf7b19c29978cf342c2b0a0bc9

Change-Id: I9610a097481dda58f22142eacda3ac2dba0b63f9
/frameworks/av/media/libstagefright/ACodec.cpp
3831a066bcf1019864a94d2bc7b4c9241efc5c22 21-Dec-2010 Andreas Huber <andih@google.com> Squashed commit of the following:

commit 63be8ceb8b2354fb997a277c0092abae015ecf10
Author: Andreas Huber <andih@google.com>
Date: Fri Dec 17 13:45:34 2010 -0800

Enable handling of discontinuities that involve potential format changes.

Change-Id: I21848a113db8764abb54bdcf302b0923253eaf4d

commit d18a7f80ec09af382026809263dcbbfa9e7a9ec8
Author: Andreas Huber <andih@google.com>
Date: Fri Dec 17 13:45:01 2010 -0800

Signal whether or not a format change occured as part of the discontinuity.

Change-Id: I06e64f542f4369549c9cebbb892dc612346ae43d

commit c400adbd5fdbd65cfef7aed9ec65bcaace4bb69b
Author: Andreas Huber <andih@google.com>
Date: Fri Dec 17 13:44:46 2010 -0800

A little more instrumentation of ACodec

Change-Id: I07f4aeccbbd15cdd9f80f48c3f92ee984ef6d92b

commit 1d802ee01f47b3cdc5b89502cec7fbb595e197a3
Author: Andreas Huber <andih@google.com>
Date: Fri Dec 17 13:43:58 2010 -0800

Only sync audio/video queues if both types of media are actually present.

Change-Id: Ic88edf9bb1ebd4034c08747cce9877a4e28e0d35

commit e402da39d9a4d8b75653a78f728e20a3ef0fb497
Author: Andreas Huber <andih@google.com>
Date: Fri Dec 17 13:42:24 2010 -0800

Disable the random seek for now.

Change-Id: Iddd597b546e2f229e88214f9bdd6452bb188105e

Change-Id: I27c4d9ba916080be94ce6117dbb095e9022ed62b
/frameworks/av/media/libstagefright/ACodec.cpp
f933441648ef6a71dee783d733aac17b9508b452 16-Dec-2010 Andreas Huber <andih@google.com> Initial support for a true streaming player for mpeg2 transport streams.

Change-Id: I153eec439d260a5524b21270e16d36940ec3161a
/frameworks/av/media/libstagefright/ACodec.cpp