Comments (4)
thanks for reporting, can you re-test and include the following:
- output from /sbin/ifconfig
- enable "ice_debug yes" in ~/.baresip/config and full log
maybe there is something wrong with net_if_apply()..
from baresip.
Below log output and ip addr
and ifconfig
output, notice that eth1 in down state.
baresip v0.4.13 Copyright (C) 2010 - 2015 Alfred E. Heggestad et al.
Local network address: IPv4=eth0:192.168.0.23
aucodec: PCMU/8000/1
aucodec: PCMA/8000/1
aufilt: vumeter
dl: mod: /usr/local/lib/baresip/modules/alsa.so (/usr/local/lib/baresip/modules/alsa.so: cannot open shared object file: No such file or directory)
module alsa.so: No such file or directory
medianat: stun
medianat: turn
medianat: ice
[email protected]: Using medianat `ice'
Populated 1 account
Populated 4 contacts
Populated 2 audio codecs
Populated 1 audio filter
Populated 0 video codecs
Populated 0 video filters
baresip is ready.
[email protected]: {0/TCP/v4} 200 OK () [1 binding]
All 1 useragent registered successfully! (394 ms)
> 50
call: connecting to 'sip:[email protected];transport=tcp'..
ice: audio: Default local candidates: 128.72.212.224:33478 / 128.72.212.224:33479
call: SIP Progress: 100 Trying (/)
call: SIP Progress: 180 Ringing (/)
{ audio.1} Set default remote candidate: srflx:128.72.212.224:58846
{ audio.2} Set default remote candidate: srflx:128.72.212.224:58847
chklist: audio: pruned candidate pairs: 12
{ audio.1} host <---> host FSM: Frozen ===> Waiting
{ audio.1} host <---> host FSM: Frozen ===> Waiting
{ audio.1} host <---> host FSM: Frozen ===> Waiting
{ audio.1} host <---> host FSM: Frozen ===> Waiting
{ audio.1} host <---> srflx FSM: Frozen ===> Waiting
{ audio.1} host <---> srflx FSM: Frozen ===> Waiting
{ audio.1} host <---> srflx FSM: Frozen ===> Waiting
{ audio.1} host <---> srflx FSM: Frozen ===> Waiting
{ audio.1} host <---> relay FSM: Frozen ===> Waiting
{ audio.1} host <---> relay FSM: Frozen ===> Waiting
{ audio.1} host <---> relay FSM: Frozen ===> Waiting
{ audio.1} host <---> relay FSM: Frozen ===> Waiting
{ audio. } starting connectivity checks with 24 candidate pairs
audio: Set audio decoder: PCMA 8000Hz 1ch
audio: Set audio encoder: PCMA 8000Hz 1ch
audio tx pipeline: src ---> vumeter ---> PCMA
audio rx pipeline: play <--- vumeter <--- PCMA
[email protected]: Call established: sip:[email protected];transport=tcp
{ audio.1} host <---> host FSM: Waiting ===> InProgress
{ audio.1} Tx eth1:host:10.10.10.10:33478 ---> host:192.168.0.19:58846 (InProgress)
{ audio.1} Rx Binding Request from 192.168.0.19:58846 via Socket (candpair=InProgress)
{ audio.1} Rx eth1:host:10.10.10.10:33478 <--- host:192.168.0.19:58846 '0 OK'
{ audio.1} New local candidate for mapped 192.168.0.23:33478
{ audio.1} host <---> host FSM: InProgress ===> Succeeded
{ audio.1} host <---> host FSM: Waiting ===> InProgress
{ audio.1} Tx eth0:host:192.168.0.23:33478 ---> host:192.168.0.19:58846 (InProgress)
{ audio.1} Rx Binding Request from 192.168.0.19:58846 via Socket (candpair=InProgress)
{ audio.1} Rx eth0:host:192.168.0.23:33478 <--- host:192.168.0.19:58846 '0 OK'
{ audio.1} host <---> host FSM: InProgress ===> Succeeded
{ audio.1} host <---> host FSM: Waiting ===> InProgress
{ audio.1} Tx eth1:host:10.10.10.10:33478 ---> host:10.184.253.53:58846 (InProgress)
{ audio.2} host <---> host FSM: Frozen ===> InProgress
{ audio.2} Tx eth1:host:10.10.10.10:33479 ---> host:192.168.0.19:58847 (InProgress) [Trigged]
{ audio.2} Rx Binding Request from 192.168.0.19:58847 via Socket (candpair=InProgress)
{ audio.2} Rx eth1:host:10.10.10.10:33479 <--- host:192.168.0.19:58847 '0 OK'
{ audio.2} New local candidate for mapped 192.168.0.23:33479
{ audio.2} host <---> host FSM: InProgress ===> Succeeded
{ audio.1} host <---> host FSM: Waiting ===> InProgress
{ audio.1} Tx eth0:host:192.168.0.23:33478 ---> host:10.184.253.53:58846 (InProgress)
{ audio.1} Rx eth1:host:10.10.10.10:33478 <--- host:10.184.253.53:58846 '0 ' (Connection timed out)
{ audio.1} host <---> host FSM: InProgress ===> Failed
{ audio.1} host <---> srflx FSM: Waiting ===> InProgress
{ audio.1} Tx eth1:host:10.10.10.10:33478 ---> srflx:128.72.212.224:58846 (InProgress)
{ audio.1} Rx eth0:host:192.168.0.23:33478 <--- host:10.184.253.53:58846 '0 ' (Connection timed out)
{ audio.1} host <---> host FSM: InProgress ===> Failed
{ audio.1} host <---> srflx FSM: Waiting ===> InProgress
{ audio.1} Tx eth0:host:192.168.0.23:33478 ---> srflx:128.72.212.224:58846 (InProgress)
{ audio.1} Rx eth1:host:10.10.10.10:33478 <--- srflx:128.72.212.224:58846 '0 ' (Connection timed out)
{ audio.1} host <---> srflx FSM: InProgress ===> Failed
{ audio.1} host <---> srflx FSM: Waiting ===> InProgress
{ audio.1} Tx eth1:host:10.10.10.10:33478 ---> srflx:83.149.9.138:8931 (InProgress)
{ audio.1} Rx eth0:host:192.168.0.23:33478 <--- srflx:128.72.212.224:58846 '0 ' (Connection timed out)
{ audio.1} host <---> srflx FSM: InProgress ===> Failed
{ audio.1} host <---> srflx FSM: Waiting ===> InProgress
{ audio.1} Tx eth0:host:192.168.0.23:33478 ---> srflx:83.149.9.138:8931 (InProgress)
{ audio.1} Rx eth1:host:10.10.10.10:33478 <--- srflx:83.149.9.138:8931 '0 OK' ]
{ audio.1} New local candidate for mapped 128.72.212.224:33478
{ audio.1} host <---> srflx FSM: InProgress ===> Succeeded
{ audio.1} host <---> relay FSM: Waiting ===> InProgress
{ audio.1} Tx eth1:host:10.10.10.10:33478 ---> relay:95.215.44.62:65434 (InProgress)
{ audio.1} Rx Binding Request from 83.149.9.138:8931 via Socket (candpair=InProgress) ]
{ audio.1} Rx Binding Request from 83.149.9.138:8931 via Socket (candpair=InProgress) ]
{ audio.1} Rx eth0:host:192.168.0.23:33478 <--- srflx:83.149.9.138:8931 '0 OK' ]
{ audio.1} New local candidate for mapped 128.72.212.224:33478
{ audio.1} host <---> srflx FSM: InProgress ===> Succeeded
{ audio.1} host <---> relay FSM: Waiting ===> InProgress
{ audio.1} Tx eth0:host:192.168.0.23:33478 ---> relay:95.215.44.62:65434 (InProgress)
{ audio.1} Rx Binding Request from 83.149.9.138:8931 via Socket (candpair=Succeeded) ]
{ audio.1} Rx Binding Request from 83.149.9.138:8931 via Socket (candpair=Succeeded) ]
{ audio.1} Rx eth1:host:10.10.10.10:33478 <--- relay:95.215.44.62:65434 '0 ' (Connection timed out)
{ audio.1} host <---> relay FSM: InProgress ===> Failed
{ audio.1} host <---> relay FSM: Waiting ===> InProgress
{ audio.1} Tx eth1:host:10.10.10.10:33478 ---> relay:95.215.44.62:53813 (InProgress)
{ audio.1} Rx eth0:host:192.168.0.23:33478 <--- relay:95.215.44.62:65434 '0 ' (Connection timed out)
{ audio.1} host <---> relay FSM: InProgress ===> Failed
{ audio.1} host <---> relay FSM: Waiting ===> InProgress
{ audio.1} Tx eth0:host:192.168.0.23:33478 ---> relay:95.215.44.62:53813 (InProgress)
{ audio.1} Rx eth1:host:10.10.10.10:33478 <--- relay:95.215.44.62:53813 '0 ' (Connection timed out)
{ audio.1} host <---> relay FSM: InProgress ===> Failed
{ audio.2} host <---> host FSM: Frozen ===> InProgress
{ audio.2} Tx eth0:host:192.168.0.23:33479 ---> host:192.168.0.19:58847 (InProgress)
{ audio.2} Rx eth0:host:192.168.0.23:33479 <--- host:192.168.0.19:58847 '0 OK' ]
{ audio.2} host <---> host FSM: InProgress ===> Succeeded
{ audio.2} host <---> host FSM: Frozen ===> InProgress
{ audio.2} Tx eth1:host:10.10.10.10:33479 ---> host:10.184.253.53:58847 (InProgress)
{ audio.1} Rx eth0:host:192.168.0.23:33478 <--- relay:95.215.44.62:53813 '0 ' (Connection timed out)
{ audio.1} host <---> relay FSM: InProgress ===> Failed
{ audio.2} host <---> host FSM: Frozen ===> InProgress
{ audio.2} Tx eth0:host:192.168.0.23:33479 ---> host:10.184.253.53:58847 (InProgress)
{ audio.2} Rx eth1:host:10.10.10.10:33479 <--- host:10.184.253.53:58847 '0 ' (Connection timed out)
{ audio.2} host <---> host FSM: InProgress ===> Failed
{ audio.2} host <---> srflx FSM: Frozen ===> InProgress
{ audio.2} Tx eth1:host:10.10.10.10:33479 ---> srflx:128.72.212.224:58847 (InProgress)
{ audio.2} Rx eth0:host:192.168.0.23:33479 <--- host:10.184.253.53:58847 '0 ' (Connection timed out)
{ audio.2} host <---> host FSM: InProgress ===> Failed
{ audio.2} host <---> srflx FSM: Frozen ===> InProgress
{ audio.2} Tx eth0:host:192.168.0.23:33479 ---> srflx:128.72.212.224:58847 (InProgress)
{ audio.2} Rx eth1:host:10.10.10.10:33479 <--- srflx:128.72.212.224:58847 '0 ' (Connection timed out)
{ audio.2} host <---> srflx FSM: InProgress ===> Failed
{ audio.2} host <---> srflx FSM: Frozen ===> InProgress
{ audio.2} Tx eth1:host:10.10.10.10:33479 ---> srflx:83.149.9.138:5067 (InProgress)
{ audio.2} Rx eth0:host:192.168.0.23:33479 <--- srflx:128.72.212.224:58847 '0 ' (Connection timed out)
{ audio.2} host <---> srflx FSM: InProgress ===> Failed
{ audio.2} host <---> srflx FSM: Frozen ===> InProgress
{ audio.2} Tx eth0:host:192.168.0.23:33479 ---> srflx:83.149.9.138:5067 (InProgress)
{ audio.2} Rx eth1:host:10.10.10.10:33479 <--- srflx:83.149.9.138:5067 '0 OK' ]
{ audio.2} New local candidate for mapped 128.72.212.224:33479
{ audio.2} host <---> srflx FSM: InProgress ===> Succeeded
{ audio.2} host <---> relay FSM: Frozen ===> InProgress
{ audio.2} Tx eth1:host:10.10.10.10:33479 ---> relay:95.215.44.62:55533 (InProgress)
{ audio.2} Rx Binding Request from 83.149.9.138:5067 via Socket (candpair=InProgress) ]
{ audio.2} Rx eth0:host:192.168.0.23:33479 <--- srflx:83.149.9.138:5067 '0 OK' ]
{ audio.2} New local candidate for mapped 128.72.212.224:33479
{ audio.2} host <---> srflx FSM: InProgress ===> Succeeded
{ audio.2} host <---> relay FSM: Frozen ===> InProgress
{ audio.2} Tx eth0:host:192.168.0.23:33479 ---> relay:95.215.44.62:55533 (InProgress)
{ audio.2} Rx Binding Request from 83.149.9.138:5067 via Socket (candpair=Succeeded) ]
{ audio.2} Rx Binding Request from 83.149.9.138:5067 via Socket (candpair=Succeeded) ]
{ audio.2} Rx Binding Request from 83.149.9.138:5067 via Socket (candpair=Succeeded) ]
{ audio.2} Rx Binding Request from 83.149.9.138:5067 via Socket (candpair=Succeeded) ]
{ audio.2} Rx eth1:host:10.10.10.10:33479 <--- relay:95.215.44.62:55533 '0 ' (Connection timed out)
{ audio.2} host <---> relay FSM: InProgress ===> Failed
{ audio.2} host <---> relay FSM: Frozen ===> InProgress
{ audio.2} Tx eth1:host:10.10.10.10:33479 ---> relay:95.215.44.62:50188 (InProgress)
{ audio.2} Rx eth0:host:192.168.0.23:33479 <--- relay:95.215.44.62:55533 '0 ' (Connection timed out)
{ audio.2} host <---> relay FSM: InProgress ===> Failed
{ audio.2} host <---> relay FSM: Frozen ===> InProgress
{ audio.2} Tx eth0:host:192.168.0.23:33479 ---> relay:95.215.44.62:50188 (InProgress)
{ audio.2} Rx eth1:host:10.10.10.10:33479 <--- relay:95.215.44.62:50188 '0 ' (Connection timed out)
{ audio.2} host <---> relay FSM: InProgress ===> Failed
{ audio.2} Rx eth0:host:192.168.0.23:33479 <--- relay:95.215.44.62:50188 '0 ' (Connection timed out)
{ audio.2} host <---> relay FSM: InProgress ===> Failed
{ audio.1} Tx eth0:host:192.168.0.23:33478 ---> host:192.168.0.19:58846 (Succeeded) [USE] [Trigged]
{ audio.2} Tx eth0:host:192.168.0.23:33479 ---> host:192.168.0.19:58847 (Succeeded) [USE] [Trigged]
ice: audio: connectivity check is complete (update=1)
ice: audio: sending Re-INVITE with updated default candidates
call: medianat established -- sending Re-INVITE
{ audio.1} Rx eth0:host:192.168.0.23:33478 <--- host:192.168.0.19:58846 '0 OK' ]
{ audio.2} Rx eth0:host:192.168.0.23:33479 <--- host:192.168.0.19:58847 '0 OK'
{ audio.1} Set default remote candidate: host:192.168.0.19:58846 [ ]
{ audio.2} Set default remote candidate: host:192.168.0.19:58847
call: terminate call '042f2c6e5eca638a' with sip:[email protected];transport=tcp [ ]
sip:[email protected]: Call with sip:[email protected];transport=tcp terminated (duration: 1 min 10 secs)
Quit
Stopping 1 useragent..
shopik@shopik-virtual-machine:~$ ip addr
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default
link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
inet 127.0.0.1/8 scope host lo
valid_lft forever preferred_lft forever
inet6 ::1/128 scope host
valid_lft forever preferred_lft forever
2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP group default qlen 1000
link/ether 00:0c:29:bb:4d:0c brd ff:ff:ff:ff:ff:ff
inet 192.168.0.23/24 brd 192.168.0.255 scope global dynamic eth0
valid_lft 86083sec preferred_lft 86083sec
inet6 fe80::20c:29ff:febb:4d0c/64 scope link
valid_lft forever preferred_lft forever
3: eth1: <NO-CARRIER,BROADCAST,MULTICAST,UP> mtu 1500 qdisc pfifo_fast state DOWN group default qlen 1000
link/ether 00:0c:29:bb:4d:16 brd ff:ff:ff:ff:ff:ff
inet 10.10.10.10/24 brd 10.10.10.255 scope global eth1
valid_lft forever preferred_lft forever
shopik@shopik-virtual-machine:~$ sudo ifconfig
eth0 Link encap:Ethernet HWaddr 00:0c:29:bb:4d:0c
inet addr:192.168.0.23 Bcast:192.168.0.255 Mask:255.255.255.0
inet6 addr: fe80::20c:29ff:febb:4d0c/64 Scope:Link
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:4681 errors:0 dropped:0 overruns:0 frame:0
TX packets:2032 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:839768 (839.7 KB) TX bytes:269329 (269.3 KB)
eth1 Link encap:Ethernet HWaddr 00:0c:29:bb:4d:16
inet addr:10.10.10.10 Bcast:10.10.10.255 Mask:255.255.255.0
UP BROADCAST MULTICAST MTU:1500 Metric:1
RX packets:0 errors:0 dropped:0 overruns:0 frame:0
TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:0 (0.0 B) TX bytes:0 (0.0 B)
Interrupt:16 Base address:0x2000
lo Link encap:Local Loopback
inet addr:127.0.0.1 Mask:255.0.0.0
inet6 addr: ::1/128 Scope:Host
UP LOOPBACK RUNNING MTU:65536 Metric:1
RX packets:350 errors:0 dropped:0 overruns:0 frame:0
TX packets:350 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:0
RX bytes:31005 (31.0 KB) TX bytes:31005 (31.0 KB)
from baresip.
thanks for the input
at the moment I am not planning to make any changes here. it would be nice to filter
out interfaces that are "down" but ICE itself will take care of checking this.
perhaps later add a new function to libre to check if an interface is up/down?
from baresip.
Well I think problem that ICE doesn't try detect peers in parallel, thus several interfaces make not so useful you have to wait about 30 second before you can hear anything.
Even with 1 interface its serial detection when there 3 candidates (host, srflx, turn) it takes about ~20 second
from baresip.
Related Issues (20)
- aufile: ITU G.711 mu-law with 8000 sample rate are played much too fast HOT 5
- calls from -e are starting before register HOT 7
- gst module not found in debian 11 HOT 4
- Assertion failure in 'echo' module. HOT 2
- webrtc demo cant display video on chrome 122.0.6261.58 version HOT 5
- Writing custom modules to interface with baresip?
- Can not receive method NOTIFY when connecting to wss server HOT 2
- Multiple outgoing calls, only sending audio when one is accepted HOT 8
- May I ask how to set the sampling rate of saved audio files to 16000, with a default of 8000
- answered call has video even when not asked for HOT 18
- Thread Sanitizer warning for `test_call_tcp` for the stream->tx object HOT 2
- inreq_allowed is missing from Wiki and if not allowed produced incorrect negative response HOT 10
- Baresip gets stuck related to "audio: rtp timestamp wraps backwards" since 3.9.0 HOT 6
- Add ;inreq_allowed to addr-params
- Restore backwards compatibility by accepting MESSAGE requests by default
- netroam module HOT 2
- How do I get my client to support TLS 1.0? HOT 1
- ci: broken sanitizers
- support webrtc data-channel
- test: test_message failed but is marked as success HOT 2
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from baresip.