/ / Cách xây dựng Trình phát nhạc bằng Python

Cách xây dựng Trình phát nhạc bằng Python

Máy nghe nhạc đã phát triển nhanh chóng theo thời gian. Nó bắt đầu với Máy hát, Máy hát tự động, máy nghe đĩa CD và máy nghe nhạc MP3. Ngày nay, bạn có thể nghe nhạc trên chính điện thoại di động hoặc máy tính của mình. Khám phá chính khái niệm này, hãy phát triển một ứng dụng trình phát nhạc bằng Python và bắt đầu.


Mô-đun Tkinter, PyGame và OS

Để xây dựng trình phát nhạc, bạn cần có mô-đun Tkinter, PyGame và hệ điều hành. Tkinter là thư viện GUI tiêu chuẩn cho Python mà bạn có thể sử dụng để tạo các ứng dụng dành cho máy tính để bàn. Nó cung cấp nhiều tiện ích con như nút, nhãn và hộp văn bản để bạn có thể phát triển ứng dụng ngay lập tức. Để cài đặt Tkinter, hãy mở terminal và thực hiện:

 pip install tkinter 

Sử dụng PyGame, bạn có thể phát triển các trò chơi video tuyệt vời có thể chạy trên mọi nền tảng. Nó rất đơn giản để sử dụng và đi kèm với các thư viện đồ họa và âm thanh để giúp quá trình phát triển của bạn nhanh hơn. Bạn sẽ sử dụng PyGame’s máy trộn.music mô-đun để cung cấp các chức năng khác nhau cho máy nghe nhạc của bạn. Để cài đặt PyGame, hãy thực hiện:

 pip install pygame 

Cuối cùng, bạn cần mô-đun hệ điều hành để tải các bài hát vào hệ thống của mình. Mô-đun hệ điều hành đi kèm với thư viện tiêu chuẩn của Python và không cần cài đặt riêng. Với mô-đun này, bạn có thể truy cập các chức năng dành riêng cho hệ thống để xử lý hệ điều hành của mình.

Cách xây dựng Trình phát nhạc bằng Python

Bạn có thể tìm thấy mã nguồn của ứng dụng Trình phát nhạc bằng Python trong kho lưu trữ GitHub này.

Bắt đầu bằng cách nhập các mô-đun Tkinter, PyGame và OS. Định nghĩa một lớp, Máy nghe nhạc. xác định __trong đó__ hàm tạo mà chương trình gọi vào thời điểm tạo đối tượng. Bạn có thể sử dụng ví dụ bản thân để truy cập bất kỳ biến hoặc phương thức nào trong lớp.

Khởi tạo cửa sổ gốc, đặt tiêu đề và kích thước cho trình phát nhạc của bạn. Khởi tạo tất cả các mô-đun PyGame đã nhập cùng với mô-đun bộ trộn. Đặt bản nhạc và trạng thái thành của ChuỗiVar kiểu. Sử dụng tính năng này, bạn có thể đặt giá trị văn bản và truy xuất giá trị đó khi cần.

 from tkinter import *
import pygame
import os

class MusicPlayer:

  def __init__(self,root):
    self.root = root
    self.root.title("Music Player")
    self.root.geometry("1000x200")
    pygame.init()
    pygame.mixer.init()
    self.track = StringVar()
    self.status = StringVar()

xác định một NhãnKhung cái đó sẽ chứa bài hát nhãn và tình trạng theo dõi nhãn. Labelframe hoạt động như một thùng chứa và hiển thị các nhãn bên trong vùng viền. Đặt cửa sổ mẹ mà bạn muốn đặt khung vào, văn bản sẽ hiển thị, kiểu phông chữ, màu nền, màu phông chữ, độ rộng đường viền và hiệu ứng 3D bên ngoài tiện ích.

