在智能媒体服务这边横屏的视频 使用9:16的会被压缩 这个需要怎么处理?
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。
在智能媒体服务中,如果横屏视频被设置为9:16的竖屏分辨率时,系统会根据素材和成片的宽高进行等比缩放,并将素材居中显示。这种情况下,可能会出现上下黑边或模糊区域的现象。以下是具体的处理方法:
当横屏视频被设置为竖屏分辨率(如9:16)时,系统会自动对视频进行等比缩放,并在上下两侧补充黑边以填充空白区域。
无需额外配置,这是默认行为。
如果您希望上下区域不是纯黑边,而是带有模糊效果的背景,可以通过设置Effect Type:Background
来实现。具体操作如下: - 在Timeline
中添加背景效果。 - 设置Radius
(模糊半径)参数,取值范围为[0.01, 1],用于控制模糊程度。
示例代码片段:
{
"VideoTracks": [
{
"VideoTrackClips": [
{
"MediaURL": "http://example.com/test_media/h1.mp4",
"Effects": [
{
"Type": "Background",
"Radius": 0.5
}
]
}
]
}
]
}
如果您希望避免视频被压缩或变形,可以调整输出分辨率以适配横屏视频的比例。例如: - 在调用SubmitMediaProducingJob
接口时,通过OutputMediaConfig
中的Width
和Height
字段设置合适的分辨率。 - 推荐使用按长短边设置的方式,确保视频不会被拉伸变形。
示例代码片段:
String outputMediaUrl = "https://your-bucket.oss-cn-shanghai.aliyuncs.com/target_video.mp4";
String outputMediaConfig = "{\"MediaURL\":\"" + outputMediaUrl + "\",\"Width\":1080,\"Height\":1920}";
SubmitMediaProducingJobRequest request = new SubmitMediaProducingJobRequest();
request.setTimeline("<your-timeline>");
request.setOutputMediaConfig(outputMediaConfig);
SubmitMediaProducingJobResponse response = iceClient.submitMediaProducingJob(request);
如果您正在使用阿里云视频剪辑Web SDK,可以通过设置defaultAspectRatio
参数来调整默认预览画布比例。例如,将画布比例设置为16:9以适配横屏视频。
示例代码片段:
window.AliyunVideoEditor.init({
defaultAspectRatio: '16:9'
});
Timeline
数据后,必须保证其结构和字段的正确性,否则可能导致服务端接口调用失败。Timeline
中包含FECanvas
字段,并设置正确的分辨率(如16:9或9:16)。通过以上方法,您可以有效解决横屏视频在9:16竖屏分辨率下的压缩问题,并根据需求选择适合的处理方式。