History log of /frameworks/av/media/libmediaplayerservice/nuplayer/NuPlayerDecoder.cpp
Revision Date Author Comments (<<< Hide modified files) (Show modified files >>>)
62dec9555ec832b1a8c63c70e4df745aa8635488 18-May-2017 Hassan Shojania <shojania@google.com> Modular DRM for MediaPlayer/Fixing legacy frame drop at NuPlayerDecoder

Bug: 34559906
Bug: 38039230
Bug: 38430289
Test: GTS/CTS Tests
Change-Id: I68dca5f8bae4f9f7866cfaaa6aba97c80dcd8ffb
/frameworks/av/media/libmediaplayerservice/nuplayer/NuPlayerDecoder.cpp
37ff0e6639e90ca49d4f0386a76c09437b459efd 21-Apr-2017 Wei Jia <wjia@google.com> NuPlayerDecoder: check mCodec before dereferencing it.

Test: media cts tests
Bug: 37538141
Change-Id: Ib95fd4786242d6742f3bdc7aab28f79d43e8da81
/frameworks/av/media/libmediaplayerservice/nuplayer/NuPlayerDecoder.cpp
fe3471f63bfcd829ecd33c8633f6f3b2ef57ad7c 05-Apr-2017 TreeHugger Robot <treehugger-gerrit@google.com> Merge "NuPlayer : send the correct streaming info while opening audio sink" into oc-dev
c387f2b719a1a26c8306f77d79cc9a6f26b36813 06-Aug-2015 Dhananjay Kumar <dhakumar@codeaurora.org> NuPlayer : send the correct streaming info while opening audio sink

-For any offload playback NuPlayerRenderer always open the audio sink
with isStreaming info as true.
-Pass the streaming info to the NuPlayerRenderer while opening audio
sink
Test: cts tests
Bug:36051644
Author: Preetam Singh Ranawat <apranawat@codeaurora.org>
Change-Id: I249e6769ef4587917a13b0225d049a3923544d16
(cherry picked from commit b2444b392d0d5de4118d37a24f4351f9de5c215d)
/frameworks/av/media/libmediaplayerservice/nuplayer/NuPlayerDecoder.cpp
71c8e5c9565af4745cfd7ff0e327da1a27d77bf7 04-Apr-2017 Andy Hung <hunga@google.com> NuPlayer: Use deep buffer AudioTrack for video playback

This reduces power requirements and increases robustness against
audio glitches.

Test: Photos
Bug: 36867565
Change-Id: I200728cfc1bfd01301441c8759816415abe58d48
/frameworks/av/media/libmediaplayerservice/nuplayer/NuPlayerDecoder.cpp
181fd9b5b64bab24bb49a34208f60a16e98488c5 17-Feb-2017 Chong Zhang <chz@google.com> stagefright: verbose logging for media connect/disconnect

bug: 35364355

Change-Id: I7b5f0aecf98733255cc27b091fea78298fa7e602
/frameworks/av/media/libmediaplayerservice/nuplayer/NuPlayerDecoder.cpp
cefac14261a32fb856b0d1ab31541787112e306e 07-Feb-2017 Hassan Shojania <shojania@google.com> Modular DRM for MediaPlayer

Bug: 34559906
Test: Manual through the test app

Change-Id: I286f9ff199c34563b7b8643de725f8d1534ea06c
/frameworks/av/media/libmediaplayerservice/nuplayer/NuPlayerDecoder.cpp
3539defd032864d33eed6add4820552f6fc4349b 10-Oct-2015 Santhosh Behara <santhoshbehara@codeaurora.org> nuplayer: handle error from MediaCodec in Decoder handleAnOutputBuffer

MediaCodec could send out message of output buffer available right before
it hits an error and clears its buffers.
Test: compiles
Author: Shalaj Jain <shalajj@codeaurora.org>

Change-Id: Ife308f3b8dc0448bcd1112b13cc0805bf7dedd7d
(cherry picked from commit 55f70d17df468db2b6691cbd7285a461e812eee4)
/frameworks/av/media/libmediaplayerservice/nuplayer/NuPlayerDecoder.cpp
d0c3b930668c9ae76e21f7b0cb6a8ffa7cea3f3b 07-Dec-2016 Wei Jia <wjia@google.com> Merge "NuPlayer: handle audio output format change in a clean way."
9a3101b22b5115717faeac986b43fc6618fd3b30 08-Nov-2016 Wei Jia <wjia@google.com> NuPlayer: handle audio output format change in a clean way.

