Comment 8 for bug 720466

Revision history for this message
Nokir (nokir) wrote :

When I start brasero with 'GST_DEBUG="*:3" brasero -g', I get the following:

0:00:10.984295768 16466 0xf36580 INFO GST_PADS gstpad.c:1978:gst_pad_link_prepare: trying to link capsfilter1:src and ffenc_ac31:sink
0:00:10.985340524 16466 0xf36580 INFO GST_PADS gstpad.c:2034:gst_pad_link_prepare: caps are incompatible
BraseroBurn: (at burn-vob.c:684) BraseroVob Error while linking pads

'gst-inspect-0.10 ffenc_ac3' gives me:

  SINK template: 'sink'
    Availability: Always
    Capabilities:
      audio/x-raw-float
               channels: [ 1, 6 ]
                   rate: { 48000, 44100, 32000 }
             endianness: 1234
                  width: 32

I looked into plugins/transcode/burn-vob.c near line 684 and found out that the capsfilter pad was set to use audio/x-raw-int, which is not compatible with ffenc_ac3. So I made the following change to that file:

@@ -638,7 +638,7 @@
  BRASERO_JOB_LOG (vob, "Setting AC3 rate to 48000");
  /* NOTE: we may want to limit the number of channels. */
- filtercaps = gst_caps_new_full (gst_structure_new ("audio/x-raw-int",
+ filtercaps = gst_caps_new_full (gst_structure_new ("audio/x-raw-float",
           "rate", G_TYPE_INT, 48000,
           NULL),
      NULL);

Now 'GST_DEBUG="*:3" brasero -g' shows me:

0:00:44.819663035 16554 0x2459580 INFO GST_PADS gstpad.c:1978:gst_pad_link_prepare: trying to link capsfilter1:src and ffenc_ac31:sink
0:00:44.820746205 16554 0x2459580 INFO GST_PADS gstpad.c:2161:gst_pad_link_full: linked capsfilter1:src and ffenc_ac31:sink, successful

The encoding is starting, but after some megabyte it hangs and the command line doesn't print anything anymore. But this seems to be another bug, since the very same happens if I select SVCD in the unmodified program.