2012-03-28 5 views
1

Mjpeg 스트림을 디코딩하기 위해 FFMpeg로 작업하고 있습니다. 최근에 FFMpeg에서 액세스 위반 예외가 발생했습니다. 조사한 결과 네트워크 패킷 손실로 인해 "갭"이있는 프레임이 FFMpeg로 전달됩니다. FFMpeg가 프레임의 메모리에 존재하지 않는 마커 페이로드로 점프하기 때문에 아마 충돌 할 수 있습니다.MJpeg 디코딩시 FFMpeg가 충돌 함

어디서 mjpeg 구조 검사기를 찾을 수 있습니까? FFMpeg가 자체 검증을 수행하도록 구성 할 수있는 방법이 있습니까?

감사합니다.

답변

0

질문에 대한 답변을 찾지 못했습니다. 분명히 ffmpeg는 손상된 프레임을 잘 처리하지 못합니다. ffmpeg 대신 다른 제 3 자 디코더를 사용하기로 결정했습니다. 지금은 적어도 Jpeg의 경우보다 빠르고 강력하게 작동합니다.

1

ffmpeg 대신 여기 Gstreamer를 사용하고 jpegdec 플러그인의 "max-errors"속성을 -1로 설정하려고합니다.

gst-launch -v souphttpsrc location="http://[ip]:[port]/[dir]/xxx.cgi" do-timestamp=true is_live=true ! multipartdemux ! jpegdec max-errors=-1 ! ffmpegcolorspace ! autovideosink.

이렇게하면 손상된 jpeg 프레임을 처리하고 스트림을 계속 진행합니다.