ffmpeg编译配置选项

详细的FFmpeg编译流程与脚本分析 FFmpeg是一个跨平台的多媒体库,也是目前音视频领域应用最广泛的库。它包括llibavcodec、libavformat、libavutil、libavdevice、libavfilter、libswscale、libswresample、libpostproc等模块,其中avcodec用于编解码,avformat用于解封装,avutil是提供工具类,avdevice用于各平台的设备接入 阅读详情

ffmpeg编译配置


编译常用选项

./configure --disable-asm --enable-avdevice --disable-doc --disable-programs --enable-avresample --enable-shared --enable-static --disable-bzlib --enable-gray --disable-libopenjpeg --disable-iconv --disable-zlib --prefix=./vs2019_build --toolchain=msvc --arch=x86_64 --enable-debug

编译选项

Help options:
–help print this message
–quiet Suppress showing informative output
–list-decoders show all available decoders
–list-encoders show all available encoders
–list-hwaccels show all available hardware accelerators
–list-demuxers show all available demuxers
–list-muxers show all available muxers
–list-parsers show all available parsers
–list-protocols show all available protocols
–list-bsfs show all available bitstream filters
–list-indevs show all available input devices
–list-outdevs show all available output devices
–list-filters show all available filters

Standard options:
–logfile=FILE log tests and output to FILE [ffbuild/config.log]
–disable-logging do not log configure debug information
–fatal-warnings fail if any configure warning is generated
–prefix=PREFIX install in PREFIX [/usr/local]
–bindir=DIR install binaries in DIR [PREFIX/bin]
–datadir=DIR install data files in DIR [PREFIX/share/ffmpeg]
–docdir=DIR install documentation in DIR [PREFIX/share/doc/ffmpeg]
–libdir=DIR install libs in DIR [PREFIX/lib]
–shlibdir=DIR install shared libs in DIR [LIBDIR]
–incdir=DIR install includes in DIR [PREFIX/include]
–mandir=DIR install man page in DIR [PREFIX/share/man]
–pkgconfigdir=DIR install pkg-config files in DIR [LIBDIR/pkgconfig]
–enable-rpath use rpath to allow installing libraries in paths
not part of the dynamic linker search path
use rpath when linking programs (USE WITH CARE)
–install-name-dir=DIR Darwin directory name for installed targets

Licensing options:
–enable-gpl allow use of GPL code, the resulting libs
and binaries will be under GPL [no]
–enable-version3 upgrade (L)GPL to version 3 [no]
–enable-nonfree allow use of nonfree code, the resulting libs
and binaries will be unredistributable [no]

Configuration options:
–disable-static do not build static libraries [no]
–enable-shared build shared libraries [no]
–enable-small optimize for size instead of speed
–disable-runtime-cpudetect disable detecting CPU capabilities at runtime (smaller binary)
–enable-gray enable full grayscale support (slower color)
–disable-swscale-alpha disable alpha channel support in swscale
–disable-all disable building components, libraries and programs
–disable-autodetect disable automatically detected external libraries [no]

Program options:
–disable-programs do not build command line programs
–disable-ffmpeg disable ffmpeg build
–disable-ffplay disable ffplay build
–disable-ffprobe disable ffprobe build

Documentation options:
–disable-doc do not build documentation
–disable-htmlpages do not build HTML documentation pages
–disable-manpages do not build man documentation pages
–disable-podpages do not build POD documentation pages
–disable-txtpages do not build text documentation pages

Component options:
–disable-avdevice disable libavdevice build
–disable-avcodec disable libavcodec build
–disable-avformat disable libavformat build
–disable-swresample disable libswresample build
–disable-swscale disable libswscale build
–disable-postproc disable libpostproc build
–disable-avfilter disable libavfilter build
–disable-pthreads disable pthreads [autodetect]
–disable-w32threads disable Win32 threads [autodetect]
–disable-os2threads disable OS/2 threads [autodetect]
–disable-network disable network support [no]
–disable-dct disable DCT code
–disable-dwt disable DWT code
–disable-error-resilience disable error resilience code
–disable-lsp disable LSP code
–disable-lzo disable LZO decoder code
–disable-mdct disable MDCT code
–disable-rdft disable RDFT code
–disable-fft disable FFT code
–disable-faan disable floating point AAN (I)DCT code
–disable-pixelutils disable pixel utils in libavutil

