记录FFMPEG指令将大小转成640*360、转MP4为avi

一、ffmpeg将视频转为640*360

思路:编程将视频名称变成只有英文和集数,在编程写入转换的指令到文本文件,接着写一个bat脚本,使得可以在cmd命令行批量执行ffmpeg指令。

1、视频名称预处理(必须无空格,可以有中文)

不能有空格的原因:ffmpeg命令是以空格来划分参数的,如果文件名称有空格就会把文件名称给分开,会读取错误的参数,导致无法执行

ffmpeg转换的指令:

ffmpeg -i name.mp4 -vf "scale=640:360" -c:v libx264 -preset medium -crf 23 -c:a aac -b:a 128k name1.mp4

需要把name.mp4换成待转换的文件,name1.mp4换成转换后的名称

python正则表达式改名、和把所有的指令输入到文本(省人力)

import os
import re

path = 'D:\BaiduNetdiskDownload\中英双字幕版第1季52集'
for i in os.listdir(path):
    if '.mp4' not in i:
        continue
    data = re.findall('CE0(\d+).*?', i)  # 这里要看原文件的名称特点,提取出集数
    new_name = 'peiqi' + data[0] + '.mp4'
    with open('order.txt', 'a', encoding='utf-8') as f:
        order = 'ffmpeg -i {} -vf "scale=640:360" -c:v libx264 -preset medium -crf 23 -c:a aac -b:a 128k output\\{}'.format(i, new_name)
        f.write(order)
        f.close()
    print(order)

效果图预览:

2、编写bat脚本,并命名为test.bat

第一行的chcp 65001

使得可以在命令行中输入含有中文的指令

chcp 65001

@echo off
setlocal enabledelayedexpansion

REM 检查参数是否提供
if "%~1" == "" (
    echo 请提供要执行的文本文件名。
    pause
    exit /b
)

REM 逐行读取文本文件并执行每行内容
for /f "tokens=*" %%A in (%1) do (
    echo 执行命令: %%A
    %%A
)

pause

3、输入cmd打开命令行

输入以下命令,即可批量运行ffmpeg指令。

test.bat order.txt

结语:主要是11年前的学习机只支持该格式的视频规格,且好似部分网页视频只支持avi格式,但是这次的却又不用转avi,到时再摸索下。

二、ffmpeg指令将视频转为avi格式

以下是bat脚本,将其放在带转换的视频文件夹下,双击即可完成转换

chcp 65001

@echo off
setlocal enabledelayedexpansion

rem 创建一个新的文件夹用于存放转换后的AVI文件
set "output_folder=output_avi"
if not exist "!output_folder!" mkdir "!output_folder!"

rem 循环处理当前目录下的所有MP4文件
for %%I in (*.mp4) do (
    rem 构造输出文件的路径和名称,将扩展名改为avi
    set "output_file=!output_folder!\%%~nI.avi"

    rem 使用FFmpeg进行无损转换
    ffmpeg -i "%%I" -c:v copy -c:a pcm_s16le "!output_file!"
)

endlocal

  • 5
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值