1080p wmv videoyu 720p videoya nasıl dönüştürebilirim?


14

Daha düşük kaliteli (tercihen 720p) bir videoya dönüştürmek istediğim 1080p wmv videom var. Sesi sağlam tutmak istiyorum. Bunu Ubuntu'da nasıl başarabilirim?

Yanıtlar:


16

Bir ffmpeg etiketi kullandığınız için bunu cevap için kullanacağım.

ffmpeg -i input.wmv -s hd720 -c:v libx264 -crf 23 -c:a aac -strict -2 output.mp4

Farklı bir CRF parametresi belirterek video kalitesini değiştirin. Daha fazla bilgi için x264 kodlama kılavuzuna bakın .


1
'Sameq' seçeneği kaldırıldı. Kaliteyi korumak için bir seçenek arıyorsanız (ki bu -sameq'in amacına uygun değildir), -qscale 0 veya eşdeğer bir kalite faktörü seçeneğini kullanın.
juanmah

Göre ffmpeg wiki : Bu kadar basit olarak olabilirffmpeg -i input.avi -vf scale=-1:720 output.avi
andersonvom

5

2012'de bu soru için kabul edilen orijinal yanıttan bu yana biraz zaman geçti. FFmpeg'in daha yeni sürümleri FFmpeg'in 'ölçek' video filtresini kullanmak için daha iyi olurdu.

İstediğiniz gibi ses parçasını da kopyalayan bu filtreyi kullanarak aşağıda bir örnek vereceğim :

ffmpeg -i input.wmv \
       -c:v libx264 -preset veryslow -tune film -crf 22 -vf scale=-2:720 \
       -c:a copy \
       output.mp4

-tune filmYukarıda verilen opsiyon atlanabilir veya deneyin olabilir -tune animationkullandığınız video klibin türüne bağlı.

Eğer bu karar verirse olur aşağıdaki gibi dış kitaplık libfdk_aac kullanmak olacaktır ses iyi bir seçim dönüştürmek istiyorum:

ffmpeg -i input.wmv \
       -c:v libx264 -preset veryslow -tune film -crf 22 -vf scale=-2:720 \
       -c:a libfdk_aac -b:a 128k \
       output.mp4

Bu kesinlikle ölçekliyordum bir wmv dosyası ile ne yapacağım, sonuçları daha kabul edilebilir bulacaksınız ...


1

Tüm ses parçalarını, altyazıları ve benzerlerini korumak istiyorsanız, şöyle bir şey kullanmalısınız:

ffmpeg -i input.mkv \
       -map 0:0 -map 0:1 -map 0:2 -map 0:3 -map 0:4 \
       -vf scale=-1:720 -c:v libx264 -crf 18 -preset veryslow \
       -c:a:0 copy -c:a:1 copy -c:s copy \
       output.mkv

Bu durumda input.mkv dosyasında iki ses parçası ve iki altyazı bulunur. Tüm ses parçalarını (veya altyazıları veya videoları, vb.) Tek tek veya tek bir varlık olarak (altyazılar için belirttiğim gibi) belirleyebilirsiniz.

Umarım yardımcı olur...


1
Her akışı yukarıdaki şekilde belirtmeniz gerekmez: -map 0:0 -map 0:1 -map 0:2 -map 0:3 -map 0:4 Bunun yerine, -map 0bunun yerine basitçe belirtebilirsiniz . Bu, ses kopyalama kodeklerine benzer şekilde giriş 0'daki tüm akışları otomatik olarak seçecektir. Belirtmeniz gereken tek codec seçeneği -c:copy -c:v libx264. Bu şu anlama gelir: "x264'e kodlaması gereken video hariç tüm akış codec bileşenlerini kopyalanacak şekilde ayarlayın."
Cheekysoft

Eşdeğer (parametre ffmpeg -i input.mkv -map 0 -vf scale=-1:720 -c:copy -c:v libx264 -crf 18 -preset veryslow output.mkv
sırasını
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.