Bug 26540

Summary: Problems with video transmitting through libnice.
Product: nice Reporter: sarg <sarg>
Component: GeneralAssignee: Youness Alaoui <youness.alaoui>
Status: RESOLVED WORKSFORME QA Contact:
Severity: normal    
Priority: medium CC: olivier.crete, youness.alaoui
Version: unspecified   
Hardware: x86 (IA32)   
OS: Linux (All)   
Whiteboard:
i915 platform: i915 features:
Attachments: GST_DEBUG
make check
pidgin-debug.log
gdb-logs
wireshark and pidgin logs

Description sarg 2010-02-12 01:24:32 UTC
Created attachment 33243 [details]
GST_DEBUG

I am trying to establish voice/video session in pidgin behind address and port-restricted nat (freebsd+pf) with upnp.

So, only voice chat works carefully, and problem starts when video or voice/video chat is called.

I had checked that libnice makes port-redirection using upnp. Then i ran pidgin with NICE_DEBUG=all and -d option. I found, that 

(Pidgin:3703): libnice-DEBUG: Agent 0x883df30 : changing conncheck state to COMPLETED.
(10:19:00) media: farsight-component-state-changed: component: 1 state: FAILED
(10:19:00) media: farsight-error: 108: Could not establish connection
(10:19:00) media: farsight-component-state-changed: component: 2 state: FAILED

Then, i tried to run pidgin with GST_DEBUG=*:5 and got a bunch of log. 

Next i ran make check, to determine that farsight works properly.
And got 4 of 11 tests failed.

So, i'm attaching two logs, and may do all checks you want on my side.
Comment 1 sarg 2010-02-12 01:25:04 UTC
Created attachment 33244 [details]
make check
Comment 2 Olivier Crête 2010-02-12 08:21:10 UTC
Can you go to tests/checks and run
GST_CHECKS=test_nicetransmitter_with_filter  make transmitter/nice.gdb

and get the backtrace once it crashes. The fsrtpcodecs tests failures should have been fixed in git master. And the msn one is because you're missing the mimic plugin from gst-plugins-bad.

Can you attach the whole log from running pidgin with NICE_DEBUG=all too ?
Comment 3 sarg 2010-02-12 12:35:54 UTC
(In reply to comment #2)
> Can you go to tests/checks and run
> GST_CHECKS=test_nicetransmitter_with_filter  make transmitter/nice.gdb
gdb-logs

> and get the backtrace once it crashes. The fsrtpcodecs tests failures should
> have been fixed in git master. And the msn one is because you're missing the
> mimic plugin from gst-plugins-bad.
ok
 
> Can you attach the whole log from running pidgin with NICE_DEBUG=all too ?
> 
pidgin-debug.log
Comment 4 sarg 2010-02-12 12:37:11 UTC
Created attachment 33259 [details]
pidgin-debug.log
Comment 5 sarg 2010-02-12 12:38:24 UTC
Created attachment 33260 [details]
gdb-logs

seems, that there is bug in threading
test sometimes works, sometimes not, and often hangs gdb
Comment 6 Olivier Crête 2010-02-13 06:01:14 UTC
Don't worry about the crash, it's a known bug in gobject (property notications are not thread-safe...).

The connectivity problem sounds like a libnice problem, so forwarding it that way.
Comment 7 sarg 2010-02-14 06:05:22 UTC
(In reply to comment #6)
> Don't worry about the crash, it's a known bug in gobject (property notications
> are not thread-safe...).
seems to be truth, because not only transmitter/nice fails with that error 

> 
> The connectivity problem sounds like a libnice problem, so forwarding it that
> way.
maybe, but 'make check' in libnice sources executes correctly

so, what next? 

Comment 8 Youness Alaoui 2010-02-15 12:23:58 UTC
In the log I see : 
"Integrity check failed" and 
"Incorrectly multiplexed STUN message ignored."
Could you provide us with a wireshark dump *and* a NICE_DEBUG=all log of the same session as the wireshark dump ? This way I can figure out why the STUN message is wrong...
Also, what are  you using on the other side? is it also pidgin with libnice ?
Comment 9 sarg 2010-02-15 13:26:14 UTC
(In reply to comment #8)
> In the log I see : 
> "Integrity check failed" and 
> "Incorrectly multiplexed STUN message ignored."
> Could you provide us with a wireshark dump *and* a NICE_DEBUG=all log of the
> same session as the wireshark dump ? This way I can figure out why the STUN
> message is wrong...
logs.tar.bz2

> Also, what are  you using on the other side? is it also pidgin with libnice ?
> 
this time, on other side is echo bot, using
Telepathy components installed are: libgstfarsight0.10-0-0.0.17-2 libtelepathy-farsight0-0.0.13-1 libtelepathy-glib0-0.10.0-1 python-farsight-0.0.17-2 python-telepathy-0.15.15-1 python-tpfarsight-0.0.13-1 telepathy-gabble-0.8.9-1 

but the same situation is with pidgin+libnice on other side.
i tested it before
Comment 10 sarg 2010-02-15 13:27:43 UTC
Created attachment 33323 [details]
wireshark and pidgin logs

wireshark log, pidgin log
Comment 11 sarg 2010-08-20 13:06:57 UTC
Today i installed ubuntu server with iptables NAT.
Now video chats working properly.
Seems, that problem caused by freebsd's pf.
Comment 12 Olivier Crête 2012-11-23 09:37:25 UTC
I assume that your pf configuration was too restrictive.

Use of freedesktop.org services, including Bugzilla, is subject to our Code of Conduct. How we collect and use information is described in our Privacy Policy.