买了个树莓派3B+,装好系统后灰落了好厚一层都不知道要干嘛。。。最近突发奇想:用树莓派做一个音乐播放器,每天6:30-7:20自动播放英语听力,强迫自己练习英语,也治治自己的懒床习惯,平时也可以用来听听歌。在这里顺便给大家推荐一个资源很全的python学习免非解答.裙 :七衣衣九七七巴而五(数字的谐音)转换下可以找到了,这里有资深程序员分享以前学习心得,学习笔记,还有一线企业的工作经验,且给大家精心整理一份python零基础到项目实战的资料,每天给大家讲解python最新的技术,前景,学习需要留言的小细节

准备工作:

1.树莓派一个,并且己安装好linux系统,并且己安装好Python3环境;

2.音箱一个(AUX有线接口或蓝牙音箱都行),连接到树莓派上;

软件环境搭建:

mtool是一个用python写的音乐播放器,在gitee和github上开源,主要用命令行进行控制,这个很适合我们这个需求。

下载地址:https://gitee.com/shadowlesswalker/mtool.git

首先我们在电脑上用ssh工具(我用的putty)登陆到树莓派,不会的可以另行百度树莓派ssh教程。输入以下命令:

cd /usr

git clone https://gitee.com/shadowlesswalker/mtool.git   mtool   #下载mtool源代码

cd mtool

ln -s -f  /usr/mtool/mtoolctl   /usr/bin/mtool   #创建软链接(快捷方式)

然后安装mtool依赖包:pygame,configparser(有的话就不用安装了)

sudo apt install python3-pygame

pip3 install configparser

至此,mtool就算安装完成了。mtool是一个C/S(服务器/客户端)模式的程序,服务器开启后会监听UDP端口(默认为127.0.0.1:6666),然后接受来自客户端的命令去控制播放。

我再来设置一下服务器端的开机自启动:

vim ~/.bashrc

在最后面添加命令:

nohup mtool --server start > /usr/mtool/log &        #其中nohup与&用于后台运行程序

配置音乐文件夹路径

先来配置一下音乐文件夹的位置,打开/usr/mtool/mtool.conf,在里面自行修改:

[player]         #这个节设置播放器参数

list = music      #设置默认的播放列表,列表名必须在后面的playlists节中出现

volume = 0.2    #默认音量

port = 6666      #默认UDP端口,用于服务器接受命令

index = 2        #当前播放位置

next = next     #默认播放模式:next|loop|random 对应顺序播放|单曲循环|随机播放

[playlists]       #播放列表预设节,可设置多个,格式为:列表名=文件夹路径

music = music        #播放列表名为music,路径为./music

en-listen = /var/share/en-listen    #我的英语听力资源文件的路径

开始使用mtool命令

source  ~/.bashrc

nohup mtool --server start > /usr/mtool/log &

#先手动启动服务端,虽然前面配置了开机自启动,但也只能下次开机才能生效

mtool -c info   #查看服务器状态,可用来测试服务器是否己启动,成攻类似如下显示:

mtool -c play  #播放

mtool -c vol=0.5   #设置音量

mtool -c lists  #查看可用的播放列表

mtool -c list     #列出当前播放列表中的音乐文件

mtool -c next=random|next|loop   #设置播放顺序

mtool -c playf=zui      #切换为单曲循环(next=loop),并且播放文件名中包含zui的文件

基本的用法就这样了,我们可以通过在电脑上控制树莓派播放音乐了,但是电脑老开着也不好,况且躺在床上怎么办呢?我们可以在手机上安装ssh工具,比如JuiceSSH(推荐),阿里云app。

设置树莓派定时播放

我们使用linux内置的计划任务命令crontab来设置定时播放功能。

说到定时任务,那我们首先得确认自己树莓派的时间是准确的。嘿嘿嘿。。。可惜,树莓派的时间一般都是不准确的。。。因为一般电脑在断电后时钟会由CMOS电池供电继续跑,但是树莓派断电后时间就会丢失。即然时间都不准确,又怎么能正常执行定时任务呢。。。

所以我们首先解决时间问题-NTP(网络时间同步)

dpkg-reconfigure tzdata    #时区设置,配置文件在/etc/timezone,设置为中国上海时区

date    #查看时间,确保我们的时区为中国时区

开启NTP服务

apt install ntp

ntpdate ntp.ntsc.ac.cn       #同步中国国家授时中心新(NTP服务器ntp.ntsc.ac.cn)

或者在/etc/ntp.conf中添加ntp服务器地址

重启ntp服务:

systemctl enable ntp    #ntp开机自启动

systemctl start ntp      #启动ntp服务

date    #查看系统时间,应该正确了

再来设置定时任务:

先写一个切换播放列表、改变音量、开时播放的脚本,用来被定时任务调用:

vim  /usr/mtool/start-en-listen

脚本内容很简单:

_dir="/usr/mtool"

mtool -c playlist=en-listen    #切换到英语听力播放列表

mtool -c vol=1.0            #音量放到最大(嘿嘿嘿)   

mtool -c next=random    #设置随机播放

mtool -c play     #开始播放

接下来添加定时任务

crontab -e     #将打开编辑器,在最后添加定时任务:

30 6 * * * /usr/mtool/start-en-listen >> /usr/mtool/log.client       #每天早上6:30开始播放

20 7 * * * mtool -c stop                          #每天早上7:20停止播放

终于。。。大功造成!!!!每天早上无法安心地睡懒觉啦啦啦,顺便给大家推荐一个资源很全的python学习免非解答.裙 :七衣衣九七七巴而五(数字的谐音)转换下可以找到了,这里有资深程序员分享以前学习心得,学习笔记,还有一线企业的工作经验,且给大家精心整理一份python零基础到项目实战的资料,每天给大家讲解python最新的技术,前景,学习需要留言的小细节