Test: manually run mediaplayer test
Bug: 32659046
Change-Id: I5935ead79e3f3d2ccb47d9fe5c5ffe489755dcad
/frameworks/av/media/libmediaplayerservice/nuplayer/NuPlayerDecoder.cpp
29b7dcf6d3cdb97103467dc8106151c6260c239a 24-Oct-2016 Jeff Tinker <jtinker@google.com> Removing widevine classic

bug:30505334
Change-Id: I40ac8020b5442857936037a15847b0271359e624
/frameworks/av/media/libmediaplayerservice/nuplayer/NuPlayerDecoder.cpp
bf8986159e7615cfe2e1403776634e6c211354f8 05-Nov-2016 Wei Jia <wjia@google.com> NuPlayerDecoder: flush audio buffers when audio output format is changed.

Test: compiles
Bug: 32659046
Change-Id: I8e771b8ee22520698427854c1850d8ee7f828765
/frameworks/av/media/libmediaplayerservice/nuplayer/NuPlayerDecoder.cpp
d72ffc4416959d2c94838888c781468b2351716d 28-Oct-2016 Wei Jia <wjia@google.com> Merge "BatteryNotifier: attribute battery usage of video to correct uid."
f2ae3e19080938db8cbf29a963fd744a3964fcc2 28-Oct-2016 Wei Jia <wjia@google.com> BatteryNotifier: attribute battery usage of video to correct uid.

Test: manual check batterystats
Bug: 32361950
Change-Id: Id052220e87f6667ca908d5bf6be6164dc8c14c53
/frameworks/av/media/libmediaplayerservice/nuplayer/NuPlayerDecoder.cpp
e812b7c14d0455c36b2da647bbd5374c9a18bf14 21-Oct-2016 Robert Shih <robertshih@google.com> NuPlayerDecoder: initialize dropAccessUnit to true am: 59e9ca734f am: 7215694e2a
am: b93e8d777d

Change-Id: I50b0edde59158af59b0a03229a1f12195ad066b1
59e9ca734f4d33fa1698466cdb2b66ab4ea1b82b 20-Oct-2016 Robert Shih <robertshih@google.com> NuPlayerDecoder: initialize dropAccessUnit to true

`continue` in a do-while skips to the conditional test; initialize
dropAccessUnit to true such that the loop continues during a seamless
format change.

Bug: 32240909
Change-Id: I477820e03a417fe1968450fe783ea7183aeadfd9
/frameworks/av/media/libmediaplayerservice/nuplayer/NuPlayerDecoder.cpp
7e34bf5af26f8752d4786d3098740cdf51e2438f 22-Aug-2016 Wonsik Kim <wonsik@google.com> MediaCodec refactoring part 1-a: buffers become separate class

MediaCodecBuffer is meant to replace ABuffer and MediaBuffer in
communication between framework components. As the first step, replace
use of ABuffer in MediaCodec with MediaCodecBuffer, and adjust related
classes accordingly.

MediaCodec.getBuffer() and related APIs now returns MediaCodecBuffers;
thus change MediaCodec clients to use MediaCodecBuffer accordingly.

Test: manually tested for key use cases (Camera, YouTube and Play Movies)
Change-Id: Iba7ce131645e75ce5ddbf497fb793ab38b7f245b
/frameworks/av/media/libmediaplayerservice/nuplayer/NuPlayerDecoder.cpp
9fb815244cc33927e14ce0fe70539786a611daf9 14-Jul-2016 Lajos Molnar <lajos@google.com> stagefright: don't auto-drop temporal layers for unknown SVC streams

- SVC optimization requires knowin the number of layers which is
using custom signaling. Don't drop temporal layers without that information.

Also SVC optimization fixes:

- Play back all layers immediately after an IDR frame (previous logic
required leveling up one level at a time that only works for hierarchical
B frames)
- Track current max layer-ID during dropping so we can react to upward
changes in the allowed layers more quickly.
- Get up to 90% of display rate before dropping layers (up from 50%)

Bug: 27596987
Change-Id: Ia6c8363fc154c822a5b2a268e2f40678212a487c
/frameworks/av/media/libmediaplayerservice/nuplayer/NuPlayerDecoder.cpp
bbaa144657862e424ed6a199edbd36b5a93c93ad 08-Apr-2016 Praveen Chavan <pchavan@codeaurora.org> NuPlayer: adjust temporal-layers to achieve smooth play

For multi-layer-encoded content (with hierarchical referencing),
select a subset of layers based on playback speed.

Bug: 27596987
Change-Id: I824c699f3c2b80bb516c1b44493eda72239291ac
(cherry picked from commit 64ad0e0b2b5f992052d287e82ebd79f9f892dcbf)
/frameworks/av/media/libmediaplayerservice/nuplayer/NuPlayerDecoder.cpp
56097a8ecc31ec308a1caa38f92b69f99324eada 08-Jan-2016 Wei Jia <wjia@google.com> NuPlayerDecoder: fail gracefully when input data can't be held in allocated buffer.

Bug: 24145279
Change-Id: I6b99ee2dc63063557f4ee2c5856f7c848e969752
/frameworks/av/media/libmediaplayerservice/nuplayer/NuPlayerDecoder.cpp
674649bcb5d3e5fd6e527906c7b166f96d35ec16 25-Nov-2015 Wei Jia <wjia@google.com> Merge "NuPlayerDecoder: add synchronous call pause() to ensure decoder will not request or send out data."
am: f5ac18d2fd

* commit 'f5ac18d2fd86b1fe6d2f115d64d95117ed7f96f5':
NuPlayerDecoder: add synchronous call pause() to ensure decoder will not request or send out data.
3bc667014875aba35102941b3997d242c303aa0d 19-Nov-2015 Wei Jia <wjia@google.com> NuPlayerDecoder: add synchronous call pause() to ensure decoder will not request or send out data.

Bug: 25372978
Change-Id: Id66ab9b9961d5a3b9fb783ae73c27ed1c8054db8
/frameworks/av/media/libmediaplayerservice/nuplayer/NuPlayerDecoder.cpp
216f0177cbfa0d8e911d64fc17ccbb5100ad87b4 21-Aug-2015 Eric Laurent <elaurent@google.com> NuPlayerDecoder: report error in case of audio sink open error.

Bug: 21093153.
Change-Id: I77e03a620b43967991dcee9d6ca01f67c8b7a02e
(cherry picked from commit 15ce09dddf830d6a6ca097c5ec0a7ec7c35b6b3a)
/frameworks/av/media/libmediaplayerservice/nuplayer/NuPlayerDecoder.cpp
68845c14ebf2c7282800b1abffde38d8e9a57aab 21-Jul-2015 Ronghua Wu <ronghuawu@google.com> libmediaplayerservice: propagate caller pid to MediaCodec.

Bug: 22630317
Change-Id: I0337d74f4ef04bf96f2de83f33d98d0d7da47c12
/frameworks/av/media/libmediaplayerservice/nuplayer/NuPlayerDecoder.cpp
a81c6229638a4db56752dd77a6610e0f0971e877 11-Jul-2015 Lajos Molnar <lajos@google.com> nuplayer: use codec->setSurface when possible to avoid seeking

Bug: 22414719
Change-Id: I0442e12af960f86a0fc090b4a469c62ba638a1a0
/frameworks/av/media/libmediaplayerservice/nuplayer/NuPlayerDecoder.cpp
e1e5d7a3d3d4d6d644e6c731f977422e004140d5 20-May-2015 Praveen Chavan <pchavan@codeaurora.org> NuPlayer: Enhance dumpsys statistics

Account for dropped output-frames (rather than input-frames)
in percentage dropped frames.
Print mime and component name for each active track

Change-Id: I3491d336c696d8ed0fd1503b80afe1df47c787c8
/frameworks/av/media/libmediaplayerservice/nuplayer/NuPlayerDecoder.cpp
288da02b1f074f9f3c191f1838f135d4633b3d34 01-Jun-2015 Andy Hung <hunga@google.com> NuPlayer: Add audio deep buffer configuration

Disabled for video streams now.
Enabled by property media.stagefright.audio.deep 1

Bug: 21198655
Change-Id: I03f3b43091f950637d46779e2e74c1321b2cd268
/frameworks/av/media/libmediaplayerservice/nuplayer/NuPlayerDecoder.cpp
0a7989f5691f161fff97dd550eb602e44a6e6185 22-May-2015 Ronghua Wu <ronghuawu@google.com> Merge "libmediaplayerservice: try to open audio sink in offload mode in error." into mnc-dev
faeb0f291330134dc4468359a36e099aae508449 21-May-2015 Ronghua Wu <ronghuawu@google.com> libmediaplayerservice: try to open audio sink in offload mode in error.

