Hans Verkuil wrote:
> On Saturday 20 October 2007 17:02:16 Duncan Webb wrote:
>> Hans Verkuil wrote:
>>> On Saturday 20 October 2007 11:31:27 Duncan Webb wrote:
>>>> Hans Verkuil wrote:
>>>>> The old IVTV_IOC_S_GOP_END has been removed. Instead use the new
>>>>> VIDIOC_ENCODER_CMD and VIDIOC_TRY_ENCODER_CMD ioctls if you want
>>>>> this feature. See the v4l2 spec for more details.
>>>> Still having a little bit of a problem with VIDIOC_ENCODER_CMD,
>>>> does this need to be called just before the stream off command,
>>>> replace it (as I think is correct) or as with IVTV_IOC_S_GOP_END
>>>> before reading begins?
>>> It replaces STREAMOFF. STREAMOFF was always a half-baked
>>> implementation at best and was replaced with this command. The
>>> STREAMON/OFF command are really meant for the V4L2 stream I/O API.
>>> Since ivtv doesn't support stream I/O the driver's VIDIOC_STREAMOFF
>>> support was removed.
>> Sorry to bug you Hans,
>>
>> I can't seem to get VIDIOC_ENCODER_CMD to work, I written a little
>> test program (attached)
>>
>> I would expect that after having sent the VIDIOC_ENCODER_CMD to stop,
>> that a read would return 0 bytes, but it seems that the buffer is
>> always full.

> Hmm, I suddenly remembered that I fixed something related to GOP_END:
> 
> changeset:   6096:13e00f878706
> user:        Hans Verkuil <[EMAIL PROTECTED]>
> date:        Thu Aug 23 22:51:07 2007 +0200
> files:       linux/drivers/media/video/ivtv/ivtv-fileops.c 
> linux/drivers/media/video/ivtv/ivtv-streams.c
> description:
> ivtv: fix V4L2_ENC_CMD_STOP_AT_GOP_END support
> 
> From: Hans Verkuil <[EMAIL PROTECTED]>
> 
> Support for V4L2_ENC_CMD_STOP_AT_GOP_END was broken. While the driver
> correctly waited for the card to capture until the GOP was complete,
> afterwards the driver buffers were just flushed instead of waiting
> for the application to read all the pending data.
> 
> Signed-off-by: Hans Verkuil <[EMAIL PROTECTED]>
> 
> The fix is in the v4l-dvb repository and will appear in the 2.6.24 
> kernel.
> 
> Testing you app with the v4l-dvb repository shows that it works fine.

Just installed the v4l-dvb from its repository, I'm not sure if this is
a valid thing to do with a 2.6.22.5 kernel. But it compiled and
installed cleanly.

My little app failed with an invalid argument, I'm wonder if there is
some module that I should have removed.

ioctl V4L2_ENC_CMD_STOP failed: Invalid argument

Sorry to be a pain, I would like this to work because memcoder and
matroska like complete GOPs otherwise the audio gets out of sync, but
this could be an encoding option problem.

Regards,
Duncan


_______________________________________________
ivtv-devel mailing list
[email protected]
http://ivtvdriver.org/mailman/listinfo/ivtv-devel

Reply via email to