## gsttunerchannel gsttunerchannel — A channel from an element implementing the GstTuner interface. |

## Synopsis

    #include <gst/interfaces/tuner.h>

    struct              GstTunerChannel;
    enum                GstTunerChannelFlags;
    #define             GST_TUNER_CHANNEL_HAS_FLAG          (channel,
                                                             flag)

## Object Hierarchy

      GObject
       +----GstTunerChannel

## Signals

      "frequency-changed"                              : Run Last
      "signal-changed"                                 : Run Last

## Description

The GstTunerChannel object is provided by an element implementing the GstTuner interface.

GstTunerChannel provides a name and flags to determine the type and capabilities of the channel. If the GST_TUNER_CHANNEL_FREQUENCY flag is set, then the channel also information about the minimum and maximum frequency, and range of the reported signal strength.

## Details

### struct GstTunerChannel

    struct GstTunerChannel {
      gchar               *label;
      GstTunerChannelFlags flags;
      gfloat               freq_multiplicator;
      gulong               min_frequency;
      gulong               max_frequency;
      gint                 min_signal;
      gint                 max_signal;
    };

gchar *`label`; | A string containing a descriptive name for this channel
GstTunerChannelFlags `flags`; | A set of GstTunerChannelFlags for this channel
gfloat `freq_multiplicator`; | The step size (in Hz) for the frequency setting.
gulong `min_frequency`; | Minimum valid frequency setting (in Hz).
gulong `max_frequency`; | Maximum valid frequency setting (in Hz).
gint `min_signal`; | Minimum reported signal strength value.
gint `max_signal`; | Maximum reported signal strength value.

### enum GstTunerChannelFlags

    typedef enum {
      GST_TUNER_CHANNEL_INPUT     = (1<<0),
      GST_TUNER_CHANNEL_OUTPUT    = (1<<1),
      GST_TUNER_CHANNEL_FREQUENCY = (1<<2),
      GST_TUNER_CHANNEL_AUDIO     = (1<<3)
    } GstTunerChannelFlags;

An enumeration for flags indicating the available capabilities of a GstTunerChannel.

`GST_TUNER_CHANNEL_INPUT` | The channel is for input
`GST_TUNER_CHANNEL_OUTPUT` | The channel is for output
`GST_TUNER_CHANNEL_FREQUENCY` | The channel has a frequency setting and signal strength.
`GST_TUNER_CHANNEL_AUDIO` | The channel carries audio.

### GST_TUNER_CHANNEL_HAS_FLAG()

    #define             GST_TUNER_CHANNEL_HAS_FLAG(channel, flag)

Macro to check if the given flag is set on a channel

`channel` : | A GstTunerChannel
`flag` : | The flag to check for

## Signal Details

### The `"frequency-changed"` signal

    void                user_function                      (GstTunerChannel *tunerchannel,
                                                            gulong           frequency,
                                                            gpointer         user_data)         : Run Last

Reports that the current frequency has changed.

`tunerchannel` : | The GstTunerChannel
`frequency` : | The new frequency (an unsigned long)
`user_data` : | user data set when the signal handler was connected.

### The `"signal-changed"` signal

    void                user_function                      (GstTunerChannel *tunerchannel,
                                                            gint             signal,
                                                            gpointer         user_data)         : Run Last

Reports that the signal strength has changed.

See Also: `gst_tuner_signal_strength()`

`tunerchannel` : | The GstTunerChannel
`signal` : | The new signal strength (an integer)
`user_data` : | user data set when the signal handler was connected.