ffmpeg 調節視頻聲音大小


1、查看視頻聲音信息

  ffmpeg -nostats -i D:\OTT\test.mp4 -filter_complex ebur128 -f null -

  

def get_video_audio():
    command = 'ffmpeg -nostats -i D:/OTT/test.mp4 -filter_complex ebur128 -f null -'
    result = subprocess.Popen(command, shell=True, stdout=subprocess.PIPE, stderr=subprocess.STDOUT)
    info = result.stdout.read()
    print(info.decode('utf-8'))

 

 

2、調節聲音大小:

  降低音量是輸入音量的一半:

  ffmpeg -i input.wav -filter:a "volume=0.5" output.wav

  當前音量的 150%:

  ffmpeg -i input.wav -filter:a "volume=1.5" output.wav

  降低test.mp4文件聲音10分貝, volume=-10dB   ; volume=10dB:增大10分貝

  ffmpeg -i D:\OTT\test.mp4 -af volume=-10dB -y D:\OTT\out.mp4 

 降低視頻樣本聲音
def down_video_audio(videodir,outdir,downvalue=10):
    file_list = os.listdir(videodir)
    os.makedirs(outdir, exist_ok=True)
    count = len(file_list)
    for line_index, file in enumerate(file_list):
        print('當前進度: {}/{}'.format(line_index + 1, count))
        fileName = os.path.join(videodir, file)
        outfile = os.path.join(outdir, file)
        down_audio(fileName, outfile, downvalue)

    print(file_list)


# 調節視頻聲音大小
def down_audio(sourcfile, outfile,downvalue):
    '''
    使用ffmpeg進行視頻的聲音大小調節
    :param sourcfile: 源文件
    :param outfile:輸出文件
    :param downvalue:增加或減少的分貝值,10 增加10分貝,-10:減少10分貝
    :return:
    '''
    # 把視頻的聲音降低10分貝
    # 應用命令: ffmpeg -i D:\OTT\test.mp4 -af volume=-10dB -y D:\OTT\out.mp4
    cmd = 'ffmpeg -i {} -af volume={}dB -y {}'.format(sourcfile, downvalue, outfile)
    flag = os.system(cmd)

    if flag == 0:
        return True
    return False

if __name__ == '__main__':
    # control_process()
    videodir='D:/OTT/5秒鍾樣本/20210301'
    outdir='D:/OTT/5秒鍾樣本修改聲音/20210301'
    down_video_audio(videodir, outdir)

 參考:https://www.jianshu.com/p/f07f0be088d0


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM