Ubuntu kaynağından derlenen OpenCV 2.2.0 kullanıyorum. Sağladığınız kaynak kodun beklendiği gibi çalıştığını onaylayabilirim. Yani sorun başka bir yerdedir.
Ben mencoder kullanarak sorunu yeniden olamazdı (benim makinede bir sorun nedeniyle biraz edilir yükleyerek) bu yüzden AVI kabında ham videoyu sarmak için ffmpeg
kullandı:
ffmpeg -s cif -i ~/local/sample-video/foreman.yuv -vcodec copy foreman.avi
(ustabaşı. yuv, ağda look around varsa bulabileceğiniz standart bir CIF görüntü dizisidir. Kaynağınızın aracılığıyla ffmpeg
gelen AVI Running
bu verir: beklendiği gibi
Yani
[email protected]:~/Desktop/stackoverflow$ python ocv_video.py foreman.avi
<Capture 0xa71120>
352.0
288.0
<iplimage(nChannels=3 width=352 height=288 widthStep=1056)>
<iplimage(nChannels=3 width=352 height=288 widthStep=1056)>
...
işlerin. Ne kontrol etmelisiniz:
- Standart çıkış/standart hatası ile ilgili herhangi bir hata alıyor musunuz? OpenCV video dosyalarını okumak için
ffmpeg
kütüphanelerini kullanır, bu yüzden bilgilendirici mesajların uyanmasında olun. Burada bir kap olmadan RAW video dosyasını oynatmaya çalışın neler olur? (Sorununuza benzer sesler):
hatası:
[email protected]:~/Desktop/stackoverflow$ python ocv_video.py foreman.yuv
[IMGUTILS @ 0x7fff37c8d040] Picture size 0x0 is invalid
[IMGUTILS @ 0x7fff37c8cf20] Picture size 0x0 is invalid
[rawvideo @ 0x19e65c0] Could not find codec parameters (Video: rawvideo, yuv420p)
[rawvideo @ 0x19e65c0] Estimating duration from bitrate, this may be inaccurate
GStreamer Plugin: Embedded video playback halted; module decodebin20 reported: Your GStreamer installation is missing a plug-in.
<Capture 0x19e3130>
0.0
0.0
- AVI dosyası aslında gerekli bilgileri içerdiğinden emin olun videoyu oynatmak için En azından, bu çerçeve boyutları olmalıdır. RAW videosu, gerçek piksel verilerinin yanı sıra tipik olarak herhangi bir bilgi içermez, bu nedenle çerçeve boyutlarını ve FPS'yi bilmek gereklidir. FPS'yi yanlış tahmin edebilir ve hala görüntülenebilir bir video elde edebilirsiniz, ancak boyutları yanlış alırsanız, video görünmez olur.
- Açmaya çalıştığınız AVI dosyasının gerçekte oynatılabilir olduğundan emin olun.
ffplay file.avi
'u deneyin - bu başarısız olursa, sorun muhtemelen dosyada olabilir. mencoder
yerine transcode için ffmpeg
kullanmayı deneyin.
- Diğer videoları, yukarıdakiyle aynı yöntemi kullanarak oynadığınızdan emin olun. Yapamazsanız,
ffmpeg
yüklemenizin bozuk olması muhtemeldir.
Tam olarak aradığım şey budur.Bu, Ubuntu 10.04'te Opencv'in 2.1 paketlerini kullanarak benim için mükemmel çalıştı. Teşekkürler! – Cerin