使用FFmpeg将 MP4 或 MKV 视频文件转换为 MP3 音频文件

MP4 转 MP3

ffmpeg -i input.mp4 -q:a 0 -map a output.mp3

MKV 转 MP3

ffmpeg -i input.mkv -q:a 0 -map a output.mp3

参数说明

  • -i input.mp4-i input.mkv:指定输入文件。
  • -q:a 0:设置音频质量,0 为最高质量(最低压缩)。
  • -map a:只提取音频流。
  • output.mp3:指定输出文件名和格式。

Python 脚本实现

如果你有多个文件要处理,可以编写一个 Python 脚本来批量转换:

import os
import subprocess

def convert_to_mp3(input_file, output_file):
    ffmpeg_command = [
        'ffmpeg',
        '-i', input_file,
        '-q:a', '0',
        '-map', 'a',
        output_file
    ]
    subprocess.run(ffmpeg_command, check=True)

def process_directory(directory):
    for filename in os.listdir(directory):
        file_path = os.path.join(directory, filename)
        if os.path.isfile(file_path):
            file_base, file_ext = os.path.splitext(filename)
            if file_ext.lower() in ['.mp4', '.mkv']:
                output_file = os.path.join(directory, file_base + '.mp3')
                if os.path.exists(output_file):
                    print(f"Output file '{output_file}' already exists, skipping.")
                else:
                    print(f"Converting '{file_path}' to '{output_file}'")
                    convert_to_mp3(file_path, output_file)

if __name__ == '__main__':
    # 替换为你的目标目录路径
    target_directory = '/path/to/your/target_directory'
    process_directory(target_directory)

说明

  • convert_to_mp3:函数用来调用 FFmpeg 将视频文件转换为 MP3 文件。

  • process_directory:函数扫描指定目录中的所有文件,并对扩展名为 .mp4.mkv的文件进行处理。

    • 如果 MP3 文件已存在,则跳过处理并打印提示信息。
    • 如果 MP3 文件不存在,则调用 convert_to_mp3 函数进行转换。

使用方法

  1. target_directory 替换为你实际的目标目录路径。
  2. 将脚本保存为 convert_videos_to_mp3.py
  3. 运行脚本:
python convert_videos_to_mp3.py

该脚本会扫描指定目录中的所有 MP4 和 MKV 文件,并将其转换为 MP3 文件(如果输出文件不存在)。已存在的 MP3 文件将被跳过,避免重复处理。

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容