8a21c0191f974a0b9cbd5818052e2655e0aaa306 |
|
26-Dec-2016 |
Pawin Vongmasa <pawin@google.com> |
Modify ACodec to allow using Treble. ACodec will connect to the Treble version of Omx if the property "debug.treble_omx" is set to true ("1", "y", "yes", "true" or "on"). Also, fix some bugs found so far. Test: Compiles Bug: 31399200 Change-Id: I52b27b5f99bc1d6797d3b83b8be794ed2de9956a
/frameworks/av/media/libstagefright/BufferImpl.cpp
|
a53d6553fce1818bdf87833f93633c93ad1b5915 |
|
20-Jan-2017 |
Jeff Tinker <jtinker@google.com> |
Implement client code to use Drm and Crypto HALs This change adds DrmHal & CryptoHal classes that connect to the Treble HAL interfaces for drm. These classes mirror the existing Drm and Crypto classes that connect to the DrmPlugin and CryptoPlugin interfaces. Having both allows mediadrmserver to run in either mode while the HAL is stabilized. The shared memory interfaces between mediaserver's ACodecBufferChannel and ICrypto had to be reworked to use the Treble HALs. Specifically, the shared memory path for returning decrypted buffers in the non-secure case had to become separate instead of piggy-backing on the source shared memory buffer. A separate shared memory destination buffer is now allocated on the buffer channel. An abstraction for a decrypt destination buffer was also introduced to clarify ICrypto's decrypt method. Tests: Playback using Play Movies and ExoPlayer works on angler with and without the treble hal enabled. bug: 32815560 Change-Id: I5a3dc84f99902eb8cf8eabab9ad074d307744950
/frameworks/av/media/libstagefright/BufferImpl.cpp
|
ad60a0f6cd9012507f8086fe741236d12d280ef3 |
|
10-Nov-2016 |
Wonsik Kim <wonsik@google.com> |
stagefright: reuse buffers instead of cloning In buffer array mode, the buffer reference is kept in clients of MediaCodec, so allocating new buffer for new input/output does not work in that case. Bug: 32577275 Bug: 32579231 Test: use screenrecord and investigate the output file. Test: cts-tradefed run cts-dev -m CtsMediaTestCases -t android.media.cts.EncodeDecodeTest Change-Id: I26d89f6b5735094062b8a2027bcab4754576d574
/frameworks/av/media/libstagefright/BufferImpl.cpp
|
fd44d8e2f2d37184f7add67125657f3fbfb5a085 |
|
20-Oct-2016 |
Wonsik Kim <wonsik@google.com> |
MediaCodec refactoring part 1-c: buffer ownership - Buffers are (roughly) owned by themselves. - As a corollary, remove output format change related events and replace by inspecting formats associated with each buffers. Bug: 32133435 Test: gts-tradefed run gts -m GtsExoPlayerTestCases Test: (manual) Run Play Movies app to play a secure content. Change-Id: I6b57da61c2d71acd0d5be4281de823ba1c95b72f
/frameworks/av/media/libstagefright/BufferImpl.cpp
|
4811923e80a8abefa278307ebf8cc9b0294ba67f |
|
13-Oct-2016 |
Wonsik Kim <wonsik@google.com> |
MediaCodec refactoring part 1-b: secure buffers - Define SecureBuffer to encapsulate secure buffers containing decrypted data. - ACodec and MediaCodec use SecureBuffer to communicate between themselves. Bug: 32133435 Test: Play an encrypted content in Play Movies Change-Id: Ic70f7f78aad15bd91ab8ccd31c340bc7964ab1b3
/frameworks/av/media/libstagefright/BufferImpl.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/libstagefright/BufferImpl.cpp
|