[python] PyQt를 활용한 멀티미디어 플레이어 개발

많은 사람들이 음악이나 동영상을 즐기기 위해 플레이어를 사용합니다. 이번에는 PyQt를 활용하여 멀티미디어 플레이어를 개발하는 방법에 대해 알아보겠습니다.

필요한 패키지 설치하기

먼저 PyQt 패키지를 설치해야 합니다. 아래의 명령어를 사용하여 PyQt를 설치하세요.

pip install PyQt5

PyQt를 이용한 UI 디자인하기

PyQt를 사용하여 멀티미디어 플레이어의 UI를 디자인하는 방법을 알아보겠습니다. QMainWindow 클래스를 상속받아 기본 윈도우를 생성하고, 필요한 위젯들을 추가해주면 됩니다.

import sys
from PyQt5.QtWidgets import QApplication, QMainWindow, QPushButton

class MediaPlayer(QMainWindow):
    def __init__(self):
        super().__init__()
        self.setWindowTitle("멀티미디어 플레이어")
        self.setGeometry(100, 100, 300, 200)
        
        self.play_button = QPushButton("재생", self)
        self.play_button.setGeometry(50, 50, 100, 50)
        
if __name__ == "__main__":
    app = QApplication(sys.argv)
    player = MediaPlayer()
    player.show()
    sys.exit(app.exec_())

위 코드에서는 QMainWindow를 상속받는 MediaPlayer 클래스를 정의하였습니다. 윈도우 타이틀과 크기를 설정하고, QPushButton 위젯을 생성하여 재생 버튼을 추가했습니다.

멀티미디어 파일 재생하기

이제 멀티미디어 파일을 재생할 수 있는 기능을 추가해보겠습니다. PyQt에서는 QMediaPlayer를 사용하여 멀티미디어 파일을 재생할 수 있습니다.

import sys
from PyQt5.QtWidgets import QApplication, QMainWindow, QPushButton, QFileDialog
from PyQt5.QtMultimedia import QMediaPlayer, QMediaContent

class MediaPlayer(QMainWindow):
    def __init__(self):
        super().__init__()
        self.setWindowTitle("멀티미디어 플레이어")
        self.setGeometry(100, 100, 300, 200)
        
        self.play_button = QPushButton("재생", self)
        self.play_button.setGeometry(50, 50, 100, 50)
        self.play_button.clicked.connect(self.play_media)
        
        self.media_player = QMediaPlayer(self)
        
    def play_media(self):
        file_dialog = QFileDialog()
        media_file = file_dialog.getOpenFileName(self, "파일 선택", "", "All Files (*);;Audio Files (*.mp3)")
        media_content = QMediaContent(media_file[0])
        self.media_player.setMedia(media_content)
        self.media_player.play()
        
if __name__ == "__main__":
    app = QApplication(sys.argv)
    player = MediaPlayer()
    player.show()
    sys.exit(app.exec_())

위 코드에서는 play_button을 클릭하면 QFileDialog를 통해 멀티미디어 파일을 선택하고, 선택된 파일을 QMediaPlayer를 이용하여 재생합니다.

결론

이제 PyQt를 활용하여 멀티미디어 플레이어를 개발하는 방법에 대해 알아보았습니다. PyQt를 사용하면 다양한 기능을 가진 멀티미디어 플레이어를 만들 수 있으니, 필요에 따라 응용하여 개발해보시기 바랍니다.

참고자료