Создание музыкального автомата с использованием библиотеки vlc для python (и множества кнопок ^^) - PullRequest
0 голосов
/ 03 мая 2019

Узнав, что VLC Player доступен для python (pygame, кажется, не самый лучший вариант), я хочу попробовать создать простой музыкальный автомат с малиновым пи и этим.Моя основа - этот сайт.

Если у кого-то есть лучшее руководство, пожалуйста, не стесняйтесь поделиться.В конце я хочу объединить несколько MCP23017 в цепочку и использовать около 100 кнопок, чтобы добавить песни в плейлист и воспроизвести их.Просто то, что делает обычный старый музыкальный автомат.

Если есть лучший способ сделать это / лучшая библиотека для моего случая использования, пожалуйста, скажите мне.

Одна из проблем будет то, что изначально,кто-то добавляет 5 песен.Все танцуют, и это круто.Пятая песня останавливается, музыка не должна воспроизводиться.30 минут прошло.Кто-то нажимает 3 кнопки (одинаковые или разные), музыка продолжается с этими песнями.Не 5, как раньше, а также не существует отдельной кнопки «играть».Повторяйте весь вечер.

Кроме того, я никогда раньше не использовал VLC для python (или Python), поэтому мне нужна помощь с кодом.Не нужно быть идеальным, но пока это не совсем близко к работе.Несколько советов было бы замечательно.

Вот моя попытка кодирования:

pip install python-vlc #only one time, right?

import vlc # afterwards this should be enough(?)
import time
import RPi.GPIO as GPIO

VarPlay = 0   #Check if it already started playing
playlist = '' #String Variable which is filled with playlist values

GPIO.setwarnings(False)
GPIO.setmode(GPIO.BOARD)

GPIO.setup(10, GPIO.IN, pull_up_down=GPIO.PUD_DOWN)
GPIO.setup(11, GPIO.IN, pull_up_down=GPIO.PUD_DOWN)

def button_1(channel):
  playlist = playlist + '/path/to/song1.mp3'

if VarPlay = 0
 player = vlc.MediaPlayer(song)
 player.play()

VarPlay = 1

def button_2(channel):
playlist = playlist + '/path/to/song2.mp3'

if VarPlay = 0
 player = vlc.MediaPlayer(song)
 player.play()

VarPlay = 1

GPIO.add_event_detect(10,GPIO.RISING,callback=button_1)
GPIO.add_event_detect(11,GPIO.RISING,callback=button_2)

GPIO.cleanup()

Ну, ожидаемый результат - это конечно не работающий музыкальный автомат.нажмите кнопку, услышать песню.Полагаю, пользовательские истории для этого довольно понятны.

Спасибо, многие ребята. Надеемся, мы сможем создать хороший пример "музыкального автомата с VLC для python".

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...