我的香橙派闹钟-v0.1 mini

项目描述

想要做一个闹钟,然后一步一步完善。 毕竟想做很久了,所以总归算是填坑吧

手头的香橙派装的Ubuntu18.04 应该是

记录下来主要怕这老爷车零部件每一步都是临时凑出来的之后哪个部件想不起来就G了

目前的定时方案

使用的是crontab做的定时方案使用的命令是

复制代码
crontab -e

被#注释的东西不必在意,目前只做了一个任务

当时的参考文章,后期找到了高级用法,有空看看 ,感觉能用到

bash 复制代码
# Each task to run has to be defined through a single line
# indicating with different fields when the task will be run
# and what command to run for the task
#
# To define the time you can provide concrete values for
# minute (m), hour (h), day of month (dom), month (mon),
# and day of week (dow) or use '*' in these fields (for 'any').
#
# Notice that tasks will be started based on the cron's system
# daemon's notion of time and timezones.
#
# Output of the crontab jobs (including errors) is sent through
# email to the user the crontab file belongs to (unless redirected).
#
# For example, you can run a backup of all your user accounts
# at 5 a.m every week with:
# 0 5 * * 1 tar -zcf /var/backups/home.tgz /home/
50 7 * * 1-5 python /home/orangepi/code/alarm/play.py
# For more information see the manual pages of crontab(5) and cron(8)
#
# m h  dom mon dow   command

显然,命令的意思是周一到周五每天早上执行python play. 比如这周要变成周一到周六,那么1-5改成1-6。真是个悲伤的故事。。。。

python 播放音乐

我的python文件路径是"/home/orangepi/code/alarm/play.py",mp3或者说音频文件存放的路径是"/home/orangepi/code/alarm/mp3"

overpath是用百度paddle生成的一段早安音频

python 复制代码
import time
import pygame
import os
from mutagen.mp3 import MP3

# def play_music(filep) :
list1=os.listdir(r"/home/orangepi/code/alarm/mp3")
list2 = []
for i in list1:
    s=os.path.join(r"/home/orangepi/code/alarm/mp3",i)
    list2.append(s)

morningPath = os.path.join(r"/home/orangepi/code/voice", r"morning.wav")
overPath = os.path.join(r"/home/orangepi/code/voice", r"over.wav")
# 初始化
pygame.mixer.init()
# 加载音乐
pygame.mixer.music.load(overPath)
# 音量设置
pygame.mixer.music.set_volume(80)
# 播放音乐
pygame.mixer.music.play()
# 播放时间
time.sleep(10)

for n in list2:
    # 获取每一首歌的时长
    audio = MP3(n)
    pygame.mixer.init()
    path = n
    pygame.mixer.music.load(path)
    pygame.mixer.music.play()
    time.sleep(int(audio.info.length))

# 关闭音乐

pygame.mixer.music.stop()

早安音频生成

overpath是用百度paddle生成的一段早安音频,

既然用了,这里就挂个广告吧,不过我在香橙派上部署的cpu的,等以后装个主机挂个GPU,在服务器上跑应该会更好。目前只能说,,,能用。且免费。

shell 复制代码
git clone https://github.com/PaddlePaddle/PaddleSpeech.git
cd PaddleSpeech
pip install pytest-runner
pip install .

安装好了之后调用语句是这样的:

bash 复制代码
paddlespeech tts --input "主人,再不起床人家会伤心的" --output over.wav

当然默认生成的是巨平淡的电子音,以后有空专门调校一下这个,看看有没有有意思的。

TBD

下一步做一个Web服务器,可以局域网往上面传音乐,局域网网页关闭音乐播放和打开音乐播放。改响铃时间。

相关推荐
2301_809051147 小时前
Linux 网络编程 学习笔记
linux·网络·学习
坤昱8 小时前
cfs调度类深入解刨——最新内核细节分析2
linux·服务器·cfs·cfs调度·eevdf调度·eevdf·kernel 7.1
艾莉丝努力练剑8 小时前
【Linux:文件】Ext系列文件系统进阶
linux·运维·服务器·c++·文件系统·文件io·ext
海市公约8 小时前
Linux核心基础命令与权限管理实战指南
linux·运维·服务器·vim·权限管理·系统监控·命令行
风吹夏回8 小时前
Python 全局异常处理:从“满屏 try-except”到优雅兜底
开发语言·python
eggcode8 小时前
【Qt学习】Linux(ARM架构)在线安装Qt6.x
linux·qt·学习·arm
wkd_0078 小时前
Ubuntu 22.04 Samba 连接故障排查记:从“用户名或密码错误”到 NTLM 版本不兼容
linux·运维·ubuntu
小熊Coding8 小时前
Python爬取当当网二手图书项目实战!
开发语言·爬虫·python·beautifulsoup·requests·二手图书
秋99 小时前
Java项目运行5天左右自动宕机:系统性定位与解决方案
java·开发语言·python
小江的记录本9 小时前
【JVM虚拟机】垃圾回收GC:垃圾收集器:CMS:核心原理、回收流程、优缺点、废弃原因(附《思维导图》+《面试高频考点清单》)
java·jvm·后端·python·spring·面试·maven