PythonでTkinterとPygameを使用して音楽プレーヤーを構築する

ブログ

このチュートリアルでは、TkinterとPygameを使用してPythonで簡単な音楽プレーヤーアプリケーションを構築または作成する方法を学習します。

音楽を聴くことは、毎日出会うほとんどすべての人の趣味です。この音楽を再生するには、Windows、Linux、Mac、さらにはAndroid、Apple IOSなど、すべてのオペレーティングシステムのデバイスに音楽プレーヤーをインストールする必要があります。また、お気に入りの曲を再生するための音楽プレーヤーで構成されています。

したがって、このチュートリアルでは、Pythonプログラミング言語を使用して音楽プレーヤーを最初から作成する方法を学習します。 Pythonには非常に豊富なライブラリサポートがあることは誰もが知っているので、多数のライブラリから、それらのいくつかを使用してGUIベースの音楽プレーヤーを構築します。使用するライブラリは次のとおりです。

  • Tkinter –チュートリアルのタイトルで指定されているように、音楽プレーヤーのGUI作成にTkinterライブラリを使用します。これは、Tkinterが最も人気があり、シームレスな作成に役立つ多くのウィジェットが付属する非常に使いやすいライブラリであるためです。見栄えの良いGUIアプリケーション。
  • Pygame – Pygameは、オーディオ、ビデオなどのさまざまなマルチメディア形式で再生できるライブラリでもあります。このチュートリアルでは、Pygameの「mixer.music」モジュールを使用して、音楽プレーヤーアプリケーションにさまざまな機能を提供します。曲のトラックの操作に関連しています。
  • あなた –これはPythonの標準ライブラリに含まれているモジュールであり、明示的にインストールする必要はありません。 OSは、オペレーティングシステムと対話するためのさまざまな機能を提供します。このチュートリアルでは、OSを使用して、指定したディレクトリから曲のプレイリストを取得し、音楽プレーヤーアプリケーションで使用できるようにします。

詳細については Tkinter 図書館、 Pygame ライブラリまたは あなた Pythonのモジュールでは、ドキュメントを参照できます。

PythonでTkinter、Pygameを使用して音楽プレーヤーを構築する

実際のコードを開始する前に、必要なライブラリをインストールする必要があります。

インストール:

$ sudo apt-get install python3-tk $ pip3 install pygame

それでは、コードを始めましょう。

ソースコード:Pythonの音楽プレーヤー

