一、cmd 大法

针对这种格式转换,小丸工具箱貌似不管用了,当然如果是其他格式转换还是可以试下,方法讲解在这里:小丸工具箱-将视频格式转化为mp4或其他格式的简单方法_小丸工具箱是一个mp4box不支持的视频文件

下完工具箱下载地址在这里:

于是我就用了最原始的 cmd 大法。

在需要转换的视频所在文件目录上输入cmd,按回车键:

教你如何将 .rmvb 转换为 .mp4 格式_视频格式转换

出来的 cmd 窗口,所在文件夹位置就是当前位置,直接输入命令:

ffmpeg -i 你的原视频名称.rmvb 你要输出的视频名称.mp4
  • 1.

这条命令执行时间较久,一部电影的话需要好几分钟转换时间。

PS:没有 ffmpeg 安装包的可以在这里下载:

下载后解压到任意文件夹,把文件夹路径添加到环境变量 Path 中即可。 

二、Python 多线程转换

当然,俺们程序员需要大批量转换的话,自然不能一个一个去执行命令,一个一个去等待命令执行完,这里直接提供一个现成代码,复制粘贴就能跑。

import os
import threading
import subprocess


# rmvb -> mp4 视频转换方法
def convert_rmvb_to_mp4(input_file, output_file):
    command = f'ffmpeg -i {input_file} {output_file}'
    subprocess.run(command, shell=True)


if __name__ == '__main__':
    # 以下代码实现多线程批量化视频转换
    input_path = 'D:/临时工作间/'  # 输入你的原始视频所在目录
    output_path = 'D:/临时工作间2/'  # 输入你的新视频目录,没有该目录也没关系,程序会自动创建
    os.makedirs(output_path, exist_ok=True)

    list_video = os.listdir(input_path)
    list_rmvb_files = [file for file in list_video if file.endswith('.rmvb')]

    threads = []

    for rmvb_file in list_rmvb_files:
        input_file = input_path + rmvb_file
        output_file = output_path + rmvb_file.replace('.rmvb', '.mp4')
        # 将转换视频格式加入子线程
        thread = threading.Thread(target=convert_rmvb_to_mp4, args=(input_file, output_file))
        thread.start()
        threads.append(thread)

    # 等待所有线程执行完毕
    for thread in threads:
        thread.join()

    print(f'{input_path} 目录下的所有 .rmvb 格式视频转换完成。')
    print(f'所生成的所有 .mp4 格式视频在目录 {output_path} 中。')
  • 1.
  • 2.
  • 3.
  • 4.
  • 5.
  • 6.
  • 7.
  • 8.
  • 9.
  • 10.
  • 11.
  • 12.
  • 13.
  • 14.
  • 15.
  • 16.
  • 17.
  • 18.
  • 19.
  • 20.
  • 21.
  • 22.
  • 23.
  • 24.
  • 25.
  • 26.
  • 27.
  • 28.
  • 29.
  • 30.
  • 31.
  • 32.
  • 33.
  • 34.
  • 35.
  • 36.

最后的执行结果:

教你如何将 .rmvb 转换为 .mp4 格式_.rmvb_02