No edit summary |
No edit summary |
||
Line 29: | Line 29: | ||
== Todo == | == Todo == | ||
- Spotify song to youtube integration? (Requires a user token, though) | - Spotify song to youtube integration? (Requires a user token, though) | ||
- Proper queuing when not running in random mode | - Proper queuing when not running in random mode | ||
- Add tags to the final files | - Add tags to the final files | ||
- Clean up older files after 30 days or so | - Clean up older files after 30 days or so | ||
- Probably still need to fix when MPD is not in random mode | - Probably still need to fix when MPD is not in random mode | ||
Revision as of 12:44, 19 October 2019
mpdtube | |
---|---|
Participants | Melan |
Skills | Python, Linux |
Status | Active |
Niche | Music |
Purpose | Infra |
Tool | No |
Location | |
Cost | |
Tool category | General |
mpdtube Property "Tool Image" (as page type) with input value "File:{{{Picture}}}" contains invalid characters or is incomplete and therefore can cause unexpected results during a query or annotation process. {{{Picture}}} {{#if:No | [[Tool Owner::{{{ProjectParticipants}}} | }} {{#if:No | [[Tool Cost::{{{Cost}}} | }}
What
A small program that runs on the SlabPI that takes input from MQTT and feeds it to youtube-dl which in turn puts the extracted audio into MPD.
Where
It runs in /home/pi/mpdtube and as a systemd service called mpdtube.
Usage
MQTT Server: arbiter.vm.nurd.space
Send a MQTT message to the topic mpd/youtube-dl/play, the video will be automatically downloaded and have the audio extracted and then put in MPD's current playlist. If random mode is enabled, the song will get the highest priority so that it gets played next, songs get added with the highest priority (256), once a song has already been queued with priority 256, the next song will be at priority 255 and so on. If MPD is in normal mode, it will put the song as the next in the list. And if MPD is not playing, it will start playing the song right away.
If you want to monitor the output, you can as MPDTube publishes the information to mpd/youtube-dl/status/# (/info, /warning and /error).
You can now also use it on IRC with the command !mpdtube, although currently it does not report back anything but the plan is to add this soon!
Input
You can give anything that youtube-dl supports, which includes soundcloud. You can see a full list over here. You can also search for youtube videos buy using ytsearch:kinderen voor kinderen, it will pick the top most result.
Todo
- Spotify song to youtube integration? (Requires a user token, though)
- Proper queuing when not running in random mode
- Add tags to the final files
- Clean up older files after 30 days or so
- Probably still need to fix when MPD is not in random mode
Source
You can get the source code here