# Importing Required Modules & libraries from tkinter import * import pygame import os # Defining MusicPlayer Class class MusicPlayer: # Defining Constructor def __init__(self,root): self.root = root # Title of the window self.root.title('Music Player') # Window Geometry self.root.geometry('1000x200+200+200') # Initiating Pygame pygame.init() # Initiating Pygame Mixer pygame.mixer.init() # Declaring track Variable self.track = StringVar() # Declaring Status Variable self.status = StringVar() # Creating Track Frame for Song label & status label trackframe = LabelFrame(self.root,text='Song Track',font=('times new roman',15,'bold'),bg='grey',fg='white',bd=5,relief=GROOVE) trackframe.place(x=0,y=0,width=600,height=100) # Inserting Song Track Label songtrack = Label(trackframe,textvariable=self.track,width=20,font=('times new roman',24,'bold'),bg='grey',fg='gold').grid(row=0,column=0,padx=10,pady=5) # Inserting Status Label trackstatus = Label(trackframe,textvariable=self.status,font=('times new roman',24,'bold'),bg='grey',fg='gold').grid(row=0,column=1,padx=10,pady=5) # Creating Button Frame buttonframe = LabelFrame(self.root,text='Control Panel',font=('times new roman',15,'bold'),bg='grey',fg='white',bd=5,relief=GROOVE) buttonframe.place(x=0,y=100,width=600,height=100) # Inserting Play Button playbtn = Button(buttonframe,text='PLAY',command=self.playsong,width=6,height=1,font=('times new roman',16,'bold'),fg='navyblue',bg='gold').grid(row=0,column=0,padx=10,pady=5) # Inserting Pause Button playbtn = Button(buttonframe,text='PAUSE',command=self.pausesong,width=8,height=1,font=('times new roman',16,'bold'),fg='navyblue',bg='gold').grid(row=0,column=1,padx=10,pady=5) # Inserting Unpause Button playbtn = Button(buttonframe,text='UNPAUSE',command=self.unpausesong,width=10,height=1,font=('times new roman',16,'bold'),fg='navyblue',bg='gold').grid(row=0,column=2,padx=10,pady=5) # Inserting Stop Button playbtn = Button(buttonframe,text='STOP',command=self.stopsong,width=6,height=1,font=('times new roman',16,'bold'),fg='navyblue',bg='gold').grid(row=0,column=3,padx=10,pady=5) # Creating Playlist Frame songsframe = LabelFrame(self.root,text='Song Playlist',font=('times new roman',15,'bold'),bg='grey',fg='white',bd=5,relief=GROOVE) songsframe.place(x=600,y=0,width=400,height=200) # Inserting scrollbar scrol_y = Scrollbar(songsframe,orient=VERTICAL) # Inserting Playlist listbox self.playlist = Listbox(songsframe,yscrollcommand=scrol_y.set,selectbackground='gold',selectmode=SINGLE,font=('times new roman',12,'bold'),bg='silver',fg='navyblue',bd=5,relief=GROOVE) # Applying Scrollbar to listbox scrol_y.pack(side=RIGHT,fill=Y) scrol_y.config(command=self.playlist.yview) self.playlist.pack(fill=BOTH) # Changing Directory for fetching Songs os.chdir('/home/sameer/Desktop/CodeSpeedy/cs10/songs') # Fetching Songs songtracks = os.listdir() # Inserting Songs into Playlist for track in songtracks: self.playlist.insert(END,track) # Defining Play Song Function def playsong(self): # Displaying Selected Song title self.track.set(self.playlist.get(ACTIVE)) # Displaying Status self.status.set('-Playing') # Loading Selected Song pygame.mixer.music.load(self.playlist.get(ACTIVE)) # Playing Selected Song pygame.mixer.music.play() def stopsong(self): # Displaying Status self.status.set('-Stopped') # Stopped Song pygame.mixer.music.stop() def pausesong(self): # Displaying Status self.status.set('-Paused') # Paused Song pygame.mixer.music.pause() def unpausesong(self): # Displaying Status self.status.set('-Playing') # Playing back Song pygame.mixer.music.unpause() # Creating TK Container root = Tk() # Passing Root to MusicPlayer Class MusicPlayer(root) # Root Window Looping root.mainloop()

コードを徹底的に確認することをお勧めします。理解を深めるために、ほぼすべての行にコメントを追加したことも非常に理解しやすいです。

出力:

別の曲のディレクトリを作成しました:

PythonでTkinterとPygameを使用して音楽プレーヤーを構築する

ディレクトリにいくつかのランダムな曲を追加しました:

ディレクトリにいくつかのランダムな曲を追加しました

ミュージックプレーヤーアプリケーションを開始しました:

Pythonでミュージックプレーヤーアプリケーションを開始しました

asp.net コア リクエストのタイムアウト

再生する曲を選択する

再生する曲を選択する

PLAYボタンをクリックして、曲を再生します

機械学習でお金を稼ぐ方法

PLAYボタンをクリックして、曲を再生します

[一時停止]ボタンをクリックしました。[一時停止中の曲]:

一時停止ボタンをクリックし、曲を一時停止しました

[一時停止解除]ボタン、[曲の再生]をクリックしました

[一時停止解除]ボタン、[曲の再生]をクリックしました

STOPボタンをクリックすると、曲が停止しました

STOPボタンをクリックすると、曲が停止しました

このようにして、Pythonを使用して簡単な音楽プレーヤーを作成できます。このチュートリアルがお役に立てば幸いです。「LearningKeepCoding」に感謝します。

#python#web-開発

www.youtube.com

PythonでTkinterとPygameを使用して音楽プレーヤーを構築する

このPythonチュートリアルでは、TkinterとPygameを使用してPythonで簡単な音楽プレーヤーアプリケーションを構築または作成する方法を学習します。