Individual component options:
–disable-everything disable all components listed below
–disable-encoder=NAME disable encoder NAME
–enable-encoder=NAME enable encoder NAME
–disable-encoders disable all encoders
–disable-decoder=NAME disable decoder NAME
–enable-decoder=NAME enable decoder NAME
–disable-decoders disable all decoders
–disable-hwaccel=NAME disable hwaccel NAME
–enable-hwaccel=NAME enable hwaccel NAME
–disable-hwaccels disable all hwaccels
–disable-muxer=NAME disable muxer NAME
–enable-muxer=NAME enable muxer NAME
–disable-muxers disable all muxers
–disable-demuxer=NAME disable demuxer NAME
–enable-demuxer=NAME enable demuxer NAME
–disable-demuxers disable all demuxers
–enable-parser=NAME enable parser NAME
–disable-parser=NAME disable parser NAME
–disable-parsers disable all parsers
–enable-bsf=NAME enable bitstream filter NAME
–disable-bsf=NAME disable bitstream filter NAME
–disable-bsfs disable all bitstream filters
–enable-protocol=NAME enable protocol NAME
–disable-protocol=NAME disable protocol NAME
–disable-protocols disable all protocols
–enable-indev=NAME enable input device NAME
–disable-indev=NAME disable input device NAME
–disable-indevs disable input devices
–enable-outdev=NAME enable output device NAME
–disable-outdev=NAME disable output device NAME
–disable-outdevs disable output devices
–disable-devices disable all devices
–enable-filter=NAME enable filter NAME
–disable-filter=NAME disable filter NAME
–disable-filters disable all filters

External library support:

Using any of the following switches will allow FFmpeg to link to the
corresponding external library. All the components depending on that library
will become enabled, if all their other dependencies are met and they are not
explicitly disabled. E.g. --enable-libopus will enable linking to
libopus and allow the libopus encoder to be built, unless it is
specifically disabled with --disable-encoder=libopus.

Note that only the system libraries are auto-detected. All the other external
libraries must be explicitly enabled.

Also note that the following help text describes the purpose of the libraries
themselves, not all their features will necessarily be usable by FFmpeg.

