I am using Linux 3.0.35 FSL sdk 4.0.0 on iMX6-solo. My pipeline is an audio and video capture and mux to a MKV container and then write to filesink.
When starting the pipeline, both gst-launch or my program, will fail (fails intermittently 50/50) with timeout on this ioctl call to mxc_v4l2_capture
-- ioctl (v4l_src->fd_v4l, VIDIOC_QUERYBUF, buf)
in function mfw_gst_v4lsrc_start_capturing ()
console also log a timeout error.
Once it started the pipeline works well, no issue.
I wonder what might be the problem with the mxc_v4l2_capture device driver? Is this timing related?
This issue seems to be fixed in the latest yocto master tree.
I merged the code in, and after running a few days, I have not seen any failure at startup yet. I looked at the code, it seems that a mutex lock is put in the Frame Buffer acquisition. That make sense, implying that the behavior I saweaking the timing was a deadlock situation.
Just to add more info on this post, last week I posted this:
but there was no reply. But now I have traced down to mxc_v4l2_capture driver. Some background on this issue.