久久久久久久999_99精品久久精品一区二区爱城_成人欧美一区二区三区在线播放_国产精品日本一区二区不卡视频_国产午夜视频_欧美精品在线观看免费

立即注冊 登錄
返回首頁

uid:63663的個人空間

日志

播放器

已有 859 次閱讀2014-9-3 18:51 | 資料

#include "head.h"

play_number = 1;

int main(int argc,char *argv[])
{
 char key = 0;
 int play_way = 0;    //播放還是暫停????1播放,0暫停
////關(guān)于名字動態(tài)顯示////////////////////////////////////////////////////////////
 int i = 0;
 int j = 0;
 char display_text[11] = {0};
 int text_len = 0;
 char *h = NULL;
 int delay_sign = 1;
 int m = 0;//////////////////////////////////////////////////// 
 unsigned long delay_count1 = 0; 
// int delay_count2 = 0;
 int go_step = 0; 
 char buff1[200] = {0};
 char *ch = NULL;
 music_one * play_this = NULL;
 int play_mode = 1;    //播放模式  0單曲?1順序?2隨機(jī)?
 int sub = 4;          //頻譜減
 int sup = 0;          //加
 int up_lock = 0;
 int down_lock = 1;

//////////////////////////////////////////////////////////////////////////
/*         關(guān)于時間顯示         */
 char buff_time_display[50] = {0};
 char buff_time_display2[50] = {0};
 long mytime_1 = 0;
 int  mytime_minute = 0;
 int  mytime_second = 0;
///////////關(guān)于當(dāng)前時間////////////////////////////////////////////////
 char buff_time_now[50] = {0};
 char buff_time_now2[50] = {0};
 long mytime_now = 0;
 int  mytime_minute_now = 0;
 int  mytime_second_now = 0;
/////////////關(guān)于進(jìn)度條////////////////////////////////////////////////////
 double my_program = 0;
 int go = 0;
/////////////關(guān)于音量///////////////////////////////////////////////////
 char my_volume_buf[100] = {0};
 int my_volume_var = 300;
 char my_volume_buff[50] = {0};
//////////////////////////////////////////////////////////////////////////
 initialization();
 head = (music_head *)malloc(sizeof(music_head));
 memset(head, 0, sizeof(music_head)); 
 
//獲取當(dāng)前播放器路徑
 strcpy(program_direct, argv[0]);
//讀取程序所在文件夾中MP3文件個數(shù)
 read_file_count(head);
 gotoxy(X(10),Y(4));
 printf("/%d", head->music_count);
//建鏈表
 list_creat(head);
//讀文件
 read_file(head);
 list_output(head);
 play_name_lock = 1;
 TEXT_RED;
 gotoxy(X(6),Y(6));
 printf("%3d", my_volume_var/10);
 gotoxy(X(14),Y(6)); 
 printf("%s","順序");
 while(1)
 {
  while (!_kbhit())
  { 
///////////////顯示動態(tài)名字/////////////////////////////////////////////////////////////// 
   play_this = head->next; 
   while(play_number != play_this->music2_number)
   {
    play_this = play_this->next;
   }   
   sprintf(buff1,"%s%s%s", "          ", play_this->music1_name, "    ");   
   ch = buff1; 
   while(*ch++); 
   text_len  = ch - buff1;             //得到字符串長度
   go_step =  (text_len - 8)/2;        
   if(delay_sign == 1)
   {  
    delay_sign = 0;
    i = i % text_len;
    i = i + 2;
   }   
    gotoxy(X(12), Y(4));
    for (j = 0; j < 10; j++)
    {
     display_text[j] = buff1[j+i];
    }
                //延時計(jì)數(shù),計(jì)數(shù)到100后打印
    if (delay_count1 == 100)    //計(jì)數(shù)器到每到一百顯示一次
    {
     delay_sign = 1;         //顯示完一次,為下一次字符串移動準(zhǔn)備
     TEXT_BRIGHT_GREEN;
     printf("%s", display_text);
     TEXT_RED;
     delay_count1 = 0;
//     delay_count2 ++;
    }  
    delay_count1++;
    Sleep(2);
/////////////////歌曲總時間長度///////////////////////////////////////////////////////////   
    //以字符串的方式得到歌曲總時間
    sprintf(buff_time_display, "%s %s %s", "Status", play_this->music1_name, "length");
    mciSendString(buff_time_display, buff_time_display2, sizeof(buff_time_display2), NULL);
    mytime_1 = strtol(buff_time_display2, NULL, 10);    
    mytime_second = mytime_1/1000 % 60;
    mytime_minute = mytime_1/1000 /60;
    gotoxy(X(37),Y(13));
    printf("%d:%d", mytime_minute, mytime_second);
/////////////////顯示歌曲現(xiàn)在進(jìn)度///////////////////////////////////////////////////////////        
    sprintf(buff_time_now, "%s %s %s", "Status", play_this->music1_name, "position");
    mciSendString (buff_time_now, buff_time_now2, sizeof(buff_time_now2), NULL);
    mytime_now = strtol(buff_time_now2, NULL, 10);    
    mytime_second_now = mytime_now/1000 % 60;
    mytime_minute_now = mytime_now/1000 /60;
    gotoxy(X(34),Y(13));
    printf("%d:%2d /", mytime_minute_now, mytime_second_now);   
/////////////////進(jìn)度條顯示///////////////////////////////////////////////////////////
       my_program = mytime_1/60;          //應(yīng)該每過這個時間進(jìn)度條向前走一次    
    if (my_program * go < mytime_now)
    {
     go++;
     gotoxy(10+go, Y(13));
        printf("%s", "=>");
    }
/////////////////關(guān)于音量///////////////////////////////////////////////////////////
    sprintf(my_volume_buf, "%s %s %s %d", "setaudio",
              play_this->music1_name, "volume to", my_volume_var);
    mciSendString(my_volume_buf, my_volume_buf, sizeof(my_volume_buf), NULL);
/////////////////顯示頻譜///////////////////////////////////////////////////////////
    if(delay_count1 % 20 == 19)
    {
     if ((1 == down_lock) && (1 == play_way))
     {
      gotoxy(X(18),Y(10-sup));
      printf("=");
      gotoxy(X(19),Y(8-sup));
      printf("=");
      gotoxy(X(20),Y(7-sup));
      printf("=");
      gotoxy(X(21),Y(9-sup));
      printf("=");
      gotoxy(X(22),Y(11-sup));
      printf("=");
      gotoxy(X(23),Y(10-sup));
      printf("=");
      gotoxy(X(24),Y(11-sup));
      printf("=");
      gotoxy(X(25),Y(9-sup));
      printf("=");
      gotoxy(X(26),Y(10-sup));
      printf("=");
      gotoxy(X(27),Y(8-sup));
      printf("=");
      if(sup == 4)
      {
       down_lock = 0;
       up_lock = 1;
       sup = 0;
      }
      sup ++;
     }
     if ((1 == up_lock) && (1 == play_way))
     {        
      gotoxy(X(18),Y(9-sub));
      printf(" ");
      gotoxy(X(19),Y(7-sub));
      printf(" ");
      gotoxy(X(20),Y(6-sub));
      printf(" ");
      gotoxy(X(21),Y(8-sub));
      printf(" ");
      gotoxy(X(22),Y(10-sub));
      printf(" ");
      gotoxy(X(23),Y(9-sub));
      printf(" ");
      gotoxy(X(24),Y(10-sub));
      printf(" ");
      gotoxy(X(25),Y(8-sub));
      printf(" ");
      gotoxy(X(26),Y(9-sub));
      printf(" ");
      gotoxy(X(27),Y(7-sub));
      printf(" ");
      if(sub == 0)
      {
       down_lock = 1;
       up_lock = 0;
       sub = 4;
      }
      sub --;            
     }
    }
/////////////////播放模式控制///////////////////////////////////////////////////////////
    if ((mytime_1 - mytime_now) < 2000)
    {
     switch(play_mode)
     {
     case 0:            //單曲循環(huán)      
      play_num_song("stop", play_number, head);
         play_number--; 
      goto _nextmusic;      
      break;
     case 1:            //順序播放
      play_num_song("stop", play_number, head);
      goto _nextmusic;
      break;      
     case 2:            //隨機(jī)播放
      play_num_song("stop", play_number, head);
      play_number = delay_count1 % head->music_count - 1;
      goto _nextmusic;
      break;
     }
    }
///////////當(dāng)有鍵按下/////////////////////////////////////////////////////////////////
  }
   key = _getch();
   up_lock = 1;
   switch (key)
   {
   case 'n':     //向下翻頁
    list_output(head);
    break;
   case ' ':     //暫停和開始
    if (play_way == 0)
    {
     play_way = 1;
     play_num_song("play", play_number, head);
    }
    else
    {
     play_way = 0;
     play_num_song("pause", play_number, head);
    }
    
    break;
   case 'h':   //下一曲     
_nextmusic:
    play_way = 1;
    if (play_number < head->music_count)
    {

      TEXT_GREEN;
      for (i = 3; i < 33; i++)       //進(jìn)度條初始
      {
       go = 0;
       SOMEPLACE_PRINT(X(i), Y(13), "--");  
      }
      TEXT_RED;
     play_num_song("stop", play_number, head);
     play_number++; 
     play_num_song("play", play_number, head);
    }
    else
    {
         TEXT_GREEN;
      for (i = 3; i < 33; i++)       //進(jìn)度條初始
      {
       go = 0;
       SOMEPLACE_PRINT(X(i), Y(13), "--");  
      }
      TEXT_RED;
     play_num_song("stop", play_number, head);
     play_number = head->music_count;
     play_num_song("play", play_number, head);
     break;
    } 
    break;
   case 'g':    //上一曲
    play_way = 1;
    if (play_number > 2)
    {
     play_num_song("stop", play_number, head);
     play_number -= 2;
     goto _nextmusic;
        break;
    }
    else
    {//處理弟一首歌
     play_num_song("stop", 2, head);
     play_number = 1;
     TEXT_GREEN;
     for (i = 3; i < 33; i++)       //進(jìn)度條初始
     {
      go = 0;
      SOMEPLACE_PRINT(X(i), Y(13), "--");  
     }
     TEXT_RED;     
     play_num_song("play", 1, head);
    }
    break;
   case 'f':
    play_way = 1;
    play_num_song("stop", play_number, head);
    play_number = 1;
    TEXT_GREEN;
    for (i = 3; i < 33; i++)       //進(jìn)度條初始
    {
     go = 0;
     SOMEPLACE_PRINT(X(i), Y(13), "--");  
    }
    TEXT_RED;     
    play_num_song("play", play_number, head);
    break;
   case 'j':
    play_way = 1;
    play_num_song("stop", play_number, head);
    play_number = head->music_count;
    TEXT_GREEN;
    for (i = 3; i < 33; i++)       //進(jìn)度條初始
    {
     go = 0;
     SOMEPLACE_PRINT(X(i), Y(13), "--");  
    }
    TEXT_RED;     
    play_num_song("play", play_number, head);
    break;
   case 'v':     //音量加
    gotoxy(X(6), Y(6));
    printf("%3d", my_volume_var/10);
    if (my_volume_var < 1000)
    {
     my_volume_var += 50;
    }    
    break;
   case 'c':      //音量減
    gotoxy(X(6),Y(6));
    printf("%3d", my_volume_var/10);
    if (my_volume_var > 0)
    {
     my_volume_var -= 50;
    }    
    break;
   case 'm':
    play_mode++;
    play_mode = play_mode % 3;
    gotoxy(X(14),Y(6));
    if (0 == play_mode)
    {
     printf("%s","單曲");
    }
    else if (1 == play_mode)
    {
     printf("%s","順序");
    }
    else
    {
     printf("%s","隨機(jī)");
    }
   case '1':
    if (head->music_count >= 1)
    {
    play_way = 1;
     TEXT_GREEN;
     for (i = 3; i < 33; i++)       //進(jìn)度條初始
     {
      go = 0;
      SOMEPLACE_PRINT(X(i), Y(13), "--");  
     }
     TEXT_RED;
     play_num_song("stop", play_number, head);
     play_number = arr_number[1]; 
     play_num_song("play", play_number, head);
    }
    break;
   case '2':
    if (head->music_count >= 2)
    {
    play_way = 1;
    TEXT_GREEN;
    for (i = 3; i < 33; i++)       //進(jìn)度條初始
    {
     go = 0;
     SOMEPLACE_PRINT(X(i), Y(13), "--");  
    }
    TEXT_RED;
    play_num_song("stop", play_number, head);
    play_number = arr_number[2]; 
    play_num_song("play", play_number, head);
    }
    break;
   case '3':
    if (head->music_count >= 3)
    {
    play_way = 1;
    TEXT_GREEN;
    for (i = 3; i < 33; i++)       //進(jìn)度條初始
    {
     go = 0;
     SOMEPLACE_PRINT(X(i), Y(13), "--");  
    }
    TEXT_RED;
    play_num_song("stop", play_number, head);
    play_number = arr_number[3]; 
    play_num_song("play", play_number, head);
    }
    break;
   case '4':
    if (head->music_count >= 4)
    {
    play_way = 1;
    TEXT_GREEN;
    for (i = 3; i < 33; i++)       //進(jìn)度條初始
    {
     go = 0;
     SOMEPLACE_PRINT(X(i), Y(13), "--");  
    }
    TEXT_RED;
    play_num_song("stop", play_number, head);
    play_number = arr_number[4]; 
    play_num_song("play", play_number, head);
    }
    break;
   case '5':
    if (head->music_count >= 5)
    {
    play_way = 1;
    TEXT_GREEN;
    for (i = 3; i < 33; i++)       //進(jìn)度條初始
    {
     go = 0;
     SOMEPLACE_PRINT(X(i), Y(13), "--");  
    }
    TEXT_RED;
    play_num_song("stop", play_number, head);
    play_number = arr_number[5]; 
    play_num_song("play", play_number, head);
    }
    break;
   case '6':
    if (head->music_count >= 6)
    {
    play_way = 1;
    TEXT_GREEN;
    for (i = 3; i < 33; i++)       //進(jìn)度條初始
    {
     go = 0;
     SOMEPLACE_PRINT(X(i), Y(13), "--");  
    }
    TEXT_RED;
    play_num_song("stop", play_number, head);
    play_number = arr_number[6]; 
    play_num_song("play", play_number, head);
    }
    break;
   case '7':
    if (head->music_count >= 7)
    {
    play_way = 1;
    TEXT_GREEN;
    for (i = 3; i < 33; i++)       //進(jìn)度條初始
    {
     go = 0;
     SOMEPLACE_PRINT(X(i), Y(13), "--");  
    }
    TEXT_RED;
    play_num_song("stop", play_number, head);
    play_number = arr_number[7]; 
    play_num_song("play", play_number, head);
    }
    break;
   case '8':
    if (head->music_count >= 8)
    {
    play_way = 1;
    TEXT_GREEN;
    for (i = 3; i < 33; i++)       //進(jìn)度條初始
    {
     go = 0;
     SOMEPLACE_PRINT(X(i), Y(13), "--");  
    }
    TEXT_RED;
    play_num_song("stop", play_number, head);
    play_number = arr_number[8]; 
    play_num_song("play", play_number, head);
    }
    break;
   case '9':
    if (head->music_count >= 9)
    {
    play_way = 1;
    TEXT_GREEN;
    for (i = 3; i < 33; i++)       //進(jìn)度條初始
    {
     go = 0;
     SOMEPLACE_PRINT(X(i), Y(13), "--");  
    }
    TEXT_RED;
    play_num_song("stop", play_number, head);
    play_number = arr_number[9]; 
    play_num_song("play", play_number, head);
    }
    break;
   default:
    break;
  }
 }
 mciSendString("close", NULL, 0, NULL);
 list_delete(head);
 return 0;
}


