Hi,
I have written a client streaming application for DMVA2IPNC to get the streaming on PC using RTSP. I am using FFMPEG with OPENCV to get the streaming. The problem is that when I get connected to the camera, I get the following messages a couple of times.
[h264 @ 0x11b5010] decode_slice_header error
[h264 @ 0x11b5010] no frame !
[h264 @ 0x11b5010] non-existing PPS referenced
After these messages, following messages keep repeating (with different values) and I get the corrupted frames from the camera (I can view the video frames from my program. Some of them are correct but many of them get corrupted during streaming).
Last message repeated 1 time
[h264 @ 0x11b5010]corrupted macroblock 21 2 (total_coeff=16)
[h264 @ 0x11b5010] error while decoding MB 21 2
[h264 @ 0x11b5010] concealing 1290 DC 1290 AC 1290 MV errors
I am using the slowest frame rate (i.e. 8 FPS) because the problem gets even worse with maximum frame rate. The simple code that I am using is as follows:
#include "highgui.h"
#include "_highgui.h"
#include "cv.h"
#include "highgui.h"
int main()
{
CvCapture *capture=cvCreateFileCapture("rtsp://143.205.116.246:8557/PSIA/Streaming/channels/2?videoCodecType=H.264");
cvNamedWindow("output",1);
IplImage *image=0;
while (!kbhit())
{
image=cvQueryFrame(capture);
cvShowImage("output",image);
cvWaitKey(10);
}
return 0;
}
The situation is a little better in Linux where I actually compiled FFMPEG with OPENCV and used:
CvCapture *capture=cvCreateFileCapture_FFMPEG("rtsp://143.205.116.246:8557/PSIA/Streaming/channels/2?videoCodecType=H.264");
for connecting to the camera. But in this case also, many of the frames are corrupted (though not as much as in windows where I used pre-compiled static libraries of FFMPEG). The live streaming with VLC works fine both in Linux and Windows. Can anyone please tell what do these errors mean and how can I remove them?
Regards,
Khan