–disable-alsa disable ALSA support [autodetect]
–disable-appkit disable Apple AppKit framework [autodetect]
–disable-avfoundation disable Apple AVFoundation framework [autodetect]
–enable-avisynth enable reading of AviSynth script files [no]
–disable-bzlib disable bzlib [autodetect]
–disable-coreimage disable Apple CoreImage framework [autodetect]
–enable-chromaprint enable audio fingerprinting with chromaprint [no]
–enable-frei0r enable frei0r video filtering [no]
–enable-gcrypt enable gcrypt, needed for rtmp(t)e support
if openssl, librtmp or gmp is not used [no]
–enable-gmp enable gmp, needed for rtmp(t)e support
if openssl or librtmp is not used [no]
–enable-gnutls enable gnutls, needed for https support
if openssl, libtls or mbedtls is not used [no]
–disable-iconv disable iconv [autodetect]
–enable-jni enable JNI support [no]
–enable-ladspa enable LADSPA audio filtering [no]
–enable-libaom enable AV1 video encoding/decoding via libaom [no]
–enable-libaribb24 enable ARIB text and caption decoding via libaribb24 [no]
–enable-libass enable libass subtitles rendering,
needed for subtitles and ass filter [no]
–enable-libbluray enable BluRay reading using libbluray [no]
–enable-libbs2b enable bs2b DSP library [no]
–enable-libcaca enable textual display using libcaca [no]
–enable-libcelt enable CELT decoding via libcelt [no]
–enable-libcdio enable audio CD grabbing with libcdio [no]
–enable-libcodec2 enable codec2 en/decoding using libcodec2 [no]
–enable-libdav1d enable AV1 decoding via libdav1d [no]
–enable-libdavs2 enable AVS2 decoding via libdavs2 [no]
–enable-libdc1394 enable IIDC-1394 grabbing using libdc1394
and libraw1394 [no]
–enable-libfdk-aac enable AAC de/encoding via libfdk-aac [no]
–enable-libflite enable flite (voice synthesis) support via libflite [no]
–enable-libfontconfig enable libfontconfig, useful for drawtext filter [no]
–enable-libfreetype enable libfreetype, needed for drawtext filter [no]
–enable-libfribidi enable libfribidi, improves drawtext filter [no]
–enable-libglslang enable GLSL->SPIRV compilation via libglslang [no]
–enable-libgme enable Game Music Emu via libgme [no]
–enable-libgsm enable GSM de/encoding via libgsm [no]
–enable-libiec61883 enable iec61883 via libiec61883 [no]
–enable-libilbc enable iLBC de/encoding via libilbc [no]
–enable-libjack enable JACK audio sound server [no]
–enable-libklvanc enable Kernel Labs VANC processing [no]
–enable-libkvazaar enable HEVC encoding via libkvazaar [no]
–enable-liblensfun enable lensfun lens correction [no]
–enable-libmodplug enable ModPlug via libmodplug [no]
–enable-libmp3lame enable MP3 encoding via libmp3lame [no]
–enable-libopencore-amrnb enable AMR-NB de/encoding via libopencore-amrnb [no]
–enable-libopencore-amrwb enable AMR-WB decoding via libopencore-amrwb [no]
–enable-libopencv enable video filtering via libopencv [no]
–enable-libopenh264 enable H.264 encoding via OpenH264 [no]
–enable-libopenjpeg enable JPEG 2000 de/encoding via OpenJPEG [no]
–enable-libopenmpt enable decoding tracked files via libopenmpt [no]
–enable-libopenvino enable OpenVINO as a DNN module backend
for DNN based filters like dnn_processing [no]
–enable-libopus enable Opus de/encoding via libopus [no]
–enable-libpulse enable Pulseaudio input via libpulse [no]
–enable-librabbitmq enable RabbitMQ library [no]
–enable-librav1e enable AV1 encoding via rav1e [no]
–enable-librist enable RIST via librist [no]
–enable-librsvg enable SVG rasterization via librsvg [no]
–enable-librubberband enable rubberband needed for rubberband filter [no]
–enable-librtmp enable RTMP[E] support via librtmp [no]
–enable-libshine enable fixed-point MP3 encoding via libshine [no]
–enable-libsmbclient enable Samba protocol via libsmbclient [no]
–enable-libsnappy enable Snappy compression, needed for hap encoding [no]
–enable-libsoxr enable Include libsoxr resampling [no]
–enable-libspeex enable Speex de/encoding via libspeex [no]
–enable-libsrt enable Haivision SRT protocol via libsrt [no]
–enable-libssh enable SFTP protocol via libssh [no]
–enable-libsvtav1 enable AV1 encoding via SVT [no]
–enable-libtensorflow enable TensorFlow as a DNN module backend
for DNN based filters like sr [no]
–enable-libtesseract enable Tesseract, needed for ocr filter [no]
–enable-libtheora enable Theora encoding via libtheora [no]
–enable-libtls enable LibreSSL (via libtls), needed for https support
if openssl, gnutls or mbedtls is not used [no]
–enable-libtwolame enable MP2 encoding via libtwolame [no]
–enable-libuavs3d enable AVS3 decoding via libuavs3d [no]
–enable-libv4l2 enable libv4l2/v4l-utils [no]
–enable-libvidstab enable video stabilization using vid.stab [no]
–enable-libvmaf enable vmaf filter via libvmaf [no]
–enable-libvo-amrwbenc enable AMR-WB encoding via libvo-amrwbenc [no]
–enable-libvorbis enable Vorbis en/decoding via libvorbis,
native implementation exists [no]
–enable-libvpx enable VP8 and VP9 de/encoding via libvpx [no]
–enable-libwebp enable WebP encoding via libwebp [no]
–enable-libx264 enable H.264 encoding via x264 [no]
–enable-libx265 enable HEVC encoding via x265 [no]
–enable-libxavs enable AVS encoding via xavs [no]
–enable-libxavs2 enable AVS2 encoding via xavs2 [no]
–enable-libxcb enable X11 grabbing using XCB [autodetect]
–enable-libxcb-shm enable X11 grabbing shm communication [autodetect]
–enable-libxcb-xfixes enable X11 grabbing mouse rendering [autodetect]
–enable-libxcb-shape enable X11 grabbing shape rendering [autodetect]
–enable-libxvid enable Xvid encoding via xvidcore,
native MPEG-4/Xvid encoder exists [no]
–enable-libxml2 enable XML parsing using the C library libxml2, needed
for dash demuxing support [no]
–enable-libzimg enable z.lib, needed for zscale filter [no]
–enable-libzmq enable message passing via libzmq [no]
–enable-libzvbi enable teletext support via libzvbi [no]
–enable-lv2 enable LV2 audio filtering [no]
–disable-lzma disable lzma [autodetect]
–enable-decklink enable Blackmagic DeckLink I/O support [no]
–enable-mbedtls enable mbedTLS, needed for https support
if openssl, gnutls or libtls is not used [no]
–enable-mediacodec enable Android MediaCodec support [no]
–enable-mediafoundation enable encoding via MediaFoundation [auto]
–enable-libmysofa enable libmysofa, needed for sofalizer filter [no]
–enable-openal enable OpenAL 1.1 capture support [no]
–enable-opencl enable OpenCL processing [no]
–enable-opengl enable OpenGL rendering [no]
–enable-openssl enable openssl, needed for https support
if gnutls, libtls or mbedtls is not used [no]
–enable-pocketsphinx enable PocketSphinx, needed for asr filter [no]
–disable-sndio disable sndio support [autodetect]
–disable-schannel disable SChannel SSP, needed for TLS support on
Windows if openssl and gnutls are not used [autodetect]
–disable-sdl2 disable sdl2 [autodetect]
–disable-securetransport disable Secure Transport, needed for TLS support
on OSX if openssl and gnutls are not used [autodetect]
–enable-vapoursynth enable VapourSynth demuxer [no]
–enable-vulkan enable Vulkan code [no]
–disable-xlib disable xlib [autodetect]
–disable-zlib disable zlib [autodetect]

