A/V connectors
[A/V pipeline building elements]


Typedefs

typedef struct
gavl_audio_connector_s 
gavl_audio_connector_t
 Opaque structure for the audio connector.
typedef struct
gavl_video_connector_s 
gavl_video_connector_t
 Opaque structure for the audio connector.
typedef struct
gavl_packet_connector_s 
gavl_packet_connector_t
 Opaque structure for the packet connector.
typedef void(* gavl_audio_connector_process_func )(void *priv, gavl_audio_frame_t *frame)
 Callback for processing an audio frame.
typedef void(* gavl_video_connector_process_func )(void *priv, gavl_video_frame_t *frame)
 Callback for processing a video frame.
typedef void(* gavl_packet_connector_process_func )(void *priv, gavl_packet_t *p)
 Callback for processing a packet.

Functions

GAVL_PUBLIC
gavl_audio_connector_t
gavl_audio_connector_create (gavl_audio_source_t *src)
 Create an audio connector.
GAVL_PUBLIC gavl_audio_options_tgavl_audio_connector_get_options (gavl_audio_connector_t *c)
 Get conversion options.
GAVL_PUBLIC void gavl_audio_connector_destroy (gavl_audio_connector_t *c)
 Destroy an audio connector.
GAVL_PUBLIC void gavl_audio_connector_connect (gavl_audio_connector_t *c, gavl_audio_sink_t *sink)
 Connect a sink.
GAVL_PUBLIC void gavl_audio_connector_set_process_func (gavl_audio_connector_t *c, gavl_audio_connector_process_func func, void *priv)
 Set process callback.
GAVL_PUBLIC void gavl_audio_connector_start (gavl_audio_connector_t *c)
 Start an audio connector.
GAVL_PUBLIC const
gavl_audio_format_t
gavl_audio_connector_get_process_format (gavl_audio_connector_t *c)
 Get process format.
GAVL_PUBLIC int gavl_audio_connector_process (gavl_audio_connector_t *c)
 Process one frame.
GAVL_PUBLIC void gavl_audio_connector_reset (gavl_audio_connector_t *c)
 Reset an audio connector.
GAVL_PUBLIC gavl_source_status_t gavl_audio_connector_get_source_status (gavl_audio_connector_t *c)
 Get the status of the last read call.
GAVL_PUBLIC
gavl_video_connector_t
gavl_video_connector_create (gavl_video_source_t *src)
 Create a video connector.
GAVL_PUBLIC gavl_video_options_tgavl_video_connector_get_options (gavl_video_connector_t *c)
 Get conversion options.
GAVL_PUBLIC void gavl_video_connector_destroy (gavl_video_connector_t *c)
 Destroy a video connector.
GAVL_PUBLIC void gavl_video_connector_connect (gavl_video_connector_t *c, gavl_video_sink_t *sink)
 Connect a sink.
GAVL_PUBLIC void gavl_video_connector_set_process_func (gavl_video_connector_t *c, gavl_video_connector_process_func func, void *priv)
 Set process callback.
GAVL_PUBLIC void gavl_video_connector_start (gavl_video_connector_t *c)
 Start a video connector.
GAVL_PUBLIC const
gavl_video_format_t
gavl_video_connector_get_process_format (gavl_video_connector_t *c)
 Get process format.
GAVL_PUBLIC int gavl_video_connector_process (gavl_video_connector_t *c)
 Process one frame.
GAVL_PUBLIC void gavl_video_connector_reset (gavl_video_connector_t *c)
 Reset a video connector.
GAVL_PUBLIC gavl_source_status_t gavl_video_connector_get_source_status (gavl_video_connector_t *c)
 Get the status of the last read call.
GAVL_PUBLIC
gavl_packet_connector_t
gavl_packet_connector_create (gavl_packet_source_t *src)
 Create a packet connector.
GAVL_PUBLIC void gavl_packet_connector_destroy (gavl_packet_connector_t *c)
 Destroy a packet connector.
GAVL_PUBLIC void gavl_packet_connector_connect (gavl_packet_connector_t *c, gavl_packet_sink_t *sink)
 Connect a sink.
