Soru Ffmpeg işlenmemiş PCM'den WAV'a ses verebilir mi?


Wav dosyasını pcm'ye dönüştürebilirim

ffmpeg -i file.wav -f s16le -acodec pcm_s16le file.pcm

Bu işlemi nasıl geri alabilirim?


25
2017-08-16 11:37


Menşei


-acodec kopyalarını kullanabiliyor olmalısınız? - rogerdpack


Cevaplar:


Wav konteyner sadece ham PCM verisine basit bir başlık ekler. Başlık, biçimi, örnek oranını ve kanal sayısını içerir. Ham PCM verileri bu bilgiyi içermediğinden, komut satırında belirtmeniz gerekecektir. Seçenekler, uygulandıkları dosyadan önce belirtilir, böylece giriş dosyasından önceki seçenekler, girdi dosyasının biçimini belirtmek için kullanılabilir ve giriş dosyasından sonraki seçenekler ve çıktı dosyasının istenen çıktı biçimini belirtmek için kullanılabilir. dosya. Aynı bit / numune, örnek oranı ve çıktı dosyasındaki kanal sayısını istiyorsanız, bu durumda herhangi bir çıkış seçeneğine ihtiyacınız yoktur; wav konteyner formatı dosya uzantısı tarafından zaten belirtilmiştir.

Ham PCM'yi WAV'a dönüştürmek için örnek:

ffmpeg -f s16le -ar 44.1k -ac 2 -i file.pcm file.wav
  • -f s16le … 16 bit küçük endian örnekleri imzaladı
  • -ar 44.1k … Örnekleme hızı 44,1kHz
  • -ac 2 … 2 kanal (stereo)
  • -i file.pcm … giriş dosyası
  • file.wav … çıktı dosyası

45
2017-08-16 15:38



Tersine (PCM'den WAV'a) işlem nedir? - mustafa.yavuz
@ mustafa.yavuz: Bu olduğu PCM'den WAV'a işlem. - bos
@bos, sanırım @ mustafa.yavuz tersini soruyordu (WAV'dan PCM'ye). Öyleyse özel bir şey yok, sadece ffmpeg -i file.wav file.pcm dönüştürme yapmak için gereken tüm bilgiler, wav dosyasının başlığında olduğu için yapacaktır. - neevek


ffmpeg -f s16le -ar 8000 -ac 2 -i out.pcm -ar 44100 -ac 2 out.wav

4
2018-04-14 12:00





RAW veri formatına dikkat edin

-f u8 işaretsiz 8 bit, Diğerleri varsa s16 imzalanır.

 $ ffmpeg -formats | grep PCM
 DE alaw            PCM A-law
 DE f32be           PCM 32-bit floating-point big-endian
 DE f32le           PCM 32-bit floating-point little-endian
 DE f64be           PCM 64-bit floating-point big-endian
 DE f64le           PCM 64-bit floating-point little-endian
 DE mulaw           PCM mu-law
 DE s16be           PCM signed 16-bit big-endian
 DE s16le           PCM signed 16-bit little-endian
 DE s24be           PCM signed 24-bit big-endian
 DE s24le           PCM signed 24-bit little-endian
 DE s32be           PCM signed 32-bit big-endian
 DE s32le           PCM signed 32-bit little-endian
 DE s8              PCM signed 8-bit
 DE u16be           PCM unsigned 16-bit big-endian
 DE u16le           PCM unsigned 16-bit little-endian
 DE u24be           PCM unsigned 24-bit big-endian
 DE u24le           PCM unsigned 24-bit little-endian
 DE u32be           PCM unsigned 32-bit big-endian
 DE u32le           PCM unsigned 32-bit little-endian
 DE u8              PCM unsigned 8-bit

3
2017-09-12 11:42





Aşağıdaki kod çalışması yapılmalıdır:

ffmpeg -f s16le -ar 8000 -ac 2 -i out.pcm -ar 44100 -ac 2 out.wav

0
2018-06-23 16:36