Mümkün olan en yüksek kaliteyi koruyarak mp4'ten dalga çıkarımı


39

Ben geçti belgelere ve ben bir ayıklayabilirsiniz wavbir dosyayı mp4komutuyla dosyaya:

ffmpeg -i my_video.mp4 output_audio.wav

Ancak, wavdosyanın kalitesini nasıl kontrol edebilirim ? (örneğin, orijinal sesin kalitesini olabildiğince korumak istediğimi söyleyin)

Yanıtlar:


20

wavdosyalar genellikle sıkıştırılmamış sesler içerir ve bu, bir wavdosya kullanırken varsayılan değerdir ffmpeg. Böylece komutunuz zaten maksimum kaliteyi koruyacaktır, çünkü kaliteyi düşürecek kayıplı bir sıkıştırma (veya herhangi bir şekilde sıkıştırma) yoktur.

Orijinal sesin sıkıştırıldığını varsayarak, yalnızca orijinal sesi (video olmadan) yeni bir mp4dosyaya kopyalayarak sıkıştırılmamış ses için gereken büyük dosya boyutu olmadan aynı kaliteyi koruyabilirsiniz :

ffmpeg -i my_video.mp4 -c copy -map 0:a output_audio.mp4

Ayrıca, onu yeniden kodlayabilir veya farklı bir ses kodeğine dönüştürebilirsiniz, ancak eğer o kodek kayıplı sıkıştırma kullanıyorsa kalite kaybedilir.


Teşekkürler. Peki ya örnekleme hızı ve saniyedeki bayt sayısı Ffmpeg bunları otomatik olarak nasıl seçer?
Amelio Vazquez-Reina,

Örnekleme oranı, girilen değerle aynı olacaktır. Sıkıştırılmamış olduğundan, wavdosyanın bit hızı yalnızca örnekleme hızı × örnekleme büyüklüğü × kanal sayısıdır . Kaliteyi düşürmek istiyorsanız, ffmpegdaha düşük bir hıza yeniden örnekleme isteyebilirsiniz , 8 bit PCM'ye veya downmix'i mono'ya değiştirin, ancak bunu varsayılan olarak yapmaz.
mark4o

1
BTW ayrıca daha yüksek bir oranda yeniden örneklemesini isteyebilir, ancak bu sadece dosya boyutunu ve kaliteyi artıracaktır; bu nedenle, belirli bir örnekleme oranına ihtiyacınız olmadıkça bunun anlamı yoktur.
mark4o

1
Ubuntu 14.04 ile sistemimde -acodec copyyerine kullanmak zorunda kaldım-c copy -map 0:a
Daniel Alder

Bu bir dalga dosyası olarak dışa aktarılmaz ve soruyu yanıtlamaz.
Andrew

22

Videolardan Kayıpsız / Kayıplı Ses Çıkarma ( flv / mp4 to wav / flac / mp3) ffmpegUbuntu 14.04'te 2.3.1 sürümünü kullanma

Ziyaret: http://howto-pages.org/ffmpeg/

Öncelikle kaynaktan temel verileri bulun. Videoyu VLC Player'da açın. Git

> Tools > Codec Information 
> Stream 0 (Video/ Codec/ Resolution/ Frame rate) 
> Stream 1 (Audio/ Codec/ Channel/ Sample rate)

Bir giriş dosyası ( -i) input.mp4veya başka dosyalar- flv, avi, ...) düşünün . Videoyu ( -vn) çıkarmak ve işaretli, 16 bit, küçük endian ( ) örnekleri ve 2 kanal (stereo) ( ) ile modüle edilmiş darbe kodunda output.wav44100 Hz ( -ar 44100) örnekleme hızında sıkıştırılmamış ( ) sesi çıkarmak için aşağıdaki komutu kullanın.-acodec pcm_s16le-ac 2

ffmpeg -i input.mp4 -vn -acodec pcm_s16le -ar 44100 -ac 2 output.wav

Diğer -acodecseçenekler mp3 flac m4a.

-acode flac24 bit dosyaya dönüştürür. 16 bit örnekleme için olması gerekir

ffmpeg -i input.mp4 -acodec flac -bits_per_raw_sample 16 -ar 44100 output.flac

wav ve flac dosyaları mp4 dosyasından daha büyük

ac3dönüştürme ile çalışır -acodec 3F2R/LFE -ac 6ancak Audacity'de işaretlendiği gibi 4 kukla iz oluşturur.

Mp3 dönüşüm için sadece kullanın

ffmpeg -i input.mp4 -vn -acodec mp3 -ab 320k -ar 44100 -ac 2 output.mp3

Biri, terminaldeki komut satırından elde edilen listeden deneyerek hem girdi hem de çıktı için daha fazla seçenek bulabilir.

$ ffmpeg -help

1
Bu soruya cevap vermiyor. OP, sesi bir WAV dosyası olarak nasıl çıkaracağını zaten biliyor. Kaliteyi nasıl kontrol edeceğimizi soruyorlar - hangisi elbette mümkün değil ve bu nedenle cevap (mark4o's gibi) olmalıydı. MP3 ve FLAC de burada kapsam dışındadır.
slhck

Bu bağlantıya bir çözüm için geldim ve etrafta çalışırken, dediğim gibi biraz daha anladım. Anladığım kadarıyla da üzerinde çalıştığım mesele, "wav dosyasının kalitesini nasıl kontrol edebilirim? (Örneğin, orijinal sesin kalitesini olabildiğince korumak istediğimi söyle"). Ben bir teknisyen değilim, bir hobi ve Ubuntu ve ffmpeg için yeni. $ ffmpeg -i input.mp4 ayrıca tüm başlangıç ​​kalitesini verir ve en iyi sonucu almak için seçenekler buna göre eklenebilir.
dr.murli

Unknown encoder 'pcm_s161e'lütfen bunun nasıl ele alınacağını tavsiye edin.
kRazzy R
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.