WebRTC + 直播 + 连麦 = AnyRTC ?
看到这个题目,您似乎瞬间就懵逼了,小编是在梦游中写作文吗?这四个词有什么联系?WebRTC是Google的,
直播是现在最火的,连麦是直播中略吊的,但是AnyRTC是什么鬼,这不瞎扯么╮(╯_╰)╭
您先别着急,听我慢慢给你扯~~~确实,四句话您都说对了,听我一一给你道来。
高手可以直接关闭本页面。不喜勿喷,出门左转
WebRTC
WebRTC是Google的开源项目,目前在其自家浏览器Chrome中自带。百度或Google都可以找到相关介绍,从事相关行业的人都知道WebRTC的鼎鼎大名,如果您还不熟悉,请自行搜索。
WebRTC的编译对于熟悉ninja的人来说小菜一碟,但对于不熟悉的人,要想编译完成没有个三四天是下不来的,更有人下载代码都下不全,小编还是之前移植浏览器时打下的基础^)(^。
以下是小编目前使用的ios和android版本的peerconnection的库的脚本,命令打包而已,其实是编译官方AppRTCDemo的命令,顺带编译出了peerconnection,如果您不想要AppRTCDemo, 可以将AppRTCDemo替换为相应系统的libjingle_peerconnection版本。具体命令都可以在WebRTC Development中找到。
如果你是第一次下载代码,一定要保证网络可以到Google,并且gclient sync到没有新的更新为止,保证代码下完整。
Ios
#!/bin/bash
##
## Dync-AnyRTC
## Hello webrtc
##
if [ x$1 == x ]
then
echo "==============================="
echo "$0 arm64|armv7 build_all"
echo "==============================="
exit 1;
fi
function build_armv7()
{
echo "start building armv7..."
rm -rf out_ios_armv7
mkdir -p out_ios_armv7/Release-iphoneos
export GYP_GENERATORS="ninja"
export GYP_DEFINES="enable_protobuf=0 build_protobuf=0 build_with_libjingle=1 build_with_chromium=0 libjingle_objc=1 OS=ios target_arch=arm arm_version=7 use_objc_h264=1"
export GYP_GENERATOR_FLAGS="output_dir=out_ios_armv7"
export GYP_CROSSCOMPILE=1
gclient runhooks
##ninja -C out_ios_armv7/Debug-iphoneos AppRTCDemo
ninja -C out_ios_armv7/Release-iphoneos AppRTCDemo
echo "finish building armv7..."
}
function build_arm64()
{