@@ -722,16 +722,20 @@ static void mxf_write_identification(AVFormatContext *s)
{
MXFContext *mxf = s->priv_data;
AVIOContext *pb = s->pb;
- const char *company = "FFmpeg";
- const char *product = s->oformat != &ff_mxf_opatom_muxer ? "OP1a Muxer" : "OPAtom Muxer";
- const char *version;
+ AVDictionaryEntry *com_entry = av_dict_get(s->metadata, "company_name", NULL, 0);
+ AVDictionaryEntry *product_entry = av_dict_get(s->metadata, "product_name", NULL, 0);
+ AVDictionaryEntry *version_entry = av_dict_get(s->metadata, "product_version", NULL, 0);
+ const char *company = com_entry ? com_entry->value : "FFmpeg";
+ const char *product = product_entry ? product_entry->value : s->oformat != &ff_mxf_opatom_muxer ? "OP1a Muxer" : "OPAtom Muxer";
+ const char *version = NULL;
+ const char *product_version = version_entry ? version_entry->value : AV_STRINGIFY(LIBAVFORMAT_VERSION);
int length;
mxf_write_metadata_key(pb, 0x013000);
PRINT_KEY(s, "identification key", pb->buf_ptr - 16);
version = s->flags & AVFMT_FLAG_BITEXACT ?
- "0.0.0" : AV_STRINGIFY(LIBAVFORMAT_VERSION);
+ "0.0.0" : product_version;
length = 100 +mxf_utf16_local_tag_length(company) +
mxf_utf16_local_tag_length(product) +
mxf_utf16_local_tag_length(version);
@@ -1 +1 @@
-68f0fa62b6a676894afbbe4c34ebf70b
+84e289a83797e793bfa0d3a31f94ac6c
@@ -1 +1 @@
-f6760a9e710ba478bc3949f3e5c9b34a
+e7c41639b79ac54c4df05475fb0eea66
@@ -1 +1 @@
-73a891041b2fc836a893ffb49fff4fff
+be4c1b76138c855ac3e2d2579cbecc17
@@ -1 +1 @@
-1255faf854223a74d707553121e5eca3
+8f2360104655971dc5fb68f98eda1b84