Getting empty audio incoming to c++ app - outgoing audio is good. Connecting to v3demo.mediasoup.org room. Need someone to help me with it. Can someone look?
Also some questions - do I need two peerconnections or only one? two transceivers - with recvonly and sendoly or one with sendrecv?
here is some logging from app
…
(room.cc:1115): Built remote SDP:
v=0
o=- 854651548 2 IN IP4 127.0.0.1
s=-
t=0 0
a=group:BUNDLE 0 1
a=msid-semantic: WMS *
a=ice-lite
m=audio 9 UDP/TLS/RTP/SAVPF 100
c=IN IP4 0.0.0.0
a=rtcp:9 IN IP4 0.0.0.0
a=ice-ufrag:nlzy3wx0ks7xo71moqcfw525dpsep8y3
a=ice-pwd:lrhghez2yih3mt3kms6tmbczrfacregp
a=fingerprint:sha-1 39:0C:EC:49:8E:57:2C:44:15:10:A6:D8:6C:67:C8:65:94:51:20:D3
a=setup:passive
a=mid:0
a=sendrecv
a=rtcp-mux
a=rtpmap:100 opus/48000/2
a=fmtp:100 minptime=10;useinbandfec=1;stereo=1;sprop-stereo=1;usedtx=1
a=ssrc:161522126 cname:mediasoup
a=ssrc:161522126 msid:mediasoup audiotrack
a=ssrc:161522126 mslabel:mediasoup
a=ssrc:161522126 label:audiotrack
m=application 9 UDP/DTLS/SCTP webrtc-datachannel
c=IN IP4 0.0.0.0
a=ice-ufrag:nlzy3wx0ks7xo71moqcfw525dpsep8y3
a=ice-pwd:lrhghez2yih3mt3kms6tmbczrfacregp
a=fingerprint:sha-1 39:0C:EC:49:8E:57:2C:44:15:10:A6:D8:6C:67:C8:65:94:51:20:D3
a=setup:passive
a=mid:1
a=sctp-port:5000
a=max-message-size:262144
(room.cc:1136): Setting remote description as answer on thread: 5ac0d030
(room.cc:1137): SDP length: 962
(webrtc_sdp.cc:3530): Ignored unknown ssrc-specific attribute: a=ssrc:161522126 mslabel:mediasoup
(webrtc_sdp.cc:3530): Ignored unknown ssrc-specific attribute: a=ssrc:161522126 label:audiotrack
(room.cc:1188): SetRemoteDescription called, waiting for callback
(dtls_srtp_transport.cc:66): Setting RTP Transport on 0 transport 5b011400
(p2p_transport_channel.cc:506): Received remote ICE parameters: ufrag=nlzy3wx0ks7xo71moqcfw525dpsep8y3, renomination disabled
(dtls_transport.cc:309): DtlsTransport[0|1|__]: Ignoring identical remote DTLS fingerprint
(peer_connection.cc:2200): Creating data channel, mid=1
(dcsctp_transport.cc:251): DcSctpTransport0->OpenStream(0, 256).
(sdp_offer_answer.cc:2999): Session: 7234856022747425714 Old state: have-local-offer New state: stable
(channel.cc:959): Setting remote voice description for {mid: 0, media_type: audio}
(webrtc_voice_engine.cc:1318): WebRtcVoiceMediaChannel::SetSenderParameters: {codecs: [AudioCodec[100:opus:48000:0:2]], extensions: , extmap-allow-mixed: false, max_bandwidth_bps: -1, mid: 0, options: AudioOptions {}, rtcp: {reduced_size:false, remote_estimate:false}}
(audio_send_stream.cc:214): AudioSendStream::ConfigureStream: {rtp: {ssrc: 673245825, mid: 0, extmap-allow-mixed: false, extensions: , c_name: s1v0Gg7zbJ2RvU5k}, rtcp_report_interval_ms: 5000, send_transport: (Transport), min_bitrate_bps: 64000, max_bitrate_bps: 64000, has audio_network_adaptor_config: false, has_dscp: false, send_codec_spec: {nack_enabled: false, enable_non_sender_rtt: false, cng_payload_type: , red_payload_type: , payload_type: 100, format: {name: opus, clockrate_hz: 48000, num_channels: 2, parameters: {minptime: 10, sprop-stereo: 1, stereo: 1, usedtx: 1, useinbandfec: 1}}}}
(webrtc_voice_engine.cc:1768): WebRtcVoiceMediaChannel::SetMaxSendBitrate.
(webrtc_voice_engine.cc:1295): Setting voice channel options: AudioOptions {}
(webrtc_voice_engine.cc:604): WebRtcVoiceEngine::ApplyOptions: AudioOptions {audio_jitter_buffer_max_packets: 200, audio_jitter_buffer_fast_accelerate: 0, audio_jitter_buffer_min_delay_ms: 0, }
(audio_processing_impl.cc:675): AudioProcessing::ApplyConfig: AudioProcessing::Config{ pipeline: { maximum_internal_processing_rate: 48000, multi_channel_render: 0, multi_channel_capture: 0 }, pre_amplifier: { enabled: 0, fixed_gain_factor: 1 },capture_level_adjustment: { enabled: 0, pre_gain_factor: 1, post_gain_factor: 1, analog_mic_gain_emulation: { enabled: 0, initial_level: 255 }}, high_pass_filter: { enabled: 1 }, echo_canceller: { enabled: 1, mobile_mode: 0, enforce_high_pass_filtering: 1 }, noise_suppression: { enabled: 1, level: High }, transient_suppression: { enabled: 0 }, gain_controller1: { enabled: 1, mode: AdaptiveAnalog, target_level_dbfs: 3, compression_gain_db: 9, enable_limiter: 1, analog_gain_controller { enabled: 1, startup_min_volume: 0, clipped_level_min: 70, enable_digital_adaptive: 1, clipped_level_step: 15, clipped_ratio_threshold: 0.1, clipped_wait_frames: 300, clipping_predictor: { enabled: 0, mode: 0, window_length: 5, reference_window_length: 5, reference_window_delay: 5, clipping_threshold: -1, crest_factor_margin: 3, use_predicted_step: 1 }}}, gain_controller2: { enabled: 0, fixed_digital: { gain_db: 0 }, adaptive_digital: { enabled: 0, headroom_db: 5, max_gain_db: 50, initial_gain_db: 15, max_gain_change_db_per_second: 6, max_output_noise_level_dbfs: -50 }, input_volume_control : { enabled 0}}
(webrtc_voice_engine.cc:1309): Set voice send channel options. Current options: AudioOptions {audio_jitter_buffer_max_packets: 200, audio_jitter_buffer_fast_accelerate: 0, audio_jitter_buffer_min_delay_ms: 0, }
(channel.cc:888): Changing voice state, recv=1 send=0 for {mid: 0, media_type: audio}
(dcsctp_transport.cc:200): DcSctpTransport0->Start(local=5000, remote=5000, max_message_size=262144)
(sdp_offer_answer.cc:2229): Processing the MSIDs for MID=0 (streams=[mediasoup]).
(rtp_transceiver.cc:504): Changing transceiver (MID=0) current direction from kSendRecv to kSendRecv.
(room.cc:1157): Remote description set successfully
(room.cc:1657): Adding audio sink to peer connection
(room.cc:1686): Adding audio sink to track: 506300d8-0049-40b6-bed4-32a5f025f2dd
(room.cc:1696): Adding ICE candidates from mediasoup
(room.cc:1167): Signaling stable, SDP negotiation complete
(room.cc:1170): Status: joined=true, producer_created=true
(room.cc:1179): SDP negotiation complete, producer already created or not joined yet
…
(basic_port_allocator.cc:1136): Port[5c00d200:0:1:0:relay:Net[en0:192.168.88.x/24:Unknown:id=1]]: Port encountered error while gathering candidates.
…
dtls_transport.cc:790): DtlsTransport[0|1|__]: DTLS handshake complete.
(jsep_transport_controller.cc:1288): Transport 0 writability changed to 1.
(peer_connection.cc:2506): Changing to ICE completed state because all transports are complete.
(dtls_srtp_transport.cc:212): Extracting keys from transport: 0
(peer_connection.cc:1982): Changing IceConnectionState 1 => 2
(room.cc:2080): ICE connection state changed to: 2
(call.cc:1260): UpdateAggregateNetworkState: aggregate_state change to up
(room.cc:2148): ICE state: Connected! Media should begin flowing
(peer_connection.cc:1982): Changing IceConnectionState 2 => 3
(room.cc:2080): ICE connection state changed to: 3
(peer_connection.cc:2001): Changing standardized IceConnectionState 2 => 3
(pacing_controller.cc:132): PacedSender resumed.
(rtp_transport_controller_send.cc:720): Creating fallback congestion controller
(alr_experiment.cc:69): Using ALR experiment settings: pacing factor: 1, max pacer queue length: 2875, ALR bandwidth usage percent: 80, ALR start budget level percent: 40, ALR end budget level percent: -60, ALR experiment group ID: 3
(trendline_estimator.cc:191): Using Trendline filter for delay change estimation with settings sort:false,cap:false,beginning_packets:7,end_packets:7,cap_uncertainty:0,window_size:20 and no network state predictor
(trendline_estimator.cc:191): Using Trendline filter for delay change estimation with settings sort:false,cap:false,beginning_packets:7,end_packets:7,cap_uncertainty:0,window_size:20 and no network state predictor
(aimd_rate_control.cc:87): Using aimd rate control with back off factor 0.85
(delay_based_bwe.cc:92): Initialized DelayBasedBwe with separate audio overuse detectionenabled:false,packet_threshold:10,time_threshold:1 s
(delay_based_bwe.cc:297): BWE Setting start bitrate to: 300 kbps
(bitrate_allocator.cc:504): Current BWE 300000
(bitrate_prober.cc:130): Probe cluster (bitrate_bps:min bytes:min packets): (900 kbps:1688:5, Inactive)
(bitrate_prober.cc:130): Probe cluster (bitrate_bps:min bytes:min packets): (1800 kbps:3375:5, Inactive)
(srtp_transport.cc:217): SRTP activated with negotiated parameters: send crypto_suite 8 recv crypto_suite 8
(channel.cc:583): Channel writable ({mid: 0, media_type: audio}) for the first time
(dcsctp_socket.cc:317): DcSctpTransport0: [CLOSED] Connecting. my_verification_tag=45992241, my_initial_tsn=4003747167
(webrtc_voice_engine.cc:604): WebRtcVoiceEngine::ApplyOptions: AudioOptions {audio_jitter_buffer_max_packets: 200, audio_jitter_buffer_fast_accelerate: 0, audio_jitter_buffer_min_delay_ms: 0, }
(audio_processing_impl.cc:675): AudioProcessing::ApplyConfig: AudioProcessing::Config{ pipeline: { maximum_internal_processing_rate: 48000, multi_channel_render: 0, multi_channel_capture: 0 }, pre_amplifier: { enabled: 0, fixed_gain_factor: 1 },capture_level_adjustment: { enabled: 0, pre_gain_factor: 1, post_gain_factor: 1, analog_mic_gain_emulation: { enabled: 0, initial_level: 255 }}, high_pass_filter: { enabled: 1 }, echo_canceller: { enabled: 1, mobile_mode: 0, enforce_high_pass_filtering: 1 }, noise_suppression: { enabled: 1, level: High }, transient_suppression: { enabled: 0 }, gain_controller1: { enabled: 1, mode: AdaptiveAnalog, target_level_dbfs: 3, compression_gain_db: 9, enable_limiter: 1, analog_gain_controller { enabled: 1, startup_min_volume: 0, clipped_level_min: 70, enable_digital_adaptive: 1, clipped_level_step: 15, clipped_ratio_threshold: 0.1, clipped_wait_frames: 300, clipping_predictor: { enabled: 0, mode: 0, window_length: 5, reference_window_length: 5, reference_window_delay: 5, clipping_threshold: -1, crest_factor_margin: 3, use_predicted_step: 1 }}}, gain_controller2: { enabled: 0, fixed_digital: { gain_db: 0 }, adaptive_digital: { enabled: 0, headroom_db: 5, max_gain_db: 50, initial_gain_db: 15, max_gain_change_db_per_second: 6, max_output_noise_level_dbfs: -50 }, input_volume_control : { enabled 0}}
(audio_device_impl.cc:760): RecordingIsInitialized
(audio_device_impl.cc:822): Recording
(audio_device_impl.cc:741): InitRecording
(audio_device_impl.cc:760): RecordingIsInitialized
(audio_device_mac.cc:1082): InitRecording
(audio_device_mac.cc:1786): Input device: Apple Inc. MacBook Pro Microphone
(audio_mixer_manager_mac.cc:199): SpeakerIsInitialized
(audio_device_buffer.cc:197): SetRecordingSampleRate(48000)
(audio_device_buffer.cc:217): SetRecordingChannels(1)
(audio_device_impl.cc:747): output: 0
(audio_send_stream.cc:339): AudioSendStream::Start: 673245825
(audio_device_impl.cc:822): Recording
(audio_device_impl.cc:741): InitRecording
(audio_device_impl.cc:760): RecordingIsInitialized
(audio_device_impl.cc:797): StartRecording
(audio_device_impl.cc:822): Recording
(audio_device_buffer.cc:133): StartRecording
(audio_device_mac.cc:1279): StartRecording
(dcsctp_transport.cc:565): DcSctpTransport0->OnConnected().
(basic_port_allocator.cc:973): Port[5ac27830:0:1:0:host:Net[en0:192.168.88.x/24:Unknown:id=1]]: Gathered candidate: Cand[:1652957042:1:udp:1686052607:5.34.178.x:54580:srflx:192.168.88.x:54580:q6Yq:C/RpcKSqrhh9DZRbRIQ2eOPL:1:50:0]
(basic_port_allocator.cc:978): Discarding candidate because port is already done gathering.
(basic_port_allocator.cc:1118): Port[5ac27830:0:1:0:host:Net[en0:192.168.88.x/24:Unknown:id=1]]: Port completed gathering candidates.
(audio_device_impl.cc:804): output: 0
(channel.cc:888): Changing voice state, recv=1 send=1 for {mid: 0, media_type: audio}
(audio_device_buffer.cc:262): Size of recording buffer: 480
(agc_manager_direct.cc:509): AgcManagerDirect::Initialize
(transparent_mode.cc:243): AEC3 Transparent Mode: Legacy
(echo_canceller3.cc:806): AEC3 created with sample rate: 48000 Hz, num render channels: 1, num capture channels: 1
(agc_manager_direct.cc:343): [agc] Initial GetMicVolume()=0
(agc_manager_direct.cc:347): [agc] Initial volume too low, raising to 12
(rtp_sender_audio.cc:270): First audio RTP packet sent to pacer
(bitrate_prober.cc:155): Probe delay too high (next_ms:44046890, now_ms: 44046906), discarding probe cluster.
(bitrate_prober.cc:155): Probe delay too high (next_ms:44046907, now_ms: 44046926), discarding probe cluster.
(msoup.cc:623): 16-bit length read: 163 (bytes: 0 a3)
(room.cc:308): Handling notification: producerScore
(room.cc:351): producerScore for ID 948a0fde-f3dc-4dc8-9f36-a1e0958623c3
(room.cc:308): Handling notification: activeSpeaker
(room.cc:320): Active speaker: 1drwonlm
(room.cc:31): Audio format: bits=16 rate=48000 channels=1 frames=480 buffer_size=960
(room.cc:46): First few samples: 0 0 0 0 0 0 0 0 0 0
(room.cc:31): Audio format: bits=16 rate=48000 channels=1 frames=480 buffer_size=960
(room.cc:46): First few samples: 0 0 0 0 0 0 0 0 0 0