Bug: 19061432
Bug: 21370108
Change-Id: Iaa757555ef37fd1ac87b6e2d5a9969bb58cc5ebc
/frameworks/av/media/libmediaplayerservice/nuplayer/NuPlayerDecoder.cpp
6301a5e94de3659b4e6e4910394861830f8ebfb7 13-May-2015 Wei Jia <wjia@google.com> mediaplayer: handle decoder error when NuPlayerDecoder gets a NULL buffer from MediaCodec.

MediaCodec could send out message of input buffer available right before it hits an error and clears its buffers.

Bug: 14433407
Change-Id: I32494f4cb2a8537fac12449fd68a74c021f5c9e1
/frameworks/av/media/libmediaplayerservice/nuplayer/NuPlayerDecoder.cpp
1de1e25cba872bd4c077c2e394f8ca9c70b65856 01-May-2015 Lajos Molnar <lajos@google.com> stagefright: remove NativeWindowWrapper

Now that Surface and SurfaceTextureClient are the same and Surface,
it does not add value.

Bug: 19489395
Change-Id: I016ecd1cf5cc51ce6244b6fa34ecd75f84e3db01
/frameworks/av/media/libmediaplayerservice/nuplayer/NuPlayerDecoder.cpp
8db8813d39e3c8b5fbd580dfc3062830744afd63 22-Apr-2015 Ronghua Wu <ronghuawu@google.com> DO NOT MERGE libmediaplayerservice: set priority and operating rate for the codec used by nuplayer.

Bug: 20481562
Change-Id: I9806414962352fbcda726f8274f1cd348c961de0
(cherry picked from commit f19f5d716b39a5d9dc1abdcd5a16a7aaf1b1ab8b)
/frameworks/av/media/libmediaplayerservice/nuplayer/NuPlayerDecoder.cpp
5abbd3dcbb0bb32a3d4b90dddbcf90458967eb6f 21-Apr-2015 Chong Zhang <chz@google.com> HLS: make disconnect faster to prevent ANR

disconnect HTTP connection when we absolutely won't resume

bug: 19890444
Change-Id: Idee36b48741f6f8eb1d65bca32156e9e18349c67
/frameworks/av/media/libmediaplayerservice/nuplayer/NuPlayerDecoder.cpp
3b032b3865fd93173aadca0591eeea32853206f9 18-Apr-2015 Chong Zhang <chz@google.com> NuPlayer: queue a deferred scan sources when flushing during scan

also refactor code to move scheduleRequestBuffers to decoder base.

bug: 20267388
Change-Id: I48f16adc6b4d4008f8fcda8b3b01c595ad199f8b
/frameworks/av/media/libmediaplayerservice/nuplayer/NuPlayerDecoder.cpp
43cc944ecdc1634dccd92a1aad559f0caa13b53c 15-Apr-2015 Chong Zhang <chz@google.com> fix NuPlayerDecoder discontinuity handling with async mode

bug: 20234224

Change-Id: I317b52b089f1e1432255100ef5f36322a231a399
/frameworks/av/media/libmediaplayerservice/nuplayer/NuPlayerDecoder.cpp
e6109e2f10b43c2cc2561c6fd6633b5f988bd7a9 11-Apr-2015 Lajos Molnar <lajos@google.com> mediaplayer: support async mode for widevine legacy mode

Bug: 14679336
Change-Id: Id224eb8c31ec148ca9a144758cc56ddbf5465f5c
/frameworks/av/media/libmediaplayerservice/nuplayer/NuPlayerDecoder.cpp
421f47ca9c2dcc78584b2bb609c3755483b55155 25-Mar-2015 Marco Nelissen <marcone@google.com> mediaplayer: use async mode in NuPlayer

Bug: 14679336
Change-Id: I5e471a6e13be82a375afc2718599f27cd0255bf5
/frameworks/av/media/libmediaplayerservice/nuplayer/NuPlayerDecoder.cpp
66704af4d82c2b6303609b29402641f861fdcb19 04-Mar-2015 Chong Zhang <chz@google.com> NuPlayer: play out pending frames on discontinuity

bug: 19567254

Change-Id: Iff689e1eea54283095068d68bcdff4c2674af554
/frameworks/av/media/libmediaplayerservice/nuplayer/NuPlayerDecoder.cpp
1d15ab58bf8239069ef343de6cb21aabf3ef7d78 05-Mar-2015 Lajos Molnar <lajos@google.com> media: switch to new AMessage handling

Bug: 19607784
Change-Id: I94cddcb81f671422ad4982a23dc4acfe57a9f1aa
/frameworks/av/media/libmediaplayerservice/nuplayer/NuPlayerDecoder.cpp
62ca0231787d5fe23ee95c482d15b8434add2427 04-Mar-2015 Robert Shih <robertshih@google.com> Revert "Fix NuPlayer::Decoder input buffer loss upon seamless format change"

This reverts commit c5eef08195a6f81c2ae8fe7d4c346f12b15944e5.

Change-Id: I49d817ed367aaa29a93e22135e9adf1e2ad253f1
/frameworks/av/media/libmediaplayerservice/nuplayer/NuPlayerDecoder.cpp
c5eef08195a6f81c2ae8fe7d4c346f12b15944e5 21-Feb-2015 Robert Shih <robertshih@google.com> Fix NuPlayer::Decoder input buffer loss upon seamless format change

Bug: 19462710
Change-Id: I30f2ab76785a524e95b404b8b18ddc862e9c414e
/frameworks/av/media/libmediaplayerservice/nuplayer/NuPlayerDecoder.cpp
7abbd4c954e26fb69235831e11090ad61cec7b94 30-Jan-2015 joakim johansson <joakim.c.johansson@sonymobile.com> Wrong format used in seamless check

The targetFormat that is sent to supportsSeamlessFormatChange
function corresponds to the data in mInputFormat but the format
provided is the output format, so the check will always return
false.

Use the input format instead.

Bug: 18821145
Change-Id: Iea3cbd59e423da5f2f813e98505b40dc341061b8
/frameworks/av/media/libmediaplayerservice/nuplayer/NuPlayerDecoder.cpp
474d7c778b63aa33dcf25a92e23a52c1c47f0ac1 05-Dec-2014 Wei Jia <wjia@google.com> NuPlayerRenderer: Update mAnchorMaxMediaUs when anchor time is changed to fix pause-seek-getCurrentPosition.

NuPlayerDecoder: Notify resume is done when EOS is reached.

GenericSource: add code to signal pre-roll for seek so that it will seek to the requested position,
not only I-frame. This code is disabled temporarily till we have a full solution to handle both
single seek and continous seek gracefully.

Bug: 18625723
Change-Id: I99a54d4d549e0d805e3abcc227fbf96c16405af0
/frameworks/av/media/libmediaplayerservice/nuplayer/NuPlayerDecoder.cpp
202bce11a7f66f27e6dbb6d154ddc123aa62513d 03-Dec-2014 Andy Hung <hunga@google.com> Fix NuPlayer assertion on failure to create AudioTrack

Under heavy media load or monkey/stress testing, more than
32 AudioTracks may be created or memory resources may be scarce.
Remove the assertion on failure to create AudioTrack
and signal MEDIA_ERROR.

Bug: 17319843
Change-Id: I5d4e200b5f50d800046851a33e035cdc6ff10075
/frameworks/av/media/libmediaplayerservice/nuplayer/NuPlayerDecoder.cpp
f8d717772f6d185cb07720cd5091df9b7d612e0b 27-Nov-2014 Chong Zhang <chz@google.com> notify seek complete upon first video output frame

Bug: 18541814
Change-Id: Ie4e0976885f26eb253460eab371cb181ea85f2db
/frameworks/av/media/libmediaplayerservice/nuplayer/NuPlayerDecoder.cpp
7137ec7e005a5a6e3c0edb91cfacf16a31f4bf6a 13-Nov-2014 Chong Zhang <chz@google.com> tunnel NuPlayer source and decoder input

Bug: 18342383

Change-Id: Ieff1cd3bad2b39d46f127ddd5d5139b919992461
/frameworks/av/media/libmediaplayerservice/nuplayer/NuPlayerDecoder.cpp
c6cfd70f24a11b946859485ce398a189c301a4e2 12-Nov-2014 Wei Jia <wjia@google.com> NuPlayer: tunnel decoder with renderer for data buffer passing.

Bug: 18342383

