千家信息网

Python怎么实现批量转换视频音频的采样率

发表于:2026-11-03 作者:千家信息网编辑
千家信息网最后更新 2026年11月03日,这篇文章主要讲解了"Python怎么实现批量转换视频音频的采样率",文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习"Python怎么实现批量转换视频音频的采
千家信息网最后更新 2026年11月03日Python怎么实现批量转换视频音频的采样率

这篇文章主要讲解了"Python怎么实现批量转换视频音频的采样率",文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习"Python怎么实现批量转换视频音频的采样率"吧!

环境依赖

ffmpeg环境安装

ffmpy安装:

pip install ffmpy -i https://pypi.douban.com/simple

代码

不废话,上代码。

#!/user/bin/env python# coding=utf-8"""@project : csdn@author  : 剑客阿良_ALiang@file   : transfor_mp4_audio_sampling_rate.py@ide    : PyCharm@time   : 2021-11-24 13:48:08"""from ffmpy import FFmpegimport os  def transfor(video_path: str, tmp_dir: str, result_dir: str):    file_name = os.path.basename(video_path)    base_name = file_name.split('.')[0]    file_ext = file_name.split('.')[-1]    ext = 'wav'     audio_path = os.path.join(tmp_dir, '{}.{}'.format(base_name, ext))    print('文件名:{},提取音频'.format(audio_path))    ff = FFmpeg(        inputs={            video_path: None}, outputs={            audio_path: '-f {} -vn -ac 1 -ar 16000 -y'.format('wav')})    print(ff.cmd)    ff.run()     if os.path.exists(audio_path) is False:        return None     video_tmp_path = os.path.join(        tmp_dir, '{}_1.{}'.format(            base_name, file_ext))    ff_video = FFmpeg(inputs={video_path: None},                      outputs={video_tmp_path: '-an'})    print(ff_video.cmd)    ff_video.run()     result_video_path = os.path.join(result_dir, file_name)    ff_fuse = FFmpeg(inputs={video_tmp_path: None, audio_path: None}, outputs={        result_video_path: '-map 0:v -map 1:a -c:v copy -c:a aac -shortest'})    print(ff_fuse.cmd)    ff_fuse.run()    return result_video_path  def handle(video_dir: str, tmp_dir: str, result_dir: str):    if os.path.isdir(video_dir):        for file in os.listdir(video_dir):            try:                result = transfor(                    os.path.join(                        video_dir,                        file),                    tmp_dir,                    result_dir)            except Exception as e:                print(e)                continue            if result:                print(result)  if __name__ == '__main__':    handle(        'C:/Users/huyi/Desktop/shipin',        'C:/Users/huyi/Desktop/tmp',        'C:/Users/huyi/Desktop/result')

代码说明

1、handle方法入参分别为:视频目录、临时目录、最终结果视频目录。

2、handle方法会遍历视频目录,一次对视频做transfor方法处理,步骤为:(1)提取视频音频并转化为定义的采样率音频;(2)提取视频中不带音频的视频;(3)融合新视频与新音频合成最终视频到指定的结果目录。

3、没有音频的异常直接丢弃,无需进行转换。

4、最终结果目录的文件名与原视频目录的文件名一致。

5、该代码主要转化为16k采样率,可以按照需求调整。

验证一下

原始视频采样率

结果视频采样率

感谢各位的阅读,以上就是"Python怎么实现批量转换视频音频的采样率"的内容了,经过本文的学习后,相信大家对Python怎么实现批量转换视频音频的采样率这一问题有了更深刻的体会,具体使用情况还需要大家实践验证。这里是,小编将为大家推送更多相关知识点的文章,欢迎关注!

视频 音频 目录 视频音频 结果 代码 文件 文件名 方法 学习 内容 环境 验证 原始 一致 上代 剑客 就是 废话 思路 数据库的安全要保护哪些东西 数据库安全各自的含义是什么 生产安全数据库录入 数据库的安全性及管理 数据库安全策略包含哪些 海淀数据库安全审计系统 建立农村房屋安全信息数据库 易用的数据库客户端支持安全管理 连接数据库失败ssl安全错误 数据库的锁怎样保障安全 互联网佳科技有限公司 深圳互联网科技公司 兼蜜互联网科技 互联网科技视频素材 中国最先进互联网科技公司 宁波青枫互联网科技有限公司 互联网科技热点资讯 银川新华互联网科技职业技术培训学校图片 佳云科技和互联网广告 彤创互联网科技有限公司 杭州壁岐互联网科技有限公司 中国科技创新与世界互联网大会 从那以后互联网科技有限公司 广东鹅鹅鹅互联网科技有限公司 昆明中奇联合互联网科技 互联网科技接地气 互联网领先科技活动 保山互联网科技靠谱吗 互联网科技博主张洲 小牛互联网科技有限公司地址 关于新基建和互联网科技 卓越科技(互联网 ) 成都狮子座互联网科技 滨湖区互联网智能科技产品供应 湖南洣水互联网科技有限公司扣款 速维有品互联网信息科技(苏州)有限公司 互联网保险科技创业 黑科技 体验场景 互联网大会 互联网科技年终奖 福建互联网展示科技馆设计
0