---------------------------------------------------------------------
-- Chromium Patches. Autogenerated by find_patches.py, do not edit --
---------------------------------------------------------------------


------------------------------------------------------------------
commit 3a43b481b78e54009e293c6c6172fc6c68990d8c
Author: Will Harris <wfh@chromium.org>
Date:   Wed Jan 21 20:33:15 2015 -0800

    Use the allocator shim in ffmpegsumo.

    Link ffmpegsumo.dll with the allocator shim code with 2Gb limit. Call into the allocator shim to initilize the crash on NULL from a new DllMain().

    BUG=450676, 446032, 444533
    TEST=media_unittests

    Change-Id: I6b0e5c944f3781e984cee0bc17678b0af7136948

Affects:
    libavutil/mem.c

------------------------------------------------------------------
commit f3299330654ac1b40c50b3cbcae619f42eb7d838
Author: Scott Graham <scottmg@chromium.org>
Date:   Mon Apr 27 16:57:46 2015 -0700

    vs2015: add missing include in snprintf header

    Otherwise, it warns that

    d:\src\cr2\src\third_party\ffmpeg\compat\msvcrt\snprintf.c(40): error C2220: warning treated as error - no 'object' file generated
    d:\src\cr2\src\third_party\ffmpeg\compat\msvcrt\snprintf.c(40): warning C4013: 'avpriv_vsnprintf' undefined; assuming extern returning int

    I guess this is new behaviour for .c files? Not sure.

Affects:
    compat/msvcrt/snprintf.c

------------------------------------------------------------------
commit b5269bfb48c71fe17c02eee00c71b1e9762497db
Author: Dale Curtis <dalecurtis@chromium.org>
Date:   Fri May 15 16:39:13 2015 -0700

    Fix inconsistent linkage when building with MSVC.

    Exposes overriden symbols as externs and force injects these headers
    when building with the component build.

    TEST=builds with gyp/gn in component build on windows.

    Change-Id: Iad04faf4f60469a810205ae1159bb3d6f77eae35

Affects:
    compat/msvcrt/snprintf.h
    compat/strtod.c

------------------------------------------------------------------
commit 58315b1a02fa9761d05bd9211ce0ab672f8a8699
Author: Dale Curtis <dalecurtis@chromium.org>
Date:   Tue May 19 16:05:10 2015 -0700

    Fix public global symbols on the osx and linux builds.

    Fixes the conditionals on Linux so that these symbols are hidden and
    adds the Chromium-specific private_extern extension for hiding these
    symbols on OSX.

    TEST=compiles on OSX, linux, nm shows symbols hidden.

    Change-Id: I26e42fa2bc4d2f553061e8b478dbfc95f610c13f

Affects:
    libavutil/x86/x86inc.asm

------------------------------------------------------------------
commit 703d465a5e4ffd326abb7b68e8541df370a26d55
Author: Dale Curtis <dalecurtis@chromium.org>
Date:   Wed Sep 16 15:08:49 2015 -0700

    Update configs and version numbers for M47 ffmpeg roll.

    Change-Id: Ie7873e478a496f28dbfd0739325c6e2b6d427b58

Affects:
    libavformat/mp3dec.c

------------------------------------------------------------------
commit c52070a0e537c4175617c7a8f274cf8afa54e0b4
Author: Christopher Cunningham <chcunningham@ad.corp.google.com>
Date:   Thu Apr 21 19:21:00 2016 -0700

    Fix windows build issues.

    Update VS2013 references for VS2015.

    Slight tweak to configure. src symlink for source_path doesn't work
    with cl.exe (files not found).

    Change-Id: I8074309baeefdf785778b62c680452000de7e999

Affects:
    configure

------------------------------------------------------------------
commit b4d337e66827f3cced2a5762c428035703412aed
Author: Dale Curtis <dalecurtis@chromium.org>
Date:   Fri Oct 21 15:49:44 2016 -0700

    Enable libopus builds within build_ffmpeg.py

    This prepares the path for using ffmpeg's opus decoder instead of
    our own. Allowing opus playback in WebAudio and reducing some of
    our code complexity.

    BUG=482934
    TEST=Opus media_unittests pass w/o modification.

    Change-Id: I8867b015ac9e8bd8ec3b0ae04b926f87cb2aae09
    Reviewed-on: https://chromium-review.googlesource.com/402028
    Reviewed-by: Matthew Wolenetz <wolenetz@chromium.org>

Affects:
    configure

------------------------------------------------------------------
commit b281073a7b1ccff67b2cd8ec636facceeeb82327
Author: Matt Wolenetz <wolenetz@chromium.org>
Date:   Wed Nov 16 14:05:47 2016 -0800

    Enable mac build_ffmpeg of lavf/wavdec.c

    Mac searches more extensively for symbols when building dynamic
    libaries.  Since last ffmpeg roll, wavdec.c now conditionally calls a
    method ff_spdif_probe, which is not included in build
    (CONFIG_SPDIF_DEMUXER is disabled), and build_ffmpeg on mac thus fails.

    This change uses a downstream #if to completely remove the call to
    ff_spdif_probe in wavdec.c

Affects:
    libavformat/wavdec.c