Change-Id: I182928007814c146c01a86196c4fda1d46e74ea4
/frameworks/av/media/libmediaplayerservice/nuplayer/NuPlayerDecoder.cpp
aaa527fbd790d30353d15608e54b5b94625b7b6d 03-Oct-2014 Chong Zhang <chz@google.com> Merge "send available codec buffer count with codec notification" into lmp-dev
6eff943c133903fcd9bdb7bb1812d7b383b090f8 03-Oct-2014 Wei Jia <wjia@google.com> Merge "NuPlayerDecoder: postpone input message processing when it's not dequeued." into lmp-dev
e47d44486f0a9f9b828b01d0fbaf84f5573f0aa2 30-Sep-2014 Chong Zhang <chz@google.com> send available codec buffer count with codec notification

Bug: 14679336
Change-Id: Id927c96a9a14dd6ecd72540f0037d5841aa32154
/frameworks/av/media/libmediaplayerservice/nuplayer/NuPlayerDecoder.cpp
2245fc625910e47d1ba3c339e205c21ab58a47ad 03-Oct-2014 Wei Jia <wjia@google.com> NuPlayerDecoder: postpone input message processing when it's not dequeued.

Bug: 17622642
Change-Id: I67608121bf70d6acb152e4aa64892b11bf167e8c
/frameworks/av/media/libmediaplayerservice/nuplayer/NuPlayerDecoder.cpp
2abde2c118a94f843a7450818c925d3f0b673cd3 30-Sep-2014 Andy Hung <hunga@google.com> NuPlayer: Fix flush mode decoder error handling

Explicitly handle each flush mode upon decoder error.
Do not clear out affected decoder immediately.
Alter logcat messages for better diagnostics.

Bug: 17638878
Bug: 17679341
Change-Id: I219796c04d65d7c4dd61c0d4f99f9f580241a68b
/frameworks/av/media/libmediaplayerservice/nuplayer/NuPlayerDecoder.cpp
c0d17e349901c3ccf6d15b7dcdf7fa30139c9750 25-Sep-2014 Andy Hung <hunga@google.com> Merge "NuPlayer: Fix decoder error handling" into lmp-dev
cf31f1eecf46d599428e115dfee8dd47b76c83fc 23-Sep-2014 Andy Hung <hunga@google.com> NuPlayer: Fix decoder error handling

Upon error, release MediaCodec after flushing data.
Report errors when they occur with ALOGE.
Fix onInputBufferFilled mInputBufferIsDequeued check.

Bug: 17423087
Bug: 17622642
Change-Id: I316601a19d5ec95cf8e14f5bc0418a05ec423041
/frameworks/av/media/libmediaplayerservice/nuplayer/NuPlayerDecoder.cpp
4923cee4fb3b29538d8f46bceeea7d5128242a71 24-Sep-2014 Wei Jia <wjia@google.com> NuPlayerDecoder: release MediaBuffers when decoder is deleted.

Bug: 17454455
Change-Id: Ic984c74826f87f5f3c27756a7e7d52295a529bed
/frameworks/av/media/libmediaplayerservice/nuplayer/NuPlayerDecoder.cpp
0079b331227fc1555d7c5305f33917a570d44890 22-Sep-2014 Wei Jia <wjia@google.com> Merge "MediaBuffer: ABuffer will release MediaBuffer when it's destructed." into lmp-dev
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/libmediaplayerservice/nuplayer/NuPlayerDecoder.cpp
dc43dfa1294470a4413c37e863ef3b621da8681f 08-May-2014 Lajos Molnar <lajos@google.com> mediaplayer: schedule video frames in VSYNC valleys

Bug: 14659809
Change-Id: Ic340ac61ad4778b493625c79c2cb4f747ff54ede
/frameworks/av/media/libmediaplayerservice/nuplayer/NuPlayerDecoder.cpp
14986f6cca08b9ab0407cc2d31f92bfb02b5cb8c 15-Sep-2014 Lajos Molnar <lajos@google.com> mediaplayer: handle surface dis/connection errors

Bug: 17408008
Change-Id: I752d5372086772b79b1300a2d3fabbc4985954a8
/frameworks/av/media/libmediaplayerservice/nuplayer/NuPlayerDecoder.cpp
b9b87fe9d9f3d91c05300a22920d7227a3f8eb83 10-Sep-2014 Lajos Molnar <lajos@google.com> mediaplayer: release MediaBuffer in stale input buffers

