Downgrading ffmpeg to 7.1

this version of ffmpeg has patches related to v4l2-requests which enable hw decoding for Rockchip SoCs
This commit is contained in:
dvab-sarma 2025-11-28 19:36:41 -06:00
parent 22a798e973
commit 7d711563ab
128 changed files with 9853 additions and 127 deletions

3
.gitignore vendored
View file

@ -33,9 +33,6 @@
/ffmpeg /ffmpeg
/ffplay /ffplay
/ffprobe /ffprobe
/config.asm
/config.h
/config_components.h
/coverage.info /coverage.info
/lcov/ /lcov/
/src /src

11
.vscode/settings.json vendored Normal file
View file

@ -0,0 +1,11 @@
{
"files.associations": {
"avassert.h": "c",
"hwcontext.h": "c",
"timer.h": "c",
"config.h": "c",
"decode.h": "c",
"config_components.h": "c",
"hwcontext_v4l2request.h": "c"
}
}

71
Android.bp Normal file
View file

@ -0,0 +1,71 @@
//
// Copyright (C) 2025 KonstaKANG
// Copyright (C) 2025 Venkata Atchuta Bheemeswara Sarma Darbha
//
// SPDX-License-Identifier: LGPL-2.1-or-later
//
cc_library_headers {
name: "ffmpeg_headers",
vendor: true,
export_include_dirs: [
".",
"libavcodec",
"libavformat",
"libavutil",
"libswresample",
"libswscale",
],
}
cc_defaults {
name: "ffmpeg_defaults",
vendor: true,
compile_multilib: "64",
header_libs: [
"ffmpeg_headers",
],
export_header_lib_headers: [
"ffmpeg_headers",
],
cflags: [
"-DHAVE_AV_CONFIG_H",
"-D_FILE_OFFSET_BITS=64",
"-D_LARGEFILE_SOURCE",
"-DPIC",
"-O3",
"-std=c99",
"-D_GNU_SOURCE",
"-fno-math-errno",
"-fno-signed-zeros",
"-fomit-frame-pointer",
"-fPIC",
"-Wno-parentheses",
"-Wno-switch",
"-Wno-format-zero-length",
"-Wno-pointer-sign",
"-Wno-unused-const-variable",
"-Wno-bool-operation",
"-Wno-deprecated-declarations",
"-Wno-unused-variable",
"-Wno-unused-parameter",
"-Wno-missing-field-initializers",
"-Wno-incompatible-pointer-types-discards-qualifiers",
"-Wno-sometimes-uninitialized",
"-Wno-unneeded-internal-declaration",
"-Wno-initializer-overrides",
"-Wno-string-plus-int",
"-Wno-absolute-value",
"-Wno-constant-conversion",
"-Wno-unknown-attributes",
"-Wno-inline-asm",
"-Wno-enum-conversion",
],
ldflags: [
"-Wl,-Bsymbolic",
],
asflags: [
"-fPIC",
],
}

View file

@ -39,7 +39,7 @@
#include "libavutil/attributes.h" #include "libavutil/attributes.h"
#include "libavutil/common.h" #include "libavutil/common.h"
#include "libavutil/time.h" #include "libavutil/avtime.h"
typedef struct { typedef struct {
TID tid; TID tid;

View file

@ -43,7 +43,7 @@
#include "libavutil/common.h" #include "libavutil/common.h"
#include "libavutil/internal.h" #include "libavutil/internal.h"
#include "libavutil/mem.h" #include "libavutil/mem.h"
#include "libavutil/time.h" #include "libavutil/avtime.h"
typedef struct pthread_t { typedef struct pthread_t {
void *handle; void *handle;

797
config.h Normal file
View file

@ -0,0 +1,797 @@
/* Automatically generated by configure - do not modify! */
#ifndef FFMPEG_CONFIG_H
#define FFMPEG_CONFIG_H
#define FFMPEG_CONFIGURATION "--arch=aarch64 --enable-cross-compile --target-os=android --cross-prefix=/home/tuomas/android/NDK/android-ndk-r28/toolchains/llvm/prebuilt/linux-x86_64/bin/aarch64/aarch64-linux-android-4.9/bin/aarch64-linux-android- --cc=/home/tuomas/android/NDK/android-ndk-r28/toolchains/llvm/prebuilt/linux-x86_64/bin/aarch64-linux-android35-clang --cxx=/home/tuomas/android/NDK/android-ndk-r28/toolchains/llvm/prebuilt/linux-x86_64/bin/aarch64-linux-android35-clang++ --ar=/home/tuomas/android/NDK/android-ndk-r28/toolchains/llvm/prebuilt/linux-x86_64/bin/llvm-ar --nm=/home/tuomas/android/NDK/android-ndk-r28/toolchains/llvm/prebuilt/linux-x86_64/bin/llvm-nm --ranlib=/home/tuomas/android/NDK/android-ndk-r28/toolchains/llvm/prebuilt/linux-x86_64/bin/llvm-ranlib --strip=/home/tuomas/android/NDK/android-ndk-r28/toolchains/llvm/prebuilt/linux-x86_64/bin/llvm-strip --x86asmexe=/home/tuomas/android/NDK/android-ndk-r28/toolchains/llvm/prebuilt/linux-x86_64/bin/yasm --disable-avdevice --disable-debug --disable-doc --disable-filters --disable-programs --disable-static --enable-shared"
#define FFMPEG_LICENSE "LGPL version 2.1 or later"
#define CONFIG_THIS_YEAR 2025
#define FFMPEG_DATADIR "/usr/local/share/ffmpeg"
#define AVCONV_DATADIR "/usr/local/share/ffmpeg"
#define CC_IDENT "Android (12896553, +pgo, +bolt, +lto, +mlgo, based on r530567c) clang version 19.0.0 (https://android.googlesource.com/toolchain/llvm-project 97a699bf4812a18fb657c2779f5296a4ab2694d2)"
#define OS_NAME android
#define EXTERN_PREFIX ""
#define EXTERN_ASM
#define BUILDSUF ""
#define SLIBSUF ".so"
#define SWS_MAX_FILTER_SIZE 256
#define AS_ARCH_LEVEL armv8.6-a+crc
#define ARCH_AARCH64 1
#define ARCH_ARM 0
#define ARCH_IA64 0
#define ARCH_LOONGARCH 0
#define ARCH_LOONGARCH32 0
#define ARCH_LOONGARCH64 0
#define ARCH_M68K 0
#define ARCH_MIPS 0
#define ARCH_MIPS64 0
#define ARCH_PARISC 0
#define ARCH_PPC 0
#define ARCH_PPC64 0
#define ARCH_RISCV 0
#define ARCH_S390 0
#define ARCH_SPARC 0
#define ARCH_SPARC64 0
#define ARCH_TILEGX 0
#define ARCH_TILEPRO 0
#define ARCH_X86 0
#define ARCH_X86_32 0
#define ARCH_X86_64 0
#define HAVE_ARMV5TE 0
#define HAVE_ARMV6 0
#define HAVE_ARMV6T2 0
#define HAVE_ARMV8 1
#define HAVE_DOTPROD 1
#define HAVE_I8MM 1
#define HAVE_NEON 1
#define HAVE_VFP 0
#define HAVE_VFPV3 0
#define HAVE_SETEND 0
#define HAVE_ALTIVEC 0
#define HAVE_DCBZL 0
#define HAVE_LDBRX 0
#define HAVE_POWER8 0
#define HAVE_PPC4XX 0
#define HAVE_VEC_XL 0
#define HAVE_VSX 0
#define HAVE_RV 0
#define HAVE_RVV 0
#define HAVE_RV_ZICBOP 1
#define HAVE_RV_ZVBB 0
#define HAVE_AESNI 0
#define HAVE_AMD3DNOW 0
#define HAVE_AMD3DNOWEXT 0
#define HAVE_AVX 0
#define HAVE_AVX2 0
#define HAVE_AVX512 0
#define HAVE_AVX512ICL 0
#define HAVE_FMA3 0
#define HAVE_FMA4 0
#define HAVE_MMX 0
#define HAVE_MMXEXT 0
#define HAVE_SSE 0
#define HAVE_SSE2 0
#define HAVE_SSE3 0
#define HAVE_SSE4 0
#define HAVE_SSE42 0
#define HAVE_SSSE3 0
#define HAVE_XOP 0
#define HAVE_I686 0
#define HAVE_MIPSFPU 0
#define HAVE_MIPS32R2 0
#define HAVE_MIPS32R5 0
#define HAVE_MIPS64R2 0
#define HAVE_MIPS32R6 0
#define HAVE_MIPS64R6 0
#define HAVE_MIPSDSP 0
#define HAVE_MIPSDSPR2 0
#define HAVE_MSA 0
#define HAVE_LOONGSON2 0
#define HAVE_LOONGSON3 0
#define HAVE_MMI 0
#define HAVE_LSX 0
#define HAVE_LASX 0
#define HAVE_ARMV5TE_EXTERNAL 0
#define HAVE_ARMV6_EXTERNAL 0
#define HAVE_ARMV6T2_EXTERNAL 0
#define HAVE_ARMV8_EXTERNAL 1
#define HAVE_DOTPROD_EXTERNAL 0
#define HAVE_I8MM_EXTERNAL 0
#define HAVE_NEON_EXTERNAL 1
#define HAVE_VFP_EXTERNAL 0
#define HAVE_VFPV3_EXTERNAL 0
#define HAVE_SETEND_EXTERNAL 0
#define HAVE_ALTIVEC_EXTERNAL 0
#define HAVE_DCBZL_EXTERNAL 0
#define HAVE_LDBRX_EXTERNAL 0
#define HAVE_POWER8_EXTERNAL 0
#define HAVE_PPC4XX_EXTERNAL 0
#define HAVE_VEC_XL_EXTERNAL 0
#define HAVE_VSX_EXTERNAL 0
#define HAVE_RV_EXTERNAL 0
#define HAVE_RVV_EXTERNAL 0
#define HAVE_RV_ZICBOP_EXTERNAL 0
#define HAVE_RV_ZVBB_EXTERNAL 0
#define HAVE_AESNI_EXTERNAL 0
#define HAVE_AMD3DNOW_EXTERNAL 0
#define HAVE_AMD3DNOWEXT_EXTERNAL 0
#define HAVE_AVX_EXTERNAL 0
#define HAVE_AVX2_EXTERNAL 0
#define HAVE_AVX512_EXTERNAL 0
#define HAVE_AVX512ICL_EXTERNAL 0
#define HAVE_FMA3_EXTERNAL 0
#define HAVE_FMA4_EXTERNAL 0
#define HAVE_MMX_EXTERNAL 0
#define HAVE_MMXEXT_EXTERNAL 0
#define HAVE_SSE_EXTERNAL 0
#define HAVE_SSE2_EXTERNAL 0
#define HAVE_SSE3_EXTERNAL 0
#define HAVE_SSE4_EXTERNAL 0
#define HAVE_SSE42_EXTERNAL 0
#define HAVE_SSSE3_EXTERNAL 0
#define HAVE_XOP_EXTERNAL 0
#define HAVE_I686_EXTERNAL 0
#define HAVE_MIPSFPU_EXTERNAL 0
#define HAVE_MIPS32R2_EXTERNAL 0
#define HAVE_MIPS32R5_EXTERNAL 0
#define HAVE_MIPS64R2_EXTERNAL 0
#define HAVE_MIPS32R6_EXTERNAL 0
#define HAVE_MIPS64R6_EXTERNAL 0
#define HAVE_MIPSDSP_EXTERNAL 0
#define HAVE_MIPSDSPR2_EXTERNAL 0
#define HAVE_MSA_EXTERNAL 0
#define HAVE_LOONGSON2_EXTERNAL 0
#define HAVE_LOONGSON3_EXTERNAL 0
#define HAVE_MMI_EXTERNAL 0
#define HAVE_LSX_EXTERNAL 0
#define HAVE_LASX_EXTERNAL 0
#define HAVE_ARMV5TE_INLINE 0
#define HAVE_ARMV6_INLINE 0
#define HAVE_ARMV6T2_INLINE 0
#define HAVE_ARMV8_INLINE 1
#define HAVE_DOTPROD_INLINE 0
#define HAVE_I8MM_INLINE 0
#define HAVE_NEON_INLINE 1
#define HAVE_VFP_INLINE 0
#define HAVE_VFPV3_INLINE 0
#define HAVE_SETEND_INLINE 0
#define HAVE_ALTIVEC_INLINE 0
#define HAVE_DCBZL_INLINE 0
#define HAVE_LDBRX_INLINE 0
#define HAVE_POWER8_INLINE 0
#define HAVE_PPC4XX_INLINE 0
#define HAVE_VEC_XL_INLINE 0
#define HAVE_VSX_INLINE 0
#define HAVE_RV_INLINE 0
#define HAVE_RVV_INLINE 0
#define HAVE_RV_ZICBOP_INLINE 0
#define HAVE_RV_ZVBB_INLINE 0
#define HAVE_AESNI_INLINE 0
#define HAVE_AMD3DNOW_INLINE 0
#define HAVE_AMD3DNOWEXT_INLINE 0
#define HAVE_AVX_INLINE 0
#define HAVE_AVX2_INLINE 0
#define HAVE_AVX512_INLINE 0
#define HAVE_AVX512ICL_INLINE 0
#define HAVE_FMA3_INLINE 0
#define HAVE_FMA4_INLINE 0
#define HAVE_MMX_INLINE 0
#define HAVE_MMXEXT_INLINE 0
#define HAVE_SSE_INLINE 0
#define HAVE_SSE2_INLINE 0
#define HAVE_SSE3_INLINE 0
#define HAVE_SSE4_INLINE 0
#define HAVE_SSE42_INLINE 0
#define HAVE_SSSE3_INLINE 0
#define HAVE_XOP_INLINE 0
#define HAVE_I686_INLINE 0
#define HAVE_MIPSFPU_INLINE 0
#define HAVE_MIPS32R2_INLINE 0
#define HAVE_MIPS32R5_INLINE 0
#define HAVE_MIPS64R2_INLINE 0
#define HAVE_MIPS32R6_INLINE 0
#define HAVE_MIPS64R6_INLINE 0
#define HAVE_MIPSDSP_INLINE 0
#define HAVE_MIPSDSPR2_INLINE 0
#define HAVE_MSA_INLINE 0
#define HAVE_LOONGSON2_INLINE 0
#define HAVE_LOONGSON3_INLINE 0
#define HAVE_MMI_INLINE 0
#define HAVE_LSX_INLINE 0
#define HAVE_LASX_INLINE 0
#define HAVE_ALIGNED_STACK 1
#define HAVE_FAST_64BIT 1
#define HAVE_FAST_CLZ 1
#define HAVE_FAST_CMOV 0
#define HAVE_FAST_FLOAT16 1
#define HAVE_LOCAL_ALIGNED 0
#define HAVE_SIMD_ALIGN_16 1
#define HAVE_SIMD_ALIGN_32 0
#define HAVE_SIMD_ALIGN_64 0
#define HAVE_MEMORYBARRIER 0
#define HAVE_MM_EMPTY 0
#define HAVE_RDTSC 0
#define HAVE_SEM_TIMEDWAIT 1
#define HAVE_INLINE_ASM 1
#define HAVE_SYMVER 0
#define HAVE_X86ASM 0
#define HAVE_BIGENDIAN 0
#define HAVE_FAST_UNALIGNED 1
#define HAVE_ARPA_INET_H 1
#define HAVE_ASM_HWPROBE_H 0
#define HAVE_ASM_TYPES_H 1
#define HAVE_CDIO_PARANOIA_H 0
#define HAVE_CDIO_PARANOIA_PARANOIA_H 0
#define HAVE_CUDA_H 0
#define HAVE_DISPATCH_DISPATCH_H 0
#define HAVE_DEV_BKTR_IOCTL_BT848_H 0
#define HAVE_DEV_BKTR_IOCTL_METEOR_H 0
#define HAVE_DEV_IC_BT8XX_H 0
#define HAVE_DEV_VIDEO_BKTR_IOCTL_BT848_H 0
#define HAVE_DEV_VIDEO_METEOR_IOCTL_METEOR_H 0
#define HAVE_DIRECT_H 0
#define HAVE_DIRENT_H 1
#define HAVE_DXGIDEBUG_H 0
#define HAVE_DXVA_H 0
#define HAVE_ES2_GL_H 0
#define HAVE_GSM_H 0
#define HAVE_IO_H 0
#define HAVE_LINUX_DMA_BUF_H 1
#define HAVE_LINUX_PERF_EVENT_H 1
#define HAVE_MACHINE_IOCTL_BT848_H 0
#define HAVE_MACHINE_IOCTL_METEOR_H 0
#define HAVE_MALLOC_H 1
#define HAVE_OPENCV2_CORE_CORE_C_H 0
#define HAVE_OPENGL_GL3_H 0
#define HAVE_POLL_H 1
#define HAVE_PTHREAD_NP_H 0
#define HAVE_SYS_HWPROBE_H 0
#define HAVE_SYS_PARAM_H 1
#define HAVE_SYS_RESOURCE_H 1
#define HAVE_SYS_SELECT_H 1
#define HAVE_SYS_SOUNDCARD_H 0
#define HAVE_SYS_TIME_H 1
#define HAVE_SYS_UN_H 1
#define HAVE_SYS_VIDEOIO_H 0
#define HAVE_TERMIOS_H 1
#define HAVE_UDPLITE_H 0
#define HAVE_UNISTD_H 1
#define HAVE_VALGRIND_VALGRIND_H 0
#define HAVE_WINDOWS_H 0
#define HAVE_WINSOCK2_H 0
#define HAVE_INTRINSICS_NEON 1
#define HAVE_INTRINSICS_SSE2 0
#define HAVE_ATANF 1
#define HAVE_ATAN2F 1
#define HAVE_CBRT 1
#define HAVE_CBRTF 1
#define HAVE_COPYSIGN 1
#define HAVE_COSF 1
#define HAVE_ERF 1
#define HAVE_EXP2 1
#define HAVE_EXP2F 1
#define HAVE_EXPF 1
#define HAVE_HYPOT 1
#define HAVE_ISFINITE 1
#define HAVE_ISINF 1
#define HAVE_ISNAN 1
#define HAVE_LDEXPF 1
#define HAVE_LLRINT 1
#define HAVE_LLRINTF 1
#define HAVE_LOG2 1
#define HAVE_LOG2F 1
#define HAVE_LOG10F 1
#define HAVE_LRINT 1
#define HAVE_LRINTF 1
#define HAVE_POWF 1
#define HAVE_RINT 1
#define HAVE_ROUND 1
#define HAVE_ROUNDF 1
#define HAVE_SINF 1
#define HAVE_TRUNC 1
#define HAVE_TRUNCF 1
#define HAVE_DOS_PATHS 0
#define HAVE_LIBC_MSVCRT 0
#define HAVE_MMAL_PARAMETER_VIDEO_MAX_NUM_CALLBACKS 0
#define HAVE_SECTION_DATA_REL_RO 1
#define HAVE_THREADS 1
#define HAVE_UWP 0
#define HAVE_WINRT 0
#define HAVE_ACCESS 1
#define HAVE_ALIGNED_MALLOC 0
#define HAVE_ARC4RANDOM_BUF 1
#define HAVE_CLOCK_GETTIME 1
#define HAVE_CLOSESOCKET 0
#define HAVE_COMMANDLINETOARGVW 0
#define HAVE_ELF_AUX_INFO 0
#define HAVE_FCNTL 1
#define HAVE_GETADDRINFO 1
#define HAVE_GETAUXVAL 1
#define HAVE_GETENV 1
#define HAVE_GETHRTIME 0
#define HAVE_GETOPT 1
#define HAVE_GETMODULEHANDLE 0
#define HAVE_GETPROCESSAFFINITYMASK 0
#define HAVE_GETPROCESSMEMORYINFO 0
#define HAVE_GETPROCESSTIMES 0
#define HAVE_GETRUSAGE 1
#define HAVE_GETSTDHANDLE 0
#define HAVE_GETSYSTEMTIMEASFILETIME 0
#define HAVE_GETTIMEOFDAY 1
#define HAVE_GLOB 1
#define HAVE_GLXGETPROCADDRESS 0
#define HAVE_GMTIME_R 1
#define HAVE_INET_ATON 1
#define HAVE_ISATTY 1
#define HAVE_KBHIT 0
#define HAVE_LOCALTIME_R 1
#define HAVE_LSTAT 1
#define HAVE_LZO1X_999_COMPRESS 0
#define HAVE_MACH_ABSOLUTE_TIME 0
#define HAVE_MAPVIEWOFFILE 0
#define HAVE_MEMALIGN 1
#define HAVE_MKSTEMP 1
#define HAVE_MMAP 1
#define HAVE_MPROTECT 1
#define HAVE_NANOSLEEP 1
#define HAVE_PEEKNAMEDPIPE 0
#define HAVE_POSIX_MEMALIGN 1
#define HAVE_PRCTL 1
#define HAVE_PTHREAD_CANCEL 0
#define HAVE_PTHREAD_SET_NAME_NP 0
#define HAVE_PTHREAD_SETNAME_NP 0
#define HAVE_SCHED_GETAFFINITY 1
#define HAVE_SECITEMIMPORT 0
#define HAVE_SETCONSOLETEXTATTRIBUTE 0
#define HAVE_SETCONSOLECTRLHANDLER 0
#define HAVE_SETDLLDIRECTORY 0
#define HAVE_SETMODE 0
#define HAVE_SETRLIMIT 1
#define HAVE_SLEEP 0
#define HAVE_STRERROR_R 1
#define HAVE_SYSCONF 1
#define HAVE_SYSCTL 0
#define HAVE_SYSCTLBYNAME 0
#define HAVE_TEMPNAM 1
#define HAVE_USLEEP 1
#define HAVE_UTGETOSTYPEFROMSTRING 0
#define HAVE_VIRTUALALLOC 0
#define HAVE_WGLGETPROCADDRESS 0
#define HAVE_BCRYPT 0
#define HAVE_VAAPI_DRM 0
#define HAVE_VAAPI_X11 0
#define HAVE_VAAPI_WIN32 0
#define HAVE_VDPAU_X11 0
#define HAVE_PTHREADS 1
#define HAVE_OS2THREADS 0
#define HAVE_W32THREADS 0
#define HAVE_AS_ARCH_DIRECTIVE 1
#define HAVE_AS_ARCHEXT_DOTPROD_DIRECTIVE 1
#define HAVE_AS_ARCHEXT_I8MM_DIRECTIVE 1
#define HAVE_AS_DN_DIRECTIVE 0
#define HAVE_AS_FPU_DIRECTIVE 0
#define HAVE_AS_FUNC 0
#define HAVE_AS_OBJECT_ARCH 0
#define HAVE_ASM_MOD_Q 0
#define HAVE_BLOCKS_EXTENSION 0
#define HAVE_EBP_AVAILABLE 0
#define HAVE_EBX_AVAILABLE 0
#define HAVE_GNU_AS 0
#define HAVE_GNU_WINDRES 0
#define HAVE_IBM_ASM 0
#define HAVE_INLINE_ASM_DIRECT_SYMBOL_REFS 0
#define HAVE_INLINE_ASM_LABELS 1
#define HAVE_INLINE_ASM_NONLOCAL_LABELS 1
#define HAVE_PRAGMA_DEPRECATED 1
#define HAVE_RSYNC_CONTIMEOUT 1
#define HAVE_SYMVER_ASM_LABEL 1
#define HAVE_SYMVER_GNU_ASM 1
#define HAVE_VFP_ARGS 0
#define HAVE_XFORM_ASM 0
#define HAVE_XMM_CLOBBERS 0
#define HAVE_DPI_AWARENESS_CONTEXT 0
#define HAVE_IDXGIOUTPUT5 0
#define HAVE_KCMVIDEOCODECTYPE_HEVC 0
#define HAVE_KCMVIDEOCODECTYPE_HEVCWITHALPHA 0
#define HAVE_KCMVIDEOCODECTYPE_VP9 0
#define HAVE_KCVPIXELFORMATTYPE_420YPCBCR10BIPLANARVIDEORANGE 0
#define HAVE_KCVPIXELFORMATTYPE_422YPCBCR8BIPLANARVIDEORANGE 0
#define HAVE_KCVPIXELFORMATTYPE_422YPCBCR10BIPLANARVIDEORANGE 0
#define HAVE_KCVPIXELFORMATTYPE_422YPCBCR16BIPLANARVIDEORANGE 0
#define HAVE_KCVPIXELFORMATTYPE_444YPCBCR8BIPLANARVIDEORANGE 0
#define HAVE_KCVPIXELFORMATTYPE_444YPCBCR10BIPLANARVIDEORANGE 0
#define HAVE_KCVPIXELFORMATTYPE_444YPCBCR16BIPLANARVIDEORANGE 0
#define HAVE_KCVIMAGEBUFFERTRANSFERFUNCTION_SMPTE_ST_2084_PQ 0
#define HAVE_KCVIMAGEBUFFERTRANSFERFUNCTION_ITU_R_2100_HLG 0
#define HAVE_KCVIMAGEBUFFERTRANSFERFUNCTION_LINEAR 0
#define HAVE_KCVIMAGEBUFFERYCBCRMATRIX_ITU_R_2020 0
#define HAVE_KCVIMAGEBUFFERCOLORPRIMARIES_ITU_R_2020 0
#define HAVE_KCVIMAGEBUFFERTRANSFERFUNCTION_ITU_R_2020 0
#define HAVE_KCVIMAGEBUFFERTRANSFERFUNCTION_SMPTE_ST_428_1 0
#define HAVE_SOCKLEN_T 1
#define HAVE_STRUCT_ADDRINFO 1
#define HAVE_STRUCT_GROUP_SOURCE_REQ 1
#define HAVE_STRUCT_IP_MREQ_SOURCE 1
#define HAVE_STRUCT_IPV6_MREQ 1
#define HAVE_STRUCT_MSGHDR_MSG_FLAGS 1
#define HAVE_STRUCT_POLLFD 1
#define HAVE_STRUCT_RUSAGE_RU_MAXRSS 1
#define HAVE_STRUCT_SCTP_EVENT_SUBSCRIBE 0
#define HAVE_STRUCT_SOCKADDR_IN6 1
#define HAVE_STRUCT_SOCKADDR_SA_LEN 0
#define HAVE_STRUCT_SOCKADDR_STORAGE 1
#define HAVE_STRUCT_STAT_ST_MTIM_TV_NSEC 1
#define HAVE_STRUCT_V4L2_FRMIVALENUM_DISCRETE 1
#define HAVE_STRUCT_MFXCONFIGINTERFACE 0
#define HAVE_GZIP 1
#define HAVE_LIBDRM_GETFB2 1
#define HAVE_MAKEINFO 0
#define HAVE_MAKEINFO_HTML 0
#define HAVE_OPENCL_D3D11 0
#define HAVE_OPENCL_DRM_ARM 0
#define HAVE_OPENCL_DRM_BEIGNET 0
#define HAVE_OPENCL_DXVA2 0
#define HAVE_OPENCL_VAAPI_BEIGNET 0
#define HAVE_OPENCL_VAAPI_INTEL_MEDIA 0
#define HAVE_OPENCL_VIDEOTOOLBOX 0
#define HAVE_PERL 1
#define HAVE_POD2MAN 1
#define HAVE_POSIX_IOCTL 1
#define HAVE_TEXI2HTML 0
#define HAVE_XMLLINT 1
#define HAVE_ZLIB_GZIP 1
#define HAVE_OPENVINO2 0
#define CONFIG_DOC 0
#define CONFIG_HTMLPAGES 0
#define CONFIG_MANPAGES 1
#define CONFIG_PODPAGES 1
#define CONFIG_TXTPAGES 0
#define CONFIG_AVIO_HTTP_SERVE_FILES_EXAMPLE 1
#define CONFIG_AVIO_LIST_DIR_EXAMPLE 1
#define CONFIG_AVIO_READ_CALLBACK_EXAMPLE 1
#define CONFIG_DECODE_AUDIO_EXAMPLE 1
#define CONFIG_DECODE_FILTER_AUDIO_EXAMPLE 1
#define CONFIG_DECODE_FILTER_VIDEO_EXAMPLE 1
#define CONFIG_DECODE_VIDEO_EXAMPLE 1
#define CONFIG_DEMUX_DECODE_EXAMPLE 1
#define CONFIG_ENCODE_AUDIO_EXAMPLE 1
#define CONFIG_ENCODE_VIDEO_EXAMPLE 1
#define CONFIG_EXTRACT_MVS_EXAMPLE 1
#define CONFIG_FILTER_AUDIO_EXAMPLE 1
#define CONFIG_HW_DECODE_EXAMPLE 1
#define CONFIG_MUX_EXAMPLE 1
#define CONFIG_QSV_DECODE_EXAMPLE 0
#define CONFIG_REMUX_EXAMPLE 1
#define CONFIG_RESAMPLE_AUDIO_EXAMPLE 1
#define CONFIG_SCALE_VIDEO_EXAMPLE 1
#define CONFIG_SHOW_METADATA_EXAMPLE 1
#define CONFIG_TRANSCODE_AAC_EXAMPLE 1
#define CONFIG_TRANSCODE_EXAMPLE 1
#define CONFIG_VAAPI_ENCODE_EXAMPLE 0
#define CONFIG_VAAPI_TRANSCODE_EXAMPLE 0
#define CONFIG_QSV_TRANSCODE_EXAMPLE 0
#define CONFIG_AVISYNTH 0
#define CONFIG_FREI0R 0
#define CONFIG_LIBCDIO 0
#define CONFIG_LIBDAVS2 0
#define CONFIG_LIBDVDNAV 0
#define CONFIG_LIBDVDREAD 0
#define CONFIG_LIBRUBBERBAND 0
#define CONFIG_LIBVIDSTAB 0
#define CONFIG_LIBX264 0
#define CONFIG_LIBX265 0
#define CONFIG_LIBXAVS 0
#define CONFIG_LIBXAVS2 0
#define CONFIG_LIBXVID 0
#define CONFIG_DECKLINK 0
#define CONFIG_LIBFDK_AAC 0
#define CONFIG_LIBTLS 0
#define CONFIG_GMP 0
#define CONFIG_LIBARIBB24 0
#define CONFIG_LIBLENSFUN 0
#define CONFIG_LIBOPENCORE_AMRNB 0
#define CONFIG_LIBOPENCORE_AMRWB 0
#define CONFIG_LIBVO_AMRWBENC 0
#define CONFIG_MBEDTLS 0
#define CONFIG_RKMPP 0
#define CONFIG_LIBSMBCLIENT 0
#define CONFIG_CHROMAPRINT 0
#define CONFIG_GCRYPT 0
#define CONFIG_GNUTLS 0
#define CONFIG_JNI 0
#define CONFIG_LADSPA 0
#define CONFIG_LCMS2 0
#define CONFIG_LIBAOM 0
#define CONFIG_LIBARIBCAPTION 0
#define CONFIG_LIBASS 0
#define CONFIG_LIBBLURAY 0
#define CONFIG_LIBBS2B 0
#define CONFIG_LIBCACA 0
#define CONFIG_LIBCELT 0
#define CONFIG_LIBCODEC2 0
#define CONFIG_LIBDAV1D 1
#define CONFIG_LIBDC1394 0
#define CONFIG_LIBDRM 1
#define CONFIG_LIBFLITE 0
#define CONFIG_LIBFONTCONFIG 0
#define CONFIG_LIBFREETYPE 0
#define CONFIG_LIBFRIBIDI 0
#define CONFIG_LIBHARFBUZZ 0
#define CONFIG_LIBGLSLANG 0
#define CONFIG_LIBGME 0
#define CONFIG_LIBGSM 0
#define CONFIG_LIBIEC61883 0
#define CONFIG_LIBILBC 0
#define CONFIG_LIBJACK 0
#define CONFIG_LIBJXL 0
#define CONFIG_LIBKLVANC 0
#define CONFIG_LIBKVAZAAR 0
#define CONFIG_LIBLC3 0
#define CONFIG_LIBLCEVC_DEC 0
#define CONFIG_LIBMODPLUG 0
#define CONFIG_LIBMP3LAME 0
#define CONFIG_LIBMYSOFA 0
#define CONFIG_LIBOPENCV 0
#define CONFIG_LIBOPENH264 0
#define CONFIG_LIBOPENJPEG 0
#define CONFIG_LIBOPENMPT 0
#define CONFIG_LIBOPENVINO 0
#define CONFIG_LIBOPUS 0
#define CONFIG_LIBPLACEBO 0
#define CONFIG_LIBPULSE 0
#define CONFIG_LIBQRENCODE 0
#define CONFIG_LIBQUIRC 0
#define CONFIG_LIBRABBITMQ 0
#define CONFIG_LIBRAV1E 0
#define CONFIG_LIBRIST 0
#define CONFIG_LIBRSVG 0
#define CONFIG_LIBRTMP 0
#define CONFIG_LIBSHADERC 0
#define CONFIG_LIBSHINE 0
#define CONFIG_LIBSMBCLIENT 0
#define CONFIG_LIBSNAPPY 0
#define CONFIG_LIBSOXR 0
#define CONFIG_LIBSPEEX 0
#define CONFIG_LIBSRT 0
#define CONFIG_LIBSSH 0
#define CONFIG_LIBSVTAV1 0
#define CONFIG_LIBTENSORFLOW 0
#define CONFIG_LIBTESSERACT 0
#define CONFIG_LIBTHEORA 0
#define CONFIG_LIBTORCH 0
#define CONFIG_LIBTWOLAME 0
#define CONFIG_LIBUAVS3D 0
#define CONFIG_LIBV4L2 0
#define CONFIG_LIBVMAF 0
#define CONFIG_LIBVORBIS 0
#define CONFIG_LIBVPX 0
#define CONFIG_LIBVVENC 0
#define CONFIG_LIBWEBP 0
#define CONFIG_LIBXEVD 0
#define CONFIG_LIBXEVE 0
#define CONFIG_LIBXML2 0
#define CONFIG_LIBZIMG 0
#define CONFIG_LIBZMQ 0
#define CONFIG_LIBZVBI 0
#define CONFIG_LV2 0
#define CONFIG_MEDIACODEC 0
#define CONFIG_OPENAL 0
#define CONFIG_OPENGL 0
#define CONFIG_OPENSSL 0
#define CONFIG_POCKETSPHINX 0
#define CONFIG_VAPOURSYNTH 0
#define CONFIG_ALSA 0
#define CONFIG_APPKIT 0
#define CONFIG_AVFOUNDATION 0
#define CONFIG_BZLIB 0
#define CONFIG_COREIMAGE 0
#define CONFIG_EPOXY 0
#define CONFIG_ICONV 1
#define CONFIG_LIBUDEV 1
#define CONFIG_LIBXCB 0
#define CONFIG_LIBXCB_SHM 0
#define CONFIG_LIBXCB_SHAPE 0
#define CONFIG_LIBXCB_XFIXES 0
#define CONFIG_LZMA 0
#define CONFIG_MEDIAFOUNDATION 0
#define CONFIG_METAL 0
#define CONFIG_SCHANNEL 0
#define CONFIG_SDL2 0
#define CONFIG_SECURETRANSPORT 0
#define CONFIG_SNDIO 0
#define CONFIG_XLIB 0
#define CONFIG_ZLIB 1
#define CONFIG_CUDA_NVCC 0
#define CONFIG_CUDA_SDK 0
#define CONFIG_LIBNPP 0
#define CONFIG_LIBMFX 0
#define CONFIG_LIBVPL 0
#define CONFIG_MMAL 0
#define CONFIG_OMX 0
#define CONFIG_OPENCL 0
#define CONFIG_V4L2_REQUEST 1
#define CONFIG_AMF 0
#define CONFIG_AUDIOTOOLBOX 0
#define CONFIG_CUDA 0
#define CONFIG_CUDA_LLVM 0
#define CONFIG_CUVID 0
#define CONFIG_D3D11VA 0
#define CONFIG_D3D12VA 0
#define CONFIG_DXVA2 0
#define CONFIG_FFNVCODEC 0
#define CONFIG_LIBDRM 1
#define CONFIG_NVDEC 0
#define CONFIG_NVENC 0
#define CONFIG_VAAPI 0
#define CONFIG_VDPAU 0
#define CONFIG_VIDEOTOOLBOX 0
#define CONFIG_VULKAN 0
#define CONFIG_V4L2_M2M 1
#define CONFIG_FTRAPV 0
#define CONFIG_GRAY 0
#define CONFIG_HARDCODED_TABLES 0
#define CONFIG_OMX_RPI 0
#define CONFIG_RUNTIME_CPUDETECT 1
#define CONFIG_SAFE_BITSTREAM_READER 1
#define CONFIG_SAND 1
#define CONFIG_SHARED 1
#define CONFIG_SMALL 0
#define CONFIG_STATIC 0
#define CONFIG_SWSCALE_ALPHA 1
#define CONFIG_V4L2_REQ_HEVC_VX 0
#define CONFIG_VOUT_DRM 1
#define CONFIG_VOUT_EGL 0
#define CONFIG_GPL 0
#define CONFIG_NONFREE 0
#define CONFIG_VERSION3 0
#define CONFIG_AVDEVICE 0
#define CONFIG_AVFILTER 1
#define CONFIG_SWSCALE 1
#define CONFIG_POSTPROC 0
#define CONFIG_AVFORMAT 1
#define CONFIG_AVCODEC 1
#define CONFIG_SWRESAMPLE 1
#define CONFIG_AVUTIL 1
#define CONFIG_FFPLAY 0
#define CONFIG_FFPROBE 0
#define CONFIG_FFMPEG 0
#define CONFIG_DWT 1
#define CONFIG_ERROR_RESILIENCE 1
#define CONFIG_FAAN 1
#define CONFIG_FAST_UNALIGNED 1
#define CONFIG_IAMF 1
#define CONFIG_LSP 1
#define CONFIG_PIXELUTILS 0
#define CONFIG_NETWORK 1
#define CONFIG_AUTODETECT 0
#define CONFIG_FONTCONFIG 0
#define CONFIG_LARGE_TESTS 1
#define CONFIG_LINUX_PERF 0
#define CONFIG_MACOS_KPERF 0
#define CONFIG_MEMORY_POISONING 0
#define CONFIG_NEON_CLOBBER_TEST 0
#define CONFIG_OSSFUZZ 0
#define CONFIG_PIC 1
#define CONFIG_PTX_COMPRESSION 1
#define CONFIG_THUMB 0
#define CONFIG_VALGRIND_BACKTRACE 0
#define CONFIG_XMM_CLOBBER_TEST 0
#define CONFIG_BSFS 1
#define CONFIG_DECODERS 1
#define CONFIG_ENCODERS 1
#define CONFIG_HWACCELS 1
#define CONFIG_PARSERS 1
#define CONFIG_INDEVS 0
#define CONFIG_OUTDEVS 1
#define CONFIG_FILTERS 0
#define CONFIG_DEMUXERS 1
#define CONFIG_MUXERS 1
#define CONFIG_PROTOCOLS 1
#define CONFIG_AANDCTTABLES 1
#define CONFIG_AC3DSP 1
#define CONFIG_ADTS_HEADER 1
#define CONFIG_ATSC_A53 1
#define CONFIG_AUDIO_FRAME_QUEUE 1
#define CONFIG_AUDIODSP 1
#define CONFIG_BLOCKDSP 1
#define CONFIG_BSWAPDSP 1
#define CONFIG_CABAC 1
#define CONFIG_CBS 1
#define CONFIG_CBS_AV1 1
#define CONFIG_CBS_H264 1
#define CONFIG_CBS_H265 1
#define CONFIG_CBS_H266 1
#define CONFIG_CBS_JPEG 0
#define CONFIG_CBS_MPEG2 1
#define CONFIG_CBS_VP8 1
#define CONFIG_CBS_VP9 1
#define CONFIG_D3D12VA_ENCODE 0
#define CONFIG_DEFLATE_WRAPPER 1
#define CONFIG_DIRAC_PARSE 1
#define CONFIG_DNN 0
#define CONFIG_DOVI_RPUDEC 1
#define CONFIG_DOVI_RPUENC 1
#define CONFIG_DVPROFILE 1
#define CONFIG_EVCPARSE 1
#define CONFIG_EXIF 1
#define CONFIG_FAANDCT 1
#define CONFIG_FAANIDCT 1
#define CONFIG_FDCTDSP 1
#define CONFIG_FMTCONVERT 1
#define CONFIG_FRAME_THREAD_ENCODER 1
#define CONFIG_G722DSP 1
#define CONFIG_GOLOMB 1
#define CONFIG_GPLV3 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 1
#define CONFIG_HEVC_SEI 1
#define CONFIG_HPELDSP 1
#define CONFIG_HUFFMAN 1
#define CONFIG_HUFFYUVDSP 1
#define CONFIG_HUFFYUVENCDSP 1
#define CONFIG_IAMFDEC 1
#define CONFIG_IAMFENC 1
#define CONFIG_IDCTDSP 1
#define CONFIG_IIRFILTER 1
#define CONFIG_INFLATE_WRAPPER 1
#define CONFIG_INTRAX8 1
#define CONFIG_ISO_MEDIA 1
#define CONFIG_ISO_WRITER 1
#define CONFIG_IVIDSP 1
#define CONFIG_JPEGTABLES 1
#define CONFIG_LGPLV3 0
#define CONFIG_LIBX262 0
#define CONFIG_LIBX264_HDR10 0
#define CONFIG_LLAUDDSP 1
#define CONFIG_LLVIDDSP 1
#define CONFIG_LLVIDENCDSP 1
#define CONFIG_LPC 1
#define CONFIG_LZF 1
#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 1
#define CONFIG_MPEGVIDEODEC 1
#define CONFIG_MPEGVIDEOENC 1
#define CONFIG_MSMPEG4DEC 1
#define CONFIG_MSMPEG4ENC 1
#define CONFIG_MSS34DSP 1
#define CONFIG_PIXBLOCKDSP 1
#define CONFIG_QPELDSP 1
#define CONFIG_QSV 0
#define CONFIG_QSVDEC 0
#define CONFIG_QSVENC 0
#define CONFIG_QSVVPP 0
#define CONFIG_RANGECODER 1
#define CONFIG_RIFFDEC 1
#define CONFIG_RIFFENC 1
#define CONFIG_RTPDEC 1
#define CONFIG_RTPENC_CHAIN 1
#define CONFIG_RV34DSP 1
#define CONFIG_SAND 1
#define CONFIG_SCENE_SAD 0
#define CONFIG_SINEWIN 1
#define CONFIG_SNAPPY 1
#define CONFIG_SRTP 1
#define CONFIG_STARTCODE 1
#define CONFIG_TEXTUREDSP 1
#define CONFIG_TEXTUREDSPENC 1
#define CONFIG_TPELDSP 1
#define CONFIG_VAAPI_1 0
#define CONFIG_VAAPI_ENCODE 0
#define CONFIG_VC1DSP 1
#define CONFIG_VIDEODSP 1
#define CONFIG_VP3DSP 1
#define CONFIG_VP56DSP 1
#define CONFIG_VP8DSP 1
#define CONFIG_VULKAN_ENCODE 0
#define CONFIG_WMA_FREQS 1
#define CONFIG_WMV2DSP 1
#endif /* FFMPEG_CONFIG_H */

2242
config_components.h Normal file

File diff suppressed because it is too large Load diff

12
configure vendored
View file

@ -7384,6 +7384,18 @@ if disabled vulkan; then
disable libglslang libshaderc spirv_compiler disable libglslang libshaderc spirv_compiler
fi fi
# Raspberry Pi - Android
case $target_os in
android)
enable libdav1d
enable libdrm libdrm_getfb2 linux_dma_buf_h
enable libudev
enable sand
enable v4l2_request linux_videodev2_h linux_media_h v4l2_timeval_to_ns
enable vout_drm vout_drm_outdev
;;
esac
if enabled x86; then if enabled x86; then
case $target_os in case $target_os in
freebsd|mingw32*|mingw64*|win32|win64|linux|cygwin*) freebsd|mingw32*|mingw64*|win32|win64|linux|cygwin*)

50
configure-android Executable file
View file

@ -0,0 +1,50 @@
#!/bin/bash
#
# Copyright (C) 2025 KonstaKANG
# Copyright (C) 2025 Venkata Atchuta Bheemeswara Sarma Darbha
#
# SPDX-License-Identifier: LGPL-2.1-or-later
#
if [ ! -d "$ANDROID_NDK_HOME" ]; then
echo "ANDROID_NDK_HOME environment variable is not properly set!"
exit 1
fi
TOOLS_BASE="$ANDROID_NDK_HOME/toolchains/llvm/prebuilt/linux-x86_64/bin"
ARCH_CONFIG=" \
--arch=aarch64 \
--enable-cross-compile \
--target-os=android \
--cross-prefix=${TOOLS_BASE}/aarch64/aarch64-linux-android-4.9/bin/aarch64-linux-android- \
--cc=${TOOLS_BASE}/aarch64-linux-android35-clang \
--cxx=${TOOLS_BASE}/aarch64-linux-android35-clang++ \
--ar=${TOOLS_BASE}/llvm-ar \
--nm=${TOOLS_BASE}/llvm-nm \
--ranlib=${TOOLS_BASE}/llvm-ranlib \
--strip=${TOOLS_BASE}/llvm-strip \
--x86asmexe=${TOOLS_BASE}/yasm"
FFMPEG_CONFIG=" \
--disable-avdevice \
--disable-debug \
--disable-doc \
--disable-filters \
--disable-programs \
--disable-static \
--enable-shared"
echo "Generating configuration..."
echo "./configure $ARCH_CONFIG $FFMPEG_CONFIG"
./configure $ARCH_CONFIG $FFMPEG_CONFIG
cat > libavutil/ffversion.h <<EOF
#ifndef AVUTIL_FFVERSION_H
#define AVUTIL_FFVERSION_H
#define FFMPEG_VERSION "$(cat RELEASE) (Venkata Atchuta Bheemeswara Sarma Darbha)"
#endif /* AVUTIL_FFVERSION_H */
EOF
exit 0

1
ffbuild/.gitignore vendored
View file

@ -3,5 +3,4 @@
/bin2c.exe /bin2c.exe
/config.fate /config.fate
/config.log /config.log
/config.mak
/config.sh /config.sh

3181
ffbuild/config.mak Normal file

File diff suppressed because it is too large Load diff

View file

@ -71,7 +71,7 @@
#include "libavutil/bprint.h" #include "libavutil/bprint.h"
#include "libavutil/dict.h" #include "libavutil/dict.h"
#include "libavutil/mem.h" #include "libavutil/mem.h"
#include "libavutil/time.h" #include "libavutil/avtime.h"
#include "libavformat/avformat.h" #include "libavformat/avformat.h"

View file

@ -28,7 +28,7 @@
#include "libavutil/pixdesc.h" #include "libavutil/pixdesc.h"
#include "libavutil/pixfmt.h" #include "libavutil/pixfmt.h"
#include "libavutil/stereo3d.h" #include "libavutil/stereo3d.h"
#include "libavutil/time.h" #include "libavutil/avtime.h"
#include "libavutil/timestamp.h" #include "libavutil/timestamp.h"
#include "libavcodec/avcodec.h" #include "libavcodec/avcodec.h"

View file

@ -32,7 +32,7 @@
#include "libavutil/opt.h" #include "libavutil/opt.h"
#include "libavutil/parseutils.h" #include "libavutil/parseutils.h"
#include "libavutil/pixdesc.h" #include "libavutil/pixdesc.h"
#include "libavutil/time.h" #include "libavutil/avtime.h"
#include "libavutil/timestamp.h" #include "libavutil/timestamp.h"
#include "libavcodec/bsf.h" #include "libavcodec/bsf.h"

View file

@ -33,7 +33,7 @@
#include "libavutil/mem.h" #include "libavutil/mem.h"
#include "libavutil/pixdesc.h" #include "libavutil/pixdesc.h"
#include "libavutil/rational.h" #include "libavutil/rational.h"
#include "libavutil/time.h" #include "libavutil/avtime.h"
#include "libavutil/timestamp.h" #include "libavutil/timestamp.h"
#include "libavcodec/avcodec.h" #include "libavcodec/avcodec.h"

View file

@ -35,7 +35,7 @@
#include "libavutil/pixdesc.h" #include "libavutil/pixdesc.h"
#include "libavutil/pixfmt.h" #include "libavutil/pixfmt.h"
#include "libavutil/samplefmt.h" #include "libavutil/samplefmt.h"
#include "libavutil/time.h" #include "libavutil/avtime.h"
#include "libavutil/timestamp.h" #include "libavutil/timestamp.h"
// FIXME private header, used for mid_pred() // FIXME private header, used for mid_pred()

View file

@ -30,7 +30,7 @@
#include "libavutil/intreadwrite.h" #include "libavutil/intreadwrite.h"
#include "libavutil/log.h" #include "libavutil/log.h"
#include "libavutil/mem.h" #include "libavutil/mem.h"
#include "libavutil/time.h" #include "libavutil/avtime.h"
#include "libavutil/timestamp.h" #include "libavutil/timestamp.h"
#include "libavcodec/packet.h" #include "libavcodec/packet.h"

View file

@ -38,7 +38,7 @@
#include "libavutil/mem.h" #include "libavutil/mem.h"
#include "libavutil/thread.h" #include "libavutil/thread.h"
#include "libavutil/threadmessage.h" #include "libavutil/threadmessage.h"
#include "libavutil/time.h" #include "libavutil/avtime.h"
// 100 ms // 100 ms
// FIXME: some other value? make this dynamic? // FIXME: some other value? make this dynamic?

View file

@ -38,7 +38,7 @@
#include "libavutil/dict.h" #include "libavutil/dict.h"
#include "libavutil/fifo.h" #include "libavutil/fifo.h"
#include "libavutil/samplefmt.h" #include "libavutil/samplefmt.h"
#include "libavutil/time.h" #include "libavutil/avtime.h"
#include "libavutil/bprint.h" #include "libavutil/bprint.h"
#include "libavformat/avformat.h" #include "libavformat/avformat.h"
#include "libavdevice/avdevice.h" #include "libavdevice/avdevice.h"

View file

@ -1,6 +1,3 @@
/*_tablegen /*_tablegen
/*_tables.c /*_tables.c
/*_tables.h /*_tables.h
/bsf_list.c
/codec_list.c
/parser_list.c

1061
libavcodec/Android.bp Normal file

File diff suppressed because it is too large Load diff

View file

@ -31,7 +31,7 @@
#endif #endif
#include "libavutil/mem.h" #include "libavutil/mem.h"
#include "libavutil/pixdesc.h" #include "libavutil/pixdesc.h"
#include "libavutil/time.h" #include "libavutil/avtime.h"
#include "amfenc.h" #include "amfenc.h"
#include "encode.h" #include "encode.h"

50
libavcodec/bsf_list.c Normal file
View file

@ -0,0 +1,50 @@
static const FFBitStreamFilter * const bitstream_filters[] = {
&ff_aac_adtstoasc_bsf,
// &ff_apv_metadata_bsf,
&ff_av1_frame_merge_bsf,
&ff_av1_frame_split_bsf,
&ff_av1_metadata_bsf,
&ff_chomp_bsf,
&ff_dump_extradata_bsf,
&ff_dca_core_bsf,
&ff_dovi_rpu_bsf,
&ff_dts2pts_bsf,
&ff_dv_error_marker_bsf,
&ff_eac3_core_bsf,
// &ff_eia608_to_smpte436m_bsf,
&ff_evc_frame_merge_bsf,
&ff_extract_extradata_bsf,
&ff_filter_units_bsf,
&ff_h264_metadata_bsf,
&ff_h264_mp4toannexb_bsf,
&ff_h264_redundant_pps_bsf,
&ff_hapqa_extract_bsf,
&ff_hevc_metadata_bsf,
&ff_hevc_mp4toannexb_bsf,
&ff_imx_dump_header_bsf,
&ff_media100_to_mjpegb_bsf,
&ff_mjpeg2jpeg_bsf,
&ff_mjpega_dump_header_bsf,
&ff_mpeg2_metadata_bsf,
&ff_mpeg4_unpack_bframes_bsf,
&ff_mov2textsub_bsf,
&ff_noise_bsf,
&ff_null_bsf,
&ff_opus_metadata_bsf,
&ff_pcm_rechunk_bsf,
&ff_pgs_frame_merge_bsf,
&ff_prores_metadata_bsf,
&ff_remove_extradata_bsf,
&ff_setts_bsf,
&ff_showinfo_bsf,
// &ff_smpte436m_to_eia608_bsf,
&ff_text2movsub_bsf,
&ff_trace_headers_bsf,
&ff_truehd_core_bsf,
&ff_vp9_metadata_bsf,
&ff_vp9_raw_reorder_bsf,
&ff_vp9_superframe_bsf,
&ff_vp9_superframe_split_bsf,
&ff_vvc_metadata_bsf,
&ff_vvc_mp4toannexb_bsf,
NULL };

View file

@ -245,6 +245,7 @@ typedef struct AV1RawFrameHeader {
uint8_t segmentation_update_data; uint8_t segmentation_update_data;
uint8_t feature_enabled[AV1_MAX_SEGMENTS][AV1_SEG_LVL_MAX]; uint8_t feature_enabled[AV1_MAX_SEGMENTS][AV1_SEG_LVL_MAX];
int16_t feature_value[AV1_MAX_SEGMENTS][AV1_SEG_LVL_MAX]; int16_t feature_value[AV1_MAX_SEGMENTS][AV1_SEG_LVL_MAX];
uint8_t last_active_seg_id;
uint8_t delta_q_present; uint8_t delta_q_present;
uint8_t delta_q_res; uint8_t delta_q_res;

699
libavcodec/codec_list.c Normal file
View file

@ -0,0 +1,699 @@
static const FFCodec * const codec_list[] = {
&ff_a64multi_encoder,
&ff_a64multi5_encoder,
&ff_alias_pix_encoder,
&ff_amv_encoder,
&ff_apng_encoder,
&ff_asv1_encoder,
&ff_asv2_encoder,
&ff_avrp_encoder,
&ff_avui_encoder,
&ff_bitpacked_encoder,
&ff_bmp_encoder,
&ff_cfhd_encoder,
&ff_cinepak_encoder,
&ff_cljr_encoder,
&ff_comfortnoise_encoder,
&ff_dnxhd_encoder,
&ff_dpx_encoder,
&ff_dvvideo_encoder,
&ff_dxv_encoder,
&ff_exr_encoder,
&ff_ffv1_encoder,
&ff_ffvhuff_encoder,
&ff_fits_encoder,
&ff_flashsv_encoder,
&ff_flashsv2_encoder,
&ff_flv_encoder,
&ff_gif_encoder,
&ff_h261_encoder,
&ff_h263_encoder,
&ff_h263p_encoder,
&ff_huffyuv_encoder,
&ff_jpeg2000_encoder,
&ff_jpegls_encoder,
&ff_ljpeg_encoder,
&ff_magicyuv_encoder,
&ff_mjpeg_encoder,
&ff_mpeg1video_encoder,
&ff_mpeg2video_encoder,
&ff_mpeg4_encoder,
&ff_msmpeg4v2_encoder,
&ff_msmpeg4v3_encoder,
&ff_msrle_encoder,
&ff_msvideo1_encoder,
&ff_pam_encoder,
&ff_pbm_encoder,
&ff_pcx_encoder,
&ff_pfm_encoder,
&ff_pgm_encoder,
&ff_pgmyuv_encoder,
&ff_phm_encoder,
&ff_png_encoder,
&ff_ppm_encoder,
&ff_prores_encoder,
&ff_prores_aw_encoder,
&ff_prores_ks_encoder,
&ff_qoi_encoder,
&ff_qtrle_encoder,
&ff_r10k_encoder,
&ff_r210_encoder,
&ff_rawvideo_encoder,
&ff_roq_encoder,
&ff_rpza_encoder,
&ff_rv10_encoder,
&ff_rv20_encoder,
&ff_s302m_encoder,
&ff_sgi_encoder,
&ff_smc_encoder,
&ff_snow_encoder,
&ff_speedhq_encoder,
&ff_sunrast_encoder,
&ff_svq1_encoder,
&ff_targa_encoder,
&ff_tiff_encoder,
&ff_utvideo_encoder,
&ff_v210_encoder,
&ff_v308_encoder,
&ff_v408_encoder,
&ff_v410_encoder,
&ff_vbn_encoder,
&ff_vc2_encoder,
&ff_wbmp_encoder,
&ff_wrapped_avframe_encoder,
&ff_wmv1_encoder,
&ff_wmv2_encoder,
&ff_xbm_encoder,
&ff_xface_encoder,
&ff_xwd_encoder,
&ff_y41p_encoder,
&ff_yuv4_encoder,
&ff_zlib_encoder,
&ff_zmbv_encoder,
&ff_aac_encoder,
&ff_ac3_encoder,
&ff_ac3_fixed_encoder,
&ff_alac_encoder,
&ff_aptx_encoder,
&ff_aptx_hd_encoder,
&ff_dca_encoder,
&ff_dfpwm_encoder,
&ff_eac3_encoder,
&ff_flac_encoder,
&ff_g723_1_encoder,
&ff_hdr_encoder,
&ff_mlp_encoder,
&ff_mp2_encoder,
&ff_mp2fixed_encoder,
&ff_nellymoser_encoder,
&ff_opus_encoder,
&ff_ra_144_encoder,
&ff_sbc_encoder,
&ff_truehd_encoder,
&ff_tta_encoder,
&ff_vorbis_encoder,
&ff_wavpack_encoder,
&ff_wmav1_encoder,
&ff_wmav2_encoder,
&ff_pcm_alaw_encoder,
&ff_pcm_bluray_encoder,
&ff_pcm_dvd_encoder,
&ff_pcm_f32be_encoder,
&ff_pcm_f32le_encoder,
&ff_pcm_f64be_encoder,
&ff_pcm_f64le_encoder,
&ff_pcm_mulaw_encoder,
&ff_pcm_s8_encoder,
&ff_pcm_s8_planar_encoder,
&ff_pcm_s16be_encoder,
&ff_pcm_s16be_planar_encoder,
&ff_pcm_s16le_encoder,
&ff_pcm_s16le_planar_encoder,
&ff_pcm_s24be_encoder,
&ff_pcm_s24daud_encoder,
&ff_pcm_s24le_encoder,
&ff_pcm_s24le_planar_encoder,
&ff_pcm_s32be_encoder,
&ff_pcm_s32le_encoder,
&ff_pcm_s32le_planar_encoder,
&ff_pcm_s64be_encoder,
&ff_pcm_s64le_encoder,
&ff_pcm_u8_encoder,
&ff_pcm_u16be_encoder,
&ff_pcm_u16le_encoder,
&ff_pcm_u24be_encoder,
&ff_pcm_u24le_encoder,
&ff_pcm_u32be_encoder,
&ff_pcm_u32le_encoder,
&ff_pcm_vidc_encoder,
&ff_roq_dpcm_encoder,
&ff_adpcm_adx_encoder,
&ff_adpcm_argo_encoder,
&ff_adpcm_g722_encoder,
&ff_adpcm_g726_encoder,
&ff_adpcm_g726le_encoder,
&ff_adpcm_ima_amv_encoder,
&ff_adpcm_ima_alp_encoder,
&ff_adpcm_ima_apm_encoder,
&ff_adpcm_ima_qt_encoder,
&ff_adpcm_ima_ssi_encoder,
&ff_adpcm_ima_wav_encoder,
&ff_adpcm_ima_ws_encoder,
&ff_adpcm_ms_encoder,
&ff_adpcm_swf_encoder,
&ff_adpcm_yamaha_encoder,
&ff_ssa_encoder,
&ff_ass_encoder,
&ff_dvbsub_encoder,
&ff_dvdsub_encoder,
&ff_movtext_encoder,
&ff_srt_encoder,
&ff_subrip_encoder,
&ff_text_encoder,
&ff_ttml_encoder,
&ff_webvtt_encoder,
&ff_xsub_encoder,
&ff_h263_v4l2m2m_encoder,
&ff_h264_v4l2m2m_encoder,
&ff_hevc_v4l2m2m_encoder,
&ff_mpeg4_v4l2m2m_encoder,
&ff_vp8_v4l2m2m_encoder,
&ff_vnull_encoder,
&ff_anull_encoder,
&ff_aasc_decoder,
&ff_aic_decoder,
&ff_alias_pix_decoder,
&ff_agm_decoder,
&ff_amv_decoder,
&ff_anm_decoder,
&ff_ansi_decoder,
&ff_apng_decoder,
// &ff_apv_decoder,
&ff_arbc_decoder,
&ff_argo_decoder,
&ff_asv1_decoder,
&ff_asv2_decoder,
&ff_aura_decoder,
&ff_aura2_decoder,
&ff_avrp_decoder,
&ff_avrn_decoder,
&ff_avs_decoder,
&ff_avui_decoder,
&ff_bethsoftvid_decoder,
&ff_bfi_decoder,
&ff_bink_decoder,
&ff_bitpacked_decoder,
&ff_bmp_decoder,
&ff_bmv_video_decoder,
&ff_brender_pix_decoder,
&ff_c93_decoder,
&ff_cavs_decoder,
&ff_cdgraphics_decoder,
&ff_cdtoons_decoder,
&ff_cdxl_decoder,
&ff_cfhd_decoder,
&ff_cinepak_decoder,
&ff_clearvideo_decoder,
&ff_cljr_decoder,
&ff_cllc_decoder,
&ff_comfortnoise_decoder,
&ff_cpia_decoder,
&ff_cri_decoder,
&ff_cscd_decoder,
&ff_cyuv_decoder,
&ff_dds_decoder,
&ff_dfa_decoder,
&ff_dirac_decoder,
&ff_dnxhd_decoder,
&ff_dpx_decoder,
&ff_dsicinvideo_decoder,
&ff_dvaudio_decoder,
&ff_dvvideo_decoder,
&ff_dxa_decoder,
&ff_dxtory_decoder,
&ff_dxv_decoder,
&ff_eacmv_decoder,
&ff_eamad_decoder,
&ff_eatgq_decoder,
&ff_eatgv_decoder,
&ff_eatqi_decoder,
&ff_eightbps_decoder,
&ff_eightsvx_exp_decoder,
&ff_eightsvx_fib_decoder,
&ff_escape124_decoder,
&ff_escape130_decoder,
&ff_exr_decoder,
&ff_ffv1_decoder,
&ff_ffvhuff_decoder,
&ff_fic_decoder,
&ff_fits_decoder,
&ff_flashsv_decoder,
&ff_flashsv2_decoder,
&ff_flic_decoder,
&ff_flv_decoder,
&ff_fmvc_decoder,
&ff_fourxm_decoder,
&ff_fraps_decoder,
&ff_frwu_decoder,
&ff_g2m_decoder,
&ff_gdv_decoder,
&ff_gem_decoder,
&ff_gif_decoder,
&ff_h261_decoder,
&ff_h263_decoder,
&ff_h263i_decoder,
&ff_h263p_decoder,
&ff_h263_v4l2m2m_decoder,
&ff_h264_decoder,
&ff_h264_v4l2m2m_decoder,
&ff_hap_decoder,
&ff_hevc_decoder,
&ff_hevc_v4l2m2m_decoder,
&ff_hnm4_video_decoder,
&ff_hq_hqa_decoder,
&ff_hqx_decoder,
&ff_huffyuv_decoder,
&ff_hymt_decoder,
&ff_idcin_decoder,
&ff_iff_ilbm_decoder,
&ff_imm4_decoder,
&ff_imm5_decoder,
&ff_indeo2_decoder,
&ff_indeo3_decoder,
&ff_indeo4_decoder,
&ff_indeo5_decoder,
&ff_interplay_video_decoder,
&ff_ipu_decoder,
&ff_jpeg2000_decoder,
&ff_jpegls_decoder,
&ff_jv_decoder,
&ff_kgv1_decoder,
&ff_kmvc_decoder,
&ff_lagarith_decoder,
&ff_lead_decoder,
&ff_loco_decoder,
&ff_lscr_decoder,
&ff_m101_decoder,
&ff_magicyuv_decoder,
&ff_mdec_decoder,
&ff_media100_decoder,
&ff_mimic_decoder,
&ff_mjpeg_decoder,
&ff_mjpegb_decoder,
&ff_mmvideo_decoder,
&ff_mobiclip_decoder,
&ff_motionpixels_decoder,
&ff_mpeg1video_decoder,
&ff_mpeg2video_decoder,
&ff_mpeg4_decoder,
&ff_mpeg4_v4l2m2m_decoder,
&ff_mpegvideo_decoder,
&ff_mpeg1_v4l2m2m_decoder,
&ff_mpeg2_v4l2m2m_decoder,
&ff_msa1_decoder,
&ff_mscc_decoder,
&ff_msmpeg4v1_decoder,
&ff_msmpeg4v2_decoder,
&ff_msmpeg4v3_decoder,
&ff_msp2_decoder,
&ff_msrle_decoder,
&ff_mss1_decoder,
&ff_mss2_decoder,
&ff_msvideo1_decoder,
&ff_mszh_decoder,
&ff_mts2_decoder,
&ff_mv30_decoder,
&ff_mvc1_decoder,
&ff_mvc2_decoder,
&ff_mvdv_decoder,
&ff_mvha_decoder,
&ff_mwsc_decoder,
&ff_mxpeg_decoder,
&ff_notchlc_decoder,
&ff_nuv_decoder,
&ff_paf_video_decoder,
&ff_pam_decoder,
&ff_pbm_decoder,
&ff_pcx_decoder,
&ff_pdv_decoder,
&ff_pfm_decoder,
&ff_pgm_decoder,
&ff_pgmyuv_decoder,
&ff_pgx_decoder,
&ff_phm_decoder,
&ff_photocd_decoder,
&ff_pictor_decoder,
&ff_pixlet_decoder,
&ff_png_decoder,
&ff_ppm_decoder,
&ff_prores_decoder,
// &ff_prores_raw_decoder,
&ff_prosumer_decoder,
&ff_psd_decoder,
&ff_ptx_decoder,
&ff_qdraw_decoder,
&ff_qoi_decoder,
&ff_qpeg_decoder,
&ff_qtrle_decoder,
&ff_r10k_decoder,
&ff_r210_decoder,
&ff_rasc_decoder,
&ff_rawvideo_decoder,
&ff_rka_decoder,
&ff_rl2_decoder,
&ff_roq_decoder,
&ff_rpza_decoder,
&ff_rscc_decoder,
&ff_rtv1_decoder,
&ff_rv10_decoder,
&ff_rv20_decoder,
&ff_rv30_decoder,
&ff_rv40_decoder,
// &ff_rv60_decoder,
&ff_s302m_decoder,
&ff_sanm_decoder,
&ff_scpr_decoder,
&ff_screenpresso_decoder,
&ff_sga_decoder,
&ff_sgi_decoder,
&ff_sgirle_decoder,
&ff_sheervideo_decoder,
&ff_simbiosis_imx_decoder,
&ff_smacker_decoder,
&ff_smc_decoder,
&ff_smvjpeg_decoder,
&ff_snow_decoder,
&ff_sp5x_decoder,
&ff_speedhq_decoder,
&ff_speex_decoder,
&ff_srgc_decoder,
&ff_sunrast_decoder,
&ff_svq1_decoder,
&ff_svq3_decoder,
&ff_targa_decoder,
&ff_targa_y216_decoder,
&ff_tdsc_decoder,
&ff_theora_decoder,
&ff_thp_decoder,
&ff_tiertexseqvideo_decoder,
&ff_tiff_decoder,
&ff_tmv_decoder,
&ff_truemotion1_decoder,
&ff_truemotion2_decoder,
&ff_truemotion2rt_decoder,
&ff_tscc_decoder,
&ff_tscc2_decoder,
&ff_txd_decoder,
&ff_ulti_decoder,
&ff_utvideo_decoder,
&ff_v210_decoder,
&ff_v210x_decoder,
&ff_v308_decoder,
&ff_v408_decoder,
&ff_v410_decoder,
&ff_vb_decoder,
&ff_vbn_decoder,
&ff_vble_decoder,
&ff_vc1_decoder,
&ff_vc1image_decoder,
&ff_vc1_v4l2m2m_decoder,
&ff_vcr1_decoder,
&ff_vmdvideo_decoder,
&ff_vmix_decoder,
&ff_vmnc_decoder,
&ff_vp3_decoder,
&ff_vp4_decoder,
&ff_vp5_decoder,
&ff_vp6_decoder,
&ff_vp6a_decoder,
&ff_vp6f_decoder,
&ff_vp7_decoder,
&ff_vp8_decoder,
&ff_vp8_v4l2m2m_decoder,
&ff_vp9_decoder,
&ff_vp9_v4l2m2m_decoder,
&ff_vqa_decoder,
&ff_vqc_decoder,
&ff_vvc_decoder,
&ff_wbmp_decoder,
&ff_webp_decoder,
&ff_wcmv_decoder,
&ff_wrapped_avframe_decoder,
&ff_wmv1_decoder,
&ff_wmv2_decoder,
&ff_wmv3_decoder,
&ff_wmv3image_decoder,
&ff_wnv1_decoder,
&ff_xan_wc3_decoder,
&ff_xan_wc4_decoder,
&ff_xbm_decoder,
&ff_xface_decoder,
&ff_xl_decoder,
&ff_xpm_decoder,
&ff_xwd_decoder,
&ff_y41p_decoder,
&ff_ylc_decoder,
&ff_yop_decoder,
&ff_yuv4_decoder,
&ff_zero12v_decoder,
&ff_zerocodec_decoder,
&ff_zlib_decoder,
&ff_zmbv_decoder,
&ff_aac_decoder,
&ff_aac_fixed_decoder,
&ff_aac_latm_decoder,
&ff_ac3_decoder,
&ff_ac3_fixed_decoder,
&ff_acelp_kelvin_decoder,
&ff_alac_decoder,
&ff_als_decoder,
&ff_amrnb_decoder,
&ff_amrwb_decoder,
&ff_apac_decoder,
&ff_ape_decoder,
&ff_aptx_decoder,
&ff_aptx_hd_decoder,
&ff_atrac1_decoder,
&ff_atrac3_decoder,
&ff_atrac3al_decoder,
&ff_atrac3p_decoder,
&ff_atrac3pal_decoder,
&ff_atrac9_decoder,
&ff_binkaudio_dct_decoder,
&ff_binkaudio_rdft_decoder,
&ff_bmv_audio_decoder,
&ff_bonk_decoder,
&ff_cook_decoder,
&ff_dca_decoder,
&ff_dfpwm_decoder,
&ff_dolby_e_decoder,
&ff_dsd_lsbf_decoder,
&ff_dsd_msbf_decoder,
&ff_dsd_lsbf_planar_decoder,
&ff_dsd_msbf_planar_decoder,
&ff_dsicinaudio_decoder,
&ff_dss_sp_decoder,
&ff_dst_decoder,
&ff_eac3_decoder,
&ff_evrc_decoder,
&ff_fastaudio_decoder,
&ff_ffwavesynth_decoder,
&ff_flac_decoder,
&ff_ftr_decoder,
&ff_g723_1_decoder,
// &ff_g728_decoder,
&ff_g729_decoder,
&ff_gsm_decoder,
&ff_gsm_ms_decoder,
&ff_hca_decoder,
&ff_hcom_decoder,
&ff_hdr_decoder,
&ff_iac_decoder,
&ff_ilbc_decoder,
&ff_imc_decoder,
&ff_interplay_acm_decoder,
&ff_mace3_decoder,
&ff_mace6_decoder,
&ff_metasound_decoder,
&ff_misc4_decoder,
&ff_mlp_decoder,
&ff_mp1_decoder,
&ff_mp1float_decoder,
&ff_mp2_decoder,
&ff_mp2float_decoder,
&ff_mp3float_decoder,
&ff_mp3_decoder,
&ff_mp3adufloat_decoder,
&ff_mp3adu_decoder,
&ff_mp3on4float_decoder,
&ff_mp3on4_decoder,
&ff_mpc7_decoder,
&ff_mpc8_decoder,
&ff_msnsiren_decoder,
&ff_nellymoser_decoder,
&ff_on2avc_decoder,
&ff_opus_decoder,
&ff_osq_decoder,
&ff_paf_audio_decoder,
&ff_qcelp_decoder,
&ff_qdm2_decoder,
&ff_qdmc_decoder,
&ff_qoa_decoder,
&ff_ra_144_decoder,
&ff_ra_288_decoder,
&ff_ralf_decoder,
&ff_sbc_decoder,
&ff_shorten_decoder,
&ff_sipr_decoder,
&ff_siren_decoder,
&ff_smackaud_decoder,
&ff_sonic_decoder,
&ff_tak_decoder,
&ff_truehd_decoder,
&ff_truespeech_decoder,
&ff_tta_decoder,
&ff_twinvq_decoder,
&ff_vmdaudio_decoder,
&ff_vorbis_decoder,
&ff_wavarc_decoder,
&ff_wavpack_decoder,
&ff_wmalossless_decoder,
&ff_wmapro_decoder,
&ff_wmav1_decoder,
&ff_wmav2_decoder,
&ff_wmavoice_decoder,
&ff_ws_snd1_decoder,
&ff_xma1_decoder,
&ff_xma2_decoder,
&ff_pcm_alaw_decoder,
&ff_pcm_bluray_decoder,
&ff_pcm_dvd_decoder,
&ff_pcm_f16le_decoder,
&ff_pcm_f24le_decoder,
&ff_pcm_f32be_decoder,
&ff_pcm_f32le_decoder,
&ff_pcm_f64be_decoder,
&ff_pcm_f64le_decoder,
&ff_pcm_lxf_decoder,
&ff_pcm_mulaw_decoder,
&ff_pcm_s8_decoder,
&ff_pcm_s8_planar_decoder,
&ff_pcm_s16be_decoder,
&ff_pcm_s16be_planar_decoder,
&ff_pcm_s16le_decoder,
&ff_pcm_s16le_planar_decoder,
&ff_pcm_s24be_decoder,
&ff_pcm_s24daud_decoder,
&ff_pcm_s24le_decoder,
&ff_pcm_s24le_planar_decoder,
&ff_pcm_s32be_decoder,
&ff_pcm_s32le_decoder,
&ff_pcm_s32le_planar_decoder,
&ff_pcm_s64be_decoder,
&ff_pcm_s64le_decoder,
&ff_pcm_sga_decoder,
&ff_pcm_u8_decoder,
&ff_pcm_u16be_decoder,
&ff_pcm_u16le_decoder,
&ff_pcm_u24be_decoder,
&ff_pcm_u24le_decoder,
&ff_pcm_u32be_decoder,
&ff_pcm_u32le_decoder,
&ff_pcm_vidc_decoder,
&ff_cbd2_dpcm_decoder,
&ff_derf_dpcm_decoder,
&ff_gremlin_dpcm_decoder,
&ff_interplay_dpcm_decoder,
&ff_roq_dpcm_decoder,
&ff_sdx2_dpcm_decoder,
&ff_sol_dpcm_decoder,
&ff_xan_dpcm_decoder,
&ff_wady_dpcm_decoder,
&ff_adpcm_4xm_decoder,
&ff_adpcm_adx_decoder,
&ff_adpcm_afc_decoder,
&ff_adpcm_agm_decoder,
&ff_adpcm_aica_decoder,
&ff_adpcm_argo_decoder,
&ff_adpcm_ct_decoder,
&ff_adpcm_dtk_decoder,
&ff_adpcm_ea_decoder,
&ff_adpcm_ea_maxis_xa_decoder,
&ff_adpcm_ea_r1_decoder,
&ff_adpcm_ea_r2_decoder,
&ff_adpcm_ea_r3_decoder,
&ff_adpcm_ea_xas_decoder,
&ff_adpcm_g722_decoder,
&ff_adpcm_g726_decoder,
&ff_adpcm_g726le_decoder,
&ff_adpcm_ima_acorn_decoder,
&ff_adpcm_ima_amv_decoder,
&ff_adpcm_ima_alp_decoder,
&ff_adpcm_ima_apc_decoder,
&ff_adpcm_ima_apm_decoder,
&ff_adpcm_ima_cunning_decoder,
&ff_adpcm_ima_dat4_decoder,
&ff_adpcm_ima_dk3_decoder,
&ff_adpcm_ima_dk4_decoder,
&ff_adpcm_ima_ea_eacs_decoder,
&ff_adpcm_ima_ea_sead_decoder,
&ff_adpcm_ima_iss_decoder,
&ff_adpcm_ima_moflex_decoder,
&ff_adpcm_ima_mtf_decoder,
&ff_adpcm_ima_oki_decoder,
&ff_adpcm_ima_qt_decoder,
&ff_adpcm_ima_rad_decoder,
&ff_adpcm_ima_ssi_decoder,
&ff_adpcm_ima_smjpeg_decoder,
&ff_adpcm_ima_wav_decoder,
&ff_adpcm_ima_ws_decoder,
// &ff_adpcm_ima_xbox_decoder,
&ff_adpcm_ms_decoder,
&ff_adpcm_mtaf_decoder,
&ff_adpcm_psx_decoder,
// &ff_adpcm_sanyo_decoder,
&ff_adpcm_sbpro_2_decoder,
&ff_adpcm_sbpro_3_decoder,
&ff_adpcm_sbpro_4_decoder,
&ff_adpcm_swf_decoder,
&ff_adpcm_thp_decoder,
&ff_adpcm_thp_le_decoder,
&ff_adpcm_vima_decoder,
&ff_adpcm_xa_decoder,
&ff_adpcm_xmd_decoder,
&ff_adpcm_yamaha_decoder,
&ff_adpcm_zork_decoder,
&ff_ssa_decoder,
&ff_ass_decoder,
&ff_ccaption_decoder,
&ff_dvbsub_decoder,
&ff_dvdsub_decoder,
&ff_jacosub_decoder,
&ff_microdvd_decoder,
&ff_movtext_decoder,
&ff_mpl2_decoder,
&ff_pgssub_decoder,
&ff_pjs_decoder,
&ff_realtext_decoder,
&ff_sami_decoder,
&ff_srt_decoder,
&ff_stl_decoder,
&ff_subrip_decoder,
&ff_subviewer_decoder,
&ff_subviewer1_decoder,
&ff_text_decoder,
&ff_vplayer_decoder,
&ff_webvtt_decoder,
&ff_xsub_decoder,
&ff_libdav1d_decoder,
&ff_bintext_decoder,
&ff_xbin_decoder,
&ff_idf_decoder,
&ff_av1_decoder,
&ff_vnull_decoder,
&ff_anull_decoder,
// &ff_hevc_v4l2request_hwaccel,
// &ff_vp8_v4l2request_hwaccel,
// &ff_vp9_v4l2request_hwaccel,
// &ff_h264_v4l2request_hwaccel,
NULL };

View file

@ -26,7 +26,7 @@
#include "libavutil/common.h" #include "libavutil/common.h"
#include "libavutil/log.h" #include "libavutil/log.h"
#include "libavutil/mem.h" #include "libavutil/mem.h"
#include "libavutil/time.h" #include "libavutil/avtime.h"
#include "libavutil/imgutils.h" #include "libavutil/imgutils.h"
#include "libavutil/hwcontext_d3d12va_internal.h" #include "libavutil/hwcontext_d3d12va_internal.h"
#include "libavutil/hwcontext_d3d12va.h" #include "libavutil/hwcontext_d3d12va.h"

View file

@ -27,7 +27,7 @@
#include "libavutil/common.h" #include "libavutil/common.h"
#include "libavutil/log.h" #include "libavutil/log.h"
#include "libavutil/mem.h" #include "libavutil/mem.h"
#include "libavutil/time.h" #include "libavutil/avtime.h"
#include "avcodec.h" #include "avcodec.h"
#include "decode.h" #include "decode.h"

View file

@ -29,7 +29,7 @@
#include "libavutil/mem.h" #include "libavutil/mem.h"
#include "libavutil/pixdesc.h" #include "libavutil/pixdesc.h"
#include "libavutil/stereo3d.h" #include "libavutil/stereo3d.h"
#include "libavutil/time.h" #include "libavutil/avtime.h"
#include "libavutil/intreadwrite.h" #include "libavutil/intreadwrite.h"
#include "libavutil/video_hint.h" #include "libavutil/video_hint.h"
#include "avcodec.h" #include "avcodec.h"

View file

@ -32,7 +32,7 @@
#include "libavutil/opt.h" #include "libavutil/opt.h"
#include "libavutil/pixdesc.h" #include "libavutil/pixdesc.h"
#include "libavutil/pixfmt.h" #include "libavutil/pixfmt.h"
#include "libavutil/time.h" #include "libavutil/avtime.h"
#include "libavutil/cpu.h" #include "libavutil/cpu.h"
#include "libavutil/avstring.h" #include "libavutil/avstring.h"

View file

@ -29,7 +29,7 @@
#include "libavutil/mem.h" #include "libavutil/mem.h"
#include "libavutil/log.h" #include "libavutil/log.h"
#include "libavutil/pixfmt.h" #include "libavutil/pixfmt.h"
#include "libavutil/time.h" #include "libavutil/avtime.h"
#include "libavutil/timestamp.h" #include "libavutil/timestamp.h"
#include "libavutil/channel_layout.h" #include "libavutil/channel_layout.h"

View file

@ -27,7 +27,7 @@
#include "libavutil/imgutils.h" #include "libavutil/imgutils.h"
#include "libavutil/mem.h" #include "libavutil/mem.h"
#include "libavutil/opt.h" #include "libavutil/opt.h"
#include "libavutil/time.h" #include "libavutil/avtime.h"
#include "codec_internal.h" #include "codec_internal.h"
#include "internal.h" #include "internal.h"
#include "compat/w32dlfcn.h" #include "compat/w32dlfcn.h"

62
libavcodec/parser_list.c Normal file
View file

@ -0,0 +1,62 @@
static const AVCodecParser * const parser_list[] = {
&ff_aac_parser,
&ff_aac_latm_parser,
&ff_ac3_parser,
&ff_adx_parser,
&ff_amr_parser,
&ff_av1_parser,
&ff_avs2_parser,
&ff_avs3_parser,
&ff_bmp_parser,
&ff_cavsvideo_parser,
&ff_cook_parser,
&ff_cri_parser,
&ff_dca_parser,
&ff_dirac_parser,
&ff_dnxhd_parser,
&ff_dolby_e_parser,
&ff_dpx_parser,
&ff_dvaudio_parser,
&ff_dvbsub_parser,
&ff_dvdsub_parser,
&ff_dvd_nav_parser,
&ff_evc_parser,
&ff_flac_parser,
&ff_ftr_parser,
&ff_g723_1_parser,
&ff_g729_parser,
&ff_gif_parser,
&ff_gsm_parser,
&ff_h261_parser,
&ff_h263_parser,
&ff_h264_parser,
&ff_hevc_parser,
&ff_hdr_parser,
&ff_ipu_parser,
&ff_jpeg2000_parser,
&ff_jpegxl_parser,
&ff_misc4_parser,
&ff_mjpeg_parser,
&ff_mlp_parser,
&ff_mpeg4video_parser,
&ff_mpegaudio_parser,
&ff_mpegvideo_parser,
&ff_opus_parser,
&ff_png_parser,
&ff_pnm_parser,
&ff_qoi_parser,
&ff_rv34_parser,
&ff_sbc_parser,
&ff_sipr_parser,
&ff_tak_parser,
&ff_vc1_parser,
&ff_vorbis_parser,
&ff_vp3_parser,
&ff_vp8_parser,
&ff_vp9_parser,
&ff_vvc_parser,
&ff_webp_parser,
&ff_xbm_parser,
&ff_xma_parser,
&ff_xwd_parser,
NULL };

View file

@ -153,9 +153,11 @@ typedef struct FrameThreadContext {
/* hwaccel state for thread-unsafe hwaccels is temporarily stored here in /* hwaccel state for thread-unsafe hwaccels is temporarily stored here in
* order to transfer its ownership to the next decoding thread without the * order to transfer its ownership to the next decoding thread without the
* need for extra synchronization */ * need for extra synchronization */
const AVHWAccel *stash_hwaccel;
void *stash_hwaccel_context; // change added by me
void *stash_hwaccel_priv; // const AVHWAccel *stash_hwaccel;
// void *stash_hwaccel_context;
// void *stash_hwaccel_priv;
} FrameThreadContext; } FrameThreadContext;
static int hwaccel_serial(const AVCodecContext *avctx) static int hwaccel_serial(const AVCodecContext *avctx)
@ -310,15 +312,19 @@ alloc_fail:
* pointers lying around; * pointers lying around;
* the state was transferred to FrameThreadContext in * the state was transferred to FrameThreadContext in
* ff_thread_finish_setup(), so nothing is leaked */ * ff_thread_finish_setup(), so nothing is leaked */
avctx->hwaccel = NULL;
avctx->hwaccel_context = NULL; // change added by me
avctx->internal->hwaccel_priv_data = NULL; // avctx->hwaccel = NULL;
// avctx->hwaccel_context = NULL;
// avctx->internal->hwaccel_priv_data = NULL;
p->hwaccel_serializing = 0; p->hwaccel_serializing = 0;
pthread_mutex_unlock(&p->parent->hwaccel_mutex); pthread_mutex_unlock(&p->parent->hwaccel_mutex);
} }
av_assert0(!avctx->hwaccel ||
(ffhwaccel(avctx->hwaccel)->caps_internal & HWACCEL_CAP_THREAD_SAFE)); // change added by me
// av_assert0(!avctx->hwaccel ||
// (ffhwaccel(avctx->hwaccel)->caps_internal & HWACCEL_CAP_THREAD_SAFE));
if (p->async_serializing) { if (p->async_serializing) {
p->async_serializing = 0; p->async_serializing = 0;
@ -386,11 +392,18 @@ FF_ENABLE_DEPRECATION_WARNINGS
dst->color_range = src->color_range; dst->color_range = src->color_range;
dst->chroma_sample_location = src->chroma_sample_location; dst->chroma_sample_location = src->chroma_sample_location;
// Added by me -
dst->hwaccel = src->hwaccel;
dst->hwaccel_context = src->hwaccel_context;
dst->sample_rate = src->sample_rate; dst->sample_rate = src->sample_rate;
dst->sample_fmt = src->sample_fmt; dst->sample_fmt = src->sample_fmt;
err = av_channel_layout_copy(&dst->ch_layout, &src->ch_layout); err = av_channel_layout_copy(&dst->ch_layout, &src->ch_layout);
if (err < 0) if (err < 0)
return err; return err;
// added by me
dst->internal->hwaccel_priv_data = src->internal->hwaccel_priv_data;
if (!!dst->hw_frames_ctx != !!src->hw_frames_ctx || if (!!dst->hw_frames_ctx != !!src->hw_frames_ctx ||
(dst->hw_frames_ctx && dst->hw_frames_ctx->data != src->hw_frames_ctx->data)) { (dst->hw_frames_ctx && dst->hw_frames_ctx->data != src->hw_frames_ctx->data)) {
@ -545,13 +558,14 @@ static int submit_packet(PerThreadContext *p, AVCodecContext *user_avctx,
} }
} }
/* transfer the stashed hwaccel state, if any */ // change added by me
av_assert0(!p->avctx->hwaccel || p->hwaccel_threadsafe); // /* transfer the stashed hwaccel state, if any */
if (!p->hwaccel_threadsafe) { // av_assert0(!p->avctx->hwaccel || p->hwaccel_threadsafe);
FFSWAP(const AVHWAccel*, p->avctx->hwaccel, fctx->stash_hwaccel); // if (!p->hwaccel_threadsafe) {
FFSWAP(void*, p->avctx->hwaccel_context, fctx->stash_hwaccel_context); // FFSWAP(const AVHWAccel*, p->avctx->hwaccel, fctx->stash_hwaccel);
FFSWAP(void*, p->avctx->internal->hwaccel_priv_data, fctx->stash_hwaccel_priv); // FFSWAP(void*, p->avctx->hwaccel_context, fctx->stash_hwaccel_context);
} // FFSWAP(void*, p->avctx->internal->hwaccel_priv_data, fctx->stash_hwaccel_priv);
// }
atomic_store(&p->state, STATE_SETTING_UP); atomic_store(&p->state, STATE_SETTING_UP);
pthread_cond_signal(&p->input_cond); pthread_cond_signal(&p->input_cond);
@ -695,12 +709,14 @@ void ff_thread_finish_setup(AVCodecContext *avctx) {
* save hwaccel state for passing to the next thread; * save hwaccel state for passing to the next thread;
* this is done here so that this worker thread can wipe its own hwaccel * this is done here so that this worker thread can wipe its own hwaccel
* state after decoding, without requiring synchronization */ * state after decoding, without requiring synchronization */
av_assert0(!p->parent->stash_hwaccel);
if (hwaccel_serial(avctx)) { // change added by me
p->parent->stash_hwaccel = avctx->hwaccel; // av_assert0(!p->parent->stash_hwaccel);
p->parent->stash_hwaccel_context = avctx->hwaccel_context; // if (hwaccel_serial(avctx)) {
p->parent->stash_hwaccel_priv = avctx->internal->hwaccel_priv_data; // p->parent->stash_hwaccel = avctx->hwaccel;
} // p->parent->stash_hwaccel_context = avctx->hwaccel_context;
// p->parent->stash_hwaccel_priv = avctx->internal->hwaccel_priv_data;
// }
pthread_mutex_lock(&p->progress_mutex); pthread_mutex_lock(&p->progress_mutex);
if(atomic_load(&p->state) == STATE_SETUP_FINISHED){ if(atomic_load(&p->state) == STATE_SETUP_FINISHED){
@ -754,6 +770,15 @@ void ff_frame_thread_free(AVCodecContext *avctx, int thread_count)
park_frame_worker_threads(fctx, thread_count); park_frame_worker_threads(fctx, thread_count);
//added by me -
if (fctx->prev_thread && avctx->internal->hwaccel_priv_data !=
fctx->prev_thread->avctx->internal->hwaccel_priv_data){
if (update_context_from_thread(avctx, fctx->prev_thread->avctx,1) < 0){
av_log(avctx, AV_LOG_ERROR, "Failed to update user thread.\n");
}
}
for (i = 0; i < thread_count; i++) { for (i = 0; i < thread_count; i++) {
PerThreadContext *p = &fctx->threads[i]; PerThreadContext *p = &fctx->threads[i];
AVCodecContext *ctx = p->avctx; AVCodecContext *ctx = p->avctx;
@ -806,10 +831,12 @@ void ff_frame_thread_free(AVCodecContext *avctx, int thread_count)
/* if we have stashed hwaccel state, move it to the user-facing context, /* if we have stashed hwaccel state, move it to the user-facing context,
* so it will be freed in ff_codec_close() */ * so it will be freed in ff_codec_close() */
av_assert0(!avctx->hwaccel);
FFSWAP(const AVHWAccel*, avctx->hwaccel, fctx->stash_hwaccel); // change added by me
FFSWAP(void*, avctx->hwaccel_context, fctx->stash_hwaccel_context); // av_assert0(!avctx->hwaccel);
FFSWAP(void*, avctx->internal->hwaccel_priv_data, fctx->stash_hwaccel_priv); // FFSWAP(const AVHWAccel*, avctx->hwaccel, fctx->stash_hwaccel);
// FFSWAP(void*, avctx->hwaccel_context, fctx->stash_hwaccel_context);
// FFSWAP(void*, avctx->internal->hwaccel_priv_data, fctx->stash_hwaccel_priv);
av_freep(&avctx->internal->thread_ctx); av_freep(&avctx->internal->thread_ctx);
} }

View file

@ -38,7 +38,7 @@
#include "libavutil/log.h" #include "libavutil/log.h"
#include "libavutil/opt.h" #include "libavutil/opt.h"
#include "libavutil/pixfmt.h" #include "libavutil/pixfmt.h"
#include "libavutil/time.h" #include "libavutil/avtime.h"
#include "libavutil/imgutils.h" #include "libavutil/imgutils.h"
#include "libavutil/film_grain_params.h" #include "libavutil/film_grain_params.h"
#include "libavutil/mastering_display_metadata.h" #include "libavutil/mastering_display_metadata.h"

View file

@ -32,7 +32,7 @@
#include "libavutil/mem.h" #include "libavutil/mem.h"
#include "libavutil/log.h" #include "libavutil/log.h"
#include "libavutil/dict.h" #include "libavutil/dict.h"
#include "libavutil/time.h" #include "libavutil/avtime.h"
#include "libavutil/imgutils.h" #include "libavutil/imgutils.h"
#include "avcodec.h" #include "avcodec.h"

View file

@ -41,7 +41,7 @@
#include "libavutil/internal.h" #include "libavutil/internal.h"
#include "libavutil/lfg.h" #include "libavutil/lfg.h"
#include "libavutil/mem_internal.h" #include "libavutil/mem_internal.h"
#include "libavutil/time.h" #include "libavutil/avtime.h"
#include "libavcodec/dct.h" #include "libavcodec/dct.h"
#include "libavcodec/fdctdsp.h" #include "libavcodec/fdctdsp.h"

View file

@ -34,7 +34,7 @@
#include "libavutil/internal.h" #include "libavutil/internal.h"
#include "libavutil/lfg.h" #include "libavutil/lfg.h"
#include "libavutil/mem.h" #include "libavutil/mem.h"
#include "libavutil/time.h" #include "libavutil/avtime.h"
#undef printf #undef printf

View file

@ -403,7 +403,10 @@ static int encode_plane(AVCodecContext *avctx, const uint8_t *src,
HuffEntry he[256]; HuffEntry he[256];
uint32_t offset = 0, slice_len = 0; uint32_t offset = 0, slice_len = 0;
#pragma GCC diagnostic push
#pragma GCC diagnostic ignored "-Wbool-operation"
const int cmask = ~(!plane_no && avctx->pix_fmt == AV_PIX_FMT_YUV420P); const int cmask = ~(!plane_no && avctx->pix_fmt == AV_PIX_FMT_YUV420P);
#pragma GCC diagnostic pop
int i, sstart, send = 0; int i, sstart, send = 0;
int symbol; int symbol;
int ret; int ret;

View file

@ -27,6 +27,49 @@
#include "libavutil/hwcontext_drm.h" #include "libavutil/hwcontext_drm.h"
#include "libavutil/thread.h" #include "libavutil/thread.h"
// Below defines are custom patch from Collabora, as these are not included in the current AOSP, So better just
// here rather than messing with the headers in the AOSP build system. by - Venkata Atchuta Bheemeswara Sarma Darbha
#define V4L2_CID_STATELESS_HEVC_EXT_SPS_ST_RPS (V4L2_CID_CODEC_STATELESS_BASE + 408)
#define V4L2_CID_STATELESS_HEVC_EXT_SPS_LT_RPS (V4L2_CID_CODEC_STATELESS_BASE + 409)
#define V4L2_HEVC_EXT_SPS_ST_RPS_FLAG_INTER_REF_PIC_SET_PRED 0x1
#define V4L2_HEVC_EXT_SPS_LT_RPS_FLAG_USED_LT 0x1
#define V4L2_CTRL_TYPE_HEVC_EXT_SPS_ST_RPS = 0x0275,
#define V4L2_CTRL_TYPE_HEVC_EXT_SPS_LT_RPS = 0x0276,
struct v4l2_ctrl_hevc_ext_sps_st_rps {
__u8 delta_idx_minus1;
__u8 delta_rps_sign;
__u16 abs_delta_rps_minus1;
__u8 num_negative_pics;
__u8 num_positive_pics;
__u32 used_by_curr_pic;
__u32 use_delta_flag;
__u16 delta_poc_s0_minus1[16];
__u16 delta_poc_s1_minus1[16];
__u8 flags;
};
/*
* struct v4l2_ctrl_hevc_ext_sps_lt_rps - HEVC long term RPS parameters
*
* Dynamic size 1-dimension array for long term RPS. The number of elements
* is v4l2_ctrl_hevc_sps::num_long_term_ref_pics_sps. It can contain up to 65 elements.
*
* @lt_ref_pic_poc_lsb_sps: picture order count modulo MaxPicOrderCntLsb of the i-th candidate
* long-term reference picture.
* @flags: See V4L2_HEVC_EXT_SPS_LT_RPS_FLAG_{}
*/
struct v4l2_ctrl_hevc_ext_sps_lt_rps {
__u16 lt_ref_pic_poc_lsb_sps;
__u8 flags;
};
typedef struct V4L2RequestBuffer { typedef struct V4L2RequestBuffer {
int index; int index;
int fd; int fd;

View file

@ -24,6 +24,11 @@
#include "internal.h" #include "internal.h"
#include "v4l2_request.h" #include "v4l2_request.h"
static __inline__ __u64 v4l2_timeval_to_ns(const struct timeval *tv)
{
return (__u64)tv->tv_sec * 1000000000ULL + tv->tv_usec * 1000;
}
typedef struct V4L2RequestFrameDescriptor { typedef struct V4L2RequestFrameDescriptor {
AVDRMFrameDescriptor base; AVDRMFrameDescriptor base;
V4L2RequestBuffer capture; V4L2RequestBuffer capture;

View file

@ -30,6 +30,18 @@
#include "libavutil/mem.h" #include "libavutil/mem.h"
#include "v4l2_request_internal.h" #include "v4l2_request_internal.h"
#ifndef DRM_FORMAT_NV15
#define DRM_FORMAT_NV15 fourcc_code('N', 'V', '1', '5')
#endif
#ifndef V4L2_PIX_FMT_NV15
#define V4L2_PIX_FMT_NV15 v4l2_fourcc('N', 'V', '1', '5')
#endif
#ifndef DRM_FORMAT_NV20
#define DRM_FORMAT_NV20 fourcc_code('N', 'V', '2', '0')
#endif
static const struct { static const struct {
uint32_t pixelformat; uint32_t pixelformat;
enum AVPixelFormat sw_format; enum AVPixelFormat sw_format;
@ -37,11 +49,9 @@ static const struct {
uint64_t format_modifier; uint64_t format_modifier;
} v4l2_request_capture_pixelformats[] = { } v4l2_request_capture_pixelformats[] = {
{ V4L2_PIX_FMT_NV12, AV_PIX_FMT_NV12, DRM_FORMAT_NV12, DRM_FORMAT_MOD_LINEAR }, { V4L2_PIX_FMT_NV12, AV_PIX_FMT_NV12, DRM_FORMAT_NV12, DRM_FORMAT_MOD_LINEAR },
{ V4L2_PIX_FMT_NV15, AV_PIX_FMT_NV15, DRM_FORMAT_NV15, DRM_FORMAT_MOD_LINEAR },
#if defined(V4L2_PIX_FMT_NV12_32L32) #if defined(V4L2_PIX_FMT_NV12_32L32)
{ V4L2_PIX_FMT_NV12_32L32, AV_PIX_FMT_NONE, DRM_FORMAT_NV12, DRM_FORMAT_MOD_ALLWINNER_TILED }, { V4L2_PIX_FMT_NV12_32L32, AV_PIX_FMT_NONE, DRM_FORMAT_NV12, DRM_FORMAT_MOD_ALLWINNER_TILED },
#endif
#if defined(V4L2_PIX_FMT_NV15) && defined(DRM_FORMAT_NV15)
{ V4L2_PIX_FMT_NV15, AV_PIX_FMT_NONE, DRM_FORMAT_NV15, DRM_FORMAT_MOD_LINEAR },
#endif #endif
{ V4L2_PIX_FMT_NV16, AV_PIX_FMT_NV16, DRM_FORMAT_NV16, DRM_FORMAT_MOD_LINEAR }, { V4L2_PIX_FMT_NV16, AV_PIX_FMT_NV16, DRM_FORMAT_NV16, DRM_FORMAT_MOD_LINEAR },
#if defined(V4L2_PIX_FMT_NV20) && defined(DRM_FORMAT_NV20) #if defined(V4L2_PIX_FMT_NV20) && defined(DRM_FORMAT_NV20)

View file

@ -1,2 +0,0 @@
/indev_list.c
/outdev_list.c

View file

@ -50,7 +50,7 @@
#include "libavutil/internal.h" #include "libavutil/internal.h"
#include "libavutil/mathematics.h" #include "libavutil/mathematics.h"
#include "libavutil/opt.h" #include "libavutil/opt.h"
#include "libavutil/time.h" #include "libavutil/avtime.h"
#include "libavformat/demux.h" #include "libavformat/demux.h"
#include "libavformat/internal.h" #include "libavformat/internal.h"

View file

@ -41,7 +41,7 @@
#include "libavutil/frame.h" #include "libavutil/frame.h"
#include "libavutil/internal.h" #include "libavutil/internal.h"
#include "libavutil/time.h" #include "libavutil/avtime.h"
#include "libavformat/internal.h" #include "libavformat/internal.h"

View file

@ -44,7 +44,7 @@
#include "libavutil/parseutils.h" #include "libavutil/parseutils.h"
#include "libavutil/pixfmt.h" #include "libavutil/pixfmt.h"
#include "libavutil/threadmessage.h" #include "libavutil/threadmessage.h"
#include "libavutil/time.h" #include "libavutil/avtime.h"
/* This image format is available on all Android devices /* This image format is available on all Android devices
* supporting the Camera2 API */ * supporting the Camera2 API */

View file

@ -37,7 +37,7 @@
#include "libavformat/internal.h" #include "libavformat/internal.h"
#include "libavutil/internal.h" #include "libavutil/internal.h"
#include "libavutil/parseutils.h" #include "libavutil/parseutils.h"
#include "libavutil/time.h" #include "libavutil/avtime.h"
#include "libavutil/imgutils.h" #include "libavutil/imgutils.h"
#include "avdevice.h" #include "avdevice.h"

View file

@ -32,7 +32,7 @@
#include "libavutil/mem.h" #include "libavutil/mem.h"
#include "libavutil/opt.h" #include "libavutil/opt.h"
#include "libavutil/parseutils.h" #include "libavutil/parseutils.h"
#include "libavutil/time.h" #include "libavutil/avtime.h"
#if HAVE_DEV_BKTR_IOCTL_METEOR_H && HAVE_DEV_BKTR_IOCTL_BT848_H #if HAVE_DEV_BKTR_IOCTL_METEOR_H && HAVE_DEV_BKTR_IOCTL_BT848_H
# include <dev/bktr/ioctl_meteor.h> # include <dev/bktr/ioctl_meteor.h>
# include <dev/bktr/ioctl_bt848.h> # include <dev/bktr/ioctl_bt848.h>

View file

@ -43,7 +43,7 @@ extern "C" {
#include "libavutil/internal.h" #include "libavutil/internal.h"
#include "libavutil/imgutils.h" #include "libavutil/imgutils.h"
#include "libavutil/intreadwrite.h" #include "libavutil/intreadwrite.h"
#include "libavutil/time.h" #include "libavutil/avtime.h"
#include "libavutil/timecode.h" #include "libavutil/timecode.h"
#include "libavutil/mathematics.h" #include "libavutil/mathematics.h"
#include "libavutil/reverse.h" #include "libavutil/reverse.h"

View file

@ -38,7 +38,7 @@
#include "libavutil/internal.h" #include "libavutil/internal.h"
#include "libavutil/log.h" #include "libavutil/log.h"
#include "libavutil/opt.h" #include "libavutil/opt.h"
#include "libavutil/time.h" #include "libavutil/avtime.h"
#include "libavutil/parseutils.h" #include "libavutil/parseutils.h"
#include "libavutil/pixdesc.h" #include "libavutil/pixdesc.h"
#include "libavformat/demux.h" #include "libavformat/demux.h"

View file

@ -33,7 +33,7 @@
#include "libavformat/internal.h" #include "libavformat/internal.h"
#include "libavutil/mem.h" #include "libavutil/mem.h"
#include "libavutil/opt.h" #include "libavutil/opt.h"
#include "libavutil/time.h" #include "libavutil/avtime.h"
#include "libavutil/wchar_filename.h" #include "libavutil/wchar_filename.h"
#include <windows.h> #include <windows.h>

2
libavdevice/indev_list.c Normal file
View file

@ -0,0 +1,2 @@
static const FFInputFormat * const indev_list[] = {
NULL };

View file

@ -29,7 +29,7 @@
#include "libavutil/fifo.h" #include "libavutil/fifo.h"
#include "libavutil/mem.h" #include "libavutil/mem.h"
#include "libavutil/opt.h" #include "libavutil/opt.h"
#include "libavutil/time.h" #include "libavutil/avtime.h"
#include "libavformat/avformat.h" #include "libavformat/avformat.h"
#include "libavformat/demux.h" #include "libavformat/demux.h"
#include "libavformat/internal.h" #include "libavformat/internal.h"

View file

@ -40,7 +40,7 @@
#include "libavutil/opt.h" #include "libavutil/opt.h"
#include "libavutil/pixfmt.h" #include "libavutil/pixfmt.h"
#include "libavutil/pixdesc.h" #include "libavutil/pixdesc.h"
#include "libavutil/time.h" #include "libavutil/avtime.h"
#include "libavformat/avformat.h" #include "libavformat/avformat.h"
#include "libavformat/demux.h" #include "libavformat/demux.h"

View file

@ -25,7 +25,7 @@
#include <AL/alc.h> #include <AL/alc.h>
#include "libavutil/opt.h" #include "libavutil/opt.h"
#include "libavutil/time.h" #include "libavutil/avtime.h"
#include "libavformat/demux.h" #include "libavformat/demux.h"
#include "libavformat/internal.h" #include "libavformat/internal.h"
#include "avdevice.h" #include "avdevice.h"

View file

@ -32,7 +32,7 @@
#include "libavutil/internal.h" #include "libavutil/internal.h"
#include "libavutil/opt.h" #include "libavutil/opt.h"
#include "libavutil/time.h" #include "libavutil/avtime.h"
#include "avdevice.h" #include "avdevice.h"
#include "libavformat/demux.h" #include "libavformat/demux.h"

View file

@ -0,0 +1,3 @@
static const FFOutputFormat * const outdev_list[] = {
&ff_vout_drm_muxer,
NULL };

View file

@ -26,7 +26,7 @@
#include "libavutil/internal.h" #include "libavutil/internal.h"
#include "libavutil/opt.h" #include "libavutil/opt.h"
#include "libavutil/time.h" #include "libavutil/avtime.h"
#include "libavformat/avformat.h" #include "libavformat/avformat.h"
#include "libavformat/demux.h" #include "libavformat/demux.h"

View file

@ -29,7 +29,7 @@
#include "libavutil/frame.h" #include "libavutil/frame.h"
#include "libavutil/internal.h" #include "libavutil/internal.h"
#include "libavutil/opt.h" #include "libavutil/opt.h"
#include "libavutil/time.h" #include "libavutil/avtime.h"
#include "libavutil/log.h" #include "libavutil/log.h"
#include "libavutil/attributes.h" #include "libavutil/attributes.h"
#include "pulse_audio_common.h" #include "pulse_audio_common.h"

View file

@ -24,7 +24,7 @@
#include "libavutil/internal.h" #include "libavutil/internal.h"
#include "libavutil/opt.h" #include "libavutil/opt.h"
#include "libavutil/time.h" #include "libavutil/avtime.h"
#include "libavformat/avformat.h" #include "libavformat/avformat.h"
#include "libavformat/demux.h" #include "libavformat/demux.h"

View file

@ -38,7 +38,7 @@
#include "libavutil/mem.h" #include "libavutil/mem.h"
#include "libavutil/parseutils.h" #include "libavutil/parseutils.h"
#include "libavutil/pixdesc.h" #include "libavutil/pixdesc.h"
#include "libavutil/time.h" #include "libavutil/avtime.h"
#include "libavcodec/avcodec.h" #include "libavcodec/avcodec.h"
#include "libavcodec/codec_desc.h" #include "libavcodec/codec_desc.h"
#include "libavformat/demux.h" #include "libavformat/demux.h"

View file

@ -43,7 +43,7 @@
#include "libavutil/mem.h" #include "libavutil/mem.h"
#include "libavutil/opt.h" #include "libavutil/opt.h"
#include "libavutil/parseutils.h" #include "libavutil/parseutils.h"
#include "libavutil/time.h" #include "libavutil/avtime.h"
#include "libavformat/avformat.h" #include "libavformat/avformat.h"
#include "libavformat/demux.h" #include "libavformat/demux.h"

View file

@ -1 +0,0 @@
/filter_list.c

View file

@ -26,7 +26,7 @@
#include "libavutil/xga_font_data.h" #include "libavutil/xga_font_data.h"
#include "libavutil/eval.h" #include "libavutil/eval.h"
#include "libavutil/pixdesc.h" #include "libavutil/pixdesc.h"
#include "libavutil/time.h" #include "libavutil/avtime.h"
#include "audio.h" #include "audio.h"
#include "avfilter.h" #include "avfilter.h"
#include "filters.h" #include "filters.h"

View file

@ -19,7 +19,7 @@
#include "config_components.h" #include "config_components.h"
#include "libavutil/opt.h" #include "libavutil/opt.h"
#include "libavutil/time.h" #include "libavutil/avtime.h"
#include "audio.h" #include "audio.h"
#include "avfilter.h" #include "avfilter.h"
#include "filters.h" #include "filters.h"

View file

@ -21,7 +21,7 @@
#include "config_components.h" #include "config_components.h"
#include "libavutil/opt.h" #include "libavutil/opt.h"
#include "libavutil/time.h" #include "libavutil/avtime.h"
#include "audio.h" #include "audio.h"
#include "avfilter.h" #include "avfilter.h"
#include "filters.h" #include "filters.h"

View file

@ -21,7 +21,7 @@
#include "config_components.h" #include "config_components.h"
#include "libavutil/opt.h" #include "libavutil/opt.h"
#include "libavutil/time.h" #include "libavutil/avtime.h"
#include "audio.h" #include "audio.h"
#include "avfilter.h" #include "avfilter.h"
#include "filters.h" #include "filters.h"

View file

@ -0,0 +1,6 @@
static const AVFilter * const filter_list[] = {
&ff_asrc_abuffer,
&ff_vsrc_buffer,
&ff_asink_abuffer,
&ff_vsink_buffer,
NULL };

View file

@ -24,7 +24,7 @@
#include "libavutil/common.h" #include "libavutil/common.h"
#include "libavutil/mathematics.h" #include "libavutil/mathematics.h"
#include "libavutil/mem.h" #include "libavutil/mem.h"
#include "libavutil/time.h" #include "libavutil/avtime.h"
#include "libavutil/pixdesc.h" #include "libavutil/pixdesc.h"
#include "filters.h" #include "filters.h"

View file

@ -32,7 +32,7 @@
#include "libavutil/internal.h" #include "libavutil/internal.h"
#include "libavutil/mathematics.h" #include "libavutil/mathematics.h"
#include "libavutil/opt.h" #include "libavutil/opt.h"
#include "libavutil/time.h" #include "libavutil/avtime.h"
#include "audio.h" #include "audio.h"
#include "avfilter.h" #include "avfilter.h"
#include "filters.h" #include "filters.h"

View file

@ -30,7 +30,7 @@
#include "libavutil/error.h" #include "libavutil/error.h"
#include "libavutil/file.h" #include "libavutil/file.h"
#include "libavutil/mem.h" #include "libavutil/mem.h"
#include "libavutil/time.h" #include "libavutil/avtime.h"
static int ff_expand_text_function_internal(FFExpandTextContext *expand_text, AVBPrint *bp, static int ff_expand_text_function_internal(FFExpandTextContext *expand_text, AVBPrint *bp,
char *name, unsigned argc, char **argv) char *name, unsigned argc, char **argv)

View file

@ -27,7 +27,7 @@
#include "filters.h" #include "filters.h"
#include "dnn_filter_common.h" #include "dnn_filter_common.h"
#include "video.h" #include "video.h"
#include "libavutil/time.h" #include "libavutil/avtime.h"
#include "libavutil/avstring.h" #include "libavutil/avstring.h"
#include "libavutil/detection_bbox.h" #include "libavutil/detection_bbox.h"

View file

@ -27,7 +27,7 @@
#include "filters.h" #include "filters.h"
#include "dnn_filter_common.h" #include "dnn_filter_common.h"
#include "video.h" #include "video.h"
#include "libavutil/time.h" #include "libavutil/avtime.h"
#include "libavutil/avstring.h" #include "libavutil/avstring.h"
#include "libavutil/detection_bbox.h" #include "libavutil/detection_bbox.h"
#include "libavutil/fifo.h" #include "libavutil/fifo.h"

View file

@ -31,7 +31,7 @@
#include "dnn_filter_common.h" #include "dnn_filter_common.h"
#include "video.h" #include "video.h"
#include "libswscale/swscale.h" #include "libswscale/swscale.h"
#include "libavutil/time.h" #include "libavutil/avtime.h"
typedef struct DnnProcessingContext { typedef struct DnnProcessingContext {
const AVClass *class; const AVClass *class;

View file

@ -52,7 +52,7 @@
#include "libavutil/opt.h" #include "libavutil/opt.h"
#include "libavutil/random_seed.h" #include "libavutil/random_seed.h"
#include "libavutil/parseutils.h" #include "libavutil/parseutils.h"
#include "libavutil/time.h" #include "libavutil/avtime.h"
#include "libavutil/timecode.h" #include "libavutil/timecode.h"
#include "libavutil/time_internal.h" #include "libavutil/time_internal.h"
#include "libavutil/tree.h" #include "libavutil/tree.h"

View file

@ -36,7 +36,7 @@
#include "libavutil/mem.h" #include "libavutil/mem.h"
#include "libavutil/opt.h" #include "libavutil/opt.h"
#include "libavutil/time.h" #include "libavutil/avtime.h"
#include "libavutil/avstring.h" #include "libavutil/avstring.h"
#include "libavutil/avassert.h" #include "libavutil/avassert.h"
#include "libavutil/hwcontext.h" #include "libavutil/hwcontext.h"

View file

@ -1,3 +0,0 @@
/protocol_list.c
/muxer_list.c
/demuxer_list.c

554
libavformat/Android.bp Normal file
View file

@ -0,0 +1,554 @@
//
// Copyright (C) 2025 KonstaKANG
// Copyright (C) 2025 Venkata Atchuta Bheemeswara Sarma Darbha
//
// SPDX-License-Identifier: LGPL-2.1-or-later
//
cc_library_shared {
name: "libavformat",
defaults: ["ffmpeg_defaults"],
shared_libs: [
"libavcodec",
"libavutil",
"libz",
],
srcs: [
"3dostr.c",
"4xm.c",
"a64.c",
"aacdec.c",
"aadec.c",
"aaxdec.c",
"ac3_channel_layout_tab.c",
"ac3dec.c",
"ac4dec.c",
"ac4enc.c",
"acedec.c",
"acm.c",
"act.c",
"adp.c",
"ads.c",
"adtsenc.c",
"adxdec.c",
"aeadec.c",
"aeaenc.c",
"afc.c",
"aiff.c",
"aiffdec.c",
"aiffenc.c",
"aixdec.c",
"allformats.c",
"alp.c",
"amr.c",
"amvenc.c",
"anm.c",
"apac.c",
"apc.c",
"ape.c",
"apetag.c",
"apm.c",
"apngdec.c",
"apngenc.c",
"aptxdec.c",
"aqtitledec.c",
"argo_asf.c",
"argo_brp.c",
"argo_cvg.c",
"asf.c",
"asf_tags.c",
"asfcrypt.c",
"asfdec_f.c",
"asfdec_o.c",
"asfenc.c",
"assdec.c",
"assenc.c",
"ast.c",
"astdec.c",
"astenc.c",
"async.c",
"au.c",
"av1.c",
"av1dec.c",
"avc.c",
"avformat.c",
"avidec.c",
"avienc.c",
"avio.c",
"aviobuf.c",
"avlanguage.c",
"avr.c",
"avs.c",
"avs2dec.c",
"avs3dec.c",
"bethsoftvid.c",
"bfi.c",
"bink.c",
"binka.c",
"bintext.c",
"bit.c",
"bmv.c",
"boadec.c",
"bonk.c",
"brstm.c",
"c93.c",
"cache.c",
"caf.c",
"cafdec.c",
"cafenc.c",
"cavsvideodec.c",
"cdg.c",
"cdxl.c",
"cinedec.c",
"codec2.c",
"concat.c",
"concatdec.c",
"crcenc.c",
"crypto.c",
"dash.c",
"dashenc.c",
"data_uri.c",
"dauddec.c",
"daudenc.c",
"dca_sample_rate_tab.c",
"dcstr.c",
"demux.c",
"demux_utils.c",
"derf.c",
"dfa.c",
"dfpwmdec.c",
"dhav.c",
"diracdec.c",
"dnxhddec.c",
"dovi_isom.c",
"dsfdec.c",
"dsicin.c",
"dss.c",
"dtsdec.c",
"dtshddec.c",
"dump.c",
"dv.c",
"dvbsub.c",
"dvbtxt.c",
"dvenc.c",
"dxa.c",
"eacdata.c",
"electronicarts.c",
"epafdec.c",
"evc.c",
"evcdec.c",
"ffmetadec.c",
"ffmetaenc.c",
"fifo.c",
"file.c",
"filmstripdec.c",
"filmstripenc.c",
"fitsdec.c",
"fitsenc.c",
"flac_picture.c",
"flacdec.c",
"flacenc.c",
"flacenc_header.c",
"flic.c",
"flvdec.c",
"flvenc.c",
"format.c",
"framecrcenc.c",
"framehash.c",
"frmdec.c",
"fsb.c",
"ftp.c",
"fwse.c",
"g722.c",
"g723_1.c",
"g726.c",
"g729dec.c",
"gdv.c",
"genh.c",
"gif.c",
"gifdec.c",
"golomb_tab.c",
"gopher.c",
"gsmdec.c",
"gxf.c",
"gxfenc.c",
"h261dec.c",
"h263dec.c",
"h264dec.c",
"hashenc.c",
"hca.c",
"hcom.c",
"hdsenc.c",
"hevc.c",
"hevcdec.c",
"hls.c",
"hls_sample_encryption.c",
"hlsenc.c",
"hlsplaylist.c",
"hlsproto.c",
"hnm.c",
"http.c",
"httpauth.c",
"iamf.c",
"iamf_parse.c",
"iamf_reader.c",
"iamf_writer.c",
"iamfdec.c",
"iamfenc.c",
"icecast.c",
"icodec.c",
"icoenc.c",
"id3v1.c",
"id3v2.c",
"id3v2enc.c",
"idcin.c",
"idroqdec.c",
"idroqenc.c",
"iff.c",
"ifv.c",
"ilbc.c",
"img2.c",
"img2_alias_pix.c",
"img2_brender_pix.c",
"img2dec.c",
"img2enc.c",
"imx.c",
"ingenientdec.c",
"ip.c",
"ipmovie.c",
"ipudec.c",
"ircam.c",
"ircamdec.c",
"ircamenc.c",
"isom.c",
"isom_tags.c",
"iss.c",
"iv8.c",
"ivfdec.c",
"ivfenc.c",
"jacosubdec.c",
"jacosubenc.c",
"jpegtables.c",
"jpegxl_anim_dec.c",
"jpegxl_parse.c",
"jvdec.c",
"kvag.c",
"lafdec.c",
"latmenc.c",
"lc3.c",
"lmlm4.c",
"loasdec.c",
"log2_tab.c",
"lrc.c",
"lrcdec.c",
"lrcenc.c",
"luodatdec.c",
"lvfdec.c",
"lxfdec.c",
"m4vdec.c",
"matroska.c",
"matroskadec.c",
"matroskaenc.c",
"mca.c",
"mccdec.c",
"md5proto.c",
"metadata.c",
"mgsts.c",
"microdvddec.c",
"microdvdenc.c",
"mj2kdec.c",
"mkvtimestamp_v2.c",
"mlpdec.c",
"mlvdec.c",
"mm.c",
"mmf.c",
"mms.c",
"mmsh.c",
"mmst.c",
"mods.c",
"moflex.c",
"mov.c",
"mov_chan.c",
"mov_esds.c",
"movenc.c",
"movenc_ttml.c",
"movenccenc.c",
"movenchint.c",
"mp3dec.c",
"mp3enc.c",
"mpc.c",
"mpc8.c",
"mpeg.c",
"mpeg4audio_sample_rates.c",
"mpegaudiotabs.c",
"mpegenc.c",
"mpegts.c",
"mpegtsenc.c",
"mpegvideodec.c",
"mpjpeg.c",
"mpjpegdec.c",
"mpl2dec.c",
"mpsubdec.c",
"msf.c",
"msnwc_tcp.c",
"mspdec.c",
"mtaf.c",
"mtv.c",
"musx.c",
"mux.c",
"mux_utils.c",
"mvdec.c",
"mvi.c",
"mxf.c",
"mxfdec.c",
"mxfenc.c",
"mxg.c",
"nal.c",
"ncdec.c",
"network.c",
"nistspheredec.c",
"nspdec.c",
"nsvdec.c",
"nullenc.c",
"nut.c",
"nutdec.c",
"nutenc.c",
"nuv.c",
"oggdec.c",
"oggenc.c",
"oggparsecelt.c",
"oggparsedirac.c",
"oggparseflac.c",
"oggparseogm.c",
"oggparseopus.c",
"oggparseskeleton.c",
"oggparsespeex.c",
"oggparsetheora.c",
"oggparsevorbis.c",
"oggparsevp8.c",
"oma.c",
"omadec.c",
"omaenc.c",
"options.c",
"os_support.c",
"osq.c",
"paf.c",
"pcm.c",
"pcmdec.c",
"pcmenc.c",
"pdvdec.c",
"pjsdec.c",
"pmpdec.c",
"pp_bnk.c",
"prompeg.c",
"protocols.c",
"psxstr.c",
"pva.c",
"pvfdec.c",
"qcp.c",
"qoadec.c",
"qtpalette.c",
"r3d.c",
"rangecoder_dec.c",
"rawdec.c",
"rawenc.c",
"rawutils.c",
"rawvideodec.c",
"rcwtdec.c",
"rcwtenc.c",
"rdt.c",
"realtextdec.c",
"redspark.c",
"replaygain.c",
"riff.c",
"riffdec.c",
"riffenc.c",
"rka.c",
"rl2.c",
"rm.c",
"rmdec.c",
"rmenc.c",
"rmsipr.c",
"rpl.c",
"rsd.c",
"rso.c",
"rsodec.c",
"rsoenc.c",
"rtmpdigest.c",
"rtmphttp.c",
"rtmppkt.c",
"rtmpproto.c",
"rtp.c",
"rtpdec.c",
"rtpdec_ac3.c",
"rtpdec_amr.c",
"rtpdec_asf.c",
"rtpdec_dv.c",
"rtpdec_g726.c",
"rtpdec_h261.c",
"rtpdec_h263.c",
"rtpdec_h263_rfc2190.c",
"rtpdec_h264.c",
"rtpdec_hevc.c",
"rtpdec_ilbc.c",
"rtpdec_jpeg.c",
"rtpdec_latm.c",
"rtpdec_mpa_robust.c",
"rtpdec_mpeg4.c",
"rtpdec_mpeg12.c",
"rtpdec_mpegts.c",
"rtpdec_qcelp.c",
"rtpdec_qdm2.c",
"rtpdec_qt.c",
"rtpdec_rfc4175.c",
"rtpdec_svq3.c",
"rtpdec_vc2hq.c",
"rtpdec_vp8.c",
"rtpdec_vp9.c",
"rtpdec_xiph.c",
"rtpenc.c",
"rtpenc_aac.c",
"rtpenc_amr.c",
"rtpenc_chain.c",
"rtpenc_h261.c",
"rtpenc_h263.c",
"rtpenc_h263_rfc2190.c",
"rtpenc_h264_hevc.c",
"rtpenc_jpeg.c",
"rtpenc_latm.c",
"rtpenc_mpegts.c",
"rtpenc_mpv.c",
"rtpenc_rfc4175.c",
"rtpenc_vc2hq.c",
"rtpenc_vp8.c",
"rtpenc_vp9.c",
"rtpenc_xiph.c",
"rtpproto.c",
"rtsp.c",
"rtspdec.c",
"rtspenc.c",
"s337m.c",
"samidec.c",
"sapdec.c",
"sapenc.c",
"sauce.c",
"sbcdec.c",
"sbgdec.c",
"sccdec.c",
"sccenc.c",
"scd.c",
"sdns.c",
"sdp.c",
"sdr2.c",
"sdsdec.c",
"sdxdec.c",
"seek.c",
"segafilm.c",
"segafilmenc.c",
"segment.c",
"serdec.c",
"sga.c",
"shortendec.c",
"sierravmd.c",
"siff.c",
"smacker.c",
"smjpeg.c",
"smjpegdec.c",
"smjpegenc.c",
"smoothstreamingenc.c",
"smush.c",
"sol.c",
"soxdec.c",
"soxenc.c",
"spdif.c",
"spdifdec.c",
"spdifenc.c",
"srtdec.c",
"srtenc.c",
"srtp.c",
"srtpproto.c",
"stldec.c",
"subfile.c",
"subtitles.c",
"subviewer1dec.c",
"subviewerdec.c",
"supdec.c",
"supenc.c",
"svag.c",
"svs.c",
"swf.c",
"swfdec.c",
"swfenc.c",
"takdec.c",
"tcp.c",
"tedcaptionsdec.c",
"tee.c",
"tee_common.c",
"teeproto.c",
"thp.c",
"tiertexseq.c",
"tmv.c",
"to_upper4.c",
"tta.c",
"ttaenc.c",
"ttmlenc.c",
"tty.c",
"txd.c",
"ty.c",
"udp.c",
"uncodedframecrcenc.c",
"unix.c",
"url.c",
"urldecode.c",
"usmdec.c",
"utils.c",
"vag.c",
"vc1dec.c",
"vc1test.c",
"vc1testenc.c",
"version.c",
"vividas.c",
"vivo.c",
"voc.c",
"voc_packet.c",
"vocdec.c",
"vocenc.c",
"vorbiscomment.c",
"vpcc.c",
"vpk.c",
"vplayerdec.c",
"vqf.c",
"vvc.c",
"vvcdec.c",
"w64.c",
"wady.c",
"wavarc.c",
"wavdec.c",
"wavenc.c",
"wc3movie.c",
"webm_chunk.c",
"webmdashenc.c",
"webpenc.c",
"webvttdec.c",
"webvttenc.c",
"westwood_aud.c",
"westwood_audenc.c",
"westwood_vqa.c",
"wsddec.c",
"wtv_common.c",
"wtvdec.c",
"wtvenc.c",
"wv.c",
"wvdec.c",
"wvedec.c",
"wvenc.c",
"xa.c",
"xmd.c",
"xmv.c",
"xvag.c",
"xwma.c",
"yop.c",
"yuv4mpegdec.c",
"yuv4mpegenc.c",
],
}

View file

@ -23,7 +23,7 @@
#include "libavutil/dict.h" #include "libavutil/dict.h"
#include "libavutil/mem.h" #include "libavutil/mem.h"
#include "libavutil/opt.h" #include "libavutil/opt.h"
#include "libavutil/time.h" #include "libavutil/avtime.h"
#include "libavutil/avassert.h" #include "libavutil/avassert.h"
#include "avio_internal.h" #include "avio_internal.h"
#include "os_support.h" #include "os_support.h"

View file

@ -24,7 +24,7 @@
#include "libavutil/bprint.h" #include "libavutil/bprint.h"
#include "libavutil/mem.h" #include "libavutil/mem.h"
#include "libavutil/opt.h" #include "libavutil/opt.h"
#include "libavutil/time.h" #include "libavutil/avtime.h"
#include "libavutil/parseutils.h" #include "libavutil/parseutils.h"
#include "internal.h" #include "internal.h"
#include "avio_internal.h" #include "avio_internal.h"

View file

@ -37,7 +37,7 @@
#include "libavutil/opt.h" #include "libavutil/opt.h"
#include "libavutil/parseutils.h" #include "libavutil/parseutils.h"
#include "libavutil/rational.h" #include "libavutil/rational.h"
#include "libavutil/time.h" #include "libavutil/avtime.h"
#include "libavutil/time_internal.h" #include "libavutil/time_internal.h"
#include "libavcodec/avcodec.h" #include "libavcodec/avcodec.h"

View file

@ -32,7 +32,7 @@
#include "libavutil/mem.h" #include "libavutil/mem.h"
#include "libavutil/opt.h" #include "libavutil/opt.h"
#include "libavutil/pixfmt.h" #include "libavutil/pixfmt.h"
#include "libavutil/time.h" #include "libavutil/avtime.h"
#include "libavutil/timestamp.h" #include "libavutil/timestamp.h"
#include "libavcodec/avcodec.h" #include "libavcodec/avcodec.h"

356
libavformat/demuxer_list.c Normal file
View file

@ -0,0 +1,356 @@
static const FFInputFormat * const demuxer_list[] = {
&ff_aa_demuxer,
&ff_aac_demuxer,
&ff_aax_demuxer,
&ff_ac3_demuxer,
&ff_ac4_demuxer,
&ff_ace_demuxer,
&ff_acm_demuxer,
&ff_act_demuxer,
&ff_adf_demuxer,
&ff_adp_demuxer,
&ff_ads_demuxer,
&ff_adx_demuxer,
&ff_aea_demuxer,
&ff_afc_demuxer,
&ff_aiff_demuxer,
&ff_aix_demuxer,
&ff_alp_demuxer,
&ff_amr_demuxer,
&ff_amrnb_demuxer,
&ff_amrwb_demuxer,
&ff_anm_demuxer,
&ff_apac_demuxer,
&ff_apc_demuxer,
&ff_ape_demuxer,
&ff_apm_demuxer,
&ff_apng_demuxer,
&ff_aptx_demuxer,
&ff_aptx_hd_demuxer,
&ff_aqtitle_demuxer,
&ff_argo_asf_demuxer,
&ff_argo_brp_demuxer,
&ff_argo_cvg_demuxer,
&ff_asf_demuxer,
&ff_asf_o_demuxer,
&ff_ass_demuxer,
&ff_ast_demuxer,
&ff_au_demuxer,
&ff_av1_demuxer,
&ff_avi_demuxer,
&ff_avr_demuxer,
&ff_avs_demuxer,
&ff_avs2_demuxer,
&ff_avs3_demuxer,
&ff_bethsoftvid_demuxer,
&ff_bfi_demuxer,
&ff_bintext_demuxer,
&ff_bink_demuxer,
&ff_binka_demuxer,
&ff_bit_demuxer,
&ff_bitpacked_demuxer,
&ff_bmv_demuxer,
&ff_bfstm_demuxer,
&ff_brstm_demuxer,
&ff_boa_demuxer,
&ff_bonk_demuxer,
&ff_c93_demuxer,
&ff_caf_demuxer,
&ff_cavsvideo_demuxer,
&ff_cdg_demuxer,
&ff_cdxl_demuxer,
&ff_cine_demuxer,
&ff_codec2_demuxer,
&ff_codec2raw_demuxer,
&ff_concat_demuxer,
&ff_data_demuxer,
&ff_daud_demuxer,
&ff_dcstr_demuxer,
&ff_derf_demuxer,
&ff_dfa_demuxer,
&ff_dfpwm_demuxer,
&ff_dhav_demuxer,
&ff_dirac_demuxer,
&ff_dnxhd_demuxer,
&ff_dsf_demuxer,
&ff_dsicin_demuxer,
&ff_dss_demuxer,
&ff_dts_demuxer,
&ff_dtshd_demuxer,
&ff_dv_demuxer,
&ff_dvbsub_demuxer,
&ff_dvbtxt_demuxer,
&ff_dxa_demuxer,
&ff_ea_demuxer,
&ff_ea_cdata_demuxer,
&ff_eac3_demuxer,
&ff_epaf_demuxer,
&ff_evc_demuxer,
&ff_ffmetadata_demuxer,
&ff_filmstrip_demuxer,
&ff_fits_demuxer,
&ff_flac_demuxer,
&ff_flic_demuxer,
&ff_flv_demuxer,
&ff_live_flv_demuxer,
&ff_fourxm_demuxer,
&ff_frm_demuxer,
&ff_fsb_demuxer,
&ff_fwse_demuxer,
&ff_g722_demuxer,
&ff_g723_1_demuxer,
&ff_g726_demuxer,
&ff_g726le_demuxer,
&ff_g729_demuxer,
&ff_gdv_demuxer,
&ff_genh_demuxer,
&ff_gif_demuxer,
&ff_gsm_demuxer,
&ff_gxf_demuxer,
&ff_h261_demuxer,
&ff_h263_demuxer,
&ff_h264_demuxer,
&ff_hca_demuxer,
&ff_hcom_demuxer,
&ff_hevc_demuxer,
&ff_hls_demuxer,
&ff_hnm_demuxer,
&ff_iamf_demuxer,
&ff_ico_demuxer,
&ff_idcin_demuxer,
&ff_idf_demuxer,
&ff_iff_demuxer,
&ff_ifv_demuxer,
&ff_ilbc_demuxer,
&ff_image2_demuxer,
&ff_image2pipe_demuxer,
&ff_image2_alias_pix_demuxer,
&ff_image2_brender_pix_demuxer,
&ff_ingenient_demuxer,
&ff_ipmovie_demuxer,
&ff_ipu_demuxer,
&ff_ircam_demuxer,
&ff_iss_demuxer,
&ff_iv8_demuxer,
&ff_ivf_demuxer,
&ff_ivr_demuxer,
&ff_jacosub_demuxer,
&ff_jv_demuxer,
&ff_jpegxl_anim_demuxer,
&ff_kux_demuxer,
&ff_kvag_demuxer,
&ff_laf_demuxer,
&ff_lc3_demuxer,
&ff_lmlm4_demuxer,
&ff_loas_demuxer,
&ff_luodat_demuxer,
&ff_lrc_demuxer,
&ff_lvf_demuxer,
&ff_lxf_demuxer,
&ff_m4v_demuxer,
&ff_mca_demuxer,
&ff_mcc_demuxer,
&ff_matroska_demuxer,
&ff_mgsts_demuxer,
&ff_microdvd_demuxer,
&ff_mjpeg_demuxer,
&ff_mjpeg_2000_demuxer,
&ff_mlp_demuxer,
&ff_mlv_demuxer,
&ff_mm_demuxer,
&ff_mmf_demuxer,
&ff_mods_demuxer,
&ff_moflex_demuxer,
&ff_mov_demuxer,
&ff_mp3_demuxer,
&ff_mpc_demuxer,
&ff_mpc8_demuxer,
&ff_mpegps_demuxer,
&ff_mpegts_demuxer,
&ff_mpegtsraw_demuxer,
&ff_mpegvideo_demuxer,
&ff_mpjpeg_demuxer,
&ff_mpl2_demuxer,
&ff_mpsub_demuxer,
&ff_msf_demuxer,
&ff_msnwc_tcp_demuxer,
&ff_msp_demuxer,
&ff_mtaf_demuxer,
&ff_mtv_demuxer,
&ff_musx_demuxer,
&ff_mv_demuxer,
&ff_mvi_demuxer,
&ff_mxf_demuxer,
&ff_mxg_demuxer,
&ff_nc_demuxer,
&ff_nistsphere_demuxer,
&ff_nsp_demuxer,
&ff_nsv_demuxer,
&ff_nut_demuxer,
&ff_nuv_demuxer,
&ff_obu_demuxer,
&ff_ogg_demuxer,
&ff_oma_demuxer,
&ff_osq_demuxer,
&ff_paf_demuxer,
&ff_pcm_alaw_demuxer,
&ff_pcm_mulaw_demuxer,
&ff_pcm_vidc_demuxer,
&ff_pcm_f64be_demuxer,
&ff_pcm_f64le_demuxer,
&ff_pcm_f32be_demuxer,
&ff_pcm_f32le_demuxer,
&ff_pcm_s32be_demuxer,
&ff_pcm_s32le_demuxer,
&ff_pcm_s24be_demuxer,
&ff_pcm_s24le_demuxer,
&ff_pcm_s16be_demuxer,
&ff_pcm_s16le_demuxer,
&ff_pcm_s8_demuxer,
&ff_pcm_u32be_demuxer,
&ff_pcm_u32le_demuxer,
&ff_pcm_u24be_demuxer,
&ff_pcm_u24le_demuxer,
&ff_pcm_u16be_demuxer,
&ff_pcm_u16le_demuxer,
&ff_pcm_u8_demuxer,
&ff_pdv_demuxer,
&ff_pjs_demuxer,
&ff_pmp_demuxer,
&ff_pp_bnk_demuxer,
&ff_pva_demuxer,
&ff_pvf_demuxer,
&ff_qcp_demuxer,
&ff_qoa_demuxer,
&ff_r3d_demuxer,
&ff_rawvideo_demuxer,
&ff_rcwt_demuxer,
&ff_realtext_demuxer,
&ff_redspark_demuxer,
&ff_rka_demuxer,
&ff_rl2_demuxer,
&ff_rm_demuxer,
&ff_roq_demuxer,
&ff_rpl_demuxer,
&ff_rsd_demuxer,
&ff_rso_demuxer,
&ff_rtp_demuxer,
&ff_rtsp_demuxer,
&ff_s337m_demuxer,
&ff_sami_demuxer,
&ff_sap_demuxer,
&ff_sbc_demuxer,
&ff_sbg_demuxer,
&ff_scc_demuxer,
&ff_scd_demuxer,
&ff_sdns_demuxer,
&ff_sdp_demuxer,
&ff_sdr2_demuxer,
&ff_sds_demuxer,
&ff_sdx_demuxer,
&ff_segafilm_demuxer,
&ff_ser_demuxer,
&ff_sga_demuxer,
&ff_shorten_demuxer,
&ff_siff_demuxer,
&ff_simbiosis_imx_demuxer,
&ff_sln_demuxer,
&ff_smacker_demuxer,
&ff_smjpeg_demuxer,
&ff_smush_demuxer,
&ff_sol_demuxer,
&ff_sox_demuxer,
&ff_spdif_demuxer,
&ff_srt_demuxer,
&ff_str_demuxer,
&ff_stl_demuxer,
&ff_subviewer1_demuxer,
&ff_subviewer_demuxer,
&ff_sup_demuxer,
&ff_svag_demuxer,
&ff_svs_demuxer,
&ff_swf_demuxer,
&ff_tak_demuxer,
&ff_tedcaptions_demuxer,
&ff_thp_demuxer,
&ff_threedostr_demuxer,
&ff_tiertexseq_demuxer,
&ff_tmv_demuxer,
&ff_truehd_demuxer,
&ff_tta_demuxer,
&ff_txd_demuxer,
&ff_tty_demuxer,
&ff_ty_demuxer,
&ff_usm_demuxer,
&ff_v210_demuxer,
&ff_v210x_demuxer,
&ff_vag_demuxer,
&ff_vc1_demuxer,
&ff_vc1t_demuxer,
&ff_vividas_demuxer,
&ff_vivo_demuxer,
&ff_vmd_demuxer,
&ff_vobsub_demuxer,
&ff_voc_demuxer,
&ff_vpk_demuxer,
&ff_vplayer_demuxer,
&ff_vqf_demuxer,
&ff_vvc_demuxer,
&ff_w64_demuxer,
&ff_wady_demuxer,
&ff_wavarc_demuxer,
&ff_wav_demuxer,
&ff_wc3_demuxer,
&ff_webm_dash_manifest_demuxer,
&ff_webvtt_demuxer,
&ff_wsaud_demuxer,
&ff_wsd_demuxer,
&ff_wsvqa_demuxer,
&ff_wtv_demuxer,
&ff_wve_demuxer,
&ff_wv_demuxer,
&ff_xa_demuxer,
&ff_xbin_demuxer,
&ff_xmd_demuxer,
&ff_xmv_demuxer,
&ff_xvag_demuxer,
&ff_xwma_demuxer,
&ff_yop_demuxer,
&ff_yuv4mpegpipe_demuxer,
&ff_image_bmp_pipe_demuxer,
&ff_image_cri_pipe_demuxer,
&ff_image_dds_pipe_demuxer,
&ff_image_dpx_pipe_demuxer,
&ff_image_exr_pipe_demuxer,
&ff_image_gem_pipe_demuxer,
&ff_image_gif_pipe_demuxer,
&ff_image_hdr_pipe_demuxer,
&ff_image_j2k_pipe_demuxer,
&ff_image_jpeg_pipe_demuxer,
&ff_image_jpegls_pipe_demuxer,
&ff_image_jpegxl_pipe_demuxer,
&ff_image_pam_pipe_demuxer,
&ff_image_pbm_pipe_demuxer,
&ff_image_pcx_pipe_demuxer,
&ff_image_pfm_pipe_demuxer,
&ff_image_pgmyuv_pipe_demuxer,
&ff_image_pgm_pipe_demuxer,
&ff_image_pgx_pipe_demuxer,
&ff_image_phm_pipe_demuxer,
&ff_image_photocd_pipe_demuxer,
&ff_image_pictor_pipe_demuxer,
&ff_image_png_pipe_demuxer,
&ff_image_ppm_pipe_demuxer,
&ff_image_psd_pipe_demuxer,
&ff_image_qdraw_pipe_demuxer,
&ff_image_qoi_pipe_demuxer,
&ff_image_sgi_pipe_demuxer,
&ff_image_svg_pipe_demuxer,
&ff_image_sunrast_pipe_demuxer,
&ff_image_tiff_pipe_demuxer,
&ff_image_vbn_pipe_demuxer,
&ff_image_webp_pipe_demuxer,
&ff_image_xbm_pipe_demuxer,
&ff_image_xpm_pipe_demuxer,
&ff_image_xwd_pipe_demuxer,
NULL };

View file

@ -44,7 +44,7 @@
#include "libavutil/mem.h" #include "libavutil/mem.h"
#include "libavutil/opt.h" #include "libavutil/opt.h"
#include "libavutil/samplefmt.h" #include "libavutil/samplefmt.h"
#include "libavutil/time.h" #include "libavutil/avtime.h"
#include "libavutil/timestamp.h" #include "libavutil/timestamp.h"
#include "avformat.h" #include "avformat.h"

View file

@ -23,7 +23,7 @@
#include "libavutil/avassert.h" #include "libavutil/avassert.h"
#include "libavutil/opt.h" #include "libavutil/opt.h"
#include "libavutil/time.h" #include "libavutil/avtime.h"
#include "libavutil/thread.h" #include "libavutil/thread.h"
#include "libavutil/threadmessage.h" #include "libavutil/threadmessage.h"
#include "avformat.h" #include "avformat.h"

View file

@ -38,7 +38,7 @@
#include "libavutil/mem.h" #include "libavutil/mem.h"
#include "libavutil/opt.h" #include "libavutil/opt.h"
#include "libavutil/dict.h" #include "libavutil/dict.h"
#include "libavutil/time.h" #include "libavutil/avtime.h"
#include "avformat.h" #include "avformat.h"
#include "demux.h" #include "demux.h"
#include "internal.h" #include "internal.h"

View file

@ -37,7 +37,7 @@
#include "libavutil/opt.h" #include "libavutil/opt.h"
#include "libavutil/log.h" #include "libavutil/log.h"
#include "libavutil/random_seed.h" #include "libavutil/random_seed.h"
#include "libavutil/time.h" #include "libavutil/avtime.h"
#include "libavutil/time_internal.h" #include "libavutil/time_internal.h"
#include "libavcodec/defs.h" #include "libavcodec/defs.h"

View file

@ -27,7 +27,7 @@
#include "libavutil/avstring.h" #include "libavutil/avstring.h"
#include "libavutil/mem.h" #include "libavutil/mem.h"
#include "libavutil/time.h" #include "libavutil/avtime.h"
#include "avio_internal.h" #include "avio_internal.h"
#include "internal.h" #include "internal.h"
#include "url.h" #include "url.h"

View file

@ -34,7 +34,7 @@
#include "libavutil/macros.h" #include "libavutil/macros.h"
#include "libavutil/mem.h" #include "libavutil/mem.h"
#include "libavutil/opt.h" #include "libavutil/opt.h"
#include "libavutil/time.h" #include "libavutil/avtime.h"
#include "libavutil/parseutils.h" #include "libavutil/parseutils.h"
#include "avformat.h" #include "avformat.h"

View file

@ -25,7 +25,7 @@
#include "libavutil/avstring.h" #include "libavutil/avstring.h"
#include "libavutil/opt.h" #include "libavutil/opt.h"
#include "libavutil/parseutils.h" #include "libavutil/parseutils.h"
#include "libavutil/time.h" #include "libavutil/avtime.h"
#include "avformat.h" #include "avformat.h"
#include "internal.h" #include "internal.h"

View file

@ -26,7 +26,7 @@
#include "libavutil/mem.h" #include "libavutil/mem.h"
#include "libavutil/opt.h" #include "libavutil/opt.h"
#include "libavutil/parseutils.h" #include "libavutil/parseutils.h"
#include "libavutil/time.h" #include "libavutil/avtime.h"
#include "avformat.h" #include "avformat.h"
#include "internal.h" #include "internal.h"

View file

@ -24,7 +24,7 @@
#include "network.h" #include "network.h"
#include "libavutil/avstring.h" #include "libavutil/avstring.h"
#include "libavutil/opt.h" #include "libavutil/opt.h"
#include "libavutil/time.h" #include "libavutil/avtime.h"
#define ZMQ_STRERROR zmq_strerror(zmq_errno()) #define ZMQ_STRERROR zmq_strerror(zmq_errno())

184
libavformat/muxer_list.c Normal file
View file

@ -0,0 +1,184 @@
#include "mux.h"
static const FFOutputFormat * const muxer_list[] = {
&ff_a64_muxer,
&ff_ac3_muxer,
&ff_ac4_muxer,
&ff_adts_muxer,
&ff_adx_muxer,
&ff_aea_muxer,
&ff_aiff_muxer,
&ff_alp_muxer,
&ff_amr_muxer,
&ff_amv_muxer,
&ff_apm_muxer,
&ff_apng_muxer,
&ff_aptx_muxer,
&ff_aptx_hd_muxer,
&ff_argo_asf_muxer,
&ff_argo_cvg_muxer,
&ff_asf_muxer,
&ff_ass_muxer,
&ff_ast_muxer,
&ff_asf_stream_muxer,
&ff_au_muxer,
&ff_avi_muxer,
&ff_avif_muxer,
&ff_avm2_muxer,
&ff_avs2_muxer,
&ff_avs3_muxer,
&ff_bit_muxer,
&ff_caf_muxer,
&ff_cavsvideo_muxer,
&ff_codec2_muxer,
&ff_codec2raw_muxer,
// &ff_conform_muxer,
&ff_crc_muxer,
&ff_dash_muxer,
&ff_data_muxer,
&ff_daud_muxer,
&ff_dfpwm_muxer,
&ff_dirac_muxer,
&ff_dnxhd_muxer,
&ff_dts_muxer,
&ff_dv_muxer,
&ff_eac3_muxer,
&ff_evc_muxer,
&ff_f4v_muxer,
&ff_ffmetadata_muxer,
&ff_fifo_muxer,
&ff_filmstrip_muxer,
&ff_fits_muxer,
&ff_flac_muxer,
&ff_flv_muxer,
&ff_framecrc_muxer,
&ff_framehash_muxer,
&ff_framemd5_muxer,
&ff_g722_muxer,
&ff_g723_1_muxer,
&ff_g726_muxer,
&ff_g726le_muxer,
&ff_gif_muxer,
&ff_gsm_muxer,
&ff_gxf_muxer,
&ff_h261_muxer,
&ff_h263_muxer,
&ff_h264_muxer,
&ff_hash_muxer,
&ff_hds_muxer,
&ff_hevc_muxer,
&ff_hls_muxer,
&ff_iamf_muxer,
&ff_ico_muxer,
&ff_ilbc_muxer,
&ff_image2_muxer,
&ff_image2pipe_muxer,
&ff_ipod_muxer,
&ff_ircam_muxer,
&ff_ismv_muxer,
&ff_ivf_muxer,
&ff_jacosub_muxer,
&ff_kvag_muxer,
&ff_latm_muxer,
&ff_lc3_muxer,
&ff_lrc_muxer,
&ff_m4v_muxer,
&ff_md5_muxer,
&ff_matroska_muxer,
&ff_matroska_audio_muxer,
&ff_microdvd_muxer,
&ff_mjpeg_muxer,
&ff_mlp_muxer,
&ff_mmf_muxer,
&ff_mov_muxer,
&ff_mp2_muxer,
&ff_mp3_muxer,
&ff_mp4_muxer,
&ff_mpeg1system_muxer,
&ff_mpeg1vcd_muxer,
&ff_mpeg1video_muxer,
&ff_mpeg2dvd_muxer,
&ff_mpeg2svcd_muxer,
&ff_mpeg2video_muxer,
&ff_mpeg2vob_muxer,
&ff_mpegts_muxer,
&ff_mpjpeg_muxer,
&ff_mxf_muxer,
&ff_mxf_d10_muxer,
&ff_mxf_opatom_muxer,
&ff_null_muxer,
&ff_nut_muxer,
&ff_obu_muxer,
&ff_oga_muxer,
&ff_ogg_muxer,
&ff_ogv_muxer,
&ff_oma_muxer,
&ff_opus_muxer,
&ff_pcm_alaw_muxer,
&ff_pcm_mulaw_muxer,
&ff_pcm_vidc_muxer,
&ff_pcm_f64be_muxer,
&ff_pcm_f64le_muxer,
&ff_pcm_f32be_muxer,
&ff_pcm_f32le_muxer,
&ff_pcm_s32be_muxer,
&ff_pcm_s32le_muxer,
&ff_pcm_s24be_muxer,
&ff_pcm_s24le_muxer,
&ff_pcm_s16be_muxer,
&ff_pcm_s16le_muxer,
&ff_pcm_s8_muxer,
&ff_pcm_u32be_muxer,
&ff_pcm_u32le_muxer,
&ff_pcm_u24be_muxer,
&ff_pcm_u24le_muxer,
&ff_pcm_u16be_muxer,
&ff_pcm_u16le_muxer,
&ff_pcm_u8_muxer,
&ff_psp_muxer,
&ff_rawvideo_muxer,
&ff_rcwt_muxer,
&ff_rm_muxer,
&ff_roq_muxer,
&ff_rso_muxer,
&ff_rtp_muxer,
&ff_rtp_mpegts_muxer,
&ff_rtsp_muxer,
&ff_sap_muxer,
&ff_sbc_muxer,
&ff_scc_muxer,
&ff_segafilm_muxer,
&ff_segment_muxer,
&ff_stream_segment_muxer,
&ff_smjpeg_muxer,
&ff_smoothstreaming_muxer,
&ff_sox_muxer,
&ff_spx_muxer,
&ff_spdif_muxer,
&ff_srt_muxer,
&ff_streamhash_muxer,
&ff_sup_muxer,
&ff_swf_muxer,
&ff_tee_muxer,
&ff_tg2_muxer,
&ff_tgp_muxer,
&ff_mkvtimestamp_v2_muxer,
&ff_truehd_muxer,
&ff_tta_muxer,
&ff_ttml_muxer,
&ff_uncodedframecrc_muxer,
&ff_vc1_muxer,
&ff_vc1t_muxer,
&ff_voc_muxer,
&ff_vvc_muxer,
&ff_w64_muxer,
&ff_wav_muxer,
&ff_webm_muxer,
&ff_webm_dash_manifest_muxer,
&ff_webm_chunk_muxer,
&ff_webp_muxer,
&ff_webvtt_muxer,
&ff_wsaud_muxer,
&ff_wtv_muxer,
&ff_wv_muxer,
&ff_yuv4mpegpipe_muxer,
NULL };

View file

@ -31,7 +31,7 @@
#include "url.h" #include "url.h"
#include "libavutil/avassert.h" #include "libavutil/avassert.h"
#include "libavutil/mem.h" #include "libavutil/mem.h"
#include "libavutil/time.h" #include "libavutil/avtime.h"
int ff_tls_init(void) int ff_tls_init(void)
{ {

View file

@ -27,7 +27,7 @@
#include "libavutil/tree.h" #include "libavutil/tree.h"
#include "libavutil/dict.h" #include "libavutil/dict.h"
#include "libavutil/avassert.h" #include "libavutil/avassert.h"
#include "libavutil/time.h" #include "libavutil/avtime.h"
#include "libavutil/opt.h" #include "libavutil/opt.h"
#include "libavcodec/bytestream.h" #include "libavcodec/bytestream.h"
#include "libavcodec/mpegaudiodata.h" #include "libavcodec/mpegaudiodata.h"

View file

@ -0,0 +1,32 @@
static const URLProtocol * const url_protocols[] = {
&ff_async_protocol,
&ff_cache_protocol,
&ff_concat_protocol,
&ff_concatf_protocol,
&ff_crypto_protocol,
&ff_data_protocol,
&ff_fd_protocol,
&ff_ffrtmphttp_protocol,
&ff_file_protocol,
&ff_ftp_protocol,
&ff_gopher_protocol,
&ff_hls_protocol,
&ff_http_protocol,
&ff_httpproxy_protocol,
&ff_icecast_protocol,
&ff_mmsh_protocol,
&ff_mmst_protocol,
&ff_md5_protocol,
&ff_pipe_protocol,
&ff_prompeg_protocol,
&ff_rtmp_protocol,
&ff_rtmpt_protocol,
&ff_rtp_protocol,
&ff_srtp_protocol,
&ff_subfile_protocol,
&ff_tee_protocol,
&ff_tcp_protocol,
&ff_udp_protocol,
&ff_udplite_protocol,
&ff_unix_protocol,
NULL };

View file

@ -27,7 +27,7 @@
#include "libavutil/avstring.h" #include "libavutil/avstring.h"
#include "libavutil/mem.h" #include "libavutil/mem.h"
#include "libavutil/opt.h" #include "libavutil/opt.h"
#include "libavutil/time.h" #include "libavutil/avtime.h"
#include "http.h" #include "http.h"
#include "rtmp.h" #include "rtmp.h"

View file

@ -23,7 +23,7 @@
#include "libavutil/avstring.h" #include "libavutil/avstring.h"
#include "libavutil/intreadwrite.h" #include "libavutil/intreadwrite.h"
#include "libavutil/mem.h" #include "libavutil/mem.h"
#include "libavutil/time.h" #include "libavutil/avtime.h"
#include "libavcodec/bytestream.h" #include "libavcodec/bytestream.h"

View file

@ -32,7 +32,7 @@
#include "libavutil/random_seed.h" #include "libavutil/random_seed.h"
#include "libavutil/dict.h" #include "libavutil/dict.h"
#include "libavutil/opt.h" #include "libavutil/opt.h"
#include "libavutil/time.h" #include "libavutil/avtime.h"
#include "libavcodec/codec_desc.h" #include "libavcodec/codec_desc.h"
#include "avformat.h" #include "avformat.h"
#include "avio_internal.h" #include "avio_internal.h"

View file

@ -26,7 +26,7 @@
#include "libavutil/mathematics.h" #include "libavutil/mathematics.h"
#include "libavutil/mem.h" #include "libavutil/mem.h"
#include "libavutil/random_seed.h" #include "libavutil/random_seed.h"
#include "libavutil/time.h" #include "libavutil/avtime.h"
#include "avformat.h" #include "avformat.h"
#include "demux.h" #include "demux.h"

View file

@ -33,7 +33,7 @@
#include "libavutil/intreadwrite.h" #include "libavutil/intreadwrite.h"
#include "libavutil/avstring.h" #include "libavutil/avstring.h"
#include "libavutil/mem.h" #include "libavutil/mem.h"
#include "libavutil/time.h" #include "libavutil/avtime.h"
#include "url.h" #include "url.h"

Some files were not shown because too many files have changed in this diff Show more