Loading include/media/stagefright/MetaData.h +3 −0 Original line number Diff line number Diff line Loading @@ -176,6 +176,9 @@ enum { kKeyTrackIsDefault = 'dflt', // bool (int32_t) // Similar to MediaFormat.KEY_IS_FORCED_SUBTITLE but pertains to av tracks as well. kKeyTrackIsForced = 'frcd', // bool (int32_t) // H264 supplemental enhancement information offsets/sizes kKeySEI = 'sei ', // raw data }; enum { Loading media/libmediaplayerservice/nuplayer/GenericSource.cpp +8 −0 Original line number Diff line number Diff line Loading @@ -1400,6 +1400,14 @@ sp<ABuffer> NuPlayer::GenericSource::mediaBufferToABuffer( meta->setInt32("trackIndex", mSubtitleTrack.mIndex); } uint32_t dataType; // unused const void *seiData; size_t seiLength; if (mb->meta_data()->findData(kKeySEI, &dataType, &seiData, &seiLength)) { sp<ABuffer> sei = ABuffer::CreateAsCopy(seiData, seiLength);; meta->setBuffer("sei", sei); } if (actualTimeUs) { *actualTimeUs = timeUs; } Loading media/libstagefright/mpeg2ts/AnotherPacketSource.cpp +5 −0 Original line number Diff line number Diff line Loading @@ -211,6 +211,11 @@ status_t AnotherPacketSource::read( mediaBuffer->meta_data()->setInt32(kKeyIsSyncFrame, isSync); } sp<ABuffer> sei; if (buffer->meta()->findBuffer("sei", &sei) && sei != NULL) { mediaBuffer->meta_data()->setData(kKeySEI, 0, sei->data(), sei->size()); } *out = mediaBuffer; return OK; } Loading Loading
include/media/stagefright/MetaData.h +3 −0 Original line number Diff line number Diff line Loading @@ -176,6 +176,9 @@ enum { kKeyTrackIsDefault = 'dflt', // bool (int32_t) // Similar to MediaFormat.KEY_IS_FORCED_SUBTITLE but pertains to av tracks as well. kKeyTrackIsForced = 'frcd', // bool (int32_t) // H264 supplemental enhancement information offsets/sizes kKeySEI = 'sei ', // raw data }; enum { Loading
media/libmediaplayerservice/nuplayer/GenericSource.cpp +8 −0 Original line number Diff line number Diff line Loading @@ -1400,6 +1400,14 @@ sp<ABuffer> NuPlayer::GenericSource::mediaBufferToABuffer( meta->setInt32("trackIndex", mSubtitleTrack.mIndex); } uint32_t dataType; // unused const void *seiData; size_t seiLength; if (mb->meta_data()->findData(kKeySEI, &dataType, &seiData, &seiLength)) { sp<ABuffer> sei = ABuffer::CreateAsCopy(seiData, seiLength);; meta->setBuffer("sei", sei); } if (actualTimeUs) { *actualTimeUs = timeUs; } Loading
media/libstagefright/mpeg2ts/AnotherPacketSource.cpp +5 −0 Original line number Diff line number Diff line Loading @@ -211,6 +211,11 @@ status_t AnotherPacketSource::read( mediaBuffer->meta_data()->setInt32(kKeyIsSyncFrame, isSync); } sp<ABuffer> sei; if (buffer->meta()->findBuffer("sei", &sei) && sei != NULL) { mediaBuffer->meta_data()->setData(kKeySEI, 0, sei->data(), sei->size()); } *out = mediaBuffer; return OK; } Loading