avdec.h File Reference
`#include <gavl/gavl.h>`
`#include <gavl/compression.h>`
`#include <gavl/metadata.h>`
`#include <gavl/chapterlist.h>`
`#include <gavl/connectors.h>`
`#include <gavl/edl.h>`
`#include <gavl/msg.h>`
`#include "bgavdefs.h"`

Go to the source code of this file.

## Data Structures

struct | bgav_device_info_t
| Info structure for a device. More...

## Macros

#define | BGAV_TIMESTAMP_UNDEFINED GAVL_TIME_UNDEFINED
| Time value indicating an invalid time.

## Typedefs

typedef struct bgav_s | bgav_t
| Opaque decoder structure.
typedef gavl_dictionary_t | bgav_metadata_t
| Opaque metadata container.
typedef struct bgav_options_s | bgav_options_t
| Opaque option container.
typedef void(* | bgav_metadata_change_callback) (void *data, const bgav_metadata_t *metadata)
| Enumeration for log levels.
typedef void(* | bgav_buffer_callback) (void *data, float percentage)
| Function to be called if the input module is buffering data.
typedef int(* | bgav_user_pass_callback) (void *data, const char *resource, char **username, char **password)
| Function to be called if the input module needs authentication data.
typedef void(* | bgav_aspect_callback) (void *data, int stream, int pixel_width, int pixel_height)
| Function to be called if a change of the aspect ratio was detected.
typedef void(* | bgav_index_callback) (void *data, float percentage)
| Function to be called periodically while an index is built.
typedef struct bgav_stream_decoder_s | bgav_stream_decoder_t
| Forward declaration for a stream decoder.

## Enumerations

enum | bgav_stream_action_t { BGAV_STREAM_MUTE = 0 , BGAV_STREAM_DECODE = 1 , BGAV_STREAM_PARSE = 2 , BGAV_STREAM_READRAW = 3 }
| Stream action. More...

## Functions

