|
ascii-chat 0.8.38
Real-time terminal-based video chat with ASCII art conversion
|
Media source for video and audio capture. More...
Data Fields | |
| media_source_type_t | type |
| Type of media source (webcam, file, stdin, test) | |
| bool | loop_enabled |
| Whether to loop playback (for files) | |
| bool | is_paused |
| Whether playback is paused. | |
| webcam_context_t * | webcam_ctx |
| Webcam context (NULL for non-webcam types) | |
| unsigned short int | webcam_index |
| Webcam device index. | |
| ffmpeg_decoder_t * | video_decoder |
| Video decoder (separate or shared with audio) | |
| ffmpeg_decoder_t * | audio_decoder |
| Audio decoder (separate or shared with video) | |
| bool | is_shared_decoder |
| True if both streams share same decoder (YouTube URLs) | |
| mutex_t | decoder_mutex |
| Protects shared decoder access (YouTube URLs) | |
| mutex_t | seek_access_mutex |
| Protects decoder access during seeks. | |
| mutex_t | pause_mutex |
| Protects pause state. | |
| char * | file_path |
| File path (for FILE type) | |
| char * | original_youtube_url |
| Original YouTube URL for re-extraction. | |
| void * | audio_ctx |
| Audio context for clearing buffers on seek (opaque) | |
Media source for video and audio capture.
Abstracts multiple media input types (webcam, files, stdin, test patterns) with unified interface for frame/audio reading.
| void* media_source_t::audio_ctx |
Audio context for clearing buffers on seek (opaque)
Definition at line 55 of file source.c.
Referenced by media_source_seek(), and media_source_set_audio_context().
| ffmpeg_decoder_t* media_source_t::audio_decoder |
Audio decoder (separate or shared with video)
Definition at line 42 of file source.c.
Referenced by media_source_create(), media_source_destroy(), media_source_has_audio(), media_source_read_audio(), media_source_rewind(), and media_source_seek().
| mutex_t media_source_t::decoder_mutex |
Protects shared decoder access (YouTube URLs)
Definition at line 46 of file source.c.
Referenced by media_source_create(), media_source_destroy(), media_source_read_audio(), media_source_read_video(), and media_source_rewind().
| char* media_source_t::file_path |
File path (for FILE type)
Definition at line 51 of file source.c.
Referenced by media_source_create(), and media_source_destroy().
| bool media_source_t::is_paused |
Whether playback is paused.
Definition at line 34 of file source.c.
Referenced by media_source_create(), media_source_is_paused(), media_source_pause(), media_source_read_audio(), media_source_read_video(), media_source_resume(), and media_source_toggle_pause().
| bool media_source_t::is_shared_decoder |
True if both streams share same decoder (YouTube URLs)
Definition at line 43 of file source.c.
Referenced by media_source_create(), media_source_destroy(), media_source_read_audio(), media_source_read_video(), media_source_rewind(), media_source_seek(), and media_source_sync_audio_to_video().
| bool media_source_t::loop_enabled |
Whether to loop playback (for files)
Definition at line 33 of file source.c.
Referenced by media_source_at_end(), media_source_create(), media_source_read_audio(), media_source_read_video(), and media_source_set_loop().
| char* media_source_t::original_youtube_url |
Original YouTube URL for re-extraction.
Definition at line 52 of file source.c.
Referenced by media_source_create(), and media_source_destroy().
| mutex_t media_source_t::pause_mutex |
Protects pause state.
Definition at line 48 of file source.c.
Referenced by media_source_create(), media_source_destroy(), media_source_is_paused(), media_source_pause(), media_source_read_audio(), media_source_read_video(), media_source_resume(), and media_source_toggle_pause().
| mutex_t media_source_t::seek_access_mutex |
Protects decoder access during seeks.
Definition at line 47 of file source.c.
Referenced by media_source_create(), media_source_destroy(), and media_source_read_audio().
| media_source_type_t media_source_t::type |
Type of media source (webcam, file, stdin, test)
Definition at line 32 of file source.c.
Referenced by media_source_at_end(), media_source_create(), media_source_get_duration(), media_source_get_position(), media_source_get_type(), media_source_get_video_fps(), media_source_has_audio(), media_source_has_video(), media_source_read_audio(), media_source_read_video(), media_source_rewind(), media_source_seek(), media_source_set_loop(), and media_source_sync_audio_to_video().
| ffmpeg_decoder_t* media_source_t::video_decoder |
Video decoder (separate or shared with audio)
Definition at line 41 of file source.c.
Referenced by media_source_at_end(), media_source_create(), media_source_destroy(), media_source_get_duration(), media_source_get_position(), media_source_get_video_fps(), media_source_has_video(), media_source_read_video(), media_source_rewind(), and media_source_seek().
| webcam_context_t* media_source_t::webcam_ctx |
Webcam context (NULL for non-webcam types)
Definition at line 37 of file source.c.
Referenced by media_source_create(), media_source_destroy(), and media_source_read_video().
| unsigned short int media_source_t::webcam_index |