freerdp在windows中的编译(with openh264)

我自己编译的node-freerdp2模块在window 7中会莫名其妙的报一个错误。google上说跟windows的media_foundation相关,更莫名其妙的是,重装系统后100%复现。但是看到最后一个报错,create h264 codec context的时候,要不就把openh264编译进来试试

报错内容

[ERROR][com.freerdp.codec] - QueryInterface(IID_ICodecAPI) failure: 0x80004002
[ERROR][com.freerdp.codec] - mf_init failure
[ERROR][com.freerdp.core.codecs] - Failed to create h264 codec context

openh264的编译

不要使用 这个哥们 的编译方式,这样的方式需要自己添加windows的include和libs文件夹,直接点开Visual Studio Command Prompt即可,环境变量给你设置的好好的,剩下的就是在环境变量添加上msys的路径,据说还需要nasm,也一起加上,最后在openh264的根目录下敲以下命令。

make OS=msvc ARCH=i386 //x86
make OS=msvc ARCH=x86_64 //x64

freerdp的编译

上篇文章 的基础上添加参数

-DWITH_OPENH264=ON -DOPENH264_LIBRARY="D:\Playground\C\openh264\openh264.lib" -DOPENH264_INCLUDE_DIR="D:\Playground\C\openh264\include"

最终的编译命令为

cmake . -G"Visual Studio 14 2015 Win64" -DOPENSSL_ROOT_DIR="D:\Tools\vcpkg\packages\openssl-windows_x64-windows"  -DLIBUSB_1_INCLUDE_DIR="D:\Tools\vcpkg\packages\libusb_x64-windows\include\libusb-1.0"  -DLIBUSB_1_LIBRARY="D:\Tools\vcpkg\packages\libusb_x64-windows\lib\libusb-1.0.lib" -DWITH_OPENH264=ON -DOPENH264_LIBRARY="D:\Playground\C\openh264\openh264.lib" -DOPENH264_INCLUDE_DIR="D:\Playground\C\openh264\include"
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值