From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from ffbox0-bg.mplayerhq.hu (ffbox0-bg.ffmpeg.org [79.124.17.100]) by master.gitmailbox.com (Postfix) with ESMTP id C3FB2499B5 for ; Sun, 25 Feb 2024 01:59:51 +0000 (UTC) Received: from [127.0.1.1] (localhost [127.0.0.1]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTP id F06CD68C654; Sun, 25 Feb 2024 03:59:48 +0200 (EET) Received: from smtp35.i.mail.ru (smtp35.i.mail.ru [95.163.41.76]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id 5C1D868C3D2 for ; Sun, 25 Feb 2024 03:59:42 +0200 (EET) Received: by smtp35.i.mail.ru with esmtpa (envelope-from ) id 1re3no-00000003MaJ-34yI for ffmpeg-devel@ffmpeg.org; Sun, 25 Feb 2024 04:59:41 +0300 Message-ID: <0ddf4c39-e6fe-4b5f-aecf-529b10a7f06c@mail.ru> Date: Sun, 25 Feb 2024 11:59:37 +1000 MIME-Version: 1.0 User-Agent: Mozilla Thunderbird To: ffmpeg-devel@ffmpeg.org Content-Language: en-US X-Mailru-Src: smtp X-4EC0790: 10 X-7564579A: B8F34718100C35BD X-77F55803: 4F1203BC0FB41BD90B4B6FE9E606E49610CC26003E1EEE77FF7BB197BFD5889000894C459B0CD1B9D05BBF960A8E1755F0E2B32A78B13C0273B9D797149F4C70B8C4C2D75246CB934A43D3E7D3A7B3F6 X-7FA49CB5: FF5795518A3D127A4AD6D5ED66289B5278DA827A17800CE7FEAC828D2BF6EC3CEA1F7E6F0F101C67BD4B6F7A4D31EC0BCC500DACC3FED6E28638F802B75D45FF8AA50765F790063767500BC4578134A08638F802B75D45FF36EB9D2243A4F8B5A6FCA7DBDB1FC311F39EFFDF887939037866D6147AF826D800D1C850397BAF49140169CA4F5E4DCD2A80CD9EE37483C820879F7C8C5043D14489FFFB0AA5F4BFA417C69337E82CC2CC7F00164DA146DAFE8445B8C89999728AA50765F7900637712AAB6D9D366D8A389733CBF5DBD5E9C8A9BA7A39EFB766F5D81C698A659EA7CC7F00164DA146DA9985D098DBDEAEC8D23BF7408B3F9022F6B57BC7E6449061A352F6E88A58FB86F5D81C698A659EA73AA81AA40904B5D9A18204E546F3947C17119E5299B287EE2D242C3BD2E3F4C64AD6D5ED66289B523666184CF4C3C14F6136E347CC761E07725E5C173C3A84C32ECB75B566AFDDCCBA3038C0950A5D36B5C8C57E37DE458B330BD67F2E7D9AF16D1867E19FE14079C09775C1D3CA48CF17B107DEF921CE791DD303D21008E298D5E8D9A59859A8B6B372FE9A2E580EFC725E5C173C3A84C36174550A02D153F535872C767BF85DA2F004C90652538430E4A6367B16DE6309 X-C1DE0DAB: 0D63561A33F958A5BE3B6CCC79314E155002B1117B3ED69601325202D9171E45A13BD6A4B0E00B96823CB91A9FED034534781492E4B8EEADB30A456A8F293845C79554A2A72441328621D336A7BC284946AD531847A6065A535571D14F44ED41 X-C8649E89: 1C3962B70DF3F0ADE00A9FD3E00BEEDF3FED46C3ACD6F73ED3581295AF09D3DF87807E0823442EA2ED31085941D9CD0AF7F820E7B07EA4CF6D945FB94986157D85C7A0363798F9E2C31F37F8AAF4321E5E7152BFFF3F40DF110A92F5D16EB67FA653534C7294CACC998FBC1EEEF01BDBD5500BE42C79185EA3A96ED53B5832BC383C93C5AD2DA449913E6812662D5F2AC3039550F769F8798F143D39BEEEEE2FC3981EEBE9DB10F943082AE146A756F3 X-D57D3AED: 3ZO7eAau8CL7WIMRKs4sN3D3tLDjz0dLbV79QFUyzQ2Ujvy7cMT6pYYqY16iZVKkSc3dCLJ7zSJH7+u4VD18S7Vl4ZUrpaVfd2+vE6kuoey4m4VkSEu530nj6fImhcD4MUrOEAnl0W826KZ9Q+tr5ycPtXkTV4k65bRjmOUUP8cvGozZ33TWg5HZplvhhXbhDGzqmQDTd6OAevLeAnq3Ra9uf7zvY2zzsIhlcp/Y7m53TZgf2aB4JOg4gkr2biojhcsd5OwWmohwPHWF7wq4Rg== X-Mailru-Sender: 58FA1740AF0C9621328149A0E746777205E7189780B733F68BD48BD36611AD34C16CEABA53E660A4A0CDFA330AEAD29523B8B6364D89957A3DDE9B364B0DF289DD78749A30E7047613232A9A0118815C0D4ABDE8C577C2ED X-Mras: Ok Subject: [FFmpeg-devel] [PATCH] mov: parse track-based udta name tags X-BeenThere: ffmpeg-devel@ffmpeg.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: FFmpeg development discussions and patches List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , From: =?utf-8?b?0JLQvtC00Y/QvdC90LjQutC+0LIg0JAu0JIuIHZpYSBmZm1wZWctZGV2ZWw=?= Reply-To: FFmpeg development discussions and patches Cc: =?UTF-8?B?0JLQvtC00Y/QvdC90LjQutC+0LIg0JAu0JIu?= Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset="us-ascii"; Format="flowed" Errors-To: ffmpeg-devel-bounces@ffmpeg.org Sender: "ffmpeg-devel" Archived-At: List-Archive: List-Post: Signed-off-by: Aleksoid --- libavformat/mov.c | 15 +++++++++++++-- 1 file changed, 13 insertions(+), 2 deletions(-) diff --git a/libavformat/mov.c b/libavformat/mov.c index 1a1b104615..c7b6919433 100644 --- a/libavformat/mov.c +++ b/libavformat/mov.c @@ -301,6 +301,16 @@ static int mov_metadata_hmmt(MOVContext *c, AVIOContext *pb, unsigned len) return 0; } + +static void mov_set_metadata(MOVContext *c, const char *key, const char *str) +{ + if (c->trak_index >= 0) { + AVStream *st = c->fc->streams[c->fc->nb_streams-1]; + av_dict_set(&st->metadata, key, str, 0); + } else + av_dict_set(&c->fc->metadata, key, str, 0); +} + static int mov_read_udta_string(MOVContext *c, AVIOContext *pb, MOVAtom atom) { char tmp_key[AV_FOURCC_MAX_STRING_SIZE] = {0}; @@ -403,6 +413,7 @@ static int mov_read_udta_string(MOVContext *c, AVIOContext *pb, MOVAtom atom) case MKTAG(0xa9,'w','r','n'): key = "warning"; break; case MKTAG(0xa9,'w','r','t'): key = "composer"; break; case MKTAG(0xa9,'x','y','z'): key = "location"; break; + case MKTAG( 'n','a','m','e'): key = "title"; break; } retry: if (c->itunes_metadata && atom.size > 8) { @@ -530,10 +541,10 @@ retry: str[str_size] = 0; } c->fc->event_flags |= AVFMT_EVENT_FLAG_METADATA_UPDATED; - av_dict_set(&c->fc->metadata, key, str, 0); + mov_set_metadata(c, key, str); if (*language && strcmp(language, "und")) { snprintf(key2, sizeof(key2), "%s-%s", key, language); - av_dict_set(&c->fc->metadata, key2, str, 0); + mov_set_metadata(c, key2, str); } if (!strcmp(key, "encoder")) { int major, minor, micro; -- 2.43.0.windows.1 _______________________________________________ ffmpeg-devel mailing list ffmpeg-devel@ffmpeg.org https://ffmpeg.org/mailman/listinfo/ffmpeg-devel To unsubscribe, visit link above, or email ffmpeg-devel-request@ffmpeg.org with subject "unsubscribe".