mirror of
https://github.com/levogevo/ffmpeg-av1-builder.git
synced 2026-01-15 16:56:18 +00:00
fix wrong output
This commit is contained in:
@@ -31,7 +31,7 @@ while getopts "$OPTS" flag; do
|
|||||||
exit 0
|
exit 0
|
||||||
;;
|
;;
|
||||||
i)
|
i)
|
||||||
if [[ $# -lt 2 ]]; then
|
if [[ "$#" -lt 2 ]]; then
|
||||||
echo "wrong arguments given"
|
echo "wrong arguments given"
|
||||||
usage
|
usage
|
||||||
exit 1
|
exit 1
|
||||||
@@ -46,9 +46,17 @@ while getopts "$OPTS" flag; do
|
|||||||
esac
|
esac
|
||||||
done
|
done
|
||||||
|
|
||||||
test -f "$INPUT" || (echo "file does not exist" && exit 1)
|
if [[ ! -f "$INPUT" ]]; then
|
||||||
|
echo "file does not exist"
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
|
||||||
echo "Estimating film grain for $INPUT" && sleep 2
|
echo "Estimating film grain for $INPUT" && sleep 2
|
||||||
|
|
||||||
|
get_duration() {
|
||||||
|
ffmpeg -i "$1" 2>&1 | grep "Duration" | awk '{print $2}' | tr -d ,
|
||||||
|
}
|
||||||
|
|
||||||
# global variables
|
# global variables
|
||||||
SEGMENTS=10
|
SEGMENTS=10
|
||||||
SEGMENT_TIME=3
|
SEGMENT_TIME=3
|
||||||
@@ -62,9 +70,6 @@ TEST_MAX_GRAIN=30
|
|||||||
GRAIN_STEP=5
|
GRAIN_STEP=5
|
||||||
GRAIN_LOG="grain_log.txt"
|
GRAIN_LOG="grain_log.txt"
|
||||||
|
|
||||||
get_duration() {
|
|
||||||
ffmpeg -i "$1" 2>&1 | grep "Duration" | awk '{print $2}' | tr -d ,
|
|
||||||
}
|
|
||||||
|
|
||||||
segment_video() {
|
segment_video() {
|
||||||
# set number of segments and start times
|
# set number of segments and start times
|
||||||
@@ -101,7 +106,6 @@ segment_video() {
|
|||||||
|
|
||||||
encode_segments() {
|
encode_segments() {
|
||||||
cd "$SEGMENT_DIR" || exit
|
cd "$SEGMENT_DIR" || exit
|
||||||
clear
|
|
||||||
echo > "$GRAIN_LOG"
|
echo > "$GRAIN_LOG"
|
||||||
for VIDEO in $(ls segment*.mkv)
|
for VIDEO in $(ls segment*.mkv)
|
||||||
do
|
do
|
||||||
@@ -116,7 +120,6 @@ encode_segments() {
|
|||||||
echo >> "$GRAIN_LOG"
|
echo >> "$GRAIN_LOG"
|
||||||
done
|
done
|
||||||
|
|
||||||
clear
|
|
||||||
cat "$GRAIN_LOG"
|
cat "$GRAIN_LOG"
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -14,8 +14,9 @@ usage() {
|
|||||||
}
|
}
|
||||||
|
|
||||||
encode() {
|
encode() {
|
||||||
ENCODE_FILE="/tmp/encode.sh"
|
ENCODE_FILE="/tmp/$(basename "$OUTPUT")_encode.sh"
|
||||||
echo -e '#!/bin/bash\n' > "$ENCODE_FILE"
|
echo -e '#!/bin/bash\n' > "$ENCODE_FILE"
|
||||||
|
echo "export OUTPUT=\"$OUTPUT\"" >> "$ENCODE_FILE"
|
||||||
|
|
||||||
SVT_PARAMS="${GRAIN}tune=3:enable-overlays=1:scd=1:enable-hdr=1:fast-decode=1:enable-variance-boost=1:enable-qm=1:qm-min=0:qm-max=15"
|
SVT_PARAMS="${GRAIN}tune=3:enable-overlays=1:scd=1:enable-hdr=1:fast-decode=1:enable-variance-boost=1:enable-qm=1:qm-min=0:qm-max=15"
|
||||||
echo "export SVT_PARAMS=\"$SVT_PARAMS\"" >> "$ENCODE_FILE"
|
echo "export SVT_PARAMS=\"$SVT_PARAMS\"" >> "$ENCODE_FILE"
|
||||||
@@ -60,7 +61,7 @@ encode() {
|
|||||||
-metadata \"\$AUDIO_ENC_VERSION\" \
|
-metadata \"\$AUDIO_ENC_VERSION\" \
|
||||||
-metadata \"\$ADD_METADATA\" $NL \
|
-metadata \"\$ADD_METADATA\" $NL \
|
||||||
\$FFMPEG_PARAMS -dolbyvision 1 -svtav1-params \
|
\$FFMPEG_PARAMS -dolbyvision 1 -svtav1-params \
|
||||||
$NL "\"\$SVT_PARAMS\" \"\$OUTPUT\" ||" $NL \
|
$NL \"\$SVT_PARAMS\" \"\$OUTPUT\" "||" $NL \
|
||||||
ffmpeg -i \""$INPUT"\" -map 0 \$UNMAP \
|
ffmpeg -i \""$INPUT"\" -map 0 \$UNMAP \
|
||||||
\$AUDIO_FORMAT \$AUDIO_BITRATE $NL \
|
\$AUDIO_FORMAT \$AUDIO_BITRATE $NL \
|
||||||
-metadata \"\$FFMPEG_VERSION\" \
|
-metadata \"\$FFMPEG_VERSION\" \
|
||||||
@@ -68,7 +69,7 @@ encode() {
|
|||||||
-metadata \"\$AUDIO_ENC_VERSION\" \
|
-metadata \"\$AUDIO_ENC_VERSION\" \
|
||||||
-metadata \"\$ADD_METADATA\" $NL \
|
-metadata \"\$ADD_METADATA\" $NL \
|
||||||
"\$FFMPEG_PARAMS" -svtav1-params \
|
"\$FFMPEG_PARAMS" -svtav1-params \
|
||||||
$NL "\"\$SVT_PARAMS\" \"$OUTPUT\" || exit 1 " >> "$ENCODE_FILE"
|
$NL "\"\$SVT_PARAMS\" \"\$OUTPUT\" || exit 1 " >> "$ENCODE_FILE"
|
||||||
echo >> "$ENCODE_FILE"
|
echo >> "$ENCODE_FILE"
|
||||||
|
|
||||||
if [[ "$EXT" == "mkv" ]]; then
|
if [[ "$EXT" == "mkv" ]]; then
|
||||||
|
|||||||
Reference in New Issue
Block a user