- 博客(4)
- 收藏
- 关注
原创 引入librtmp 报错: fatal error: ‘openssl/ssl.h’ file not found
引入librtmp 报错: fatal error: ‘openssl/ssl.h’ file not found许多博客提示在CMAKELists 中添加,set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -DNO_CRYPTO")并不好使!需要在build.gradle中添加才好使externalNativeBuild { cmake { cppFlags "-std=c++14" cppFlags "-fexceptions"
2020-12-24 15:40:45 509
原创 RTMP直播推流流程解析
先看问题?推流推流,流从哪里来? ---->摄像头或者视频decode假设来自摄像头,且把流封装成帧了,我怎么把帧组装成RTMP的格式—> RTMP的封装(RTMPPacket)拿到了RTMPPacket怎么发送?----> 交给rtmp.c发送摄像头信息封装成视频帧//TODO 待补充RTMPPacket的生成SPS、PPS的封装public void onSPSPPSInfo(byte[] sps, byte[] pps) {
2020-10-23 17:51:12 3393
原创 RTMP服务器搭建
环境#安装Nginx的编译环境gccyum install gcc-c++ #nginx的http模块使用pcre解析正则表达式所以安装perl兼容的正则表达式库yum install -y pcre pcre-devel #nginx使用zlib对http包的内容进行gzipyum install -y zlib zlib-devel #nginx不仅支持http协议,还支持https(即在ssl协议上传输http),如果使用了https,需要安装OpenSSL库yum instal
2020-09-23 17:00:36 821
原创 ViewModel+LiveData总结
ViewMode+LiveData例子Activity/Fragment只应关注UI,而不应关系操作逻辑,因此操作逻辑应放到Viewmodel中去下面是我手画的数据流图:首先有Fragment、ViewModel、Livedata这三个对象。Fragment观察Viewmodel的Livedata数据,如果livedata的值改变会通知Frament。ViewModel获取数据(网络、数据库),然后设置Livedata的值Livedata的值改变就通知FragmentFragment刷新界
2020-09-19 14:43:52 2656
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人