iOS版本:
1 准备好相机脚本fmcam.conf(点此链接下载脚本模板),放入相机,等待相机连接Wi-Fi。脚本格式如下:
router_ssid=foream(连接Wi-Fi的名字)
router_password=foream123(连接Wi-Fi的密码)
qrcode_type=17
stream_type=tcp
2 下载TcpStreamDecode-iOS.zip,解压。
3 用Xcode编译运行TcpStreamDecode,根据上线相机的IP地址输入拉流地址,相机拉流的格式为”tcp://相机IP:8001”
4 提取YUV数据的相关代码在convertFrameToRGB这个方法里
Android版本:
1 准备好相机脚本fmcam.conf(点此链接下载脚本模板),放入相机,等待相机连接Wi-Fi。脚本格式如下:
router_ssid=foream(连接Wi-Fi的名字)
router_password=foream123(连接Wi-Fi的密码)
qrcode_type=17
stream_type=tcp
2 下载TcpStreamDemo-android.zip,解压。
3 用Android Studio编译并运行TcpStreamDemo,根据上线相机的IP地址输入拉流地址,相机拉流的格式为”tcp://相机IP:8001”。
4 TcpStreamDemo代码中使用基于FFMpeg编译的JNI库,编译步骤如下:
1)参照ijkplayer代码库https://github.com/bilibili/ijkplayer上的编译步骤
编译前,修改编译配置,使编译出的库文件支持tcp流,tcp流支持 ,打开config/module-lite.sh 文件,在list-demuxers 下增加一行
export COMMON_FF_CFG_FLAGS="$COMMON_FF_CFG_FLAGS --enable-demuxer=h264"
2)将编译出的ffmpeg库文件放入StreamView项目中,在终端运行./gradlew build,带编译完成后,再打包成jar文件,在终端运行./gradlew exportJar,打包生成的jar文件即TcpStreamDemo项目中的jar文件。
5 获取YUV帧数据的相关代码如下:
6.SDK源码下载
1)封装库文件的编译代码StreamView请点击此链接下载
2)Demo代码请点击此链接下载