------------------------------------------------------------------
commit 5d76f94a515900260f185d5949f72ed6fa4bdd94
Author: Matt Wolenetz <wolenetz@chromium.org>
Date:   Thu Nov 17 12:17:10 2016 -0800

    Enable windows Chrom* build including lavf/wavdec.c

    Expands the downstream #if's to exclude more code blocks including
    symbols not in our builds, gated by each of CONFIG_SPDIF_DEMUXER and
    CONFIG_W64_DEMUXER. At least the windows toolchain otherwise would fail
    linking Chrom* pieces due to resolved symbols without this change.

    BUG=264459

    Change-Id: I554740ec871f5cf70294bbd762deb464e484b241
    Reviewed-on: https://chromium-review.googlesource.com/412440
    Reviewed-by: Dale Curtis <dalecurtis@chromium.org>

Affects:
    libavformat/wavdec.c

------------------------------------------------------------------
commit 65d55e6e21ea7eaeef9324641aef36524fdd477f
Author: liberato@chromium.org <liberato@chromium.org>
Date:   Tue Jan 17 17:44:18 2017 -0800

    Make matroskadec and cpu.c compile on Windows.

    Matroskadec included an explicit and implicit 'const', which the compiler
    didn't like.

    cpu.c used stdatomic.h, which Windows doesn't provide.

    BUG=

    Change-Id: I84a55b28c145e5cc3bbdb8cbe3de644bb23406c6
    Reviewed-on: https://chromium-review.googlesource.com/429390
    Reviewed-by: Frank Liberato <liberato@chromium.org>

Affects:
    compat/atomics/win32/stdatomic.h

------------------------------------------------------------------
commit f058fa86bb0e7e43d4208eb05a71c8ce46487611
Author: Thomas Guilbert <tguilbert@chromium.org>
Date:   Mon Mar 20 11:15:26 2017 -0700

    Skip ID3v1 tags

    Recent changes to mp3dec.c caused the custom flag we added to the
    AVFormatContext to be overwritten.

    This CL adds an explicit check for our custom "skip_id3v1_tags"
    metadata value in mp3_read_header, before it is overwritten.

    BUG=
    TEST= ran media_unittests before/after

    Change-Id: Ia83e9ffcdff0775bacfa40c2eab633539cd9906c
    Reviewed-on: https://chromium-review.googlesource.com/457249
    Reviewed-by: Dale Curtis <dalecurtis@chromium.org>

Affects:
    libavformat/mp3dec.c

------------------------------------------------------------------
commit 23a7be520d523e37fc1eb31ff23ac0e59e737e09
Author: Thomas Guilbert <tguilbert@chromium.org>
Date:   Tue Apr 11 16:26:39 2017 -0700

    Fix dictionary leak in mp3dec

    Upstream changes in mp3dec.c introduced a leak. s->metadata is
    (correctly) assumed to be NULL when entering mp3_read_header,
    but Chromium uses a custom dictionary entry to skip id3v1 tag
    parsing, which requires an additional call to av_dict_free.

    Bug:703965

    Change-Id: I5fbe4a7bd71d7097cf074f60f9ff3700d153930d
    Reviewed-on: https://chromium-review.googlesource.com/475026
    Reviewed-by: Matthew Wolenetz <wolenetz@chromium.org>

Affects:
    libavformat/mp3dec.c

------------------------------------------------------------------
commit d4512b74a80eca1a4ea5c682300171efe0f721ff
Merge: bb7fe72a56 8ef2c791c9
Author: John Rummell <jrummell@chromium.org>
Date:   Mon May 8 13:56:56 2017 -0700

    Merge FFmpeg for M60.

    Conflicts:
      configure
      libavcodec/utils.c
      libavformat/mov.c
      libavformat/oggparseogm.c

Affects:
    configure

------------------------------------------------------------------
commit 824c9515cb40d3806408c13ee52cce120118328d
Author: John Rummell <jrummell@chromium.org>
Date:   Wed May 31 14:54:11 2017 -0700

    Always use av_realloc() for |extradata|

    Chromium debug builds do not allow mixing calls to posix_memalign() and
    realloc(). So always use realloc() when allocating |extradata|.

    BUG=721872
    TEST=Cr444539/FFmpegRegressionTest.BasicPlayback/0 test passes without ASAN

    Change-Id: Ibfcf99b3c23656ee46dd471cea1c5831b9176872
    Reviewed-on: https://chromium-review.googlesource.com/520342
    Reviewed-by: Thomas Guilbert <tguilbert@chromium.org>

Affects:
    libavformat/mov.c

------------------------------------------------------------------
commit 1e201feaa3260336aa63545c9471b76e5aef2e0a
Author: Dale Curtis <dalecurtis@chromium.org>
Date:   Fri Aug 25 16:58:16 2017 -0700

    Shave ~158kb in strings from ffmpeg. Use #define to null-route logs.

    Official builds never log these strings anywhere; we always set
    AV_LOG_QUIET and don't surface these to MEDIA_LOG.

    158kb difference is the final chrome executable on linux with
    a static link.

    BUG=none
    TEST=compile, observe binary size delta of chrome

    Change-Id: I78782079dbe54822e4ded1a4f41c1b98621f83f7
    Reviewed-on: https://chromium-review.googlesource.com/636748
    Reviewed-by: Chrome Cunningham <chcunningham@chromium.org>

Affects:
    libavutil/internal.h
    libavutil/log.c
    libavutil/log.h

