h323plus下h264编码器编译和使用

    关于H323Plus的编译以前对文章已经介绍,视频和音频的的基本编码和使用也已经实现,但是视频很不清晰,因为使用对H261最基本对编码,在此介绍比较常用的H 264编码对使用。

    在h323core目录下对plugins目录,里边包含音频和视频各种编码,通过congfigure默认配置后,编译,视频编码只能获得H261的动态库,不论如何配置 ,其他视频编码都 无法使用,看configure配置步骤,缺少libavcodec的支持,因此下载ffmpeg源码编译安装,经过验证后,这条路是不对的,正确的方法是yum方法安装ffmpeg(我用的centos)。

        yum list *ffmpeg*

        yum install -y ffmpeg.x86_64(请选择自己操作系统支持的版本)

        yum install -y ffmpeg-devel.x86_64(请选择自己操作系统支持的版本)

    安装完成后,在plugins目录下运行:./configure --prefix=$HOME/usr --with-plugin-installdir=ptlib-2.12.8(后面是编码器安装目录,上述配置,编码器将安装在$HOME/usr/lib/ptlib-2.12.8/codecs下),然后运行make和make install

    make install后h264的编码却不会安装到指定目录下,这一步需要手动拷贝h264的编码到编码器目录下的video目录下,另外提醒一点,H.263-1998的编码运行会core错误,建议在编码器目录下删除这个库。

    接下来就是测试H.264编码器,经过修改demo(将cifMPI换为p720MPI),H264编码被加到编码列表中,但是视频聊天看到对却是黑屏,开始就发现的一个错误没有注意:

        ERROR: H.264 plugin couldn't find GPL process executable: h264_video_pwplugin_helper

    经过几次路径的配置,最终没有消除这个错误,看GPL是一份GNU通用公共授权非正式的中文翻译,因此认为没有影响,其实不然,经过跟踪调试,发现最终的错误是读写数据流错误,并且读写错误紧跟上述的GPL的错误,因此分析GPL的代码并运行调试,代码目录在:h323core/plugins/video/H.264/gpl/下。这个程序原来是打开了两个管道文件,提供给H264编码器使用。因此必须得让编码器找到这个h264_video_pwplugin_helper程序,找到这个错误提示的地方,分析查找路径,原来需要一个环境变量:在.bash_profile中添加export PWLIBPLUGINDIR=$HOME/usr/lib/ptlib-2.12.8,重新加载环境变量,即可启用h264_video_pwplugin_helper。

     此时点对点对视频聊天可以进行。

   

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值