Using r50298, cairo 1.8.0, X server 1.5.3 with intel drivers 2.5.0, I get black artifacts playing the youtube demo version using HTML5 (see URL in the bug). Screenshot coming.
Created attachment 42136 [details] screeshot
Created attachment 42157 [details] patch, step 1
Created attachment 42158 [details] fix These two patches get rid of the improper alignment as exhibited in the bug. According to Simon Fraser the right thing to do in MediaPlayerPrivate::paint() is to make the video fill the given rectangle completely and not try to keep any aspect ratio. FWIW, at least the Qt and the win port have the same issue. I'm not sure if we should file new bugs for that or use this one?
Comment on attachment 42157 [details] patch, step 1 > + Using cairo_paint() is faster, does not produce artefacts and is less > + code. Typo: artefacts -> artifacts. Patch looks fine. But it doesn't apply cleanly anymore. Can you please update so the commit bot can commit it? r- because patch needs rebasing.
Comment on attachment 42158 [details] fix LGTM. Can you please update this one as well for cq+? Thanks.
Created attachment 42328 [details] fix Turns out using cairo_paint() is a bad idea for the gradients you get in the corner with bilinear filtering, which are bad when upscaling the image. So I removed that part and used the old cairo_fill() logic and set CAIRO_EXTEND_PAD on the source. Other than that, the patch is unchanged.
Created attachment 42329 [details] fix This time with only one ChangeLog entry...
Comment on attachment 42329 [details] fix > +2009-11-02 Benjamin Otte <otte@gnome.org> > + > + Reviewed by NOBODY (OOPS!). > + > + Paint the video to the given size. > + > + It's the job of the callers to keep track of aspect ratio. > + RenderVideo.cpp does it for the <video> element. r=me. ChangeLog is missing bug link and title though, so someone would need to fix it before landing.
Created attachment 42858 [details] updated ChangeLog entry
Comment on attachment 42858 [details] updated ChangeLog entry LGTM too. You should be aware of: prepare-ChangeLog --bug 12345 which will automatically add the title and url for the bug to the ChangeLog.
Comment on attachment 42858 [details] updated ChangeLog entry Rejecting patch 42858 from commit-queue. Failed to run "['/Users/eseidel/Projects/CommitQueue/WebKitTools/Scripts/svn-apply', '--reviewer', 'Eric Seidel', '--force']" exit_code: 1 Last 500 characters of output: aphics/gtk/MediaPlayerPrivateGStreamer.cpp | 51 ++++---------------- 2 files changed, 23 insertions(+), 42 deletions(-) ------------------------------------------------------------------- patching file WebCore/ChangeLog Hunk #1 succeeded at 1 with fuzz 3. patching file WebCore/platform/graphics/gtk/MediaPlayerPrivateGStreamer.cpp Hunk #1 FAILED at 634. Hunk #2 FAILED at 655. 2 out of 2 hunks FAILED -- saving rejects to file WebCore/platform/graphics/gtk/MediaPlayerPrivateGStreamer.cpp.rej
Created attachment 42883 [details] rebased against trunk
Comment on attachment 42883 [details] rebased against trunk > +2009-11-02 Benjamin Otte <otte@gnome.org> > + > + Reviewed by NOBODY (OOPS!). > + > + [GTK] Black artifacts in youtube.com/html5 > + > + Paint the video to the given size. It's the job of the callers to keep > + track of aspect ratio. RenderVideo.cpp does it for the <video> > + element. > + https://bugs.webkit.org/show_bug.cgi?id=30925 > + Try to put the bug link after the title next time.
Comment on attachment 42883 [details] rebased against trunk Clearing flags on attachment: 42883 Committed r50798: <http://trac.webkit.org/changeset/50798>
All reviewed patches have been landed. Closing bug.