The following libraries provide various hardware acceleration features:
–disable-amf disable AMF video encoding code [autodetect]
–disable-audiotoolbox disable Apple AudioToolbox code [autodetect]
–enable-cuda-nvcc enable Nvidia CUDA compiler [no]
–disable-cuda-llvm disable CUDA compilation using clang [autodetect]
–disable-cuvid disable Nvidia CUVID support [autodetect]
–disable-d3d11va disable Microsoft Direct3D 11 video acceleration code [autodetect]
–disable-dxva2 disable Microsoft DirectX 9 video acceleration code [autodetect]
–disable-ffnvcodec disable dynamically linked Nvidia code [autodetect]
–enable-libdrm enable DRM code (Linux) [no]
–enable-libmfx enable Intel MediaSDK (AKA Quick Sync Video) code via libmfx [no]
–enable-libnpp enable Nvidia Performance Primitives-based code [no]
–enable-mmal enable Broadcom Multi-Media Abstraction Layer (Raspberry Pi) via MMAL [no]
–disable-nvdec disable Nvidia video decoding acceleration (via hwaccel) [autodetect]
–disable-nvenc disable Nvidia video encoding code [autodetect]
–enable-omx enable OpenMAX IL code [no]
–enable-omx-rpi enable OpenMAX IL code for Raspberry Pi [no]
–enable-rkmpp enable Rockchip Media Process Platform code [no]
–disable-v4l2-m2m disable V4L2 mem2mem code [autodetect]
–disable-vaapi disable Video Acceleration API (mainly Unix/Intel) code [autodetect]
–disable-vdpau disable Nvidia Video Decode and Presentation API for Unix code [autodetect]
–disable-videotoolbox disable VideoToolbox code [autodetect]

Toolchain options:
–arch=ARCH select architecture []
–cpu=CPU select the minimum required CPU (affects
instruction selection, may crash on older CPUs)
–cross-prefix=PREFIX use PREFIX for compilation tools []
–progs-suffix=SUFFIX program name suffix []
–enable-cross-compile assume a cross-compiler is used
–sysroot=PATH root of cross-build tree
–sysinclude=PATH location of cross-build system headers
–target-os=OS compiler targets OS []
–target-exec=CMD command to run executables on target
–target-path=DIR path to view of build directory on target
–target-samples=DIR path to samples directory on target
–tempprefix=PATH force fixed dir/prefix instead of mktemp for checks
–toolchain=NAME set tool defaults according to NAME
(gcc-asan, clang-asan, gcc-msan, clang-msan,
gcc-tsan, clang-tsan, gcc-usan, clang-usan,
valgrind-massif, valgrind-memcheck,
msvc, icl, gcov, llvm-cov, hardened)
–nm=NM use nm tool NM [nm -g]
–ar=AR use archive tool AR [ar]
–as=AS use assembler AS []
–ln_s=LN_S use symbolic link tool LN_S [ln -s -f]
–strip=STRIP use strip tool STRIP [strip]
–windres=WINDRES use windows resource compiler WINDRES [windres]
–x86asmexe=EXE use nasm-compatible assembler EXE [nasm]
–cc=CC use C compiler CC [gcc]
–cxx=CXX use C compiler CXX [g++]
–objcc=OCC use ObjC compiler OCC [gcc]
–dep-cc=DEPCC use dependency generator DEPCC [gcc]
–nvcc=NVCC use Nvidia CUDA compiler NVCC or clang []
–ld=LD use linker LD []
–pkg-config=PKGCONFIG use pkg-config tool PKGCONFIG [pkg-config]
–pkg-config-flags=FLAGS pass additional flags to pkgconf []
–ranlib=RANLIB use ranlib RANLIB [ranlib]
–doxygen=DOXYGEN use DOXYGEN to generate API doc [doxygen]
–host-cc=HOSTCC use host C compiler HOSTCC
–host-cflags=HCFLAGS use HCFLAGS when compiling for host
–host-cppflags=HCPPFLAGS use HCPPFLAGS when compiling for host
–host-ld=HOSTLD use host linker HOSTLD
–host-ldflags=HLDFLAGS use HLDFLAGS when linking for host
–host-extralibs=HLIBS use libs HLIBS when linking for host
–host-os=OS compiler host OS []
–extra-cflags=ECFLAGS add ECFLAGS to CFLAGS []
–extra-cxxflags=ECFLAGS add ECFLAGS to CXXFLAGS []
–extra-objcflags=FLAGS add FLAGS to OBJCFLAGS []
–extra-ldflags=ELDFLAGS add ELDFLAGS to LDFLAGS []
–extra-ldexeflags=ELDFLAGS add ELDFLAGS to LDEXEFLAGS []
–extra-ldsoflags=ELDFLAGS add ELDFLAGS to LDSOFLAGS []
–extra-libs=ELIBS add ELIBS []
–extra-version=STRING version string suffix []
–optflags=OPTFLAGS override optimization-related compiler flags
–nvccflags=NVCCFLAGS override nvcc flags []
–build-suffix=SUFFIX library name suffix []
–enable-pic build position-independent code
–enable-thumb compile for Thumb instruction set
–enable-lto use link-time optimization
–env=“ENV=override” override the environment variables

