mirror of
https://github.com/levogevo/ffmpeg-builder.git
synced 2026-07-21 21:45:21 +00:00
update README
This commit is contained in:
@@ -24,7 +24,7 @@ Configuration is done through environment variables.
|
|||||||
By default, this project will build a static `ffmpeg` binary in `./gitignore/sysroot/bin/ffmpeg`.
|
By default, this project will build a static `ffmpeg` binary in `./gitignore/sysroot/bin/ffmpeg`.
|
||||||
|
|
||||||
The user-overridable compile options are:
|
The user-overridable compile options are:
|
||||||
- `ENABLE`: configure what ffmpeg enables (default:
|
- `ENABLE`: configure what ffmpeg enables. default:
|
||||||
lcms2
|
lcms2
|
||||||
libaom
|
libaom
|
||||||
libass
|
libass
|
||||||
@@ -48,15 +48,15 @@ libharfbuzz
|
|||||||
libopenjpeg
|
libopenjpeg
|
||||||
libsvtav1_hdr
|
libsvtav1_hdr
|
||||||
libfontconfig
|
libfontconfig
|
||||||
)
|
|
||||||
- `PREFIX`: prefix to install to, default is local install in ./gitignore/sysroot (default: local)
|
- `PREFIX`: path to install to, local install is in ./gitignore/sysroot. default: local
|
||||||
- `STATIC`: static or shared build (default: ON)
|
- `STATIC`: static (ON) or shared (OFF) build. default: ON
|
||||||
- `LTO`: enable link time optimization (default: ON)
|
- `LTO`: enable link time optimization (ON/OFF). default: ON
|
||||||
- `CLEAN`: clean build directories before building (default: ON)
|
- `CLEAN`: clean build directories before building (ON/OFF). default: ON
|
||||||
- `PGO`: enable profile guided optimization (default: OFF)
|
- `PGO`: enable profile guided optimization (ON/OFF). default: OFF
|
||||||
- `PACKAGE`: package ffmpeg binaries to tarball in ./gitignore/package (default: OFF)
|
- `PACKAGE`: package ffmpeg binaries to tarball in ./gitignore/package (ON/OFF). default: OFF
|
||||||
- `ARCH`: architecture type (x86-64-v{1,2,3,4}, armv8-a, etc) (default: native)
|
- `ARCH`: architecture type (x86-64-v{1,2,3,4}, armv8-a, etc). default: native
|
||||||
- `OPT`: optimization level (0-3) (default: 3)
|
- `OPT`: optimization level (0-3). default: 3
|
||||||
|
|
||||||
Examples:
|
Examples:
|
||||||
- only build libsvtav1_psy and libopus: `ENABLE='libsvtav1_psy libopus' ./scripts/build.sh`
|
- only build libsvtav1_psy and libopus: `ENABLE='libsvtav1_psy libopus' ./scripts/build.sh`
|
||||||
@@ -80,7 +80,7 @@ ENABLE='libdav1d' ./scripts/docker_run_image.sh ubuntu ./scripts/build.sh
|
|||||||
# Encoding scripts
|
# Encoding scripts
|
||||||
The encoding scripts are designed to be installed to system paths for re-use via symbolic links back to this repo using the `-I` flag.
|
The encoding scripts are designed to be installed to system paths for re-use via symbolic links back to this repo using the `-I` flag.
|
||||||
|
|
||||||
## Encoding with svtav1-psy and opus
|
## Encoding with svtav1 and opus
|
||||||
```bash
|
```bash
|
||||||
encode -i input [options] output
|
encode -i input [options] output
|
||||||
[-P NUM] set preset (default: 3)
|
[-P NUM] set preset (default: 3)
|
||||||
@@ -98,7 +98,7 @@ encode -i input [options] output
|
|||||||
[-I] system install at /usr/local/bin/encode
|
[-I] system install at /usr/local/bin/encode
|
||||||
[-U] uninstall from /usr/local/bin/encode
|
[-U] uninstall from /usr/local/bin/encode
|
||||||
```
|
```
|
||||||
- Uses svtav1-psy for the video encoder.
|
- Uses svtav1 for the video encoder.
|
||||||
- Uses libopus for the audio encoder.
|
- Uses libopus for the audio encoder.
|
||||||
- Skips re-encoding av1/opus streams.
|
- Skips re-encoding av1/opus streams.
|
||||||
- Only maps audio streams that match the video stream language if the video stream has a defined language.
|
- Only maps audio streams that match the video stream language if the video stream has a defined language.
|
||||||
|
|||||||
+6
-6
@@ -8,28 +8,28 @@ unset FB_COMP_OPTS_DESC
|
|||||||
declare -Ag FB_COMP_OPTS_DESC
|
declare -Ag FB_COMP_OPTS_DESC
|
||||||
|
|
||||||
# default build options
|
# default build options
|
||||||
FB_COMP_OPTS_DESC['CLEAN']='clean build directories before building'
|
FB_COMP_OPTS_DESC['CLEAN']='clean build directories before building (ON/OFF)'
|
||||||
DEFAULT_CLEAN=ON
|
DEFAULT_CLEAN=ON
|
||||||
|
|
||||||
FB_COMP_OPTS_DESC['LTO']='enable link time optimization'
|
FB_COMP_OPTS_DESC['LTO']='enable link time optimization (ON/OFF)'
|
||||||
DEFAULT_LTO=ON
|
DEFAULT_LTO=ON
|
||||||
|
|
||||||
FB_COMP_OPTS_DESC['PGO']='enable profile guided optimization'
|
FB_COMP_OPTS_DESC['PGO']='enable profile guided optimization (ON/OFF)'
|
||||||
DEFAULT_PGO=OFF
|
DEFAULT_PGO=OFF
|
||||||
|
|
||||||
FB_COMP_OPTS_DESC['OPT']='optimization level (0-3)'
|
FB_COMP_OPTS_DESC['OPT']='optimization level (0-3)'
|
||||||
DEFAULT_OPT=3
|
DEFAULT_OPT=3
|
||||||
|
|
||||||
FB_COMP_OPTS_DESC['STATIC']='static or shared build'
|
FB_COMP_OPTS_DESC['STATIC']='static (ON) or shared (OFF) build'
|
||||||
DEFAULT_STATIC=ON
|
DEFAULT_STATIC=ON
|
||||||
|
|
||||||
FB_COMP_OPTS_DESC['ARCH']='architecture type (x86-64-v{1,2,3,4}, armv8-a, etc)'
|
FB_COMP_OPTS_DESC['ARCH']='architecture type (x86-64-v{1,2,3,4}, armv8-a, etc)'
|
||||||
DEFAULT_ARCH=native
|
DEFAULT_ARCH=native
|
||||||
|
|
||||||
FB_COMP_OPTS_DESC['PREFIX']='prefix to install to, default is local install in ./gitignore/sysroot'
|
FB_COMP_OPTS_DESC['PREFIX']='path to install to, local install is in ./gitignore/sysroot'
|
||||||
DEFAULT_PREFIX='local'
|
DEFAULT_PREFIX='local'
|
||||||
|
|
||||||
FB_COMP_OPTS_DESC['PACKAGE']='package ffmpeg binaries to tarball in ./gitignore/package'
|
FB_COMP_OPTS_DESC['PACKAGE']='package ffmpeg binaries to tarball in ./gitignore/package (ON/OFF)'
|
||||||
DEFAULT_PACKAGE=OFF
|
DEFAULT_PACKAGE=OFF
|
||||||
|
|
||||||
FB_COMP_OPTS_DESC['ENABLE']='configure what ffmpeg enables'
|
FB_COMP_OPTS_DESC['ENABLE']='configure what ffmpeg enables'
|
||||||
|
|||||||
+3
-3
@@ -14,7 +14,7 @@ gen_function_info() {
|
|||||||
gen_compile_opts_info() {
|
gen_compile_opts_info() {
|
||||||
for opt in "${FB_COMP_OPTS[@]}"; do
|
for opt in "${FB_COMP_OPTS[@]}"; do
|
||||||
declare -n defOptVal="DEFAULT_${opt}"
|
declare -n defOptVal="DEFAULT_${opt}"
|
||||||
echo "- \`${opt}\`: ${FB_COMP_OPTS_DESC[${opt}]} (default: ${defOptVal})"
|
echo "- \`${opt}\`: ${FB_COMP_OPTS_DESC[${opt}]}. default: ${defOptVal}"
|
||||||
done
|
done
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -70,11 +70,11 @@ ENABLE='libdav1d' ./scripts/docker_run_image.sh ubuntu ./scripts/build.sh
|
|||||||
# Encoding scripts
|
# Encoding scripts
|
||||||
The encoding scripts are designed to be installed to system paths for re-use via symbolic links back to this repo using the \`-I\` flag.
|
The encoding scripts are designed to be installed to system paths for re-use via symbolic links back to this repo using the \`-I\` flag.
|
||||||
|
|
||||||
## Encoding with svtav1-psy and opus
|
## Encoding with svtav1 and opus
|
||||||
\`\`\`bash
|
\`\`\`bash
|
||||||
$(encode)
|
$(encode)
|
||||||
\`\`\`
|
\`\`\`
|
||||||
- Uses svtav1-psy for the video encoder.
|
- Uses svtav1 for the video encoder.
|
||||||
- Uses libopus for the audio encoder.
|
- Uses libopus for the audio encoder.
|
||||||
- Skips re-encoding av1/opus streams.
|
- Skips re-encoding av1/opus streams.
|
||||||
- Only maps audio streams that match the video stream language if the video stream has a defined language.
|
- Only maps audio streams that match the video stream language if the video stream has a defined language.
|
||||||
|
|||||||
Reference in New Issue
Block a user