Rumah  >  Artikel  >  pembangunan bahagian belakang  >  Alat Python: Selesaikan beban kerja sehari dalam masa lima minit, ia sangat lazat

Alat Python: Selesaikan beban kerja sehari dalam masa lima minit, ia sangat lazat

王林
王林ke hadapan
2023-05-23 16:43:061466semak imbas

Alat Python: Selesaikan beban kerja sehari dalam masa lima minit, ia sangat lazat

Pengenalan

FFmpeg ialah satu set program pemprosesan audio dan video yang berkuasa dan asas kepada banyak perisian audio dan video, FFmpeg telah menjadi standard untuk audio dan pemprosesan video dalam industri . Walau bagaimanapun, terdapat kos pembelajaran tertentu untuk menggunakan FFmpeg daripada baris arahan, dan perpustakaan ffmpeg-python menyelesaikan masalah ini dengan baik.

Anda boleh menggunakan ffmpeg dalam kod python selepas pemasangan mudah melalui pip.

pip3 install ffmpeg-python

Dapatkan maklumat video

path = 'main.mp4'
probe = ffmpeg.probe(path)
video_stream = next((stream for stream in probe['streams'] if stream['codec_type'] == 'video'), None)
width = int(video_stream['width'])
height = int(video_stream['height'])
print(width, height)

Kita boleh menggunakan strim untuk mendapatkan beberapa maklumat asas video, seperti saiz, tempoh, kadar bingkai, dsb.

Pemprosesan cermin

# 左右镜像
ffmpeg.input(path).hflip().output('output.mp4').run()
# 上下镜像
ffmpeg.input(path).vflip().output('output.mp4').run()

boleh difahami secara ringkas sebagai singkatan perkataan Inggeris mendatar (mendatar) dan menegak (menegak).

Tambah tera air

main = ffmpeg.input(path)
logo = ffmpeg.input('logo.png')
ffmpeg.filter([main, logo], 'overlay', 0, 500).output('out.mp4').run()

Arahan ini bermaksud meletakkan imej tera air logo di atas video utama pada koordinat (0,500). Sudut kiri atas video boleh difahami sebagai kedudukan asalan (0,0), dan paksi-x dan paksi-y masing-masing diwakili ke kanan dan ke bawah dari asal.

Sudah tentu, jika anda membuat logo cukup besar, lebih besar daripada video, dan kemudian menukar kedudukan kedua-dua belah, ia akan menjadi video pada logo, yang sebenarnya bersamaan dengan menambah imej Latar Belakang .

ffmpeg.filter([logo, main], 'overlay', 0, 500).output('out.mp4').run()

Tangkapan video

ffmpeg.input(path).trim(start_frame=10,end_frame=20).output('out3.mp4').run()

Perintah ini nampaknya mudah difahami mula-mula dan bingkai_akhir masing-masing mewakili bingkai mula dan akhir.

Penyambungan video

base = ffmpeg.input(path)
ffmpeg.concat(
base.trim(start_frame=10, end_frame=20),
base.trim(start_frame=30, end_frame=40),
base.trim(start_frame=50, end_frame=60)
).output('out3.mp4').run()

Penyambungan video boleh dilakukan menggunakan fungsi concat.

Ringkasan

Hari ini saya berkongsi dengan anda pustaka yang bagus untuk memproses video dalam python, saya harap ia boleh membawa sedikit peningkatan kecekapan pada kerja/kerja sampingan anda.

Atas ialah kandungan terperinci Alat Python: Selesaikan beban kerja sehari dalam masa lima minit, ia sangat lazat. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Artikel ini dikembalikan pada:51cto.com. Jika ada pelanggaran, sila hubungi admin@php.cn Padam