After an evaluation, GNOME has moved from Bugzilla to GitLab. Learn more about GitLab.
No new issues can be reported in GNOME Bugzilla anymore.
To report an issue in a GNOME project, go to GNOME GitLab.
Do not go to GNOME Gitlab for: Bluefish, Doxygen, GnuCash, GStreamer, java-gnome, LDTP, NetworkManager, Tomboy.
Bug 767406 - qtdemux: early eos with totem-video-thumbnailer
qtdemux: early eos with totem-video-thumbnailer
Status: RESOLVED OBSOLETE
Product: GStreamer
Classification: Platform
Component: gst-plugins-good
1.8.1
Other Linux
: Normal normal
: git master
Assigned To: GStreamer Maintainers
GStreamer Maintainers
Depends on:
Blocks:
 
 
Reported: 2016-06-08 16:25 UTC by Bastien Nocera
Modified: 2018-11-03 15:09 UTC
See Also:
GNOME target: ---
GNOME version: ---



Description Bastien Nocera 2016-06-08 16:25:47 UTC
gstreamer1-plugins-bad-free-1.8.1-1.fc24.x86_64
gstreamer1-plugins-base-1.8.1-1.fc24.x86_64
gstreamer1-plugins-good-1.8.1-1.fc24.x86_64
gstreamer1-libav-1.6.3-1.fc23.x86_64
gstreamer1-1.8.1-1.fc24.x86_64

With the file at:
https://people.gnome.org/~hadess/IMG_0205.MOV

$ ./totem-video-thumbnailer IMG_0205.MOV foo.png

** (totem-video-thumbnailer:26874): WARNING **: Could not take screenshot: failed to retrieve or convert video frame

** (totem-video-thumbnailer:26874): WARNING **: Could not take screenshot: failed to retrieve or convert video frame

** (totem-video-thumbnailer:26874): WARNING **: Could not take screenshot: failed to retrieve or convert video frame

** (totem-video-thumbnailer:26874): WARNING **: Could not take screenshot: failed to retrieve or convert video frame

** (totem-video-thumbnailer:26874): WARNING **: Could not take screenshot: failed to retrieve or convert video frame
totem-video-thumbnailer couldn't get a picture from 'IMG_0205.MOV'

This error happens when:
g_signal_emit_by_name (play, "convert-sample", to_caps, &sample);
returns a NULL sample.
Comment 1 Tim-Philipp Müller 2016-06-09 13:07:37 UTC
For me this works while the video is playing/paused, but once it reached the end it starts failing. Is that also what you observe?
Comment 2 Bastien Nocera 2016-06-09 13:40:37 UTC
(In reply to Tim-Philipp Müller from comment #1)
> For me this works while the video is playing/paused, but once it reached the
> end it starts failing. Is that also what you observe?

playing/paused how? I don't understand.
Comment 3 Tim-Philipp Müller 2017-07-14 10:11:05 UTC
Can still reproduce this with totem-video-thumbnailer. Bit baffling.

Problem is that we can't get a sample/buffer via the last-sample property because the video sink has prerolled from a GAP event.

It looks like a GAP event was sent by stream synchronizer because the other stream (audio) got an EOS. Why the audio stream got an EOS, I don't know, we're doing a seek to 1.947 secs and there's 5.8 secs of data for both streams.

This might be a clue:

<qtdemux0:sink> pullrange failed

I think there's something wonky with some of the atom sizes. mp4info also throws some warnings.

I don't understand yet though why this is only triggered by a seek and not when just playing the file.

Needs more investigation, but qtdemux looks like the culprit for now.
Comment 4 GStreamer system administrator 2018-11-03 15:09:43 UTC
-- GitLab Migration Automatic Message --

This bug has been migrated to freedesktop.org's GitLab instance and has been closed from further activity.

You can subscribe and participate further through the new bug through this link to our GitLab instance: https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/issues/278.