GAVL_PUBLIC void gavl_packet_connector_set_process_func (gavl_packet_connector_t *c, gavl_packet_connector_process_func func, void *priv)
 Set process callback.
GAVL_PUBLIC int gavl_packet_connector_process (gavl_packet_connector_t *c)
 Process one packet.
GAVL_PUBLIC gavl_source_status_t gavl_packet_connector_get_source_status (gavl_packet_connector_t *c)
 Get the status of the last read call.

Detailed Description

Connectors link one source and one or more sinks. They do all buffer handling and format conversion.

Typedef Documentation

typedef struct gavl_audio_connector_s gavl_audio_connector_t

Opaque structure for the audio connector.

You don't want to know what's inside.

typedef struct gavl_video_connector_s gavl_video_connector_t

Opaque structure for the audio connector.

You don't want to know what's inside.

typedef struct gavl_packet_connector_s gavl_packet_connector_t

Opaque structure for the packet connector.

You don't want to know what's inside.

typedef void(* gavl_audio_connector_process_func)(void *priv, gavl_audio_frame_t *frame)

Callback for processing an audio frame.

Parameters:
priv Client data
frame Frame
This function is called whenever a frame was read from the source. Use gavl_audio_connector_set_process_func to set this callback. The format of the frame can be obtained with gavl_audio_connector_get_process_format after gavl_audio_connector_start was called.

typedef void(* gavl_video_connector_process_func)(void *priv, gavl_video_frame_t *frame)

Callback for processing a video frame.

Parameters:
priv Client data
frame Frame
This function is called whenever a frame was read from the source. Use gavl_video_connector_set_process_func to set this callback. The format of the frame can be obtained with gavl_video_connector_get_process_format after gavl_video_connector_start was called.

typedef void(* gavl_packet_connector_process_func)(void *priv, gavl_packet_t *p)

Callback for processing a packet.

Parameters:
priv Client data
packet Packet
This function is called whenever a packet was read from the source. Use gavl_packet_connector_set_process_func to set this callback.


Function Documentation

GAVL_PUBLIC gavl_audio_connector_t* gavl_audio_connector_create ( gavl_audio_source_t src  ) 

Create an audio connector.

Parameters:
src Source
Returns:
A newly created audio connector

GAVL_PUBLIC gavl_audio_options_t* gavl_audio_connector_get_options ( gavl_audio_connector_t c  ) 

Get conversion options.

Parameters:
c An audio connector
Returns:
Conversion options
These options will be used for all internal format conversions.

GAVL_PUBLIC void gavl_audio_connector_destroy ( gavl_audio_connector_t c  ) 

Destroy an audio connector.

Parameters:
c An audio connector

GAVL_PUBLIC void gavl_audio_connector_connect ( gavl_audio_connector_t c,
gavl_audio_sink_t sink 
)

Connect a sink.

Parameters:
c An audio connector
sink An audio sink

GAVL_PUBLIC void gavl_audio_connector_set_process_func ( gavl_audio_connector_t c,
gavl_audio_connector_process_func  func,
void *  priv 
)

Set process callback.

Parameters:
c An audio connector
func Process callback
priv Client data to be passed to func

GAVL_PUBLIC void gavl_audio_connector_start ( gavl_audio_connector_t c  ) 

Start an audio connector.

Parameters:
c An audio connector
Call this function after connecting all sinks and before calling gavl_audio_connector_process.

GAVL_PUBLIC const gavl_audio_format_t* gavl_audio_connector_get_process_format ( gavl_audio_connector_t c  ) 

Get process format.

Parameters:
c An audio connector
Returns:
The intermediate format of the frames passed to the process callback

GAVL_PUBLIC int gavl_audio_connector_process ( gavl_audio_connector_t c  ) 

Process one frame.

Parameters:
c An audio connector
Returns:
0 if a sink reported an error, 1 else
Read one frame from the source and pass it to all sinks. The sinks might output zero or more frames depending on the conversions.

