首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >将YUV420帧编码为VP9

将YUV420帧编码为VP9
EN

Stack Overflow用户
提问于 2018-11-19 20:07:00
回答 1查看 841关注 0票数 2

作为头衔,

我在从IP摄像头上拉相框。我将输入的原始数据转换为YUV420格式,并希望将YUV420编码为VP9,并将帧保存为.webm格式。我能做到吗?还是应该输入BGR444格式进行编码?

顺便说一下,设置编码vp9的参数。av_dict_set()是设置参数的正确函数吗?

例:(http://wiki.webmproject.org/ffmpeg/vp9-encoding-guide)

代码语言:javascript
复制
av_dict_set(&opt, "crf"    , "23", 0);
av_dict_set(&opt, "speed"  , "4" , 0);
av_dict_set(&opt, "threads", "8" , 0);
av_dict_set(&opt, "pass"   , "1" , 0);
av_dict_set(&opt, "b:v", "1400k", 0);

编辑: wiki使用2 pass来设置参数,我能用1 pass来完成吗?

Edit2: be代码似乎很有效,我想知道如何才能降低视频(vp9)的大小?目前,我有类似的大小使用h264编码器。

代码语言:javascript
复制
    av_dict_set(&opt, "crf"    ,        "45", 0);  
    av_dict_set(&opt, "speed"  ,        "8" , 0); 
    av_dict_set(&opt, "quality",        "realtime", 0);
    av_dict_set(&opt, "threads",        "8" , 0);
    av_dict_set(&opt, "tile-columns",   "3", 0);
    av_dict_set(&opt, "frame-parallel", "1", 0);
    av_dict_set(&opt, "row-mt",         "1", 0);

Update1: YUV420P可以被编码为VP9!

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2018-11-21 07:27:29

我在从IP摄像头上拉相框。我将输入的原始数据转换为YUV420格式,并希望将YUV420编码为VP9,并将帧保存为.webm格式。我能做到吗?

是。以下是ffmpeg的官方例子:https://github.com/FFmpeg/FFmpeg/tree/master/doc/examples

还是应该输入BGR444格式进行编码?

始终使用象yuv420p这样的yuv格式。不要使用RGB,即使支持RGB也是低效的。

wiki使用2 pass来设置参数,我能用1 pass来完成吗?

是的,2次传球有优势,但没有必要。

be代码似乎在工作,不知道我如何降低视频(vp9)的大小?目前,我有类似的大小使用h264编码器。

您需要的是ffmpeg的sws_scale功能。这做了两件事,缩放和格式转换,两者可以同时执行。检查scaling_video.c示例。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/53381888

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档