Saya ingin memproses aliran rtsp yang dibuat dari bingkai kamera raspberry dengan bingkai dengan python atau C++.
.py
import cv2
rtsp_url = "rtsp://192.168.55.151:8554/stream.sdp"
video = cv2.VideoCapture(rtsp_url)
while(1):
ret, frame = video.read()
cv2.imshow('VIDEO', frame)
cv2.waitKey(1)
Aliran dibuat dari mesin raspberry menggunakan vlc: raspivid -o - -t 0 -hf -w 640 -h 480 -fps 30 | cvlc stream:///dev/stdin --sout "#rtp{sdp=rtsp://192.168.55.151:8554/stream.sdp}" :demux=h264
Streaming berhasil dibuka dari vlc player dengan: rtsp://192.168.55.151 :8554/stream.sdp
Dari kode python, saya mendapatkan: method SETUP failed: 461 Client error
(kesalahan ffmpeg)
Jika saya menjalankan baris perintah ffmpeg: ffmpeg -rtsp_transport tcp -i rtsp://192.168.55.151:8554/stream.sdp
saya mendapatkan kesalahan yang sama persis: metode SETUP failed: 461 Client error serta Protocol not supported
Jika saya menjalankan baris perintah ffmpeg: ffmpeg -rtsp_transport udp -i rtsp://192.168.55.151:8554/stream.sdp
aliran berhasil memecahkan kode.
Apakah protokol transport ini bug, atau apakah saya melakukan kesalahan? Dapatkah saya menentukan protokol transport dalam kode OpenCV?
Untuk mencegah gangguan jaringan / pemutusan aliran video / dll OpenCV memaksa protokol transport
BTW, Pertanyaan penggunaan harus masuk ke forum Tanya Jawab Pengguna OpenCV: http://answers.opencv.org
Anda mungkin ingin menginstal driver UV4L untuk kamera raspberry, ini akan memungkinkan Anda untuk memiliki url dengan aliran video yang kompatibel dengan opencv dan berfungsi dengan baik. saya sudah tes.
Anda mungkin ingin menginstal driver UV4L untuk kamera raspberry, ini akan memungkinkan Anda untuk memiliki url dengan aliran video yang kompatibel dengan opencv dan berfungsi dengan baik. saya sudah tes.
apakah Anda memiliki tutorial untuk ini?
Komentar yang paling membantu
apakah Anda memiliki tutorial untuk ini?