On 03/18/2014 07:11 AM, John Stebbins wrote:
> ---
> libavformat/movenc.c | 5 ++++-
> libavformat/movenc.h | 2 ++
> 2 files changed, 6 insertions(+), 1 deletion(-)
>
> diff --git a/libavformat/movenc.c b/libavformat/movenc.c
> index 2ae3475..0c688f6 100644
> --- a/libavformat/movenc.c
> +++ b/libavformat/movenc.c
> @@ -64,6 +64,7 @@ static const AVOption options[] = {
> { "min_frag_duration", "Minimum fragment duration",
> offsetof(MOVMuxContext, min_fragment_duration), AV_OPT_TYPE_INT, {.i64 = 0},
> 0, INT_MAX, AV_OPT_FLAG_ENCODING_PARAM},
> { "frag_size", "Maximum fragment size", offsetof(MOVMuxContext,
> max_fragment_size), AV_OPT_TYPE_INT, {.i64 = 0}, 0, INT_MAX,
> AV_OPT_FLAG_ENCODING_PARAM},
> { "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},
> + { "brand", "Override major brand", offsetof(MOVMuxContext,
> major_brand), AV_OPT_TYPE_STRING, {.str = NULL}, .flags =
> AV_OPT_FLAG_ENCODING_PARAM },
> { NULL },
> };
>
> @@ -2564,7 +2565,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 1b669e8..cd48981 100644
> --- a/libavformat/movenc.h
> +++ b/libavformat/movenc.h
> @@ -159,6 +159,8 @@ typedef struct MOVMuxContext {
> AVIOContext *mdat_buf;
>
> int64_t reserved_moov_pos;
> +
> + char * major_brand;
> } MOVMuxContext;
>
> #define FF_MOV_FLAG_RTP_HINT 1Any objections, more comments? Would it be possible to add this to libav 10? -- John GnuPG fingerprint: D0EC B3DB C372 D1F1 0B01 83F0 49F1 D7B2 60D4 D0F7
signature.asc
Description: OpenPGP digital signature
_______________________________________________ libav-devel mailing list [email protected] https://lists.libav.org/mailman/listinfo/libav-devel