Bug: 17454455
Change-Id: If63a6e42f96851d6c10fdec11360f0dabae9bf50
/frameworks/av/media/libmediaplayerservice/nuplayer/NuPlayerDecoder.cpp
b86e68f834b7040518b99d1d0245d5f2e5cb9c86 01-Aug-2014 Chong Zhang <chz@google.com> Split CEA-608 Closed caption into 4 tracks CC1~CC4

Bug: 16463078

Change-Id: Ib3073090934232016e535fbb8fa56cdf9d7ab6eb
/frameworks/av/media/libmediaplayerservice/nuplayer/NuPlayerDecoder.cpp
c22c695660ed9edaba0d4cd7c0ab3a794216fe80 29-Aug-2014 Wei Jia <wjia@google.com> MediaCodec: set state to UNINITIALIZED when receiving fatal error.

NuPlayerDecoder: release MediaCodec when handling an error.

Bug: 16661923
Change-Id: I1b6fd7ee5cc1136b3f289135e5360cd3d98f9799
/frameworks/av/media/libmediaplayerservice/nuplayer/NuPlayerDecoder.cpp
87603c0dd1f4e62e52feffa8d6e960ad21f68893 21-Aug-2014 Lajos Molnar <lajos@google.com> NuPlayer: remember and resubmit CSDs after flush

Bug: 17118001
Change-Id: I09bbefd4c05de0db1c593e8d6d38859358a20ebb
/frameworks/av/media/libmediaplayerservice/nuplayer/NuPlayerDecoder.cpp
d1de9bb33a2f645fb9dc54e7fc69ca45304850a5 22-Aug-2014 Wei Jia <wjia@google.com> Merge "ACodec: handle errors related to native window." into lmp-dev
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/libmediaplayerservice/nuplayer/NuPlayerDecoder.cpp
9e2b7918eb5621b24bd54c922f630da45339de77 19-Aug-2014 Marco Nelissen <marcone@google.com> handle error during flush in MediaPlayer.reset()

If there was an error during the flush phase of a reset, then the
reset would never complete. We now make sure the MediaCodec moves
to the right state in this case, and that NuPlayer cleans up and
resumes the rest of the reset after a failed flush.

Bug: 16955082
Change-Id: Ied61136871a9fcdffcc80647fa2bba64a926ac2a
/frameworks/av/media/libmediaplayerservice/nuplayer/NuPlayerDecoder.cpp
81e50d0c782cc18eab4ef40ecd6c7f36df50fea5 24-Jul-2014 Wei Jia <wjia@google.com> Reset the value for Vector of pointers.

Bug: 16467066
Change-Id: I3674e07779a59f4d4fa639d066ed1988df89b3f5
/frameworks/av/media/libmediaplayerservice/nuplayer/NuPlayerDecoder.cpp
095248375e29adde961ec2a44989ecb3a6dda6a2 17-Jul-2014 Lajos Molnar <lajos@google.com> nuplayer: support widevine sources

- handle widevine:// scheme
- add separate looper for renderer (as it can block initial buffer
handling if all buffers are used)
- initiate secure codecs before source is started
- don't read secure buffers
- share ACodec's input buffers with Widevine source

on the decoder side

- keep track of mediabuffers released by widevine source
- keep track of dequeued input buffers (for safety)
- release mediabuffer when buffer is subsequently dequeued. (This
was hardcoded into OMXCodec to do this when buffer-empties message
was handled, but MediaCodec does not support such functionality.)

Bug: 15699665
Change-Id: I4a369443294e45c644be8b0257010e52db1d7c9b
/frameworks/av/media/libmediaplayerservice/nuplayer/NuPlayerDecoder.cpp
862f8455eaacc1ffb5d8911f0bc7ecc3cf7ec46c 27-Jun-2014 Chong Zhang <chz@google.com> handle emulation_prevention_three_bytes for AVC

bug: 15917805
Change-Id: I824fe7eea807f8faba6b149c31890b7a5df87825
/frameworks/av/media/libmediaplayerservice/nuplayer/NuPlayerDecoder.cpp
a7fa1d9530b6870f2c7850e3025d7db963661803 11-Jun-2014 Chong Zhang <chz@google.com> support for CEA-608 closed caption

Bug: 15470448