------------------------------------------------------------------
commit 76b57e9f808de42f6f1bb7df97531aa4b5cb7bb0
Author: Dale Curtis <dalecurtis@chromium.org>
Date:   Mon Nov 6 17:37:45 2017 -0800

    Drop Linux MIPS. Fix Android MIPS64. Clang for everything.

Affects:
    configure

------------------------------------------------------------------
commit 732525a160bc98935b757d6e13b8a0115e62d929
Author: Dale Curtis <dalecurtis@chromium.org>
Date:   Fri Nov 17 15:44:24 2017 -0800

    Disable unused ogg codec parsers; they have bugs we don't care about.

    Ogg has parsers for a bunch of codecs we don't care about. Long ago
    we also disabled these, but we re-enabled them because it didn't
    matter at the time. We would just fail during demuxing instead; but
    now it seems there are bugs in these parsers, so disable them to
    avoid bringing their issues along.

    The issue in this case is bad timestamps, but there's no good fix
    for this in the speex code that I can see, so it's simpler to just
    blanket disable.

    BUG=654612
    TEST=media_unittests still pass

    Change-Id: I4f4e683a338dafe2df11ade6efca57ad0498f974
    Reviewed-on: https://chromium-review.googlesource.com/777969
    Reviewed-by: Dan Sanders <sandersd@chromium.org>

Affects:
    libavformat/oggdec.c

------------------------------------------------------------------
commit 9ed334093692f2dc77c4ad8186ddadde584e1e20
Author: Dan Sanders <sandersd@chromium.org>
Date:   Tue Feb 13 15:18:47 2018 -0800

    Prevent NULL dereference in mov_seek_fragment()

    If the fragment index is empty, mov_seek_fragment() will try to read the
    first index entry anyway. This patch adds an early return in that case.

    Bug: 804070
    Change-Id: I2e4c3b9859c0434181dc3e62486f314166617fe6
    Reviewed-on: https://chromium-review.googlesource.com/917381
    Reviewed-by: Dale Curtis <dalecurtis@chromium.org>

Affects:
    libavformat/mov.c

------------------------------------------------------------------
commit eac51b1c76474daab2815b95a3514a1176fa5e52
Author: Dale Curtis <dalecurtis@chromium.org>
Date:   Fri Feb 23 10:59:11 2018 -0800

    Skip trailing junk data when flushing parser.

    The parser should only return valid mpeg audio packets; it generally
    does so, but in the case of flush, it returns whatever happens to
    be in the buffer instead of ensuring its first a valid mpeg packet.

    The fix is to check whether a valid frame size has been parsed and
    if not discard the packet when flushing.

    This should fix all sorts of mp3 files with trailing garbage.

    Signed-off-by: Dale Curtis <dalecurtis@chromium.org>
    Bug: 794782
    Change-Id: I4ed8e5e31573f3dc6a3ff3872f4ae8fb9f294091
    Reviewed-on: https://chromium-review.googlesource.com/935081
    Reviewed-by: Xiaohan Wang <xhwang@chromium.org>

Affects:
    libavcodec/mpegaudio_parser.c

------------------------------------------------------------------
commit 261398f81e512e41302fa036afc6e6f8a3a10811
Author: Dale Curtis <dalecurtis@chromium.org>
Date:   Fri Feb 23 11:16:05 2018 -0800

    Don't invoke trailing garbage discard for every flush.

    Check needs buf_size > 0.

    Signed-off-by: Dale Curtis <dalecurtis@chromium.org>

Affects:
    libavcodec/mpegaudio_parser.c

------------------------------------------------------------------
commit 24bf13b3c13a22c5d1ae4295badc9b79f94e6398
Author: Dale Curtis <dalecurtis@chromium.org>
Date:   Tue Apr 17 11:14:57 2018 -0700

    Add support for building the Windows ffmpeg configuration on Linux!

    This adds cross-compiling support for Windows ffmpeg configurations;
    it also updates the configurations with the generated results!

    This uses a couple of existing Chromium scripts for setting up the
    correct MSVC paths and passing the right cflags and ldflags to
    chromium such that compilation can succeed.

    This also pulls in an upstream patch for configure to make it detect
    the proper command line flag type '/' vs '-':
    https://patchwork.ffmpeg.org/patch/7469/

    There's one further change to the makedef line in configure to
    ensure that it's run using the substituted AR and NM commands
    instead of the defaults lib and dumpbin.

    BUG=783021
    TEST=chrome works!

    Change-Id: Ia6951b66ae7ecf1e6c700d6cf8bc92f4ea2ef985
    Reviewed-on: https://chromium-review.googlesource.com/1013323
    Reviewed-by: Frank Liberato <liberato@chromium.org>

Affects:
    configure

------------------------------------------------------------------
commit f3680cd7365f99a0c3f77b06d664adc69a0624c4
Author: liberato@chromium.org <liberato@chromium.org>
Date:   Thu May 24 13:43:24 2018 -0700

    Add null check for encryption info.

    Bug: 846009
    Change-Id: If6f11b1ff2b730f6bdd0555cc3be6b6036ba1c59
    Reviewed-on: https://chromium-review.googlesource.com/1072163
    Reviewed-by: Matthew Wolenetz <wolenetz@chromium.org>

Affects:
    libavutil/encryption_info.c

