Deteksi bilah warna ffmpeg


0

Apakah ada cara untuk menggunakan ffmpeg (atau bahkan perintah linux) untuk mendeteksi apakah video yang sedang diproses memiliki konten aktual atau hanya bilah warna?

Ini adalah skenario saya: Saya memiliki sistem yang menggunakan BMD untuk melakukan streaming RTMP. Itu berfungsi dengan baik, satu-satunya masalah adalah BMD membutuhkan konfigurasi mode khusus untuk menangkap input, jika tidak, ia hanya akan meludahkan video dengan bilah warna daripada input yang sebenarnya.

Jawaban:


2

Apa yang bisa Anda lakukan adalah menangkap bingkai bilah warna BMD ke gambar, lalu lakukan perpaduan mode perbedaan dengan aliran yang kemudian dilewatkan melalui detektor bingkai hitam.

Di mana aliran input dan bilah warna cocok dengan gambar, ffmpeg akan menampilkan pembacaan seperti ini:

[Parsed_blackframe_1 @ 00000000034c67e0] frame:816 pblack:99 pts:417792 t:27.200000 type:P last_keyframe:640

Langkah 1 Hasilkan gambar bar warna

ffmpeg -i rtmp://url -vframes 1 colorbars.jpg

Langkah 2 Menganalisis aliran input

ffmpeg -i rtmp://url -loop 1 colorbars.jpg -filter_complex \
      "[0:v][1:v]blend=difference:shortest=1,blackframe" \
      -f null -

Terima kasih atas respon yang cepat. Saya akan mengujinya dan memberi tahu Anda
AbrahamSustaita
Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.