GNOME Bugzilla – Bug 720699
Can't render after setting project settings to match a clip's properties in Pitivi
Last modified: 2014-02-01 16:30:23 UTC
Start with a blank pitivi instance, 1. Import http://jeff.ecchi.ca/public/sample-pitivi-projects/m%c3%a9tro%201.MOV and insert into the timeline. 2. Set the project settings to match that clip (using the "Clip Properties..." button in the media library) 3. Try rendering (with the defaults: theora, vorbis, etc.) Result: GStreamer encountered a general stream error. qtdemux.c(4401): gst_qtdemux_loop (): /pitivi+utils+pipeline+Pipeline:pitivi+utils+pipeline+pipeline1/GESTimeline:gestimeline1/GESAudioTrack:gesaudiotrack1/GnlComposition:gnlcomposition3/GnlSource:gnlsource1/GstBin:audiosrcbin/GstURIDecodeBin:uridecodebin2/GstDecodeBin:decodebin6/GstQTDemux:qtdemux4: streaming stopped, reason not-negotiated I'm using gstreamer 1.2.1 as provided by Fedora 20.
Confirmed with recent master of everything.
0:00:16.484448412 3217 0x7f72e4046630 WARN basetransform gstbasetransform.c:1373:gst_base_transform_setcaps:<audioconvert0> transform could not transform audio/x-raw, format=(string)S16LE, layout=(string)interleaved, rate=(int)48000, channels=(int)2 in anything we support That's the problem, should be easy to fix :)
*** Bug 722929 has been marked as a duplicate of this bug. ***
The problem is the use of glong for rate instead of int (at least on my side): replacing "glong" with "int" with a text editor makes it work.
...which is a bit silly when you think about it. No matter if it's a float, long, int, fraction, GES should convert numbers to the formats that gstreamer expects.
I don't think GES had to handle that, anyway we already casted the other fields so I just casted these fields.
Created attachment 267687 [details] [review] Correctly cast restriction fields
*** Bug 715074 has been marked as a duplicate of this bug. ***
For you information I started a big rework of that part making all the properties GObject properties so they are typed etc... I think it would be a goood thing to do that in the long run.
Review of attachment 267687 [details] [review]: Not sure why you needed to check "value" but good enough. Go!
commit 7395094af937486a3f987ae5ca5baea2ccbae3c0 Author: Mathieu Duponchelle <mduponchelle1@gmail.com> Date: Fri Jan 31 01:12:09 2014 +0100 project: cast remaining uncasted restriction fields. Also check that value is not None before trying to cast it (for example the preset system tries to pass None to these functions) Fixes https://bugzilla.gnome.org/show_bug.cgi?id=720699
Yeah, confirming the patch as working for newly created projects, sorry for the delay in testing this.