MPlayer音乐播放器项目讲解

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了MPlayer音乐播放器项目讲解相关的知识,希望对你有一定的参考价值。

一、简要介绍MPlyer音乐播放器 MPlayer是一款开源多媒体播放器,以GNU通用公共许可证发布。此款软件可在各主流操作系统使用,例如Linux和其他类Unix系统、Windows及Mac OS X系统。 二、在开发板实现MPlayer功能 具体如何实现mute 0 静音,为什么用这个命令不用我们做,我们要做的是在开发板上获取出界面后,按下相应按钮实现相应的功能,即对这个命令的处理和调用。 三、思路 1、画glade界面 2、主函数分为父、子进程 父进程:开启mplayer,用到execlp命令 子进程:(1) 搭GTK框架,创建背景窗口、布局以及控件的获取显示; (2)写上一首、下一首、暂停的回调函数(g_signal_connect); (3) 获取歌曲目录信息; DIR *dir; struct dirent *dirp; int i = 0; char *dd[100]={}; char ll[100]=""; if((dir=opendir("./song"))==NULL) { printf("Open dir song fail "); exit(1); } while((dirp=readdir(dir))!=NULL) { song_list[i]=(char*)malloc(sizeof(dirp->d_name)+1); strcpy(song_list[i],dirp->d_name); printf("%s ",song_list[i]); i++; a.geshu=i; printf("%d ",i); } closedir(dir); (4)音量键 一是if静音还是开启,范围,二是if设置音量大小(有命令) 这些做完算是简单实现切歌功能 3、做歌曲名、歌手、歌曲当前位置、歌曲长度、播放进度显示 线程1:不停发命令,打印到屏幕上,写到父进程里(while(1)循环命令),为了不让打印到电脑上,要重定向到管道中(dup命令) 线程2:不停去管道中读数据,做处理 (1)if语句做判断 (2)sscanf做切割 (3)进行组包 (4)gtk_label_set_text设置label标签的内容,箭头指向(如:gtk_label_set_text(a->label_cur_time,buff)) 4、线程3歌词显示 (1)有一个歌词文件 (2)歌词文件解析,存链表(将时间与歌词进行匹配) 重点:首先找到当前播放的歌,拿当前的时间与歌次做比较匹配信息

以上是关于MPlayer音乐播放器项目讲解的主要内容,如果未能解决你的问题,请参考以下文章

Qt+MPlayer音乐播放器开发笔记:ubuntu上编译MPlayer以及Demo演示

我不会,这Linux中怎么播放cd音乐

树莓派3 之 音响配置

linux下用啥命令来播放音乐阿?

MPlayer常用操作和快捷键列表

树梅派安装音乐播放器qmmp