------------------------------------------------------------------
commit 6a44f89787a6103bf85825aac5b7bcfdba0dde5f
Merge: c5003c8e13 acbd950ed2
Author: John Rummell <jrummell@chromium.org>
Date:   Wed Feb 19 15:20:41 2020 -0800

    Merge remote-tracking branch 'upstream/master' into sushi-2020-02-19-14-22-27

    Conflicts:
      libavcodec/codec_desc.c
      libavcodec/version.h
      libavformat/mov.c
      libavformat/movenc.c
      libavformat/oggparseflac.c
      libavformat/utils.c
      libavutil/log.c
      libavutil/log.h

Affects:
    libavutil/log.c
    libavutil/log.h

------------------------------------------------------------------
commit a3009baf841ca86aab37210dbec5e6d65b85d197
Author: Nico Weber <thakis@chromium.org>
Date:   Fri Jul 10 11:21:38 2020 -0400

    Make sure arm assembly functions have hidden visibility.

    This is the ARM port of 58315b1a02fa9761d0.

    Bug: chromium:1103879
    Change-Id: I470e62d7e49d547c4d12428f748e0d524fd3cdd8
    Reviewed-on: https://chromium-review.googlesource.com/c/chromium/third_party/ffmpeg/+/2290844
    Reviewed-by: Dale Curtis <dalecurtis@chromium.org>

Affects:
    libavutil/aarch64/asm.S

------------------------------------------------------------------
commit d2dd36c03501e995e8ce2d792d834392b2e62bfe
Author: Nico Weber <thakis@chromium.org>
Date:   Fri Jul 10 14:23:02 2020 -0400

    Use correct comment syntax for arm assembly.

    Apparently clang accepts ';' as comment character in arm64
    assembly when targeting macOS, but not when targeting Android.

    Bug: chromium:1103879
    Change-Id: I23d1e6facbe3eddd25e58762de096fb9c1ffda15
    Reviewed-on: https://chromium-review.googlesource.com/c/chromium/third_party/ffmpeg/+/2292785
    Reviewed-by: Dale Curtis <dalecurtis@chromium.org>

Affects:
    libavutil/aarch64/asm.S

------------------------------------------------------------------
commit 45b753b2d1d27b673a14419070ccc9558774efc2
Author: Dan Sanders <sandersd@chromium.org>
Date:   Mon Aug 17 15:55:19 2020 -0700

    Always use av_realloc() for ogg_stream |buf|.

    Mixing av_malloc() with av_realloc() does not work when posix_memalign()
    is available.

    Bug: 721872
    Change-Id: I3d6a9dc6a638ff210c5f32a99beff26f11d65b33
    Reviewed-on: https://chromium-review.googlesource.com/c/chromium/third_party/ffmpeg/+/2358822
    Reviewed-by: John Rummell <jrummell@chromium.org>

Affects:
    libavformat/oggdec.c

------------------------------------------------------------------
commit afa2b4327ab4beb4cd47f6cf4e59df620b5d6e4f
Author: Matt Wolenetz <wolenetz@chromium.org>
Date:   Wed Mar 10 16:57:29 2021 -0800

    Update mac build_ffmpeg and configure to work with ld64.lld changes

    The minimal linking done with real, yet unstable, ld64.lld no longer
    recognizes "-m64", needs "-arch x64_64" instead, and needs a
    "-platform_version <platform> <min_version> <sdk_version>" set of
    arguments. Beyond the initial configure step, build_ffmpeg for mac
    cross-compilation still uses a fake linker.

    Also, ld64.lld now issues error instead of warning for unrecognized
    arguments '-Wl,-dynamic,-search_paths_first' inserted by configure,
    causing misdetection of features due to widespread link failures in
    configure's probing, resulting in build_ffmpeg.py failure. This change
    updates our downstream configure script to not insert those options.

    BUG=1170998

    Change-Id: If6d5a73f23bf8b6d3053961e13e89b0c50ccd8a6
    Reviewed-on: https://chromium-review.googlesource.com/c/chromium/third_party/ffmpeg/+/2749496
    Reviewed-by: Ted Meyer <tmathmeyer@chromium.org>

Affects:
    configure

------------------------------------------------------------------
commit 4fb42ae52e7327469281d612784dd9d0e066d5ed
Author: Matt Wolenetz <wolenetz@chromium.org>
Date:   Mon Mar 29 16:26:05 2021 -0700

    Always use av_realloc_array() for nal->skipped_bytes_pos

    Mixing av_malloc_array() with av_realloc_array() does not work when
    posix_memalign() is available.

    BUG=1193797,721872
    TEST=No repro of scenario in crbug with patch applied.

    Change-Id: I6ecd8a34798a3c892409877b2c42d9cdeb3fdd81
    Reviewed-on: https://chromium-review.googlesource.com/c/chromium/third_party/ffmpeg/+/2792764
    Reviewed-by: John Rummell <jrummell@chromium.org>

Affects:
    libavcodec/h2645_parse.c

------------------------------------------------------------------
commit 95aab0fd83619408995720ce53d7a74790580220
Author: liberato@chromium.org <liberato@chromium.org>
Date:   Wed Jul 7 19:01:22 2021 -0700

    Add av_stream_get_first_dts for Chromium

Affects:
    libavformat/avformat.h
    libavformat/utils.c

------------------------------------------------------------------
commit b4d520ca6786368a829b38147364f22096f284fa
Author: liberato@chromium.org <liberato@chromium.org>
Date:   Fri Jul 30 18:46:38 2021 -0700

    M94 FFmpeg roll.

    Bug: 1227259
    Change-Id: I53e21333100fc603d814806a9f6f807fede2adb6
    Reviewed-on: https://chromium-review.googlesource.com/c/chromium/third_party/ffmpeg/+/3063817
    Reviewed-by: Ted Meyer <tmathmeyer@chromium.org>