Advanced options (experts only):
–malloc-prefix=PREFIX prefix malloc and related names with PREFIX
–custom-allocator=NAME use a supported custom allocator
–disable-symver disable symbol versioning
–enable-hardcoded-tables use hardcoded tables instead of runtime generation
–disable-safe-bitstream-reader
disable buffer boundary checking in bitreaders
(faster, but may crash)
–sws-max-filter-size=N the max filter size swscale uses [256]

Optimization options (experts only):
–disable-asm disable all assembly optimizations
–disable-altivec disable AltiVec optimizations
–disable-vsx disable VSX optimizations
–disable-power8 disable POWER8 optimizations
–disable-amd3dnow disable 3DNow! optimizations
–disable-amd3dnowext disable 3DNow! extended optimizations
–disable-mmx disable MMX optimizations
–disable-mmxext disable MMXEXT optimizations
–disable-sse disable SSE optimizations
–disable-sse2 disable SSE2 optimizations
–disable-sse3 disable SSE3 optimizations
–disable-ssse3 disable SSSE3 optimizations
–disable-sse4 disable SSE4 optimizations
–disable-sse42 disable SSE4.2 optimizations
–disable-avx disable AVX optimizations
–disable-xop disable XOP optimizations
–disable-fma3 disable FMA3 optimizations
–disable-fma4 disable FMA4 optimizations
–disable-avx2 disable AVX2 optimizations
–disable-avx512 disable AVX-512 optimizations
–disable-aesni disable AESNI optimizations
–disable-armv5te disable armv5te optimizations
–disable-armv6 disable armv6 optimizations
–disable-armv6t2 disable armv6t2 optimizations
–disable-vfp disable VFP optimizations
–disable-neon disable NEON optimizations
–disable-inline-asm disable use of inline assembly
–disable-x86asm disable use of standalone x86 assembly
–disable-mipsdsp disable MIPS DSP ASE R1 optimizations
–disable-mipsdspr2 disable MIPS DSP ASE R2 optimizations
–disable-msa disable MSA optimizations
–disable-msa2 disable MSA2 optimizations
–disable-mipsfpu disable floating point MIPS optimizations
–disable-mmi disable Loongson SIMD optimizations
–disable-fast-unaligned consider unaligned accesses slow

Developer options (useful when working on FFmpeg itself):
–disable-debug disable debugging symbols
–enable-debug=LEVEL set the debug level []
–disable-optimizations disable compiler optimizations
–enable-extra-warnings enable more compiler warnings
–disable-stripping disable stripping of executables and shared libraries
–assert-level=level 0(default), 1 or 2, amount of assertion testing,
2 causes a slowdown at runtime.
–enable-memory-poisoning fill heap uninitialized allocated space with arbitrary data
–valgrind=VALGRIND run “make fate” tests through valgrind to detect memory
leaks and errors, using the specified valgrind binary.
Cannot be combined with --target-exec
–enable-ftrapv Trap arithmetic overflows
–samples=PATH location of test samples for FATE, if not set use
$FATE_SAMPLES at make invocation time.
–enable-neon-clobber-test check NEON registers for clobbering (should be
used only for debugging purposes)
–enable-xmm-clobber-test check XMM registers for clobbering (Win64-only;
should be used only for debugging purposes)
–enable-random randomly enable/disable components
–disable-random
–enable-random=LIST randomly enable/disable specific components or
–disable-random=LIST component groups. LIST is a comma-separated list
of NAME[:PROB] entries where NAME is a component
(group) and PROB the probability associated with
NAME (default 0.5).
–random-seed=VALUE seed value for --enable/disable-random
–disable-valgrind-backtrace do not print a backtrace under Valgrind
(only applies to --disable-optimizations builds)
–enable-ossfuzz Enable building fuzzer tool
–libfuzzer=PATH path to libfuzzer
–ignore-tests=TESTS comma-separated list (without “fate-” prefix
in the name) of tests whose result is ignored
–enable-linux-perf enable Linux Performance Monitor API
–disable-large-tests disable tests that use a large amount of memory

