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 1CBA949A73 for ; Wed, 27 Mar 2024 23:56:02 +0000 (UTC) Received: from [127.0.1.1] (localhost [127.0.0.1]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTP id 469D268D56D; Thu, 28 Mar 2024 01:56:00 +0200 (EET) Received: from mail-yb1-f202.google.com (mail-yb1-f202.google.com [209.85.219.202]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id 7380C68BA5C for ; Thu, 28 Mar 2024 01:55:53 +0200 (EET) Received: by mail-yb1-f202.google.com with SMTP id 3f1490d57ef6-dcc4563611cso562535276.3 for ; Wed, 27 Mar 2024 16:55:53 -0700 (PDT) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1711583752; x=1712188552; h=cc:to:from:subject:message-id:mime-version:date:x-gm-message-state :from:to:cc:subject:date:message-id:reply-to; bh=GmwrL+hYQPQ6iC4U3fyAdyFBgl2sTiQGmm86ihiUyXM=; b=qlq8KLI2VrYWeYGW7xvOJoqOY2UA2BZiGs0TM7fahgtOjM61NId+vlZFAX2RN9huYO o76C9wsMqZ1BbyABXE1/1ZzRyPlKcdFgwNKQUntEdTFLPN9Xyz3p7xgeCcoi5GcUT47a hdEtHVglN44hG3Nwlh33/3992y8+nmyvTVgPg3jWmlUxpBUDJn/6qUtOtigm7ZUFDHlN z7OrvuyvSxRzQJpNuly1nzDlfHPh8pPaIIt+eEUPPcTThNP85dFVWR9qiq3lSk6fT0UT YoJ/n1P2O5nfp1A3dzql7/WO4fBXbZGcJdKtjS9Rvelv1nhUt5oHf70/WtZIAhIpjq8I pkpg== X-Gm-Message-State: AOJu0Yws0pERKOyQTE4rDLFEXlD75/cmrn+Bn7Kwoq9Tz+zPRdfNhw3m xTdNxoGaLnmIhYdD2E9DxJGQPTdhoSkkHdJZTvXycJn3Ax/DkqPsSwHmgvxYy5/xZJJUqaLEtwP LFEkQLpflronagNhQgE0TWdRwnw9GR9PbJlrvX8tnHa63p3B95r7W0HwsggIVh8vsI416Vk19yj Fe1p8jQf0UfDjA/08cfTOIXPpnJKHKdnMDVWFLbUjKw90= X-Google-Smtp-Source: AGHT+IE2QqHqx+wucTJJcrmq06qEzuNSLTAM4Ww5bxPejvpJnlP00+Nh6+Nedsifs3jBgYmI75Xp6w/o5SefeA== X-Received: from ez-linux.bve.corp.google.com ([2620:15c:7d:6:9409:7c4a:dd1c:6b30]) (user=ezemtsov job=sendgmr) by 2002:a05:6902:124a:b0:dcc:54d0:85e0 with SMTP id t10-20020a056902124a00b00dcc54d085e0mr429964ybu.11.1711583751707; Wed, 27 Mar 2024 16:55:51 -0700 (PDT) Date: Wed, 27 Mar 2024 16:55:47 -0700 Mime-Version: 1.0 X-Mailer: git-send-email 2.44.0.396.g6e790dbe36-goog Message-ID: <20240327235548.1062119-1-ezemtsov@google.com> To: ffmpeg-devel@ffmpeg.org Subject: [FFmpeg-devel] [PATCH] Make Immersive Audio Model optional for MOV demuxing 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: Eugene Zemtsov via ffmpeg-devel Reply-To: FFmpeg development discussions and patches Cc: Eugene Zemtsov , eugene@chromium.org Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Errors-To: ffmpeg-devel-bounces@ffmpeg.org Sender: "ffmpeg-devel" Archived-At: List-Archive: List-Post: From: Eugene Zemtsov Signed-off-by: Eugene Zemtsov --- libavformat/mov.c | 15 ++++++++++++++- 1 file changed, 14 insertions(+), 1 deletion(-) diff --git a/libavformat/mov.c b/libavformat/mov.c index c55778f3ef..662301bf67 100644 --- a/libavformat/mov.c +++ b/libavformat/mov.c @@ -839,6 +839,7 @@ static int mov_read_dac3(MOVContext *c, AVIOContext *pb, MOVAtom atom) return 0; } +#if CONFIG_IAMFDEC static int mov_read_iacb(MOVContext *c, AVIOContext *pb, MOVAtom atom) { AVStream *st; @@ -1015,6 +1016,7 @@ fail: return ret; } +#endif static int mov_read_dec3(MOVContext *c, AVIOContext *pb, MOVAtom atom) { @@ -4797,6 +4799,7 @@ static void fix_timescale(MOVContext *c, MOVStreamContext *sc) } } +#if CONFIG_IAMFDEC static int mov_update_iamf_streams(MOVContext *c, const AVStream *st) { const MOVStreamContext *sc = st->priv_data; @@ -4840,6 +4843,7 @@ static int mov_update_iamf_streams(MOVContext *c, const AVStream *st) return 0; } +#endif static int mov_read_trak(MOVContext *c, AVIOContext *pb, MOVAtom atom) { @@ -4921,11 +4925,13 @@ static int mov_read_trak(MOVContext *c, AVIOContext *pb, MOVAtom atom) mov_build_index(c, st); +#if CONFIG_IAMFDEC if (sc->iamf) { ret = mov_update_iamf_streams(c, st); if (ret < 0) return ret; } +#endif if (sc->dref_id-1 < sc->drefs_count && sc->drefs[sc->dref_id-1].path) { MOVDref *dref = &sc->drefs[sc->dref_id - 1]; @@ -8457,7 +8463,9 @@ static const MOVParseTableEntry mov_default_parse_table[] = { { MKTAG('i','p','r','p'), mov_read_iprp }, { MKTAG('i','i','n','f'), mov_read_iinf }, { MKTAG('a','m','v','e'), mov_read_amve }, /* ambient viewing environment box */ +#if CONFIG_IAMFDEC { MKTAG('i','a','c','b'), mov_read_iacb }, +#endif { 0, NULL } }; @@ -8929,8 +8937,10 @@ static void mov_free_stream_context(AVFormatContext *s, AVStream *st) av_freep(&sc->coll); av_freep(&sc->ambient); +#if CONFIG_IAMFDEC if (sc->iamf) ff_iamf_read_deinit(sc->iamf); +#endif av_freep(&sc->iamf); } @@ -9570,6 +9580,7 @@ static int mov_read_packet(AVFormatContext *s, AVPacket *pkt) if (st->codecpar->codec_id == AV_CODEC_ID_EIA_608 && sample->size > 8) ret = get_eia608_packet(sc->pb, pkt, sample->size); +#if CONFIG_IAMFDEC else if (sc->iamf) { int64_t pts, dts, pos, duration; int flags, size = sample->size; @@ -9592,7 +9603,9 @@ static int mov_read_packet(AVFormatContext *s, AVPacket *pkt) } if (!ret) return FFERROR_REDO; - } else + } +#endif + else ret = av_get_packet(sc->pb, pkt, sample->size); if (ret < 0) { if (should_retry(sc->pb, ret)) { -- 2.44.0.396.g6e790dbe36-goog _______________________________________________ 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".