Obecnie używam pliku wsadowego, który (między innymi) uruchamia następujący wiersz poleceń handbrakecli do konwersji wideo:
HandBrakeCLI.exe -v0 --input "D:\input.mkv" --preset="Universal" --ipod-atom -t 1 --angle 1 --gain 0 --output="D:\output.mp4"
Służy mi to od wielu lat, tworząc plik wideo, który jest mniejszy niż oryginał (dobry, gdy masz tylko 16 GB urządzeń), wygląda wystarczająco dobrze i działa na prawie każdym iPodzie, iPadzie i iPhonie, na którym go włożyłem.
Jednak z czasem handbrakecli stara się konwertować coraz więcej filmów do tego stopnia, że muszę poszukać alternatywy. Nie pomaga w tym fakt, że dzienniki nie zawierają absolutnie żadnych informacji o tym, dlaczego się zawiesił. Na przykład ten film wideo uległ awarii w wyniku konwersji o 71% i są to ostatnie 4 linie:
AC3 Passthru requested and input codec is not compatible for track 2, using AC3 encoder
x264 [info]: using SAR=9593/9600
x264 [info]: using cpu capabilities: MMX2 SSE2Fast SSSE3 SSE4.2 AVX
x264 [info]: profile Constrained Baseline, level 3.0
Niezbyt pomocny.
Patrzyłem na użycie ffmpeg jako alternatywy, ale wszystkie przykłady, które widziałem w Internecie, wykonują co najmniej jedną z następujących czynności:
- Nie działa (opcje wiersza poleceń nie są rozpoznawane) - często!
- Rezultatem jest plik większy niż oryginał - bardzo często!
- Zniekształć obraz, zwłaszcza w przypadku konwersji nieoczekiwanego rozmiaru filmu (np. PAL niepanoramiczny)
- Usuń dźwięk
- Rezultatem jest wideo, którego iPhone, iPod lub iPad nie będą odtwarzać
Czy istnieje przyzwoita, uniwersalna linia komend ffmepg, która sprawi, że każde wideo będzie działało szczęśliwie na wszystkich urządzeniach Apple, a także osiągnie zmniejszenie rozmiaru pliku?
Punkty bonusowe, jeśli zmniejszą (ale nie zniekształcą) również wideo w rozdzielczości 720p.