From 59982857db2f53a41abed6f6977ba607175823a5 Mon Sep 17 00:00:00 2001 From: Mengjie Xie Date: Mon, 14 Oct 2019 15:12:48 +0800 Subject: [PATCH] Add meta data extensions to support APE playback To support APE playback, our APE decoder requires 2 parameters "first_byte" and "curr_frame" to decode APE frame. Bug: 143118093 Test: We test APE playback with our extractor and decoder and it can work normally when it seeks during APE playback. Change-Id: I47b83252187206a1660b63fe68396997869546c8 --- media/libstagefright/MediaTrack.cpp | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/media/libstagefright/MediaTrack.cpp b/media/libstagefright/MediaTrack.cpp index 89c9b25668..24ba38af87 100644 --- a/media/libstagefright/MediaTrack.cpp +++ b/media/libstagefright/MediaTrack.cpp @@ -183,6 +183,11 @@ status_t MediaTrackCUnwrapper::read(MediaBufferBase **buffer, const ReadOptions meta.setData(kKeyAudioPresentationInfo, MetaDataBase::Type::TYPE_NONE, valbuf->data(), valbuf->size()); } + if (format->mFormat->findBuffer("csd-0", &valbuf)) { + meta.setData(kKeyOpaqueCSD0, + MetaDataBase::Type::TYPE_NONE, valbuf->data(), valbuf->size()); + } + } else { *buffer = nullptr; }