From 3beb10eeff4e9542e09fdcbe6a99e9f735a1b45e Mon Sep 17 00:00:00 2001 From: mswitch Date: Sat, 19 Jan 2002 21:55:30 +0000 Subject: Only use hardware sync and prebuffering with mpegs! git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@4268 b3059339-0415-0410-9bf9-f77b7e298cf2 --- libvo/vo_dxr3.c | 24 +++++++++++------------- 1 file changed, 11 insertions(+), 13 deletions(-) (limited to 'libvo') diff --git a/libvo/vo_dxr3.c b/libvo/vo_dxr3.c index 96f21b5d9c..979f7694f1 100644 --- a/libvo/vo_dxr3.c +++ b/libvo/vo_dxr3.c @@ -89,10 +89,6 @@ static vo_info_t vo_info = void write_dxr3(rte_context *context, void *data, size_t size, void *user_data) { size_t data_left = size; - /* Set the timestamp of the next video packet */ - if (ioctl(fd_video, EM8300_IOCTL_VIDEO_SETPTS, &pts) < 0) { - printf("VO: [dxr3] Unable to set pts\n"); - } /* Force data into the buffer */ while (data_left) { @@ -452,9 +448,11 @@ static void flip_page(void) ioval = EM8300_SUBDEVICE_VIDEO; ioctl(fd_control, EM8300_IOCTL_FLUSH, &ioval); pts += 90000.0 / vo_fps; - ioctl(fd_control, EM8300_IOCTL_SCR_SET, &pts); - if (ioctl(fd_video, EM8300_IOCTL_VIDEO_SETPTS, &pts) < 0) { - printf("VO: [dxr3] Unable to set pts\n"); + if (img_format == IMGFMT_MPEGPES) { + ioctl(fd_control, EM8300_IOCTL_SCR_SET, &pts); + if (ioctl(fd_video, EM8300_IOCTL_VIDEO_SETPTS, &pts) < 0) { + printf("VO: [dxr3] Unable to set pts\n"); + } } } prev_pts = pts; @@ -532,14 +530,14 @@ static uint32_t query_format(uint32_t format) flag = 0x2 | 0x8 | 0x100; #ifdef USE_MP1E } else if (format == IMGFMT_YV12) { - /* Conversion needed | OSD Supported | Hardware handles syncing */ - flag = 0x1 | 0x4 | 0x100; + /* Conversion needed | OSD Supported */ + flag = 0x1 | 0x4; } else if (format == IMGFMT_YUY2) { - /* Conversion needed | OSD Supported | Hardware handles syncing */ - flag = 0x1 | 0x4 | 0x100; + /* Conversion needed | OSD Supported */ + flag = 0x1 | 0x4; } else if (format == IMGFMT_BGR24) { - /* Conversion needed | OSD Supported | Hardware handles syncing */ - flag = 0x1 | 0x4 | 0x100; + /* Conversion needed | OSD Supported */ + flag = 0x1 | 0x4; } else { printf("VO: [dxr3] Format unsupported, mail dholm@iname.com\n"); #else -- cgit v1.2.3