Public Member Functions | Public Attributes

gnash::media::gst::GnashAudioPrivate Class Reference

This class is initialized once a hardware input device is chosen it is more robust than GnashAudio because it has additional room to store important Gstreamer information (pipelines, references to elements, etc.). More...

#include <AudioInputGst.h>

Inheritance diagram for gnash::media::gst::GnashAudioPrivate:
Inheritance graph
[legend]
Collaboration diagram for gnash::media::gst::GnashAudioPrivate:
Collaboration graph
[legend]

List of all members.

Public Member Functions

 GnashAudioPrivate ()
 Constructor for the GnashAudioPrivate class.
void setAudioDevice (GnashAudio *d)
 This function sets the private _audioDevice element in the GnashAudioPrivate class.
GnashAudiogetAudioDevice ()
 This function returns the private _audioDevice element pointer from the GnashAudioPrivate class.
void setDeviceName (gchar *n)
 This function sets the private _deviceName element in the GnashAudioPrivate class.
gchar * getDeviceName ()
 This function returns the private _deviceName variable from the GnashAudioPrivate class.

Public Attributes

GstElement * audioSource
 A pointer to the Gstreamer element corresponding to the audio source (e.g. a built-in or usb microphone).
GstElement * audioEnc
 A pointer to the audio encoder element of the Gstreamer pipeline. The only format currently supported format is vorbis.
GnashAudio_audioDevice
 A pointer to the GnashAudio class of the selected hardware device This info should be stored to the GnashAudioPrivate class in the transferToPrivate function.
gchar * _deviceName
 A gchar* describing the physical input device's name (e.g. HDA Intel or Built-In Microphone).
GstElement * _pipeline
 A pointer to the main Gstreamer pipeline that all created elements and bins will be dropped into.
GstElement * _audioMainBin
GstElement * _audioSourceBin
GstElement * _audioPlaybackBin
GstElement * _audioSaveBin
GstElement * _mux
 A direct link to the oggmux element in the _audioSaveBin for use with linking up to a video muxer so that audio and video are both muxed out to the same file.
gboolean _pipelineIsPlaying
 A boolean value which stores whether or not the _pipeline element is currently in it's 'playing' state or not.

Detailed Description

This class is initialized once a hardware input device is chosen it is more robust than GnashAudio because it has additional room to store important Gstreamer information (pipelines, references to elements, etc.).


Constructor & Destructor Documentation

gnash::media::gst::GnashAudioPrivate::GnashAudioPrivate (  ) 

Member Function Documentation

GnashAudio* gnash::media::gst::GnashAudioPrivate::getAudioDevice (  )  [inline]

This function returns the private _audioDevice element pointer from the GnashAudioPrivate class.

Returns:
The GnashAudio* stored in the _audioDevice variable

References _audioDevice.

gchar* gnash::media::gst::GnashAudioPrivate::getDeviceName (  )  [inline]

This function returns the private _deviceName variable from the GnashAudioPrivate class.

Returns:
The gchar* describing the physical device's name (e.g. HDA Intel)

References _deviceName.

void gnash::media::gst::GnashAudioPrivate::setAudioDevice ( GnashAudio d  )  [inline]

This function sets the private _audioDevice element in the GnashAudioPrivate class.

Parameters:
d A pointer to the GnashAudio class that you want to use for audio input.

References _audioDevice.

void gnash::media::gst::GnashAudioPrivate::setDeviceName ( gchar *  n  )  [inline]

This function sets the private _deviceName element in the GnashAudioPrivate class.

Parameters:
n A gchar* describing the input hardware (e.g. HDA Intel)

References _deviceName.


Member Data Documentation

A pointer to the GnashAudio class of the selected hardware device This info should be stored to the GnashAudioPrivate class in the transferToPrivate function.

Referenced by getAudioDevice(), GnashAudioPrivate(), and setAudioDevice().

The main bin is set up to handle any number of connections to be made later in the program. The basic pipeline design is as follows: (sink ghostpad) tee ! audioPlaybackQueue (sink ghostpad) tee ! audioSaveQueue The source bin is dropped into the main bin and will eventually be fed into the tee element

Referenced by GnashAudioPrivate().

The audio playback bin contains the elements necessary to playback the audio being captured by the selected device. Note that if you create the playback bin it will not automatically link up to the playback queue. To do that you need to call makeAudioSourcePlaybackLink() function. The basic pipeline design is as follows: autoaudiosink ! NULL

Referenced by GnashAudioPrivate().

The audio save bin contains the elements necessary to save the audio being captured to a file (currently just to an ogg file). Note that if you create the save bin it will not automatically link up to the save queue in the main bin. To do that you need to call the makeAudioSourceSaveLink() function. The basic pipeline structure is as follows: audioconvert ! vorbinenc ! oggmux ! filesink

Referenced by GnashAudioPrivate().

The audio source bin contains the source device and a restriction on its capabilities. Currently a lot of stuff in here is hardcoded and will probably eventually be made into options that can be changed using setters. The basic pipeline design is as follows: <selected audio="" source>=""> ! capsfiter The source bin is dropped into the _audioMainBin.

Referenced by GnashAudioPrivate().

A gchar* describing the physical input device's name (e.g. HDA Intel or Built-In Microphone).

Referenced by getDeviceName(), GnashAudioPrivate(), and setDeviceName().

A direct link to the oggmux element in the _audioSaveBin for use with linking up to a video muxer so that audio and video are both muxed out to the same file.

Referenced by GnashAudioPrivate().

A pointer to the main Gstreamer pipeline that all created elements and bins will be dropped into.

Referenced by GnashAudioPrivate().

A boolean value which stores whether or not the _pipeline element is currently in it's 'playing' state or not.

Referenced by GnashAudioPrivate().

A pointer to the audio encoder element of the Gstreamer pipeline. The only format currently supported format is vorbis.

Referenced by GnashAudioPrivate().

A pointer to the Gstreamer element corresponding to the audio source (e.g. a built-in or usb microphone).

Referenced by GnashAudioPrivate().


The documentation for this class was generated from the following files: