日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 运维知识 > linux >内容正文

linux

madplay命令使用(Linux音乐播放器)

發布時間:2024/1/18 linux 33 豆豆
生活随笔 收集整理的這篇文章主要介紹了 madplay命令使用(Linux音乐播放器) 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

更多資料請點擊:我的目錄
本篇僅用于記錄自己所學知識及應用,代碼仍可優化,僅供參考,如果發現有錯誤的地方,盡管留言于我,謝謝。

madplay命令使用詳細參數:
-v 獲取音樂播放時間
-q 不存在任何打印,但現實警告
-Q 不存在任何打印
–downsample 只采用一半數據
-i 忽略CRC校驗錯誤
-o PATH/xx.wav 可以用來轉碼,將mp3轉為wav,也可以是其他格式。
-a 開啟衰減音量 ,增加音量,衰減系統為-175~+18 (當然通過鍵盤±也可以調整音量)
-A 同-a
-1 -2 -m -S 分別指左聲道,右聲道,雙聲道,立體聲
-s 用于seek播放 0:1:10:20 ,seek到1小時,10分鐘,20秒時開始播放
-t 用于播放時間設置(定時停止) 0:1:10:20 ,播放到1小時,10分鐘,20秒時就停止
-z 用于隨機播放列表歌曲
-r, 用于循環播放列表歌曲
-r, --repeat[=MAX] 循環播放無限次或Max次

使用例子:

播放某首歌一次: ./madplay music/1.mp3播放某首歌(單曲循環): ./madplay music/1.mp3 -r播放某目錄文件下的MP3歌曲一次: ./madplay music/*.mp3播放某目錄文件下的MP3歌曲(列表循環播放): ./madplay music/*.mp3 -r播放某目錄文件下的MP3歌曲(列表隨機播放): ./madplay music/*.mp3 -z

程序控制madplay播放,暫停播放,恢復播放,停止播放,關閉播放器的操作

system("madplay music/*.mp3 &"); //利用system函數調用madplay播放器播放music目錄下所有的.mp3音樂system("madplay music/*.mp3 -r &"); //列表歌曲循環播放system("killall -STOP madplay &"); //利用system函數調用killall命令暫停播放音樂system("killall -CONT madplay &"); //利用system函數調用killall命令恢復播放音樂system("killall -9 madplay"); //利用system函數調用killall命令將madplay終止關閉

注意: &為后臺運行,如果不加&則為前臺播放,將無法對其進行暫停、恢復播放操作

簡單程序示例:

int music_play() {printf("成功打開音樂播放器!\n");//system("madplay music/*.mp3 -z &"); //列表隨機播放system("madplay music/*.mp3 -r &"); //列表循環播放//設置節點struct node{char *data;struct node *next;struct node *prev;};//初始化鏈表struct node *list_init(char *newdata){struct node *head = malloc(sizeof(struct node));head->data = newdata;head->next = head;head->prev = head;return head;}//創建新節點struct node *newnode(char *newdata){struct node *new = malloc(sizeof(struct node));new->data = newdata;new->next = NULL;new->prev = NULL;}//加入新節點int addnode(struct node *new,struct node *list){struct node *p = list;while(p->next != list){p = p->next;}new->prev = list->prev;new->next = list;list->prev = new;new->prev->next = new;}struct node *list = list_init("1.mp3"); //初始化雙向循環鏈表char *path = "music"; //music為音樂目錄文件名DIR *dp = opendir(path);struct dirent *p;while(p = readdir(dp)) //遍歷目錄文件{if(p->d_type == DT_REG){if(strstr(p->d_name,".mp3")) //判斷是否為.mp3文件{struct node *new = newnode(p->d_name); //創建新節點addnode(new,list); //插入新節點} }}char buf[20]; //用于存放拼接后的字符串struct node *head = list->next;int num = 0;for(;;){scanf("%d",&num);if(n == 1) //恢復播放{n = 0;system("killall -CONT madplay &"); }if(n == 2) //暫停播放{n = 0;system("killall -STOP madplay &"); }if(n == 3) //下一首{n = 0;system("killall -9 madplay");head = head->next;bzero(buf,20);sprintf(buf,"madplay %s/%s &",path,head->data);system(buf);}if(n == 4) //上一首{n = 0;system("killall -9 madplay");head = head->prev;bzero(buf,20);sprintf(buf,"madplay %s/%s &",path,head->data);system(buf);} if(n == 5) //退出{system("killall -9 madplay");printf("成功退出音樂播放器!\n");break;}} }

總結

以上是生活随笔為你收集整理的madplay命令使用(Linux音乐播放器)的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。