Při práci na konverzi Cold War Rearmed 3 kampaně do češtiny jsem narazil na problém se synchronizací miminky s dabingem, pokud nebyly dostupné lip sekvence.
Připravil jsem si pár skriptů, které mi pomohly hromadně lip vytvářet.
Prerequisity
- steam
- arma 3 tools
- wine
wav2lip
#!/usr/bin/env bash
wine ~/.local/share/Steam/steamapps/common/Arma\ 3\ Tools/Audio/WAVToLIP.exe $@
ogg2lip
#!/usr/bin/env bash
OUT_DIR=$(dirname $1)
OUT_WAV=$(basename $1 .ogg).wav
CWD=$(pwd)
echo "Converting $1 to $OUT_WAV in $OUT_DIR"
ffmpeg -i $1 -ac 1 $OUT_DIR/$OUT_WAV && \
echo "Converting $OUT_WAV to $(basename $OUT_WAV .wav).lip" && \
cd $OUT_DIR &&
wav2lip $OUT_WAV && \
unlink $OUT_WAV
cd $CWD
all-ogg2lip
#!/usr/bin/env bash
find . -regex ".*/.+v[0-9][0-9].*\.ogg" -exec ogg2lip {} \;
jsou vybrány pouze soubory, které by měly obsahovat hlášky viditelných NPC
oproti tomu ogg s „r“ obsahují hlášky kolující ve vysílačce