Saya memiliki kamera keamanan IP (192.168.0.8) yang dapat menyiarkan konten rtsp melalui jaringan.
Saya dapat menyimpan konten (RAW) itu tanpa perubahan menggunakan perintah ffmpeg berikutnya dari komputer saya:
ffmpeg -i "rtsp://192.168.0.8/stream=0.sdp" -acodec copy -vcodec copy test-raw.mp4
Saya juga dapat mengubah ukurannya dengan cepat:
ffmpeg -i "rtsp://192.168.0.8/stream=0.sdp" -vf "scale=640:-1" test640.mp4
Tetapi bagaimana cara menyimpan hanya video yang berisi bagian deteksi gerak saja?
Saya mencoba menyelesaikannya menggunakan filter perubahan adegan ffmpeg , tetapi tidak berhasil.
Tujuan saya - untuk memiliki solusi pemantauan video umum, yang mendeteksi ketika seseorang bergerak di dekat kamera dan menyimpannya ke dalam file video. Saya mengerti bahwa mungkin tidak mungkin melakukannya dengan cepat dari aliran, jadi tidak masalah bagi saya untuk menyimpan file besar terlebih dahulu, kemudian memprosesnya dengan perintah ffmpeg lain dan menghasilkan file video baru yang hanya berisi bagian-bagian yang terdeteksi gerakan. Jika Anda bisa memberi saya nasihat apa yang harus saya teliti lebih lanjut, saya akan sangat berterima kasih.
Aliran kamera saya ditransmisikan tanpa suara. Jadi, saya dapat menghasilkan set gambar dari video asli, lalu memilih gambar yang tepat dan kemudian menyimpan video baru dari gambar.
sumber
Jawaban:
Apa yang saya lakukan adalah melakukan persis seperti yang Anda katakan, dan menyimpan file besar dari aliran, kemudian menggunakan
select
filter FFMPEG denganscene
ekspresi, yang membandingkan kesamaan frame berturut-turut:select=gt(scene\,0.003)
misalnya. Semakin tinggi angkanya, semakin banyak perubahan di antara frame diabaikan, dalam pengujian cepat Anda mungkin harus serendah 0,00001-0,00005 tergantung pada jenis rekaman yang Anda hadapi.Gabungkan dengan
setpts
filter , yang mengubah "waktu mulai" dari frame video, dan Anda akan berakhir dengan sesuatu seperti (untuk video 25fps):Pikiran Anda, Anda tidak akan dapat menggunakan
-vcodec copy
saat Anda menggunakan filter video.sumber