当然,我们还可以添加几行代码,每天早上6:30自动关闭ssh服务,7:20再打开,这样想睡懒觉时就无法从手机ssh端关闭树莓派播放了,只能爬起来去拔电源嘿嘿嘿。。。。。
本文的文字及图片来源于网络加上自己的想法,仅供学习、交流使用,不具有任何商业用途,版权归原作者所有,如有问题请及时联系我们以作处理。

教你用树莓派Python打造一个音乐播放器相关推荐

  1. html5开发一个音乐播放器,HTML5开发学习(1):使用aduio标签打造音乐播放器

    关于html5的炒作已经有一段时间了,小弟亦是个跟风之人,对该新鲜事物也充满好奇和期待.本文为该系列(html5尝鲜)第一节,先以一个简单的demo开胃,希望能勾起各位同学对html5的兴趣和关注. ...

  2. 听歌识曲--用python实现一个音乐检索器的功能

    作者:唯心不易 字体:[增加 减小] 类型:转载 时间:2016-11-15 我要评论 本篇文章中主要介绍了用python实现一个音乐检索器,类似于QQ音乐的摇一摇识曲,有兴趣的同学可以了解一下. 听 ...

  3. python 播放本地音乐_实战项目—python实现本地音乐播放器

    随着网络的发展,我们已经很少将音乐下载到本地,而是直接在线听歌,方便而又直接.也许你用的音乐播放器是这个 也许是这个 这都不是重点,今天我们要用python自己打造一款音乐播放器. 具体思路 使用py ...

  4. 使用树莓派3B+开发智能音乐播放器

    使用树莓派3B+开发智能音乐播放器 2018年07月03日 21:25:13 qq_42044484 阅读数:2397 一.功能描述 对麦克风说出歌名后,树莓派自动下载对应歌曲的MP3,默认播放搜索到 ...

  5. Python轻松实现音乐播放器

    前言 来个新玩意就是教大家如何用python来制作一个音乐播放器 希望对大家有所帮助哈哈 你们也可以尝试自己做做 先给你们展示展示最简单的,只需要九行代码 import time import pyg ...

  6. 以麒麟音乐为例,教你如何构建专属自己的音乐播放器

    麒麟音乐是一款设计美观.功能简洁.支持多种音乐格式的音乐播放器.在播放本地音乐的同时,还可以根据用户喜好.自定义歌单来对音乐进行分组. 除常规模式外,麒麟音乐还有小窗口模式来满足用户的不同需求.想知道 ...

  7. python实现在线音乐播放器(懒皮鼠音乐)

    python实现在线音乐播放器(懒皮鼠音乐) 利用qt设计requests库实现在线音乐播放 文章目录 python实现在线音乐播放器(懒皮鼠音乐) 前言 一.qt设计师设计界面 二.使用步骤 1.引 ...

  8. Python—实现本地音乐播放器(添加/播放/暂停/下一首/上一首/音量/打开超链接)

    Python-实现本地音乐播放器(添加/播放/暂停/下一首/上一首/音量/打开超链接) 1.样例 2.分析 1.播放器界面 2.功能 2.1播放器界面 button:添加/播放/暂停/下一首/上一首 ...

  9. 听音乐不过瘾?自制一个音乐播放器!【附带函数源码】

    C#的音乐播放器是基于C#窗体程序而设计开发,是学习C#winform开发的一个较好的实战项目.本文讲解了音乐播放器的基本控件的函数编写及开发思路 函数目录 打开音乐文件控件函数 双击音乐触发播放属性 ...

最新文章

  1. CentOS 6.5源码包安装MySQL
  2. Google App Engine平台下JDOQL查询报异常的问题解决方案
  3. java实现各种算法
  4. windows监控txt写入_Windows的bug们
  5. 数据结构与算法:单链表(超详细实现)
  6. 《数据结构C语言版》——栈和队列详解(图文并茂),从零开始的学习
  7. javaweb各种乱码问题处理
  8. 三招帮你解决物联网卡上不了网问题
  9. 勒索老黄未果!黑客公布英伟达核心源代码,超40万个文件、75GB机密数据
  10. 中缀表达式转后缀表达式
  11. (五)比赛中的CV算法(上2)目标检测初步:神经网络及优化方法
  12. 解决SecoClient接收返回码超时
  13. c语言频谱图,c-实时绘制频谱图?
  14. 李宏毅2020机器学习深度学习(完整版)国语课程PPT
  15. [html + css] SVG动画 发光渐变炫彩猫猫头
  16. Cloudera Manager API使用(附代码)
  17. 关于Unity中unitypackage文件的图标显示及打开方式异常问题的解决
  18. uniapp 请求接口封装
  19. 如何在cmd命令行窗口打开QQ
  20. 微信小程序转码机器人搭建方法,可爱猫,vml机器人插件

热门文章

  1. 西门子et200 分布式i/o_你真的了解西门子Profinet吗?从RT切换到IRT出问题
  2. pyspark 条件_pyspark 日常整理
  3. PHP对HTML编码字符串的处理
  4. Unity 2D《打地鼠》游戏自学总结
  5. autojs脚本apk安装器
  6. 【饭谈】面试官让你来个“自我介绍”,你准备怎么说?
  7. ale插件 vim_Vim插件之ale,LeaderF,completor.vim(win10)配置
  8. keil5的device里面没有芯片型号
  9. 工业机器人上半年产业分析
  10. flutter 输入框复制粘贴英文转中文