NOTE: Object files are built at the place where configure is launched.

linux下编译ffmpeg 以及交叉编译并引入Android 使用ndk下的make-standalone-toolchain.sh脚本进行工具链的生成,路径位于:ndk/{ndk版本}/build/tools/make-standalone-toolchain.sh 脚本关键参数: --toolchain=arm-linux-androideabi-4.9 (指定编译工具链版本) --platform=android-19(指定sdk平台最低支持版本) --install-dir=../toolchain(指定生成工具链的输出目录) 阅读详情

相关推荐

4.1 FFmpeg编译选项配置

FFmpeg编译选项配置指南 本文档总结了不同场景下FFmpeg编译的常用配置选项,主要包括: 源码调试场景:启用debug模式(--enable-debug=3),禁用优化(--disable-optimizations)和strip(--disable-stripping)以确保调试顺畅。 编解码器支持场景:提供了两种配置方案,分别支持x264/fdk-aac/mp4等基本功能,以及x264/x265/fdk-aac/lame/flv等扩展功能组合。 参数讲解:详细介绍了组件禁用与启用的原则和方法,强调

卖猪肉的痴汉 1661

ffmpeg调试相关知识点

1、若要调试FFMPEG,在编译时应当在configure时,加上 --enable-debug --disable-asm 注:在调试x264时就应该加上这两个配置选项,方能调试 2、make install 会执行strip命令,strip命令就会去掉FFMPEG的symbols(符号表),这就相当于--disable-debug这个默认选项...

weixin_33759269的博客 293

4.1 FFmpeg编译选项实战:从调试到生产环境的配置策略

本文深入探讨了FFmpeg编译选项的实战配置策略,从调试到生产环境再到跨平台部署。通过对比不同场景下的配置命令,详细解析了如何通过精准的编译选项实现按需定制、性能优化与体积控制,帮助开发者构建高效、稳定的专属媒体处理库。

weixin_29280657的博客 287

安卓编译x264与集成使用ffmpeg-demo

编译安卓下面的x264巨坑 首先是Found no assembler 错误, 那么就百度方案两种;将 --disable-asm 添加到命令行,或者安装nasm。坑的开始,我想着还是安装上怕之后有东西不支持,所以就去下载高版本的NASM,然后解决了Found no assembler 问题 https://www.cnblogs.com/wanggang123/p/8660435.html 解决Found no assembler https://blog.youkuaiyun.com/ByChen623/artic

zw1996的博客 3408

FFmpeg编译实战:如何为不同场景定制你的编译选项(含x264、x265、fdk-aac配置)

本文详细解析了FFmpeg编译实战,指导开发者如何根据不同场景定制编译选项,包括x264、x265和fdk-aac等关键配置。从目标平台特性到功能需求清单,再到许可证合规性,全面覆盖编译前的战略规划,并提供嵌入式设备、直播转码服务器等典型场景的优化方案,帮助开发者高效定制FFmpeg功能集。

weixin_29309213的博客 117

FFmpeg编译实战:如何为不同场景定制你的编译选项(含x264、fdk-aac配置)

本文详细介绍了如何为不同场景定制FFmpeg编译选项,包括x264和fdk-aac的配置。从开发调试到生产环境部署,提供四大典型场景的配置方案,帮助开发者打造高效、精简的定制化FFmpeg,提升音视频处理性能。

weixin_29229989的博客 346

嵌入式linux下的FFmpeg交叉编译(最全面)

fmpeg的常用编译参数如下:- --enable-shared:启用共享库的编译,生成.so文件,可以被其他程序调用。- --enable-static:启用静态库的编译,生成.a文件,可以被其他程序静态链接。- --enable-gpl:启用GPL许可证的代码。- --enable-version3:启用LGPLv3许可证的代码。- --enable-libx264:启用x264编解码器。- --enable-libx265:启用x265编解码器。

猫哥 的沉淀、积累、总结。天天学习,好好向上...c/c++,嵌入式 linux,Android,HarmonyOS,AIOT) 1万+

Yolov5实现道路裂缝检测

Yolov5实现道路裂缝检测 参考代码链接 Github代码链接 基于Pytorch的Yolov5道路裂缝检测程序运行说明。大家可以结合我的说明和原文说明使用,有问题欢迎询问。 文章目录Yolov5实现道路裂缝检测环境要求测试训练自己的数据集1.创建dataset.yaml文件2.创建标签文件3.组织文件路径4.选择模型5.开始训练 环境要求 Python 3.8或之后的版本 还要安装requirements.txt文件中所有依赖包,包括1.7及以上版本的torch $ pip install -r req

qq_26751379的博客 2万+

ffmpeg 编译配置选项

ffmpeg配置选项 http://blog.163.com/cgq_i/blog/static/728779232011643431105/ [root@web ffmpeg]# ./configure --help Usage: configure [options] Options: [defaults in brackets after descriptions]

rjw的专栏 1591

MCAL配置之CAN模块及源码分析

该文章详细解析了Autosar中MCAL配置里的CAN模块,详细分析了重要的配置选项,并对CAN的发送和接收函数进行了剖析。

u013624141的博客 1416

上证指数30年k线图_金融占星简单解读上证指数30年历史行情

阅读此文需要一定的占星基础知识,本人对于金融知识了解甚少,如有描述错误请包涵指正!影响大众事件发展趋势的都是外行星,即木星-冥王星这5颗,由于时间跨度长达30年,绘制社会行星的K线图工作量太大,所以只以时代行星对这30年行情的简单解读作为分享,在今后的短期分析中会逐渐加入社会行星,甚至在个股分析上还会加入个人行星。那即使只绘制时代行星,所展现出来的信息也无法在一张图上画出来,否则太乱难以分辨,所以...

weixin_39831242的博客 1672

FFMpeg IOS系统编译配置选项 含X264

首先要编译X264,到时候需要在ffmpeg中enable-libx264,具体配置选项如下: CC=/Developer/Platforms/iPhoneOS.platform/Developer/usr/bin/gcc ./configure --host=arm-apple-darwin --sysroot=/Developer/Platforms/iPhoneOS.platform/De

zcc_km的专栏 685

华为OD机试:使用Ascend C语言实现Matmul与LeakyReLU融合算子的全流程设计与优化解析

通过本文的详细解析,相信你已经对华为OD机试中基于Ascend C语言的Matmul+LeakyReLU融合算子的设计与实现有了深入的理解。我们不仅从理论上探讨了融合算子的核心优势,还通过实际的代码示例演示了如何一步步完成算子的实现与优化。融合算子在AI算子开发中的应用,尤其是在处理大规模矩阵计算的场景中,能够显著提升计算效率,优化内存占用,并减少数据传输的开销。通过合理的Tiling策略设计,我们还能够充分利用多核处理器的算力,进一步提升AI模型的训练与推理性能。

qq_38334677的博客 661

media-autobuild_suite配置教程:3步完成FFmpeg自定义编译选项设置

media-autobuild_suite是一款强大的Windows批处理脚本工具,能够帮助用户快速搭建Mingw-w64编译环境,轻松实现FFmpeg及其他媒体工具的自定义编译。本文将为你详细介绍如何通过三个简单步骤,完成FFmpeg自定义编译选项的设置,让你轻松打造专属的媒体处理工具。 ## 一、准备工作:获取media-autobuild_suite 首先,你需要获取media-auto

gitblog_00966的博客 584

数据分析!Python爬虫爬取B站UP主数据并分析涨粉规律(附可视化图表)

爬取更多UP主:扩充列表,增加需要分析的UP主UID数量爬取更多作品:修改的参数,增加每个UP主的作品爬取页数新增分析维度:在类中添加方法,可分析发布时间(如定时发布对涨粉的影响)、内容标签(如游戏/知识区涨粉差异)优化可视化样式:调整方法中的图表类型、颜色、标题等,适配个人展示需求播放量与粉丝数强正相关:从相关性热力图可看出,总播放量与粉丝数的相关系数通常在0.8以上,说明曝光量是涨粉的核心基础作品数量存在“边际效应”

专注于Python爬虫开发,分享爬虫技巧、项目实战与反爬经验,使用Scrapy、BeautifulSoup等工具,解决数据抓取难题。 1225

YOLOv12涨点改进 | 全网独家首发Conv改进篇 | Arxiv 2025 | 引入一种新的WConv加权卷积改进YOLOv12,显著提升其特征提取能力和目标检测精度

本文提出了一种新型加权卷积(WConv)模块,通过引入最优密度函数动态调整邻域像素权重,显著提升了YOLOv12目标检测性能。WConv在保持参数数量不变的情况下,提高了模型精度(VGG准确率提升10%)、增强了小目标检测能力,并改善了多尺度特征提取。文中详细介绍了模块原理、网络结构改进方法,并提供了核心代码实现和yaml配置文件。实验表明,该方法在图像任务中最高可降低53%的损失,虽然会带来11%的时间开销,但具有优异的鲁棒性。该技术可广泛应用于2D/3D图像处理领域。

Ai缝合怪、助力小伙伴高效发论文 215

4.1 FFmpeg编译选项实战:从基础配置到高级优化

本文详细介绍了FFmpeg编译选项的实战技巧,从基础配置到高级优化。通过模块化思维、第三方库集成和硬件加速方案,帮助开发者高效定制FFmpeg功能。特别针对音视频编解码、交叉编译和体积优化提供了具体配置示例,适合嵌入式、直播转码等不同场景需求。

weixin_33676492的博客 351

