mirror of
https://github.com/mpv-player/mpv
synced 2025-01-31 12:11:52 +00:00
Try to get frame rate information through VIDIOC_G_PARM if
capture device driver (such as uvcvideo USB video driver) does not provide VIDIOC_G_STD ioctl. git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@27171 b3059339-0415-0410-9bf9-f77b7e298cf2
This commit is contained in:
parent
fddbd84992
commit
6077530ac2
@ -448,6 +448,18 @@ static int getstd(priv_t *priv)
|
||||
int i=0;
|
||||
|
||||
if (ioctl(priv->video_fd, VIDIOC_G_STD, &id) < 0) {
|
||||
struct v4l2_streamparm parm;
|
||||
|
||||
parm.type=V4L2_BUF_TYPE_VIDEO_CAPTURE;
|
||||
if(ioctl(priv->video_fd, VIDIOC_G_PARM, &parm) >= 0) {
|
||||
mp_msg(MSGT_TV, MSGL_WARN, "%s: your device driver does not support VIDIOC_G_STD ioctl,"
|
||||
" VIDIOC_G_PARM was used instead.\n", info.short_name);
|
||||
priv->standard.index=0;
|
||||
priv->standard.id=0;
|
||||
priv->standard.frameperiod=parm.parm.capture.timeperframe;
|
||||
return 0;
|
||||
}
|
||||
|
||||
mp_msg(MSGT_TV, MSGL_ERR, "%s: ioctl get standard failed: %s\n",
|
||||
info.short_name, strerror(errno));
|
||||
return -1;
|
||||
|
Loading…
Reference in New Issue
Block a user