Bug 138606

Summary: [GStreamer] Playback doesn't work in Vimeo
Product: WebKit Reporter: Andres Gomez Garcia <agomez>
Component: WebKitGTKAssignee: Nobody <webkit-unassigned>
Status: RESOLVED DUPLICATE    
Severity: Normal CC: cgarcia, pnormand
Priority: P2    
Version: 528+ (Nightly build)   
Hardware: Unspecified   
OS: Unspecified   

Description Andres Gomez Garcia 2014-11-11 01:13:24 PST
Just open any Vimeo video for playback in GTK+'s MiniBrowser. For example:
http://vimeo.com/channels/staffpicks/111431415

1. Click on the play button.
2. The progress bar starts moving indicating that it is buffering.
3. Almost immediately, the bar freezes and the whole MiniBrowser's webview too. The following page appears in the console from which we have launched MiniBrowser:

Attempt to unlock mutex that was not locked
Comment 1 Philippe Normand 2014-11-11 01:45:17 PST
Which version of GStreamer?
Comment 2 Philippe Normand 2014-11-11 01:46:09 PST
Would be nice if you can post the trace too.
Comment 3 Philippe Normand 2014-11-11 02:08:42 PST
It works (almost) fine here with gst master. The HLS stream plays fine but after few seconds:

ASSERTION FAILED: d->m_defersLoading != defers
../../Source/WebCore/platform/network/ResourceHandle.cpp(227) : void WebCore::ResourceHandle::setDefersLoading(bool)
1   0x7fa46f715b43 /home/phil/WebKit/WebKitBuild/Debug/lib/libjavascriptcoregtk-4.0.so.18(WTFCrash+0x1e) [0x7fa46f715b43]
2   0x7fa475c12be6 /home/phil/WebKit/WebKitBuild/Debug/lib/libwebkit2gtk-4.0.so.37(_ZN7WebCore14ResourceHandle16setDefersLoadingEb+0x8a) [0x7fa475c12be6]
3   0x7fa47624cf61 /home/phil/WebKit/WebKitBuild/Debug/lib/libwebkit2gtk-4.0.so.37(_ZN29ResourceHandleStreamingClient16setDefersLoadingEb+0x4b) [0x7fa47624cf61]
4   0x7fa47624a5e6 /home/phil/WebKit/WebKitBuild/Debug/lib/libwebkit2gtk-4.0.so.37(+0x54025e6) [0x7fa47624a5e6]
5   0x7fa47624f9d8 /home/phil/WebKit/WebKitBuild/Debug/lib/libwebkit2gtk-4.0.so.37(_ZNSt5_BindIFPFvP13_WebKitWebSrcES1_EE6__callIvIEILm0EEEET_OSt5tupleIIDpT0_EESt12_Index_tupleIIXspT1_EEE+0x46) [0x7fa47624f9d8]
6   0x7fa47624f846 /home/phil/WebKit/WebKitBuild/Debug/lib/libwebkit2gtk-4.0.so.37(_ZNSt5_BindIFPFvP13_WebKitWebSrcES1_EEclIIEvEET0_DpOT_+0x28) [0x7fa47624f846]
7   0x7fa47624f5b9 /home/phil/WebKit/WebKitBuild/Debug/lib/libwebkit2gtk-4.0.so.37(_ZNSt17_Function_handlerIFvvESt5_BindIFPFvP13_WebKitWebSrcES3_EEE9_M_invokeERKSt9_Any_data+0x20) [0x7fa47624f5b9]
8   0x7fa474ab7a6e /home/phil/WebKit/WebKitBuild/Debug/lib/libwebkit2gtk-4.0.so.37(_ZNKSt8functionIFvvEEclEv+0x32) [0x7fa474ab7a6e]
9   0x7fa476931b88 /home/phil/WebKit/WebKitBuild/Debug/lib/libwebkit2gtk-4.0.so.37(_ZN3WTF25GThreadSafeMainLoopSource12voidCallbackEv+0x5c) [0x7fa476931b88]
10  0x7fa46f75d885 /home/phil/WebKit/WebKitBuild/Debug/lib/libjavascriptcoregtk-4.0.so.18(_ZN3WTF15GMainLoopSource18voidSourceCallbackEPS0_+0x23) [0x7fa46f75d885]
11  0x7fa46c2143f5 /home/phil/WebKit/WebKitBuild/DependenciesGTK/Root/lib64/libglib-2.0.so.0(g_main_context_dispatch+0x135) [0x7fa46c2143f5]
12  0x7fa46c214758 /home/phil/WebKit/WebKitBuild/DependenciesGTK/Root/lib64/libglib-2.0.so.0(+0x48758) [0x7fa46c214758]
13  0x7fa46c214a1a /home/phil/WebKit/WebKitBuild/DependenciesGTK/Root/lib64/libglib-2.0.so.0(g_main_loop_run+0x6a) [0x7fa46c214a1a]
14  0x7fa476932640 /home/phil/WebKit/WebKitBuild/Debug/lib/libwebkit2gtk-4.0.so.37(_ZN3WTF7RunLoop3runEv+0x42) [0x7fa476932640]
15  0x7fa474ec72b4 /home/phil/WebKit/WebKitBuild/Debug/lib/libwebkit2gtk-4.0.so.37(_ZN6WebKit16ChildProcessMainINS_10WebProcessENS_14WebProcessMainEEEiiPPc+0x82) [0x7fa474ec72b4]
16  0x7fa474ec711f /home/phil/WebKit/WebKitBuild/Debug/lib/libwebkit2gtk-4.0.so.37(WebProcessMainUnix+0x20) [0x7fa474ec711f]
17  0x400851 /home/phil/WebKit/WebKitBuild/Debug/bin/WebKitWebProcess(main+0x34) [0x400851]
18  0x7fa47029eb45 /lib/x86_64-linux-gnu/libc.so.6(__libc_start_main+0xf5) [0x7fa47029eb45]
19  0x400759 /home/phil/WebKit/WebKitBuild/Debug/bin/WebKitWebProcess() [0x400759]
Comment 4 Andres Gomez Garcia 2014-11-12 02:00:16 PST
(In reply to comment #1)
> Which version of GStreamer?

$ Tools/jhbuild/jhbuild-wrapper --gtk run pkg-config --modversion gstreamer-1.0
1.2.1
Comment 5 Andres Gomez Garcia 2014-11-12 02:04:32 PST
(In reply to comment #2)
> Would be nice if you can post the trace too.

(gdb) c
Continuing.
[New Thread 0x7fb428a0c700 (LWP 16360)]
[New Thread 0x7fb429a0e700 (LWP 16462)]
[New Thread 0x7fb42bfff700 (LWP 16463)]
[Thread 0x7fb42bfff700 (LWP 16463) exited]
[Thread 0x7fb429a0e700 (LWP 16462) exited]
[New Thread 0x7fb429a0e700 (LWP 16464)]
[New Thread 0x7fb42bfff700 (LWP 16465)]
[Thread 0x7fb42bfff700 (LWP 16465) exited]
[New Thread 0x7fb42bfff700 (LWP 16466)]
[New Thread 0x7fb42aef5700 (LWP 16467)]
[New Thread 0x7fb3fc7ea700 (LWP 16468)]
[New Thread 0x7fb3fbfe9700 (LWP 16469)]
Attempt to unlock mutex that was not locked

Program received signal SIGABRT, Aborted.
[Switching to Thread 0x7fb3fc7ea700 (LWP 16468)]
0x00007fb4a57e1f77 in __GI_raise (sig=sig@entry=6) at ../nptl/sysdeps/unix/sysv/linux/raise.c:56
56      ../nptl/sysdeps/unix/sysv/linux/raise.c: No such file or directory.
(gdb) bt
#0  0x00007fb4a57e1f77 in __GI_raise (sig=sig@entry=6) at ../nptl/sysdeps/unix/sysv/linux/raise.c:56
#1  0x00007fb4a57e55e8 in __GI_abort () at abort.c:90
#2  0x00007fb4a2f1629a in g_mutex_unlock_slowpath (mutex=<optimized out>, prev=<optimized out>)
    at gthread-posix.c:1321
#3  0x00007fb4a2f85cce in g_mutex_unlock (mutex=<optimized out>) at gthread-posix.c:1344
#4  0x00007fb3fc7f1d57 in gst_hls_demux_change_playlist (max_bitrate=17509574, demux=0x136e7f0)
    at gsthlsdemux.c:1137
#5  gst_hls_demux_switch_playlist (demux=demux@entry=0x136e7f0) at gsthlsdemux.c:1240
#6  0x00007fb3fc7f3310 in gst_hls_demux_cache_fragments (demux=0x136e7f0) at gsthlsdemux.c:1024
#7  gst_hls_demux_stream_loop (demux=0x136e7f0) at gsthlsdemux.c:713
#8  0x00007fb49ec5c136 in gst_task_func (task=0x6f9710) at gsttask.c:316
#9  0x00007fb4a2f69924 in g_thread_pool_thread_proxy (data=<optimized out>) at gthreadpool.c:307
#10 0x00007fb4a2f68f95 in g_thread_proxy (data=0x7fb4180c30f0) at gthread.c:764
#11 0x00007fb4a240ff6e in start_thread (arg=0x7fb3fc7ea700) at pthread_create.c:311
#12 0x00007fb4a58a59cd in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:113
Comment 6 Philippe Normand 2014-11-12 02:08:24 PST
hlsdemux got lots of fixes since 1.2.1...
Comment 7 Philippe Normand 2016-04-05 00:25:23 PDT

*** This bug has been marked as a duplicate of bug 144040 ***