From patchwork Mon Sep 19 13:25:40 2016 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: erkki.seppala.ext@nokia.com X-Patchwork-Id: 646 Delivered-To: ffmpegpatchwork@gmail.com Received: by 10.103.140.134 with SMTP id o128csp1001306vsd; Mon, 19 Sep 2016 06:29:13 -0700 (PDT) X-Received: by 10.194.184.78 with SMTP id es14mr23475001wjc.85.1474291753225; Mon, 19 Sep 2016 06:29:13 -0700 (PDT) Return-Path: Received: from ffbox0-bg.mplayerhq.hu (ffbox0-bg.ffmpeg.org. [79.124.17.100]) by mx.google.com with ESMTP id k185si21176150wmk.31.2016.09.19.06.29.03; Mon, 19 Sep 2016 06:29:13 -0700 (PDT) Received-SPF: pass (google.com: domain of ffmpeg-devel-bounces@ffmpeg.org designates 79.124.17.100 as permitted sender) client-ip=79.124.17.100; Authentication-Results: mx.google.com; dkim=neutral (body hash did not verify) header.i=@nokia.onmicrosoft.com; spf=pass (google.com: domain of ffmpeg-devel-bounces@ffmpeg.org designates 79.124.17.100 as permitted sender) smtp.mailfrom=ffmpeg-devel-bounces@ffmpeg.org; dmarc=fail (p=NONE dis=NONE) header.from=nokia.com Received: from [127.0.1.1] (localhost [127.0.0.1]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTP id 022F768A098; Mon, 19 Sep 2016 16:26:09 +0300 (EEST) X-Original-To: ffmpeg-devel@ffmpeg.org Delivered-To: ffmpeg-devel@ffmpeg.org Received: from EUR02-VE1-obe.outbound.protection.outlook.com (mail-eopbgr20110.outbound.protection.outlook.com [40.107.2.110]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id 3CBD5689FE9 for ; Mon, 19 Sep 2016 16:26:02 +0300 (EEST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=nokia.onmicrosoft.com; s=selector1-nokia-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version; bh=UXxQiyJZOHdFGcineA+23VrFzNP4wonZ/alNs3a4C1E=; b=lGG5fDfmiC+ug2ULiI3peHLpZ7eEuAoXVJSxixwJ29RiQEivzranT2dT8z1YeCy/jErjIdm7Jkk1BIB8mokXBZODGWaTbMZMqBL9cXd2I+NadbeLhs4H7KFktg1I02hxPQFrOBB73HFuHq/qPcFxu8o7Q0I/MZAwI3gIC8HaUcI= Authentication-Results: spf=none (sender IP is ) smtp.mailfrom=erkki.seppala.ext@nokia.com; Received: from erkkise-laptop.vincit.intranet (131.228.2.24) by DB6PR0701MB2534.eurprd07.prod.outlook.com (10.168.76.22) with Microsoft SMTP Server (version=TLS1_0, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA_P384) id 15.1.629.8; Mon, 19 Sep 2016 13:26:15 +0000 Received: by erkkise-laptop.vincit.intranet (Postfix, from userid 1000) id E1BB74F0F5D; Mon, 19 Sep 2016 16:25:48 +0300 (EEST) From: =?UTF-8?q?Erkki=20Sepp=C3=A4l=C3=A4?= To: Date: Mon, 19 Sep 2016 16:25:40 +0300 Message-ID: <1474291548-17810-18-git-send-email-erkki.seppala.ext@nokia.com> X-Mailer: git-send-email 2.7.4 In-Reply-To: <1474291548-17810-1-git-send-email-erkki.seppala.ext@nokia.com> References: <1471943019-14136-1-git-send-email-erkki.seppala.ext@nokia.com> <1474291548-17810-1-git-send-email-erkki.seppala.ext@nokia.com> MIME-Version: 1.0 X-Originating-IP: [131.228.2.24] X-ClientProxiedBy: BN6PR15CA0018.namprd15.prod.outlook.com (10.172.204.156) To DB6PR0701MB2534.eurprd07.prod.outlook.com (10.168.76.22) X-MS-Office365-Filtering-Correlation-Id: 2815f90d-8783-4a5d-9900-08d3e090887c X-Microsoft-Exchange-Diagnostics: 1; DB6PR0701MB2534; 2:zlO5MCJh3GfQFLL9h6gsHXzoNrg13nc/9WmQZW3J9pDftKsK22TVzNJ79cWr0QOzgG6N7p+D6KcS4Xk2Kuzs1VgdPVOw9I6MuqPE2jpWlPmtKF/UJgNjYUM5cmTJ6Ig1MZ2TN6+hhNqzHqpAgykXnskMIn0DlUDfZK592U8+YH1oBlqLR4U7k0b9YSMq8gKI; 3:zWNhAoY+fG9NnVl6sGcX28kAYxHlYaVEmy/7wcxHxWTjXLcDK/CwaGYJVcvblAeD8wCWTuMSB4sTa39nP1SyTHVIv49DwG7+1H5d1o2a01C2FtyIUpH9XHbFipxF+pHr X-Microsoft-Antispam: UriScan:;BCL:0;PCL:0;RULEID:;SRVR:DB6PR0701MB2534; X-Microsoft-Exchange-Diagnostics: 1; DB6PR0701MB2534; 25:rA8jQmoKNvPLBBMwS51LXty3v4s/Qyet1pLo7wqZB4/I8Zwz8rwISmsaRrOIklrNheWB7S1ROwJQuKoUlZ7wNvI3onJPfgtNXI2kSIJX5CbmRhluFG7t4lOWuRP4JadZ+expGXs1njxtoyKExoW4XowEUYDYbtOZb/9D4Q+Fd0Y6SyOxRW2C9EuSK/ki0NoT2LxRKVhf7iE/hXNDfjA66x1Gs7psva4x8Tj6MyFKgESeKSNnCuAcPz6uusKEnTTcbnHHUvxhlqwP98CsoGSDMqdY3Y0tx0IO7YwW9h4HJSPSHNS7twd4xi6UbGpH+TPtWpqaQumJppMeR4ECMuaY/wahbRIja+tXze4r0UkJK4lASB/MO3me7G+SLFa2uz22F6iWwYNQbjvcTQWA4r6gjp+ZJnrAlGYFqZgL4LQ9BpZJZh+/YpoUbuj3lx3fumu/pFu2KCLXElNbxWAi/GcTWLvK+i9Vib+BQveNrC8P19D7ozgUKTt4jeP2iDwnxhsKKzPRf9fiGgMUFhtAvUx5pN5VMLKhE3RMpccU1sdaQVbcVdYbQMHHPY9xCgvgEJ8kl6Ao5fswTcHxdthI8/q32yhhZcBwa04S37vDOQQSlKxF/PYAkI2s11DFkIXHjSd7+sRGNxjpHTkvgwS6OD70nl7kyl8XZ8uxhmMzAO/3lSDS5eDLXw40lslkuTTCWSfr; 31:qYHT5EhI7Xxjr6FFUc9KbpDyBr6saj3nHwq/z8+pVmRt7Uqi7D4Y7gk8HYAGY+N2jX48TLVGqHithrVPzg8dB9gEVJ0dFPKaRET6n362cmuN83xRbMahgnqdA7xxnNWOViK71dBmAKhqNwS/66rtvmQrUZaSRvtsxq/pLcIh4Wo/dNAHx5UXBnY9OmM5itlY6EgR0gFM2kYLlgsqFegDCi1QrjoJYA29GtgbVnKn7u8= X-Microsoft-Exchange-Diagnostics: 1; DB6PR0701MB2534; 20:o1A9x4GBv84UePpZ5tZxd7TnY0k5n39kUiIM5GsV0xYQuLBlRNNGl0XdJ8KCzmcnGEWFUgCkeG1wc/RX12AhpJInyFyTVfc07xRaLFurZwxT0r7c7FB/HwdmAMatMD8uvjrBaRtPZHm2yykkHWifBk0i3PVbM56OnH4eoZI0DvWPuqhOUGbV+ZGMVZ+Q7FGGcKgvfKAdoHLV7Fd5nZD4AHdnmYf1qNx40jlbnLMqe6O2eghqU2mGV/gpk9QLWxKRNgld0+ux3h2qeoZ37X+XfYl/0fjsgvzQ8ht3fIZN3FSAA4ySJiy4BDNcGJdt+0Z9at/6+WZ/l9AQ/pgRyaWwwFZx0Po7Tu5RkEqEC/bR4KPtTmtrGsbnikZzZ/Mzb+AjX5iT5fQ5eP5tX8x8INHvSVaQplvM2mIu63C5LV6Z502eI7GXqTfCZGXEIWobLpC+uUcwwIyDCjOrEbgP2uhG/aiHe/3GlZTaJDfXI+VtmVlUmN/ZymvqEJ5fstv3Utz3 X-Microsoft-Antispam-PRVS: X-Exchange-Antispam-Report-Test: UriScan:(82608151540597); X-Exchange-Antispam-Report-CFA-Test: BCL:0; PCL:0; RULEID:(6040176)(601004)(2401047)(8121501046)(5005006)(3002001)(10201501046)(6055026); SRVR:DB6PR0701MB2534; BCL:0; PCL:0; RULEID:; SRVR:DB6PR0701MB2534; X-Microsoft-Exchange-Diagnostics: 1; DB6PR0701MB2534; 4:gvfbhu61BHG9o/0P2jj4QPwIAGBxUiipFVwfUgEdZ0zMPu0BsDqowpn4zFARLqohbajIDTaXVBDMDugBnA/ZkB1qG66ThMB7EV44IYcfuackMyQfNTNXXj1zr1i5dlhI55kHmihMdy7LUTbI48yF/dR3qZPiSVF79dNlQSZkjSSHzrW52YWnIUlY5wDk6JdVxMViLBWoxq4YZvgWMssOfrkaQCBn8wIja4tMeu8DtlN02t03/mZkArmk8988/g6g810VihEFmLcpZLU0E0d5LKzKT/pm639t2YArMqjW7AlXLUVkoTahRAwSQlfqr1+oBnI8d3bAr0WPAFhomulQtV4d+X1W7cf+y9OSrLcg8DlfwrXOS/Ljqdj5yBh8qg6u9eDuFpEbS4w/L3ZZBP0E655uRupz+bhqNjMdoXhVrCFm61cYHTLxlzDybqXjrA4F8RcKpAH8NKV1P5929/lDvg== X-Forefront-PRVS: 0070A8666B X-Forefront-Antispam-Report: SFV:NSPM; SFS:(10019020)(4630300001)(6009001)(7916002)(189002)(199003)(4326007)(122856001)(5660300001)(4001430100002)(450100001)(46386002)(66066001)(92566002)(2950100001)(52956003)(47776003)(23676002)(5820100001)(2906002)(110136003)(86362001)(68736007)(50466002)(106356001)(107886002)(105586002)(3846002)(42186005)(50986999)(90966002)(305945005)(76176999)(19580395003)(189998001)(7736002)(19580405001)(2870700001)(7846002)(2351001)(229853001)(6116002)(45336002)(101416001)(50226002)(586003)(33646002)(36756003)(81166006)(81156014)(97736004)(8676002); DIR:OUT; SFP:1102; SCL:1; SRVR:DB6PR0701MB2534; H:erkkise-laptop.vincit.intranet; FPR:; SPF:None; PTR:InfoNoRecords; MX:1; A:1; LANG:en; Received-SPF: None (protection.outlook.com: nokia.com does not designate permitted sender hosts) X-Microsoft-Exchange-Diagnostics: =?utf-8?B?MTtEQjZQUjA3MDFNQjI1MzQ7MjM6VUxYcVNJaFVFb1J6QUpXWVFRU2MxSnFz?= =?utf-8?B?VmZlN1hvWFRQcHZwSnQ1Z0N6NG01a2czYW1vVHM3TWtSSUFYUHlRYnBuMTlq?= =?utf-8?B?RUpCbFU5UGFCazl0ajE3dE1kWHRrSDVOWk5nQStJcE51NlVwZWxtT0JuZlgx?= =?utf-8?B?YjMycG9JVkZSWC9UUzRkMlpUc3NvWEx6Z1NDVjRJRmp5ZHBiSG9YNTI4anJ3?= =?utf-8?B?amFlWXk1R1ZHdGlBSk5ENjdKbHYrWU5adWYwTkU4K2RLanJYbjU0Y244a0xz?= =?utf-8?B?bGVDZXBjTHpmcUQxQVJGU1hZRjJremY3WExXNXRUUVFoTnhXa2VpOENNNWZD?= =?utf-8?B?a2xCOHA0dHlKUjh2ckM4bTBBdFE4YWlrUXRURXg0L2ZuaHYvcy96aXgvVHln?= =?utf-8?B?ZWhscVZuaHZJZVYzcmF1WHlZMGFGUW95UG5kY1Yvell5cis0SEovelBNcWhW?= =?utf-8?B?Ty9Oa0s0aytOZXZSMk9nUkVBUDZ4RFphT1JQY2k3UDRLRnpCZUg3azNsNUhK?= =?utf-8?B?bWpOL0VtcEdsUVhvZ0VOWXNZN2pjWG1WUlZUYlRlb1ZzdVNZWW9ndHduak5P?= =?utf-8?B?MVRwNjRPNnpGT0doZlZWSTZXc3JzZGh3M0YySStLenFvZldHSjlLcnBoeEV2?= =?utf-8?B?VlExMllFQS9yL0wyclFJSDA2eG9HT21tR1NqWG94VWhMaUxlSnduMVBUNUpm?= =?utf-8?B?OG8wbnhwWDlxdzRhV2prZ0NzOFdMYmx5c3FLazRJUjc4Si85ZG5vZUxCbTlQ?= =?utf-8?B?NXNvUEd1MDFJbjJXbW9ETEhlR3pvNVVpZGl5ajdQdDRlbzRVRjBwN29BeGt3?= =?utf-8?B?eGFlTWhlZDVqM3p1ZFU1OGhlSmdtS0hteDZUZmY5dStWZjNuM0lnS0tERHds?= =?utf-8?B?d3hHT0lnRHlZUDRmRWJ3K0o5ak5ER3Zma2h4cWU1dFB3d29MU1NKckpib2tv?= =?utf-8?B?TXlPTDRiaDZyMXhQcEhFL1MxTWRna2NuWTZwODhrVHpmSjNaVXZtUnN2bG9p?= =?utf-8?B?MGZmckIxSDhhMW1kakd0VXU3TE9MajgrUitCcFNkRmVPbS9qdzh1MDR1WnR2?= =?utf-8?B?U2VjNWc3SkYyMzU4YUxxWFFPL21ycVNqL1owSjJuSnZxSHVWc0ZkVkdTNE96?= =?utf-8?B?b3hHZ3ljT0hiRXI5aElQWDY1Ym15WVgvbllVQzVrTG5EeitaMGp4bGxGVnBj?= =?utf-8?B?ZnZuMWFQQUhCYS9HN3dtNHZmRlFvQVZTdmZxK2xtUTQ1WHFyanNtU0prMmt1?= =?utf-8?B?cVc4LytWYkxldW5ZTHBqUVJITlFjcm83U1c0TGNzYlViOTg4UExLUXp5dkFx?= =?utf-8?B?T25tRzFMTWozN1lGOXZFV2xuYlRHNG1kcnoxUXBrQ0xQR0h2VDRTbHdhWUlB?= =?utf-8?B?ODhTNFhQVUdqZVpScU4wMjJLb3I2djJyUmdQT2VMVXkwMldMbGZLUmFYQzJR?= =?utf-8?B?MTlKYjN2ekE4YkhTSStDOXZmWUxMZ2RWWFR2ODREb01EYm1XSXBsd3pCRi9C?= =?utf-8?B?OXBwbTZHSWVTS3pic095MEVpK1hKV2tGQlprbldoL1dnMTEzS3p1NXBFbUZL?= =?utf-8?B?NmYrdGNKM0VyUTJsVi9BbzNNSStLMElDdnh2WmZFL1JSV04wTUJmaklaR0N4?= =?utf-8?B?VUNzV1UwL21LUzFFNDhuL2d2QkJTaXVBUFhXbDJUazlFZXBBR2wxTWpJU1Y4?= =?utf-8?Q?7Tagky/0ibX1/W0VYzox5mcVyf9BY6NTRcSBy+b/q?= X-Microsoft-Exchange-Diagnostics: 1; DB6PR0701MB2534; 6:gG7T+bolRd5ipAojiwVIMWi3evCekz/ao0disPDby3K4K9acCFYPn/TPnDAQt/ekpXjcEvtUQV9YTeU8EoFn+owNiij2PCFQVFgMS3B02IVJgxsODNUK/Hmsf4sO+KRx4e4tQmbErY2FrMlAZLB/DO2eCDtD+b6DMWw63XOT/T0KkiFXcALAQWX7aiaomtMLy/R8suHg+BI3xZSENjVmtSwOOR/vhI3LLl18s2/dFCRpkj89DNutyPFDYUFfHBTpcjqxuLH5fKsB9jhllRfzSiOH10tt2Lqe0Zsd5P+ghuySaq0MeikkeqFcHmTML9KGZRFi2gidHKkGPHHFMaw0Yw==; 5:XHC9sQ/D/ypv1c+XAlZOgwE77sKL7qcZXkS/xeym6lhM4hl5nVSEwVxBbpOIAIY+uHU62PXmVv4JgVi/AOfJC94Q50VjYuGzCrmK0me/FAfVrk/sjQrDM/zk4EZUMPcfrMJZ9HiT4XFQU97gGbe0KA==; 24:p50fIf4RQK12uva99sbi3gAQL4LCIG5rbw8DmPVkiXFP35BbqgjygUlupZTetU6G0wXEblXrvQMGNPdzAjgao9uXiQvUSG8r/mp8TAchqd8=; 7:u24WxUj5wc05FRP0L/VbvT6WP5lxHDsvcDq5va5G/9uR49c8FdZOdQIOHrb8MA6hxrxqoryQZBGvkisHIBl67Xd216TiuopHiQ+/bjpxR1YtJZtihuMvg8ZqIXWGSrrMgC6NMl2/XzRnN90QlwH3fa1tsjOe8z4JjOx3xHUe3vuIV/1IWiZr7kOxXph+P9wpHFSgmtsY2CeHHtqnnrY2bus54HJQ3iODFm7A+0p26SiGBqohF568GP0WraB5/8FFGyShVf35liXDDNb9EYKLrvWeOF0Nb9i1EKbRg7bVQPciOoNQMKB92Zm+FnJJlhTI SpamDiagnosticOutput: 1:99 SpamDiagnosticMetadata: NSPM X-OriginatorOrg: nokia.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 19 Sep 2016 13:26:15.6689 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-Transport-CrossTenantHeadersStamped: DB6PR0701MB2534 Subject: [FFmpeg-devel] [PATCH v3 17/25] avformat/mov: read urim metadata from meta X-BeenThere: ffmpeg-devel@ffmpeg.org X-Mailman-Version: 2.1.20 Precedence: list List-Id: FFmpeg development discussions and patches List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Reply-To: FFmpeg development discussions and patches Cc: =?UTF-8?q?Erkki=20Sepp=C3=A4l=C3=A4?= , OZOPlayer Errors-To: ffmpeg-devel-bounces@ffmpeg.org Sender: "ffmpeg-devel" The data is read into side packet AV_PKT_DATA_TIMED_METADATA_INFO of format AVTimedMetadata. Signed-off-by: Erkki Seppälä Signed-off-by: OZOPlayer --- libavformat/mov.c | 141 ++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 141 insertions(+) diff --git a/libavformat/mov.c b/libavformat/mov.c index f9126c4..059c7c4 100644 --- a/libavformat/mov.c +++ b/libavformat/mov.c @@ -2039,6 +2039,145 @@ static int mov_rewrite_dvd_sub_extradata(AVStream *st) return 0; } +static int mov_parse_urim_uri_data(AVIOContext *pb, AVStream *st, MOVMeta *meta) +{ + int64_t size = avio_rb32(pb); + uint32_t uri = avio_rb32(pb); /* "uri " */ + avio_r8(pb); /* version */ + avio_rb24(pb); /* flags */ + + if (size < 12 || size >= 1024) + return AVERROR(ENOMEM); + + if (uri == AV_RB32("uri ")) { + int remaining = size - 12; + int64_t pos = avio_tell(pb); + uint32_t string_len = 0; + + while (string_len < remaining && avio_r8(pb) != 0) { + ++string_len; + } + avio_seek(pb, pos, SEEK_SET); + + if (string_len >= remaining) + return AVERROR_INVALIDDATA; + + meta->tag = MKTAG('u', 'r', 'i', 'm'); + meta->data = av_malloc(string_len + 1); + if (!meta->data) + return AVERROR(ENOMEM); + + avio_read(pb, meta->data, string_len); + ((char*) meta->data)[string_len] = 0; + meta->length = string_len; + remaining -= string_len; + avio_r8(pb); /* read the null terminator */ + remaining--; + + avio_skip(pb, remaining); + } else { + avio_skip(pb, size - 12); + } + + return 0; +} + +static int mov_parse_urim_conf_data(AVIOContext *pb, AVStream *st, int64_t remaining, MOVMeta *meta) +{ + int64_t size; + uint32_t tag; + int64_t data_size; + + if (remaining < 12) + return 0; + + size = avio_rb32(pb); + tag = avio_rl32(pb); + avio_r8(pb); /* version */ + avio_rb24(pb); /* flags */ + remaining -= 12; + data_size = size - 12; + + if (data_size < 0 || data_size > remaining) { + avio_skip(pb, remaining); + return 0; + } + + meta->conf.data = av_malloc(data_size); + if (!meta->conf.data) + return AVERROR(ENOMEM); + + meta->conf.tag = tag; + meta->conf.length = data_size; + avio_read(pb, meta->conf.data, data_size); + remaining -= data_size; + avio_skip(pb, remaining); + + return 0; +} + +static int mov_parse_urim_data(AVIOContext *pb, AVStream *st, int64_t remaining) +{ + int64_t pos = avio_tell(pb); + int ret; + MOVMeta meta; + + memset(&meta, 0, sizeof(meta)); + + ret = mov_parse_urim_uri_data(pb, st, &meta); + if (ret) + return ret; + + remaining -= avio_tell(pb) - pos; + ret = mov_parse_urim_conf_data(pb, st, remaining, &meta); + + // all data has been collected; now build the actual side channel + // object from the collected data + if (ret == 0) { + int tmdLength = sizeof(AVTimedMetadataInfo) + meta.length + meta.conf.length; + AVTimedMetadataInfo *tmd = av_malloc(tmdLength); + if (!tmd) { + ret = -1; + } else { + AVPacketSideData *sd; + ret = av_reallocp_array(&st->side_data, + st->nb_side_data + 1, sizeof(*sd)); + if (ret >= 0) { + char* data; + + sd = st->side_data + st->nb_side_data; + st->nb_side_data++; + + sd->type = AV_PKT_DATA_TIMED_METADATA_INFO; + sd->size = sizeof(*tmd) + meta.length + meta.conf.length; + sd->data = (uint8_t*) tmd; + + tmd->meta_tag[0] = (meta.tag >> 0) & 0xff; + tmd->meta_tag[1] = (meta.tag >> 8) & 0xff; + tmd->meta_tag[2] = (meta.tag >> 16) & 0xff; + tmd->meta_tag[3] = (meta.tag >> 24) & 0xff; + tmd->meta_length = meta.length; + tmd->conf_tag[0] = (meta.conf.tag >> 0) & 0xff; + tmd->conf_tag[1] = (meta.conf.tag >> 8) & 0xff; + tmd->conf_tag[2] = (meta.conf.tag >> 16) & 0xff; + tmd->conf_tag[3] = (meta.conf.tag >> 24) & 0xff; + tmd->conf_length = meta.conf.length; + data = (char*) (tmd + 1); + + memcpy(data, meta.data, meta.length); + data += meta.length; + memcpy(data, meta.conf.data, meta.conf.length); + } else { + av_freep(&tmd); + } + } + } + av_freep(&meta.data); + av_freep(&meta.conf.data); + + return ret; +} + static int mov_parse_stsd_data(MOVContext *c, AVIOContext *pb, AVStream *st, MOVStreamContext *sc, int64_t size) @@ -2098,6 +2237,8 @@ FF_ENABLE_DEPRECATION_WARNINGS } } } + } else if (st->codecpar->codec_tag == MKTAG('u', 'r', 'i', 'm')) { + ret = mov_parse_urim_data(pb, st, size); } else { /* other codec type, just skip (rtp, mp4s ...) */ avio_skip(pb, size);