首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

张睿:OpenH264拥有产品级的鲁棒性 欢迎contribute

我的团队也是思科OpenH264项目的所有者。在加入思科系统之前,我还曾在索尼SONY研究实验室和一家H.264编解码器芯片设计的初创公司工作过。...LiveVideoStack:你的团队负责OpenH264项目(https://github.com/cisco/openh264),相比于x264,OpenH264的名气要小一些。...能否介绍下OpenH264有哪些特色?未来还有哪些功能改进或新增? 张睿:非常客观的讲,当初这个项目启动的最大原因是推动H.264在WebRTC中的应用。...技术层面上,OpenH264是出于产品代码,而产品是在视频会议应用上面,所以大多数算法和速度的优化都是以此为目标,并不代表更广泛的应用。...同样因为是出于产品应用,OpenH264代码的质量和鲁棒性是很经得起考验的。思科Cisco欢迎其他公司和社区程序员根据他们的应用需求直接贡献代码,共同促进普及应用。

57710

O264RT,实时通信的不二之选

OpenH264开源编码器 尽管x264的实用性众所周知,可由于前文所提及的x264 License协议潜在的法律风险,一个免费无风险的编码器已成为业务的更好选择。...OpenH264是一个适用于实时场景的编码器,对一些实时通信场景中的工具集支持也较为完善,如SVC、长期参考帧等。...但针对线上的场景,OpenH264依然无法满足要求,缺失了一些重要功能,如ROI、智能参考帧等。此外,与x264相比,OpenH264在编码效率、编码速度等方面存在差距。...固定QP模式下的OpenH264编码速度比x264慢至少10%,比I帧编码速度慢了50%左右,同时存在高于5%的编码效率损失。...从码控稳定性来看,在固定码率的模式下,OpenH264的码率控制容易出现呼吸效应(连续帧之间的质量差距较大),存在码率波动大、码率不精准等情况,种种因素使得OpenH264也并非一个最优选择。

1.9K60
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    微信 Android 视频编码爬过的那些坑

    FFMpeg+x264/openh264 除了使用MediaCodec进行编码之外,另外一种比较流行的方案就是使用ffmpeg+x264/openh264进行软编码,ffmpeg是用于一些视频帧的预处理...这里主要是使用x264/openh264作为视频的编码器。...(https://github.com/cisco/openh264)则是由思科开源的另外一个h264编码器,项目在2013年开源,对比起x264来说略显年轻,不过由于思科支付满了h264的年度专利费,...所以对于外部用户来说,相当于可以直接免费使用了,另外,firefox直接内置了openh264,作为其在webRTC中的视频的编解码器使用。...从编码效率上来看,openh264的速度也并不会比x264快,不过其最大的好处,还是能够直接免费使用吧。

    9.4K55

    微信 Android 视频编码爬过的那些坑

    ---- FFMpeg+x264/openh264 除了使用MediaCodec进行编码之外,另外一种比较流行的方案就是使用ffmpeg+x264/openh264进行软编码,ffmpeg是用于一些视频帧的预处理...这里主要是使用x264/openh264作为视频的编码器。...openh264(https://github.com/cisco/openh264)则是由思科开源的另外一个h264编码器,项目在2013年开源,对比起x264来说略显年轻,不过由于思科支付满了h264...的年度专利费,所以对于外部用户来说,相当于可以直接免费使用了,另外,firefox直接内置了openh264,作为其在webRTC中的视频的编解码器使用。...从编码效率上来看,openh264的速度也并不会比x264快,不过其最大的好处,还是能够直接免费使用吧。

    1.5K110

    视频技术快览 0x3 - 视频封装与播放

    Canvas API 绘制到画布中 1.2 通过 Canvas API 读取画布中当前帧的 RGBA 图像 1.3 将 RGBA 图像数据转化为 YUV 格式 1.4 将 YUV 格式的图像数据发送到 OpenH264...同时,第 4 步视频编码操作需要借助 WebAsseamly 将第三方的 Video Codec(比如 OpenH264)编译为 Wasm 格式,导出为 JS 模块,方可被前端 App 引用。...2.1 将此 PDU 解析为 RTP 数据包 2.2 根据不同的 NALUnitType 将 RTP 数据包中的 RTP Payload 解析出来 2.3 将解析出来的 RTP Payload 发送到 OpenH264...图像转为 RGBA 格式的图像 2.5 通过 Canvas API 将 RGBA 格式的图像绘制到画布中 这里的第 3 步同样需要使用 WebWoker 包装,并引用基于 WebAsseamly 的 OpenH264...# 进一步优化 依然可以优化的空间: 基于 WebAsseamly 的 OpenH264 库的编码效率问题,尤其是在一些低端设备上,会导致 CPU 占用过高,并导致其发送或接收的视频发生卡顿 SCTP

    39920

    Linux平台x86_64|aarch64架构RTMP推送|轻量级RTSP服务模块集成说明

    type: 0为软编码, 1为硬编码, 默认是软编码. linux当前不支持硬编码encoder_id: 如果是软编码, 并且用h264, 可以设置0, 0用默认编码器, 也可以设置1, 设置1将使用OpenH264...SetVideoQuality(或者 SetVideoQualityV2) + SetVideoMaxBitRate要么是 SetVideoMaxBitRate + SetVideoBitRate对于OpenH264...请优先考虑默认值,对于H264, 默认值23对于H265, 默认值28注意:用OpenH264编码器时调用这个接口无用*/NT_UINT32(NT_API *SetVideoQuality)(NT_HANDLE...H264 high注意:用OpenH264编码器时不支持main profile, 如果设置成main profile的话,会回落到baseline profile.成功返回 NT_ERC_OK*/NT_UINT32...和1, 0是质量模式, 1是码率模式, sdk默认是1;"enable_frame_skip": 通过跳帧的方式来控制码率, 设置0是关闭跳帧, 1是打开跳帧, sdk默认是0;***********OpenH264

    12010
    领券