Skip to content

Instantly share code, notes, and snippets.

@mrchaofan
Created March 6, 2025 07:04
Show Gist options
  • Select an option

  • Save mrchaofan/a1161bc48de3fe07e9e03d5ab63063b8 to your computer and use it in GitHub Desktop.

Select an option

Save mrchaofan/a1161bc48de3fe07e9e03d5ab63063b8 to your computer and use it in GitHub Desktop.
chromium video support
diff --git a/CREDITS.chromium b/CREDITS.chromium
index ccd7f4afa5..26858fae8a 100644
--- a/CREDITS.chromium
+++ b/CREDITS.chromium
@@ -157,28 +157,44 @@ DEALINGS IN THE SOFTWARE.
********************************************************************************
-libavutil/x86/x86inc.asm
-
-x86inc.asm: x86 abstraction layer
-
- Copyright (C) 2005-2024 x264 project
-
- Authors: Loren Merritt <lorenm@u.washington.edu>
- Henrik Gramner <henrik@gramner.com>
- Anton Mitrofanov <BugMaster@narod.ru>
- Fiona Glaser <fiona@x264.com>
-
- Permission to use, copy, modify, and/or distribute this software for any
- purpose with or without fee is hereby granted, provided that the above
- copyright notice and this permission notice appear in all copies.
-
- THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
- WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
- MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
- ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
- WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
- ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
- OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
+libavcodec/jrevdct.c
+
+This file is part of the Independent JPEG Group's software.
+
+The authors make NO WARRANTY or representation, either express or implied,
+with respect to this software, its quality, accuracy, merchantability, or
+fitness for a particular purpose. This software is provided "AS IS", and
+you, its user, assume the entire risk as to its quality and accuracy.
+
+This software is copyright (C) 1994-1996, Thomas G. Lane.
+All Rights Reserved except as specified below.
+
+Permission is hereby granted to use, copy, modify, and distribute this
+software (or portions thereof) for any purpose, without fee, subject to
+these conditions:
+(1) If any part of the source code for this software is distributed, then
+this README file must be included, with this copyright and no-warranty
+notice unaltered; and any additions, deletions, or changes to the original
+files must be clearly indicated in accompanying documentation.
+(2) If only executable code is distributed, then the accompanying
+documentation must state that "this software is based in part on the work
+of the Independent JPEG Group".
+(3) Permission for use of this software is granted only if the user accepts
+full responsibility for any undesirable consequences; the authors accept
+NO LIABILITY for damages of any kind.
+
+These conditions apply to any software derived from or based on the IJG
+code, not just to the unmodified library. If you use our work, you ought
+to acknowledge us.
+
+Permission is NOT granted for the use of any IJG author's name or company
+name in advertising or publicity relating to this software or products
+derived from it. This software may be referred to only as "the Independent
+JPEG Group's software".
+
+We specifically permit and encourage the use of this software as the basis
+of commercial products, provided that all warranty or liability claims are
+assumed by the product vendor.
********************************************************************************
diff --git a/chromium/config/Chromium/mac/arm64/config.h b/chromium/config/Chromium/mac/arm64/config.h
index 9eeb65d015..5f478379f5 100644
--- a/chromium/config/Chromium/mac/arm64/config.h
+++ b/chromium/config/Chromium/mac/arm64/config.h
@@ -1,12 +1,12 @@
/* Automatically generated by configure - do not modify! */
#ifndef FFMPEG_CONFIG_H
#define FFMPEG_CONFIG_H
-/* #define FFMPEG_CONFIGURATION "--disable-everything --disable-all --disable-doc --disable-htmlpages --disable-manpages --disable-podpages --disable-txtpages --disable-static --enable-avcodec --enable-avformat --enable-avutil --enable-static --enable-libopus --disable-debug --disable-bzlib --disable-error-resilience --disable-iconv --disable-network --disable-schannel --disable-sdl2 --disable-symver --disable-xlib --disable-zlib --disable-securetransport --disable-faan --disable-alsa --disable-iamf --disable-autodetect --enable-decoder='vorbis,libopus,flac' --enable-decoder='pcm_u8,pcm_s16le,pcm_s24le,pcm_s32le,pcm_f32le,mp3' --enable-decoder='pcm_s16be,pcm_s24be,pcm_mulaw,pcm_alaw' --enable-demuxer='ogg,matroska,wav,flac,mp3,mov' --enable-parser='opus,vorbis,flac,mpegaudio,vp9' --extra-cflags=-I/usr/local/google/home/dalecurtis/code/chrome/src/third_party/opus/src/include --disable-linux-perf --x86asmexe=nasm --optflags='\"-O2\"' --enable-pic --cc=clang --cxx=clang++ --ld=clang --enable-cross-compile --cc=clang --ld=ld64.lld --nm=llvm-nm --ar=llvm-ar --target-os=darwin --extra-cflags='--target=arm64-apple-macosx' --extra-cflags=-F/usr/local/google/home/dalecurtis/code/chrome/src/build/mac_files/xcode_binaries/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks --extra-cflags='-mmacosx-version-min=10.10' --extra-cflags=-fblocks --extra-cflags=-nostdinc --extra-cflags=-isystem/usr/local/google/home/dalecurtis/code/chrome/src/build/mac_files/xcode_binaries/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/usr/include --extra-cflags=-isystem/usr/local/google/home/dalecurtis/code/chrome/src/third_party/llvm-build/Release+Asserts/lib/clang/19/include --extra-ldflags=-syslibroot --extra-ldflags=/usr/local/google/home/dalecurtis/code/chrome/src/build/mac_files/xcode_binaries/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk --extra-ldflags=-L/usr/local/google/home/dalecurtis/code/chrome/src/build/mac_files/xcode_binaries/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/usr/lib --extra-ldflags=-lSystem --extra-ldflags=-macosx_version_min --extra-ldflags=10.10 --extra-ldflags=-sdk_version --extra-ldflags=10.10 --extra-ldflags=-platform_version --extra-ldflags=macos --extra-ldflags=10.10 --extra-ldflags=10.10 --arch=arm64 --extra-cflags='-arch arm64' --extra-ldflags='-arch arm64'" -- elide long configuration string from binary */
-#define FFMPEG_LICENSE "LGPL version 2.1 or later"
+/* #define FFMPEG_CONFIGURATION "--disable-everything --disable-all --disable-doc --disable-htmlpages --disable-manpages --disable-podpages --disable-txtpages --disable-static --enable-avcodec --enable-avformat --enable-avutil --enable-static --enable-libopus --disable-debug --disable-bzlib --disable-iconv --disable-network --disable-schannel --disable-sdl2 --disable-symver --disable-xlib --disable-zlib --disable-securetransport --disable-faan --disable-alsa --disable-iamf --disable-autodetect --enable-decoder='aac,h264' --enable-demuxer=aac --enable-parser='aac,h264' --enable-decoder=mpeg4 --enable-gpl --enable-demuxer=avi --enable-decoder='vorbis,libopus,flac' --enable-decoder='pcm_u8,pcm_s16le,pcm_s24le,pcm_s32le,pcm_f32le,mp3' --enable-decoder='pcm_s16be,pcm_s24be,pcm_mulaw,pcm_alaw' --enable-demuxer='ogg,matroska,wav,flac,mp3,mov' --enable-parser='opus,vorbis,flac,mpegaudio,vp9' --extra-cflags=-I/Users/liu/Desktop/chromium/src/third_party/opus/src/include --disable-linux-perf --x86asmexe=nasm --optflags='\0-O2\0' --enable-pic --cc=clang --cxx=clang++ --ld=clang --extra-ldflags='-Wl,-flat_namespace -Wl,-undefined,warning' --arch=arm64 --extra-cflags='-arch arm64' --extra-ldflags='-arch arm64'" -- elide long configuration string from binary */
+#define FFMPEG_LICENSE "GPL version 2 or later"
#define CONFIG_THIS_YEAR 2024
#define FFMPEG_DATADIR "/usr/local/share/ffmpeg"
#define AVCONV_DATADIR "/usr/local/share/ffmpeg"
-#define CC_IDENT "clang version 19.0.0git (https://chromium.googlesource.com/a/external/github.com/llvm/llvm-project 084e2b53d22c11e013b0a495b65d39aa7f934048)"
+#define CC_IDENT "clang version 19.0.0git (https://chromium.googlesource.com/a/external/github.com/llvm/llvm-project ecea8371ff03c15fb3dc27ee4108b98335fd2d63)"
#define OS_NAME darwin
#define EXTERN_PREFIX "_"
#define EXTERN_ASM _
@@ -300,7 +300,7 @@
#define HAVE_ACCESS 1
#define HAVE_ALIGNED_MALLOC 0
#define HAVE_ARC4RANDOM_BUF 1
-#define HAVE_CLOCK_GETTIME 0
+#define HAVE_CLOCK_GETTIME 1
#define HAVE_CLOSESOCKET 0
#define HAVE_COMMANDLINETOARGVW 0
#define HAVE_FCNTL 1
@@ -382,7 +382,7 @@
#define HAVE_INLINE_ASM_NONLOCAL_LABELS 1
#define HAVE_PRAGMA_DEPRECATED 1
#define HAVE_RSYNC_CONTIMEOUT 1
-#define HAVE_SYMVER_ASM_LABEL 0
+#define HAVE_SYMVER_ASM_LABEL 1
#define HAVE_SYMVER_GNU_ASM 0
/* #define HAVE_VFP_ARGS 0 -- softfp/hardfp selection is done by the chrome build */
#define HAVE_XFORM_ASM 0
@@ -628,7 +628,7 @@
#define CONFIG_SMALL 0
#define CONFIG_STATIC 1
#define CONFIG_SWSCALE_ALPHA 1
-#define CONFIG_GPL 0
+#define CONFIG_GPL 1
#define CONFIG_NONFREE 0
#define CONFIG_VERSION3 0
#define CONFIG_AVDEVICE 0
@@ -643,7 +643,7 @@
#define CONFIG_FFPROBE 0
#define CONFIG_FFMPEG 0
#define CONFIG_DWT 0
-#define CONFIG_ERROR_RESILIENCE 0
+#define CONFIG_ERROR_RESILIENCE 1
#define CONFIG_FAAN 0
#define CONFIG_FAST_UNALIGNED 1
#define CONFIG_IAMF 0
@@ -676,13 +676,13 @@
#define CONFIG_PROTOCOLS 0
#define CONFIG_AANDCTTABLES 0
#define CONFIG_AC3DSP 0
-#define CONFIG_ADTS_HEADER 0
-#define CONFIG_ATSC_A53 0
+#define CONFIG_ADTS_HEADER 1
+#define CONFIG_ATSC_A53 1
#define CONFIG_AUDIO_FRAME_QUEUE 0
#define CONFIG_AUDIODSP 0
-#define CONFIG_BLOCKDSP 0
+#define CONFIG_BLOCKDSP 1
#define CONFIG_BSWAPDSP 0
-#define CONFIG_CABAC 0
+#define CONFIG_CABAC 1
#define CONFIG_CBS 0
#define CONFIG_CBS_AV1 0
#define CONFIG_CBS_H264 0
@@ -699,7 +699,7 @@
#define CONFIG_DOVI_RPUENC 0
#define CONFIG_DVPROFILE 0
#define CONFIG_EVCPARSE 0
-#define CONFIG_EXIF 0
+#define CONFIG_EXIF 1
#define CONFIG_FAANDCT 0
#define CONFIG_FAANIDCT 0
#define CONFIG_FDCTDSP 0
@@ -708,22 +708,22 @@
#define CONFIG_G722DSP 0
#define CONFIG_GOLOMB 1
#define CONFIG_GPLV3 0
-#define CONFIG_H263DSP 0
-#define CONFIG_H264CHROMA 0
-#define CONFIG_H264DSP 0
-#define CONFIG_H264PARSE 0
-#define CONFIG_H264PRED 0
-#define CONFIG_H264QPEL 0
-#define CONFIG_H264_SEI 0
+#define CONFIG_H263DSP 1
+#define CONFIG_H264CHROMA 1
+#define CONFIG_H264DSP 1
+#define CONFIG_H264PARSE 1
+#define CONFIG_H264PRED 1
+#define CONFIG_H264QPEL 1
+#define CONFIG_H264_SEI 1
#define CONFIG_HEVCPARSE 0
#define CONFIG_HEVC_SEI 0
-#define CONFIG_HPELDSP 0
+#define CONFIG_HPELDSP 1
#define CONFIG_HUFFMAN 0
#define CONFIG_HUFFYUVDSP 0
#define CONFIG_HUFFYUVENCDSP 0
#define CONFIG_IAMFDEC 0
#define CONFIG_IAMFENC 0
-#define CONFIG_IDCTDSP 0
+#define CONFIG_IDCTDSP 1
#define CONFIG_IIRFILTER 0
#define CONFIG_INFLATE_WRAPPER 0
#define CONFIG_INTRAX8 0
@@ -739,20 +739,20 @@
#define CONFIG_LLVIDENCDSP 0
#define CONFIG_LPC 0
#define CONFIG_LZF 0
-#define CONFIG_ME_CMP 0
-#define CONFIG_MPEG_ER 0
+#define CONFIG_ME_CMP 1
+#define CONFIG_MPEG_ER 1
#define CONFIG_MPEGAUDIO 1
#define CONFIG_MPEGAUDIODSP 1
#define CONFIG_MPEGAUDIOHEADER 1
#define CONFIG_MPEG4AUDIO 1
-#define CONFIG_MPEGVIDEO 0
-#define CONFIG_MPEGVIDEODEC 0
+#define CONFIG_MPEGVIDEO 1
+#define CONFIG_MPEGVIDEODEC 1
#define CONFIG_MPEGVIDEOENC 0
#define CONFIG_MSMPEG4DEC 0
#define CONFIG_MSMPEG4ENC 0
#define CONFIG_MSS34DSP 0
#define CONFIG_PIXBLOCKDSP 0
-#define CONFIG_QPELDSP 0
+#define CONFIG_QPELDSP 1
#define CONFIG_QSV 0
#define CONFIG_QSVDEC 0
#define CONFIG_QSVENC 0
@@ -764,17 +764,17 @@
#define CONFIG_RTPENC_CHAIN 0
#define CONFIG_RV34DSP 0
#define CONFIG_SCENE_SAD 0
-#define CONFIG_SINEWIN 0
+#define CONFIG_SINEWIN 1
#define CONFIG_SNAPPY 0
#define CONFIG_SRTP 0
-#define CONFIG_STARTCODE 0
+#define CONFIG_STARTCODE 1
#define CONFIG_TEXTUREDSP 0
#define CONFIG_TEXTUREDSPENC 0
#define CONFIG_TPELDSP 0
#define CONFIG_VAAPI_1 0
#define CONFIG_VAAPI_ENCODE 0
#define CONFIG_VC1DSP 0
-#define CONFIG_VIDEODSP 0
+#define CONFIG_VIDEODSP 1
#define CONFIG_VP3DSP 0
#define CONFIG_VP56DSP 0
#define CONFIG_VP8DSP 0
diff --git a/chromium/config/Chromium/mac/arm64/config_components.h b/chromium/config/Chromium/mac/arm64/config_components.h
index 9b4b898861..640a21e169 100644
--- a/chromium/config/Chromium/mac/arm64/config_components.h
+++ b/chromium/config/Chromium/mac/arm64/config_components.h
@@ -124,11 +124,11 @@
#define CONFIG_GEM_DECODER 0
#define CONFIG_GIF_DECODER 0
#define CONFIG_H261_DECODER 0
-#define CONFIG_H263_DECODER 0
+#define CONFIG_H263_DECODER 1
#define CONFIG_H263I_DECODER 0
#define CONFIG_H263P_DECODER 0
#define CONFIG_H263_V4L2M2M_DECODER 0
-#define CONFIG_H264_DECODER 0
+#define CONFIG_H264_DECODER 1
#define CONFIG_H264_V4L2M2M_DECODER 0
#define CONFIG_H264_MEDIACODEC_DECODER 0
#define CONFIG_H264_MMAL_DECODER 0
@@ -175,7 +175,7 @@
#define CONFIG_MOTIONPIXELS_DECODER 0
#define CONFIG_MPEG1VIDEO_DECODER 0
#define CONFIG_MPEG2VIDEO_DECODER 0
-#define CONFIG_MPEG4_DECODER 0
+#define CONFIG_MPEG4_DECODER 1
#define CONFIG_MPEG4_V4L2M2M_DECODER 0
#define CONFIG_MPEG4_MMAL_DECODER 0
#define CONFIG_MPEGVIDEO_DECODER 0
@@ -335,7 +335,7 @@
#define CONFIG_ZEROCODEC_DECODER 0
#define CONFIG_ZLIB_DECODER 0
#define CONFIG_ZMBV_DECODER 0
-#define CONFIG_AAC_DECODER 0
+#define CONFIG_AAC_DECODER 1
#define CONFIG_AAC_FIXED_DECODER 0
#define CONFIG_AAC_LATM_DECODER 0
#define CONFIG_AC3_DECODER 0
@@ -951,7 +951,7 @@
#define CONFIG_WMV3_NVDEC_HWACCEL 0
#define CONFIG_WMV3_VAAPI_HWACCEL 0
#define CONFIG_WMV3_VDPAU_HWACCEL 0
-#define CONFIG_AAC_PARSER 0
+#define CONFIG_AAC_PARSER 1
#define CONFIG_AAC_LATM_PARSER 0
#define CONFIG_AC3_PARSER 0
#define CONFIG_ADX_PARSER 0
@@ -980,8 +980,8 @@
#define CONFIG_GIF_PARSER 0
#define CONFIG_GSM_PARSER 0
#define CONFIG_H261_PARSER 0
-#define CONFIG_H263_PARSER 0
-#define CONFIG_H264_PARSER 0
+#define CONFIG_H263_PARSER 1
+#define CONFIG_H264_PARSER 1
#define CONFIG_HEVC_PARSER 0
#define CONFIG_HDR_PARSER 0
#define CONFIG_IPU_PARSER 0
@@ -990,7 +990,7 @@
#define CONFIG_MISC4_PARSER 0
#define CONFIG_MJPEG_PARSER 0
#define CONFIG_MLP_PARSER 0
-#define CONFIG_MPEG4VIDEO_PARSER 0
+#define CONFIG_MPEG4VIDEO_PARSER 1
#define CONFIG_MPEGAUDIO_PARSER 1
#define CONFIG_MPEGVIDEO_PARSER 0
#define CONFIG_OPUS_PARSER 1
@@ -1619,7 +1619,7 @@
#define CONFIG_AMOVIE_FILTER 0
#define CONFIG_MOVIE_FILTER 0
#define CONFIG_AA_DEMUXER 0
-#define CONFIG_AAC_DEMUXER 0
+#define CONFIG_AAC_DEMUXER 1
#define CONFIG_AAX_DEMUXER 0
#define CONFIG_AC3_DEMUXER 0
#define CONFIG_AC4_DEMUXER 0
@@ -1656,7 +1656,7 @@
#define CONFIG_AST_DEMUXER 0
#define CONFIG_AU_DEMUXER 0
#define CONFIG_AV1_DEMUXER 0
-#define CONFIG_AVI_DEMUXER 0
+#define CONFIG_AVI_DEMUXER 1
#define CONFIG_AVISYNTH_DEMUXER 0
#define CONFIG_AVR_DEMUXER 0
#define CONFIG_AVS_DEMUXER 0
diff --git a/chromium/config/Chromium/mac/arm64/libavcodec/codec_list.c b/chromium/config/Chromium/mac/arm64/libavcodec/codec_list.c
index 7d9debfe61..e8fc04dfd5 100644
--- a/chromium/config/Chromium/mac/arm64/libavcodec/codec_list.c
+++ b/chromium/config/Chromium/mac/arm64/libavcodec/codec_list.c
@@ -1,4 +1,7 @@
static const FFCodec * const codec_list[] = {
+ &ff_mpeg4_decoder,
+ &ff_h263_decoder,
+ &ff_aac_decoder,
&ff_flac_decoder,
&ff_mp3_decoder,
&ff_vorbis_decoder,
diff --git a/chromium/config/Chromium/mac/arm64/libavcodec/parser_list.c b/chromium/config/Chromium/mac/arm64/libavcodec/parser_list.c
index fdc533b38f..a4f7cfe9a1 100644
--- a/chromium/config/Chromium/mac/arm64/libavcodec/parser_list.c
+++ b/chromium/config/Chromium/mac/arm64/libavcodec/parser_list.c
@@ -1,5 +1,8 @@
static const AVCodecParser * const parser_list[] = {
+ &ff_h263_parser,
+ &ff_aac_parser,
&ff_flac_parser,
+ &ff_h264_parser,
&ff_mpegaudio_parser,
&ff_opus_parser,
&ff_vorbis_parser,
diff --git a/chromium/config/Chromium/mac/arm64/libavformat/demuxer_list.c b/chromium/config/Chromium/mac/arm64/libavformat/demuxer_list.c
index 570a6441d3..e5a5b8880e 100644
--- a/chromium/config/Chromium/mac/arm64/libavformat/demuxer_list.c
+++ b/chromium/config/Chromium/mac/arm64/libavformat/demuxer_list.c
@@ -5,4 +5,5 @@ static const FFInputFormat * const demuxer_list[] = {
&ff_mp3_demuxer,
&ff_ogg_demuxer,
&ff_wav_demuxer,
+ &ff_avi_demuxer,
NULL };
diff --git a/ffmpeg_generated.gni b/ffmpeg_generated.gni
index 37155be221..4aae5241aa 100644
--- a/ffmpeg_generated.gni
+++ b/ffmpeg_generated.gni
@@ -1,8 +1,8 @@
-# Copyright 2024 The Chromium Authors. All rights reserved.
+# Copyright 2025 The Chromium Authors. All rights reserved.
# Use of this source code is governed by a BSD-style license that can be
# found in the LICENSE file.
-# NOTE: this file is autogenerated by ffmpeg/chromium/scripts/generate_gn.py
+# NOTE: this file is autogenerated by media/ffmpeg/scripts/generate_gn.py
import("//build/config/arm.gni")
import("ffmpeg_options.gni")
@@ -14,24 +14,46 @@ ffmpeg_asm_sources = []
use_linux_config = is_linux || is_chromeos || is_fuchsia
-if (current_cpu == "arm64" || current_cpu == "x64" ||
- (is_android && current_cpu == "arm" && arm_use_neon) ||
- (is_android && current_cpu == "x86") || is_apple || is_win ||
- use_linux_config) {
+if (is_apple && current_cpu == "arm64") {
ffmpeg_c_sources += [
+ "libavcodec/aac/aacdec.c",
+ "libavcodec/aac/aacdec_float.c",
+ "libavcodec/aac/aacdec_tab.c",
+ "libavcodec/aac_ac3_parser.c",
+ "libavcodec/aac_parser.c",
+ "libavcodec/aacps_common.c",
+ "libavcodec/aacps_float.c",
+ "libavcodec/aacpsdsp_float.c",
+ "libavcodec/aacsbr.c",
+ "libavcodec/aactab.c",
+ "libavcodec/aarch64/aacpsdsp_init_aarch64.c",
+ "libavcodec/aarch64/h264chroma_init_aarch64.c",
+ "libavcodec/aarch64/h264dsp_init_aarch64.c",
+ "libavcodec/aarch64/h264pred_init.c",
+ "libavcodec/aarch64/h264qpel_init_aarch64.c",
+ "libavcodec/aarch64/hpeldsp_init_aarch64.c",
+ "libavcodec/aarch64/idctdsp_init_aarch64.c",
+ "libavcodec/aarch64/me_cmp_init_aarch64.c",
+ "libavcodec/aarch64/mpegaudiodsp_init.c",
+ "libavcodec/aarch64/sbrdsp_init_aarch64.c",
+ "libavcodec/aarch64/videodsp_init.c",
+ "libavcodec/aarch64/vorbisdsp_init.c",
"libavcodec/ac3_channel_layout_tab.c",
"libavcodec/ac3_parser.c",
+ "libavcodec/adts_header.c",
"libavcodec/adts_parser.c",
"libavcodec/allcodecs.c",
- "libavcodec/autorename_libavcodec_flacdsp.c",
- "libavcodec/autorename_libavcodec_mpegaudiodsp.c",
- "libavcodec/autorename_libavcodec_vorbisdsp.c",
+ "libavcodec/atsc_a53.c",
+ "libavcodec/autorename_libavcodec_videodsp.c",
"libavcodec/avcodec.c",
"libavcodec/avdct.c",
"libavcodec/avfft.c",
"libavcodec/bitstream.c",
"libavcodec/bitstream_filters.c",
+ "libavcodec/blockdsp.c",
"libavcodec/bsf.c",
+ "libavcodec/cabac.c",
+ "libavcodec/cbrt_data.c",
"libavcodec/codec_desc.c",
"libavcodec/codec_par.c",
"libavcodec/d3d11va.c",
@@ -41,31 +63,82 @@ if (current_cpu == "arm64" || current_cpu == "x64" ||
"libavcodec/dirac.c",
"libavcodec/dv_profile.c",
"libavcodec/encode.c",
+ "libavcodec/error_resilience.c",
+ "libavcodec/exif.c",
"libavcodec/flac.c",
"libavcodec/flac_parser.c",
"libavcodec/flacdata.c",
"libavcodec/flacdec.c",
+ "libavcodec/flacdsp.c",
"libavcodec/get_buffer.c",
"libavcodec/golomb.c",
+ "libavcodec/h263.c",
+ "libavcodec/h263_parser.c",
+ "libavcodec/h263data.c",
+ "libavcodec/h263dec.c",
+ "libavcodec/h263dsp.c",
+ "libavcodec/h2645_parse.c",
+ "libavcodec/h2645_sei.c",
+ "libavcodec/h2645_vui.c",
+ "libavcodec/h2645data.c",
+ "libavcodec/h264_cabac.c",
+ "libavcodec/h264_cavlc.c",
+ "libavcodec/h264_direct.c",
+ "libavcodec/h264_loopfilter.c",
+ "libavcodec/h264_mb.c",
+ "libavcodec/h264_parse.c",
+ "libavcodec/h264_parser.c",
+ "libavcodec/h264_picture.c",
+ "libavcodec/h264_ps.c",
+ "libavcodec/h264_refs.c",
+ "libavcodec/h264_sei.c",
+ "libavcodec/h264_slice.c",
+ "libavcodec/h264chroma.c",
+ "libavcodec/h264data.c",
+ "libavcodec/h264dec.c",
+ "libavcodec/h264dsp.c",
+ "libavcodec/h264idct.c",
+ "libavcodec/h264pred.c",
+ "libavcodec/h264qpel.c",
+ "libavcodec/h274.c",
+ "libavcodec/hpeldsp.c",
+ "libavcodec/idctdsp.c",
"libavcodec/imgconvert.c",
+ "libavcodec/ituh263dec.c",
"libavcodec/jni.c",
+ "libavcodec/jrevdct.c",
+ "libavcodec/kbdwin.c",
"libavcodec/libopus.c",
"libavcodec/libopusdec.c",
"libavcodec/mathtables.c",
+ "libavcodec/me_cmp.c",
"libavcodec/mediacodec.c",
"libavcodec/mpeg12framerate.c",
"libavcodec/mpeg4audio.c",
"libavcodec/mpeg4audio_sample_rates.c",
+ "libavcodec/mpeg4video.c",
+ "libavcodec/mpeg4video_parser.c",
+ "libavcodec/mpeg4videodec.c",
+ "libavcodec/mpeg4videodsp.c",
+ "libavcodec/mpeg_er.c",
"libavcodec/mpegaudio.c",
"libavcodec/mpegaudio_parser.c",
"libavcodec/mpegaudiodata.c",
"libavcodec/mpegaudiodec_common.c",
"libavcodec/mpegaudiodec_fixed.c",
"libavcodec/mpegaudiodecheader.c",
+ "libavcodec/mpegaudiodsp.c",
"libavcodec/mpegaudiodsp_data.c",
"libavcodec/mpegaudiodsp_fixed.c",
"libavcodec/mpegaudiodsp_float.c",
"libavcodec/mpegaudiotabs.c",
+ "libavcodec/mpegpicture.c",
+ "libavcodec/mpegutils.c",
+ "libavcodec/mpegvideo.c",
+ "libavcodec/mpegvideo_dec.c",
+ "libavcodec/mpegvideo_motion.c",
+ "libavcodec/mpegvideodata.c",
+ "libavcodec/neon/autorename_libavcodec_neon_mpegvideo.c",
"libavcodec/options.c",
"libavcodec/opus_parse.c",
"libavcodec/opus_parser.c",
@@ -77,10 +150,17 @@ if (current_cpu == "arm64" || current_cpu == "x64" ||
"libavcodec/pthread.c",
"libavcodec/pthread_frame.c",
"libavcodec/pthread_slice.c",
+ "libavcodec/qpeldsp.c",
"libavcodec/qsv_api.c",
"libavcodec/raw.c",
"libavcodec/refstruct.c",
+ "libavcodec/rl.c",
+ "libavcodec/sbrdsp.c",
+ "libavcodec/simple_idct.c",
+ "libavcodec/sinewin.c",
+ "libavcodec/startcode.c",
"libavcodec/threadprogress.c",
+ "libavcodec/tiff_common.c",
"libavcodec/to_upper4.c",
"libavcodec/utils.c",
"libavcodec/version.c",
@@ -89,15 +169,20 @@ if (current_cpu == "arm64" || current_cpu == "x64" ||
"libavcodec/vorbis_data.c",
"libavcodec/vorbis_parser.c",
"libavcodec/vorbisdec.c",
+ "libavcodec/vorbisdsp.c",
"libavcodec/vp9_parser.c",
"libavcodec/xiph.c",
+ "libavcodec/xvididct.c",
"libavformat/allformats.c",
+ "libavformat/apetag.c",
+ "libavformat/autorename_libavformat_aacdec.c",
"libavformat/autorename_libavformat_flacdec.c",
"libavformat/autorename_libavformat_options.c",
"libavformat/autorename_libavformat_pcm.c",
"libavformat/autorename_libavformat_utils.c",
"libavformat/autorename_libavformat_version.c",
"libavformat/avformat.c",
+ "libavformat/avidec.c",
"libavformat/avio.c",
"libavformat/aviobuf.c",
"libavformat/demux.c",
@@ -109,6 +194,7 @@ if (current_cpu == "arm64" || current_cpu == "x64" ||
"libavformat/format.c",
"libavformat/id3v1.c",
"libavformat/id3v2.c",
+ "libavformat/img2.c",
"libavformat/isom.c",
"libavformat/isom_tags.c",
"libavformat/matroska.c",
@@ -140,14 +226,13 @@ if (current_cpu == "arm64" || current_cpu == "x64" ||
"libavformat/url.c",
"libavformat/vorbiscomment.c",
"libavformat/wavdec.c",
+ "libavutil/aarch64/cpu.c",
+ "libavutil/aarch64/float_dsp_init.c",
+ "libavutil/aarch64/tx_float_init.c",
"libavutil/aes.c",
"libavutil/aes_ctr.c",
"libavutil/ambient_viewing_environment.c",
"libavutil/autorename_libavutil_cpu.c",
- "libavutil/autorename_libavutil_fixed_dsp.c",
- "libavutil/autorename_libavutil_float_dsp.c",
- "libavutil/autorename_libavutil_imgutils.c",
- "libavutil/autorename_libavutil_tx_float.c",
"libavutil/autorename_libavutil_utils.c",
"libavutil/autorename_libavutil_version.c",
"libavutil/avstring.c",
@@ -170,12 +255,15 @@ if (current_cpu == "arm64" || current_cpu == "x64" ||
"libavutil/fifo.c",
"libavutil/file_open.c",
"libavutil/film_grain_params.c",
+ "libavutil/fixed_dsp.c",
+ "libavutil/float_dsp.c",
"libavutil/frame.c",
"libavutil/hdr_dynamic_metadata.c",
"libavutil/hdr_dynamic_vivid_metadata.c",
"libavutil/hwcontext.c",
"libavutil/hwcontext_stub.c",
"libavutil/iamf.c",
+ "libavutil/imgutils.c",
"libavutil/integer.c",
"libavutil/intmath.c",
"libavutil/lfg.c",
@@ -205,290 +293,27 @@ if (current_cpu == "arm64" || current_cpu == "x64" ||
"libavutil/timestamp.c",
"libavutil/twofish.c",
"libavutil/tx.c",
+ "libavutil/tx_float.c",
"libavutil/uuid.c",
"libavutil/video_enc_params.c",
"libavutil/video_hint.c",
]
-}
-
-if ((is_apple && ffmpeg_branding == "Chrome") ||
- (is_win && ffmpeg_branding == "Chrome") ||
- (use_linux_config && ffmpeg_branding == "Chrome")) {
- ffmpeg_c_sources += [
- "libavcodec/atsc_a53.c",
- "libavcodec/autorename_libavcodec_videodsp.c",
- "libavcodec/cabac.c",
- "libavcodec/h2645_parse.c",
- "libavcodec/h2645_sei.c",
- "libavcodec/h2645_vui.c",
- "libavcodec/h2645data.c",
- "libavcodec/h264_cabac.c",
- "libavcodec/h264_cavlc.c",
- "libavcodec/h264_direct.c",
- "libavcodec/h264_loopfilter.c",
- "libavcodec/h264_mb.c",
- "libavcodec/h264_parse.c",
- "libavcodec/h264_parser.c",
- "libavcodec/h264_picture.c",
- "libavcodec/h264_ps.c",
- "libavcodec/h264_refs.c",
- "libavcodec/h264_sei.c",
- "libavcodec/h264_slice.c",
- "libavcodec/h264chroma.c",
- "libavcodec/h264data.c",
- "libavcodec/h264dec.c",
- "libavcodec/h264dsp.c",
- "libavcodec/h264idct.c",
- "libavcodec/h264pred.c",
- "libavcodec/h264qpel.c",
- "libavcodec/h274.c",
- "libavcodec/startcode.c",
- ]
-}
-
-if ((is_apple && current_cpu == "x64" && ffmpeg_branding == "Chrome") ||
- (is_win && current_cpu == "x64" && ffmpeg_branding == "Chrome") ||
- (is_win && current_cpu == "x86" && ffmpeg_branding == "Chrome") ||
- (use_linux_config && current_cpu == "x64" && ffmpeg_branding == "Chrome") ||
- (use_linux_config && current_cpu == "x86" && ffmpeg_branding == "Chrome")) {
- ffmpeg_c_sources += [
- "libavcodec/x86/autorename_libavcodec_x86_videodsp_init.c",
- "libavcodec/x86/h264_intrapred_init.c",
- "libavcodec/x86/h264_qpel.c",
- "libavcodec/x86/h264chroma_init.c",
- "libavcodec/x86/h264dsp_init.c",
- ]
- ffmpeg_asm_sources += [
- "libavcodec/x86/autorename_libavcodec_x86_videodsp.asm",
- "libavcodec/x86/fpel.asm",
- "libavcodec/x86/h264_chromamc.asm",
- "libavcodec/x86/h264_chromamc_10bit.asm",
- "libavcodec/x86/h264_deblock.asm",
- "libavcodec/x86/h264_deblock_10bit.asm",
- "libavcodec/x86/h264_idct.asm",
- "libavcodec/x86/h264_idct_10bit.asm",
- "libavcodec/x86/h264_intrapred.asm",
- "libavcodec/x86/h264_intrapred_10bit.asm",
- "libavcodec/x86/h264_qpel_10bit.asm",
- "libavcodec/x86/h264_qpel_8bit.asm",
- "libavcodec/x86/h264_weight.asm",
- "libavcodec/x86/h264_weight_10bit.asm",
- "libavcodec/x86/qpel.asm",
- ]
-}
-
-if ((current_cpu == "arm64" && ffmpeg_branding == "Chrome") ||
- (current_cpu == "x64" && ffmpeg_branding == "Chrome") ||
- (is_android && current_cpu == "arm" && arm_use_neon &&
- ffmpeg_branding == "Chrome") ||
- (is_android && current_cpu == "x86" && ffmpeg_branding == "Chrome") ||
- (is_apple && ffmpeg_branding == "Chrome") ||
- (is_win && ffmpeg_branding == "Chrome") ||
- (use_linux_config && ffmpeg_branding == "Chrome")) {
- ffmpeg_c_sources += [
- "libavcodec/aac/aacdec.c",
- "libavcodec/aac/aacdec_float.c",
- "libavcodec/aac/aacdec_tab.c",
- "libavcodec/aac_ac3_parser.c",
- "libavcodec/aac_parser.c",
- "libavcodec/aacps_common.c",
- "libavcodec/aacps_float.c",
- "libavcodec/aacpsdsp_float.c",
- "libavcodec/aacsbr.c",
- "libavcodec/aactab.c",
- "libavcodec/adts_header.c",
- "libavcodec/autorename_libavcodec_sbrdsp.c",
- "libavcodec/cbrt_data.c",
- "libavcodec/kbdwin.c",
- "libavcodec/sinewin.c",
- "libavformat/apetag.c",
- "libavformat/autorename_libavformat_aacdec.c",
- "libavformat/img2.c",
- ]
-}
-
-if ((is_apple && current_cpu == "arm64" && ffmpeg_branding == "Chrome") ||
- (is_win && current_cpu == "arm64" && ffmpeg_branding == "Chrome") ||
- (use_linux_config && current_cpu == "arm64" &&
- ffmpeg_branding == "Chrome")) {
- ffmpeg_c_sources += [
- "libavcodec/aarch64/h264chroma_init_aarch64.c",
- "libavcodec/aarch64/h264dsp_init_aarch64.c",
- "libavcodec/aarch64/h264pred_init.c",
- "libavcodec/aarch64/h264qpel_init_aarch64.c",
- "libavcodec/aarch64/videodsp_init.c",
- ]
- ffmpeg_gas_sources += [
- "libavcodec/aarch64/autorename_libavcodec_aarch64_h264cmc_neon.S",
- "libavcodec/aarch64/autorename_libavcodec_aarch64_h264dsp_neon.S",
- "libavcodec/aarch64/autorename_libavcodec_aarch64_h264idct_neon.S",
- "libavcodec/aarch64/autorename_libavcodec_aarch64_h264pred_neon.S",
- "libavcodec/aarch64/autorename_libavcodec_aarch64_h264qpel_neon.S",
- "libavcodec/aarch64/autorename_libavcodec_aarch64_hpeldsp_neon.S",
- "libavcodec/aarch64/videodsp.S",
- ]
-}
-
-if (current_cpu == "x64" || (is_win && current_cpu == "x86") ||
- (use_linux_config && current_cpu == "x86")) {
- ffmpeg_c_sources +=
- [ "libavutil/x86/autorename_libavutil_x86_tx_float_init.c" ]
- ffmpeg_asm_sources += [
- "libavcodec/x86/dct32.asm",
- "libavcodec/x86/flacdsp.asm",
- "libavcodec/x86/imdct36.asm",
- "libavcodec/x86/vorbisdsp.asm",
- "libavutil/x86/cpuid.asm",
- "libavutil/x86/fixed_dsp.asm",
- "libavutil/x86/float_dsp.asm",
- "libavutil/x86/imgutils.asm",
- "libavutil/x86/lls.asm",
- "libavutil/x86/tx_float.asm",
- ]
-}
-
-if (current_cpu == "x64" || (is_android && current_cpu == "x86") ||
- (is_win && current_cpu == "x86") ||
- (use_linux_config && current_cpu == "x86")) {
- ffmpeg_c_sources += [
- "libavcodec/x86/autorename_libavcodec_x86_vorbisdsp_init.c",
- "libavcodec/x86/constants.c",
- "libavcodec/x86/flacdsp_init.c",
- "libavcodec/x86/mpegaudiodsp.c",
- "libavutil/x86/autorename_libavutil_x86_cpu.c",
- "libavutil/x86/autorename_libavutil_x86_float_dsp_init.c",
- "libavutil/x86/fixed_dsp_init.c",
- "libavutil/x86/imgutils_init.c",
- "libavutil/x86/lls_init.c",
- ]
-}
-
-if ((is_android && current_cpu == "arm" && arm_use_neon) ||
- (use_linux_config && current_cpu == "arm" && arm_use_neon) ||
- (use_linux_config && current_cpu == "arm")) {
- ffmpeg_c_sources += [
- "libavcodec/arm/flacdsp_init_arm.c",
- "libavcodec/arm/mpegaudiodsp_init_arm.c",
- "libavcodec/arm/vorbisdsp_init_arm.c",
- "libavutil/arm/autorename_libavutil_arm_cpu.c",
- "libavutil/arm/float_dsp_init_arm.c",
- "libavutil/arm/float_dsp_init_vfp.c",
- ]
- ffmpeg_gas_sources += [
- "libavcodec/arm/flacdsp_arm.S",
- "libavcodec/arm/mpegaudiodsp_fixed_armv6.S",
- "libavutil/arm/float_dsp_vfp.S",
- ]
-}
-
-if (current_cpu == "arm64") {
- ffmpeg_c_sources += [
- "libavcodec/aarch64/mpegaudiodsp_init.c",
- "libavcodec/aarch64/vorbisdsp_init.c",
- "libavutil/aarch64/cpu.c",
- "libavutil/aarch64/float_dsp_init.c",
- "libavutil/aarch64/tx_float_init.c",
- ]
ffmpeg_gas_sources += [
- "libavcodec/aarch64/autorename_libavcodec_aarch64_vorbisdsp_neon.S",
+ "libavcodec/aarch64/aacpsdsp_neon.S",
+ "libavcodec/aarch64/h264cmc_neon.S",
+ "libavcodec/aarch64/h264dsp_neon.S",
+ "libavcodec/aarch64/h264idct_neon.S",
+ "libavcodec/aarch64/h264pred_neon.S",
+ "libavcodec/aarch64/h264qpel_neon.S",
+ "libavcodec/aarch64/hpeldsp_neon.S",
+ "libavcodec/aarch64/idctdsp_neon.S",
+ "libavcodec/aarch64/me_cmp_neon.S",
"libavcodec/aarch64/mpegaudiodsp_neon.S",
- "libavutil/aarch64/autorename_libavutil_aarch64_float_dsp_neon.S",
+ "libavcodec/aarch64/sbrdsp_neon.S",
+ "libavcodec/aarch64/simple_idct_neon.S",
+ "libavcodec/aarch64/videodsp.S",
+ "libavcodec/aarch64/vorbisdsp_neon.S",
+ "libavutil/aarch64/float_dsp_neon.S",
"libavutil/aarch64/tx_float_neon.S",
]
}
-
-if ((use_linux_config && current_cpu == "arm" && arm_use_neon &&
- ffmpeg_branding == "Chrome") ||
- (use_linux_config && current_cpu == "arm" && ffmpeg_branding == "Chrome")) {
- ffmpeg_c_sources += [
- "libavcodec/arm/h264chroma_init_arm.c",
- "libavcodec/arm/h264dsp_init_arm.c",
- "libavcodec/arm/h264pred_init_arm.c",
- "libavcodec/arm/h264qpel_init_arm.c",
- "libavcodec/arm/videodsp_init_arm.c",
- "libavcodec/arm/videodsp_init_armv5te.c",
- ]
- ffmpeg_gas_sources += [
- "libavcodec/arm/startcode_armv6.S",
- "libavcodec/arm/videodsp_armv5te.S",
- ]
-}
-
-if (use_linux_config && current_cpu == "arm" && arm_use_neon &&
- ffmpeg_branding == "Chrome") {
- ffmpeg_gas_sources += [
- "libavcodec/arm/h264cmc_neon.S",
- "libavcodec/arm/h264dsp_neon.S",
- "libavcodec/arm/h264idct_neon.S",
- "libavcodec/arm/h264pred_neon.S",
- "libavcodec/arm/h264qpel_neon.S",
- "libavcodec/arm/hpeldsp_neon.S",
- ]
-}
-
-if (current_cpu == "arm64" && ffmpeg_branding == "Chrome") {
- ffmpeg_c_sources += [
- "libavcodec/aarch64/aacpsdsp_init_aarch64.c",
- "libavcodec/aarch64/sbrdsp_init_aarch64.c",
- ]
- ffmpeg_gas_sources += [
- "libavcodec/aarch64/autorename_libavcodec_aarch64_aacpsdsp_neon.S",
- "libavcodec/aarch64/autorename_libavcodec_aarch64_sbrdsp_neon.S",
- ]
-}
-
-if ((is_android && current_cpu == "arm" && arm_use_neon) ||
- (use_linux_config && current_cpu == "arm" && arm_use_neon)) {
- ffmpeg_c_sources += [ "libavutil/arm/float_dsp_init_neon.c" ]
- ffmpeg_gas_sources += [
- "libavcodec/arm/vorbisdsp_neon.S",
- "libavutil/arm/float_dsp_neon.S",
- ]
-}
-
-if ((current_cpu == "x64" && ffmpeg_branding == "Chrome") ||
- (is_android && current_cpu == "x86" && ffmpeg_branding == "Chrome") ||
- (is_win && current_cpu == "x86" && ffmpeg_branding == "Chrome") ||
- (use_linux_config && current_cpu == "x86" && ffmpeg_branding == "Chrome")) {
- ffmpeg_c_sources += [
- "libavcodec/x86/aacpsdsp_init.c",
- "libavcodec/x86/sbrdsp_init.c",
- ]
-}
-
-if ((is_android && current_cpu == "arm" && arm_use_neon &&
- ffmpeg_branding == "Chrome") ||
- (use_linux_config && current_cpu == "arm" && arm_use_neon &&
- ffmpeg_branding == "Chrome") ||
- (use_linux_config && current_cpu == "arm" && ffmpeg_branding == "Chrome")) {
- ffmpeg_c_sources += [
- "libavcodec/arm/aacpsdsp_init_arm.c",
- "libavcodec/arm/sbrdsp_init_arm.c",
- ]
-}
-
-if ((current_cpu == "x64" && ffmpeg_branding == "Chrome") ||
- (is_win && current_cpu == "x86" && ffmpeg_branding == "Chrome") ||
- (use_linux_config && current_cpu == "x86" && ffmpeg_branding == "Chrome")) {
- ffmpeg_asm_sources += [
- "libavcodec/x86/aacpsdsp.asm",
- "libavcodec/x86/sbrdsp.asm",
- ]
-}
-
-if ((is_android && current_cpu == "arm" && arm_use_neon &&
- ffmpeg_branding == "Chrome") ||
- (use_linux_config && current_cpu == "arm" && arm_use_neon &&
- ffmpeg_branding == "Chrome")) {
- ffmpeg_gas_sources += [
- "libavcodec/arm/aacpsdsp_neon.S",
- "libavcodec/arm/sbrdsp_neon.S",
- ]
-}
-
-if ((is_android && current_cpu == "arm" && arm_use_neon) ||
- (is_android && current_cpu == "arm64") ||
- (is_android && current_cpu == "x64") ||
- (is_android && current_cpu == "x86")) {
- ffmpeg_c_sources += [ "compat/strtod.c" ]
-}
diff --git a/libavcodec/autorename_libavcodec_videodsp.c b/libavcodec/autorename_libavcodec_videodsp.c
index 09b68db581..ab2db7707e 100644
--- a/libavcodec/autorename_libavcodec_videodsp.c
+++ b/libavcodec/autorename_libavcodec_videodsp.c
@@ -1,2 +1,2 @@
-// Automatically generated on Tue May 21 22:27:37 2024. See crbug.com/495833.
+// Automatically generated on Thu Mar 6 14:31:49 2025. See crbug.com/495833.
#include "videodsp.c"
diff --git a/libavformat/autorename_libavformat_aacdec.c b/libavformat/autorename_libavformat_aacdec.c
index 79cdef5ea6..4c1ef0b82d 100644
--- a/libavformat/autorename_libavformat_aacdec.c
+++ b/libavformat/autorename_libavformat_aacdec.c
@@ -1,2 +1,2 @@
-// Automatically generated on Tue May 21 22:27:37 2024. See crbug.com/495833.
+// Automatically generated on Thu Mar 6 14:31:49 2025. See crbug.com/495833.
#include "aacdec.c"
diff --git a/libavformat/autorename_libavformat_flacdec.c b/libavformat/autorename_libavformat_flacdec.c
index 50d53b1b28..c14fc0f19d 100644
--- a/libavformat/autorename_libavformat_flacdec.c
+++ b/libavformat/autorename_libavformat_flacdec.c
@@ -1,2 +1,2 @@
-// Automatically generated on Tue May 21 22:27:37 2024. See crbug.com/495833.
+// Automatically generated on Thu Mar 6 14:31:49 2025. See crbug.com/495833.
#include "flacdec.c"
diff --git a/libavformat/autorename_libavformat_options.c b/libavformat/autorename_libavformat_options.c
index b9b279f611..b1ea34d63c 100644
--- a/libavformat/autorename_libavformat_options.c
+++ b/libavformat/autorename_libavformat_options.c
@@ -1,2 +1,2 @@
-// Automatically generated on Tue May 21 22:27:37 2024. See crbug.com/495833.
+// Automatically generated on Thu Mar 6 14:31:49 2025. See crbug.com/495833.
#include "options.c"
diff --git a/libavformat/autorename_libavformat_pcm.c b/libavformat/autorename_libavformat_pcm.c
index 94cc7fcf24..2cd04e1ef4 100644
--- a/libavformat/autorename_libavformat_pcm.c
+++ b/libavformat/autorename_libavformat_pcm.c
@@ -1,2 +1,2 @@
-// Automatically generated on Tue May 21 22:27:37 2024. See crbug.com/495833.
+// Automatically generated on Thu Mar 6 14:31:49 2025. See crbug.com/495833.
#include "pcm.c"
diff --git a/libavformat/autorename_libavformat_utils.c b/libavformat/autorename_libavformat_utils.c
index 6a9a535662..9aedf659ce 100644
--- a/libavformat/autorename_libavformat_utils.c
+++ b/libavformat/autorename_libavformat_utils.c
@@ -1,2 +1,2 @@
-// Automatically generated on Tue May 21 22:27:37 2024. See crbug.com/495833.
+// Automatically generated on Thu Mar 6 14:31:49 2025. See crbug.com/495833.
#include "utils.c"
diff --git a/libavformat/autorename_libavformat_version.c b/libavformat/autorename_libavformat_version.c
index 00e3fc63d9..1923be6326 100644
--- a/libavformat/autorename_libavformat_version.c
+++ b/libavformat/autorename_libavformat_version.c
@@ -1,2 +1,2 @@
-// Automatically generated on Tue May 21 22:27:37 2024. See crbug.com/495833.
+// Automatically generated on Thu Mar 6 14:31:49 2025. See crbug.com/495833.
#include "version.c"
diff --git a/libavutil/autorename_libavutil_cpu.c b/libavutil/autorename_libavutil_cpu.c
index 7443e9355b..74e2868af6 100644
--- a/libavutil/autorename_libavutil_cpu.c
+++ b/libavutil/autorename_libavutil_cpu.c
@@ -1,2 +1,2 @@
-// Automatically generated on Tue May 21 22:27:37 2024. See crbug.com/495833.
+// Automatically generated on Thu Mar 6 14:31:49 2025. See crbug.com/495833.
#include "cpu.c"
diff --git a/libavutil/autorename_libavutil_utils.c b/libavutil/autorename_libavutil_utils.c
index 6a9a535662..9aedf659ce 100644
--- a/libavutil/autorename_libavutil_utils.c
+++ b/libavutil/autorename_libavutil_utils.c
@@ -1,2 +1,2 @@
-// Automatically generated on Tue May 21 22:27:37 2024. See crbug.com/495833.
+// Automatically generated on Thu Mar 6 14:31:49 2025. See crbug.com/495833.
#include "utils.c"
diff --git a/libavutil/autorename_libavutil_version.c b/libavutil/autorename_libavutil_version.c
index 00e3fc63d9..1923be6326 100644
--- a/libavutil/autorename_libavutil_version.c
+++ b/libavutil/autorename_libavutil_version.c
@@ -1,2 +1,2 @@
-// Automatically generated on Tue May 21 22:27:37 2024. See crbug.com/495833.
+// Automatically generated on Thu Mar 6 14:31:49 2025. See crbug.com/495833.
#include "version.c"
diff --git a/media/BUILD.gn b/media/BUILD.gn
index d53c9a3e10863..06f30d22fb7d7 100644
--- a/media/BUILD.gn
+++ b/media/BUILD.gn
@@ -76,11 +76,11 @@ buildflag_header("media_buildflags") {
}
}
-if (proprietary_codecs && media_use_ffmpeg) {
- assert(
- ffmpeg_branding != "Chromium",
- "proprietary codecs and ffmpeg_branding set to Chromium are incompatible")
-}
+# if (proprietary_codecs && media_use_ffmpeg) {
+# assert(
+# ffmpeg_branding != "Chromium",
+# "proprietary codecs and ffmpeg_branding set to Chromium are incompatible")
+# }
# Common configuration for targets in the media directory; these must not be
# exported since things like USE_NEON and USE_CRAS have different meanings
diff --git a/media/ffmpeg/scripts/build_ffmpeg.py b/media/ffmpeg/scripts/build_ffmpeg.py
index 9c653ac53574d..7483e3da0159a 100755
--- a/media/ffmpeg/scripts/build_ffmpeg.py
+++ b/media/ffmpeg/scripts/build_ffmpeg.py
@@ -660,7 +660,7 @@ def ConfigureAndBuild(target_arch, target_os, host_os, host_arch,
# Disable features.
'--disable-debug',
'--disable-bzlib',
- '--disable-error-resilience',
+ # '--disable-error-resilience',
'--disable-iconv',
'--disable-network',
'--disable-schannel',
@@ -678,7 +678,12 @@ def ConfigureAndBuild(target_arch, target_os, host_os, host_arch,
# audit new [autodetect] configure options and add any desired options to
# this file.
'--disable-autodetect',
-
+ '--enable-decoder=aac,h264',
+ '--enable-demuxer=aac',
+ '--enable-parser=aac,h264',
+ '--enable-decoder=mpeg4',
+ '--enable-gpl',
+ '--enable-demuxer=avi',
# Common codecs.
'--enable-decoder=vorbis,libopus,flac',
'--enable-decoder=pcm_u8,pcm_s16le,pcm_s24le,pcm_s32le,pcm_f32le,mp3',
diff --git a/media/filters/ffmpeg_demuxer.cc b/media/filters/ffmpeg_demuxer.cc
index 8283c939537a1..bee6577c22141 100644
--- a/media/filters/ffmpeg_demuxer.cc
+++ b/media/filters/ffmpeg_demuxer.cc
@@ -237,8 +237,9 @@ std::unique_ptr<FFmpegDemuxerStream> FFmpegDemuxerStream::Create(
// TODO(chcunningham): Change AVStreamToVideoDecoderConfig to check
// IsValidConfig internally and return a null scoped_ptr if not valid.
if (!AVStreamToVideoDecoderConfig(stream, video_config.get()) ||
- !video_config->IsValidConfig() ||
- !IsSupportedVideoType(VideoType::FromDecoderConfig(*video_config))) {
+ !video_config->IsValidConfig()) {
+ // !video_config->IsValidConfig() ||
+ // !IsSupportedVideoType(VideoType::FromDecoderConfig(*video_config))) {
MEDIA_LOG(DEBUG, media_log) << "Warning, FFmpegDemuxer failed to create "
"a valid/supported video decoder "
"configuration from muxed stream, config:"
diff --git a/media/filters/ffmpeg_glue.cc b/media/filters/ffmpeg_glue.cc
index e3a8c01362707..8b660e5733c06 100644
--- a/media/filters/ffmpeg_glue.cc
+++ b/media/filters/ffmpeg_glue.cc
@@ -78,6 +78,7 @@ static const char* GetAllowedDemuxers() {
"flac", "mp3", "mov"};
#if BUILDFLAG(USE_PROPRIETARY_CODECS)
allowed_demuxers.push_back("aac");
+ allowed_demuxers.push_back("avi");
#endif
return base::JoinString(allowed_demuxers, ",");
}());
@@ -154,6 +155,7 @@ const char* FFmpegGlue::GetAllowedVideoDecoders() {
#if BUILDFLAG(ENABLE_FFMPEG_VIDEO_DECODERS)
std::vector<std::string> allowed_decoders;
#if BUILDFLAG(USE_PROPRIETARY_CODECS)
+ allowed_decoders.push_back("mpeg4");
allowed_decoders.push_back("h264");
#endif // BUILDFLAG(USE_PROPRIETARY_CODECS)
return base::JoinString(allowed_decoders, ",");
diff --git a/media/filters/ffmpeg_video_decoder.cc b/media/filters/ffmpeg_video_decoder.cc
index 4935ef5fd6122..f06deb6c728de 100644
--- a/media/filters/ffmpeg_video_decoder.cc
+++ b/media/filters/ffmpeg_video_decoder.cc
@@ -81,11 +81,10 @@ static int GetFFmpegVideoDecoderThreadCount(const VideoDecoderConfig& config) {
case VideoCodec::kAV1:
case VideoCodec::kDolbyVision:
case VideoCodec::kTheora:
- case VideoCodec::kMPEG4:
case VideoCodec::kVP8:
// We do not compile ffmpeg with support for any of these codecs.
NOTREACHED();
-
+ case VideoCodec::kMPEG4:
case VideoCodec::kH264:
// Normalize to three threads for 1080p content, then scale linearly
// with number of pixels.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment