上海发布
视频重新编码后,音频应从开头、中段和结尾抽查同步情况。源视频是可变帧率时,直接改变帧率可能导致口型或字幕时间点偏移;烧录字幕无法在转码后单独恢复,裁剪前应确认字幕没有贴近边缘。
无框视频处理首先要比较源画面比例和目标画😎面比例。常见目标包括横屏 16:9、竖屏 9:16 和方形 1:1,源文件比例不同就会产生不同的取舍。
ffmpeg -i input.mp4 -vf "scale=1280:720:force_original_aspect_ratio=increase,crop=1280:720,setsar=1" -c:v libx264 -crf 20 -preset medium -c:a aac -b:a 128k output.mp4
直播或批量转码的无框输出需要所有清晰度档位保持相同裁剪规则。若 1080p、720p 和 480p 使🎆用不同的裁剪中心,观众切换清晰度时主体会跳动;若各档位比例不同,还可能在部分终端重新出现边框。
无框转码的质量不能只看导出文件有没有黑边,还要检查裁🚀剪是否伤害主体✨、比例是否正确以及声音是否同步。
2023无框转码中的“框”通常指视频画面外侧的黑边,但不同场景中的边缘问题来源并不相同。编码文件中已经存在的黑边,需要通过画面裁剪处理;播放器为了适配屏幕增加的留白,属于显示策略;应用界面上的边框、弹窗和装饰线,则不属于视频转码内容。
需要保留完整画面时,可以使用等比缩放加 pad 填充,例如将视频放进 128💫0×720 画布,并让多余区域填充为指定颜色。这个结果属于“无变形完整显示”,不属于严格💫意义上的无框输出。若填充区域使用源画面模糊背景,仍然是画布扩展,不是删除比例差异。
导出文件仍有黑边时,应先确认黑边是文件像素还是播放环境产生,再逐项排查参数,而不是反复提高码率🎯或更换编码格式。
判断边框来源的方法是用媒体信息工具查看源文件尺寸,再截取视频中间画面进行检查。如果源文件分辨率是 1920×1080,但有效画面只占中间区域,黑😎边已经被编码;如果换播放器后🔮黑边位置和颜色发生变化,问题更可能来自显示容器。
源文件带边时,直接缩放只会把黑边一起放大。应先确定有效画面的上下左右边☀️界,再计算裁剪尺寸;如果黑边厚度在不同镜头中不一致,固定🔮裁剪值可能误伤正常内容,需要分段处理或重新调整剪辑源文件。
判断一份无框视频是否合格,最终应同时满足三个条件:目标终端没有不需要的边框,画面比例没有明显变形,关键主体和字幕没有被错误裁剪。满足这三个条件后,再根据文件体积、清晰度、播放兼容性和批🍀处理速度调整编码器与码率,才是更可靠的 2023无框转码实践。
FFmpeg 无框转码的核心是🌈先按比例放大,再使用 crop 滤镜截取目标尺寸,最后校正像素宽高比。下面的示例适用于把普通视频输出为 1280×720,并让画面覆盖整个目标画布:
输出 1080×1920 的竖屏视频时,应把目标宽高同时改为 1080:1920。输出 1080×1080 的方形视频时,应改为 1080:1080,并重点检查人物脸部、字幕和商品边缘是否被裁掉。裁剪位置默认居中,主体不在画面中央时,还需要调整 crop 的横向或纵向偏移。
2023无框转码通常不是某一种独立编码格式,而是把视频转换到指定分辨率后,画面边缘不出现黑边、白边或额外装饰框。实际处理时,先确认黑边是否已经写入源视频,再根据源画面和目标画面的比例选择裁剪、缩放或拉伸;如果要求保留完整画面,就无法同时保证完全无边框,除非接受画🤔面变形或改变输出比例。
手机视频可能使用旋转元数据记录拍摄方向,部分转码流程如果没🎆有正确处理旋转信息,会出现横竖方向错误。SAR 设置异常也会让画面变形,输出前后应确认显示比例正常,并尽量使用偶数宽高以兼容常见的 YUV 4:2:0 编码。