美文网首页WebRTC
webrtc入门之客户端连麦demo-apprtc

webrtc入门之客户端连麦demo-apprtc

作者: Android_杜小菜 | 来源:发表于2018-01-25 18:38 被阅读324次

    webrtc很强大,但编译起来比较痛苦,源码和工具链下载下来十几G,源码samples里面提供了androidapp项目,只有源码,没有jar包和so库,所以我编译好webrtc,提取出所需的jar包和so文件,并把里面androidapp弄成android studio项目,可以正常编译运行。这个demo实现webrtc连麦,点对点视频通信,对webrtc初学者还是挺有帮助的。以下是关于这个demo的详细信息,英文不是装逼,因为这个源码我分享在了github上面。
    WebRTC Demos:webrtc-android-demo-apprtc

    This demo is based on WebRTC.
    WebRTC is a free, open project.The source code of this demo is based on official samples(src/samples/androidapp). I have compiled webrtc source to get required .so and .jar files, so you can just build it by android studio.


    webrtc-android-demo-as-project.png

    How to build and run?

    Please clone this project,build it with android stuido,install the target apk files to your devices

    How to start

    1,go to website : https://appr.tc/.input your room id(any number).

    appr.tc-webrtc-server.png

    2,open the apprtc app,input the same room id.

    AppRTC-android-demo-p2p.png

    3,Experience p2p connectivity with webrtc.

    AppRTC-connectivity.png

    Future

    Maybe I will share more articles about webrtc in the future.

    Thanks to WebRTC team!

    Dusan's E-mail: duqian2010@gmail.com

    WebRTC Demos:webrtc-android-demo-apprtc

    如果对webrtc编译感兴趣,以下是我在linux ubuntu 14.04上编译webrtc所用的命令,希望对你有帮助。

    Development

    if you try to compile src of webrtc,you'll depressed
    at its large size,the total checkout size will be about 16 GB. and more than 30G after compiled.
    for more details about getting source code: https://webrtc.org/native-code/android/

    if you have installed all required softwares in linux.
    let's excute cmds like this:

    #!/bin/bash
    #duqian2010@gmail.com
    
    export PATH=$PATH:~/webrtc/depot_tools
    
    cd ~/webrtc/android/
    
    fetch --nohooks webrtc_android
    gclient sync
    gclient runhooks
    
    ls
    cd src
    
    git new-branch webrtc_compile
    git checkout webrtc_compile
    
    echo "--------------compile config:android,arm-----------------"
    
    gn gen out/arm --args='target_os="android" target_cpu="arm"'
    
    echo "-----------------start compiling webrtc---------------------"
    
    ninja -C out/arm
    
    echo "-----------------compile webrtc done---------------------"
    
    #ninja -C out/arm AppRTCMobile
    #build/android/gradle/generate_gradle.py --output-directory $PWD/out/arm --target "//webrtc/examples:AppRTCMobile" --use-gradle-process-resources --split-projects --canary
    
    echo "start copying jar files"
    mkdir ../libs/armeabi-v7a/
    
    cp out/arm/lib.java/sdk/android/libjingle_peerconnection_java.jar ../libs/libjingle_peerconnection_java.jar 
    cp out/arm/lib.java/rtc_base/base_java.jar ../libs/base_java.jar 
    cp out/arm/gen/modules/audio_device/audio_device_java__compile_java.javac.jar ../libs/audio_device_java__compile_java.javac.jar
    cp out/arm/lib.java/examples/androidapp/third_party/autobanh/autobanh.jar ../libs/autobanh.jar
    
    echo "start copying so files"
    
    cp out/arm/libjingle_peerconnection_so.so ../libs/armeabi-v7a/libjingle_peerconnection_so.so
    
    echo "task has finished"
    exit 0
    
    # scp /Users/duqian/Downloads/webrtc_arm.sh nonolive@192.168.0.18:/home/nonolive/webrtc/android/
    

    谢,喜欢就分享吧。

    相关文章

      网友评论

        本文标题:webrtc入门之客户端连麦demo-apprtc

        本文链接:https://www.haomeiwen.com/subject/zyqbaxtx.html