路過

雞蛋

鮮花

握手

雷人

全部作者的其他最新日志

評論 (0 個評論)

手機(jī)版|小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術(shù)交流QQ群281945664

Powered by 單片機(jī)教程網(wǎng)

返回頂部
主站蜘蛛池模板: 91精品国产91久久久久久 | 国产一区不卡 | 国产成人久久精品一区二区三区 | 婷婷91 | 少妇一级淫片免费播放 | 国产精品毛片一区二区在线看 | 精品久久久久一区二区国产 | 91精品国产777在线观看 | 亚洲综合无码一区二区 | 日本视频免费 | 国产一区二区三区色淫影院 | 中文字幕综合 | 午夜免费视频观看 | 九色网址| www.夜夜草 | 国产日本精品视频 | 天天综合网91 | 日韩另类视频 | 中文字幕视频在线观看免费 | 激情国产 | 日韩中文字幕一区二区 | 国产日本精品视频 | 久久久91精品国产一区二区三区 | 国产黄色网址在线观看 | 日本天堂一区二区 | 国产午夜精品一区二区三区四区 | 伊人免费在线观看高清 | 久久久成人免费一区二区 | 国产1区2区| 日日噜噜噜夜夜爽爽狠狠视频97 | 国产精品久久网 | 99精品久久久久久久 | 91偷拍精品一区二区三区 | 国产成人jvid在线播放 | 日韩一级欧美一级 | 亚洲一区 中文字幕 | 欧美一级α片 | 国产成人免费视频 | 91传媒在线观看 | 久草网址 | 亚洲欧洲视频 |