更多资料请点击:我的目录
本篇仅用于记录自己所学知识及应用,代码仍可优化,仅供参考,如果发现有错误的地方,尽管留言于我,谢谢。

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音乐播放器)相关推荐

  1. Linux用命令安装音乐软件,在Ubuntu 18.04系统中使用命令安装Qmmp音乐播放器的方法...

    在Ubuntu 18.04操作系统中安装Qmmp音乐播放器非常简单,只需要两段命令就可以搞定.下面介绍其方法. Qmmp音乐播放器介绍 Qmmp是一款开源基于Qt的多媒体播放器,提供Qt4及Qt5支持 ...

  2. 推荐5款好用的Linux音乐播放器

    适用于 Linux 的音乐播放器可说数不胜数,不同的用户也有各自的喜好.知名且应用广泛的有 Cantata 和 Exaile,不太知名的工具有 Clementine.Nightingale 和 Quo ...

  3. 推荐8个好用的Linux音乐播放器~

    适用于 Linux 的音乐播放器可说数不胜数,不同的用户也有各自的喜好.小编今天为大家推荐 8款好用的 Linux 音乐播放器,各位自行选择吧~ 01 Qmmp Qmmp 其实就是 Linux 版的 ...

  4. 推荐5 款好用的 Linux 音乐播放器

    导读 目前 Linux 上有几十个音乐播放器,这使得找到一个最好用的变成很困难.之前我们已经回顾了其中的一些播放器,如 Cantata,Exaile,甚至不那么出名的 Clementine,Night ...

  5. Linux音乐播放器 推荐

    1. Audacious Audacious与其它播放器的不同之处在于,它除了支持UTF-8字符集之外,还提供其它字符集的支持,这样能比较好的解决中文乱码的问题. 后文将介绍一种更为有效的去除乱码的方 ...

  6. linux命令音乐视频合并,Linux下基于命令行的音乐播放器 (1)

    按照同事的话说,我是一个十足的命令控. 利用最近项目通宵发布的空闲时间中,写了一个命令行下的音乐播放器,以满足我在linux命令下的需求. 播放器利用技术: Python+GST(http://gst ...

  7. php 电台pls 怎么播放,怎样给Linux音乐播放器添加电台列表

    盲人朋友喜欢收听网络电台,可是Linux下没有龙卷风收音机这样的软件,怎么办呢? Ubuntu Linux下有两款音乐播放器:Rhythmbox和Audacious,它们都支持导入m3u格式的播放列表 ...

  8. 音乐管理软件 linux,音乐播放器 Rhythmbox For Linux

    Rhythmbox是Linux下的音乐播放和管理软件,为Fedora和Ubuntu等Linux发行版默认安装的音乐播放器.它可以播放各种音频格式的音乐,管理收藏的音乐. 功能特色 音乐回放 支持回放来 ...

  9. linux 命令行 播放器,Linux下基于命令行的音乐播放器

    玩家使用技术: Python + GST()+控制台解析 播放器自我维持操作: 1. 播放 2. 下一首 3. 上一首歌 4. 暂停 5. 查看播放列表信息 6. 查看当前的播放信息 7. 停止(退出 ...

最新文章

  1. JAVA-OPTS引发的思考
  2. 发光二极管原理,理解,相关计算
  3. AWS服务器自动化迁移工具指南
  4. innodb_monitor
  5. linux不允许root用户登录图形界面的解决办法
  6. 多项式的求逆、取模和多点求值学习小记
  7. php读取excel的公式,PHPExcel在解析xlsx文件中的公式时返回零“0”
  8. ecshop的smarty库还原成smarty原生库方法
  9. 数据科学家 数据工程师_发展数据科学家和工程师
  10. 一. JVM发展史,运行时数据区域,四大引用
  11. EasyUI系列学习(一)-入门
  12. ROS入门-1认识Linux系统,虚拟机安装Ubuntu
  13. 真彩色图像数据量 计算_免费深度学习实战:高效训练及加速推理,送英特尔神经计算棒 2 代 (报名·深圳)...
  14. UVa 10286 - Trouble with a Pentagon
  15. 数据库服务器系统崩溃,mssql数据库系统崩溃后的一般处理步骤与方法
  16. 用程序关闭、注销、重启计算机
  17. python连接hive--Pyhive
  18. The following packages have unmet dependencies
  19. android4.42 版本k2x,斐讯K1 K2最新v22.4.x以上版本通用刷第三方固件教程
  20. Java将Excel转换为ODS

热门文章

  1. 开篇:手机地图网开张大吉...
  2. 室内设计流派主要是指现代主义室内设计的艺术派别
  3. 【Simulink 仿真】SISO Fading Channel模块介绍
  4. 配置org.springframework.scheduling.quartz.CronTriggerBean(转)
  5. 初始化Direct3D的基本概念
  6. 微信调试内网映射到外网
  7. Mac下使用SSH连接远程Linux服务器
  8. 金融行业软件测试面试题(含答案)| 零基础入门指南
  9. 修改用友服务器ip地址,如何修改用友服务器ip地址
  10. 亚马逊、shopee、Lazada、ebay、速卖通补单不安全?刷单要注意这4点