diff options
author | Michael Niedermayer <michaelni@gmx.at> | 2014-03-23 03:22:20 +0100 |
---|---|---|
committer | Michael Niedermayer <michaelni@gmx.at> | 2014-03-23 03:22:20 +0100 |
commit | 802e5fc8f811fb0e1f23d3e12841d3134d67202e (patch) | |
tree | 65e9b0550047155ed3a1e0069b8c7f0953ceb5a9 | |
parent | fc567ac49e17151f00f31b59030cd10f952612ef (diff) | |
parent | 1e9db41e2a2166be5671b088ef4ad06a40af459f (diff) | |
download | ffmpeg-802e5fc8f811fb0e1f23d3e12841d3134d67202e.tar.gz |
Merge commit '1e9db41e2a2166be5671b088ef4ad06a40af459f'
* commit '1e9db41e2a2166be5671b088ef4ad06a40af459f':
movenc: Allow override of major brand in ftyp atom
Conflicts:
libavformat/movenc.c
Merged-by: Michael Niedermayer <michaelni@gmx.at>
-rw-r--r-- | libavformat/movenc.c | 5 | ||||
-rw-r--r-- | libavformat/movenc.h | 2 |
2 files changed, 6 insertions, 1 deletions
diff --git a/libavformat/movenc.c b/libavformat/movenc.c index 899fdb6a09..ce90cdb1e0 100644 --- a/libavformat/movenc.c +++ b/libavformat/movenc.c @@ -67,6 +67,7 @@ static const AVOption options[] = { { "ism_lookahead", "Number of lookahead entries for ISM files", offsetof(MOVMuxContext, ism_lookahead), AV_OPT_TYPE_INT, {.i64 = 0}, 0, INT_MAX, AV_OPT_FLAG_ENCODING_PARAM}, { "use_editlist", "use edit list", offsetof(MOVMuxContext, use_editlist), AV_OPT_TYPE_INT, {.i64 = -1}, -1, 1, AV_OPT_FLAG_ENCODING_PARAM}, { "video_track_timescale", "set timescale of all video tracks", offsetof(MOVMuxContext, video_track_timescale), AV_OPT_TYPE_INT, {.i64 = 0}, 0, INT_MAX, AV_OPT_FLAG_ENCODING_PARAM}, + { "brand", "Override major brand", offsetof(MOVMuxContext, major_brand), AV_OPT_TYPE_STRING, {.str = NULL}, .flags = AV_OPT_FLAG_ENCODING_PARAM }, { NULL }, }; @@ -2963,7 +2964,9 @@ static int mov_write_ftyp_tag(AVIOContext *pb, AVFormatContext *s) avio_wb32(pb, 0); /* size */ ffio_wfourcc(pb, "ftyp"); - if (mov->mode == MODE_3GP) { + if (mov->major_brand && strlen(mov->major_brand) >= 4) + ffio_wfourcc(pb, mov->major_brand); + else if (mov->mode == MODE_3GP) { ffio_wfourcc(pb, has_h264 ? "3gp6" : "3gp4"); minor = has_h264 ? 0x100 : 0x200; } else if (mov->mode & MODE_3G2) { diff --git a/libavformat/movenc.h b/libavformat/movenc.h index 81b2613230..fce2d3c932 100644 --- a/libavformat/movenc.h +++ b/libavformat/movenc.h @@ -174,6 +174,8 @@ typedef struct MOVMuxContext { int reserved_moov_size; ///< 0 for disabled, -1 for automatic, size otherwise int64_t reserved_moov_pos; + + char *major_brand; } MOVMuxContext; #define FF_MOV_FLAG_RTP_HINT 1 |