summaryrefslogtreecommitdiff
path: root/win32/source/xineconsole.cpp
blob: 21055b667007b10e4859e86c0b5903d035c582fd (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
#include <windows.h>
#include <commctrl.h>
#include <stdio.h>
#include <conio.h>
#include "utils.h"
#include "xineint.h"


void event_listener( void * user_data, xine_event_t * xine_event )
{
	printf ("main: event listener, got event type %d\n", xine_event->type);
  
	switch( xine_event->type )
	{ 
		case XINE_EVENT_UI_CHANNELS_CHANGED:
			printf( "xine-event : XINE_EVENT_UI_CHANNELS_CHANGED\n" );
		break;

		case XINE_EVENT_UI_SET_TITLE:
			printf( "xine-event : XINE_EVENT_UI_SET_TITLE\n" );
		break;

		case XINE_EVENT_UI_PLAYBACK_FINISHED:
			printf( "xine-event : XINE_EVENT_PLAYBACK_FINISHED\n" );
		break;

#if 0
		case XINE_EVENT_NEED_NEXT_MRL:
			printf( "xine-event : XINE_EVENT_NEED_NEXT_MRL\n" );
		break;

		case XINE_EVENT_BRANCHED:
			printf( "xine-event : XINE_EVENT_BRANCHED\n" );
		break;
#endif
	}      
}

int main( int argc, char *argv[ ], char *envp[ ] )
{
	win32_visual_t win32_visual;

	// print welcome

	printf( "xine win32 console app v 0.1\n" );

	// init xine libs

	config_values_t config;
	memset( &win32_visual, 0, sizeof( win32_visual ) );
	xine_t * xine = xine_startup( &config, &win32_visual );

	if( !argv[1] )
		printf( "xineconsole error : no media input file specified\n" );
	else
		xine_play( xine, argv[1], 0, 0 );

	xine_register_event_listener( xine, event_listener, &win32_visual );

	xine_set_audio_property( xine, AO_PROP_MUTE_VOL, 1 );

	getch();

	return 0;
}