diff options
author | Fox Caminiti <fox@foxcam.net> | 2022-12-16 20:16:43 -0500 |
---|---|---|
committer | Fox Caminiti <fox@foxcam.net> | 2022-12-16 20:16:43 -0500 |
commit | bedd6906eabdd513042d6a178d4dc56a3a41d1d3 (patch) | |
tree | 2bcbd3e46ae61e583707a2ccc5b3f5cfeacb61a8 /misc/ffmpeg_config.sh | |
parent | cdb9e1f7240cb0716b7d99df5e1fd7c3fc3407a8 (diff) |
v3, file/build organization
Diffstat (limited to 'misc/ffmpeg_config.sh')
-rw-r--r-- | misc/ffmpeg_config.sh | 49 |
1 files changed, 49 insertions, 0 deletions
diff --git a/misc/ffmpeg_config.sh b/misc/ffmpeg_config.sh new file mode 100644 index 0000000..9266a76 --- /dev/null +++ b/misc/ffmpeg_config.sh @@ -0,0 +1,49 @@ +#!/bin/bash + +# The config flags for the minimal ffmpeg build used in the program, reducing +# compile time and filesize by a decent amount. + +# Surprisingly we don't need to compile and link any other external libaries to +# be able to decode most of the commonly-used file formats. We'll only start +# needing them if we want the user to be able to export mp4s or webms directly +# from the program. + +# All bitstream filters and are enabled. +# All filters, devices, and HW acceleration are disabled. +# All protocols aside from 'file' are disabled. +# Encoders and muxers are TBD. + +VIDEO_DECODERS="av1,h263,h264,hevc,vp8,vp9" +AUDIO_DECODERS="aac,ac3,flac,mp3,opus,pcm_s16le,pcm_dvd,pcm_bluray,wmalossless,wmav1" +VIDEO_DEMUXERS="h261,h263,h264,hevc,matroska,mov,mpc,mpegps,mpegts,webm_dash_manifest" +AUDIO_DEMUXERS="aac,avi,flac,mp3,ogg,pcm_s16le,wav" +VIDEO_PARSERS="h261,h263,h264,hevc,mpeg4video,mpegvideo,vc1,vp8,vp9,webp" +AUDIO_PARSERS="aac,flac,mpegaudio,opus,vorbis" + +./configure \ + --disable-encoders \ + --disable-decoders \ + --disable-hwaccels \ + --disable-muxers \ + --disable-demuxers \ + --disable-parsers \ + --disable-protocols \ + --disable-devices \ + --disable-filters \ + \ + --enable-decoder=$VIDEO_DECODERS,$AUDIO_DECODERS \ + --enable-parser=$VIDEO_PARSERS,$AUDIO_PARSERS \ + --enable-demuxer=$VIDEO_DEMUXERS,$AUDIO_DEMUXERS \ + --enable-protocol=file \ + \ + --enable-avcodec \ + --enable-avformat \ + --enable-avutil \ + --enable-swscale \ + --disable-avdevice \ + --disable-network \ + \ + --enable-gpl \ + --enable-static \ + --disable-shared \ + --disable-doc \ |