* vlc_module.c: vlc python binding module
*****************************************************************************
* Copyright (C) 2006 the VideoLAN team
- * $Id: $
+ * $Id$
*
* Authors: Olivier Aubert <oaubert at bat710.univ-lyon1.fr>
*
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston MA 02110-1301, USA.
*****************************************************************************/
-/* We need to access some internal features of VLC (for vlc_object) */
-/* This is gruik as we are not libvlc at all */
-#define __LIBVLC__
-
-
#include "vlcglue.h"
/**************************************************************************
{
PyObject* p_module;
- PyPosition_Type.tp_new = PyType_GenericNew;
- PyPosition_Type.tp_alloc = PyType_GenericAlloc;
+ /* vlcMediaPlayer_Type.tp_new = PyType_GenericNew; */
+ vlcMediaPlayer_Type.tp_alloc = PyType_GenericAlloc;
+ /* vlcMedia_Type.tp_new = PyType_GenericNew; */
+ vlcMedia_Type.tp_alloc = PyType_GenericAlloc;
- vlcInput_Type.tp_new = PyType_GenericNew;
- vlcInput_Type.tp_alloc = PyType_GenericAlloc;
+ vlcInstance_Type.tp_alloc = PyType_GenericAlloc;
+ MediaControl_Type.tp_alloc = PyType_GenericAlloc;
p_module = Py_InitModule3( "vlc", vlc_methods,
"VLC media player embedding module." );
return;
if( PyType_Ready( &MediaControl_Type ) < 0 )
return;
- if( PyType_Ready( &vlcObject_Type ) < 0 )
- return;
if( PyType_Ready( &vlcInstance_Type ) < 0 )
return;
- if( PyType_Ready( &vlcInput_Type ) < 0 )
+ if( PyType_Ready( &vlcMediaPlayer_Type ) < 0 )
+ return;
+ if( PyType_Ready( &vlcMedia_Type ) < 0 )
return;
/* Exceptions */
MediaControl_PlaylistException );
/* Exceptions */
- vlcInstance_Exception =
+ vlc_Exception =
PyErr_NewException( "vlc.InstanceException", NULL, NULL );
- Py_INCREF( vlcInstance_Exception );
+ Py_INCREF( vlc_Exception );
PyModule_AddObject( p_module, "InstanceException",
- vlcInstance_Exception );
+ vlc_Exception );
/* Types */
Py_INCREF( &PyPosition_Type );
PyModule_AddObject( p_module, "MediaControl",
( PyObject * )&MediaControl_Type );
- Py_INCREF( &vlcObject_Type );
- PyModule_AddObject( p_module, "Object",
- ( PyObject * )&vlcObject_Type );
Py_INCREF( &vlcInstance_Type );
PyModule_AddObject( p_module, "Instance",
( PyObject * )&vlcInstance_Type );
- Py_INCREF( &vlcInput_Type );
- PyModule_AddObject( p_module, "Input",
- ( PyObject * )&vlcInput_Type );
+
+ Py_INCREF( &vlcMediaPlayer_Type );
+ PyModule_AddObject( p_module, "MediaPlayer",
+ ( PyObject * )&vlcMediaPlayer_Type );
+
+ Py_INCREF( &vlcMedia_Type );
+ PyModule_AddObject( p_module, "Media",
+ ( PyObject * )&vlcMedia_Type );
/* Constants */
PyModule_AddIntConstant( p_module, "AbsolutePosition",
mediacontrol_SampleCount );
PyModule_AddIntConstant( p_module, "MediaTime",
mediacontrol_MediaTime );
+
PyModule_AddIntConstant( p_module, "PlayingStatus",
mediacontrol_PlayingStatus );
PyModule_AddIntConstant( p_module, "PauseStatus",
mediacontrol_PauseStatus );
- PyModule_AddIntConstant( p_module, "ForwardStatus",
- mediacontrol_ForwardStatus );
- PyModule_AddIntConstant( p_module, "BackwardStatus",
- mediacontrol_BackwardStatus );
PyModule_AddIntConstant( p_module, "InitStatus",
mediacontrol_InitStatus );
PyModule_AddIntConstant( p_module, "EndStatus",
mediacontrol_EndStatus );
PyModule_AddIntConstant( p_module, "UndefinedStatus",
mediacontrol_UndefinedStatus );
-}
-
-/* Make libpostproc happy... */
-void * fast_memcpy( void * to, const void * from, size_t len )
-{
- return memcpy( to, from, len );
}
/* Horrible hack... Please do not look. Temporary workaround for the
forward declaration mess of python types (cf vlcglue.h). If we do a
separate compilation, we have to declare some types as extern. But
- the recommended way to forward declare types in python is
+ the recommended way to forward declared types in python is
static... I am sorting the mess but in the meantime, this will
produce a working python module.
*/
#include "vlc_mediacontrol.c"
#include "vlc_position.c"
#include "vlc_instance.c"
-#include "vlc_input.c"
-#include "vlc_object.c"
+#include "vlc_mediaplayer.c"
+#include "vlc_media.c"