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 634159 - Totem is unable to take screenshots (deinterlace outputs 50 fps vs. 25 fps -> not-negotiated flow)
Totem is unable to take screenshots (deinterlace outputs 50 fps vs. 25 fps ->...
Status: RESOLVED OBSOLETE
Product: GStreamer
Classification: Platform
Component: dont know
0.10.30
Other Linux
: Normal normal
: NONE
Assigned To: GStreamer Maintainers
GStreamer Maintainers
Depends on:
Blocks:
 
 
Reported: 2010-11-06 12:47 UTC by Matias Wilkman
Modified: 2012-09-29 17:36 UTC
See Also:
GNOME target: ---
GNOME version: ---


Attachments
GST_DEBUG=*:3 GST_DEBUG_NO_COLOR=1 totem --debug &> totem.log (648.13 KB, text/x-log)
2010-11-06 17:36 UTC, Matias Wilkman
Details

Description Matias Wilkman 2010-11-06 12:47:36 UTC
When trying to take a screenshot via Edit -> Take screenshot (or Ctrl+S), I get "Totem could not get a screenshot of the video. This is not supposed to happen; please file a bug report". So that's what I'm doing.

I'm using Ubuntu 10.10 and Totem 2.32.0. The file that was playing is a DVD image that I mounted and played using Movie -> Play Image. It should be noted that Edit -> Create screenshot gallery... fails as well, but does not give any error; it simply does nothing when I press Save. This also happens if I navigate to the VIDEO_TS folder and play the VOB file of the scene that was playing, and I can replicate this using other DVD images or VOB files. Eg. AVI files seem to work fine, though.
Comment 1 Philip Withnall 2010-11-06 15:21:28 UTC
If you run Totem from a terminal using `totem --debug`, are any messages printed to the terminal when you try to take a screenshot in Totem?
Comment 2 Matias Wilkman 2010-11-06 16:59:28 UTC
Yes, here:

libdvdnav: Unable to find map file 'ISO PATH HERE.map'
libdvdnav: DVD disk reports itself with Region mask 0x00000000. Regions: 1 2 3 4 5 6 7 8

** (totem:21055): WARNING **: Could not take screenshot: Internal data flow error.

** (totem:21055): WARNING **: Could not take screenshot: conversion failed
Comment 3 Philip Withnall 2010-11-06 17:21:12 UTC
OK, could you try again with the following command and attach the resulting totem.log file to this bug report please?

GST_DEBUG=*:3 GST_DEBUG_NO_COLOR=1 totem --debug &> totem.log
Comment 4 Matias Wilkman 2010-11-06 17:36:56 UTC
Created attachment 173960 [details]
GST_DEBUG=*:3 GST_DEBUG_NO_COLOR=1 totem --debug &> totem.log
Comment 5 Philip Withnall 2010-11-06 23:54:19 UTC
0:00:09.783617305 21282  0x9421f58 WARN           basetransform gstbasetransform.c:1065:gst_base_transform_acceptcaps_default:<ffmpegcsp0> transform could not transform video/x-raw-yuv, format=(fourcc)I420, width=(int)720, height=(int)576, pixel-aspect-ratio=(fraction)16/15, framerate=(fraction)50/1, interlaced=(boolean)false in anything we support
0:00:09.784046221 21282  0x9421f58 INFO                 basesrc gstbasesrc.c:2490:gst_base_src_loop:<fakesrc0> pausing after gst_pad_push() = not-negotiated
0:00:09.784127236 21282  0x9421f58 WARN                 basesrc gstbasesrc.c:2550:gst_base_src_loop:<fakesrc0> error: Internal data flow error.
0:00:09.784153584 21282  0x9421f58 WARN                 basesrc gstbasesrc.c:2550:gst_base_src_loop:<fakesrc0> error: streaming task paused, reason not-negotiated (-4)
0:00:09.784200817 21282  0x9421f58 INFO        GST_ERROR_SYSTEM gstelement.c:1761:gst_element_message_full:<fakesrc0> posting message: Internal data flow error.
0:00:09.784244902 21282  0x9421f58 INFO        GST_ERROR_SYSTEM gstelement.c:1784:gst_element_message_full:<fakesrc0> posted error message: Internal data flow error.
0:00:09.784314730 21282  0x89540a0 INFO              GST_STATES gstelement.c:2236:gst_element_continue_state:<fakesrc0> completed state change to PAUSED
0:00:09.784341802 21282  0x89540a0 INFO              GST_STATES gstelement.c:2249:gst_element_continue_state:<fakesrc0> posting state-changed READY to PAUSED
0:00:09.784372296 21282  0x89540a0 INFO              GST_STATES gstbin.c:2443:gst_bin_change_state_func:<screenshot-pipeline> child 'fakesrc0' changed state to 3(PAUSED) successfully

** (totem:21282): WARNING **: Could not take screenshot: Internal data flow error.
Comment 6 Tim-Philipp Müller 2010-11-07 17:28:11 UTC
Any chance you could you attach a GST_DEBUG=*:5 log as well? *:3 logs rarely contain enough information.

Have you tried the GStreamer PPA yet? (which contains newer GStreamer versions)
Comment 7 Matias Wilkman 2010-11-08 06:06:47 UTC
I've not tried the GStreamer PPA. Here's the log for GST_DEBUG=*:5 GST_DEBUG_NO_COLOR=1 totem --debug &> totem2.log - I tried attaching it, but it's 89.5MB: http://megaupload.com/?d=67I467NH
Comment 8 Tim-Philipp Müller 2010-11-08 12:50:10 UTC
Thanks for the log. bzip2'ed it would only be around 3MB :)

The essence of what's happening seems to be that mpeg2dec outputs things with framerate=50/1 in the caps, but downstream wants framerate=25/1. This leads to a not-negotiated error:

gstmpeg2dec.c:1171:gst_mpeg2dec_chain:<mpeg2dec0> calling parse
gstbasetransform.c:1028:gst_base_transform_acceptcaps_default:<ffmpegcsp0> allowed caps video/x-raw-yuv, pixel-aspect-ratio=(fraction)1/1, framerate=(fraction)25/1, width=(int)[ 1, 32767 ], height=(int)[ 1, 32767 ], format=(fourcc){ I420, NV12, NV21, YV12, YUY2, Y42B, Y444, YUV9, YVU9, Y41B, Y800, Y8  , GREY, Y16 , UYVY, YVYU, IYU1, v308, AYUV }; (snip)
gstbasetransform.c:1065:gst_base_transform_acceptcaps_default:<ffmpegcsp0> transform could not transform video/x-raw-yuv, format=(fourcc)I420, width=(int)720, height=(int)576, pixel-aspect-ratio=(fraction)16/15, framerate=(fraction)50/1, interlaced=(boolean)false in anything we support
gstpad.c:2557:gst_pad_accept_caps:<ffmpegcsp0:sink> acceptfunc returned 0
gstpad.c:2722:gst_pad_configure_sink:<ffmpegcsp0:sink> caps video/x-raw-yuv, format=(fourcc)I420, width=(int)720, height=(int)576, pixel-aspect-ratio=(fraction)16/15, framerate=(fraction)50/1, interlaced=(boolean)false not accepted

Both looks like a bug. This is interlaced PAL, so should be 50 fields per second  = 25 fps if I'm not mistaken. And not quite sure where the downstream framerate comes from either..
Comment 9 Tim-Philipp Müller 2011-02-28 15:07:33 UTC
*** Bug 640933 has been marked as a duplicate of this bug. ***
Comment 10 Tim-Philipp Müller 2012-09-29 17:36:47 UTC
I think this was fixed in totem, not sure we can or should be doing anything about the framerate.