*
* Function will lock the object.
*/
-input_thread_t *libvlc_get_input_thread( libvlc_media_player_t *p_mi,
- libvlc_exception_t *p_e )
+input_thread_t *libvlc_get_input_thread( libvlc_media_player_t *p_mi )
{
input_thread_t *p_input_thread;
- if( !p_mi ) RAISENULL( "Media Instance is NULL" );
+ assert( p_mi );
lock(p_mi);
-
- if( !p_mi->p_input_thread )
- {
- unlock(p_mi);
- RAISENULL( "Input is NULL" );
- }
-
p_input_thread = p_mi->p_input_thread;
- vlc_object_hold( p_input_thread );
-
+ if( p_input_thread )
+ vlc_object_hold( p_input_thread );
+ else
+ libvlc_printerr( "No active input" );
unlock(p_mi);
return p_input_thread;
}
vlc_object_attach (mp, mp->p_libvlc);
- /* Drawable */
+ /* Video */
var_Create (mp, "drawable-xid", VLC_VAR_INTEGER);
#ifdef WIN32
var_Create (mp, "drawable-hwnd", VLC_VAR_ADDRESS);
var_Create (mp, "drawable-nsobject", VLC_VAR_ADDRESS);
#endif
- /* Drawable input methods */
var_Create (mp, "keyboard-events", VLC_VAR_BOOL);
var_SetBool (mp, "keyboard-events", true);
var_Create (mp, "mouse-events", VLC_VAR_BOOL);
+ var_SetBool (mp, "mouse-events", true);
+
+ var_Create (mp, "fullscreen", VLC_VAR_BOOL);
+ var_Create (mp, "autoscale", VLC_VAR_BOOL);
+ var_SetBool (mp, "autoscale", true);
+ var_Create (mp, "scale", VLC_VAR_FLOAT);
+ var_SetFloat (mp, "scale", 1.);
+ var_Create (mp, "aspect-ratio", VLC_VAR_STRING);
+ var_Create (mp, "crop", VLC_VAR_STRING);
+ var_Create (mp, "deinterlace", VLC_VAR_INTEGER);
+ var_Create (mp, "deinterlace-mode", VLC_VAR_STRING);
+
+ /* Audio */
+ var_Create (mp, "aout", VLC_VAR_STRING | VLC_VAR_DOINHERIT);
mp->p_md = NULL;
mp->state = libvlc_NothingSpecial;
{
input_thread_t * p_input_thread;
- if( (p_input_thread = libvlc_get_input_thread( p_mi, NULL )) )
+ if( (p_input_thread = libvlc_get_input_thread( p_mi )) )
{
/* A thread already exists, send it a play message */
input_Control( p_input_thread, INPUT_SET_STATE, PLAYING_S );
**************************************************************************/
void libvlc_media_player_pause( libvlc_media_player_t *p_mi )
{
- input_thread_t * p_input_thread = libvlc_get_input_thread( p_mi, NULL );
+ input_thread_t * p_input_thread = libvlc_get_input_thread( p_mi );
if( !p_input_thread )
return;
input_thread_t *p_input_thread;
libvlc_time_t i_time;
- p_input_thread = libvlc_get_input_thread ( p_mi, NULL );
+ p_input_thread = libvlc_get_input_thread ( p_mi );
if( !p_input_thread )
return -1;
input_thread_t *p_input_thread;
libvlc_time_t i_time;
- p_input_thread = libvlc_get_input_thread ( p_mi, NULL );
+ p_input_thread = libvlc_get_input_thread ( p_mi );
if( !p_input_thread )
return -1;
{
input_thread_t *p_input_thread;
- p_input_thread = libvlc_get_input_thread ( p_mi, NULL );
+ p_input_thread = libvlc_get_input_thread ( p_mi );
if( !p_input_thread )
return;
{
input_thread_t *p_input_thread;
- p_input_thread = libvlc_get_input_thread ( p_mi, NULL );
+ p_input_thread = libvlc_get_input_thread ( p_mi );
if( !p_input_thread )
return;
input_thread_t *p_input_thread;
float f_position;
- p_input_thread = libvlc_get_input_thread ( p_mi, NULL );
+ p_input_thread = libvlc_get_input_thread ( p_mi );
if( !p_input_thread )
return -1.0;
{
input_thread_t *p_input_thread;
- p_input_thread = libvlc_get_input_thread ( p_mi, NULL );
+ p_input_thread = libvlc_get_input_thread ( p_mi );
if( !p_input_thread )
return;
input_thread_t *p_input_thread;
int i_chapter;
- p_input_thread = libvlc_get_input_thread ( p_mi, NULL );
+ p_input_thread = libvlc_get_input_thread ( p_mi );
if( !p_input_thread )
return -1;
input_thread_t *p_input_thread;
vlc_value_t val;
- p_input_thread = libvlc_get_input_thread ( p_mi, NULL );
+ p_input_thread = libvlc_get_input_thread ( p_mi );
if( !p_input_thread )
return -1;
input_thread_t *p_input_thread;
vlc_value_t val;
- p_input_thread = libvlc_get_input_thread ( p_mi, NULL );
+ p_input_thread = libvlc_get_input_thread ( p_mi );
if( !p_input_thread )
return -1;
{
input_thread_t *p_input_thread;
- p_input_thread = libvlc_get_input_thread ( p_mi, NULL );
+ p_input_thread = libvlc_get_input_thread ( p_mi );
if( !p_input_thread )
return;
input_thread_t *p_input_thread;
int i_title;
- p_input_thread = libvlc_get_input_thread ( p_mi, NULL );
+ p_input_thread = libvlc_get_input_thread ( p_mi );
if( !p_input_thread )
return -1;
input_thread_t *p_input_thread;
vlc_value_t val;
- p_input_thread = libvlc_get_input_thread ( p_mi, NULL );
+ p_input_thread = libvlc_get_input_thread ( p_mi );
if( !p_input_thread )
return -1;
{
input_thread_t *p_input_thread;
- p_input_thread = libvlc_get_input_thread ( p_mi, NULL );
+ p_input_thread = libvlc_get_input_thread ( p_mi );
if( !p_input_thread )
return;
{
input_thread_t *p_input_thread;
- p_input_thread = libvlc_get_input_thread ( p_mi, NULL );
+ p_input_thread = libvlc_get_input_thread ( p_mi );
if( !p_input_thread )
return;
float libvlc_media_player_get_fps( libvlc_media_player_t *p_mi )
{
- input_thread_t *p_input_thread = libvlc_get_input_thread ( p_mi, NULL );
+ input_thread_t *p_input_thread = libvlc_get_input_thread ( p_mi );
double f_fps = 0.0;
if( p_input_thread )
{
bool b_will_play;
input_thread_t *p_input_thread =
- libvlc_get_input_thread ( p_mi, NULL );
+ libvlc_get_input_thread ( p_mi );
if ( !p_input_thread )
return false;
input_thread_t *p_input_thread;
bool b_can_rewind;
- p_input_thread = libvlc_get_input_thread ( p_mi, NULL );
+ p_input_thread = libvlc_get_input_thread ( p_mi );
if( !p_input_thread )
return -1;
float f_rate;
bool b_can_rewind;
- p_input_thread = libvlc_get_input_thread ( p_mi, NULL );
+ p_input_thread = libvlc_get_input_thread ( p_mi );
if( !p_input_thread )
return 0.0; /* rate < 0 indicates rewind */
input_thread_t *p_input_thread;
bool b_seekable;
- p_input_thread = libvlc_get_input_thread ( p_mi, NULL );
+ p_input_thread = libvlc_get_input_thread ( p_mi );
if ( !p_input_thread )
return false;
b_seekable = var_GetBool( p_input_thread, "can-seek" );
libvlc_get_track_description( libvlc_media_player_t *p_mi,
const char *psz_variable )
{
- input_thread_t *p_input = libvlc_get_input_thread( p_mi, NULL );
+ input_thread_t *p_input = libvlc_get_input_thread( p_mi );
libvlc_track_description_t *p_track_description = NULL,
*p_actual, *p_previous;
if ( !p_actual )
{
libvlc_track_description_release( p_track_description );
- libvlc_exception_raise( p_e );
libvlc_printerr( "Not enough memory" );
goto end;
}
input_thread_t *p_input_thread;
bool b_can_pause;
- p_input_thread = libvlc_get_input_thread ( p_mi, NULL );
+ p_input_thread = libvlc_get_input_thread ( p_mi );
if ( !p_input_thread )
return false;
b_can_pause = var_GetBool( p_input_thread, "can-pause" );
void libvlc_media_player_next_frame( libvlc_media_player_t *p_mi )
{
- input_thread_t *p_input_thread = libvlc_get_input_thread ( p_mi, NULL );
+ input_thread_t *p_input_thread = libvlc_get_input_thread ( p_mi );
if( p_input_thread != NULL )
{
var_TriggerCallback( p_input_thread, "frame-next" );