AI办公自动化:多音频轨电影视频抽取出英语音频

很多电影视频是有中、英、粤语等多个音频轨的,如果直接转换成音频,很有可能不是自己想要的那种语音。

可以先查看音频流信息,确定属于哪个音频轨:

Reading video file: E:\1-7\比得兔1.mp4

输出音频流信息

Available audio streams:

Stream 0: und - aac

Stream 1: und - aac

Stream 2: und - aac

Stream 3: und - aac

Stream 0应该是英语;

然后,在Deepseek中输入提示词:

你是一个Python编程专家,写一个Python脚本:

读取视频:"E:\1-7\比得兔1.mp4"

这个Mp4视频有多个音频轨,选择其中的Stream 0音频轨,提取出来保存为mp3音频文件,保存在和视频同一个文件夹中。

注意:每一步都要输出信息到屏幕上

源代码:

import ffmpeg

import os

def extract_audio_from_video(video_path, stream_index=0):

获取视频文件的目录和文件名

video_dir, video_filename = os.path.split(video_path)

video_name, video_ext = os.path.splitext(video_filename)

输出信息

print(f"Reading video file: {video_path}")

使用 ffmpeg 获取视频的音频流信息

try:

probe = ffmpeg.probe(video_path)

except ffmpeg.Error as e:

print(e.stderr, file=sys.stderr)

sys.exit(1)

audio_streams = [stream for stream in probe['streams'] if stream['codec_type'] == 'audio']

输出音频流信息

print("Available audio streams:")

for i, stream in enumerate(audio_streams):

print(f"Stream {i}: {stream['codec_name']}")

if stream_index >= len(audio_streams):

print(f"Stream index {stream_index} is out of range.")

return

selected_stream = audio_streams[stream_index]

输出选择的音频流信息

print(f"Selected audio stream: Stream {stream_index} - {selected_stream['codec_name']}")

构建输出音频文件路径

output_audio_path = os.path.join(video_dir, f"{video_name}_stream{stream_index}.mp3")

使用 ffmpeg 提取音频并保存为 MP3 文件

try:

(

ffmpeg

.input(video_path)

.output(output_audio_path, map=f"0:a:{stream_index}", acodec='libmp3lame')

.run(capture_stdout=True, capture_stderr=True)

)

except ffmpeg.Error as e:

print(e.stderr.decode(), file=sys.stderr)

sys.exit(1)

输出完成信息

print(f"Audio extracted and saved to: {output_audio_path}")

使用函数

video_path = "E:\\1-7\\比得兔1.mp4"

extract_audio_from_video(video_path)

相关推荐
会飞的老朱1 小时前
医药集团数智化转型,智能综合管理平台激活集团管理新效能
大数据·人工智能·oa协同办公
聆风吟º3 小时前
CANN runtime 实战指南:异构计算场景中运行时组件的部署、调优与扩展技巧
人工智能·神经网络·cann·异构计算
Codebee5 小时前
能力中心 (Agent SkillCenter):开启AI技能管理新时代
人工智能
聆风吟º5 小时前
CANN runtime 全链路拆解:AI 异构计算运行时的任务管理与功能适配技术路径
人工智能·深度学习·神经网络·cann
uesowys6 小时前
Apache Spark算法开发指导-One-vs-Rest classifier
人工智能·算法·spark
AI_56786 小时前
AWS EC2新手入门:6步带你从零启动实例
大数据·数据库·人工智能·机器学习·aws
User_芊芊君子6 小时前
CANN大模型推理加速引擎ascend-transformer-boost深度解析:毫秒级响应的Transformer优化方案
人工智能·深度学习·transformer
智驱力人工智能6 小时前
小区高空抛物AI实时预警方案 筑牢社区头顶安全的实践 高空抛物检测 高空抛物监控安装教程 高空抛物误报率优化方案 高空抛物监控案例分享
人工智能·深度学习·opencv·算法·安全·yolo·边缘计算
qq_160144876 小时前
亲测!2026年零基础学AI的入门干货,新手照做就能上手
人工智能
Howie Zphile6 小时前
全面预算管理难以落地的核心真相:“完美模型幻觉”的认知误区
人工智能·全面预算