Affects:
    libavformat/oggparsevorbis.c
    libavutil/macos_kperf.c
    libavutil/macos_kperf.h

------------------------------------------------------------------
commit 47273666537556c923cc4f4a03d9d42666931876
Author: Thomas Guilbert <tguilbert@chromium.org>
Date:   Wed Sep 15 15:44:40 2021 -0700

    Fix macro expansion error

    This CL fixes an issue that results from the CHROMIUM_NO_LOGGING macro.
    When it is defined, av_log(...) expands to nothing, which causes this
    expansion:
            ff_dlog(ctx, ...) -->  do { if (0) av_log(...)  ; } while (0)

    to cause a -Wempty-statement error, due to the empty `if (0) ;`.

    Bug: 1249257
    Change-Id: I0011ae8e50c8931ac64517fa604775a9838ac8a1
    Reviewed-on: https://chromium-review.googlesource.com/c/chromium/third_party/ffmpeg/+/3163777
    Reviewed-by: John Rummell <jrummell@chromium.org>

Affects:
    libavutil/internal.h

------------------------------------------------------------------
commit 52ef7a785f90179d78453b889e82f0604131f962
Merge: 731bf2abeb 45dc668aea
Author: John Rummell <jrummell@chromium.org>
Date:   Mon Nov 8 14:39:18 2021 -0800

    Merge remote-tracking branch 'upstream/master' into sushi-2021-11-08-14-35-25

    Conflicts:
      libavformat/mp3dec.c
      libavformat/utils.c

Affects:
    libavformat/mp3dec.c
    libavformat/utils.c

------------------------------------------------------------------
commit bdb9bbd8a11003c0c3d9e2c12215bf5338372b1a
Author: Dale Curtis <dalecurtis@chromium.org>
Date:   Thu Mar 31 16:49:37 2022 -0700

    Remove stale patches and cleanup UNCHECKED_BITSTREAM_READER.

    Specifically:
    - This merge had several UNCHECKED_BITSTREAM_READER conflicts, so
      change them all to be one line changes to avoid future hurdles.
    - We don't compile MIPS anymore, so can drop that change.
    - Drop rotate section from mov headers, code should use
      av_stream_get_side_data() instead.
    - Adds CONFIG_LZO back to matroskadec, since we still don't want that
      and they deleted it upstream.

    Bug: 1293918
    Change-Id: If4d028f49dfdf64e8704ecbe208398642a27341d
    Reviewed-on: https://chromium-review.googlesource.com/c/chromium/third_party/ffmpeg/+/3564810
    Reviewed-by: Dan Sanders <sandersd@chromium.org>

Affects:
    libavcodec/cdxl.c
    libavcodec/dnxhddec.c
    libavcodec/fraps.c
    libavcodec/h263dec.c
    libavcodec/h264_cabac.c
    libavcodec/h264_cavlc.c
    libavcodec/h264_parser.c
    libavcodec/huffyuvdec.c
    libavcodec/ituh263dec.c
    libavcodec/jpeglsenc.c
    libavcodec/mpeg12.c
    libavcodec/mpeg12dec.c
    libavcodec/mpeg4video_parser.c
    libavcodec/smacker.c
    libavcodec/utvideodec.c

------------------------------------------------------------------
commit 1bc7749f096fc98032fc3206217b4fc47047258f
Author: Dale Curtis <dalecurtis@chromium.org>
Date:   Thu Mar 31 17:02:26 2022 -0700

    Fix a couple missed headers.

Affects:
    libavcodec/h264dec.c
    libavcodec/mpeg4videodec.c

------------------------------------------------------------------
commit 4cfd75d794ea5917d7526d6a993f305591ce52d8
Author: Dale Curtis <dalecurtis@chromium.org>
Date:   Fri Apr 1 16:01:02 2022 -0700

    Redisable av_sscanf since it's little used and takes ~8kb.

    I removed this patch in the M102 roll thinking we didn't need it
    anymore, but the Android binary size bot complains at the size
    increase.

Affects:
    libavutil/avstring.h

------------------------------------------------------------------
commit 71c81ea6d295b2940df5a265c9298229a4bced03
Author: Dan Sanders <sandersd@chromium.org>
Date:   Thu May 19 14:16:20 2022 -0700

    GN Configuration

Affects:
    libavutil/avsscanf.c

------------------------------------------------------------------
commit b71ecd02b47939e530e620d9d0d101463db0f688
Author: Eugene Zemtsov <eugene@chromium.org>
Date:   Wed Jul 27 13:09:47 2022 -0700

    Roll for M106

    Bug:1344646
    Change-Id: Idd70cb61d6739d4f782f6cae43f8135e4abfd2eb
    Reviewed-on: https://chromium-review.googlesource.com/c/chromium/third_party/ffmpeg/+/3786817
    Reviewed-by: Will Cassella <cassew@chromium.org>
    Reviewed-by: Dale Curtis <dalecurtis@chromium.org>

Affects:
    libavutil/hwcontext_stub.c

------------------------------------------------------------------
commit 68994b791ea432cbb1ff551ffbe4f40b1b8f93f2
Author: Frank Liberato <liberato@chromium.org>
Date:   Fri Oct 28 03:26:22 2022 +0000

    moved ff_ac3_find_syncword out of CONFIG_AC3_PARSER

Affects:
    libavcodec/ac3_parser.c

------------------------------------------------------------------
commit c9b87a3225e1422d281ce4454415e5c96b452aa7
Merge: a249b21db6 2c3107c3e9
Author: John Rummell <jrummell@chromium.org>
Date:   Wed Jan 25 16:02:14 2023 -0800

    Merge remote-tracking branch 'upstream/master' into sushi-2023-01-25-15-58-26

Affects:
    libavutil/tx.c

------------------------------------------------------------------
commit cbc47d6b462ccd4f431dacad782ac14faba67ab0
Author: John Rummell <jrummell@chromium.org>
Date:   Wed Jan 25 16:20:19 2023 -0800

    Update python scripts

Affects:
    libavutil/tx.c

------------------------------------------------------------------
commit 125536d78f103ff44efeb26c4d7c98413a5a618f
Merge: 0d75f366d5 9240035c0e
Author: John Rummell <jrummell@chromium.org>
Date:   Wed Oct 4 10:12:40 2023 -0700

    Merge remote-tracking branch 'upstream/master' into sushi-2023-10-04-10-06-42

    Conflicts:
        both modified:   configure
        both modified:   libavformat/matroskadec.c
        deleted by us:   libavutil/macos_kperf.c

Affects:
    configure

------------------------------------------------------------------
commit 70399d75c002bd2c5e226ac771bc57f5e5465f06
Author: John Rummell <jrummell@chromium.org>
Date:   Wed Oct 4 10:36:29 2023 -0700

    README.chromium file

Affects:
    libavformat/matroskadec.c

------------------------------------------------------------------
commit 1958aa856574b93b4565695e4dece9e3f6e3aa1c
Author: Dan Sanders <sandersd@chromium.org>
Date:   Fri Jan 12 19:08:20 2024 +0000

    Use saturated timestamp subtraction in mov_get_skip_samples()

    Bug: 1512551
    Change-Id: I1caa7166b51376ac0b643d25d5e842c0a688f38b
    Reviewed-on: https://chromium-review.googlesource.com/c/chromium/third_party/ffmpeg/+/5193387
    Reviewed-by: Dale Curtis <dalecurtis@chromium.org>

Affects:
    libavformat/mov.c

------------------------------------------------------------------
commit a21071589971c54596dbbccbccdbac7bdd9d4e4c
Author: Dale Curtis <dalecurtis@chromium.org>
Date:   Mon Apr 1 23:39:47 2024 +0000

    Revert "avutil/tx_template: extend to 2M" and asm changes.

    This causes unnecessary startup memory regressions on Windows
    since Windows counts BSS as private memory even if it's never
    used. We only use the MDCT parts of the TX float for AAC.

    This reverts commit 8f48a62151f4a299574959df9a48813303ef4edb.
    This reverts commit bd3e71b21ec3786ec6fc00ef260af0150f31b71b.

    R=tmathmeyer

    Bug: 40936872
    Change-Id: I14f3adbebbb581f98e70e98793b7fcb9634d516a
    Reviewed-on: https://chromium-review.googlesource.com/c/chromium/third_party/ffmpeg/+/5411272
    Reviewed-by: Ted (Chromium) Meyer <tmathmeyer@chromium.org>

Affects:
    libavutil/tx_template.c
    libavutil/x86/tx_float.asm

------------------------------------------------------------------
commit bdcb0b447f433de3b69f0252732791b9f7e26f37
Author: Ted Meyer <tmathmeyer@chromium.org>
Date:   Tue Apr 2 18:49:30 2024 -0700

    Set max size of single packet

    Upstream switched this to autodetect the packet size, but this breaks
    our use of `avformat_find_stream_info`, causing
    FFmpegDemuxer::OnOpenContextDone to never post a callback to
    FFmpegDemuxer::OnFindStreamInfoDone, breaking the pipeline
    initialization step.

    Bug: 330573128
    Change-Id: Id578b4a08a3f68668172165e36e93ad283aea487
    Reviewed-on: https://chromium-review.googlesource.com/c/chromium/third_party/ffmpeg/+/5416659
    Reviewed-by: Eugene Zemtsov <eugene@chromium.org>

Affects:
    libavformat/wavdec.c

------------------------------------------------------------------
commit 092f84b6141055bfab609b6b2666b724eee2e130
Author: Frank Liberato <liberato@chromium.org>
Date:   Mon Apr 22 22:21:36 2024 +0000

    Turn off PIC for x86.

    PIC was turned off for x86 by x86inc.asm.

    Commit afa471d0e removed this, but some PIC code assumes that we
    have quad registers that don't exist on x86.

    This CL puts the check back, at least until we can sort out what
    the right behavior in upstream is.  Probably, this will be put
    back into upstream so this patch can go away.

    Bug: b/334192344
    Change-Id: I32f898602d453db177e137290c2873a979741268
    Reviewed-on: https://chromium-review.googlesource.com/c/chromium/third_party/ffmpeg/+/5474312
    Reviewed-by: Thomas Guilbert <tguilbert@chromium.org>

Affects:
    libavutil/x86/x86inc.asm

