簡體   English   中英

Quickblox Android Web-RTC-未調用onRemoteVideoTrackReceive

[英]Quickblox Android web-rtc — onRemoteVideoTrackReceive not called

我正在為Android上的QuickBlox Video客戶端制作原型。 為了進行測試,我現在只有代碼可以接收呼叫,並且正在使用JavaScript測試客戶端(我的帳戶中有固定用戶)來生成呼叫。 我的代碼基於QuickBlox Android教程(適用於“新” Web-rtc應用程序)。

基本上,所有情況似乎都進行了一段時間(請參閱下面的日志)。 呼叫轉到平板電腦,並調用acceptCall (以空映射作為參數)。 調用onLocalVideoTrackReceive會打開平板電腦的攝像頭(並且本地視圖會出現在UI中)。 但是,即使已調用acceptCall ,客戶端仍會響鈴,並且永遠不會調用onRemoteVideoTrackReceived回調

平板電腦應用不會崩潰。 我很高興地記錄了它正在使用其相機的事實,但沒有其他反應。 最終,我手動掛斷了客戶端。

18:35:26.770  15909-16114/com.coms D/QBASDK﹕ =========================================================
        === REQUEST ==== 5e751fe9-4186-445a-9ebc-9008143860c6 ===
        REQUEST
        POST https://api.quickblox.com/session.json
        HEADERS
        QuickBlox-REST-API-Version=0.1.1
        QB-SDK=Android 2.2.6
        PARAMETERS
        application_id=25788
        auth_key=XXXXXXXXXXXX
        nonce=-1153424146
        timestamp=1437528926
        user[login]=YYYYYYYYYYYYY
        user[password]=ZZZZZZZZZZZZZZZZZ
        signature=WWWWWWWWWWWWW
        INLINE
        POST https://api.quickblox.com/session.json?application_id=25788&auth_key=xcA5Xc2R53Cgrz3&nonce=-1153424146&timestamp=1437528926&user[login]=XXXXXXXXXXXXXXXXXXXXXX&user[password]=YYYYYYYYYYY&
    signature=WWWWWWWWWWWWWWWW

    18:35:27.296  15909-16114/com.coms D/QBASDK﹕ *********************************************************
        *** RESPONSE *** 5e751fe9-4186-445a-9ebc-9008143860c6 ***
        STATUS : 201
        HEADERS
        Access-Control-Allow-Origin=*
        Cache-Control=max-age=0, private, must-revalidate
        Connection=keep-alive
        Content-Type=application/json; charset=utf-8
        Date=Wed, 22 Jul 2015 01:35:27 GMT
        ETag="381f79ac0b50dfd6332d658570ed1c61"
        QB-Token-ExpirationDate=2015-07-22 03:35:27 UTC
        QuickBlox-REST-API-Version=0.1.1
        Server=nginx/1.0.15
        Status=201 Created
        Transfer-Encoding=chunked
        X-Rack-Cache=invalidate, pass
        X-Request-Id=a1a2781b1ab340fd1e462e200e627770
        X-Runtime=0.026241
        X-UA-Compatible=IE=Edge,chrome=1
        BODY
        '{"session":{"_id":"55aef35f535c126116002461","application_id":XXXXXX,"created_at":"2015-07-22T01:35:27Z","device_id":0,"nonce":-1153424146,"token":"d5678a7685eec907f6226591e4031cf569a7a973","ts":1437528926,"updated_at":"2015-07-22T01:35:27Z","user_id":4268341,"id":5595}}'
    18:35:27.369  15909-16114/com.coms D/QuickBloxService﹕ got session QBSession{token='d5678a7685eec907f6226591e4031cf569a7a973', appId=25788, userId=4268341, deviceId=0, timestamp=1437528926, nonce=-1153424146}

    18:35:28.388  15909-16114/com.coms D/RTCClient﹕ Create INSTANCE
    18:35:28.389  15909-16114/com.coms D/RTCClient﹕ Init client tasks EXECUTOR
    18:35:28.389  15909-16114/com.coms D/LooperExecutor﹕ Request Looper start. On QBRTCClient
    18:35:28.404  15909-16198/com.coms D/LooperExecutor﹕ Looper thread started.
    18:35:28.425  15909-16114/com.coms D/RTCClient﹕ ADD CALLBACK com.coms.service.QuickBloxService@2039de4e
    18:35:28.426  15909-16114/com.coms D/RTCClient﹕ ADD CALLBACK com.coms.service.QuickBloxService@2039de4e
    18:35:28.426  15909-16114/com.coms E/MsgProcessor﹕ Try to add  null SmackSignallingProcessorCallback listener
    18:35:28.431  15909-16183/com.coms D/SMACK﹕ RCV (0): 
    18:35:28.464  15909-15924/com.coms I/art﹕ Background sticky concurrent mark sweep GC freed 32529(2033KB) AllocSpace objects, 8(151KB) LOS objects, 14% free, 14MB/16MB, paused 5.004ms total 85.510ms
    18:36:28.318  15909-16182/com.coms D/SMACK﹕ SENT (0): 
    18:36:28.411  15909-16183/com.coms D/SMACK﹕ RCV (0): 
    18:36:32.353  15909-16183/com.coms D/SMACK﹕ RCV (0): WebRTCVideoChatcall14375289842651v=0
        o=mozilla...THIS_IS_SDPARTA-39.0 4294967295 0 IN IP4 0.0.0.0
        s=-
        t=0 0
        a=sendrecv
        a=fingerprint:sha-256 C0:E6:07:F1:15:72:CC:24:93:7D:D9:DA:D2:7D:A4:42:7E:41:F2:6E:9F:9A:7B:98:49:A7:06:EE:70:AC:4D:2E
        a=group:BUNDLE sdparta_0 sdparta_1
        a=ice-options:trickle
        a=msid-semantic:WMS *
        m=audio 9 RTP/SAVPF 109 9 0 8
        c=IN IP4 0.0.0.0
        a=sendrecv
        a=extmap:1 urn:ietf:params:rtp-hdrext:ssrc-audio-level
        a=ice-pwd:1206bfba48e268d7e5d6af337cf5da23
        a=ice-ufrag:e0be8eb3
        a=mid:sdparta_0
        a=msid:{1947eb01-41ad-4ce1-8481-82b006a3c7ef} {6f381987-02b3-44ef-a43d-5e347bbfc247}
        a=rtcp-mux
        a=rtpmap:109 opus/48000/2
        a=rtpmap:9 G722/8000/1
        a=rtpmap:0 PCMU/8000
        a=rtpmap:8 PCMA/8000
        a=setup:actpass
        a=ssrc:1080179391 cname:{917d1c3d-afc8-4168-8dbf-e2d3ac9144f0}
        m=video 9 RTP/SAVPF 120 126 97
        c=IN IP4 0.0.0.0
        a=sendrecv
        a=fmtp:120 max-fs=12288;max-fr=60
        a=fmtp:126 profile-level-id=42e01f;level-asymmetry-allowed=1;packetization-mode=1
        a=fmtp:97 profile-level-id=42e01f;level-asymmetry-allowed=1
        a=ice-pwd:1206bfba48e268d7e5d6af337cf5da23
        a=ice-ufrag:e0be8eb3
        a=mid:sdparta_1
        a=msid:{1947eb01-41ad-4ce1-8481-82b006a3c7ef} {9d584e62-e48e-4ce2-bd98-77b0c1863383}
        a=rtcp-fb:120 nack
        a=rtcp-fb:120 nack pli
        a=rtcp-fb:120 ccm fir
        a=rtcp-fb:126 nack
        a=rtcp-fb:126 nack pli
        a=rtcp-fb:126 ccm fir
        a=rtcp-fb:97 nack
        a=rtcp-fb:97 nack pli
        a=rtcp-fb:97 ccm fir
        a=rtcp-mux
        a=rtpmap:120 VP8/90000
        a=rtpmap:126 H264/90000
        a=rtpmap:97 H264/90000
        a=setup:actpass
        a=ssrc:2574623186 cname:{917d1c3d-afc8-4168-8dbf-e2d3ac9144f0}
        web43084764268341
    18:36:32.355  15909-16183/com.coms D/Parser -->>﹕ Start cycle
    18:36:32.355  15909-16183/com.coms D/Parser -->>﹕ Tag type is: 2,name is opponentID
    18:36:32.355  15909-16183/com.coms D/Parser -->>﹕ Tag type is: 4, value is 4268341
    18:36:32.355  15909-16183/com.coms D/Parser -->>﹕ Tag type is: 3,name is opponentID
    18:36:32.355  15909-16183/com.coms D/Parser -->>﹕ Finish cycle
    18:36:32.356  15909-16183/com.coms D/Parser -->>﹕ Tag is 4268341
    18:36:32.356  15909-16183/com.coms D/Parsed message﹕ opponentsIDs  -->  4268341
    18:36:32.379  15909-16188/com.coms D/RTCClient﹕ New signalling was added
    18:36:32.422  15909-16188/com.coms E/QuickBloxService﹕ Added Signaling com.quickblox.chat.QBWebRTCSignaling@23080481
    18:36:32.425  15909-16188/com.coms D/QBRTCSessionDescription﹕ Was created QBRTCSessionDescription{sessionID='1437528984265', callerID='4308476', opponents=[4268341], conferenceType=QBConferenceType{value='1'}, userInfo={}}
    18:36:32.426  15909-16188/com.coms D/MsgProcessor﹕ notify income call
    18:36:32.431  15909-16188/com.coms D/LooperExecutor﹕ Request Looper execute.
    18:36:32.431  15909-16188/com.coms D/LooperExecutor﹕ POST.Run on thread:1250
    18:36:32.434  15909-16198/com.coms D/RTCClient﹕ Call offer message received
    18:36:32.435  15909-16198/com.coms D/RTCClient﹕ createSessionWithDescription
    18:36:32.451  15909-16198/com.coms D/EglBase﹕ SDK version: 22
    18:36:32.453  15909-16198/com.coms D/*WEBRTCN*﹕ SetRenderAndroidVM
    18:36:32.453  15909-16198/com.coms D/JVM﹕ JVM::Initialize@[tid=16198]
    18:36:32.453  15909-16198/com.coms D/JVM﹕ JVM::JVM@[tid=16198]
    18:36:32.454  15909-16198/com.coms D/MediaCodecVideo﹕ SetAndroidObjects for surface decoding.
    18:36:32.454  15909-16198/com.coms D/MediaCodecVideo﹕ NULL VideoDecoder EGL context - HW surface decoding is disabled.
    18:36:32.476  15909-17205/com.coms D/JVM﹕ AttachCurrentThreadIfNeeded::ctor@[tid=17205]
    18:36:32.476  15909-17205/com.coms D/JVM﹕ Attaching thread to JVM
    18:36:32.476  15909-17205/com.coms D/JVM﹕ JVM::environment@[tid=17205]
    .... Lots of audio and video setup

    18:36:32.486  15909-17205/com.coms D/AudioManager﹕ Init@[tid=17205]
    18:36:32.486  15909-17205/com.coms D/WebRtcAudioManager﹕ init@[name=Thread-1251, id=1251]
    18:36:32.487  15909-17205/com.coms D/WebRtcAudioManager﹕ audio mode is: MODE_NORMAL
    18:36:32.489  15909-17205/com.coms D/AudioRecordJni﹕ EnableBuiltInAEC@[tid=17205]
    18:36:32.489  15909-17205/com.coms D/WebRtcAudioRecord﹕ EnableBuiltInAEC(true)
    18:36:32.494  15909-17205/com.coms D/AudioRecordJni﹕ EnableBuiltInAEC@[tid=17205]
    18:36:32.494  15909-17205/com.coms D/WebRtcAudioRecord﹕ EnableBuiltInAEC(true)
    18:36:32.498  15909-16198/com.coms D/RTCClient﹕ Peer connection factory initiated
    18:36:32.503  15909-16198/com.coms D/RTCClient.QBPeerChannel﹕ Create looper executor on thread: 1250
    18:36:32.503  15909-16198/com.coms D/LooperExecutor﹕ Request Looper start. On QBPeerChannel
    18:36:32.504  15909-17214/com.coms D/LooperExecutor﹕ Looper thread started.
    18:36:32.505  15909-16198/com.coms D/RTCClient.QBRTCSession﹕ Make new channel:com.quickblox.videochat.webrtc.QBPeerChannel@188f6926
    18:36:32.505  15909-16198/com.coms D/RTCClient﹕ Notify all session calback listeners about session creation
    18:36:32.505  15909-16198/com.coms D/SessionClosedListener﹕ onReceiveNewSession
    18:36:32.528  15909-16198/com.coms D/LooperExecutor﹕ Request Looper execute.
    18:36:32.528  15909-16198/com.coms D/RTCClient.QBRTCSession﹕ acceptCall
    18:36:32.528  15909-16198/com.coms D/RTCClient.QBPeerChannel﹕ startAsAnswer
    18:36:32.528  15909-16198/com.coms D/PeerChannelLifeCycleTimers﹕ Stop WaitTimer
    18:36:32.528  15909-16198/com.coms D/LooperExecutor﹕ Request Looper execute.
    18:36:32.528  15909-16198/com.coms D/LooperExecutor﹕ POST.Run on thread:1254
    18:36:32.528  15909-16198/com.coms D/RTCClient.QBPeerChannel﹕ Try to set null remote sdp
    18:36:32.529  15909-17214/com.coms D/RTCClient.QBPeerChannel﹕ createConnection
    18:36:32.529  15909-16198/com.coms D/LooperExecutor﹕ EXECUTE.Run on thread:1250
    18:36:32.529  15909-16198/com.coms E/QuickBloxService﹕ Accepted Incoming Call: QBRTCSession{sessionDescription=QBRTCSessionDescription{sessionID='1437528984265', callerID='4308476', opponents=[4268341], conferenceType=QBConferenceType{value='1'}, userInfo={}}, getMediaStreamManager=com.quickblox.videochat.webrtc.QBMediaStreamManager@2fc617b, channels={4308476=com.quickblox.videochat.webrtc.QBPeerChannel@188f6926}, signalChannel=com.quickblox.videochat.webrtc.QBSignalChannel@b4b2b98, chatCallbackList=[com.quickblox.videochat.webrtc.QBRTCClient$SessionClosedListener@24140113, com.coms.service.QuickBloxService@2039de4e], audioEnabled=false, videoEnabled=false, state=QB_RTC_SESSION_ACTIVE, isNeedClose=false} false false
    18:36:32.535  15909-16198/com.coms D/RTCClient.QBRTCSession﹕ Process income call from 4308476
    18:36:32.535  15909-16198/com.coms D/RTCClient.QBPeerChannel﹕ set remote sdp v=0
        o=mozilla...THIS
    18:36:32.764  15909-15909/com.coms D/RTCClient﹕ ADD CALLBACK com.coms.VideoActivity@265390e3
    18:36:32.768  15909-17214/com.coms D/RTCClient.QBRTCSession﹕ Local Stream Add
    18:36:32.768  15909-17214/com.coms D/RTCClient.QBMediaStrMgr﹕ Init local media stream
    18:36:32.768  15909-17214/com.coms D/RTCClient.QBMediaStrMgr﹕ Add video stream
    18:36:32.772  15909-17214/com.coms D/VideoCapturerAndroid﹕ VideoCapturerAndroid
    18:36:32.773  15909-17214/com.coms D/VideoCapturerAndroid﹕ init: Camera 1, Facing front, Orientation 270
    18:36:32.773  15909-17214/com.coms D/VideoCapturerAndroid﹕ Get supported formats.
    18:36:32.773  15909-17214/com.coms D/VideoCapturerAndroid﹕ Opening camera 1
    18:36:32.873  15909-17223/com.coms D/QBASDK﹕ onSurfaceChanged
    18:36:32.886  15909-17224/com.coms D/QBASDK﹕ onSurfaceChanged
    18:36:33.304  15909-15909/com.coms E/ComMain﹕ onStop
    18:36:33.690  15909-17214/com.coms D/VideoCapturerAndroid﹕ Opening camera 0
    18:36:34.056  15909-17214/com.coms D/VideoCapturerAndroid﹕ Get supported formats done.

    18:36:34.066  15909-17205/com.coms D/VideoCapturerAndroid﹕ startCapture requested: 640x480@30
    18:36:34.072  15909-17284/com.coms D/VideoCapturerAndroid﹕ Opening camera 1
    18:36:34.076  15909-17214/com.coms D/LooperExecutor﹕ Request Looper execute.
    18:36:34.076  15909-17214/com.coms D/LooperExecutor﹕ POST.Run on thread:1250
    18:36:34.077  15909-16198/com.coms E/***********﹕ Got local tracker
    18:36:34.082  15909-17214/com.coms D/AppRTCAudioManager﹕ Android SDK: 22, Release: 5.1.1, Brand: google, Device: flo, Id: LMY48G, Hardware: flo, Manufacturer: asus, Model: Nexus 7, Product: razor
    18:36:34.082  15909-17214/com.coms D/AppRTCAudioManager﹕ init

    18:36:35.195  15909-17224/com.coms D/QBASDK﹕ QBGLVideoView
    18:36:36.251  15909-17224/com.coms D/QBASDK﹕ QBGLVideoView
    18:36:37.318  15909-17224/com.coms D/QBASDK﹕ QBGLVideoView
    18:36:38.337  15909-17224/com.coms D/QBASDK﹕ QBGLVideoView
    18:36:39.349  15909-17224/com.coms D/QBASDK﹕ QBGLVideoView
    18:36:39.873  15909-17284/com.coms D/VideoCapturerAndroid﹕ Camera fps: 11. CaptureBuffers: 3.0. Pending buffers: []

    18:37:02.457  15909-16183/com.coms D/SMACK﹕ RCV (0): manuallyWebRTCVideoChathangUp1437528984265
    18:37:02.458  15909-16188/com.coms D/MsgProcessor﹕ Wrong caller id was set
    18:37:02.459  15909-16188/com.coms D/QBRTCSessionDescription﹕ Was created QBRTCSessionDescription{sessionID='1437528984265', callerID='null', opponents=null, conferenceType=QBConferenceType{value='2'}, userInfo={}}
    18:37:02.459  15909-16188/com.coms D/MsgProcessor﹕ notify stop call
    18:37:02.459  15909-16188/com.coms D/LooperExecutor﹕ Request Looper execute.
    18:37:02.459  15909-16188/com.coms D/LooperExecutor﹕ POST.Run on thread:1250
    18:37:02.462  15909-16198/com.coms D/RTCClient﹕ Stop message received
    18:37:02.462  15909-16198/com.coms D/RTCClient.QBRTCSession﹕ Process hang up from 4308476
    18:37:02.462  15909-16198/com.coms D/RTCClient.QBRTCSession﹕ Сhannel to hang up exists. Hangup task will be add to queue
    18:37:02.462  15909-16198/com.coms D/LooperExecutor﹕ Request Looper execute.
    18:37:02.462  15909-16198/com.coms D/RTCClient.QBPeerChannel﹕ Call procHungUp
    18:37:02.462  15909-16198/com.coms D/RTCClient.QBPeerChannel﹕ Method PeerCOnnection.close started
    18:37:02.462  15909-16198/com.coms D/PeerChannelLifeCycleTimers﹕ Stop DialingTimer
    18:37:02.462  15909-16198/com.coms D/PeerChannelLifeCycleTimers﹕ Stop WaitTimer
    18:37:02.462  15909-16198/com.coms D/PeerChannelLifeCycleTimers﹕ Stop DisconnectTimer
    18:37:02.463  15909-16198/com.coms D/LooperExecutor﹕ Request Looper execute.
    18:37:02.463  15909-16198/com.coms D/LooperExecutor﹕ POST.Run on thread:1254
    18:37:02.463  15909-16198/com.coms D/LooperExecutor﹕ Request Looper stop. On QBPeerChannel
    18:37:02.463  15909-16198/com.coms D/RTCClient.QBRTCSession﹕ Notify users about hangUp session in count of 2
    18:37:02.463  15909-16198/com.coms D/SessionClosedListener﹕ onReceiveHangUpFromUser
    18:37:02.464  15909-16198/com.coms E/QuickBloxService﹕ onReceiveHangUpFromUser
    18:37:02.464  15909-16198/com.coms D/LooperExecutor﹕ EXECUTE.Run on thread:1250
    18:37:02.464  15909-17214/com.coms D/RTCClient.QBPeerChannel﹕ Closing peer add in task queue.
    18:37:02.464  15909-17214/com.coms D/RTCClient.QBPeerChannel﹕ Closing peer connection start.
    18:37:02.465  15909-17206/com.coms D/RTCClient.QBPeerChannel.Observer:﹕ onIceConnectionChange to CLOSED
    18:37:02.465  15909-17206/com.coms D/LooperExecutor﹕ Request Looper execute.
    18:37:02.465  15909-17206/com.coms D/LooperExecutor﹕ POST.Run on thread:1254
    18:37:02.466  15909-17206/com.coms D/RTCClient.QBPeerChannel.Observer:﹕ onIceGatheringChange to COMPLETE
    18:37:02.466  15909-17206/com.coms D/RTCClient.QBPeerChannel.Observer:﹕ onSignalingChange to CLOSED
    18:37:02.480  15909-17214/com.coms D/RTCClient.QBPeerChannel﹕ Closing peer connection done.
    18:37:02.480  15909-17214/com.coms D/LooperExecutor﹕ Looper thread finished.
    18:37:02.480  15909-17214/com.coms D/RTCClient.QBPeerChannel﹕ PeerChannel succesfulle stoped
    18:37:02.480  15909-17214/com.coms D/RTCClient.QBPeerChannel﹕ Call method onChannelConnectionClosed on PeerChannel callback
    18:37:02.480  15909-17214/com.coms D/RTCClient.QBRTCSession﹕ onChannelConnectionClosed add in executor queue
    18:37:02.481  15909-17214/com.coms D/LooperExecutor﹕ Request Looper execute.
    18:37:02.481  15909-17214/com.coms D/LooperExecutor﹕ POST.Run on thread:1250
    18:37:02.481  15909-17214/com.coms D/RTCClient.QBPeerChannel.Observer:﹕ onIceConnectionChange
    18:37:02.481  15909-17214/com.coms D/RTCClient.QBPeerChannel.Observer:﹕ IceConnectionState: CLOSED
    18:37:02.481  15909-17214/com.coms D/RTCClient.QBPeerChannel﹕ onChannelConnectionClosed called on QBRTCSession{sessionDescription=QBRTCSessionDescription{sessionID='1437528984265', callerID='4308476', opponents=[4268341], conferenceType=QBConferenceType{value='1'}, userInfo={}}, getMediaStreamManager=com.quickblox.videochat.webrtc.QBMediaStreamManager@2fc617b, channels={4308476=com.quickblox.videochat.webrtc.QBPeerChannel@188f6926}, signalChannel=com.quickblox.videochat.webrtc.QBSignalChannel@b4b2b98, chatCallbackList=[com.quickblox.videochat.webrtc.QBRTCClient$SessionClosedListener@24140113, com.coms.service.QuickBloxService@2039de4e], audioEnabled=false, videoEnabled=false, state=QB_RTC_SESSION_ACTIVE, isNeedClose=false}
    18:37:02.481  15909-17214/com.coms D/RTCClient.QBRTCSession﹕ onChannelConnectionClosed add in executor queue
    18:37:02.481  15909-17214/com.coms D/LooperExecutor﹕ Request Looper execute.
    18:37:02.481  15909-17214/com.coms D/LooperExecutor﹕ POST.Run on thread:1250
    18:37:02.482  15909-16198/com.coms D/RTCClient.QBRTCSession﹕ Srat process onChannelConnectionClosed
    18:37:02.483  15909-16198/com.coms D/RTCClient.QBRTCSession﹕ Check is session need close
    18:37:02.483  15909-16198/com.coms D/RTCClient.QBRTCSession﹕ Session isNeedToClose true
    18:37:02.484  15909-16198/com.coms D/LooperExecutor﹕ Request Looper execute.
    18:37:02.484  15909-16198/com.coms D/RTCClient.QBRTCSession﹕ Start session close.
    18:37:02.484  15909-16198/com.coms D/RTCClient.QBRTCSession﹕ Set session 1437528984265 with state QB_RTC_SESSION_ACTIVE to CLOSE
    18:37:02.484  15909-16198/com.coms D/RTCClient.QBRTCSession﹕ Closing mediaStreamManager.
    18:37:02.484  15909-16198/com.coms D/RTCClient.QBMediaStrMgr﹕ Video source start dispose
    18:37:02.484  15909-16198/com.coms D/RTCClient.QBMediaStrMgr﹕ Video source is org.webrtc.VideoSource@3bd13fd2
    18:37:02.491  15909-16198/com.coms D/RTCClient.QBMediaStrMgr﹕ Video source state is LIVE
    18:37:02.492  15909-17205/com.coms D/VideoCapturerAndroid﹕ stopCapture
    18:37:02.493  15909-17284/com.coms D/VideoCapturerAndroid﹕ stopCaptureOnCameraThread
    18:37:02.493  15909-17284/com.coms D/VideoCapturerAndroid﹕ Stop preview.
    18:37:03.055  15909-17284/com.coms D/VideoCapturerAndroid﹕ stopReturnBuffersToCamera called. All buffers have been returned.
    18:37:03.055  15909-17284/com.coms D/Camera﹕ app passed NULL surface
    18:37:03.056  15909-17284/com.coms D/VideoCapturerAndroid﹕ Release camera.
    18:37:03.057  15909-15925/com.coms W/Camera-JNI﹕ callback on dead camera object
    18:37:03.057  15909-15925/com.coms W/Camera-JNI﹕ callback on dead camera object
    18:37:03.604  15909-17205/com.coms D/VideoCapturerAndroid﹕ stopCapture done
    18:37:03.613  15909-16198/com.coms D/RTCClient.QBMediaStrMgr﹕ Video source disposed
    18:37:03.613  15909-16198/com.coms D/RTCClient.QBMediaStrMgr﹕ Audio manager start close
    18:37:03.613  15909-16198/com.coms D/AppRTCAudioManager﹕ closePeerConnection
    18:37:03.624  15909-16198/com.coms D/RTCClient.QBMediaStrMgr﹕ Audio manager closed
    18:37:03.624  15909-16198/com.coms D/RTCClient.QBRTCSession﹕ Notify sesions callbacks in count of:2
    18:37:03.624  15909-16198/com.coms D/RTCClient.QBRTCSession﹕ Notify sesions callback: com.quickblox.videochat.webrtc.QBRTCClient$SessionClosedListener@24140113
    18:37:03.624  15909-16198/com.coms D/RTCClient﹕ Closing peer connection factory.
    18:37:03.625  15909-17205/com.coms D/OpenSLESPlayer﹕ Terminate@[tid=17205]
    18:37:03.625  15909-17205/com.coms D/OpenSLESPlayer﹕ StopPlayout@[tid=17205]
    18:37:03.625  15909-17205/com.coms D/AudioRecordJni﹕ Terminate@[tid=17205]
    18:37:03.625  15909-17205/com.coms D/AudioRecordJni﹕ StopRecording@[tid=17205]
    18:37:03.625  15909-17205/com.coms D/AudioManager﹕ Close@[tid=17205]
    18:37:03.626  15909-17205/com.coms D/WebRtcAudioManager﹕ dispose@[name=Thread-1251, id=1251]
    18:37:03.626  15909-17205/com.coms D/AudioRecordJni﹕ ~dtor@[tid=17205]
    18:37:03.626  15909-17205/com.coms D/AudioRecordJni﹕ Terminate@[tid=17205]
    18:37:03.626  15909-17205/com.coms D/AudioRecordJni﹕ StopRecording@[tid=17205]
    18:37:03.626  15909-17205/com.coms D/JVM﹕ GlobalRef::dtor@[tid=17205]
    18:37:03.626  15909-17205/com.coms D/JVM﹕ NativeRegistration::dtor@[tid=17205]
    18:37:03.626  15909-17205/com.coms D/JVM﹕ JNIEnvironment::dtor@[tid=17205]
    18:37:03.626  15909-17205/com.coms D/JVM﹕ AttachCurrentThreadIfNeeded::dtor@[tid=17205]
    18:37:03.626  15909-17205/com.coms D/OpenSLESPlayer﹕ dtor@[tid=17205]
    18:37:03.626  15909-17205/com.coms D/OpenSLESPlayer﹕ Terminate@[tid=17205]
    18:37:03.626  15909-17205/com.coms D/OpenSLESPlayer﹕ StopPlayout@[tid=17205]
    18:37:03.626  15909-17205/com.coms D/OpenSLESPlayer﹕ DestroyAudioPlayer
    18:37:03.626  15909-17205/com.coms D/OpenSLESPlayer﹕ DestroyMix
    18:37:03.626  15909-17205/com.coms D/OpenSLESPlayer﹕ DestroyEngine
    18:37:03.626  15909-17205/com.coms D/AudioManager﹕ ~dtor@[tid=17205]
    18:37:03.626  15909-17205/com.coms D/AudioManager﹕ Close@[tid=17205]
    18:37:03.626  15909-17205/com.coms D/AudioManager﹕ JavaAudioManager::dtor@[tid=17205]
    18:37:03.626  15909-17205/com.coms D/JVM﹕ GlobalRef::dtor@[tid=17205]
    18:37:03.626  15909-17205/com.coms D/JVM﹕ NativeRegistration::dtor@[tid=17205]
    18:37:03.626  15909-17205/com.coms D/JVM﹕ JNIEnvironment::dtor@[tid=17205]
    18:37:03.626  15909-17205/com.coms D/JVM﹕ AttachCurrentThreadIfNeeded::dtor@[tid=17205]
    18:37:03.626  15909-17205/com.coms D/JVM﹕ Detaching thread from JVM
    18:37:03.640  15909-17206/com.coms W/art﹕ Native thread exiting without having called DetachCurrentThread (maybe it's going to use a pthread_key_create destructor?): Thread[28,tid=17206,Native,Thread*=0xa211c000,peer=0x12ea60a0,"signaling_threa - 17206"]
    18:37:03.641  15909-16198/com.coms D/RTCClient﹕ Closing session done.
    18:37:03.641  15909-16198/com.coms D/RTCClient.QBRTCSession﹕ Notify sesions callback: com.coms.service.QuickBloxService@2039de4e
    18:37:03.642  15909-16198/com.coms E/QuickBloxService﹕ onSessionClosed
    18:37:03.642  15909-16198/com.coms D/LooperExecutor﹕ EXECUTE.Run on thread:1250
    18:37:03.642  15909-16198/com.coms D/RTCClient.QBRTCSession﹕ Srat process onChannelConnectionClosed
    18:37:03.642  15909-16198/com.coms D/RTCClient.QBRTCSession﹕ Check is session need close
    18:37:03.642  15909-16198/com.coms D/RTCClient.QBRTCSession﹕ Session isNeedToClose true
    18:37:03.642  15909-16198/com.coms D/LooperExecutor﹕ Request Looper execute.
    18:37:03.642  15909-16198/com.coms D/RTCClient.QBRTCSession﹕ Start session close.
    18:37:03.642  15909-16198/com.coms D/RTCClient.QBRTCSession﹕ Closing mediaStreamManager.
    18:37:03.642  15909-16198/com.coms D/RTCClient.QBRTCSession﹕ Notify sesions callbacks in count of:2
    18:37:03.642  15909-16198/com.coms D/RTCClient.QBRTCSession﹕ Notify sesions callback: com.quickblox.videochat.webrtc.QBRTCClient$SessionClosedListener@24140113
    18:37:03.642  15909-16198/com.coms D/RTCClient﹕ Closing peer connection factory.
    18:37:03.642  15909-16198/com.coms D/RTCClient﹕ Nothing to close factory was null
    18:37:03.642  15909-16198/com.coms D/RTCClient.QBRTCSession﹕ Notify sesions callback: com.coms.service.QuickBloxService@2039de4e
    18:37:03.642  15909-16198/com.coms E/QuickBloxService﹕ onSessionClosed
    18:37:03.642  15909-16198/com.coms D/LooperExecutor﹕ EXECUTE.Run on thread:1250

(Chat Debug已打開)。 我認為事情在18:37:02.458出了問題,該日志中有一個“設置了錯誤的呼叫者ID”,而02.459的QBRTCSessionDescription具有一個空的callerID。 然后MsgProcessor給出了一個“通知停止呼叫”,這可能不好。

后來我掛斷了發送方,因為顯然沒有任何反應。

在我看來,QB會話和Chat會話都很好,並且RTC信號似乎可以正常工作(如果我將acceptCall替換為rejectCall,客戶端將立即掛斷),但該呼叫從未完全通過。

QuickBlox上的文檔並不十分出色,但是我所提供的代碼非常緊密地對其示例進行了建模。 如果日志中有線索,我無法理解。 有人有想法嗎 ??

TNX

今天有同樣的問題; 更新到最新的SDK之后。

您還需要從SDK更新jniLib,在我的情況下為libjingle_peerconnection_so

Sample-webrtc-android為Android SDK准備應用程序

您可能會在Quickblox文檔中找到此標題:添加信令管理器

如果將這樣的文件添加到您的項目中,請檢查此操作。

    QBChatService.getInstance().getVideoChatWebRTCSignalingManager().addSignalingManagerListener(new QBVideoChatSignalingManagerListener() 
{
    @Override
    public void signalingCreated(QBSignaling qbSignaling, boolean createdlocally) 
    {
         if (!createdlocally) 
         {
         rtcClient.addSignaling((QBWebRTCSignaling) qbSignaling);
         }
    }
});

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM