zoukankan      html  css  js  c++  java
  • TSINGSEE青犀视频开发webrtc使用ffmpeg编译报ffmpeg version: N-94448-G3CEA9CD219提示是什么原因

    TSINGSEE青犀视频现阶段做的webrtc开发已经进入了下一个阶段,当音视频推流都已经测试完成后,我们开始了研究ffmpeg的道路。

    FFmpeg在Linux平台下开发,但它同样也可以在其它操作系统环境中编译运行,包括Windows、Mac OSX等。ffmpeg视频采集功能非常强大,不仅可以采集视频采集卡或USB摄像头的图像,还可以进行屏幕录制,同时还支持以RTP方式将视频流传送给支持RTSP的流媒体服务器,支持直播应用。

    我们在webrtc中使用ffmpeg,出现获取版本为“ffmpeg version: N-94448-G3CEA9CD219”的提示,而不是出现xxx.xxx.xxx版本号
    使用ffmpeg avcodec_configuration这个函数,出现的是null,而不是加载配置项。

    一般情况下,在webrtc中使用ffmpeg报错可能有如下原因:
    (1)没有找到ffmpeg库
    (2)webrtc没有打包成共享库
    (3)共享库的优先级问题
    (4)webrtc打包错误

    因此在排查中我们检查了参数列表,找到is_component_ffmpeg这个参数的说明,这个参数有助于用自己的ffmpeg库,而不是用webrtc构建的工具库。

    完整的gn参数如下所示:
    gn gen out/Debug --ide=vs2017 --args=“is_debug=true target_cpu=“x86” is_clang=false is_component_ffmpeg=true”

    可以看到参数中is_component_ffmpeg设置为false,但是此处的参数应该为true,才能将ffmpeg构建为共享库。

    通过完整的gn参数再次打包webrtc,运行结果如下:

    问题得以解决,看到了ffmpeg的版本号,并可以加载配置项。

  • 相关阅读:
    关于git的简单使用
    手机设备上调试接口,查看错误信息
    用after伪类清除浮动
    js字母大小写转换方法
    使用淘宝 NPM 镜像
    JS判断类型
    JS判断客户端是手机还是PC的2个代码
    微信小程序 WebSocket
    服务器安全管理
    Linux下禁止ping最简单的方法
  • 原文地址:https://www.cnblogs.com/TSINGSEE/p/14251828.html
Copyright © 2011-2022 走看看