@ -125,7 +125,6 @@ struct video_data {
struct buff_data {
struct buff_data {
struct video_data * s ;
struct video_data * s ;
int index ;
int index ;
int fd ;
} ;
} ;
struct fmt_map {
struct fmt_map {
@ -483,17 +482,16 @@ static void dummy_release_buffer(AVPacket *pkt)
static void mmap_release_buffer ( void * opaque , uint8_t * data )
static void mmap_release_buffer ( void * opaque , uint8_t * data )
{
{
struct v4l2_buffer buf = { 0 } ;
struct v4l2_buffer buf = { 0 } ;
int res , fd ;
int res ;
struct buff_data * buf_descriptor = opaque ;
struct buff_data * buf_descriptor = opaque ;
struct video_data * s = buf_descriptor - > s ;
struct video_data * s = buf_descriptor - > s ;
buf . type = V4L2_BUF_TYPE_VIDEO_CAPTURE ;
buf . type = V4L2_BUF_TYPE_VIDEO_CAPTURE ;
buf . memory = V4L2_MEMORY_MMAP ;
buf . memory = V4L2_MEMORY_MMAP ;
buf . index = buf_descriptor - > index ;
buf . index = buf_descriptor - > index ;
fd = buf_descriptor - > fd ;
av_free ( buf_descriptor ) ;
av_free ( buf_descriptor ) ;
if ( v4l2_ioctl ( fd , VIDIOC_QBUF , & buf ) < 0 ) {
if ( v4l2_ioctl ( s - > fd , VIDIOC_QBUF , & buf ) < 0 ) {
res = AVERROR ( errno ) ;
res = AVERROR ( errno ) ;
av_log ( NULL , AV_LOG_ERROR , " ioctl(VIDIOC_QBUF): %s \n " ,
av_log ( NULL , AV_LOG_ERROR , " ioctl(VIDIOC_QBUF): %s \n " ,
av_err2str ( res ) ) ;
av_err2str ( res ) ) ;
@ -643,7 +641,6 @@ static int mmap_read_frame(AVFormatContext *ctx, AVPacket *pkt)
return AVERROR ( ENOMEM ) ;
return AVERROR ( ENOMEM ) ;
}
}
buf_descriptor - > fd = s - > fd ;
buf_descriptor - > index = buf . index ;
buf_descriptor - > index = buf . index ;
buf_descriptor - > s = s ;
buf_descriptor - > s = s ;