Videoları dönüştürmek için en hızlı yol (toplu veya bekar)?

19

Burada video kodlayıcılar hakkında birçok soru olduğunu biliyorum, ancak sorum iş akışı / verimlilik hakkında daha fazla.

Günlük işimde, sık rastlanan pek çok formattaki videoları (genellikle büyük AVI , < Bir href="https://en.wikipedia.org/wiki/M4V"> M4V , ve neyi yapmıyoruz? Onları dönüştürüp, indirebilmek için internette kullanabileceğimiz verimli dosyalara indiriyoruz. Üretmem gereken biçimler:

Çift kullanımlı durumlar için ortak şablonlar oluşturmam gerekiyor (kaynakla aynı, 1080p veya 720p ) ve bunları hızlıca ve sıraya göre işleyebilir.

Ubuntu'da bu süreç hakkında en iyi nasıl gidileceğine dair herhangi bir fikir var mı?

    
sordu Garrett 03.10.2013 00:19

2 cevap

45

Komut satırını tercih ederseniz, ffmpeg (veya handbrake-cli ) kullanabilirsiniz.

MP4

En son ffmpeg sürümünü kullandığınızı varsayarsak:

ffmpeg -i input -c:v libx264 -crf 23 -preset medium -c:a aac -b:a 128k \
-movflags +faststart -vf scale=-2:720,format=yuv420p output.mp4
  • -crf : Kalite. Aralık, logaritmik 0 (kayıpsız) ila 51 (en kötü kalite). Varsayılan 23'tür. Öznel aklı aralıkları ~ 18-28'dir. Size hala kabul edilebilir bir kalite veren en yüksek değeri kullanın. YouTube'a veya benzerine yüklemek için kullanışsız şekilde büyük girdileri yeniden kodlarsanız, bu video hizmetleri yine de yeniden kodlayacağından 17 veya 18 değerini deneyin.

  • -preset : Kodlama hızı. Daha yavaş ön ayar, daha iyi sıkıştırma (dosya boyutu başına kalite) sağlar, ancak daha yavaştır. Sabrınız için en yavaş olanı kullanın: ultra hızlı, hızlı, çok hızlı, hızlı, hızlı, orta (varsayılan), yavaş, yavaş, veryslow.

  • -movflags +faststart : Aşamalı indirme görüntüleme durumunda tamamen indirilmeden önce videonun oynatılmasını sağlar. Videoyu barındırıyorsanız, YouTube gibi bir video hizmetine yüklüyorsanız gereksizdir.

  • -vf scale=-2:720,format=yuv420p : bir scale ve biçimlendirme video filtreleri. Yüksekliği 720 piksele kadar ölçeklendirin ve yönü koruyacak genişliği otomatik olarak seçin ve piksel formatının aptal oynatıcılar ile uyumlu olduğundan emin olun.

  • -b:a 128k : Ses bit hızı. % Co_de% 'siniz eskiyse ffmpeg değerini kullanmak için -strict experimental eklemeniz gerekir.

MOV

MOV ve MP4 dosyalarınız muhtemelen aynı video ve ses formatlarını içerdiğinden, MP4'ü kodlayabilir ve MOV'ı yeniden eşleştirerek yapabilirsiniz ( stream copy modu):

ffmpeg -i input.mp4 -codec copy output.mov

WMV

FFmpeg sadece WMV 7 ve 8'i destekler. 9. sürüm için açık kaynaklı kodlayıcının farkında değilim.

$ ffmpeg -encoders | grep -i windows
[...]
 V..... = Video
 A..... = Audio
 ------
 V..... wmv1                 Windows Media Video 7
 V..... wmv2                 Windows Media Video 8
 A..... wmav1                Windows Media Audio 1
 A..... wmav2                Windows Media Audio 2

Bu kodlayıcıları bilmediğimden, yalnızca test edilmemiş bir örnek verebilirim:

ffmpeg -i input -c:v wmv2 -b:v 1024k -c:a wmav2 -b:a 192k output.wmv

Ffmpeg alınıyor

Linux build of ffmpeg yükleyebilir veya adım adım ffmpeg derleme rehberi .

Toplu kodlamayı gerçekleştirmek için bir bash "for döngü" kullanma

Dizindeki tüm videoları kodlamak için:

$ mkdir encoded
$ for f in *.avi; do ffmpeg -i "$f" -c:v libx264 -crf 23 -preset medium \
  -c:a aac -b:a 128k -movflags +faststart -vf scale=-2:720,format=yuv420p \
  "encoded/${f%.avi}.mp4"; done

Ayrıca bkz.

verilen cevap LordNeckbeard 03.10.2013 20:04
4

El Freni ’ni deneyin.

HandBrake, videoyu neredeyse her formattan modern, yaygın olarak desteklenen codec'lere dönüştürmek için kullanılan bir araçtır. Yüklemek için klavyenizde Terminali açmak için Ctrl + Alt + T tuşlarına basın. Açıldığında, aşağıdaki komutları çalıştırın:

sudo add-apt-repository ppa:stebbins/handbrake-releases
sudo apt-get update
sudo apt-get install handbrake
    
verilen cevap Mitch 03.10.2013 11:33

Etiketlerdeki diğer soruları oku