То оригинальная статья можно найти в kalebujordan.com
Сделайте свой собственный музыкальный игрок Python
В этом руководстве вы собираетесь узнать, как сделать свой собственный MP3-проигрыватель в Python, используя пигам и Tkinter Библиотеки, которые могут нагрузка , Играть , Пауза И Стоп музыка.
Требования
Чтобы иметь возможность следовать этому руководству, вам нужно иметь Tkinter и Pygame установлен на вашей машине
Установка
- Linux.
sudo apt-get install python3-tk pip3 install pygame
- Окно
pip install pygame
Теперь, когда все готово установлено, мы теперь готовы начать кодировать нашу собственную музыкальный проигрыватель
Давай началось
Мы собираемся использовать Tkinter, чтобы сделать наше приложение меню и Кнопки , а также Загрузка Музыка из файлов, а затем библиотека Pygame в Играть, Пауза и Стоп музыка
Основы Pygame.
Pygame имеет встроенный метод под названием Смеситель () который предоставляет нам интуитивно понятный синтаксис на борьбе со звуками файлов в Python, мы увидим;
- Загрузка и воспроизведение музыки
- Пауза и затухая музыка
- Остановка музыкального файла
Загрузка и воспроизведение музыки с PyGame
Играть музыку с Pygame Вы в первую очередь должны импортировать Смеситель () инициализируйте его через init (), * а затем используя * music.load () загрузить музыку и, наконец, играет в нее с помощью music.play () Отказ
Пример использования
from pygame import mixer
mixer.init() #Initialzing pyamge mixer
mixer.music.load.('filename.mp3') #Loading Music File
mixer.music.play() #Playing Music with Pygame
Пауза и оттаивание музыки с пигей.
использовать * music.pose () и Music.unpause () * Чтобы сделать паузу и объяснять свою музыку, но сделать ваш музыкальный файл сначала загружен сначала перед использованием этих методов.
Пример использования
mixer.music.pause() #pausing music file mixer.music.unpause() #unpausing music file
Остановите музыкальный файл
использовать music.stop () Чтобы полностью остановить вашу музыку от игры, после использования этого метода загруженная музыка будет очищена в памяти Pygame.
mixer.music.stop()
Создание вашего музыкального игрока ExoSkeleton
Мы уже охватывали основы воспроизведения музыки с Python, теперь пришло время начать проектирование нашего пользовательского интерфейса приложения {ui) а затем связываться вместе с логикой.
Сначала позвольте импортировать всю необходимую библиотеку
from tkinter import * from tkinter import filedialog from pygame import mixer
Давайте теперь реализуем наш класс и кнопки для нашего приложения
class MusicPlayer:
def __init__(self, window ):
window.geometry('320x100'); window.title('Iris Player'); window.resizable(0,0)
Load = Button(window, text = 'Load', width = 10, font = ('Times', 10), command = self.load)
Play = Button(window, text = 'Play', width = 10,font = ('Times', 10), command = self.play)
Pause = Button(window,text = 'Pause', width = 10, font = ('Times', 10), command = self.pause)
Stop = Button(window ,text = 'Stop', width = 10, font = ('Times', 10), command = self.stop)
Load.place(x=0,y=20);Play.place(x=110,y=20);Pause.place(x=220,y=20);Stop.place(x=110,y=60)
self.music_file = False
self.playing_state = False
Давайте теперь добавим метод класса, который мы только что сделали для загрузки музыкального файла с нашего компьютера, так же, как показано в коде ниже
Добавление метода нагрузки на наш класс MusicPlayer
class MusicPlayer:
def __init__(self, window ):
window.geometry('320x100'); window.title('Iris Player'); window.resizable(0,0)
Load = Button(window, text = 'Load', width = 10, font = ('Times', 10), command = self.load)
Play = Button(window, text = 'Play', width = 10,font = ('Times', 10), command = self.play)
Pause = Button(window,text = 'Pause', width = 10, font = ('Times', 10), command = self.pause)
Stop = Button(window ,text = 'Stop', width = 10, font = ('Times', 10), command = self.stop)
Load.place(x=0,y=20);Play.place(x=110,y=20);Pause.place(x=220,y=20);Stop.place(x=110,y=60)
self.music_file = False
self.playing_state = False
def load(self):
self.music_file = filedialog.askopenfilename()
После загрузки музыкального файла из файла нам нужна функция для воспроизведения нашего музыкального файла, давайте сделаем его, используя концепции, которые мы только что узнали выше.
Добавление метода воспроизведения в наш класс
class MusicPlayer:
def __init__(self, window ):
window.geometry('320x100'); window.title('Iris Player'); window.resizable(0,0)
Load = Button(window, text = 'Load', width = 10, font = ('Times', 10), command = self.load)
Play = Button(window, text = 'Play', width = 10,font = ('Times', 10), command = self.play)
Pause = Button(window,text = 'Pause', width = 10, font = ('Times', 10), command = self.pause)
Stop = Button(window ,text = 'Stop', width = 10, font = ('Times', 10), command = self.stop)
Load.place(x=0,y=20);Play.place(x=110,y=20);Pause.place(x=220,y=20);Stop.place(x=110,y=60)
self.music_file = False
self.playing_state = False
def load(self):
self.music_file = filedialog.askopenfilename()
def play(self):
if self.music_file:
mixer.init()
mixer.music.load(self.music_file)
mixer.music.play()
После добавления метода воспроизведения в наш класс нам нужен метод, чтобы пауза и Упорядочить, а также остановить музыку
Наконец-то давайте добавим паузу и способ остановки в наш класс
class MusicPlayer:
def __init__(self, window ):
window.geometry('320x100'); window.title('Iris Player'); window.resizable(0,0)
Load = Button(window, text = 'Load', width = 10, font = ('Times', 10), command = self.load)
Play = Button(window, text = 'Play', width = 10,font = ('Times', 10), command = self.play)
Pause = Button(window,text = 'Pause', width = 10, font = ('Times', 10), command = self.pause)
Stop = Button(window ,text = 'Stop', width = 10, font = ('Times', 10), command = self.stop)
Load.place(x=0,y=20);Play.place(x=110,y=20);Pause.place(x=220,y=20);Stop.place(x=110,y=60)
self.music_file = False
self.playing_state = False
def load(self):
self.music_file = filedialog.askopenfilename()
def play(self):
if self.music_file:
mixer.init()
mixer.music.load(self.music_file)
mixer.music.play()
def pause(self):
if not self.playing_state:
mixer.music.pause()
self.playing_state=True
else:
mixer.music.unpause()
self.playing_state = False
def stop(self):
mixer.music.stop()
Давайте посмотрим на наше окончательное приложение воли (App.py)
from tkinter import *
from tkinter import filedialog
from pygame import mixer
class MusicPlayer:
def __init__(self, window ):
window.geometry('320x100'); window.title('Iris Player'); window.resizable(0,0)
Load = Button(window, text = 'Load', width = 10, font = ('Times', 10), command = self.load)
Play = Button(window, text = 'Play', width = 10,font = ('Times', 10), command = self.play)
Pause = Button(window,text = 'Pause', width = 10, font = ('Times', 10), command = self.pause)
Stop = Button(window ,text = 'Stop', width = 10, font = ('Times', 10), command = self.stop)
Load.place(x=0,y=20);Play.place(x=110,y=20);Pause.place(x=220,y=20);Stop.place(x=110,y=60)
self.music_file = False
self.playing_state = False
def load(self):
self.music_file = filedialog.askopenfilename()
def play(self):
if self.music_file:
mixer.init()
mixer.music.load(self.music_file)
mixer.music.play()
def pause(self):
if not self.playing_state:
mixer.music.pause()
self.playing_state=True
else:
mixer.music.unpause()
self.playing_state = False
def stop(self):
mixer.music.stop()
root = Tk()
app= MusicPlayer(root)
root.mainloop()
Вывод
Если вы запустите вышеуказанный код, вывод будет такой, как показано ниже, теперь вы можете воспроизводить с ним, загружая, воспроизведение, паузах и остановкой музыки, полной демонстрации на YouTube Link в конце статьи.
Посмотреть демонстрацию на YouTube
Исходя из вашего интереса, я рекомендую вам также проверить их;
- Как сделать цифровые часы в Python
- Как отследить номер телефона в Python
- Как сделать калькулятор Python GUI в Python
- Как сделать угадать игру в Python
- Как программировать Arduino Board с Python
- Как построить блокировщик сайта в Python
В случае любого Комментарий , Предложение или трудности Снимите его на поле комментариев ниже, а затем вернусь к вам как можно скорее.
Kalebu/MusicPlayer
Простой базовый проигрыватель, реализованный в Python с использованием библиотеки TKINTER & PYGAME
Простой базовый проигрыватель, реализованный в Python с использованием библиотеки TKINTER & PYGAME
Оригинал: “https://dev.to/kalebu/make-your-own-python-music-player-44n”