Opened 12 years ago

Closed 10 years ago

#5259 closed patch (fixed)

YUYV to YUV420P conversion only uses top field

Reported by: jrgreen@… Owned by:
Priority: minor Milestone: unknown
Component: mythtv Version: 0.21
Severity: medium Keywords: easy
Cc: Ticket locked: no

Description

In NuppelVideoRecorder?.cpp, the YUYV to YUV420P conversion is described as following:

Treat lines in batches of two, first use color information, then don't

For interlaced content, this has the effect of ignoring one field of chroma information. When played back, the chroma sometimes looks like it is delayed behind the luma.

Even for progressive content, this isn't a particularly good resampling method.

Attachments (1)

yuyv_yuv420p_interlaced.patch (2.7 KB) - added by jrgreen@… 12 years ago.
patch implementing interlaced chroma subsampling with linear interpolation

Download all attachments as: .zip

Change History (5)

Changed 12 years ago by jrgreen@…

patch implementing interlaced chroma subsampling with linear interpolation

comment:1 Changed 11 years ago by laga

Keywords: easy added
Type: defectpatch

comment:2 Changed 11 years ago by danielk

Milestone: unknown0.22
Owner: changed from Isaac Richards to danielk
Status: newaccepted

comment:3 Changed 11 years ago by danielk

Milestone: 0.22unknown
Owner: danielk deleted
Status: acceptednew

Oops, I thought this was for playback when I assigned this to myself. This is for YUYV->I420 conversion in the NuppelVideoRecorder?.

comment:4 Changed 10 years ago by markk

Resolution: fixed
Status: newclosed

(In [21709]) Use libswscale to convert from YUYV to YUV420P in NuppelVideoRecorder?. Closes #5259. This is not a perfect implementation as the libswscale routines are not aware of the 'interlaced chroma problem' and do not attempt to fix it. It is, however, still an improvement over the existing code.

Note: See TracTickets for help on using tickets.