Linux 經常使用音視頻命令

1、音頻錄製

1. arecord 錄製音頻

# 錄製一個雙聲道的16位16KHz持續5秒鐘的wav格式音頻文件
arecord --file-type=wav --channel=2 --format=S16_LE --rate=16000 --duration=5 /tmp/record.wav

# 精簡用法
arecord --file-type=raw --channel=2 -f cd --duration=5 ~/record.wav
  • --file-type:文件類型(voc、wav、raw、au)
  • --channel:聲道數(一、2 ...)
  • --format:位深度(S8 U8 S16_LE S16_BE ...)
  • --rate:採樣率(8000、16000 ...)
  • --duration:錄製時間(單位秒)
  • -f:快捷格式html

    • -f cd(16位小endian, 44100,立體聲)
    • -f cdr(16位大endian, 44100,立體聲)
    • -f dat(16位小endian, 48000,立體聲)

--format完整取值:S8 U8 S16_LE S16_BE U16_LE U16_BE S24_LE S24_BE U24_LE U24_BE S32_LE S32_BE U32_LE U32_BE FLOAT_LE FLOAT_BE FLOAT64_LE FLOAT64_BE IEC958_SUBFRAME_LE IEC958_SUBFRAME_BE MU_LAW A_LAW IMA_ADPCM MPEG GSM SPECIAL S24_3LE S24_3BE U24_3LE U24_3BE S20_3LE S20_3BE U20_3LE U20_3BE S18_3LE S18_3BE U18_3LE工具

說明:不知爲何,錄製的聲音特別小。ui

2、音頻播放

1. ffplay 播放音頻

# 播放一個單聲道16位採樣率爲16KHz的pcm音頻文件
ffplay -ar 16000 -channels 1 -f s16le -autoexit -showmode 1 -i xxx.pcm
  • -ar:採樣率
  • -channels:聲道數
  • -f:位深度
  • -autoexit:播放完畢自動退出
  • -showmode:波形圖或頻譜圖顯示模式
  • -i:pcm音頻文件

2. aplay 播放音頻

# 播放 pcm 文件
aplay -t raw -c 2 -f S16_LE -r 8000 test.pcm 

# 播放 wav 文件
aplay test.wav

3、音頻格式轉換

1. pcm 文件轉爲 wav 文件

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

4、參考連接

arecord
音頻採樣率
音視頻開發基礎概述 - PCM、YUV、H26四、經常使用軟件介紹
播放媒體文件的工具ffplay.net

相關文章
相關標籤/搜索