
3 步完成 you-get 竖屏视频旋转修复【免费下载链接】you-get:arrow_double_down: Dumb downloader that scrapes the web项目地址: https://gitcode.com/GitHub_Trending/yo/you-get用 you-get 下载的竖屏视频在播放器里横躺多半是方向元数据丢了。you-get 负责把视频拿下来FFmpeg 的 transpose画布旋转滤镜负责把方向掰正这套 you-get 竖屏视频旋转修复 组合三步就能跑通。先搞懂原因方向写在元数据里不在画面里竖屏视频的像素存储往往仍是横屏的元数据里记录了一个旋转参数90 或 270播放器靠它来转正显示。网站转码时这条方向信息容易丢失或个别播放器干脆忽略于是画面横躺。对策是把旋转直接烧进像素用 transpose 滤镜重新编码一次方向从此固定。三步跑通旋转修正下载、查角度、转回来确认 FFmpeg 已安装且在 PATH 里用 you-get 把视频下载到本地用 ffprobe 查角度再用 ffmpeg transpose 转回来第 1 步确认 FFmpeg 在场且被识别先跑这条命令看下输出# 能输出版本号即正常 ffmpeg -version未安装的话按平台处理平台安装方式Ubuntu/Debiansudo apt install ffmpegmacOSbrew install ffmpegWindows从 FFmpeg 官网下载并加入 PATH⚠️ 如果报 FFmpeg not installed多半是路径没进 PATH启动时 you-get 会依次尝试 ffmpeg 与 avconv 并校验版本号两个都失败就判定不可用。这段检测与流处理逻辑集中在 src/you_get/processor/ffmpeg.pyFFmpeg 调用与检测检查环境变量即可。第 2 步用 you-get 把视频拿下来# -o 指定保存目录URL 换成你要下载的视频页面 you-get -o ./downloads https://example.com/video-pageyou-get 先从页面解析出真实地址流媒体站点则直接交给 FFmpeg 落盘入口在 src/you_get/common.py下载入口随后调用ffmpeg_download_stream拼装命令默认带-c copy不重编码。所以下来的文件是干净的不影响下一步修方向。⚠️-p可以把流直接喂给播放器在线看但那条路不落文件后面的旋转修复没有操作对象要修方向先落盘是前提。第 3 步查角度再用一条 ffmpeg 命令转回来先读文件里写的旋转标签# 输出 90 或 270 说明方向被元数据记录 ffprobe -v error -show_entries stream_tagsrotate -of defaultnoprint_wrappers1:nokey1 input.mp4输出 90 就配 transpose1输出 270 就配 transpose2。以顺时针 90° 为例# 顺时针转 90°-c:a copy 音频直接复制避免无声音 ffmpeg -i input.mp4 -vf transpose1 -c:a copy -y output.mp4执行完output.mp4 的像素本身就是正的了任何播放器播放都不再依赖元数据。⚠️ transpose 属于视频滤镜必须重编码视频流担心画质可在输出文件名前加-crf 23控制损耗。-c:a copy务必保留漏掉会让音频跟着重编码部分格式直接没声音或报错。FFmpeg transpose 参数四个取值速查取值效果什么时候用0顺时针 90° 垂直翻转转完 90° 后发现上下颠倒1顺时针 90°rotate 标签为 90最常见2逆时针 90°rotate 标签为 2703逆时针 90° 垂直翻转转完 270° 后发现上下颠倒 不用背先跑一遍打开看看方向不对就换相邻取值重跑输出是另一个文件名原文件不受影响。用 ffprobe 查看旋转角度并批量修正多个文件方向不对时按同一套循环处理先对每个文件跑第 3 步的 ffprobe 命令读 rotate 值90 配 transpose1、270 配 transpose2再逐个执行旋转命令。you-get 内置的 ffprobe 调用只用来读取播放时长之类的信息不会改写旋转元数据所以查角度—转回来这段交给 ffmpeg 侧完成you-get 只负责把下载这一环扛下来。一条 ffprobe 读角度一条 ffmpeg 转回来这条 you-get 竖屏视频旋转修复 的主线到此跑完方向从此归位无需再手动调播放器。【免费下载链接】you-get:arrow_double_down: Dumb downloader that scrapes the web项目地址: https://gitcode.com/GitHub_Trending/yo/you-get创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考