Codiert ein Video mit SVT-AV1

Bezeichnung

av1enc - Konvertiert ein Video in ein av1-codiertes Video mit mkv als Container

Übersicht

av1enc VIDEO [OUT]

Beschreibung

Konvertiert ein Video in ein av1-codiertes Video mit mkv als Container

Abhängigkeiten

Skript

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
#!/bin/bash
if [ "$2" != '' ]; then out="$2"; else out="${1%.*}_av1.mkv"; fi;
time ( \
cd SVT-AV1-master/Bin/Release/ && \
echo "Gleich wird das Video abgespielt, um eine Crop-Maske zu finden. Bitte lassen Sie ihn zu einer guten Position laufen und schließen Sie dann das Fenster. Kopieren Sie den Parameter vollständig. Beispiel: 'crop=704:432:8:72'. OK?"
read ok
ffplay -i "${1}" -vf "cropdetect=24:16:0"
while [[ ! $crop =~ ^crop=[1-9][0-9]*:[1-9][0-9]*:[0-9]+:[0-9]+$ ]];
  do read -p "Crop-Parameter: " crop;
done;
ffmpeg -i "${1}" -nostdin -vf $crop -f yuv4mpegpipe - | \
'SVT-AV1-master/Bin/Release/SvtAv1EncApp' \
  --passes 2 \
  --rc 0 \
  -q 35 \
  -i stdin \
  -b "${1%.*}.ivf" \
ffmpeg -i "${1%.*}.ivf" -i "${1}" \
  -c copy \
  -map 0:v:0 -map 1:a:0 "$out" && \
rm -f "${1%.*}.ivf" \
)

Alternatives Skript

Konvertiert nur die Video-Spur in eine av1-codierte Videospur. Resultat ohne Ton.

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
#!/bin/bash
time ( \
cd SVT-AV1-master/Bin/Release/ && \
echo "Gleich wird das Video abgespielt, um eine Crop-Maske zu finden. Bitte lassen Sie ihn zu einer guten Position laufen und schließen Sie dann das Fenster. Kopieren Sie den Parameter vollständig. Beispiel: 'crop=704:432:8:72'. OK?"
read ok
ffplay -i "${1}" -vf "cropdetect=24:16:0"
while [[ ! $crop =~ ^crop=[1-9][0-9]*:[1-9][0-9]*:[0-9]+:[0-9]+$ ]];
  do read -p "Crop-Parameter: " crop;
done;
ffmpeg -i "${1}" -nostdin -vf $crop -f yuv4mpegpipe - | \
'SVT-AV1-master/Bin/Release/SvtAv1EncApp' \
  --passes 2 \
  --rc 0 \
  -q 35 \
  -i stdin \
  -b "${1%.*}.ivf" \
)

Literatur

Weiter