华为OD机试 - 天然蓄水库(Java 2025 A卷 100分)

例如,当山脉为s = [3, 1, 2]时,则选取s[0]和s[2]作为水库边界,则蓄水量为1,此时输出:0 2:1。选取下标 0(高度 3)与 2(高度 2)为边界,水位为 min(3,2)=2;选取山脉上两个点作为蓄水库的边界,则边界内的区域可以蓄水,蓄水量需排除山脉占用的空间。经过分析,选取s[1]和s[6]时,水库蓄水量为19(3 + 7 + 4 + 5)。当存在合理的水库边界时,输出左边界、空格、右边界、英文冒号、蓄水量;当山脉`s = [3, 2, 1]时,不存在合理的边界,此时输出:0。

学Java,找哪吒 938

FFmpeg编译选项详解

帮助选项Help options: –help print this message # 帮助选项 –quiet Suppress showing informative output # 信息输出显示 –list-decoders show all

没有最好,只有更好! 1万+

Higress 入门:初探阿里云原生 AI 网关

Higress 是一款由阿里巴巴推出的云原生 API 网关,其内核基于 Istio 和 Envoy。与传统 API 网关不同,它深度聚焦于 AI 场景,支持国内外众多主流模型供应商,如 OpenAI、百度文心一言等,还兼容基于 vllm/ollama 等自建的 DeepSeek 模型,能够满足不同类型企业对 AI 能力集成与管理的需求。Higress 作为一款功能强大的云原生 API 网关,在 AI 时代展现出独特的优势。

加入“Super Entity”,与全能开发团队共探AI智能体与数字人项目,开启前沿技术之旅。 1861

文档:亲测可用解决vnc灰屏,黑屏,鼠标大黑叉情况

主要解决vnc-viewer灰屏,黑屏,鼠标大黑叉等现象,详细见文档。

ffmpeg configure配置选项

帮助选项Help options 标准选项Standard options 许可证选项Licensing options 配置选项Configuration options 程序选项Program options 文档选项Documentation options 组件选项Component options 个别组件选项Individual component options 扩展库支持Extern

123456789 2万+

jdk-8u144-linux-x64.tar.gz.

该资源为搭建Linux系统Java环境用,资源的后缀为tar.gz格式的压缩包

ffmpeg编译参数详解

ffmpeg编译参数详解 Usage: configure [options] 用 法:configure [选项] Options: [defaults in brackets after descriptions] 选 项:[描述之后的方括号里的是默认值] Standard options: 标准选项: --help print this message 打印这个信息,例如:./configure --h...

zhaofuguang的专栏 2117

蓝牙模块HM-10手册

蓝牙模块HM-10手册,该手册对蓝牙模块HM-10进行了详细的介绍和使用方法以及一些AT指令。

数学建模模型总结

这是本人在两年内准备参加数学建模竞赛搜集到的模型资料,已经经过了本人的筛选和整理,希望能够对准备参加数学建模竞赛的学弟学妹们提供一些帮助!

FFmpeg - ./configure编译参数全部总结和整理

1 FFmpge编译参数 本文对FFmpeg4.4.1的./configure的所有编译参数进行了简要说明。在Linux系统上编译FFmpge时总是不太明白应该使用哪一些编译参数,这里以FFmpge4.4.1版本为例,对FFmpge的所有可选编译参数进行总结和整理。 1.1 Help options 帮助选项 参数 参数作用 –help 打印显示帮助信息 –quiet 禁止显示信息输出 –list-decoders 显示所有可用的解码器 –list-encoders 显示所有可用

HW140701的博客 1万+

【FFmpeg】在 Mac OS 中编译 FFmpeg 源码 ② ( 下载 FFmpeg 源码 | 源码编译配置 | 源码编译 | 安装库文件 | 配置环境变量 )

一、下载 FFmpeg 源码 1、目录准备 2、克隆远程代码 3、查看源码目录 4、切换代码分支 二、FFmpeg 源码编译配置 1、编译配置命令 ./configure 2、编译配置解析 三、FFmpeg 源码编译 1、编译源码 2、安装编译后的 FFmpeg 程序 3、配置环境变量 4、验证 FFmpeg 版本号 四、编译结果查看 1、安装 tree 命令行工具 2、FFmpeg 编译输出内容 - 可执行程序 / 共享库 / 头文件 3、查看编译结果目录

让 学习 成为一种 习惯 ( 韩曙亮 の 技术博客 ) 4883

ffmpeg configure参数说明

#./configure --help Usage: configure [options] Options: [defaults in brackets after descriptions]  Standard options:        基本选项参数 --help                         显示此帮助信息|print this message --log[

无为 947
下一篇: ffmpeg 转码代码
hiprogram
博客等级 码龄10年 1粉丝 16原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值