27#ifndef VLC_LIBVLC_MEDIA_PLAYER_H
28#define VLC_LIBVLC_MEDIA_PLAYER_H 1
361 const char *unselected_id,
362 const char *selected_id );
392 int selected_group_id );
440 unsigned chapter_idx );
454 const char *file_path );
855typedef void *(*libvlc_video_lock_cb)(
void *opaque,
void **planes);
874 void *
const *planes);
919 unsigned *width,
unsigned *height,
994 unsigned width,
unsigned height,
1189typedef void* (*libvlc_video_getProcAddress_cb)(
void* opaque,
const char* fct_name);
1337 void *report_opaque );
1419 setup_cb, cleanup_cb, NULL,
1420 update_output_cb, NULL, NULL,
1421 NULL, NULL, NULL, opaque );
1585 void *p_awindow_handler );
1611 unsigned count, int64_t pts);
1665 float volume,
bool mute);
1721 unsigned *channels);
1768 unsigned rate,
unsigned channels );
1836 double f_pos,
bool b_fast );
1868 double a_pos,
double b_pos );
2077 unsigned navigate );
2153 const char *psz_id );
2209 size_t track_count );
2246 const char *psz_ids );
2268 const char *psz_uri,
bool b_select );
2489 unsigned *px,
unsigned *py );
2732 int i_chapters_of_title,
2773 unsigned num,
unsigned den);
2798 unsigned x,
unsigned y,
2799 unsigned width,
unsigned height);
2822 unsigned left,
unsigned right,
2823 unsigned top,
unsigned bottom);
2882 const char *psz_filepath,
unsigned int i_width,
2883 unsigned int i_height );
2914 const char *psz_mode );
2936 unsigned option,
int i_val );
2946 unsigned option,
const char *psz_text );
2980 unsigned option,
int value );
2991 unsigned option,
const char *
psz_value );
3026 unsigned option,
int value );
3048 unsigned option,
float value );
3158#if defined (__GNUC__) && !defined (__clang__)
3159__attribute__((unused))
3160__attribute__((noinline))
3161__attribute__((error(
"Use libvlc_audio_output_device_enum() instead")))
3166 (void) p_instance; (void) aout;
3206 const char *device_id );
3540#define libvlc_role_Last libvlc_role_Test
3577 bool enable,
const char *dir_path);
struct vlc_param ** list
Definition core.c:402
size_t count
Definition core.c:403
libvlc_audio_output_mixmode_t
Audio mix modes.
Definition libvlc_media_player.h:3095
LIBVLC_API int libvlc_media_player_set_equalizer(libvlc_media_player_t *p_mi, libvlc_equalizer_t *p_equalizer)
Apply new equalizer settings to a media player.
LIBVLC_API int libvlc_audio_set_mixmode(libvlc_media_player_t *p_mi, libvlc_audio_output_mixmode_t mode)
Set current audio mix-mode.
libvlc_media_player_role
Media player roles.
Definition libvlc_media_player.h:3529
LIBVLC_API int libvlc_audio_output_set(libvlc_media_player_t *p_mi, const char *psz_name)
Selects an audio output module.
LIBVLC_API const char * libvlc_audio_equalizer_get_preset_name(unsigned u_index)
Get the name of a particular equalizer preset.
LIBVLC_API unsigned libvlc_audio_equalizer_get_band_count(void)
Get the number of distinct frequency bands for an equalizer.
libvlc_audio_output_stereomode_t
Audio stereo modes.
Definition libvlc_media_player.h:3082
LIBVLC_API int libvlc_media_player_set_role(libvlc_media_player_t *p_mi, unsigned role)
Sets the media role.
LIBVLC_API void libvlc_audio_toggle_mute(libvlc_media_player_t *p_mi)
Toggle mute status.
LIBVLC_API int libvlc_audio_equalizer_set_preamp(libvlc_equalizer_t *p_equalizer, float f_preamp)
Set a new pre-amplification value for an equalizer.
LIBVLC_API libvlc_time_t libvlc_audio_get_delay(libvlc_media_player_t *p_mi)
Get current audio delay.
LIBVLC_API void libvlc_audio_set_mute(libvlc_media_player_t *p_mi, int status)
Set mute status.
LIBVLC_API float libvlc_audio_equalizer_get_band_frequency(unsigned u_index)
Get a particular equalizer band frequency.
LIBVLC_API float libvlc_audio_equalizer_get_preamp(libvlc_equalizer_t *p_equalizer)
Get the current pre-amplification value from an equalizer.
LIBVLC_API libvlc_audio_output_t * libvlc_audio_output_list_get(libvlc_instance_t *p_instance)
Gets the list of available audio output modules.
LIBVLC_API int libvlc_audio_set_volume(libvlc_media_player_t *p_mi, int i_volume)
Set current software audio volume.
LIBVLC_API int libvlc_media_player_get_role(libvlc_media_player_t *p_mi)
Gets the media role.
LIBVLC_API int libvlc_audio_equalizer_set_amp_at_index(libvlc_equalizer_t *p_equalizer, float f_amp, unsigned u_band)
Set a new amplification value for a particular equalizer frequency band.
LIBVLC_API int libvlc_audio_get_mute(libvlc_media_player_t *p_mi)
Get current mute status.
LIBVLC_API int libvlc_audio_get_volume(libvlc_media_player_t *p_mi)
Get current software audio volume.
LIBVLC_API int libvlc_audio_output_device_set(libvlc_media_player_t *mp, const char *device_id)
Configures an explicit audio output device.
LIBVLC_API libvlc_audio_output_mixmode_t libvlc_audio_get_mixmode(libvlc_media_player_t *p_mi)
Get current audio mix-mode.
enum libvlc_media_player_role libvlc_media_player_role_t
Media player roles.
LIBVLC_API int libvlc_audio_set_delay(libvlc_media_player_t *p_mi, libvlc_time_t i_delay)
Set current audio delay.
LIBVLC_API libvlc_equalizer_t * libvlc_audio_equalizer_new(void)
Create a new default equalizer, with all frequency values zeroed.
LIBVLC_API int libvlc_audio_set_stereomode(libvlc_media_player_t *p_mi, libvlc_audio_output_stereomode_t mode)
Set current audio stereo-mode.
LIBVLC_API void libvlc_audio_output_list_release(libvlc_audio_output_t *p_list)
Frees the list of available audio output modules.
LIBVLC_API float libvlc_audio_equalizer_get_amp_at_index(libvlc_equalizer_t *p_equalizer, unsigned u_band)
Get the amplification value for a particular equalizer frequency band.
LIBVLC_API libvlc_equalizer_t * libvlc_audio_equalizer_new_from_preset(unsigned u_index)
Create a new equalizer, with initial frequency values copied from an existing preset.
LIBVLC_API void libvlc_media_player_record(libvlc_media_player_t *p_mi, bool enable, const char *dir_path)
Start/stop recording.
LIBVLC_API libvlc_audio_output_device_t * libvlc_audio_output_device_enum(libvlc_media_player_t *mp)
Gets a list of potential audio output devices.
LIBVLC_API unsigned libvlc_audio_equalizer_get_preset_count(void)
Get the number of equalizer presets.
LIBVLC_API char * libvlc_audio_output_device_get(libvlc_media_player_t *mp)
Get the current audio output device identifier.
LIBVLC_API libvlc_audio_output_stereomode_t libvlc_audio_get_stereomode(libvlc_media_player_t *p_mi)
Get current audio stereo-mode.
LIBVLC_API void libvlc_audio_equalizer_release(libvlc_equalizer_t *p_equalizer)
Release a previously created equalizer instance.
LIBVLC_API void libvlc_audio_output_device_list_release(libvlc_audio_output_device_t *p_list)
Frees a list of available audio output devices.
@ libvlc_AudioMixMode_4_0
Definition libvlc_media_player.h:3099
@ libvlc_AudioMixMode_Unset
Definition libvlc_media_player.h:3096
@ libvlc_AudioMixMode_5_1
Definition libvlc_media_player.h:3100
@ libvlc_AudioMixMode_Stereo
Definition libvlc_media_player.h:3097
@ libvlc_AudioMixMode_7_1
Definition libvlc_media_player.h:3101
@ libvlc_AudioMixMode_Binaural
Definition libvlc_media_player.h:3098
@ libvlc_role_Game
Video game.
Definition libvlc_media_player.h:3534
@ libvlc_role_None
Don't use a media player role.
Definition libvlc_media_player.h:3530
@ libvlc_role_Notification
User interaction feedback.
Definition libvlc_media_player.h:3535
@ libvlc_role_Production
Audio editing/production.
Definition libvlc_media_player.h:3537
@ libvlc_role_Communication
Speech, real-time communication.
Definition libvlc_media_player.h:3533
@ libvlc_role_Music
Music (or radio) playback.
Definition libvlc_media_player.h:3531
@ libvlc_role_Accessibility
Accessibility.
Definition libvlc_media_player.h:3538
@ libvlc_role_Video
Video playback.
Definition libvlc_media_player.h:3532
@ libvlc_role_Animation
Embedded animation (e.g.
Definition libvlc_media_player.h:3536
@ libvlc_AudioStereoMode_Stereo
Definition libvlc_media_player.h:3084
@ libvlc_AudioStereoMode_Right
Definition libvlc_media_player.h:3087
@ libvlc_AudioStereoMode_Unset
Definition libvlc_media_player.h:3083
@ libvlc_AudioStereoMode_Mono
Definition libvlc_media_player.h:3089
@ libvlc_AudioStereoMode_Dolbys
Definition libvlc_media_player.h:3088
@ libvlc_AudioStereoMode_Left
Definition libvlc_media_player.h:3086
@ libvlc_AudioStereoMode_RStereo
Definition libvlc_media_player.h:3085
struct libvlc_instance_t libvlc_instance_t
This structure is opaque.
Definition libvlc.h:76
int64_t libvlc_time_t
Represents a time value in microseconds.
Definition libvlc.h:79
struct libvlc_picture_list_t libvlc_picture_list_t
Definition libvlc_media_player.h:47
struct libvlc_renderer_item_t libvlc_renderer_item_t
Renderer item.
Definition libvlc_media_player.h:45
LIBVLC_API void libvlc_video_set_aspect_ratio(libvlc_media_player_t *p_mi, const char *psz_aspect)
Set new video aspect ratio.
LIBVLC_API void libvlc_video_set_marquee_int(libvlc_media_player_t *p_mi, unsigned option, int i_val)
Enable, disable or set an integer marquee option.
LIBVLC_API void libvlc_video_set_teletext_transparency(libvlc_media_player_t *p_mi, bool transparent)
Set teletext background transparency.
libvlc_video_adjust_option_t
option values for libvlc_video_{get,set}_adjust_{int,float,bool}
Definition libvlc_media_player.h:2995
LIBVLC_API bool libvlc_get_fullscreen(libvlc_media_player_t *p_mi)
Get current fullscreen status.
LIBVLC_API libvlc_video_stereo_mode_t libvlc_video_get_video_stereo_mode(libvlc_media_player_t *p_mi)
Get current video stereo mode.
LIBVLC_API void libvlc_video_set_crop_border(libvlc_media_player_t *mp, unsigned left, unsigned right, unsigned top, unsigned bottom)
Set the video crop borders.
LIBVLC_API int libvlc_video_set_deinterlace(libvlc_media_player_t *p_mi, int deinterlace, const char *psz_mode)
Enable or disable deinterlace filter.
LIBVLC_API void libvlc_video_set_crop_ratio(libvlc_media_player_t *mp, unsigned num, unsigned den)
Set/unset the video crop ratio.
LIBVLC_API libvlc_time_t libvlc_video_get_spu_delay(libvlc_media_player_t *p_mi)
Get the current subtitle delay.
LIBVLC_API int libvlc_media_player_get_full_title_descriptions(libvlc_media_player_t *p_mi, libvlc_title_description_t ***titles)
Get the full description of available titles.
LIBVLC_API void libvlc_video_set_scale(libvlc_media_player_t *p_mi, float f_factor)
Set the video scaling factor.
LIBVLC_API int libvlc_video_get_size(libvlc_media_player_t *p_mi, unsigned num, unsigned *px, unsigned *py)
Get the pixel dimensions of a video.
LIBVLC_API libvlc_video_fit_mode_t libvlc_video_get_display_fit(libvlc_media_player_t *p_mi)
Get current video display fit mode.
LIBVLC_API int libvlc_video_get_deinterlace(libvlc_media_player_t *mp, char **modep)
Gets the deinterlacing parameters.
LIBVLC_API void libvlc_video_set_marquee_string(libvlc_media_player_t *p_mi, unsigned option, const char *psz_text)
Set a marquee string option.
LIBVLC_API void libvlc_video_set_video_stereo_mode(libvlc_media_player_t *p_mi, const libvlc_video_stereo_mode_t i_mode)
Set new video stereo mode.
LIBVLC_API void libvlc_video_set_logo_string(libvlc_media_player_t *p_mi, unsigned option, const char *psz_value)
Set logo option as string.
LIBVLC_API void libvlc_toggle_fullscreen(libvlc_media_player_t *p_mi)
Toggle fullscreen status on non-embedded video outputs.
LIBVLC_API void libvlc_video_set_display_fit(libvlc_media_player_t *p_mi, libvlc_video_fit_mode_t fit)
Set new video display fit.
LIBVLC_API float libvlc_video_get_adjust_float(libvlc_media_player_t *p_mi, unsigned option)
Get float adjust option.
LIBVLC_API libvlc_video_viewpoint_t * libvlc_video_new_viewpoint(void)
Create a video viewpoint structure.
LIBVLC_API void libvlc_video_set_adjust_int(libvlc_media_player_t *p_mi, unsigned option, int value)
Set adjust option as integer.
LIBVLC_API int libvlc_video_get_teletext(libvlc_media_player_t *p_mi)
Get current teletext page requested or 0 if it's disabled.
LIBVLC_API void libvlc_video_set_key_input(libvlc_media_player_t *p_mi, unsigned on)
Enable or disable key press events handling, according to the LibVLC hotkeys configuration.
LIBVLC_API int libvlc_media_player_get_full_chapter_descriptions(libvlc_media_player_t *p_mi, int i_chapters_of_title, libvlc_chapter_description_t ***pp_chapters)
Get the full description of available chapters.
LIBVLC_API float libvlc_video_get_spu_text_scale(libvlc_media_player_t *p_mi)
Get the current subtitle text scale.
LIBVLC_API void libvlc_video_set_projection_mode(libvlc_media_player_t *player, libvlc_video_projection_t projection_mode)
Change the projection mode used for rendering the source.
LIBVLC_API void libvlc_chapter_descriptions_release(libvlc_chapter_description_t **p_chapters, unsigned i_count)
Release a chapter description.
LIBVLC_API void libvlc_video_set_spu_text_scale(libvlc_media_player_t *p_mi, float f_scale)
Set the subtitle text scale.
LIBVLC_API int libvlc_video_get_logo_int(libvlc_media_player_t *p_mi, unsigned option)
Get integer logo option.
LIBVLC_API int libvlc_video_take_snapshot(libvlc_media_player_t *p_mi, unsigned num, const char *psz_filepath, unsigned int i_width, unsigned int i_height)
Take a snapshot of the current video window.
LIBVLC_API void libvlc_title_descriptions_release(libvlc_title_description_t **p_titles, unsigned i_count)
Release a title description.
LIBVLC_API void libvlc_video_set_crop_window(libvlc_media_player_t *mp, unsigned x, unsigned y, unsigned width, unsigned height)
Set the video crop window.
LIBVLC_API int libvlc_video_set_spu_delay(libvlc_media_player_t *p_mi, libvlc_time_t i_delay)
Set the subtitle delay.
LIBVLC_API float libvlc_video_get_scale(libvlc_media_player_t *p_mi)
Get the current video scaling factor.
libvlc_video_logo_option_t
option values for libvlc_video_{get,set}_logo_{int,string}
Definition libvlc_media_player.h:2949
LIBVLC_API int libvlc_video_update_viewpoint(libvlc_media_player_t *p_mi, const libvlc_video_viewpoint_t *p_viewpoint, bool b_absolute)
Update the video viewpoint information.
LIBVLC_API char * libvlc_video_get_aspect_ratio(libvlc_media_player_t *p_mi)
Get current video aspect ratio.
LIBVLC_API void libvlc_set_fullscreen(libvlc_media_player_t *p_mi, bool b_fullscreen)
Enable or disable fullscreen.
LIBVLC_API int libvlc_video_get_adjust_int(libvlc_media_player_t *p_mi, unsigned option)
Get integer adjust option.
LIBVLC_API void libvlc_video_set_teletext(libvlc_media_player_t *p_mi, int i_page)
Set new teletext page to retrieve.
libvlc_video_stereo_mode_t
Video stereo modes.
Definition libvlc_media_player.h:2611
LIBVLC_API int libvlc_video_get_marquee_int(libvlc_media_player_t *p_mi, unsigned option)
Get an integer marquee option value.
LIBVLC_API void libvlc_video_set_mouse_input(libvlc_media_player_t *p_mi, unsigned on)
Enable or disable mouse click events handling.
LIBVLC_API void libvlc_video_set_adjust_float(libvlc_media_player_t *p_mi, unsigned option, float value)
Set adjust option as float.
LIBVLC_API bool libvlc_video_get_teletext_transparency(libvlc_media_player_t *p_mi)
Get teletext background transparency.
LIBVLC_API void libvlc_video_unset_projection_mode(libvlc_media_player_t *player)
Remove previously set projection mode.
LIBVLC_API int libvlc_video_get_cursor(libvlc_media_player_t *p_mi, unsigned num, int *px, int *py)
Get the mouse pointer coordinates over a video.
LIBVLC_API void libvlc_video_set_logo_int(libvlc_media_player_t *p_mi, unsigned option, int value)
Set logo option as integer.
@ libvlc_adjust_Gamma
Definition libvlc_media_player.h:3001
@ libvlc_adjust_Hue
Definition libvlc_media_player.h:2999
@ libvlc_adjust_Enable
Definition libvlc_media_player.h:2996
@ libvlc_adjust_Brightness
Definition libvlc_media_player.h:2998
@ libvlc_adjust_Saturation
Definition libvlc_media_player.h:3000
@ libvlc_adjust_Contrast
Definition libvlc_media_player.h:2997
@ libvlc_logo_position
Definition libvlc_media_player.h:2957
@ libvlc_logo_repeat
Definition libvlc_media_player.h:2955
@ libvlc_logo_delay
Definition libvlc_media_player.h:2954
@ libvlc_logo_opacity
Definition libvlc_media_player.h:2956
@ libvlc_logo_y
Definition libvlc_media_player.h:2953
@ libvlc_logo_file
string argument, "file,d,t;file,d,t;..."
Definition libvlc_media_player.h:2951
@ libvlc_logo_x
Definition libvlc_media_player.h:2952
@ libvlc_logo_enable
Definition libvlc_media_player.h:2950
@ libvlc_VideoStereoLeftEye
Definition libvlc_media_player.h:2614
@ libvlc_VideoStereoSideBySide
Definition libvlc_media_player.h:2616
@ libvlc_VideoStereoRightEye
Definition libvlc_media_player.h:2615
@ libvlc_VideoStereoAuto
Definition libvlc_media_player.h:2612
@ libvlc_VideoStereoStereo
Definition libvlc_media_player.h:2613
#define LIBVLC_API
Definition libvlc.h:42
int i_type
Definition httpd.c:1299
libvlc_video_orient_t
Definition libvlc_video.h:33
libvlc_video_projection_t
Definition libvlc_video.h:45
vlc_mutex_t lock
Definition rand.c:33
static struct @245270112310123223152303371220240150150304304342 state
Description for audio output device.
Definition libvlc_media_player.h:101
char * psz_device
Device identifier string.
Definition libvlc_media_player.h:103
struct libvlc_audio_output_device_t * p_next
Next entry in list.
Definition libvlc_media_player.h:102
char * psz_description
User-friendly device description.
Definition libvlc_media_player.h:104
Description for audio output.
Definition libvlc_media_player.h:90
char * psz_name
Definition libvlc_media_player.h:91
struct libvlc_audio_output_t * p_next
Definition libvlc_media_player.h:93
char * psz_description
Definition libvlc_media_player.h:92
Description for chapters.
Definition libvlc_media_player.h:79
char * psz_name
chapter name
Definition libvlc_media_player.h:82
libvlc_time_t i_time_offset
time-offset of the chapter in microseconds (us)
Definition libvlc_media_player.h:80
libvlc_time_t i_duration
duration of the chapter in microseconds (us), 0 if unknown
Definition libvlc_media_player.h:81
Definition libvlc_media_player.h:2271
bool b_scrambled
True if the program is scrambled.
Definition libvlc_media_player.h:2279
int i_group_id
Id used for libvlc_media_player_select_program().
Definition libvlc_media_player.h:2273
char * psz_name
Program name, always valid.
Definition libvlc_media_player.h:2275
bool b_selected
True if the program is selected.
Definition libvlc_media_player.h:2277
Definition libvlc_media_player.h:69
libvlc_time_t i_duration
duration in microseconds (us)
Definition libvlc_media_player.h:70
char * psz_name
title name
Definition libvlc_media_player.h:71
unsigned i_flags
info if item was recognized as a menu, interactive or plain content by the demuxer
Definition libvlc_media_player.h:72
Definition libvlc_media_player.h:1090
libvlc_video_color_space_t colorspace
video color space
Definition libvlc_media_player.h:1114
bool full_range
Video is full range or studio/limited range.
Definition libvlc_media_player.h:1112
libvlc_video_color_primaries_t primaries
video color primaries
Definition libvlc_media_player.h:1116
libvlc_video_transfer_func_t transfer
video transfer function
Definition libvlc_media_player.h:1118
libvlc_video_orient_t orientation
video surface orientation
Definition libvlc_media_player.h:1120
union libvlc_video_output_cfg_t::libvlc_video_output_format u
Definition libvlc_media_player.h:1070
libvlc_video_transfer_func_t transfer
video transfer function
Definition libvlc_media_player.h:1084
libvlc_video_color_primaries_t primaries
video color primaries
Definition libvlc_media_player.h:1082
bool full_range
video is full range or studio/limited range
Definition libvlc_media_player.h:1078
libvlc_video_color_space_t colorspace
video color space
Definition libvlc_media_player.h:1080
void * device
device used for rendering, IDirect3DDevice9* for D3D9
Definition libvlc_media_player.h:1086
unsigned height
rendering video height in pixel
Definition libvlc_media_player.h:1074
unsigned bitdepth
rendering video bit depth in bits per channel
Definition libvlc_media_player.h:1076
unsigned width
rendering video width in pixel
Definition libvlc_media_player.h:1072
Definition libvlc_media_player.h:1013
bool hardware_decoding
Definition libvlc_media_player.h:1014
Definition libvlc_media_player.h:1018
union libvlc_video_setup_device_info_t::libvlc_video_setup_device_data u
Viewpoint.
Definition libvlc_media_track.h:64
const char * psz_name
Definition text_style.c:33
Definition libvlc_media_player.h:1019
int adapter
IDirect3D9*.
Definition libvlc_media_player.h:1026
struct libvlc_video_setup_device_info_t::libvlc_video_setup_device_data::@317057244302206263306221236177065325234030267227 d3d9
struct libvlc_video_setup_device_info_t::libvlc_video_setup_device_data::@064022103153054060347271130376333060223100351307 d3d11
void * device_context
Definition libvlc_media_player.h:1021
void * device
Definition libvlc_media_player.h:1025
void * context_mutex
ID3D11DeviceContext*.
Definition libvlc_media_player.h:1022
enum vlc_video_fitting fit
Definition vout_intf.c:145
char psz_value[8]
Definition vout_intf.c:110