首页 > 技术文章 > ffmpeg 转为16K PCM格式,python生成批量转码脚本

jifeng 2020-01-21 17:13 原文

wav转wav 修改采样率:
ffmpeg -i C:\Users\admin\Desktop\guidang\1704392.V3.wav -acodec pcm_s16le -ar 16000 C:\Users\admin\Desktop\2.wav
 
pcm转wav 修改采样率:

./ffmpeg -f s16le -ac 1 -ar 8000 -i  turing-yonghu.pcm -acodec pcm_s16le -f s16le -ac 1 -ar 16000  turing-yonghu-16k.pcm

转为mp3格式

./ffmpeg -i 3.m4a  3.mp3

mp3截取:

ffmpeg -y -i inout.mp3 -ss 00:00:00 -t 00:00:03 -acodec copy output.mp3

 

 
-acodec pcm_s16le这个是改变位深为16的标准pcm音频
-ar 16000这个是改变采样率
 
 
mp4格式转换:

/Volumes/macos_d/soft/ffmpeg/ffmpeg -i zwAPP.mp4  -vf scale=1280:960 video_1280_960.mp4 -hide_banner

 
python实现对目录生成转码命令行
# coding=UTF-8
import os
import codecs
import os.path
path = '/Users/jifeng/Downloads/0423'
#把e:\get_key\目录下的文件名全部获取保存在files中
files = os.listdir(path.decode('utf-8'))

#用set可以很好的去重,在数据处理的时候经常会被使用到。这里做初始化
datas = set()
fw = codecs.open(path+'/list.txt','a','utf-8')

for file in files :
    if str(file.decode('utf-8')).endswith("mp3") or  str(file.decode('utf-8')).endswith("wav"):
        # 准确获取一个txt的位置,利用字符串的拼接
        txt_path = 'D:\\ffmpeg-20190507-e25bddf-win64-static\\bin\\ffmpeg.exe -i ' + file.decode('utf-8')+' -acodec pcm_s16le -ar 16000 pcm\\'+file.decode('utf-8')+'.wav\n'
        fw.write(txt_path)

  

 参考链接:https://blog.csdn.net/weixin_38989668/article/details/102661384

 

推荐阅读