파이썬으로 나만의 뮤직 플레이어 만들기
40939 단어 tutorialshowdevpythoncodenewbie
나만의 파이썬 뮤직 플레이어 만들기
이 튜토리얼에서는 음악을 로드, 재생, 일시 중지 및 중지할 수 있는 pygame 및 Tkinter 라이브러리를 사용하여 Python에서 자신만의 MP3 음악 플레이어를 만드는 방법을 배우게 됩니다.
요구 사항
이 튜토리얼을 따르려면 컴퓨터에 Tkinter와 pygame이 설치되어 있어야 합니다.
설치
sudo apt-get install python3-tk
pip3 install pygame
.
pip install pygame
이제 모든 준비가 완료되면 우리만의 뮤직 플레이어 코딩을 시작할 준비가 되었습니다.
시작하자
Tkinter를 사용하여 애플리케이션 메뉴 및 버튼을 렌더링하고 파일에서 음악을 로드한 다음 파이게임 라이브러리를 사용하여 음악을 재생, 일시중지 및 중지합니다.
파이게임의 기초
Pygame에는 Python에서 사운드 파일을 처리하는 데 직관적인 구문을 제공하는 mixer()라는 내장 메서드가 있습니다.
파이 게임으로 음악 로드 및 재생
파이게임으로 음악을 재생하려면 먼저 mixer()를 가져와서 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.pause() 및 music.unpause()*를 사용하여 음악을 일시중지 및 일시중지 해제할 수 있지만 이러한 방법을 사용하기 전에 음악 파일을 먼저 로드해야 합니다.
사용 예
mixer.music.pause() #pausing music file
mixer.music.unpause() #unpausing music file
음악 파일 중지
music.stop()을 사용하여 음악 재생을 완전히 중지합니다. 이 방법을 사용하면 로드된 음악이 파이게임 메모리에서 지워집니다.
mixer.music.stop()
뮤직 플레이어 외골격 만들기
우리는 이미 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 클래스에 Load 메서드 추가
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()
파일에서 음악 파일을 로드한 후 음악 파일을 재생하는 기능이 필요합니다. 위에서 배운 개념을 사용하여 만들어 봅시다.
클래스에 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()
클래스에 재생 메서드를 추가한 후 일시 중지 및 일시 중지 해제 및 음악 중지를 위한 메서드가 필요합니다.
마지막으로 클래스에 일시 중지 및 중지 메서드를 추가해 보겠습니다.
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()
Final will 앱(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 링크에 있습니다.
YouTube에서 데모 보기
귀하의 관심에 따라 다음도 확인하는 것이 좋습니다.
의견, 제안 또는 어려움이 있는 경우 아래 의견란에 남겨주시면 최대한 빨리 답변해 드리겠습니다.
칼레부 / 뮤직플레이어
Tkinter 및 파이게임 라이브러리를 사용하여 Python으로 구현된 간단한 기본 플레이어
뮤직 플레이어
Tkinter 및 파이게임 라이브러리를 사용하여 Python으로 구현된 간단한 기본 플레이어
View on GitHub
Reference
이 문제에 관하여(파이썬으로 나만의 뮤직 플레이어 만들기), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다
https://dev.to/kalebu/make-your-own-python-music-player-44n
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념
(Collection and Share based on the CC Protocol.)
Reference
이 문제에 관하여(파이썬으로 나만의 뮤직 플레이어 만들기), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://dev.to/kalebu/make-your-own-python-music-player-44n텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)