BGAV_PUBLIC bgav_t * | bgav_create ()
| Create a decoder instance.
BGAV_PUBLIC const char * | bgav_metadata_get_author (const bgav_metadata_t *metadata)
| Get the author (or composer) of the track.
BGAV_PUBLIC const char * | bgav_metadata_get_title (const bgav_metadata_t *metadata)
| Get the title of the track.
BGAV_PUBLIC const char * | bgav_metadata_get_comment (const bgav_metadata_t *metadata)
| Get an additional comment of the track.
BGAV_PUBLIC const char * | bgav_metadata_get_copyright (const bgav_metadata_t *metadata)
| Get the copyright notice of the track.
BGAV_PUBLIC const char * | bgav_metadata_get_album (const bgav_metadata_t *metadata)
| Get the album this track comes from.
BGAV_PUBLIC const char * | bgav_metadata_get_artist (const bgav_metadata_t *metadata)
| Get the artist (or performer) of this track.
BGAV_PUBLIC const char * | bgav_metadata_get_albumartist (const bgav_metadata_t *metadata)
| Get the album artist of this track.
BGAV_PUBLIC const char * | bgav_metadata_get_genre (const bgav_metadata_t *metadata)
| Get the genre this track belongs to.
BGAV_PUBLIC const char * | bgav_metadata_get_date (const bgav_metadata_t *metadata)
| Get the date of the recording.
BGAV_PUBLIC int | bgav_metadata_get_track (const bgav_metadata_t *metadata)
| Get the track index.
BGAV_PUBLIC bgav_options_t * | bgav_get_options (bgav_t *bgav)
| Get the options of a decoder instance.
BGAV_PUBLIC bgav_options_t * | bgav_options_create ()
| Create an options container.
BGAV_PUBLIC void | bgav_options_destroy (bgav_options_t *opt)
| Destroy option cotainer.
BGAV_PUBLIC void | bgav_options_copy (bgav_options_t *dst, const bgav_options_t *src)
| Copy options.
BGAV_PUBLIC void | bgav_options_set_connect_timeout (bgav_options_t *opt, int timeout)
| Set connect timeout.
BGAV_PUBLIC void | bgav_options_set_read_timeout (bgav_options_t *opt, int timeout)
| Set read timeout.
BGAV_PUBLIC void | bgav_options_set_rtp_port_base (bgav_options_t *opt, int p)
| Set RTP port pase.
BGAV_PUBLIC void | bgav_options_set_rtp_try_tcp (bgav_options_t *opt, int enable)
| Try TCP before UDP.
BGAV_PUBLIC void | bgav_options_set_network_bandwidth (bgav_options_t *opt, int bandwidth)
| Set network bandwidth.
BGAV_PUBLIC void | bgav_options_set_http_use_proxy (bgav_options_t *opt, int enable)
| Set proxy usage.
BGAV_PUBLIC void | bgav_options_set_http_proxy_host (bgav_options_t *opt, const char *host)
| Set proxy host.
BGAV_PUBLIC void | bgav_options_set_http_proxy_port (bgav_options_t *opt, int port)
| Set proxy port.
BGAV_PUBLIC void | bgav_options_set_http_proxy_auth (bgav_options_t *opt, int enable)
| Enable or disable proxy authentication.
BGAV_PUBLIC void | bgav_options_set_http_proxy_user (bgav_options_t *opt, const char *user)
| Set proxy username.
BGAV_PUBLIC void | bgav_options_set_http_proxy_pass (bgav_options_t *opt, const char *pass)
| Set proxy password.
BGAV_PUBLIC void | bgav_options_set_http_shoutcast_metadata (bgav_options_t *opt, int enable)
| Enable or disable shoutcast metadata streaming.
BGAV_PUBLIC void | bgav_options_set_ftp_anonymous (bgav_options_t *opt, int enable)
| Enable or disable anonymous ftp login.
BGAV_PUBLIC void | bgav_options_set_ftp_anonymous_password (bgav_options_t *opt, const char *pass)
| Set anonymous password.
BGAV_PUBLIC void | bgav_options_set_default_subtitle_encoding (bgav_options_t *opt, const char *encoding)
| Set default subtitle encoding.
BGAV_PUBLIC void | bgav_options_set_audio_dynrange (bgav_options_t *opt, int audio_dynrange)
| Enable dynamic range control.
BGAV_PUBLIC void | bgav_options_set_sample_accurate (bgav_options_t *opt, int enable)
| Try to be sample accurate.
BGAV_PUBLIC void | bgav_options_set_cache_time (bgav_options_t *opt, int t)
| Set the index creation time for caching.
BGAV_PUBLIC void | bgav_options_set_cache_size (bgav_options_t *opt, int s)
| Set the maximum total size of the index cache.
BGAV_PUBLIC void | bgav_options_set_seek_subtitles (bgav_options_t *opt, int seek_subtitles)
| Enable external subtitle files.
BGAV_PUBLIC void | bgav_options_set_pp_level (bgav_options_t *opt, int pp_level)
| Set postprocessing level.
BGAV_PUBLIC void | bgav_options_set_postprocessing_level (bgav_options_t *opt, float pp_level)
| Set postprocessing level.
BGAV_PUBLIC void | bgav_options_set_threads (bgav_options_t *opt, int threads)
| Set number of threads.
BGAV_PUBLIC void | bgav_options_set_dvb_channels_file (bgav_options_t *opt, const char *file)
| Set DVB channels file.
BGAV_PUBLIC void | bgav_options_set_prefer_ffmpeg_demuxers (bgav_options_t *opt, int prefer)
| Preference of ffmpeg demultiplexers.
BGAV_PUBLIC void | bgav_options_set_dv_datetime (bgav_options_t *opt, int datetime)
| Exports the date and time as timecode field of DV streams.
BGAV_PUBLIC void | bgav_options_set_shrink (bgav_options_t *opt, int factor)
| Shrink factor.
BGAV_PUBLIC void | bgav_options_set_vdpau (bgav_options_t *opt, int vdpau)
| VDPAU acceleration.
BGAV_PUBLIC void | bgav_options_set_vaapi (bgav_options_t *opt, int vaapi)
| VAAPI acceleration.
BGAV_PUBLIC void | bgav_options_set_dump_headers (bgav_options_t *opt, int enable)
| Dump file headers.
BGAV_PUBLIC void | bgav_options_set_dump_indices (bgav_options_t *opt, int enable)
| Dump file indices.
BGAV_PUBLIC void | bgav_options_set_dump_packets (bgav_options_t *opt, int enable)
| Dump packets.
BGAV_PUBLIC void | bgav_options_set_metadata_change_callback (bgav_options_t *opt, bgav_metadata_change_callback callback, void *data)
| Set the callback for metadata change events.
BGAV_PUBLIC void | bgav_options_set_buffer_callback (bgav_options_t *opt, bgav_buffer_callback callback, void *data)
| Set the callback for buffering notification.
BGAV_PUBLIC void | bgav_options_set_user_pass_callback (bgav_options_t *opt, bgav_user_pass_callback callback, void *data)
| Set the callback for user authentication.
BGAV_PUBLIC void | bgav_options_set_aspect_callback (bgav_options_t *opt, bgav_aspect_callback callback, void *data)
| Set aspect ratio change callback.
BGAV_PUBLIC void | bgav_options_set_index_callback (bgav_options_t *opt, bgav_index_callback callback, void *data)
| Set index build callback.
BGAV_PUBLIC void | bgav_set_msg_callback_by_id (bgav_t *b, int id, gavl_handle_msg_func callback, void *data)
BGAV_PUBLIC bgav_device_info_t * | bgav_find_devices_vcd ()
| Scan for VCD capable devices.
BGAV_PUBLIC int | bgav_check_device_vcd (const char *device, char **name)
| Test if a device is VCD capable.
BGAV_PUBLIC bgav_device_info_t * | bgav_find_devices_dvd ()
| Scan for DVD capable devices.
BGAV_PUBLIC int | bgav_check_device_dvd (const char *device, char **name)
| Test if a device is DVD capable.
BGAV_PUBLIC bgav_device_info_t * | bgav_find_devices_dvb ()
| Scan for DVB capable devices.
BGAV_PUBLIC int | bgav_check_device_dvb (const char *device, char **name)
| Test if a device is DVB capable.
BGAV_PUBLIC void | bgav_device_info_destroy (bgav_device_info_t *arr)
| Destroy a device info array.
BGAV_PUBLIC int | bgav_eject_disc (const char *device)
| Eject a disc.
BGAV_PUBLIC const char * | bgav_get_disc_name (bgav_t *bgav)
| Get the name of a disc.
BGAV_PUBLIC int | bgav_open (bgav_t *bgav, const char *location)
| Open a file or URL.
BGAV_PUBLIC int | bgav_open_vcd (bgav_t *bgav, const char *location)
| Open a VCD device.
BGAV_PUBLIC int | bgav_open_dvd (bgav_t *bgav, const char *location)
| Open a DVD device.
BGAV_PUBLIC int | bgav_open_dvb (bgav_t *bgav, const char *location)
| Open a DVB device.
BGAV_PUBLIC int | bgav_open_callbacks (bgav_t *bgav, int(*read_callback)(void *priv, uint8_t *data, int len), int64_t(*seek_callback)(void *priv, int64_t pos, int whence), void *priv, const char *filename, const char *mimetype, int64_t total_bytes)
| Open a decoder with callbacks.
BGAV_PUBLIC void | bgav_close (bgav_t *bgav)
| Close a decoder and free all associated memory.
BGAV_PUBLIC const gavl_dictionary_t * | bgav_get_edl (bgav_t *bgav)
| Get an EDL from an open decoder.
BGAV_PUBLIC int | bgav_num_tracks (bgav_t *bgav)
| Get the number of tracks.
BGAV_PUBLIC const char * | bgav_get_description (bgav_t *bgav)
| Get a technical description of the format.
BGAV_PUBLIC gavl_time_t | bgav_get_duration (bgav_t *bgav, int track)
| Get the duration of a track.
BGAV_PUBLIC int | bgav_num_audio_streams (bgav_t *bgav, int track)
| Get the number of audio streams of a track.
BGAV_PUBLIC int | bgav_num_video_streams (bgav_t *bgav, int track)
| Get the number of video streams of a track.
BGAV_PUBLIC int | bgav_num_subtitle_streams (bgav_t *bgav, int track)
| Get the number of subtitle streams of a track.
BGAV_PUBLIC int | bgav_num_text_streams (bgav_t *bgav, int track)
| Get the number of text streams of a track.
BGAV_PUBLIC int | bgav_num_overlay_streams (bgav_t *bgav, int track)
| Get the number of overlay streams of a track.
BGAV_PUBLIC const char * | bgav_get_track_name (bgav_t *bgav, int track)
| Get the name a track.
BGAV_PUBLIC const bgav_metadata_t * | bgav_get_metadata (bgav_t *bgav, int track)
| Get metadata for a track.
BGAV_PUBLIC gavl_dictionary_t * | bgav_get_media_info (bgav_t *bgav)
| Get media information.
BGAV_PUBLIC int | bgav_select_track (bgav_t *bgav, int track)
| Select a track.
BGAV_PUBLIC int | bgav_get_num_chapters (bgav_t *bgav, int track, int *timescale)
| Get the number of chapters.
BGAV_PUBLIC const char * | bgav_get_chapter_name (bgav_t *bgav, int track, int chapter)
| Get the name of a chapter.
BGAV_PUBLIC int64_t | bgav_get_chapter_time (bgav_t *bgav, int track, int chapter)
| Get the name of a chapter.
BGAV_PUBLIC const gavl_chapter_list_t * | bgav_get_chapter_list (bgav_t *bgav, int track)
| Get the chapter list.
BGAV_PUBLIC const char * | bgav_get_audio_language (bgav_t *bgav, int stream)
| Get the language of an audio stream.
BGAV_PUBLIC int | bgav_get_audio_bitrate (bgav_t *bgav, int stream)
| Get the bitrate of an audio stream.
BGAV_PUBLIC const bgav_metadata_t * | bgav_get_audio_metadata (bgav_t *bgav, int stream)
| Get the metadata of an audio stream of the current track.
BGAV_PUBLIC const bgav_metadata_t * | bgav_get_audio_metadata_t (bgav_t *b, int t, int s)
| Get the metadata of an audio stream.
BGAV_PUBLIC const char * | bgav_get_subtitle_language (bgav_t *bgav, int stream)
| Get the language of a subtitle stream.
BGAV_PUBLIC const bgav_metadata_t * | bgav_get_subtitle_metadata (bgav_t *bgav, int stream)
| Get the metadata of a subtitle stream.
BGAV_PUBLIC const bgav_metadata_t * | bgav_get_text_metadata (bgav_t *b, int stream)
| Get the metadata of a text stream of the current track.
BGAV_PUBLIC const bgav_metadata_t * | bgav_get_text_metadata_t (bgav_t *b, int track, int stream)
| Get the metadata of a text stream.
BGAV_PUBLIC const bgav_metadata_t * | bgav_get_overlay_metadata (bgav_t *b, int stream)
| Get the metadata of an overlay stream of the current track.
BGAV_PUBLIC const bgav_metadata_t * | bgav_get_overlay_metadata_t (bgav_t *b, int track, int stream)
| Get the metadata of an overlay stream.
BGAV_PUBLIC const bgav_metadata_t * | bgav_get_video_metadata (bgav_t *bgav, int stream)
| Get the metadata of a video stream of the current track.
BGAV_PUBLIC const bgav_metadata_t * | bgav_get_video_metadata_t (bgav_t *b, int t, int s)
| Get the metadata of a video stream.
BGAV_PUBLIC int | bgav_get_audio_compression_info (bgav_t *bgav, int stream, gavl_compression_info_t *info)
| Get audio compression info.
BGAV_PUBLIC int | bgav_get_video_compression_info (bgav_t *bgav, int stream, gavl_compression_info_t *info)
| Get video compression info.
BGAV_PUBLIC int | bgav_get_overlay_compression_info (bgav_t *bgav, int stream, gavl_compression_info_t *info)
| Get overlay compression info.
BGAV_PUBLIC int | bgav_read_audio_packet (bgav_t *bgav, int stream, gavl_packet_t *p)
| Read compressed audio packet.
BGAV_PUBLIC gavl_packet_source_t * | bgav_get_audio_packet_source (bgav_t *bgav, int stream)
| Get a packet source for an audio stream.
BGAV_PUBLIC int | bgav_read_video_packet (bgav_t *bgav, int stream, gavl_packet_t *p)
| Read compressed video packet.
BGAV_PUBLIC gavl_packet_source_t * | bgav_get_video_packet_source (bgav_t *bgav, int stream)
| Get a packet source for a video stream.
BGAV_PUBLIC gavl_packet_source_t * | bgav_get_text_packet_source (bgav_t *bgav, int stream)
| Get a packet source for a text subtitle stream.
BGAV_PUBLIC gavl_packet_source_t * | bgav_get_overlay_packet_source (bgav_t *bgav, int stream)
| Get a packet source for an overlay stream.
BGAV_PUBLIC int | bgav_set_audio_stream (bgav_t *bgav, int stream, bgav_stream_action_t action)
| Select mode for an audio stream.
BGAV_PUBLIC int | bgav_set_video_stream (bgav_t *bgav, int stream, bgav_stream_action_t action)
| Select mode for a video stream.
BGAV_PUBLIC int | bgav_set_subtitle_stream (bgav_t *bgav, int stream, bgav_stream_action_t action)
| Select mode for a subtitle stream.
BGAV_PUBLIC int | bgav_set_text_stream (bgav_t *bgav, int stream, bgav_stream_action_t action)
| Select mode for a text stream.
BGAV_PUBLIC int | bgav_set_overlay_stream (bgav_t *bgav, int stream, bgav_stream_action_t action)
| Select mode for an overlay stream.
BGAV_PUBLIC int | bgav_start (bgav_t *bgav)
| Start all codecs.
BGAV_PUBLIC int | bgav_pause (bgav_t *bgav)
BGAV_PUBLIC int | bgav_resume (bgav_t *bgav)
BGAV_PUBLIC const gavl_audio_format_t * | bgav_get_audio_format (bgav_t *bgav, int stream)
| Get the format of an audio stream of the current track.
BGAV_PUBLIC const gavl_audio_format_t * | bgav_get_audio_format_t (bgav_t *bgav, int track, int stream)
| Get the format of an audio stream.
BGAV_PUBLIC const gavl_video_format_t * | bgav_get_video_format (bgav_t *bgav, int stream)
| Get the format of a video stream.
BGAV_PUBLIC const gavl_video_format_t * | bgav_get_video_format_t (bgav_t *bgav, int t, int stream)
| Get the format of a video stream.
BGAV_PUBLIC const gavl_video_format_t * | bgav_get_overlay_format (bgav_t *bgav, int stream)
| Get the format of an overlay stream.
BGAV_PUBLIC int | bgav_get_text_timescale (bgav_t *bgav, int stream)
| Get the timescale for a text stream.
BGAV_PUBLIC gavl_frame_table_t * | bgav_get_frame_table (bgav_t *bgav, int stream)
| Get the frame table of a video stream.
BGAV_PUBLIC const gavl_video_format_t * | bgav_get_subtitle_format (bgav_t *bgav, int stream)
| Get the video format of a subtitle stream.
BGAV_PUBLIC int | bgav_subtitle_is_text (bgav_t *bgav, int stream)
| Check if a subtitle is text or graphics based.
BGAV_PUBLIC const char * | bgav_get_audio_description (bgav_t *bgav, int stream)
| Get the description of an audio stream.
BGAV_PUBLIC const char * | bgav_get_audio_info (bgav_t *bgav, int stream)
| Get additional info about an audio stream.
BGAV_PUBLIC const char * | bgav_get_video_description (bgav_t *bgav, int stream)
| Get the description of a video stream.
BGAV_PUBLIC const char * | bgav_get_subtitle_description (bgav_t *bgav, int stream)
| Get the description of a subtitle stream.
BGAV_PUBLIC const char * | bgav_get_subtitle_info (bgav_t *bgav, int stream)
| Get additional info about a subtitle stream.
BGAV_PUBLIC int | bgav_can_pause (bgav_t *bgav)
| Query if a track is pausable.
BGAV_PUBLIC int | bgav_video_has_still (bgav_t *bgav, int stream)
| Determine if a still image is available for reading.
BGAV_PUBLIC int | bgav_read_video (bgav_t *bgav, gavl_video_frame_t *frame, int stream)
| Decode a video frame.
BGAV_PUBLIC void | bgav_skip_video (bgav_t *bgav, int stream, int64_t *time, int scale, int exact)
| Skip forward in a video stream.
BGAV_PUBLIC gavl_video_source_t * | bgav_get_video_source (bgav_t *bgav, int stream)
| Return the video source for a video stream.
BGAV_PUBLIC gavl_video_source_t * | bgav_get_overlay_source (bgav_t *bgav, int stream)
| Return the video source for an overlay stream.
BGAV_PUBLIC int | bgav_read_audio (bgav_t *bgav, gavl_audio_frame_t *frame, int stream, int num_samples)
| Decode audio samples.
BGAV_PUBLIC gavl_audio_source_t * | bgav_get_audio_source (bgav_t *bgav, int stream)
| Return the audio source for this stream.
BGAV_PUBLIC int | bgav_has_subtitle (bgav_t *bgav, int stream)
| Check, if a new subtitle is available.
BGAV_PUBLIC int | bgav_read_subtitle_overlay (bgav_t *bgav, gavl_overlay_t *ovl, int stream)
| Decode an overlay subtitle.
BGAV_PUBLIC int | bgav_read_subtitle_text (bgav_t *bgav, char **ret, int *ret_alloc, int64_t *start_time, int64_t *duration, int stream)
| Decode a text subtitle.
BGAV_PUBLIC int | bgav_can_seek (bgav_t *bgav)
| Check if a track is seekabkle.
BGAV_PUBLIC void | bgav_seek (bgav_t *bgav, gavl_time_t *time)
| Seek to a specific time.
BGAV_PUBLIC void | bgav_seek_scaled (bgav_t *bgav, int64_t *time, int scale)
| Seek to a specific stream position.
BGAV_PUBLIC int | bgav_can_seek_sample (bgav_t *bgav)
| Check if a track is seekabkle with sample accuracy.
BGAV_PUBLIC int64_t | bgav_audio_duration (bgav_t *bgav, int stream)
| Get the audio duration.
BGAV_PUBLIC int64_t | bgav_audio_start_time (bgav_t *bgav, int stream)
| Get the audio start time.
BGAV_PUBLIC int64_t | bgav_video_duration (bgav_t *bgav, int stream)
| Get the video duration.
BGAV_PUBLIC int64_t | bgav_video_start_time (bgav_t *bgav, int stream)
| Get the video start time.
BGAV_PUBLIC int64_t | bgav_subtitle_duration (bgav_t *bgav, int stream)
| Get the subtitle duration.
BGAV_PUBLIC int64_t | bgav_text_duration (bgav_t *bgav, int stream)
| Get the text duration.
BGAV_PUBLIC int64_t | bgav_overlay_duration (bgav_t *bgav, int stream)
| Get the overlay duration.
BGAV_PUBLIC void | bgav_seek_audio (bgav_t *bgav, int stream, int64_t sample)
| Seek to a specific audio sample.
BGAV_PUBLIC void | bgav_seek_video (bgav_t *bgav, int stream, int64_t time)
| Seek to a specific video time.
BGAV_PUBLIC int64_t | bgav_video_keyframe_before (bgav_t *bgav, int stream, int64_t time)
| Get the time of the closest keyframe before a given time.
BGAV_PUBLIC int64_t | bgav_video_keyframe_after (bgav_t *bgav, int stream, int64_t time)
| Get the time of the closest keyframe after a given time.
BGAV_PUBLIC void | bgav_seek_subtitle (bgav_t *bgav, int stream, int64_t time)
| Seek to a specific subtitle position.
BGAV_PUBLIC void | bgav_seek_text (bgav_t *bgav, int stream, int64_t time)
| Seek to a specific text position.
BGAV_PUBLIC void | bgav_seek_overlay (bgav_t *bgav, int stream, int64_t time)
| Seek to a specific overlay position.
BGAV_PUBLIC bgav_stream_decoder_t * | bgav_stream_decoder_create ()
| Create a stream decoder.
BGAV_PUBLIC bgav_options_t * | bgav_stream_decoder_get_options (bgav_stream_decoder_t *dec)
| Get options for a stream decoder.
BGAV_PUBLIC gavl_audio_source_t * | bgav_stream_decoder_connect_audio (bgav_stream_decoder_t *dec, gavl_packet_source_t *src, const gavl_compression_info_t *ci, const gavl_audio_format_t *fmt, gavl_dictionary_t *m)
| Connect an audio stream decoder.
BGAV_PUBLIC gavl_video_source_t * | bgav_stream_decoder_connect_video (bgav_stream_decoder_t *dec, gavl_packet_source_t *src, const gavl_compression_info_t *ci, const gavl_video_format_t *fmt, gavl_dictionary_t *m)
| Connect a video stream decoder.
BGAV_PUBLIC gavl_video_source_t * | bgav_stream_decoder_connect_overlay (bgav_stream_decoder_t *dec, gavl_packet_source_t *src, const gavl_compression_info_t *ci, const gavl_video_format_t *fmt, gavl_dictionary_t *m)
| Connect an overlay stream decoder.
BGAV_PUBLIC int64_t | bgav_stream_decoder_skip (bgav_stream_decoder_t *dec, int64_t t, int scale)
| Skip to a specified time.
BGAV_PUBLIC void | bgav_stream_decoder_reset (bgav_stream_decoder_t *dec)
| Reset a stream decoder.
BGAV_PUBLIC void | bgav_stream_decoder_destroy (bgav_stream_decoder_t *dec)
| Destroy a stream decoder.
BGAV_PUBLIC gavl_codec_id_t * | bgav_supported_audio_compressions ()
| Get supported audio compressions.
BGAV_PUBLIC gavl_codec_id_t * | bgav_supported_video_compressions ()
| Get supported video compressions.
BGAV_PUBLIC int | bgav_set_stream_action_all (bgav_t *bgav, int idx, bgav_stream_action_t action)
BGAV_PUBLIC void | bgav_dump (bgav_t *bgav)
| Dump informations of all tracks to stderr.
BGAV_PUBLIC void | bgav_codecs_dump ()
| Dump informations about all available codecs to stderr.
BGAV_PUBLIC void | bgav_formats_dump ()
| Dump informations about all available format demuxers to stderr.
BGAV_PUBLIC void | bgav_inputs_dump ()
| Dump informations about all available input modules to stderr.
BGAV_PUBLIC void | bgav_redirectors_dump ()
| Dump informations about all available redirectors to stderr.
BGAV_PUBLIC void | bgav_subreaders_dump ()
| Dump informations about all available subtitle readers to stderr.

## Detailed Description

external api header.