GAVL_PUBLIC void gavl_audio_connector_reset ( gavl_audio_connector_t c  ) 

Reset an audio connector.

Parameters:
c An audio connector
Reset the audio connector.

GAVL_PUBLIC gavl_source_status_t gavl_audio_connector_get_source_status ( gavl_audio_connector_t c  ) 

Get the status of the last read call.

Parameters:
c An audio connector
Returns:
The last status of the source

GAVL_PUBLIC gavl_video_connector_t* gavl_video_connector_create ( gavl_video_source_t src  ) 

Create a video connector.

Parameters:
src Source
Returns:
A newly created video connector

GAVL_PUBLIC gavl_video_options_t* gavl_video_connector_get_options ( gavl_video_connector_t c  ) 

Get conversion options.

Parameters:
c A video connector
Returns:
Conversion options
These options will be used for all internal format conversions.

GAVL_PUBLIC void gavl_video_connector_destroy ( gavl_video_connector_t c  ) 

Destroy a video connector.

Parameters:
c A video connector

GAVL_PUBLIC void gavl_video_connector_connect ( gavl_video_connector_t c,
gavl_video_sink_t sink 
)

Connect a sink.

Parameters:
c A video connector
sink A video sink

GAVL_PUBLIC void gavl_video_connector_set_process_func ( gavl_video_connector_t c,
gavl_video_connector_process_func  func,
void *  priv 
)

Set process callback.

Parameters:
c A video connector
func Process callback
priv Client data to be passed to func

GAVL_PUBLIC void gavl_video_connector_start ( gavl_video_connector_t c  ) 

Start a video connector.

Parameters:
c A video connector
Call this function after connecting all sinks and before calling gavl_video_connector_process.

GAVL_PUBLIC const gavl_video_format_t* gavl_video_connector_get_process_format ( gavl_video_connector_t c  ) 

Get process format.

Parameters:
c A video connector
Returns:
The intermediate format of the frames passed to the process callback

GAVL_PUBLIC int gavl_video_connector_process ( gavl_video_connector_t c  ) 

Process one frame.

Parameters:
c A video connector
Returns:
0 if a sink reported an error, 1 else
Read one frame from the source and pass it to all sinks. The sinks might output zero or more frames depending on the conversions.

GAVL_PUBLIC void gavl_video_connector_reset ( gavl_video_connector_t c  ) 

Reset a video connector.

Parameters:
c A video connector
Reset the video connector.

GAVL_PUBLIC gavl_source_status_t gavl_video_connector_get_source_status ( gavl_video_connector_t c  ) 

Get the status of the last read call.

Parameters:
c A video connector
Returns:
The last status of the source

GAVL_PUBLIC gavl_packet_connector_t* gavl_packet_connector_create ( gavl_packet_source_t src  ) 

Create a packet connector.

Parameters:
src Source
Returns:
A newly created packet connector

GAVL_PUBLIC void gavl_packet_connector_destroy ( gavl_packet_connector_t c  ) 

Destroy a packet connector.

Parameters:
c A packet connector

GAVL_PUBLIC void gavl_packet_connector_connect ( gavl_packet_connector_t c,
gavl_packet_sink_t sink 
)

Connect a sink.

Parameters:
c A packet connector
sink A packet sink

GAVL_PUBLIC void gavl_packet_connector_set_process_func ( gavl_packet_connector_t c,
gavl_packet_connector_process_func  func,
void *  priv 
)

Set process callback.

Parameters:
c A packet connector
func Process callback
priv Client data to be passed to func

GAVL_PUBLIC int gavl_packet_connector_process ( gavl_packet_connector_t c  ) 

Process one packet.

Parameters:
c A packet connector
Returns:
0 if a sink reported an error, 1 else
Read one packet from the source and pass it to all sinks.

GAVL_PUBLIC gavl_source_status_t gavl_packet_connector_get_source_status ( gavl_packet_connector_t c  ) 

Get the status of the last read call.

Parameters:
c A packet connector
Returns:
The last status of the source


Generated on Sun Sep 6 17:35:01 2015 for gavl by  doxygen 1.5.6