Mercurial > mplayer.hg
comparison mplayer.c @ 4431:44c23fd75005
Added uninit to input
author | albeu |
---|---|
date | Thu, 31 Jan 2002 09:37:12 +0000 |
parents | 8141d2c399e4 |
children | df8e0f71cc3c |
comparison
equal
deleted
inserted
replaced
4430:b4cc68c448db | 4431:44c23fd75005 |
---|---|
290 #define INITED_GUI 4 | 290 #define INITED_GUI 4 |
291 #define INITED_GETCH2 8 | 291 #define INITED_GETCH2 8 |
292 #define INITED_LIRC 16 | 292 #define INITED_LIRC 16 |
293 #define INITED_SPUDEC 32 | 293 #define INITED_SPUDEC 32 |
294 #define INITED_STREAM 64 | 294 #define INITED_STREAM 64 |
295 #define INITED_INPUT 128 | |
295 #define INITED_ALL 0xFFFF | 296 #define INITED_ALL 0xFFFF |
296 | 297 |
297 void uninit_player(unsigned int mask){ | 298 void uninit_player(unsigned int mask){ |
298 mask=inited_flags&mask; | 299 mask=inited_flags&mask; |
299 #ifdef USE_DVDREAD | 300 #ifdef USE_DVDREAD |
344 #ifdef HAVE_LIRC | 345 #ifdef HAVE_LIRC |
345 if(mask&INITED_LIRC){ | 346 if(mask&INITED_LIRC){ |
346 inited_flags&=~INITED_LIRC; | 347 inited_flags&=~INITED_LIRC; |
347 current_module="uninit_lirc"; | 348 current_module="uninit_lirc"; |
348 lirc_mp_cleanup(); | 349 lirc_mp_cleanup(); |
350 } | |
351 #endif | |
352 | |
353 #ifdef HAVE_NEW_INPUT | |
354 if(mask&INITED_INPUT){ | |
355 inited_flags&=INITED_INPUT; | |
356 current_module="uninit_input"; | |
357 mp_input_uninit(); | |
349 } | 358 } |
350 #endif | 359 #endif |
351 | 360 |
352 current_module=NULL; | 361 current_module=NULL; |
353 | 362 |
632 inited_flags|=INITED_GUI; | 641 inited_flags|=INITED_GUI; |
633 mplShMem->Playing= (gui_no_filename) ? 0 : 1; | 642 mplShMem->Playing= (gui_no_filename) ? 0 : 1; |
634 } | 643 } |
635 #endif | 644 #endif |
636 | 645 |
637 #ifdef HAVE_LIRC | 646 #if defined(HAVE_LIRC) && ! defined(HAVE_NEW_INPUT) |
638 lirc_mp_setup(); | 647 lirc_mp_setup(); |
639 inited_flags|=INITED_LIRC; | 648 inited_flags|=INITED_LIRC; |
640 #endif | 649 #endif |
641 | 650 |
642 #ifdef HAVE_RTC | 651 #ifdef HAVE_RTC |
682 mp_input_add_key_fd(keyb_fifo_get,1,NULL,NULL); | 691 mp_input_add_key_fd(keyb_fifo_get,1,NULL,NULL); |
683 if(slave_mode) | 692 if(slave_mode) |
684 mp_input_add_cmd_fd(0,1,NULL,NULL); | 693 mp_input_add_cmd_fd(0,1,NULL,NULL); |
685 else | 694 else |
686 mp_input_add_key_fd(0,1,NULL,NULL); | 695 mp_input_add_key_fd(0,1,NULL,NULL); |
696 inited_flags|=INITED_INPUT; | |
687 current_module = NULL; | 697 current_module = NULL; |
688 #endif | 698 #endif |
689 | 699 |
690 | 700 |
691 //========= Catch terminate signals: ================ | 701 //========= Catch terminate signals: ================ |
866 } | 876 } |
867 | 877 |
868 current_module="open_stream"; | 878 current_module="open_stream"; |
869 stream=open_stream(filename,vcd_track,&file_format); | 879 stream=open_stream(filename,vcd_track,&file_format); |
870 if(!stream) { // error... | 880 if(!stream) { // error... |
871 uninit_player(inited_flags-(INITED_GUI+INITED_LIRC)); | 881 uninit_player(inited_flags-(INITED_GUI+INITED_LIRC+INITED_INPUT)); |
872 goto goto_next_file_src; | 882 goto goto_next_file_src; |
873 } | 883 } |
874 inited_flags|=INITED_STREAM; | 884 inited_flags|=INITED_STREAM; |
875 if(stream->type == STREAMTYPE_PLAYLIST) { | 885 if(stream->type == STREAMTYPE_PLAYLIST) { |
876 play_tree_t* entry; | 886 play_tree_t* entry; |
884 if(playtree_iter->tree == entry) { // Loop with a single file | 894 if(playtree_iter->tree == entry) { // Loop with a single file |
885 if(play_tree_iter_up_step(playtree_iter,1,0) != PLAY_TREE_ITER_ENTRY) | 895 if(play_tree_iter_up_step(playtree_iter,1,0) != PLAY_TREE_ITER_ENTRY) |
886 goto goto_next_file; | 896 goto goto_next_file; |
887 } | 897 } |
888 play_tree_remove(entry,1,1); | 898 play_tree_remove(entry,1,1); |
889 uninit_player(inited_flags-(INITED_GUI+INITED_LIRC)); | 899 uninit_player(inited_flags-(INITED_GUI+INITED_LIRC+INITED_INPUT)); |
890 goto goto_next_file_src; | 900 goto goto_next_file_src; |
891 } | 901 } |
892 play_tree_insert_entry(playtree_iter->tree,entry); | 902 play_tree_insert_entry(playtree_iter->tree,entry); |
893 entry = playtree_iter->tree; | 903 entry = playtree_iter->tree; |
894 if(play_tree_iter_step(playtree_iter,1,0) != PLAY_TREE_ITER_ENTRY) | 904 if(play_tree_iter_step(playtree_iter,1,0) != PLAY_TREE_ITER_ENTRY) |
895 goto goto_next_file; | 905 goto goto_next_file; |
896 play_tree_remove(entry,1,1); | 906 play_tree_remove(entry,1,1); |
897 uninit_player(inited_flags-(INITED_GUI+INITED_LIRC)); | 907 uninit_player(inited_flags-(INITED_GUI+INITED_LIRC+INITED_INPUT)); |
898 goto goto_next_file_src; | 908 goto goto_next_file_src; |
899 } | 909 } |
900 stream->start_pos+=seek_to_byte; | 910 stream->start_pos+=seek_to_byte; |
901 | 911 |
902 if(stream_dump_type==5){ | 912 if(stream_dump_type==5){ |
2695 } | 2705 } |
2696 | 2706 |
2697 if(eof == PT_NEXT_ENTRY || eof == PT_PREV_ENTRY) { | 2707 if(eof == PT_NEXT_ENTRY || eof == PT_PREV_ENTRY) { |
2698 eof = eof == PT_NEXT_ENTRY ? 1 : -1; | 2708 eof = eof == PT_NEXT_ENTRY ? 1 : -1; |
2699 if(play_tree_iter_step(playtree_iter,eof,0) == PLAY_TREE_ITER_ENTRY) { | 2709 if(play_tree_iter_step(playtree_iter,eof,0) == PLAY_TREE_ITER_ENTRY) { |
2700 uninit_player(INITED_ALL-(INITED_GUI+INITED_LIRC)); | 2710 uninit_player(INITED_ALL-(INITED_GUI+INITED_LIRC+INITED_INPUT)); |
2701 eof = 1; | 2711 eof = 1; |
2702 } else { | 2712 } else { |
2703 play_tree_iter_free(playtree_iter); | 2713 play_tree_iter_free(playtree_iter); |
2704 playtree_iter = NULL; | 2714 playtree_iter = NULL; |
2705 } | 2715 } |
2706 } else if (eof == PT_UP_NEXT || eof == PT_UP_PREV) { | 2716 } else if (eof == PT_UP_NEXT || eof == PT_UP_PREV) { |
2707 eof = eof == PT_UP_NEXT ? 1 : -1; | 2717 eof = eof == PT_UP_NEXT ? 1 : -1; |
2708 if(play_tree_iter_up_step(playtree_iter,eof,0) == PLAY_TREE_ITER_ENTRY) { | 2718 if(play_tree_iter_up_step(playtree_iter,eof,0) == PLAY_TREE_ITER_ENTRY) { |
2709 uninit_player(INITED_ALL-(INITED_GUI+INITED_LIRC)); | 2719 uninit_player(INITED_ALL-(INITED_GUI+INITED_LIRC+INITED_INPUT)); |
2710 eof = 1; | 2720 eof = 1; |
2711 } else { | 2721 } else { |
2712 play_tree_iter_free(playtree_iter); | 2722 play_tree_iter_free(playtree_iter); |
2713 playtree_iter = NULL; | 2723 playtree_iter = NULL; |
2714 } | 2724 } |
2715 }else { // NEXT PREV SRC | 2725 }else { // NEXT PREV SRC |
2716 uninit_player(INITED_ALL-(INITED_GUI+INITED_LIRC)); | 2726 uninit_player(INITED_ALL-(INITED_GUI+INITED_LIRC+INITED_INPUT)); |
2717 eof = eof == PT_PREV_SRC ? -1 : 1; | 2727 eof = eof == PT_PREV_SRC ? -1 : 1; |
2718 } | 2728 } |
2719 | 2729 |
2720 goto_next_file_src: // When we have multiple src for file | 2730 goto_next_file_src: // When we have multiple src for file |
2721 | 2731 |