coda: not generating EOS event

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hi,

I am running Gstreamer 1.4.4 with on a imx6q-sabresd board and I am
able to decode a video through the coda driver.

The pipeline I use is:
gst-launch-1.0 filesrc
location=/home/H264_test1_Talkinghead_mp4_480x360.mp4 ! qtdemux !
h264parse ! v4l2video1dec ! videoconvert ! fbdevsink

It plays the video fine, but it does not handle the end of stream
correctly: when the video reaches its end, then I get a flood of the
following messages:
[  144.049830] DEC_PIC_SUCCESS = 524289
[  144.064928] DEC_PIC_SUCCESS = 524289
[  144.085516] DEC_PIC_SUCCESS = 524289
[  144.108056] DEC_PIC_SUCCESS = 524289
[  144.130351] DEC_PIC_SUCCESS = 524289
[  144.152852] DEC_PIC_SUCCESS = 524289
[  144.176114] DEC_PIC_SUCCESS = 524289
[  144.198165] DEC_PIC_SUCCESS = 524289
[  144.220579] DEC_PIC_SUCCESS = 524289
[  144.242607] DEC_PIC_SUCCESS = 524289

These same DEC_PIC_SUCCESS messages appear if I use fakesink:
gst-launch-1.0 filesrc
location=/home/H264_test1_Talkinghead_mp4_480x360.mp4 ! qtdemux !
h264parse ! v4l2video1dec ! fakesink

In coda_dqbuf() we have:

    /* If this is the last capture buffer, emit an end-of-stream event */
    if (buf->type == V4L2_BUF_TYPE_VIDEO_CAPTURE &&
        coda_buf_is_end_of_stream(ctx, buf)) {
        const struct v4l2_event eos_event = {
            .type = V4L2_EVENT_EOS
        };

        v4l2_event_queue_fh(&ctx->fh, &eos_event);
    }

Seems we should also check for V4L2_BUF_TYPE_VIDEO_OUPUT. I tried it,
but still not able to fix the end of stream problem.

Any ideas?

Thanks
--
To unsubscribe from this list: send the line "unsubscribe linux-media" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html




[Index of Archives]     [Linux Input]     [Video for Linux]     [Gstreamer Embedded]     [Mplayer Users]     [Linux USB Devel]     [Linux Audio Users]     [Linux Kernel]     [Linux SCSI]     [Yosemite Backpacking]
  Powered by Linux