------------------------------------------------------------------
commit d941d9677bb4802f01750fd908ec284fb72c84df
Author: Dan Sanders <sandersd@chromium.org>
Date:   Thu Jun 20 12:09:26 2024 -0700

    Use saturated subtraction in mov_get_skip_samples()

    Bug: 333605001
    Change-Id: I548d76e111baebe268c21866a3b83b824e30d10a
    Reviewed-on: https://chromium-review.googlesource.com/c/chromium/third_party/ffmpeg/+/5646169
    Reviewed-by: Dale Curtis <dalecurtis@chromium.org>

Affects:
    libavformat/mov.c

------------------------------------------------------------------
commit 594bc6d3246fe6b293f253d07c8905c578cb75c9
Author: Dale Curtis <dalecurtis@chromium.org>
Date:   Tue Jul 30 16:32:24 2024 +0000

    Add AVFMT_FLAG_NOVIDEOPARSE so video parsers can be disabled.

    This allows us to remove parsing for video codecs w/o changing the
    build configuration just yet. If this ships successfully we can
    remove video parsers from the build config and this patch.

    R=sandersd

    Bug: 355485812
    Change-Id: Id9ffd4d8c1e989b0ddcfb6e5f5e9c63ea96bf7c4
    Reviewed-on: https://chromium-review.googlesource.com/c/chromium/third_party/ffmpeg/+/5750102
    Reviewed-by: Dan Sanders <sandersd@chromium.org>

Affects:
    libavformat/avformat.h
    libavformat/demux.c

------------------------------------------------------------------
commit 26f9ca48dc8f1dc37d1b47c7c79358cb65a53f53
Author: Dale Curtis <dalecurtis@chromium.org>
Date:   Tue Jul 30 19:25:12 2024 +0000

    Leave vp9 parser enabled. Only allow H.264 parser control.

    Unfortunately, we do need the vp9 parser to get the profile. Unlike
    H.264 extradata isn't required, so we have no means to get the
    right profile w/o ffmpeg parsers.

    R=sandersd

    Bug: 355485812
    Change-Id: I3bfcdb5f7401a15f5043cfe19faa01fa82c3fce8
    Reviewed-on: https://chromium-review.googlesource.com/c/chromium/third_party/ffmpeg/+/5750054
    Reviewed-by: Dan Sanders <sandersd@chromium.org>

Affects:
    libavformat/avformat.h
    libavformat/demux.c

------------------------------------------------------------------
commit 468b9c8a52555953618ba1677fffb0a778dd6d87
Author: Ho Cheung <hocheung@chromium.org>
Date:   Sun Sep 1 08:43:04 2024 +0800

    [libavcodec] Check nullptr to fix crash in hevcdec

    The previous CL forgot to check nullptr and caused
    a crash in hevcdec. This CL fixes this crash.

    Bug: chromium:362007482
    Change-Id: I67a2c36318f7b188e81ad453b1e6466743d85351
    Reviewed-on: https://chromium-review.googlesource.com/c/chromium/third_party/ffmpeg/+/5825845
    Reviewed-by: Dale Curtis <dalecurtis@chromium.org>

Affects:
    libavcodec/hevc/hevcdec.c

------------------------------------------------------------------
commit d4258358c7672ae3ccaac0ffb16c5169bbff273c
Merge: 91903c28af dc11c12b64
Author: Dan Sanders <sandersd@chromium.org>
Date:   Fri Sep 20 19:22:41 2024 +0000

    Merge remote-tracking branch 'upstream/master' into sushi-2024-09-19-19-04-27

Affects:
    libavcodec/h264dec.c
    libavcodec/hevc/hevcdec.c
    libavformat/matroskadec.c

------------------------------------------------------------------
commit ce4bada8b24734982a48448dcafcf9897df7f06e
Author: Dan Sanders <sandersd@chromium.org>
Date:   Tue Sep 24 17:17:39 2024 +0000

    Use full paths in libavcodec/opus

Affects:
    libavcodec/opus/parse.c
    libavcodec/opus/parser.c

------------------------------------------------------------------
commit 30735bb16a66e84d6324b5858eef314822b6d419
Author: Dan Sanders <sandersd@chromium.org>
Date:   Wed Sep 25 17:57:29 2024 +0000

    Disable xHE AAC specific config parser

    This parser does not recognize our test streams. Revert to the generic
    AAC parser, which does.

    Bug: 369237342, 353279142
    Change-Id: I39e7093a54e7c0dc66cfb74401ce3548457a69d5
    Reviewed-on: https://chromium-review.googlesource.com/c/chromium/third_party/ffmpeg/+/5891970
    Reviewed-by: Dale Curtis <dalecurtis@chromium.org>

Affects:
    libavcodec/aac/aacdec.c

------------------------------------------------------------------
commit 590dd6169ac0b8ee102086cfb40c51dee5a47072
Author: Ted Meyer <tmathmeyer@chromium.org>
Date:   Mon Dec 9 16:16:13 2024 -0800

    Guard use of ff_aom_uninit_film_grain_params

    All other use of the dynamic allocation operations for aom_film_grain
    are guarded by this flag as well.

Affects:
    libavcodec/h2645_sei.c

------------------------------------------------------------------
commit e89a63b83dbfbce2f69f392b228e3ebe6f8a77b7
Author: Ted Meyer <tmathmeyer@chromium.org>
Date:   Mon Dec 9 16:24:28 2024 -0800

    Guard use of ff_dvdclut* functions with a CONFIG

    This functions are implemented in libavformat/dvdclut.c which is only
    built when CONFIG_DVDVIDEO_DEMUXER is set. Chromium does not use this
    demuxer, or set this flag, so the symbols are missing.

