rk3308 vlc 不能不放https

文章描述了在VLC3.0.16版本中遇到的gnutls证书错误,通过修改gnutls-system-trust配置,指定信任证书目录,并在buildroot中添加openssl相关库来解决问题。最终成功播放了内容。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

一直显示

上面的错误,后面换了版本号3.0.16
显示:gnutls tls client error: cannot load trusted Certificate Authorities from system: An unimplemented or disabled feature has been requested.
[0000007f88001880] main tls client error: cannot resolve cdn9003.iflyos.cn port 443: Temporary failure in name resolution
[0000007f88001360] access stream error: HTTP connection failure
[0000007f84000a00] main input error: Your input can't be opened

于是查看系统ssl在那个文件夹,源码调用的地方一一查找
修改vlc-3.0.16/modules/misc/gnutls.c 
查看gnutls-system

修改

 add_bool("gnutls-system-trust", true, SYSTEM_TRUST_TEXT,
             SYSTEM_TRUST_LONGTEXT, true)
    add_string("gnutls-dir-trust", NULL, DIR_TRUST_TEXT,
               DIR_TRUST_LONGTEXT, true)


 add_bool("gnutls-system-trust", false, SYSTEM_TRUST_TEXT,
             SYSTEM_TRUST_LONGTEXT, true)
    add_string("gnutls-dir-trust", "/etc/ssl/certs/", DIR_TRUST_TEXT,
               DIR_TRUST_LONGTEXT, true)

rm buildroot/output/rockchip_rk3308_bs_release/build/vlc-3.0.16/.stamp_built
rm buildroot/output/rockchip_rk3308_bs_release/build/vlc-3.0.16/.stamp_target_installed
重新编译
make vlc

运行出现下面错误
[0000007f70001880] gnutls tls client error: Certificate verification failure: The certificate is NOT trusted. The certificate chain uses not yet valid certificate.
[0000007f70001880] main tls client error: TLS session handshake error
[0000007f70001880] main tls client error: connection error: Resource temporarily unavailable

该错误可能是没有网络造成的 

于是将buildroot里面> Target packages > Libraries > Crypto 里面的openssl binary 、openssl additional engines、gnutls install tools都选上 终于可以播放了

在网上找了很久没有找到答案,特此记录
 

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值