jack and goom plugins together, possible? (erroneous pipeline, could not connect...)
Wim Taymans
wim.taymans at gmail.com
Thu Feb 24 01:57:31 PST 2011
On 02/24/2011 10:53 AM, Douglas McClendon wrote:
> I would very much like to be able to use gst to launch goom against a
> particular jack port (or jack's system out, or even capture would be
> fine).
>
> For testing purposes, I just launch jack as
> 'jackd -r -d dummy'
>
> this works for me to launch goom(2k1) with gst against a bogus source
>
> gst-launch -v audiotestsrc ! goom2k1 ! ffmpegcolorspace ! xvimagesink
>
> but when I try what I think is the right thing
>
> gst-launch -v jackaudiosrc ! goom2k1 ! ffmpegcolorspace ! xvimagesink
try
gst-launch -v jackaudiosrc ! audioconvert ! goom2k1 !
ffmpegcolorspace ! xvimagesink
You can see that you need to convert when using gst-inspect on
jackaudiosrc and goom2k1
because jack outputs float samples and goom only accepts integer samples.
Wim
>
> it gives
>
> WARNING: erroneous pipeline: could not link jackaudiosrc0 to goom2k10
>
> while a base test of jackaudiosrc does appear to work
>
> [sysuser at sci-zyx ~]$ gst-launch -v jackaudiosrc connect=1 !
> jackaudiosink connect=1
> Setting pipeline to PAUSED ...
> /GstPipeline:pipeline0/GstJackAudioSrc:jackaudiosrc0:
> actual-buffer-time = 192000
> /GstPipeline:pipeline0/GstJackAudioSrc:jackaudiosrc0:
> actual-latency-time = 21333
> /GstPipeline:pipeline0/GstJackAudioSrc:jackaudiosrc0.GstPad:src: caps
> = audio/x-raw-float, endianness=(int)1234
> , width=(int)32, rate=(int)48000, channels=(int)2,
> channel-positions=(GstAudioChannelPosition)< GST_AUDIO_CHANN
> EL_POSITION_FRONT_LEFT, GST_AUDIO_CHANNEL_POSITION_FRONT_RIGHT >
> Pipeline is live and does not need PREROLL ...
> Setting pipeline to PLAYING ...
> New clock: GstAudioSrcClock
> /GstPipeline:pipeline0/GstJackAudioSink:jackaudiosink0.GstPad:sink:
> caps = audio/x-raw-float, endianness=(int)1
> 234, width=(int)32, rate=(int)48000, channels=(int)2,
> channel-positions=(GstAudioChannelPosition)< GST_AUDIO_CH
> ANNEL_POSITION_FRONT_LEFT, GST_AUDIO_CHANNEL_POSITION_FRONT_RIGHT >
>
> -----------------
>
> note that with --gst-debug=3, the failed goom launch gives-
>
> ...
> ...
>
> 0:00:00.034788030 15172 0x98a6050 INFO GST_PADS
> gstutils.c:1046:gst_pad_check_link: trying to link goom2k10:sink and
> jackaudiosrc0:src
> 0:00:00.034808354 15172 0x98a6050 INFO GST_PADS
> gstutils.c:1061:gst_pad_check_link: Src pad goom2k10:sink is not
> source pad, failed
> 0:00:00.034862761 15172 0x98a6050 INFO GST_ELEMENT_PADS
> gstutils.c:1209:gst_element_get_compatible_pad:<jackaudiosrc0> Could
> not find a compatible pad to link to goom2k10:sink
> 0:00:00.034896215 15172 0x98a6050 ERROR GST_PIPELINE
> ./grammar.y:614:gst_parse_perform_link: could not link jackaudiosrc0
> to goom2k10
> 0:00:00.034988127 15172 0x98a6050 INFO GST_PIPELINE
> ./grammar.y:568:gst_parse_perform_link: linking goom2k10:(any) to
> ffmpegcsp0:(any) (0/0) with caps "(NULL)"
>
> ...
> ...
>
> Anyway, it seems maybe I should take libgoom or libvisual and just
> write a jack app that bypasses gst, though perhaps using the gst goom
> plugin code as a reference.
>
> I would also like very much to be able to save goom output frames,
> i.e. for a highrez post-facto video in addition to live
> visualization. I figure worst case I can see where the gst goom
> plugin is pushing a new frame, and could save that out. I wonder
> though if there is some awesome extension to the gst-launch goom
> pipeline that could case video frames to be saved, with audio too?
>
> Thanks for any input and/or solutions, peace...
>
> -dmc
> _______________________________________________
> gstreamer-devel mailing list
> gstreamer-devel at lists.freedesktop.org
> http://lists.freedesktop.org/mailman/listinfo/gstreamer-devel
More information about the gstreamer-devel
mailing list