?? ir_drv.c
字號:
return 0;
}
//返回鍵,或GOTO鍵
if(rx == VOD_IRC_NOVEL_CHANGE_PIC){
vod_isVideo = VOD_VIDEO_Y;
vod_osd_video_display_clear();
return 0;
}
return 0;
}
/*******************************************************************
是否要觀看收費的視頻
********************************************************************/
BYTE vod_video_ir_ischarge(UINT16 rx){
vod_program_t * program_header = (vod_program_t *)(vod_movie_bufstart+ VOD_SERVER_HEADER);
//按鍵'OK'
if(rx == VOD_IRC_CONFIRM){
vod_video_isCharges = VOD_VIDEO_CHARGES_PAID;
vod_video_time_waiting_paid = 0;
//向服務器發送收費命令
//收費方式,按節目收費
if(vod_video_charge_method == VOD_VIDEO_CHARGE_BY_PROGRAM){
vod_tx_s1_command.bType = REQUEST_VOD_START;
vod_tx_s1_command_filename = vod_tx_s0_command_filename;
//價格
vod_tx_s1_command.request_file.dwNumber = (program_header+vod_program_search_result[vod_current_page*6+vod_current_button_right+1])->bPrice;
vod_tx_s1_state = VOD_TX_VIDEO_CHARGE_START;
vod_tx_s1_command_queue_push();
}
//收費方式,按時間收費
else{
//vod_video_isCharges = VOD_VIDEO_CHARGES_PAID;
//向服務器發送已經收看視頻通知
vod_tx_s1_command.bType = REQUEST_VOD_START;
vod_tx_s1_command_filename = vod_tx_s0_command_filename;
//價格
vod_tx_s1_command.request_file.dwNumber = (program_header+vod_program_search_result[vod_current_page*6+vod_current_button_right+1])->bPrice;
vod_tx_s1_state = VOD_TX_VIDEO_CHARGE_START;
vod_tx_s1_command_queue_push();
}
// 清除收費通知
vod_osd_video_charges_clear();
// 如果已經是暫停狀態
if(play_state == VCD_STATE_PAUSE){
//Continue();
chg2normal_play(FAST2NORM|PAUSE2NORM|SLOW2NORM,REALPLAY);
play_state=VCD_STATE_NORMAL;
vod_osd_video_display(VOD_VIDEO_PAUSE);
}
vod_isVideo = VOD_VIDEO_Y;
return 1;
}
//返回
if(rx == VOD_IRC_RETURN){
vod_video_time_waiting_paid = 0;
// 停止播放
AVD_SetMediaInterrupt();
vod_video_play_state = VOD_VIDEO_STOP;
vod_isVideo = VOD_VIDEO_N;
return 1;
}
return 0;
}
/*******************************************************************
是否要退出視頻
********************************************************************/
BYTE vod_video_ir_isexit(UINT16 rx){
//按鍵'OK'
if(rx == VOD_IRC_CONFIRM){
//vod_video_isCharges = VOD_VIDEO_CHARGES_FREE;
vod_video_time_waiting_paid = 0;
// 停止播放
AVD_SetMediaInterrupt();
vod_video_play_state = VOD_VIDEO_STOP;
vod_isVideo = VOD_VIDEO_N;
return 1;
}
//返回
if(rx == VOD_IRC_RETURN){
//清空詢問框
vod_osd_video_isexit_clear();
vod_isVideo = VOD_VIDEO_Y;
return 0;
}
return 0;
}
/*************************************************************
酒店首頁logo1
**************************************************************/
BYTE vod_logo_1(UINT16 rx){
#ifdef HOTEL_IPTV_SYSTEM
//按鍵'返回'
if(rx == VOD_IRC_RETURN){
vod_osd_return_hotel_system();
vod_current_logo = VOD_LOGO_RETURN_HOTEL_SYSTEM;
return 1;
}
#endif
//進入設置頁面
if(rx == VOD_IRC_SETUP){
//清空1區域
osd_ClearOneRegion(1,0);
vod_current_logo = VOD_LOGO_PASSWORD;
//清空密碼
memset(vod_password_value,0xff,VOD_PASSWORD_LENGTH_MAX);
//顯示密碼輸入框
vod_osd_password_input();
return 1;
}
//按鍵1
if(rx == VOD_IRC_1){
vod_current_button_left = VOD_BUTTON_1;
vod_switch_logo(VOD_LOGO_11);
return 0;
}
//按鍵2
if(rx == VOD_IRC_2){
vod_current_button_left = VOD_BUTTON_2;
vod_switch_logo(VOD_LOGO_12);
return 0;
}
//按鍵3
if(rx == VOD_IRC_3){
vod_current_button_left = VOD_BUTTON_3;
vod_switch_logo(VOD_LOGO_13);
return 0;
}
//按鍵4
if(rx == VOD_IRC_4){
vod_current_button_left = VOD_BUTTON_4;
vod_switch_logo(VOD_LOGO_14);
return 0;
}
//按鍵5
if(rx == VOD_IRC_5){
vod_current_button_left = VOD_BUTTON_5;
vod_switch_logo(VOD_LOGO_15);
return 0;
}
//按鍵6
if(rx == VOD_IRC_6){
}
/*
//設置菜單
if(rx == 0x9a){
ircmd_setup();
vod_current_logo = VOD_LOGO_SETUP;
return 0;
}
*/
//按鍵‘上’
if(rx == VOD_IRC_UP){
if(vod_current_button_left <=VOD_BUTTON_1)
return 0;
vod_current_button_left --;
//畫左部選定框
vod_logo_draw_checkbox(0);
return 0;
}
//按鍵‘下’
if(rx == VOD_IRC_DOWN){
if(vod_current_button_left >= VOD_BUTTON_5)
return 0;
vod_current_button_left ++;
//畫左部選定框
vod_logo_draw_checkbox(0);
return 0;
}
//按鍵'OK'
if(rx == VOD_IRC_CONFIRM){
vod_switch_logo(vod_current_button_left+1);
}
return 0;
}
#if 0
/*************************************************************
酒店介紹logo11
**************************************************************/
BYTE vod_logo_11(UINT16 rx){
//按鍵1
if(rx == VOD_IRC_1){
vod_current_button_left = VOD_BUTTON_1;
//畫左部選定框
vod_logo_draw_checkbox(0);
//畫framebuf圖
vod_logo_11_draw_BMP();
return 0;
}
//按鍵2
if(rx == VOD_IRC_2){
vod_current_button_left = VOD_BUTTON_2;
//畫左部選定框
vod_logo_draw_checkbox(0);
//畫framebuf圖
vod_logo_11_draw_BMP();
}
//按鍵3
if(rx == VOD_IRC_3){
}
//按鍵4
if(rx == VOD_IRC_4){
}
//按鍵5
if(rx == VOD_IRC_5){
}
//按鍵6
if(rx == VOD_IRC_6){
}
//按鍵7
if(rx == VOD_IRC_7){
vod_current_button_left = VOD_BUTTON_7;
//畫OSD位圖
BYTE i = 0;
//BYTE size = *((UINT32 *)(vod_osd_bufstart+VOD_SERVER_HEADER));
vod_osd_datastart = (BYTE *)(vod_osd_bufstart+VOD_SERVER_HEADER+(vod_osd_header+i)->bufstart );
coordinate start ;
dimension dim;
start.x = 100;
start.y = 52+20;
dim.x_length = (vod_osd_header+i)->width;
dim.y_length = (vod_osd_header+i)->height;
vod_draw_osd_bmp(vod_osd_datastart+16*4, &start, &dim);
printf_w("#####(vod_osd_header+i)->width = %d\n",(vod_osd_header+i)->width);
printf_w("#####(vod_osd_header+i)->height = %d\n",(vod_osd_header+i)->height);
printf_w("######(vod_osd_header+i)->bufstart= %x\n",(vod_osd_header+i)->bufstart);
}
//按鍵8
if(rx == VOD_IRC_8){
vod_current_button_left = VOD_BUTTON_8;
//畫出所有的framebuf圖
BYTE i;
BYTE size = vod_framebufBMP_type_header->bmp_size;
for(i = 0;i < size; i++){
vod_framebufBMP_header = (vod_framebufBMP_header_t *)vod_framebufBMP_type_header->type_bufstart;
coordinate start = (vod_framebufBMP_header+i)->start;
dimension dim= (vod_framebufBMP_header+i)->dim;
vod_framebufBMP_datastart = (BYTE *)(vod_framebufBMP_type_bufstart+VOD_SERVER_HEADER+(vod_framebufBMP_header+i)->bufstart );
vod_framebuf_draw( vod_framebufBMP_datastart, start , dim);
printf_w("#####(vod_framebufBMP_header+i)->dim.x_length = %d\n", (vod_framebufBMP_header+i)->dim.x_length);
printf_w("#####(vod_framebufBMP_header+i)->dim.y_length = %d\n", (vod_framebufBMP_header+i)->dim.y_length);
printf_w("#####(vod_framebufBMP_header+i)->bufstart = %d\n", (vod_framebufBMP_header+i)->bufstart);
}
return 0;
}
//按鍵9
if(rx == VOD_IRC_9){
}
//返回
if(rx == VOD_IRC_RETURN){
//返回上一頁
vod_switch_logo(VOD_LOGO_1);
return 0;
}
//按鍵0
if(rx == VOD_IRC_0){
//播放視頻
if(vod_current_button_left > 2)
vod_tx_s0_command_filename = logo11_filename[0];
else
vod_tx_s0_command_filename = logo11_filename[vod_current_button_left];
//vod_tx_s1_state = VOD_TX_VIDEO;
vod_tx_s0_state = VOD_TX_VIDEO;
vod_isVideo = VOD_VIDEO_Y;
return 1;
}
//按鍵‘上’
if(rx == VOD_IRC_UP){
if(vod_current_button_left <=VOD_BUTTON_1)
return 0;
vod_current_button_left --;
//畫左部選定框
vod_logo_draw_checkbox(0);
//畫framebuf圖
vod_logo_11_draw_BMP();
return 0;
}
//按鍵‘下’
if(rx == VOD_IRC_DOWN){
if(vod_current_button_left >= VOD_BUTTON_3)
return 0;
vod_current_button_left ++;
//畫左部選定框
vod_logo_draw_checkbox(0);
//畫framebuf圖
vod_logo_11_draw_BMP();
return 0;
}
return 0;
}
/***************************************************
在vod_logo_11中畫framebuf圖
******************************************************/
void vod_logo_11_draw_BMP(){
//畫framebuf圖
//第幾類別的圖像
BYTE * framebufBMP_type_data_start_temp =(BYTE *) (vod_framebufBMP_type_bufstart+VOD_SERVER_HEADER+vod_framebufBMP_type_header->type_bufstart ) ;
vod_framebufBMP_header = (vod_framebufBMP_header_t *)(framebufBMP_type_data_start_temp+0x04);
//printf_w("########vod_framebufBMP_type_header->type_bufstart address = %xHH\n",vod_framebufBMP_type_header->type_bufstart);
coordinate start = (vod_framebufBMP_header+vod_current_button_left)->start;
dimension dim= (vod_framebufBMP_header+vod_current_button_left)->dim;
//第幾張圖像
vod_framebufBMP_datastart = (BYTE *)(framebufBMP_type_data_start_temp + (vod_framebufBMP_header+vod_current_button_left)->bufstart );
//printf_w("########vod_framebufBMP_datastart address = %xHH\n",vod_framebufBMP_datastart);
vod_framebuf_draw( vod_framebufBMP_datastart, start , dim);
printf_w("#####( (vod_framebufBMP_header+vod_current_button_left)-)->width = %d\n", (vod_framebufBMP_header+vod_current_button_left)->dim.x_length);
printf_w("#####( (vod_framebufBMP_header+vod_current_button_left)-)->height = %d\n", (vod_framebufBMP_header+vod_current_button_left)->dim.y_length);
printf_w("#####( (vod_framebufBMP_header+vod_current_button_left)-)->bufstart = %x\n", (vod_framebufBMP_header+vod_current_button_left)->bufstart);
//delay_1ms(1000);
}
/*************************************************************
酒店服務logo12
**************************************************************/
BYTE vod_logo_12(UINT16 rx){
//按鍵1
if(rx == VOD_IRC_1){
vod_current_button_left = VOD_BUTTON_1;
//畫左部選定框
vod_logo_draw_checkbox(0);
//畫framebuf 圖
vod_logo_12_draw_BMP();
return 0;
}
//按鍵2
if(rx == VOD_IRC_2){
vod_current_button_left = VOD_BUTTON_2;
//畫左部選定框
vod_logo_draw_checkbox(0);
//畫framebuf 圖
vod_logo_12_draw_BMP();
}
//按鍵3
if(rx == VOD_IRC_3){
}
//按鍵4
if(rx == VOD_IRC_4){
}
//按鍵5
if(rx == VOD_IRC_5){
}
//按鍵6
if(rx == VOD_IRC_6){
}
//按鍵7
if(rx == VOD_IRC_7){
}
//按鍵8
if(rx == VOD_IRC_8){
}
//按鍵9
if(rx == VOD_IRC_9){
}
//按鍵0
if(rx == VOD_IRC_0){
}
//返回
if(rx == VOD_IRC_RETURN){
//返回上一頁
vod_switch_logo(VOD_LOGO_1);
return 0;
}
//按鍵‘上’
if(rx == VOD_IRC_UP){
if(vod_current_button_right == VOD_BUTTON_NULL){
if(vod_current_button_left <= VOD_BUTTON_1)
return 0;
vod_current_button_left --;
//頁數清0
vod_current_page = 0;
//畫左部選定框
vod_logo_draw_checkbox(0);
//畫6張小BMP圖
vod_logo_12_draw_BMP();
}
else{
if(vod_current_button_right <= VOD_BUTTON_3)
return 0;
vod_current_button_right -= 3;
if(vod_current_button_right >=VOD_BUTTON_7)
vod_current_button_right = VOD_BUTTON_6;
//畫右部選定框
vod_logo_draw_checkbox(1);
}
}
//按鍵‘下’
if(rx == VOD_IRC_DOWN){
if(vod_current_button_right == VOD_BUTTON_NULL){
if(vod_current_button_left >= VOD_BUTTON_7)
return 0;
vod_current_button_left ++;
//頁數清0
vod_current_page = 0;
//畫左部選定框
vod_logo_draw_checkbox(0);
//畫6張小BMP圖
vod_logo_12_draw_BMP();
}
else{
if(vod_current_button_right >=VOD_BUTTON_6){
vod_current_button_right = VOD_BUTTON_8;
//畫右部選定框
vod_logo_draw_checkbox(1);
}
else{
vod_current_button_right += 3;
//畫右部選定框
vod_logo_draw_checkbox(1);
}
}
}
//按鍵‘左’
if(rx == VOD_IRC_LEFT){
if(vod_current_button_right != VOD_BUTTON_NULL){
if(vod_current_button_right == VOD_BUTTON_1||
vod_current_button_right == VOD_BUTTON_4){
vod_current_button_right = VOD_BUTTON_NULL;
//清除右部的'選定框';
vod_osd_clear_checkbox( 1 );
//畫左部選定框
vod_osd_draw_checkbox( 0 );
}
else{
vod_current_button_right --;
//畫右部選定框
vod_logo_draw_checkbox(1);
}
}
return 0;
}
//按鍵‘右’
if(rx == VOD_IRC_RIGHT){
if(vod_current_button_right == VOD_BUTTON_NULL){
vod_current_button_right = VOD_BUTTON_1;
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -