synaesthesia

synaesthesia — Creates video visualizations of audio input, using stereo and pitch information

Synopsis

struct              GstSynaesthesia;

Description

Synaesthesia is an audio visualisation element. It creates glitter and pulsating fog based on the incomming audio signal.

Example launch line

1
2
gst-launch -v audiotestsrc ! audioconvert ! synaesthesia ! ximagesink
gst-launch -v audiotestsrc ! audioconvert ! synaesthesia ! ffmpegcolorspace ! xvimagesink

Synopsis

Element Information

plugin

synaesthesia

author

Richard Boulton <richard@tartarus.org>

class

Visualization

Element Pads

name

sink

direction

sink

presence

always

details

audio/x-raw-int, rate=(int)[ 1, 2147483647 ], channels=(int)2, endianness=(int)1234, width=(int)16, depth=(int)16, signed=(boolean)true

name

src

direction

source

presence

always

details

video/x-raw-rgb, bpp=(int)32, depth=(int)24, endianness=(int)4321, red_mask=(int)65280, green_mask=(int)16711680, blue_mask=(int)-16777216, width=(int)[ 1, 2147483647 ], height=(int)[ 1, 2147483647 ], framerate=(fraction)[ 0/1, 2147483647/1 ]

Details

struct GstSynaesthesia

struct GstSynaesthesia {
  GstElement element;

  /* pads */
  GstPad *sinkpad, *srcpad;
  GstAdapter *adapter;

  guint64 next_ts;              /* the timestamp of the next frame */
  guint64 frame_duration;
  guint bps;                    /* bytes per sample        */
  guint spf;                    /* samples per video frame */

  gint16 datain[2][FFT_BUFFER_SIZE];

  /* video state */
  gint fps_n, fps_d;
  gint width;
  gint height;
  gint channels;

  /* Audio state */
  gint sample_rate;
  gint rate;

  /* Synaesthesia instance */
  syn_instance *si;
};

See Also

goom