Sử dụng địa điểm() phương pháp tổ chức khung. Xác định hai nhãn, bài hát tình trạng theo dõi. Tùy chỉnh chúng và sử dụng lưới() quản lý để sắp xếp chúng theo định dạng hàng và cột. Bạn có thể đặt bài hát xuất hiện ở hàng đầu tiên và thêm một số phần đệm để tránh chồng chéo và làm cho thiết kế đẹp hơn.

     trackframe = LabelFrame(self.root,text="Song Track",font=("arial",15,"bold"),bg="#8F00FF",fg="white",bd=5,relief=GROOVE)
    trackframe.place(x=0,y=0,width=600,height=100)
    songtrack = Label(trackframe,textvariable=self.track,width=20,font=("arial",24,"bold"),bg="#8F00FF",fg="#B0FC38").grid(row=0,column=0,padx=10,pady=5)
    trackstatus = Label(trackframe,textvariable=self.status,font=("arial",24,"bold"),bg="#8F00FF",fg="#B0FC38").grid(row=0,column=1,padx=10,pady=5)

Tương tự, xác định một khung sẽ chứa bốn nút. Tùy chỉnh và sắp xếp nó bên dưới khung theo dõi. Xác định bốn nút, Chơi, Tạm ngừng, Bỏ tạm dừngDừng lại. Đặt cửa sổ chính mà bạn muốn đặt các nút vào, văn bản mà nó sẽ hiển thị, các chức năng mà nó sẽ thực hiện khi được nhấp, chiều rộng, chiều cao, kiểu phông chữ, màu nền và màu phông chữ mà nó nên có.

Sử dụng lưới() quản lý để sắp xếp các nút trong một hàng và bốn cột khác nhau.

     buttonframe = LabelFrame(self.root,text="Control Panel",font=("arial",15,"bold"),bg="#8F00FF",fg="white",bd=5,relief=GROOVE)
    buttonframe.place(x=0,y=100,width=600,height=100)
    playbtn = Button(buttonframe,text="PLAY",command=self.playsong,width=6,height=1,font=("arial",16,"bold"),fg="navyblue",bg="#B0FC38").grid(row=0,column=0,padx=10,pady=5)
    playbtn = Button(buttonframe,text="PAUSE",command=self.pausesong,width=8,height=1,font=("arial",16,"bold"),fg="navyblue",bg="#B0FC38").grid(row=0,column=1,padx=10,pady=5)
    playbtn = Button(buttonframe,text="UNPAUSE",command=self.unpausesong,width=10,height=1,font=("arial",16,"bold"),fg="navyblue",bg="#B0FC38").grid(row=0,column=2,padx=10,pady=5)
    playbtn = Button(buttonframe,text="STOP",command=self.stopsong,width=6,height=1,font=("arial",16,"bold"),fg="navyblue",bg="#B0FC38").grid(row=0,column=3,padx=10,pady=5)

Xác định một LabelFrame, khung bài hát. Điều này sẽ chứa các bài hát bạn muốn phát trên máy nghe nhạc của mình. Tùy chỉnh các thuộc tính của khung và đặt nó ở bên phải của rãnh và khung nút. Thêm một thanh cuộn dọc để truy cập các bài hát ngay cả khi danh sách bài hát của bạn dài.

Sử dụng hộp danh sách widget để hiển thị các bài hát. Đặt màu nền để hiển thị khi bạn chọn văn bản và chế độ. Chế độ đơn cho phép bạn chọn một bài hát tại một thời điểm. Ngoài ra, hãy khởi tạo kiểu phông chữ, màu nền, màu phông chữ, độ rộng đường viền và kiểu 3D mà bạn muốn xung quanh nó.

     songsframe = LabelFrame(self.root,text="Song Playlist",font=("arial",15,"bold"),bg="#8F00FF",fg="white",bd=5,relief=GROOVE)
    songsframe.place(x=600,y=0,width=400,height=200)
    scroll_y = Scrollbar(songsframe,orient=VERTICAL)
    self.playlist = Listbox(songsframe,yscrollcommand=scroll_y.set,selectbackground="#B0FC38",selectmode=SINGLE,font=("arial",12,"bold"),bg="#CF9FFF",fg="navyblue",bd=5,relief=GROOVE)

