Opened 5 years ago

Closed 5 years ago

#265 closed defect (fixed)

MMX2 yuv420p10 → yuv444p scaler produces vertical undithered(?) lines with GCC 4.6

Reported by: lachs0r Owned by: michael
Priority: normal Component: swscale
Version: git Keywords: yuv420p10, yuv444p, mmx2
Cc: Blocked By:
Blocking: Reproduced by developer: no
Analyzed by developer: no

Description

I know this might be a PITA to reproduce since it only happens with GCC 4.6, but I’ll report it anyway.

Background: I’ve been trying to play yuv420p10 video with my patched MPlayer2 builds for Windows (http://mplayer2.srsfckn.biz/mplayer2-high-bit-depth-latest.7z).
MPlayer2 apparently chooses the yuv420p10 → yuv444p scaler by default.

That is probably fine, but there’s a problem: The MMX2 version of that scaler seems to break with GCC 4.6.0, causing vertical lines of what seems to be undithered luma (can’t tell for sure since I didn’t actually investigate that in detail, but I’ll attach a screenshot).
The C version works fine.

This can be reproduced with for example:
ffmpeg -i test10bit.mkv -pix_fmt yuv444p -vcodec ffv1 out.mkv

Attachments (2)

ffmpeg-dither-h10p.png (96.9 KB) - added by lachs0r 5 years ago.
vertical lines in dithered yuv444p output
swscale-test-results.tar.xz (1.3 MB) - added by lachs0r 5 years ago.
swscale-test results for linux, win32 and win32 without assembly optimization

Download all attachments as: .zip

Change History (7)

Changed 5 years ago by lachs0r

vertical lines in dithered yuv444p output

comment:1 Changed 5 years ago by lachs0r

Update: It only breaks with MinGW targets (even using GCC 4.5.x), which makes it even more of a PITA to debug. This is probably a MinGW/GCC bug rather than an FFmpeg bug. Sorry if I’m wasting your time here.

Version 0, edited 5 years ago by lachs0r (next)

comment:2 follow-up: Changed 5 years ago by michael

maybe comparing the output from swscale-test between mingw and linux could help

Changed 5 years ago by lachs0r

swscale-test results for linux, win32 and win32 without assembly optimization

comment:3 in reply to: ↑ 2 Changed 5 years ago by michael

Replying to michael:

maybe comparing the output from swscale-test between mingw and linux could help

which versions did you use to generate these?
also how did you force enable mmx* 3dnow, they are autodetected in recent swscale.

thanks

comment:4 Changed 5 years ago by rogerdpack

Just ran into this too, with this version

ffplay version git-N-30610-g1929807, built on Jun 7 2011

however this version:

ffplay version N-31706-g335bbe4, built on Jul 31 2011

seems to no longer exhibit the problem for me (it was showing striated lines in mplayer with any software scaler selected, which also appears fixed now with a newer build).

comment:5 Changed 5 years ago by cehoyos

  • Resolution set to fixed
  • Status changed from new to closed

Thank you for posting, please re-open the issue if still reproducible.

Note: See TracTickets for help on using tickets.