[FFmpeg-cvslog] movenc: Add support for writing language codes into ISML manifests

Jan Ekström git at videolan.org
Thu Sep 29 12:33:33 EEST 2016


ffmpeg | branch: master | Jan Ekström <jeebjp at gmail.com> | Tue Sep 27 01:10:22 2016 +0300| [cc725ebe484c7e0d8de44e5c3c2050dc894e5a4b] | committer: Josh de Kock

movenc: Add support for writing language codes into ISML manifests

Streaming servers appear to ignore all other language metadata.

Signed-off-by: Jan Ekström <jeebjp at gmail.com>
Signed-off-by: Josh de Kock <josh at itanimul.li>

> http://git.videolan.org/gitweb.cgi/ffmpeg.git/?a=commit;h=cc725ebe484c7e0d8de44e5c3c2050dc894e5a4b
---

 libavformat/movenc.c | 4 ++++
 1 file changed, 4 insertions(+)

diff --git a/libavformat/movenc.c b/libavformat/movenc.c
index 8992782..7de4580 100644
--- a/libavformat/movenc.c
+++ b/libavformat/movenc.c
@@ -3611,6 +3611,9 @@ static int mov_write_isml_manifest(AVIOContext *pb, MOVMuxContext *mov, AVFormat
         const char *type;
         int track_id = track->track_id;
 
+        AVStream *st = track->st;
+        AVDictionaryEntry *lang = av_dict_get(st->metadata, "language", NULL,0);
+
         if (track->par->codec_type == AVMEDIA_TYPE_VIDEO) {
             type = "video";
         } else if (track->par->codec_type == AVMEDIA_TYPE_AUDIO) {
@@ -3631,6 +3634,7 @@ static int mov_write_isml_manifest(AVIOContext *pb, MOVMuxContext *mov, AVFormat
                     manifest_bit_rate);
         param_write_int(pb, "systemBitrate", manifest_bit_rate);
         param_write_int(pb, "trackID", track_id);
+        param_write_string(pb, "systemLanguage", lang ? lang->value : "und");
         if (track->par->codec_type == AVMEDIA_TYPE_VIDEO) {
             if (track->par->codec_id == AV_CODEC_ID_H264) {
                 uint8_t *ptr;



More information about the ffmpeg-cvslog mailing list