Đặt thanh cuộn ở phía bên phải của cửa sổ và điền nó là Y. Điều này đảm bảo rằng bất cứ khi nào bạn mở rộng cửa sổ, Thanh cuộn cũng sẽ mở rộng theo hướng Y. Định cấu hình hộp danh sách để sử dụng yview phương pháp của thanh cuộn để cuộn theo chiều dọc. Đóng gói hộp danh sách để chiếm không gian theo cả chiều ngang và chiều dọc.

Thay đổi thư mục làm việc hiện tại thành đường dẫn đã chỉ định. Lặp lại các bài hát và chèn từng bài một vào hộp danh sách. Bạn dùng KẾT THÚC làm đối số đầu tiên khi bạn muốn thêm các dòng mới vào cuối hộp danh sách.

     scroll_y.pack(side=RIGHT,fill=Y)
    scroll_y.config(command=self.playlist.yview)
    self.playlist.pack(fill=BOTH)
    os.chdir("Path_to_your_songs_folder")
    songtracks = os.listdir()
    for track in songtracks:
      self.playlist.insert(END,track)

Xác định một chức năng, chơi nhạc. Đặt bản nhạc để hiển thị tên của bài hát cùng với trạng thái là -Đang chơi. Sử dụng trọng tải()chơi() các chức năng của mô-đun mixer.music của PyGame để tải nhạc để phát lại và khởi động nó.

   def playsong(self):
    self.track.set(self.playlist.get(ACTIVE))
    self.status.set("-Playing")
    pygame.mixer.music.load(self.playlist.get(ACTIVE))
    pygame.mixer.music.play()

Tương tự, xác định các chức năng để dừng, tạm dừng và bỏ tạm dừng các bài hát bằng cách sử dụng dừng lại(), tạm ngừng()bỏ tạm dừng().

   def stopsong(self):
    self.status.set("-Stopped")
    pygame.mixer.music.stop()

  def pausesong(self):
    self.status.set("-Paused")
    pygame.mixer.music.pause()

  def unpausesong(self):
    self.status.set("-Playing")
    pygame.mixer.music.unpause()

Khởi tạo phiên bản Tkinter và hiển thị cửa sổ gốc bằng cách chuyển nó tới lớp. Các vòng lặp chính() hàm yêu cầu Python chạy vòng lặp sự kiện Tkinter và lắng nghe các sự kiện cho đến khi bạn đóng cửa sổ.

 root = Tk()
MusicPlayer(root)
root.mainloop()

Đặt tất cả các mã lại với nhau và bạn đã có trình phát nhạc sẵn sàng để chơi trong tầm tay. Bạn có thể tùy chỉnh trình phát nhạc của mình hơn nữa bằng cách thêm các đối tượng và hình dạng bằng các mô-đun vẽ của PyGame.

Đầu ra của ứng dụng Trình phát nhạc bằng Python

Khi chạy chương trình, trình phát nhạc sẽ khởi chạy các bài hát bạn đã chọn làm danh sách phát. Khi chọn bất kỳ bài hát nào và nhấn vào Chơi nút, nhạc bắt đầu phát. Tương tự, nhạc tạm dừng, bỏ tạm dừng và dừng phát bằng cách nhấp vào các nút thích hợp.

Ứng dụng trình phát nhạc bằng Python

Trò chơi xây dựng với mô-đun PyGame

PyGame là một mô-đun mạnh mẽ mà bạn có thể sử dụng để xây dựng các trò chơi như Frets on Fire, Flappy Bird, Snake, Super Potato Bruh, Sudoku, v.v. PyGame có thiết kế hướng đối tượng, vì vậy bạn có thể sử dụng lại mã và tùy chỉnh các ký tự trong trò chơi của mình một cách dễ dàng.

Nó hỗ trợ và cung cấp các công cụ đồ họa, âm thanh, đầu vào và đầu ra tuyệt vời, vì vậy bạn có thể tập trung vào việc thiết kế trò chơi của mình thay vì đầu tư thời gian vào việc mã hóa từng tính năng một phút. Ngoài ra, bạn có thể khám phá Pyglet và Kivy nhanh hơn, hỗ trợ các dự án 3D, trực quan hơn và đi kèm với các bản cập nhật thường xuyên.

Similar Posts

Leave a Reply

Your email address will not be published. Required fields are marked *