01/10/2018, 14:07

PeerConnection addStream không hiển thị được data từ camera phone lên web

Mình addStream theo đúng luồng nhưng không thấy được data từ camera phone lên web, mình đã check data gửi lên thì thấy đúng rồi. Bên IOS cũng luồng như vậy và chạy ngon.
Đây là code của mình. Mong mn giúp.

    private void createPeerConnection() {
    PeerConnectionFactory.initializeAndroidGlobals(this, true, true, true);
    //tao lien ket giua nhieu connection voi nhau qua mediaserver
    factory = new PeerConnectionFactory();

    List<PeerConnection.IceServer> iceServers = new LinkedList<PeerConnection.IceServer>();
    iceServers.add(new PeerConnection.IceServer("stun:stun.l.google.com:19302"));
    //cho phep nhan hinh anh va am thanh

    sdpMediaConstraints = new MediaConstraints();
    sdpMediaConstraints.mandatory.add(new MediaConstraints.KeyValuePair("OfferToReceiveAudio", "true"));
    sdpMediaConstraints.mandatory.add(new MediaConstraints.KeyValuePair("OfferToReceiveVideo", "true"));

    pc = factory.createPeerConnection(iceServers, sdpMediaConstraints, peerConnectionObserver);
    mbInited = true;


    //lay am thanh va hinh anh tu thiet bi local

    VideoSource videoSource = factory.createVideoSource(this.getVideoCapturer(), new MediaConstraints());
    final MediaStream lMS = factory.createLocalMediaStream("ARDAMS");
    final VideoTrack localVideoTrack = factory.createVideoTrack("ARDAMSv0", videoSource);

    AudioSource audioSource =
            factory.createAudioSource(sdpMediaConstraints);
    AudioTrack localAudioTrack =
            factory.createAudioTrack("ARDAMSa0", audioSource);

    lMS.addTrack(localVideoTrack);
    lMS.addTrack(localAudioTrack);
    //hien thi hinh anh lay duoc len view
    runOnUiThread(new Runnable() {
        @Override
        public void run() {
            localVideoTrack.addRenderer(new VideoRenderer(local));
        }
    });
    pc.addStream(lMS);
    pc.createOffer(sdpObserver, sdpMediaConstraints);


}
Bài liên quan
0