Opened 12 years ago

Closed 12 years ago

#4046 closed patch (fixed)

picture control (XV) lost due to svn14555

Reported by: jonese@… Owned by: danielk
Priority: minor Milestone: 0.21
Component: mythtv Version: head
Severity: medium Keywords:
Cc: Ticket locked: no

Description

In the last few days, I've lost XV picture controls on my Nvidia 5500 card.

My initial picture is not correct (it's too dark). Adjusting any picture control (brightness, contrast, color, hue) changes the existing OSD value ("55 %" in my case) to "-1 %". No picture change occurs.

Going back to 14554 fixes the problem. It appears [14555] is the culprit.

Attachments (3)

4046-v1.patch (38.6 KB) - added by danielk 12 years ago.
Attempts to locate surface with XVideo picture controls and verifies that they exist before attempting to modify them. (Has not been tested with working XVideo picture controls yet!)
brightcont.log (30.4 KB) - added by eric.bosch@… 12 years ago.
Log file on playback of recorded program adjusting brightness/contrast
4046-v2.patch (38.7 KB) - added by danielk 12 years ago.
Update patch, addresses hue adjustment problem from v1 of patch

Download all attachments as: .zip

Change History (16)

comment:1 Changed 12 years ago by warpme@…

I also problem with xv picture control (brightness/contrast/etc) MoBO is Nvidia6150 based ASUS M2NPV-VM. Nv drivers are 1.0-9746. Myth is minimyth 0.20.2-31b7 based on SVN14557. Any usage of OSD Picture Settings gives -1% Here is output form xvinfo.

X-Video Extension version 2.2 screen #0 Adaptor #0: "NV17 Video Texture" number of ports: 32 port base: 275 operations supported: PutImage? supported visuals: depth 24, visualID 0x21 depth 24, visualID 0x23 depth 24, visualID 0x24 depth 24, visualID 0x25 depth 24, visualID 0x26 depth 24, visualID 0x27 depth 24, visualID 0x28 depth 24, visualID 0x29 depth 24, visualID 0x2a depth 24, visualID 0x2b depth 24, visualID 0x2c depth 24, visualID 0x2d depth 24, visualID 0x2e depth 24, visualID 0x2f depth 24, visualID 0x30 depth 24, visualID 0x31 depth 24, visualID 0x32 depth 24, visualID 0x33 depth 24, visualID 0x34 depth 24, visualID 0x35 depth 24, visualID 0x36 depth 24, visualID 0x37 depth 24, visualID 0x38 depth 24, visualID 0x39 depth 24, visualID 0x3a depth 24, visualID 0x3b depth 24, visualID 0x3c depth 24, visualID 0x3d depth 24, visualID 0x3e depth 24, visualID 0x3f depth 24, visualID 0x40 depth 24, visualID 0x41 depth 24, visualID 0x42 depth 24, visualID 0x43 depth 24, visualID 0x44 depth 24, visualID 0x45 depth 24, visualID 0x46 depth 24, visualID 0x47 depth 24, visualID 0x48 depth 24, visualID 0x49 depth 24, visualID 0x22 depth 24, visualID 0x4a depth 24, visualID 0x4b depth 24, visualID 0x4c depth 24, visualID 0x4d depth 24, visualID 0x4e depth 24, visualID 0x4f depth 24, visualID 0x50 depth 24, visualID 0x51 depth 24, visualID 0x52 depth 24, visualID 0x53 depth 24, visualID 0x54 depth 24, visualID 0x55 depth 24, visualID 0x56 depth 24, visualID 0x57 depth 24, visualID 0x58 depth 24, visualID 0x59 depth 24, visualID 0x5a depth 24, visualID 0x5b depth 24, visualID 0x5c depth 24, visualID 0x5d depth 24, visualID 0x5e depth 24, visualID 0x5f depth 24, visualID 0x60 depth 24, visualID 0x61 depth 24, visualID 0x62 depth 24, visualID 0x63 depth 24, visualID 0x64 depth 24, visualID 0x65 depth 24, visualID 0x66 depth 24, visualID 0x67 depth 24, visualID 0x68 depth 24, visualID 0x69 depth 24, visualID 0x6a depth 24, visualID 0x6b depth 24, visualID 0x6c depth 24, visualID 0x6d depth 24, visualID 0x6e depth 24, visualID 0x6f depth 24, visualID 0x70 number of attributes: 3 "XV_SET_DEFAULTS" (range 0 to 0) client settable attribute "XV_ITURBT_709" (range 0 to 1) client settable attribute client gettable attribute (current value is 0) "XV_SYNC_TO_VBLANK" (range 0 to 1) client settable attribute client gettable attribute (current value is 1) maximum XvImage? size: 2046 x 2046 Number of image formats: 4 id: 0x32595559 (YUY2) guid: 59555932-0000-0010-8000-00aa00389b71 bits per pixel: 16 number of planes: 1 type: YUV (packed) id: 0x32315659 (YV12) guid: 59563132-0000-0010-8000-00aa00389b71 bits per pixel: 12 number of planes: 3 type: YUV (planar) id: 0x59565955 (UYVY) guid: 55595659-0000-0010-8000-00aa00389b71 bits per pixel: 16 number of planes: 1 type: YUV (packed) id: 0x30323449 (I420) guid: 49343230-0000-0010-8000-00aa00389b71 bits per pixel: 12 number of planes: 3 type: YUV (planar) Adaptor #1: "NV05 Video Blitter" number of ports: 32 port base: 307 operations supported: PutImage? supported visuals: depth 24, visualID 0x21 depth 24, visualID 0x23 depth 24, visualID 0x24 depth 24, visualID 0x25 depth 24, visualID 0x26 depth 24, visualID 0x27 depth 24, visualID 0x28 depth 24, visualID 0x29 depth 24, visualID 0x2a depth 24, visualID 0x2b depth 24, visualID 0x2c depth 24, visualID 0x2d depth 24, visualID 0x2e depth 24, visualID 0x2f depth 24, visualID 0x30 depth 24, visualID 0x31 depth 24, visualID 0x32 depth 24, visualID 0x33 depth 24, visualID 0x34 depth 24, visualID 0x35 depth 24, visualID 0x36 depth 24, visualID 0x37 depth 24, visualID 0x38 depth 24, visualID 0x39 depth 24, visualID 0x3a depth 24, visualID 0x3b depth 24, visualID 0x3c depth 24, visualID 0x3d depth 24, visualID 0x3e depth 24, visualID 0x3f depth 24, visualID 0x40 depth 24, visualID 0x41 depth 24, visualID 0x42 depth 24, visualID 0x43 depth 24, visualID 0x44 depth 24, visualID 0x45 depth 24, visualID 0x46 depth 24, visualID 0x47 depth 24, visualID 0x48 depth 24, visualID 0x49 depth 24, visualID 0x22 depth 24, visualID 0x4a depth 24, visualID 0x4b depth 24, visualID 0x4c depth 24, visualID 0x4d depth 24, visualID 0x4e depth 24, visualID 0x4f depth 24, visualID 0x50 depth 24, visualID 0x51 depth 24, visualID 0x52 depth 24, visualID 0x53 depth 24, visualID 0x54 depth 24, visualID 0x55 depth 24, visualID 0x56 depth 24, visualID 0x57 depth 24, visualID 0x58 depth 24, visualID 0x59 depth 24, visualID 0x5a depth 24, visualID 0x5b depth 24, visualID 0x5c depth 24, visualID 0x5d depth 24, visualID 0x5e depth 24, visualID 0x5f depth 24, visualID 0x60 depth 24, visualID 0x61 depth 24, visualID 0x62 depth 24, visualID 0x63 depth 24, visualID 0x64 depth 24, visualID 0x65 depth 24, visualID 0x66 depth 24, visualID 0x67 depth 24, visualID 0x68 depth 24, visualID 0x69 depth 24, visualID 0x6a depth 24, visualID 0x6b depth 24, visualID 0x6c depth 24, visualID 0x6d depth 24, visualID 0x6e depth 24, visualID 0x6f depth 24, visualID 0x70 number of attributes: 2 "XV_SET_DEFAULTS" (range 0 to 0) client settable attribute "XV_SYNC_TO_VBLANK" (range 0 to 1) client settable attribute client gettable attribute (current value is 0) maximum XvImage? size: 2046 x 2046 Number of image formats: 5 id: 0x32595559 (YUY2) guid: 59555932-0000-0010-8000-00aa00389b71 bits per pixel: 16 number of planes: 1 type: YUV (packed) id: 0x32315659 (YV12) guid: 59563132-0000-0010-8000-00aa00389b71 bits per pixel: 12 number of planes: 3 type: YUV (planar) id: 0x59565955 (UYVY) guid: 55595659-0000-0010-8000-00aa00389b71 bits per pixel: 16 number of planes: 1 type: YUV (packed) id: 0x30323449 (I420) guid: 49343230-0000-0010-8000-00aa00389b71 bits per pixel: 12 number of planes: 3 type: YUV (planar) id: 0x3 guid: 03000000-0000-0010-8000-00aa00389b71 bits per pixel: 32 number of planes: 1 type: RGB (packed) depth: 24 red, green, blue masks: 0xff0000, 0xff00, 0xff

comment:2 Changed 12 years ago by maverik044 <level42@…>

XV picture controls are not supported on the 6xxx Nvidia parts. You can see this from the xvinfo output. Only 4000 and 5000 are supported. This not a limitation of mythtv, but that the Nvidia driver does not provide support for XV picture controls (may also be hardware related) for 6000 and 7000 chips.

comment:3 Changed 12 years ago by eric.bosch@…

I am running build 14667. If I try to adjust picture controls, the initial setting of 50 for brightness changes to -1, and refuses to change from that setting.

XV Picture controls do appear to be supported on my card, NVidia 8000 series, and XV controls do not work on mine either. See output of xvinfo X-Video Extension version 2.2 screen #0

Adaptor #0: "NV17 Video Texture"

number of ports: 32 port base: 280 operations supported: PutImage? supported visuals:

depth 24, visualID 0x21 depth 24, visualID 0x24 depth 24, visualID 0x25 depth 24, visualID 0x26 depth 24, visualID 0x27 depth 24, visualID 0x28 depth 24, visualID 0x29 depth 24, visualID 0x2a depth 24, visualID 0x2b depth 24, visualID 0x2c depth 24, visualID 0x2d depth 24, visualID 0x2e depth 24, visualID 0x2f depth 24, visualID 0x30 depth 24, visualID 0x31 depth 24, visualID 0x32 depth 24, visualID 0x33 depth 24, visualID 0x34 depth 24, visualID 0x35 depth 24, visualID 0x36 depth 24, visualID 0x37 depth 24, visualID 0x38 depth 24, visualID 0x39 depth 24, visualID 0x3a depth 24, visualID 0x3b depth 24, visualID 0x3c depth 24, visualID 0x3d depth 24, visualID 0x3e depth 24, visualID 0x22 depth 24, visualID 0x3f depth 24, visualID 0x40 depth 24, visualID 0x41 depth 24, visualID 0x42 depth 24, visualID 0x43 depth 24, visualID 0x44 depth 24, visualID 0x45 depth 24, visualID 0x46 depth 24, visualID 0x47 depth 24, visualID 0x48 depth 24, visualID 0x49 depth 24, visualID 0x4a depth 24, visualID 0x4b depth 24, visualID 0x4c depth 24, visualID 0x4d depth 24, visualID 0x4e depth 24, visualID 0x4f depth 24, visualID 0x50 depth 24, visualID 0x51 depth 24, visualID 0x52 depth 24, visualID 0x53 depth 24, visualID 0x54 depth 24, visualID 0x55 depth 24, visualID 0x56 depth 24, visualID 0x57 depth 24, visualID 0x58 depth 24, visualID 0x59

number of attributes: 5

"XV_SET_DEFAULTS" (range 0 to 0)

client settable attribute

"XV_ITURBT_709" (range 0 to 1)

client settable attribute client gettable attribute (current value is 0)

"XV_SYNC_TO_VBLANK" (range 0 to 1)

client settable attribute client gettable attribute (current value is 1)

"XV_BRIGHTNESS" (range -512 to 511)

client settable attribute client gettable attribute (current value is 0)

"XV_CONTRAST" (range 0 to 8191)

client settable attribute client gettable attribute (current value is 4096)

maximum XvImage? size: 2046 x 2046 Number of image formats: 4

id: 0x32595559 (YUY2)

guid: 59555932-0000-0010-8000-00aa00389b71 bits per pixel: 16 number of planes: 1 type: YUV (packed)

id: 0x32315659 (YV12)

guid: 59563132-0000-0010-8000-00aa00389b71 bits per pixel: 12 number of planes: 3 type: YUV (planar)

id: 0x59565955 (UYVY)

guid: 55595659-0000-0010-8000-00aa00389b71 bits per pixel: 16 number of planes: 1 type: YUV (packed)

id: 0x30323449 (I420)

guid: 49343230-0000-0010-8000-00aa00389b71 bits per pixel: 12 number of planes: 3 type: YUV (planar)

screen #1

Adaptor #0: "NV17 Video Texture"

number of ports: 32 port base: 560 operations supported: PutImage? supported visuals:

depth 24, visualID 0x139 depth 24, visualID 0x13c depth 24, visualID 0x13d depth 24, visualID 0x13e depth 24, visualID 0x13f depth 24, visualID 0x140 depth 24, visualID 0x141 depth 24, visualID 0x142 depth 24, visualID 0x143 depth 24, visualID 0x144 depth 24, visualID 0x145 depth 24, visualID 0x146 depth 24, visualID 0x147 depth 24, visualID 0x148 depth 24, visualID 0x149 depth 24, visualID 0x14a depth 24, visualID 0x14b depth 24, visualID 0x14c depth 24, visualID 0x14d depth 24, visualID 0x14e depth 24, visualID 0x14f depth 24, visualID 0x150 depth 24, visualID 0x151 depth 24, visualID 0x152 depth 24, visualID 0x153 depth 24, visualID 0x154 depth 24, visualID 0x155 depth 24, visualID 0x156 depth 24, visualID 0x13a depth 24, visualID 0x157 depth 24, visualID 0x158 depth 24, visualID 0x159 depth 24, visualID 0x15a depth 24, visualID 0x15b depth 24, visualID 0x15c depth 24, visualID 0x15d depth 24, visualID 0x15e depth 24, visualID 0x15f depth 24, visualID 0x160 depth 24, visualID 0x161 depth 24, visualID 0x162 depth 24, visualID 0x163 depth 24, visualID 0x164 depth 24, visualID 0x165 depth 24, visualID 0x166 depth 24, visualID 0x167 depth 24, visualID 0x168 depth 24, visualID 0x169 depth 24, visualID 0x16a depth 24, visualID 0x16b depth 24, visualID 0x16c depth 24, visualID 0x16d depth 24, visualID 0x16e depth 24, visualID 0x16f depth 24, visualID 0x170 depth 24, visualID 0x171

number of attributes: 5

"XV_SET_DEFAULTS" (range 0 to 0)

client settable attribute

"XV_ITURBT_709" (range 0 to 1)

client settable attribute client gettable attribute (current value is 0)

"XV_SYNC_TO_VBLANK" (range 0 to 1)

client settable attribute client gettable attribute (current value is 1)

"XV_BRIGHTNESS" (range -512 to 511)

client settable attribute client gettable attribute (current value is 0)

"XV_CONTRAST" (range 0 to 8191)

client settable attribute client gettable attribute (current value is 4096)

maximum XvImage? size: 2046 x 2046 Number of image formats: 4

id: 0x32595559 (YUY2)

guid: 59555932-0000-0010-8000-00aa00389b71 bits per pixel: 16 number of planes: 1 type: YUV (packed)

id: 0x32315659 (YV12)

guid: 59563132-0000-0010-8000-00aa00389b71 bits per pixel: 12 number of planes: 3 type: YUV (planar)

id: 0x59565955 (UYVY)

guid: 55595659-0000-0010-8000-00aa00389b71 bits per pixel: 16 number of planes: 1 type: YUV (packed)

id: 0x30323449 (I420)

guid: 49343230-0000-0010-8000-00aa00389b71 bits per pixel: 12 number of planes: 3 type: YUV (planar)

comment:4 Changed 12 years ago by danielk

Owner: changed from Isaac Richards to danielk
Type: defecttask

This isn't so much a bug as a feature request. MythTV doesn't do anything to explicitly pick an XVideo surface with picture control support. We do try to find a chromakeying surface if possible, and this used to be a good proxy on nVidia cards, but the newer 8xxx series cards support picture controls on surfaced that do not support chromakeying. But I've been planning to add support for this anyway so I'm not closing the ticket as invalid but instead changing it to a task.

comment:5 Changed 12 years ago by jonese@…

Feature request?

Please remember the original poster (myself) is using a 5x00 card (and not the newer 6,7,8 cards). Picture control worked perfectly fine before this SVN and for several years before that.

I am locked to svn14554 until this situation is addressed.

Changed 12 years ago by danielk

Attachment: 4046-v1.patch added

Attempts to locate surface with XVideo picture controls and verifies that they exist before attempting to modify them. (Has not been tested with working XVideo picture controls yet!)

comment:6 Changed 12 years ago by danielk

Jones, it did work for you before (I have a 5x00 card too). But for [14555] to be able to brake things, it was just a fluke that it was working. MythTV isn't making any effort to find a surface with XVideo picture attribute support, it assumes that if you check the checkbox, all surfaces would have all four common picture attributes supported. But these days this isn't the case, 4xxx and 5xxx cards only have support on certain ports with the newer drivers, 6xxx and 7xxx cards have no XVideo picture support and 8xxx cards only support two of the common attributes. That is just with one video display method on one vendor's cards. The OpenGL video renderer supports brightness, contrast, and saturation, but not hue, and only when it can load the appropriate filter.

Anyway, I've attached a patch which should fix things. I'm using a 6200 in my dev machine right now so I can't test this patch at the moment.

comment:7 Changed 12 years ago by skamithi

tested patch on intel video card (i945M). the adaptor with XV_COLORKEY is selected properly if chromakey is enabled. XV_CONTRAST is present, but cannot be set (returns -1) on the textured video adaptor. It would be good to test if attribute can be set to determine if it should be visible in OSD.

comment:8 Changed 12 years ago by eric.bosch@…

I just tested the patch also on my NVidia 8xxx card, brightness control works, but the contrast fails, with OSD going from 50 to -1, and failing to change after that.

comment:9 Changed 12 years ago by danielk

Milestone: unknown0.21
Type: taskpatch

Eric, can you attach the output of "mythfrontend -v playback" when you play a recording and attempt to adjust the brightness and contrast?

I'll test with a 4xxx series card later today, but I don't have any 8xxx cards to test with so the debug output might be helpful...

Changed 12 years ago by eric.bosch@…

Attachment: brightcont.log added

Log file on playback of recorded program adjusting brightness/contrast

comment:10 Changed 12 years ago by eric.bosch@…

Here you go, log as requested.-

Changed 12 years ago by danielk

Attachment: 4046-v2.patch added

Update patch, addresses hue adjustment problem from v1 of patch

comment:11 Changed 12 years ago by danielk

eric, I found a bug in the hue adjustment. Can you try the attached patch?

This patch fixed the hue adjustment problem I saw with a GeForce? 4 MX I tested it with earlier today.

comment:12 Changed 12 years ago by eric.bosch@…

Daniel, looks good. Both brightness/contrast controls seem to function normally now. Thanks a lot!

comment:13 Changed 12 years ago by danielk

Resolution: fixed
Status: newclosed

(In [14689]) Fixes #4046. Makes MythTV attempt to find an XVideo surface with picture controls when only some XVideo surfaces support them and only lists available picture controls in the playback picture control menu.

Note: See TracTickets for help on using tickets.