Commit aeb0b482 authored by Olivier Aubert's avatar Olivier Aubert

corba: remove useless files

parent 3dfa9f43
This diff is collapsed.
#ifndef __mediacontrol_core_h
#define __mediacontrol_core_h
#ifndef __VLC__
#define __VLC__
#endif
#include <vlc/vlc.h>
/************************************************************************
* Position Object Manipulation
*************************************************************************/
typedef enum {
mediacontrol_AbsolutePosition,
mediacontrol_RelativePosition,
mediacontrol_ModuloPosition
} mediacontrol_PositionOrigin;
typedef enum {
mediacontrol_ByteCount,
mediacontrol_SampleCount,
mediacontrol_MediaTime
} mediacontrol_PositionKey;
typedef struct {
mediacontrol_PositionOrigin origin;
mediacontrol_PositionKey key;
long value;
} mediacontrol_Position;
typedef struct {
int width;
int height;
long type;
long long date;
int size;
char* data;
} mediacontrol_RGBPicture;
typedef struct {
int size;
char** data;
} mediacontrol_PlaylistSeq;
typedef struct {
int code;
char* message;
} mediacontrol_Exception;
/* Exception codes */
#define mediacontrol_PositionKeyNotSupported 1
#define mediacontrol_PositionOriginNotSupported 2
#define mediacontrol_InvalidPosition 3
#define mediacontrol_PlaylistException 4
#define mediacontrol_InternalException 5
typedef struct {
vlc_object_t *p_vlc;
playlist_t *p_playlist;
intf_thread_t *p_intf;
int vlc_object_id;
} mediacontrol_Instance;
/* Cf stream_control.h */
enum mediacontrol_PlayerStatusList
{
mediacontrol_PlayingStatus, mediacontrol_PauseStatus,
mediacontrol_ForwardStatus, mediacontrol_BackwardStatus,
mediacontrol_InitStatus, mediacontrol_EndStatus,
mediacontrol_UndefinedStatus
};
typedef enum mediacontrol_PlayerStatusList mediacontrol_PlayerStatus;
typedef struct {
mediacontrol_PlayerStatus streamstatus;
char* url; /* The URL of the current media stream */
long long position; /* actual location in the stream (in ms) */
long long length; /* total length of the stream (in ms) */
} mediacontrol_StreamInformation;
/* Helper functions */
long long mediacontrol_unit_convert (input_thread_t *p_input,
mediacontrol_PositionKey from,
mediacontrol_PositionKey to,
long long value);
long long
mediacontrol_position2microsecond (input_thread_t* p_input, const mediacontrol_Position * pos);
mediacontrol_RGBPicture* mediacontrol_RGBPicture__alloc (int datasize);
void mediacontrol_RGBPicture__free (mediacontrol_RGBPicture* pic);
mediacontrol_PlaylistSeq* mediacontrol_PlaylistSeq__alloc (int size);
void mediacontrol_PlaylistSeq__free (mediacontrol_PlaylistSeq* ps);
mediacontrol_Exception* mediacontrol_exception_init(mediacontrol_Exception *exception);
void mediacontrol_exception_free(mediacontrol_Exception *exception);
mediacontrol_Instance* mediacontrol_new(char** args, mediacontrol_Exception *exception);
mediacontrol_Instance* mediacontrol_new_from_object(vlc_object_t* p_object,
mediacontrol_Exception *exception);
mediacontrol_Position* mediacontrol_get_media_position(mediacontrol_Instance *self,
mediacontrol_PositionOrigin an_origin,
mediacontrol_PositionKey a_key,
mediacontrol_Exception *exception);
void mediacontrol_set_media_position(mediacontrol_Instance *self,
const mediacontrol_Position* a_position,
mediacontrol_Exception *exception);
void mediacontrol_start(mediacontrol_Instance *self,
const mediacontrol_Position* a_position,
mediacontrol_Exception *exception);
void mediacontrol_pause(mediacontrol_Instance *self,
const mediacontrol_Position* a_position,
mediacontrol_Exception *exception);
void mediacontrol_resume(mediacontrol_Instance *self,
const mediacontrol_Position* a_position,
mediacontrol_Exception *exception);
void mediacontrol_stop(mediacontrol_Instance *self,
const mediacontrol_Position* a_position,
mediacontrol_Exception *exception);
void mediacontrol_exit(mediacontrol_Instance *self);
void mediacontrol_playlist_add_item (mediacontrol_Instance *self,
const char* psz_file,
mediacontrol_Exception *exception);
void mediacontrol_playlist_clear (mediacontrol_Instance *self,
mediacontrol_Exception *exception);
mediacontrol_PlaylistSeq* mediacontrol_playlist_get_list (mediacontrol_Instance *self,
mediacontrol_Exception *exception);
mediacontrol_RGBPicture* mediacontrol_snapshot (mediacontrol_Instance *self,
const mediacontrol_Position* a_position,
mediacontrol_Exception *exception);
/* Return a NULL terminated list */
mediacontrol_RGBPicture** mediacontrol_all_snapshots (mediacontrol_Instance *self,
mediacontrol_Exception *exception);
// Displays the message string, between "begin" and "end" positions
void mediacontrol_display_text (mediacontrol_Instance *self,
const char* message,
const mediacontrol_Position* begin,
const mediacontrol_Position* end,
mediacontrol_Exception *exception);
mediacontrol_StreamInformation*
mediacontrol_get_stream_information(mediacontrol_Instance* self,
mediacontrol_PositionKey a_key,
mediacontrol_Exception *exception);
unsigned short mediacontrol_sound_get_volume(mediacontrol_Instance* self,
mediacontrol_Exception *exception);
void mediacontrol_sound_set_volume(mediacontrol_Instance* self,
const unsigned short volume,
mediacontrol_Exception *exception);
#endif
#include "mediacontrol-core.h"
mediacontrol_Instance* mediacontrol_new( char** args, mediacontrol_Exception *exception )
{
mediacontrol_Instance* retval;
vlc_object_t *p_vlc;
int p_vlc_id;
char **ppsz_argv;
int i_count = 0;
int i_index;
char **p_tmp;
if( args )
{
for ( p_tmp = args ; *p_tmp != NULL ; p_tmp++ )
i_count++;
}
ppsz_argv = malloc( i_count + 2 );
ppsz_argv[0] = strdup( "vlc" );
for ( i_index = 0; i_index < i_count; i_index++ )
ppsz_argv[i_index + 1] = strdup( args[i_index] );
ppsz_argv[i_count + 1] = NULL;
p_vlc_id = VLC_Create();
p_vlc = ( vlc_object_t* )vlc_current_object( p_vlc_id );
if( ! p_vlc )
{
exception->code = mediacontrol_InternalException;
exception->message = strdup( "Unable to initialize VLC" );
return NULL;
}
retval = ( mediacontrol_Instance* )malloc( sizeof( mediacontrol_Instance ) );
VLC_Init( p_vlc_id, i_count + 1, ppsz_argv );
retval->p_vlc = p_vlc;
retval->vlc_object_id = p_vlc_id;
/* We can keep references on these, which should not change. Is it true ? */
retval->p_playlist = vlc_object_find( p_vlc, VLC_OBJECT_PLAYLIST, FIND_ANYWHERE );
retval->p_intf = vlc_object_find( p_vlc, VLC_OBJECT_INTF, FIND_ANYWHERE );
if( ! retval->p_playlist || ! retval->p_intf )
{
exception->code = mediacontrol_InternalException;
exception->message = strdup( "No available interface" );
return NULL;
}
return retval;
};
void
mediacontrol_exit( mediacontrol_Instance *self )
{
vlc_object_release( (vlc_object_t* )self->p_playlist );
vlc_object_release( (vlc_object_t* )self->p_intf );
VLC_CleanUp( self->vlc_object_id );
VLC_Destroy( self->vlc_object_id );
}
#include "mediacontrol-core.h"
#include <vlc/intf.h>
mediacontrol_Instance* mediacontrol_new( char** args, mediacontrol_Exception *exception )
{
exception->code = mediacontrol_InternalException;
exception->message = strdup( "The mediacontrol extension was compiled for plugin use only." );
return NULL;
};
void
mediacontrol_exit( mediacontrol_Instance *self )
{
/*
vlc_object_release( self->p_playlist );
*/
vlc_mutex_lock( &self->p_intf->change_lock );
self->p_intf->b_die = 1;
vlc_mutex_unlock( &self->p_intf->change_lock );
/*
vlc_object_release( self->p_intf );
vlc_object_release( self->p_vlc );
*/
}
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment