GLSL bug: odd-size textures are resized at loading
Reported by
fabrice....@gmail.com,
Oct 31 2017
|
|||||||||||||||||
Issue descriptionUserAgent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/62.0.3202.75 Safari/537.36 Example URL: https://www.shadertoy.com/view/4lByzK Steps to reproduce the problem: - load a texture with odd width. - read back the texture size. What is the expected behavior? loading a texture must not change it's size, and especially, must not resample it ! (it corrupts information, e.g. checker pattern). Internal padding might occurs so as to ensure memory alignment, but it must be transparent to the user. What went wrong? video is 509 x 396 (red horizontal bar). Once loaded, on various configurations texture(size) then give 512x396 (displayed as "lod0" in my link, + white bar). I display the right texture border to show this is not padding but really resampling. *Buggy configurations: linux: chrome 62.0.3202.75, chromium 62.0.3202.62, firefox windows: chrome 62.0.3202.75 is ok or not depending on the machine ! + firefox. *Working configuration: linux: chrome 58.0.3029.81 Does it occur on multiple sites: N/A Is it a problem with a plugin? No Did this work before? N/A Does this work in other browsers? No Firefox. for chrome, it depends on the version and OS. Chrome version: 62.0.3202.75 Channel: stable OS Version: various OS, brwosers, versions Flash Version: Shockwave Flash 27.0 r0 somebody please set for me the flags Blink>WebGL Internals>GPU>ANGLE ( apparently I can't do it myself... or I don't see where ).
,
Oct 31 2017
,
Oct 31 2017
fabrice.neyret@gmail.com, when you say it's ok or not depending on the machine, do you have access to two machines where it is working on one but not the other? Can you save the contents of about:gpu (save as webpage, complete) in Chrome on the working and not working machine and attach them to this issue?
,
Oct 31 2017
During encoding videos are typically rounded up to the nearest macroblock size. Bugs have been reported against Chrome's handling of video-to-WebGL texture uploads: see Issue 672895 and follow-on bugs. However it's believed that the correct cropping is occurring at this point. Could you please simplify the test case? There's a long discussion thread on the ShaderToy sample and I don't have time to sort through all of it. We receive a lot of reports daily. Please provide something similar to this test case which was written for that bug: https://github.com/KhronosGroup/WebGL/pull/2202 Thanks.
,
Nov 21 2017
@jmad... : on my lab's chrome 58.0.3029.81 linux, size is UNchanged on my lab's chromium 62.0.3202.62 linux, size IS changed on my home chrome 62.0.3202.94 linux, size IS changed on IQ's chrome 62.0.3202.94 windows, size is UNchanged on my lab's chrome 62.0.3202.94 windows, size is UNchanged (today, but seems to have upgraded right before, maybe from 61. argh, I should have registered before, sorry) on Firefox, size IS changed I do now have some of the corresponding about:gpu files, but I'm not sure whether it is still useful since I don't confirmed having 2 identical systems giving different behavior.
,
Nov 21 2017
Thank you for providing more feedback. Adding requester "kbr@chromium.org" to the cc list and removing "Needs-Feedback" label. For more details visit https://www.chromium.org/issue-tracking/autotriage - Your friendly Sheriffbot
,
Nov 21 2017
We still need a smaller test case in order to begin investigation of this bug.
,
Nov 22 2017
smaller test case: how simpler would you suggest it could be in shadertoy ? ( I can't do it outside of shadertoy, sorry). I could drop the font display machinery (and thus don't display any numbers) to just show the red (video size) vs white bar (texture size), for instance, but is it really the problem ? This shader does basically nothing else that binding the video texture and showing the resulting textureSize().
,
Nov 22 2017
Thank you for providing more feedback. Adding requester "kbr@chromium.org" to the cc list and removing "Needs-Feedback" label. For more details visit https://www.chromium.org/issue-tracking/autotriage - Your friendly Sheriffbot
,
Nov 23 2017
Submitter, looking at that ShaderToy example I don't know what I'm supposed to be seeing and what's correct and incorrect. Please make the test case simpler and eliminate all unnecessary information.
,
Nov 23 2017
Here is a simplified version: https://www.shadertoy.com/view/XllBR7 Depending on the browser and version, image size on GPU (width in white) might differ to image size on disk (width in red). This 509x396 video get 512x396 on GPU for firefox and some version of chrome.
,
Nov 23 2017
Thank you for providing more feedback. Adding requester "kbr@chromium.org" to the cc list and removing "Needs-Feedback" label. For more details visit https://www.chromium.org/issue-tracking/autotriage - Your friendly Sheriffbot
,
Nov 24 2017
,
Nov 24 2017
,
Nov 28 2017
Looks like a behavior change between M58 and M62. Ligi, can someone from QA team do a bisect?
,
Nov 28 2017
Sure, routing to triage team for bisecting.
,
Nov 29 2017
Able to reproduce the issue on Windows 10, mac 10.12.6 and Ubuntu 14.04 using chrome reported version #62.0.3202.94 and latest canary #64.0.3279.0. Bisect Information: ===================== Good build: 62.0.3194.0 Revision(496533) Bad Build : 62.0.3196.0 Revision(497279) Change Log URL: https://chromium.googlesource.com/chromium/src/+log/d6e0bb934a513d5b8e3a9fb6464eb821960e44a4..9fc174c5ecbe4617752c4c8682d29d0c8fea08b0 From the above change log suspecting below change Change-Id: Ifcd8fb3fe991b93dfdbbe84d0a78e0efe08aea34 Reviewed-on: https://chromium-review.googlesource.com/629458 zmo@ - Could you please check whether this is caused with respect to your change, if not please help us in assigning it to the right owner. Note: Adding stable blocker for M-64 and requesting to merge the fix( (if its safe merge) to M-63 Thanks...!!
,
Nov 29 2017
Your bisect is totally off. The last known good is @464251, the first known bad is @464258. My educated guess is crrev.com/464253: Fix broken draw/upload paths from videos to 2D canvas and WebGL. I'll dig a bit further to see where the difference comes from.
,
Dec 7 2017
Friendly ping to get an update on this issue as it is marked as stable blocker. Thanks in advance..!
,
Dec 7 2017
I don't think this should block any release. Remove Release-blocker label. I will get to this bug soon.
,
Feb 26 2018
This doesn't seem like it's P1. I'm setting to P2 but please change it back if this warrants P1.
,
Feb 26 2018
Sorry, but I have to un-assign myself as I won't be able to work on this any time soon. |
|||||||||||||||||
►
Sign in to add a comment |
|||||||||||||||||
Comment 1 by fabrice....@gmail.com
, Oct 31 2017