吾爱破解 - 52pojie.cn

 找回密码
 注册[Register]

QQ登录

只需一步,快速开始

查看: 2997|回复: 23
收起左侧

[其他原创] BAT+ffmpeg实现视频横屏和竖屏互相转换

[复制链接]
Batcher 发表于 2023-11-20 22:53
【功能描述】

批量把横屏视频文件转换为竖屏。
批量把竖屏视频文件转换为横屏。
支持子文件夹下也有视频文件需要处理的情况。

【下载地址】

百度网盘: https://pan.baidu.com/s/1OsjCtKmvtIcfem5Kxda9VA 密码:52PJ
蓝奏网盘: https://batcher.lanzouj.com/iwXCr1fgdedi 密码:52PJ

【使用方法】

下载,解压缩,把这三个文件:
  • ffmpeg.exe
  • VideoRotateH2V.bat
  • VideoRotateV2H.bat

放在 C:\Test 文件夹下。

原始竖屏视频文件放在 C:\Test\竖屏 文件夹下。
双击执行脚本 VideoRotateH2V.bat 可以把竖屏视频批量转换为横屏视频。

原始横屏视频文件放在 C:\Test\横屏 文件夹下。
双击执行脚本 VideoRotateV2H.bat 可以把横屏视频批量转换为竖屏视频。

【效果截图】

执行之前:
20231120-1.png

执行过程:
20231120-2.png
20231120-3.png

执行之后:
20231120-4.png

【完整代码】

VideoRotateH2V.bat
[Asm] 纯文本查看 复制代码
@echo off
REM 设置原始竖屏视频所在的文件夹路径
set "OldH=C:\Test\竖屏"
REM 根据实际需要修改待处理的视频扩展名列表
set ExtList=*.mp4 *.wav

cd /d "%~dp0"
set "NewH2V=竖转横"
md "%NewH2V%" 2>nul

pushd "%OldH%"
for /f "delims=" %%i in ('dir /b /s /a-d %ExtList%') do (
    set "OldFile=%%i"
    set "NewFile=%%~nxi"
    set "OldFolder=%%~dpi"
    setlocal enabledelayedexpansion
    set "NewFolder=%~dp0%NewH2V%!OldFolder:%OldH%=!"
    md "!NewFolder!" 2>nul
    "%~dp0ffmpeg.exe" -i "!OldFile!" -vf "transpose=1" -c:a copy "!NewFolder!!NewFile!"
    endlocal
)
popd
pause


VideoRotateV2H.bat
[Asm] 纯文本查看 复制代码
@echo off
REM 设置原始横屏视频所在的文件夹路径
set "OldV=C:\Test\横屏"
REM 根据实际需要修改待处理的视频扩展名列表
set ExtList=*.mp4 *.wav *.avi

cd /d "%~dp0"
set "NewV2H=横转竖"
md "%NewV2H%" 2>nul

pushd "%OldV%"
for /f "delims=" %%i in ('dir /b /s /a-d %ExtList%') do (
    set "OldFile=%%i"
    set "NewFile=%%~nxi"
    set "OldFolder=%%~dpi"
    setlocal enabledelayedexpansion
    set "NewFolder=%~dp0%NewV2H%!OldFolder:%OldV%=!"
    md "!NewFolder!" 2>nul
    "%~dp0ffmpeg.exe" -i "!OldFile!" -vf "transpose=1" -c:a copy "!NewFolder!!NewFile!"
    endlocal
)
popd
pause

免费评分

参与人数 9吾爱币 +14 热心值 +7 收起 理由
www52pjzk + 1 + 1 谢谢@Thanks!
yasa98 + 1 谢谢@Thanks!
丛林老斑鸠 + 2 + 1 热心回复!
苏紫方璇 + 5 + 1 欢迎分析讨论交流,吾爱破解论坛有你更精彩!
ZerotuOne + 1 + 1 我很赞同!
MakiseSatsuki + 1 我很赞同!
a3859495 + 1 + 1 谢谢@Thanks!
5151diy + 1 + 1 我很赞同!
blindcat + 1 + 1 谢谢@Thanks!

查看全部评分

发帖前要善用论坛搜索功能,那里可能会有你要找的答案或者已经有人发布过相同内容了,请勿重复发帖。

goblack 发表于 2023-11-21 00:24
用-c:a copy参数,意味着没有重编码,就是简单的直接旋转,速度基本上就取决于硬盘读取速度。
类似照片图片旋转保存,记录照片方向信息。

但是,这种操作方式出来的视频,部分软件有兼容性问题的。虽然很罕见,所以可以认为是软件本身问题不支持。
HuaGdao1 发表于 2023-11-26 09:03
本帖最后由 HuaGdao1 于 2023-11-26 09:06 编辑
goblack 发表于 2023-11-21 00:24
用-c:a copy参数,意味着没有重编码,就是简单的直接旋转,速度基本上就取决于硬盘读取速度。
类似照片图 ...

-c:a copy 是指音频流进行了复制。
但是视频流会重新编码的,并且如果没有添加其他参数对视频流编码加以限制的话,会采用ffmpeg默认的参数。
所以我一般会加上对视频流的限制参数:
2023-11-26_090504.png

免费评分

参与人数 1吾爱币 +1 热心值 +1 收起 理由
goblack + 1 + 1 没仔细看。。。。其实视频确实可以直接指定方向的。重编码的话没有低级客户.

查看全部评分

ddzyhhh 发表于 2023-11-20 23:31
xiangzz 发表于 2023-11-20 23:46
ffmpeg可以设置 中英双语  中中文为默认语言吗
yj89660054 发表于 2023-11-21 00:15
支持。。。
goblack 发表于 2023-11-21 00:22
xiangzz 发表于 2023-11-20 23:46
ffmpeg可以设置 中英双语  中中文为默认语言吗

内嵌的字幕、音频轨道切换排序?
亲亲宝贝A静 发表于 2023-11-21 00:31
感谢分享,不懂就问:为什么非要放在C盘呀?
tek2y 发表于 2023-11-21 01:13
思路不错
rufan321 发表于 2023-11-21 05:38
这个好,先前就遇到这个问题,视频转变了,但是封面小图没有跟着一起转变
FruitBaby 发表于 2023-11-21 07:44
ffmpeg功能强大
您需要登录后才可以回帖 登录 | 注册[Register]

本版积分规则

返回列表

RSS订阅|小黑屋|处罚记录|联系我们|吾爱破解 - LCG - LSG ( 京ICP备16042023号 | 京公网安备 11010502030087号 )

GMT+8, 2024-11-24 14:57

Powered by Discuz!

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表