open-webrtc-toolkit / owt-client-android

Open WebRTC Toolkit client SDK for Android applications.
https://01.org/open-webrtc-toolkit
Apache License 2.0
195 stars 96 forks source link

p2p: user2 publish twice failed with different stream #133

Open zhangyihui1 opened 5 years ago

zhangyihui1 commented 5 years ago

create two client in one device 1: user1 and user2 connect server 2: user1 and user2 addAllowRemoteId eah other 3: user1 and user2 publish camera video each other 4: user2 publish raw stream again to user1

expect: user2 publish raw stream again to user1 success actual : user2 publish raw stream again to user1 failure

android device nexus(LGE AOSP android 5.1.1)

log: 07-12 11:34:12.178 22858-22917/owt.test.p2p.apitest I/org.webrtc.Logging: CameraStatistics: Camera fps: 19. 07-12 11:34:12.205 22858-22955/owt.test.p2p.apitest D/OWT: onRenegotiationNeeded 07-12 11:34:12.206 22858-22955/owt.test.p2p.apitest D/OWT: onRenegotiationNeeded 07-12 11:34:12.208 22858-22944/owt.test.p2p.apitest D/OWT: create offer 07-12 11:34:12.232 22858-22955/owt.test.p2p.apitest D/OWT: onSignalingChange HAVE_LOCAL_OFFER 07-12 11:34:12.242 22858-22969/owt.test.p2p.apitest W/art: Native thread exiting without having called DetachCurrentThread (maybe it's going to use a pthread_key_create destructor?): Thread[46,tid=22969,Native,Thread=0xa2609800,peer=0x130b80a0,"DecodingThread - 22969"] 07-12 11:34:12.244 22858-22883/owt.test.p2p.apitest I/org.webrtc.Logging: HardwareVideoDecoder: release 07-12 11:34:12.333 22858-23041/owt.test.p2p.apitest I/org.webrtc.Logging: HardwareVideoDecoder: Releasing MediaCodec on output thread 07-12 11:34:12.369 190-15540/? I/OMX-VDEC-1080P: omx_vdec::component_deinit() complete 07-12 11:34:12.370 190-15540/? I/OMX-VDEC-1080P: Exit OMX vdec Destructor: fd=138 07-12 11:34:12.371 22858-23041/owt.test.p2p.apitest I/org.webrtc.Logging: HardwareVideoDecoder: Release on output thread done 07-12 11:34:12.372 22858-22883/owt.test.p2p.apitest I/org.webrtc.Logging: SurfaceTextureHelper: stopListening() 07-12 11:34:12.372 22858-22883/owt.test.p2p.apitest I/org.webrtc.Logging: SurfaceTextureHelper: dispose() 07-12 11:34:12.376 22858-22968/owt.test.p2p.apitest W/art: Native thread exiting without having called DetachCurrentThread (maybe it's going to use a pthread_key_create destructor?): Thread[50,tid=22968,Native,Thread=0xaedff400,peer=0x130d1100,"IncomingVideoSt - 22968"] 07-12 11:34:12.394 22858-22936/owt.test.p2p.apitest D/OWT: onSignalingChange HAVE_REMOTE_OFFER 07-12 11:34:12.417 22858-23057/owt.test.p2p.apitest I/org.webrtc.Logging: HardwareVideoEncoder: initEncode: 640 x 480. @ 300kbps. Fps: 60 Use surface mode: true 07-12 11:34:12.417 22858-22955/owt.test.p2p.apitest D/OWT: onSetSuccess 07-12 11:34:12.418 22858-22936/owt.test.p2p.apitest D/OWT: onSetSuccess 07-12 11:34:12.420 22858-22931/owt.test.p2p.apitest D/OWT: creating answer 07-12 11:34:12.426 22858-23071/owt.test.p2p.apitest I/OMXClient: Using client-side OMX mux. 07-12 11:34:12.429 190-18858/? I/OMX-VENC: Component_init : OMX.qcom.video.encoder.vp8 : return = 0x0 07-12 11:34:12.436 22858-23057/owt.test.p2p.apitest I/org.webrtc.Logging: HardwareVideoEncoder: Format: {mime=video/x-vnd.on2.vp8, frame-rate=60, color-format=2130708361, height=480, width=640, bitrate=300000, i-frame-interval=100, bitrate-mode=2} 07-12 11:34:12.440 22858-22936/owt.test.p2p.apitest D/OWT: onSignalingChange STABLE 07-12 11:34:12.442 190-15542/? E/OMX-VENC: set_parameter: metamode is valid for input port only 07-12 11:34:12.443 190-15542/? W/OMXNodeInstance: [14b:qcom.encoder.vp8] component does not support metadata mode; using fallback 07-12 11:34:12.443 22858-23071/owt.test.p2p.apitest E/ACodec: [OMX.qcom.video.encoder.vp8] storeMetaDataInBuffers (output) failed w/ err -1010 07-12 11:34:12.445 22858-23071/owt.test.p2p.apitest W/ACodec: do not know color format 0x7fa30c04 = 2141391876 07-12 11:34:12.450 22858-23071/owt.test.p2p.apitest W/ACodec: do not know color format 0x7f000789 = 2130708361 07-12 11:34:12.451 22858-22936/owt.test.p2p.apitest D/OWT: onSetSuccess 07-12 11:34:12.454 22858-23076/owt.test.p2p.apitest D/owt_test_util: onSuccess. 07-12 11:34:12.454 22858-22879/owt.test.p2p.apitest D/xxxxxxxxxxxxx: 22222222222222222: 07-12 11:34:12.456 190-15542/? E/OMXNodeInstance: getParameter(14b:qcom.encoder.vp8, ParamVideoAndroidVp8Encoder(0x6f600007)) ERROR: UnsupportedIndex(0x8000101a) 07-12 11:34:12.459 22858-23071/owt.test.p2p.apitest I/ACodec: setupVideoEncoder succeeded 07-12 11:34:12.460 22858-23071/owt.test.p2p.apitest W/ACodec: do not know color format 0x7f000789 = 2130708361 07-12 11:34:12.461 190-31586/? E/OMXNodeInstance: getParameter(14b:qcom.encoder.vp8, ParamVideoAndroidVp8Encoder(0x6f600007)) ERROR: UnsupportedIndex(0x8000101a) 07-12 11:34:12.491 190-18851/? E/OMX-VENC: Calling IOCTL set control for id=99200c, val=1 07-12 11:34:12.491 190-18851/? E/OMX-VENC: Success IOCTL set control for id=99200c, value=0 07-12 11:34:12.497 22858-22955/owt.test.p2p.apitest D/OWT: onSignalingChange STABLE 07-12 11:34:12.503 190-23072/? I/OMX-VENC: open Color conv for RGBA888 W: 640, H: 480 07-12 11:34:12.506 190-15540/? E/OMX-VENC: Calling IOCTL set control for id=99200c, val=1 07-12 11:34:12.506 190-18858/? E/OMX-VENC: Calling IOCTL set control for id=99200c, val=1 07-12 11:34:12.506 190-15540/? E/OMX-VENC: Success IOCTL set control for id=99200c, value=0 07-12 11:34:12.506 22858-22944/owt.test.p2p.apitest D/OWT: create offer 07-12 11:34:12.507 22858-22955/owt.test.p2p.apitest D/OWT: onSetSuccess 07-12 11:34:12.510 190-18858/? E/OMX-VENC: Success IOCTL set control for id=99200c, value=0 07-12 11:34:12.518 22858-22936/owt.test.p2p.apitest D/OWT: onRenegotiationNeeded 07-12 11:34:12.521 22858-23032/owt.test.p2p.apitest I/org.webrtc.Logging: HardwareVideoEncoder: Sync frame generated 07-12 11:34:12.522 190-1144/? E/OMX-VENC: VIDIOC_REQBUFS CAPTURE_MPLANE Failed 07-12 11:34:12.522 190-15539/? E/OMXNodeInstance: getParameter(14b:qcom.encoder.vp8, ParamVideoAndroidVp8Encoder(0x6f600007)) ERROR: UnsupportedIndex(0x8000101a) 07-12 11:34:12.526 22858-23081/owt.test.p2p.apitest I/org.webrtc.Logging: HardwareVideoEncoder: Sync frame generated 07-12 11:34:12.533 22858-22955/owt.test.p2p.apitest D/OWT: onSignalingChange HAVE_LOCAL_OFFER 07-12 11:34:12.537 22858-23082/owt.test.p2p.apitest I/org.webrtc.Logging: EglBase14: SDK version: 22. isEGL14Supported: true 07-12 11:34:12.546 22858-22955/owt.test.p2p.apitest D/OWT: onSetSuccess 07-12 11:34:12.549 22858-22936/owt.test.p2p.apitest D/OWT: onRenegotiationNeeded 07-12 11:34:12.550 22858-22931/owt.test.p2p.apitest D/OWT: create offer 07-12 11:34:12.563 22858-23066/owt.test.p2p.apitest I/org.webrtc.Logging: HardwareVideoDecoder: initDecodeInternal 07-12 11:34:12.563 22858-23082/owt.test.p2p.apitest I/org.webrtc.Logging: SurfaceTextureHelper: Setting listener to org.webrtc.HardwareVideoDecoder@1a8a7a7f 07-12 11:34:12.565 22858-23084/owt.test.p2p.apitest I/org.webrtc.Logging: EglBase14: SDK version: 22. isEGL14Supported: true 07-12 11:34:12.567 22858-23087/owt.test.p2p.apitest I/OMXClient: Using client-side OMX mux. 07-12 11:34:12.569 190-843/? I/OMX-VDEC-1080P: component_init: OMX.qcom.video.decoder.vp8 : fd=168 07-12 11:34:12.569 190-843/? I/OMX-VDEC-1080P: Capabilities: driver_name = msm_vidc_driver, card = msm_vdec_8974, bus_info = , version = 1, capabilities = 4003000 07-12 11:34:12.569 22858-22936/owt.test.p2p.apitest D/OWT: onSignalingChange HAVE_REMOTE_OFFER 07-12 11:34:12.574 190-843/? I/OMX-VDEC-1080P: omx_vdec::component_init() success : fd=168 07-12 11:34:12.578 22858-22936/owt.test.p2p.apitest D/OWT: onSetSuccess 07-12 11:34:12.585 22858-23068/owt.test.p2p.apitest I/org.webrtc.Logging: HardwareVideoDecoder: initDecodeInternal 07-12 11:34:12.586 22858-23084/owt.test.p2p.apitest I/org.webrtc.Logging: SurfaceTextureHelper: Setting listener to org.webrtc.HardwareVideoDecoder@9d11c4e 07-12 11:34:12.586 22858-22931/owt.test.p2p.apitest D/OWT: creating answer 07-12 11:34:12.589 190-809/? E/OMX-VDEC-1080P: get_parameter: unknown param 6f600007 07-12 11:34:12.589 190-809/? E/OMXNodeInstance: getParameter(14c:qcom.decoder.vp8, ParamVideoAndroidVp8Encoder(0x6f600007)) ERROR: UnsupportedIndex(0x8000101a) 07-12 11:34:12.592 22858-22936/owt.test.p2p.apitest D/owt_test_util: onFailure: Failed to set local offer sdp: Called in wrong state: kHaveRemoteOffer 07-12 11:34:12.593 22858-22879/owt.test.p2p.apitest W/owt_test_util: Renew a latch before its count reaches to zero. 07-12 11:34:12.593 22858-22879/owt.test.p2p.apitest I/org.webrtc.Logging: CameraCapturer: Stop capture 07-12 11:34:12.593 22858-22879/owt.test.p2p.apitest I/org.webrtc.Logging: CameraCapturer: Stop capture: Nulling session 07-12 11:34:12.594 22858-22879/owt.test.p2p.apitest I/org.webrtc.Logging: CameraCapturer: Stop capture done 07-12 11:34:12.594 22858-22917/owt.test.p2p.apitest I/org.webrtc.Logging: Camera1Session: Stop camera1 session on camera 1 07-12 11:34:12.594 22858-22879/owt.test.p2p.apitest I/org.webrtc.Logging: CameraCapturer: dispose 07-12 11:34:12.594 22858-22917/owt.test.p2p.apitest I/org.webrtc.Logging: Camera1Session: Stop internal 07-12 11:34:12.594 22858-22879/owt.test.p2p.apitest I/org.webrtc.Logging: CameraCapturer: Stop capture 07-12 11:34:12.594 22858-22917/owt.test.p2p.apitest I/org.webrtc.Logging: SurfaceTextureHelper: stopListening() 07-12 11:34:12.594 22858-22879/owt.test.p2p.apitest I/org.webrtc.Logging: CameraCapturer: Stop capture: No session open 07-12 11:34:12.594 22858-22879/owt.test.p2p.apitest I/org.webrtc.Logging: CameraCapturer: Stop capture done 07-12 11:34:12.594 190-22996/? D/QCamera3Stream: static void qcamera::QCamera3Stream::dataProcRoutine(void): Exit 07-12 11:34:12.594 202-22965/? I/mm-camera: mct_pipeline_process_set:command=8000009 07-12 11:34:12.594 202-22965/? I/mm-camera: mct_pipeline_process_set: stream_type = 1, streamid 2 07-12 11:34:12.594 202-22965/? I/mm-camera-sensor: module_sensor_module_process_event:2128 ide 20002 MCT_EVENT_CONTROL_STREAMOFF 07-12 11:34:12.594 202-22965/? I/mm-camera: port_isp_mct_ctrl_cmd: E, identity = 0x20002, STREAMOFF 07-12 11:34:12.594 202-22965/? I/mm-camera: cpp_module_handle_streamoff_event:2133, info: doing stream-off for identity 0x20002 07-12 11:34:12.594 202-22965/? D/mm-camera: module_faceproc_port_event_func:686] FD_STREAMOFF 0 20002 07-12 11:34:12.594 202-22965/? D/mm-camera-img: faceproc_comp_abort:608] state 2 07-12 11:34:12.595 202-22965/? D/mm-camera-img: Free Wmemory 0 07-12 11:34:12.595 202-22965/? D/mm-camera-img: faceproc_comp_abort:635] X 07-12 11:34:12.595 202-22965/? I/mm-camera: cpp_module_handle_streamoff_event:2187, info: stream-off done for identity 0x20002 07-12 11:34:12.595 202-22965/? I/mm-camera: isp_streamoff: E, session_id = 2, stream_id = 2, stream_type = 1 07-12 11:34:12.595 22858-22936/owt.test.p2p.apitest D/owt_test_util: onFailure: Failed to set local offer sdp: Called in wrong state: kHaveRemoteOffer