Mam plik WMV (v9 (WMV3), 960x720, 30.000030 fps, planar 4: 2: 0 YUV, wyprodukowany przez PowerPoint 2010) i muszę przekonwertować go na MPEG2 - jedyny format, który mój telewizor może odczytać z dysku flash USB (Próbowałem też MP4 / h.264, AVI / XVID - działa tylko MPEG2).
Udało mi się do pracy z prostym
ffmpeg -i "in.wmv" -c:v mpeg2video "out.mpg"
ale jakość wyniku jest straszna (wprowadzane są wyraźnie widoczne zniekształcenia), a odtwarzanie nie jest płynne (w niektórych momentach zbyt wolne).
Próbowałem też
ffmpeg -i "in.wmv" -c:v mpeg2video -pix_fmt yuv420p -me_method epzs -threads 4 -r 30.000030 -g 45 -bf 2 -trellis 2 -cmp 2 -subcmp 2 -s 960x720 -b 2500k -bt 300k -async 1 -y "out.mpg"
(Znalazłem to gdzieś w Internecie i trochę zmodyfikowałem - z powodzeniem zmieniłem resoultion, częstotliwość odświeżania i format wyjściowy (z VOB do samego MPG)), ale jakość jest nadal zbyt zła.
Jakich parametrów muszę użyć, aby zaoszczędzić jak najwięcej jakości? Współczynnik kompresji w ogóle nie ma znaczenia, akceptowalny jest nawet wzrost rozmiaru pliku.
Kolejną rzeczą, której tak naprawdę potrzebuję (postanowiłem nie umieszczać go w tytule pytania, aby uniknąć uczynienia go zbyt szczegółowym, ale docenię to, biorąc pod uwagę odpowiedzi), dodaje czystą ciszę jako ścieżkę dźwiękową - w dźwięku nie ma oryginalny, ale telewizor narzeka na to i chciałbym się go pozbyć. Wygenerowałem plik OGG Vorbis o tej samej długości (z dokładnością do drugiej sekundy), używając Audacity, ale nie mogę scalić go z filmem:
ffmpeg -i in.mpg -i silence.ogg -c:v copy -c:a libmp3lame out.mpg
a nawet goły
ffmpeg -i in.mpg -c:v copy -out.mpg
powoduje błędy „niedopełnienie bufora” i „zbyt duży pakiet”. (in.mpg to pliki utworzone przez ten sam plik binarny FFMPEG i ten sam źródłowy plik WMV przy użyciu pierwszych dwóch poleceń w pytaniu).
Używam kompilacji Zeranoe FFMPEG w systemie Windows 7.
Philips 42PFL3606H/58
, koduję do H.264 za pomocą ffmpeg -i "in.wmv" -sws_flags lanczos+accurate_rnd -c:v libx264 -crf 20 -preset slow -profile:v baseline -level 3.0 -pix_fmt yuv420p -tune fastdecode -x264-params keyint=240:min-keyint=20 "out.mp4"
- profil jest najniższy, jaki znam, a jeszcze więcej poprawek jest wykorzystywanych, aby ułatwić odtwarzanie pliku wynikowego.