Affects:
    libavformat/mov.c

------------------------------------------------------------------
commit 89a09990a932e5442c603b902916cf013436246a
Author: Ted Meyer <tmathmeyer@chromium.org>
Date:   Thu Dec 12 17:19:33 2024 -0800

    add __attribute__((used)) to ff_h264_cabac_tables

    Bug: 383824580

Affects:
    libavcodec/cabac.c

------------------------------------------------------------------
commit 818bf360d55593a8676346864195b377699b2f13
Author: Ted Meyer <tmathmeyer@chromium.org>
Date:   Fri Dec 13 16:55:41 2024 -0800

    Guard memmove length calculations

    stts_count and ctts_count aren't guaranteed to be larger than
    index_entry_pos, which could cause overflow of the unsigned size
    argument for memmove, leading to massive out of bounds memory writes.

    Bug: 383454674

Affects:
    libavformat/mov.c

------------------------------------------------------------------
commit cae04bf9414c582fcc28edc6078ebfd3800e7838
Merge: d10a0f8bf5 d5873be583
Author: Frank Liberato <liberato@chromium.org>
Date:   Mon Jan 13 20:41:30 2025 +0000

    Merge remote-tracking branch 'upstream/master' into sushi-2025-01-13-20-34-05

     Conflicts:
            libavcodec/h2645_sei.c
            libavcodec/hevc/hevcdec.c
            libavformat/mov.c

Affects:
    libavformat/mov.c

------------------------------------------------------------------
commit b6701d3e05cf0f823978b558822a7b810d897a5a
Author: Frank Liberato <liberato@chromium.org>
Date:   Tue Jan 14 00:37:44 2025 +0000

    [ffmpeg] ffmpeg roll for M134

    == new patch ==
    Remove aom_film_grain

    This was added as a dep in the latest roll, which brings in files that
    we don't need.

    == usual stuff ==
    README.chromium file
    Chromium patches file
    GN Configuration

    Bug: 389777787
    Change-Id: Ia373b13d4268651550fee1a14aaa4bcad7d7cd84
    Reviewed-on: https://chromium-review.googlesource.com/c/chromium/third_party/ffmpeg/+/6172268
    Reviewed-by: Ted (Chromium) Meyer <tmathmeyer@chromium.org>
    Reviewed-by: Thomas Guilbert <tguilbert@chromium.org>
    Reviewed-by: Dale Curtis <dalecurtis@chromium.org>

Affects:
    libavcodec/Makefile

------------------------------------------------------------------
commit dc0b6ad4dd1d4d483fa1704142b6a1f14e6dad33
Author: Frank Liberato <liberato@chromium.org>
Date:   Fri Jan 31 19:02:31 2025 +0000

    Check for `!tts_count` before accessing `tts_data`

Affects:
    libavformat/mov.c

------------------------------------------------------------------
commit cc6ef549b065e0dfc20856f6d32fcba935a98a95
Author: Ted Meyer <tmathmeyer@chromium.org>
Date:   Fri Feb 14 11:06:26 2025 -0800

    Fix Null-dereference READ

    Upstream patch pending:
    https://patchwork.ffmpeg.org/project/ffmpeg/patch/20250213155232.59-1-jamrial@gmail.com

    Bug: 396192874

Affects:
    libavformat/mov.c

------------------------------------------------------------------
commit 6c6759c1598cf7aa4e0328733d36ac4350d5b1c7
Author: Hans-Filip Elo <hans-filip.elo@xperi.com>
Date:   Thu Feb 20 13:00:16 2025 +0100

    Fixes to build ffmpeg

    We are a Chromium integrator, we saw build issues with ffmpeg due to a
    patch not applied correctly in Chromium. This is a weird issue to me.

    Chromium seems to modify ffmpeg. This seem to have lead to a revert not
    being properly applied. Here follows patch order in Chromiums ffmpeg:

    1. Problematic patch that got reverted in ffmpeg [1]
    2. Patching of some nullcheck that's only made in Chromium ffmpeg [2]
    3. The revert of problematic patch in ffmpeg [3]

    This patch order seem to have lead to stray:

        s->sei.common.aom_film_grain->enable

    Being left in hevcdec.c. aom_film_grain does not seem to be a pointer.
    This patch updates any such instances to match with ffmpeg upstream.

    [1]: https://github.com/FFmpeg/FFmpeg/commit/08b1bffa49715a9615acc025dfbea252d8409e1f
    [2]: https://chromium-review.googlesource.com/c/chromium/third_party/ffmpeg/+/5825845
    [3]: https://github.com/FFmpeg/FFmpeg/commit/08b1bffa49715a9615acc025dfbea252d8409e1f

    Change-Id: Ia047bd45625208819d774ad3dbba38b325a0c936
    Reviewed-on: https://chromium-review.googlesource.com/c/chromium/third_party/ffmpeg/+/6286027
    Reviewed-by: Dale Curtis <dalecurtis@chromium.org>
    Reviewed-by: Eugene Zemtsov <eugene@chromium.org>
    Reviewed-by: Thomas Guilbert <tguilbert@chromium.org>

Affects:
    libavcodec/hevc/hevcdec.c