Change-Id: Ic6a527f5c35a8ee0a08a5b043336e4d193216083
/frameworks/av/media/libmediaplayerservice/nuplayer/NuPlayerDecoder.cpp
704e72658b1082264a26a83c50046da34f07d1a1 05-Jun-2014 Wei Jia <wjia@google.com> Added paused state to NuPlayerDecoder

This prevents decoder from requesting new buffer until the decoder
is resumed, and prevents processing a potential DISCONTINUITY while
the player is still flushing.

Bug: 13133027

Change-Id: I2f9fa9f00c8583aa6908809cb7c31ddde07cfaf0
/frameworks/av/media/libmediaplayerservice/nuplayer/NuPlayerDecoder.cpp
1cd139824b2e6832f239cd27d8962d3239053c02 18-Jan-2014 Lajos Molnar <lajos@google.com> NuPlayer: use MediaCodec instead of ACodec

Bug: 11785204
Change-Id: I1455bfc683469c7a69e565b179aceacbc5c459f5
/frameworks/av/media/libmediaplayerservice/nuplayer/NuPlayerDecoder.cpp
6d0a94ead4f6e62b8ca9b2b1d775ffcd0a7a7aab 24-Jan-2014 Robert Shih <robertshih@google.com> NuPlayer side support for seamless format switch.

Avoid reinstantiating decoder if seamless format switch is supported.

Change-Id: I2c2be08d6da90cc835ec747d04a76db2313dfc7c
/frameworks/av/media/libmediaplayerservice/nuplayer/NuPlayerDecoder.cpp
840667883fd09d44015716d79bc3ac4d60edc0f0 16-Aug-2011 Andreas Huber <andih@google.com> experimental support for fragmented mp4 playback in nuplayer

cherry picked from change 170999

Change-Id: I407775f0290154ad4961134839a15c9f296424c0
/frameworks/av/media/libmediaplayerservice/nuplayer/NuPlayerDecoder.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/libmediaplayerservice/nuplayer/NuPlayerDecoder.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/libmediaplayerservice/nuplayer/NuPlayerDecoder.cpp
e370bb62b89d2f2980f519392010ea08a24c558e 25-Apr-2012 Andreas Huber <andih@google.com> Bump up the max number of items in an AMessage, remove overly stringent

CHECK() limiting us to just audio/* or video/* tracks.

related-to-bug: 6399405
Change-Id: I9bdaf7e709665ecc22da8839c8b16c081dbf4535
/frameworks/av/media/libmediaplayerservice/nuplayer/NuPlayerDecoder.cpp
ed3e3e046840d5bf1ca84a8c0cc097425e89d6d6 26-Mar-2012 Andreas Huber <andih@google.com> Provisional support for secure decryption of media streams.

Change-Id: Ib3982a9c960bfdb0cb7e1b174440b141b194cfbe
/frameworks/av/media/libmediaplayerservice/nuplayer/NuPlayerDecoder.cpp
afed0e1fa37473a4cd30018577b560acc79d9a3f 21-Sep-2011 Andreas Huber <andih@google.com> Use NuPlayer for media playback everywhere

if media.stagefright.use-nuplayer is set to true.

Change-Id: Ibb217e7d7d5195b7feeea557554fe78e1585744c
/frameworks/av/media/libmediaplayerservice/nuplayer/NuPlayerDecoder.cpp
df712ea86e6350f7005a02ab0e1c60c28a343ed0 26-Feb-2012 Mathias Agopian <mathias@google.com> fix libgui header location

Change-Id: Iec71706cdd4f29c6904993648ce873e83ef9cafe
/frameworks/av/media/libmediaplayerservice/nuplayer/NuPlayerDecoder.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/libmediaplayerservice/nuplayer/NuPlayerDecoder.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/libmediaplayerservice/nuplayer/NuPlayerDecoder.cpp
00f4951088805442e86ff9c2a20ddad79fc2410a 11-May-2011 Andreas Huber <andih@google.com> The decoder wrapper is no longer needed. Also disable building old-style decoders.

Change-Id: Ie022f1a6dffe619c1b0385aa13f63e097282cfe4
/frameworks/av/media/libmediaplayerservice/nuplayer/NuPlayerDecoder.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/libmediaplayerservice/nuplayer/NuPlayerDecoder.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/libmediaplayerservice/nuplayer/NuPlayerDecoder.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/libmediaplayerservice/nuplayer/NuPlayerDecoder.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/libmediaplayerservice/nuplayer/NuPlayerDecoder.cpp