Rumah > Artikel > pembangunan bahagian belakang > Akses metadata pelbagai fail audio dan video menggunakan Python
Kami boleh mengakses metadata fail audio menggunakan Mutagen dan modul eyeD3 dalam Python. Untuk metadata video kita boleh menggunakan filem dan perpustakaan OpenCV dalam Python. Metadata ialah data yang menyediakan maklumat tentang data lain, seperti data audio dan video. Metadata untuk fail audio dan video termasuk format fail, resolusi fail, saiz fail, tempoh, kadar bit, dsb. Dengan mengakses metadata ini, kami boleh mengurus media dengan lebih cekap dan menganalisis metadata untuk mendapatkan beberapa maklumat berguna. Dalam artikel ini, kita akan melihat beberapa perpustakaan atau modul yang disediakan oleh Python untuk mengakses metadata fail audio dan video.
Sesetengah perpustakaan untuk mengakses metadata fail audio ialah -
Mutagen ialah modul Python sumber terbuka untuk memproses metadata audio. Ia menyokong hampir semua jenis fail audio seperti mp3, mp4, OGG, FLAC, dll. Mutagen digunakan untuk mengakses metadata fail audio dan juga untuk memanipulasi data audio.
Sebelum menggunakan mutagen, kita boleh memasang mutagen menggunakan arahan pip dalam Python.
pip install mutagen
Pip ialah pengurus pakej Python. Pip install mutagen akan memasang perpustakaan mutagen dalam fail tempatan anda.
audio["TIT2"].text[0]Sifat
audio["TIT2"] mengembalikan objek dalam bentuk pasangan nilai kunci yang mengandungi pelbagai maklumat tentang fail audio. Akses tajuk fail audio menggunakan kekunci teks dalam objek.
audio.info.length
audio.info mengembalikan objek yang mengandungi semua maklumat tentang fail audio. Panjang fail audio boleh diakses menggunakan audio.info.length, yang mengembalikan panjang dalam beberapa saat.
Berikut ialah contoh cara mengakses metadata fail mp3 menggunakan modul mutagen.mp3 daripada mutagen.
from mutagen.mp3 import MP3 audio = MP3("audio.mp3") # put your audio file in the place of audio.mp3 print(audio.info.length) # Print the length of the audio file print(audio["TIT2"].text[0]) # Print the title of the audio file
222.17142857142858 Suhana Safar Par Prem Nagar Hai
eyeD3 juga merupakan perpustakaan sumber terbuka Python untuk memproses fail audio, terutamanya fail audio mp3. Menggunakan eyeD3, kita boleh membaca dan menulis metadata fail audio, dan juga mengendalikan atau mengemas kini fail audio.
Sebelum menggunakan eyeD3, kita boleh memasangnya menggunakan arahan pip dalam python -
pip install eyeD3
Pip ialah pengurus pakej Python. Pip pasang eyeD3 Pasang pustaka eyeD3 dalam fail setempat.
eyed3.load(your_audio_file)Fungsi
eyed3.load() memuatkan fail audio dan boleh disimpan dalam pembolehubah. Parameter your_audio_file ialah laluan ke fail audio yang perlu anda muatkan.
Gunakan fungsi eyed3.load untuk memuatkan sebarang fail audio
Gunakan sifat audio.info.time_secs untuk mengakses panjang fail audio.
Gunakan sifat audio.tag.title untuk mengakses tajuk fail audio.
Berikut ialah contoh penggunaan eyeD3 untuk mengakses metadata fail audio.
import eyed3 audio = eyed3.load("audio.mp3") # put your audio file in the place of audio.mp3 print(audio.info.time_secs) # Print the length of the audio file print(audio.tag.title) # Print the title of the audio file
223.33 Suhana Safar Par Prem Nagar Hai
Python juga mempunyai beberapa perpustakaan sumber terbuka untuk mengakses metadata fail video, seperti -
moviepy ialah perpustakaan Python sumber terbuka untuk penyuntingan video. Ia juga boleh digunakan untuk mengakses metadata fail video. Moviepy menyokong pelbagai format fail video, seperti mp4, AVI, MOV, dsb. Moviepy boleh membantu kami membaca dan menulis metadata fail video dan beroperasi pada fail video.
Sebelum menggunakan moviepy, anda mesti memasang perpustakaan moviepy menggunakan arahan pip dalam python: -
pip install moviepy
Untuk menggunakan moviepy untuk mengakses metadata fail video kita mesti -
Import modul VideoFileClip daripada moviepy.editor
Gunakan VideoClipFile untuk memuatkan fail video
Gunakan sifat movipy (seperti tempoh, saiz, dll.) untuk mengakses metadata fail video yang dimuatkan.
Kami akan mengimport modul VideoFileClip daripada pakej moviepy.editor dan kemudian menggunakan modul VideoFileClip untuk memuatkan fail video kami. Video.duration dan video.size masing-masing mengembalikan tempoh dan saiz paparan fail video.
from moviepy.editor import VideoFileClip video = VideoFileClip("video.mp4") print(video.duration) # Print the duration of the video print(video.size) # Print the size of the video
50.74 [1920, 1080]
OpenCV ialah perpustakaan penglihatan komputer sumber terbuka yang digunakan dalam Python untuk memproses data video. Ia juga boleh digunakan untuk mengakses metadata pelbagai format fail video seperti MP4, AVI, MOV, dll. Anda boleh menggunakan OpenCV untuk membaca dan menulis metadata fail video dan melakukan pemprosesan video.
Sebelum menggunakan modul cv2, kita mesti memasang opencv-python-headless menggunakan arahan pip dalam Python -
pip install opencv-python-headless
Pip ialah pengurus pakej Python. Pip install opencv-python-headless memasang perpustakaan openCv dalam fail tempatan anda.
video.get(cv2.CAP_PROP_FPS)
Cv2 .CAP_PROP_FPS Mengembalikan kadar bingkai fail video. Gunakan fungsi video.get() untuk mengembalikan kadar bingkai video tertentu.
video.get(cv2.CAP_PROP_FRAME_WIDTH)
cv2.CAP_PROP_FRAME_WIDTH mengembalikan lebar bingkai fail video. Gunakan fungsi video.get() untuk mengembalikan lebar bingkai video tertentu.
video.get(cv2.CAP_PROP_FRAME_HEIGHT)
cv2.CAP_PROP_FRAME_HEIGHT mengembalikan ketinggian bingkai fail video. Gunakan fungsi video.get() untuk mengembalikan ketinggian bingkai video tertentu.
要使用OpenCV访问视频文件的元数据,我们必须执行以下操作−
导入opencv
使用 cv2.VideoCapture 属性加载视频文件
使用 CAP_PROP_FRAME_WIDTH、FRAME_HEIGHT 等属性访问文件的各种元数据。
使用 cv2.VideoCapture 模块将视频文件导入变量中。现在,这个存储的视频文件可用于使用 cv2 模块中的 CAP_PROP_FPS、CAP_PROP_FRAME_WIDTH 等属性获取元数据。
import cv2 video = cv2.VideoCapture("video.mp4") fps = video.get(cv2.CAP_PROP_FPS) # Get the frame rate of the video width = video.get(cv2.CAP_PROP_FRAME_WIDTH) # Get the width of the video height = video.get(cv2.CAP_PROP_FRAME_HEIGHT) # Get the height of the video print(fps, width, height) # Print the frame rate, width, and height of the video
60.0 1920.0 1080.0
在本文中,我们讨论了 Python 提供的一些用于访问音频和视频文件元数据的库。对于音频文件,我们探索了 mutagen 和 eyeD3 库;对于视频文件,我们探索了 moviepy 和 openCV 库。 Python 中还有许多其他库可用于访问音频和视频文件的元数据。最好浏览这些库的文档,以便更好地了解这些库提供的功能。
Atas ialah kandungan terperinci Akses metadata pelbagai fail audio dan video menggunakan Python. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!