Loading media/libstagefright/Utils.cpp +22 −0 Original line number Diff line number Diff line Loading @@ -794,6 +794,8 @@ static std::vector<std::pair<const char *, uint32_t>> int32Mappings { { "thumbnail-height", kKeyThumbnailHeight }, { "track-id", kKeyTrackID }, { "valid-samples", kKeyValidSamples }, { "dvb-component-tag", kKeyDvbComponentTag}, { "dvb-audio-description", kKeyDvbAudioDescription}, } }; Loading Loading @@ -1002,6 +1004,16 @@ status_t convertMetaDataToMessage( msg->setInt32("is-sync-frame", 1); } int32_t dvbComponentTag = 0; if (meta->findInt32(kKeyDvbComponentTag, &dvbComponentTag)) { msg->setInt32("dvb-component-tag", dvbComponentTag); } int32_t dvbAudioDescription = 0; if (meta->findInt32(kKeyDvbAudioDescription, &dvbAudioDescription)) { msg->setInt32("dvb-audio-description", dvbAudioDescription); } const char *lang; if (meta->findCString(kKeyMediaLanguage, &lang)) { msg->setString("language", lang); Loading Loading @@ -1788,6 +1800,16 @@ status_t convertMessageToMetaData(const sp<AMessage> &msg, sp<MetaData> &meta) { meta->setInt32(kKeyMaxBitRate, maxBitrate); } int32_t dvbComponentTag = 0; if (msg->findInt32("dvb-component-tag", &dvbComponentTag) && dvbComponentTag > 0) { meta->setInt32(kKeyDvbComponentTag, dvbComponentTag); } int32_t dvbAudioDescription = 0; if (msg->findInt32("dvb-audio-description", &dvbAudioDescription)) { meta->setInt32(kKeyDvbAudioDescription, dvbAudioDescription); } AString lang; if (msg->findString("language", &lang)) { meta->setCString(kKeyMediaLanguage, lang.c_str()); Loading media/libstagefright/include/media/stagefright/MetaDataBase.h +6 −0 Original line number Diff line number Diff line Loading @@ -277,6 +277,12 @@ enum { kKeyLastSampleIndexInChunk = 'lsic', //int64_t, index of last sample in a chunk. kKeySampleTimeBeforeAppend = 'lsba', // int64_t, timestamp of last sample of a track. // DVB component tag kKeyDvbComponentTag = 'copt', // int32_t, component tag for DVB video/audio/subtitle // DVB audio description kKeyDvbAudioDescription = 'addt', // bool (int32_t), DVB audio description only defined for // audio component }; enum { Loading Loading
media/libstagefright/Utils.cpp +22 −0 Original line number Diff line number Diff line Loading @@ -794,6 +794,8 @@ static std::vector<std::pair<const char *, uint32_t>> int32Mappings { { "thumbnail-height", kKeyThumbnailHeight }, { "track-id", kKeyTrackID }, { "valid-samples", kKeyValidSamples }, { "dvb-component-tag", kKeyDvbComponentTag}, { "dvb-audio-description", kKeyDvbAudioDescription}, } }; Loading Loading @@ -1002,6 +1004,16 @@ status_t convertMetaDataToMessage( msg->setInt32("is-sync-frame", 1); } int32_t dvbComponentTag = 0; if (meta->findInt32(kKeyDvbComponentTag, &dvbComponentTag)) { msg->setInt32("dvb-component-tag", dvbComponentTag); } int32_t dvbAudioDescription = 0; if (meta->findInt32(kKeyDvbAudioDescription, &dvbAudioDescription)) { msg->setInt32("dvb-audio-description", dvbAudioDescription); } const char *lang; if (meta->findCString(kKeyMediaLanguage, &lang)) { msg->setString("language", lang); Loading Loading @@ -1788,6 +1800,16 @@ status_t convertMessageToMetaData(const sp<AMessage> &msg, sp<MetaData> &meta) { meta->setInt32(kKeyMaxBitRate, maxBitrate); } int32_t dvbComponentTag = 0; if (msg->findInt32("dvb-component-tag", &dvbComponentTag) && dvbComponentTag > 0) { meta->setInt32(kKeyDvbComponentTag, dvbComponentTag); } int32_t dvbAudioDescription = 0; if (msg->findInt32("dvb-audio-description", &dvbAudioDescription)) { meta->setInt32(kKeyDvbAudioDescription, dvbAudioDescription); } AString lang; if (msg->findString("language", &lang)) { meta->setCString(kKeyMediaLanguage, lang.c_str()); Loading
media/libstagefright/include/media/stagefright/MetaDataBase.h +6 −0 Original line number Diff line number Diff line Loading @@ -277,6 +277,12 @@ enum { kKeyLastSampleIndexInChunk = 'lsic', //int64_t, index of last sample in a chunk. kKeySampleTimeBeforeAppend = 'lsba', // int64_t, timestamp of last sample of a track. // DVB component tag kKeyDvbComponentTag = 'copt', // int32_t, component tag for DVB video/audio/subtitle // DVB audio description kKeyDvbAudioDescription = 'addt', // bool (int32_t), DVB audio description only defined for // audio component }; enum { Loading