Opened 11 years ago

Closed 11 years ago

Last modified 11 years ago

#2097 closed defect (fixed)

Flickering when playing videos in fullscreen mode with black borders

Reported by: Saadat78@… Owned by: reimar
Priority: normal Component: vo
Version: unspecified Severity: normal
Keywords: Cc: cehoyos
Blocked By: Blocking:
Reproduced by developer: no Analyzed by developer: no

Description

Hello,

Recently I'm experiencing problems with the playback of some MKV/H.264 videos when adding black borders in fullscreen mode under Win XP SP3 using SMPlayer 0.8.1 as GUI.

After updating from MPlayer r35034 to MPlayer r35203 (also tried MPlayer r35254) there is always flickering where the actual video and the lower added black border meet. Only a few lines at the bottom of the video are affected and it looks like the pixels of the video are alternating with black pixels.

I was able to reproduce this problem on four different machines running Win XP or Win 7 with both nVidia and AMD/ATI CPUs and GPUs, and I tried both old and latest graphic drivers. I made sure that the direct rendering option is disabled and I also tried to switch from DirectX output driver to OpenGL with no success. Also, it does not happen with all H.264 videos, just with some of them.

When I downgrade MPlayer to r35034 from the problem disappears. Unfortunately, the file where the problem appears is too large to be uploaded here. However, I'll gladly provide any other information required.

Regards,

Sohrab

Change History (14)

comment:1 by cehoyos, 11 years ago

Cc: cehoyos@… added

Please add a (minimal) command line that allows to reproduce the problem.

comment:2 by Saadat78@…, 11 years ago

(In reply to comment #1)

Please add a (minimal) command line that allows to reproduce the problem.

I'm using the SMPlayer GUI. I'll try to reproduce the problem using the command line. Once I figured out how to do that I'll report back.

comment:3 by Saadat78@…, 11 years ago

(In reply to comment #2)

(In reply to comment #1)

Please add a (minimal) command line that allows to reproduce the problem.

I'm using the SMPlayer GUI. I'll try to reproduce the problem using the
command line. Once I figured out how to do that I'll report back.

Took me a while, but now I got it:

mplayer.exe -vf expand:::::1.6 [path/]filename

As described before, it happens only with mkv/H.264 files and not with all of them. Smaller files, such as TV series seem to work fine, while larger movie files (> 4 GBs) using DTS sound usually have this problem.

comment:4 by cehoyos, 11 years ago

(In reply to comment #3)

mplayer.exe -vf expand:::::1.6 [path/]filename

Please add complete, uncut console output.

(And please add graphic card type and driver version.)

Carl Eugen

comment:5 by Saadat78@…, 11 years ago

(In reply to comment #4)

Please add complete, uncut console output.

(And please add graphic card type and driver version.)

Carl Eugen

These are the four different graphic cards and their respective driver on which I could reproduce the problem:

nVidia GeForce 6600GT using ForceWare 93.71 driver
nVidia Quadro FX 1100 using ForceWare 169.96 driver
nVidia Quadro 4000 using Tesla 296.88 x64 driver
ATI Mobility Radeon X700 using Catalyst 8.18 driver

The following output was created using the nVidia GeForce 6600GT graphics card:

MPlayer Redxii-SVN-r35279-4.6.3 (C) 2000-2012 MPlayer Team
198 audio & 414 video codecs

Playing G:\Movies\DT.mkv.
libavformat version 54.35.100 (internal)
libavformat file format detected.
[lavf] stream 0: video (h264), -vid 0
[lavf] stream 1: audio (dca), -aid 0, -alang eng
[lavf] stream 2: subtitle (subrip), -sid 0, -slang eng, Forced
[lavf] stream 3: subtitle (subrip), -sid 1, -slang eng
VIDEO: [H264] 1280x536 0bpp 23.976 fps 0.0 kbps ( 0.0 kbyte/s)
Load subtitles in G:\Movies\
Opening video filter: [expand aspect=1.6]
Expand: -1 x -1, -1 ; -1, osd: 0, aspect: 1.600000, round: 1
==========================================================================
Opening video decoder: [ffmpeg] FFmpeg's libavcodec codec family
libavcodec version 54.69.100 (internal)
Selected video codec: [ffh264] vfm: ffmpeg (FFmpeg H.264)
==========================================================================
==========================================================================
Opening audio decoder: [ffmpeg] FFmpeg/libavcodec audio decoders
AUDIO: 48000 Hz, 2 ch, floatle, 1536.0 kbit/50.00% (ratio: 192000->384000)
Selected audio codec: [ffdca] afm: ffmpeg (FFmpeg DTS)
==========================================================================
AO: [dsound] 48000Hz 2ch s16le (2 bytes per sample)
Starting playback...
Unsupported PixelFormat 61
Unsupported PixelFormat 53
Unsupported PixelFormat 81
Movie-Aspect is 2.39:1 - prescaling to correct movie aspect.
VO: [directx] 1280x800 => 1280x800 Planar YV12
A: 4.2 V: 4.2 A-V: 0.001 ct: 0.041 0/ 0 35% 7% 3.0% 0 0

Exiting... (Quit)

comment:6 by Saadat78@…, 11 years ago

Were you able to reproduce the problem?

comment:7 by reimar, 11 years ago

The expand filter tries to save on processing, it sometimes could lead to the borders not being correctly cleared. I not sure though since I couldn't reproduce it yet.
Though I do wonder why SMPlayer is using the expand filter here at all (I have a theory it might have been useful with older MPlayer versions, but I don't think this is the case any more), getting rid of that should be a fairly simple workaround at least.

comment:8 by Saadat78@…, 11 years ago

(In reply to comment #7)

The expand filter tries to save on processing, it sometimes could lead to
the borders not being correctly cleared. I not sure though since I couldn't
reproduce it yet.

Have there been any recent changes to the expand filter, or to other parts affecting the expand filter that might cause this? The problem occurrs only with recent MPlayer builds. Currently, I'm back on r35034 which does not have this problem. However, now I cannot play some newer mkv/h264 files.

Though I do wonder why SMPlayer is using the expand filter here at all (I
have a theory it might have been useful with older MPlayer versions, but I
don't think this is the case any more), getting rid of that should be a
fairly simple workaround at least.

Are there any other ways to add the black borders? I'm hearing impaired and need subtitles which I would like to move out of the picture.

comment:9 by reimar, 11 years ago

Are there any other ways to add the black borders? I'm hearing impaired and need subtitles which I would like to move out of the picture.

-vo gl will put subtitles into the borders by default (-vo direct3d and a few others as well, but if it works gl is recommended).
But one question: does the flickering happen always or maybe only when you have subtitles enabled?
And yes, there were recent changes that might be related, in particular one that enabled partial direct rendering for H.264.

comment:10 by Saadat78@…, 11 years ago

(In reply to comment #9)

-vo gl will put subtitles into the borders by default (-vo direct3d and a
few others as well, but if it works gl is recommended).

Thanks. Tried it and it works most of the time, but sometimes the substitles still appear on the picture.

But one question: does the flickering happen always or maybe only when you
have subtitles enabled?

It always happens - even with the subtitles disabled.

comment:11 by reimar, 11 years ago

Thanks. Tried it and it works most of the time, but sometimes the substitles still appear on the picture.

In what way? It should not behave significantly different (though I do not know if maybe SMPlayer does something special). Newer MPlayer versions allow to move the text even further down using -subpos values > 100.

comment:12 by reimar, 11 years ago

Resolution: fixed
Status: newclosed

Should be fixed in r35481, though I don't really understand why the issue is not reproducible for me on Linux.

comment:13 by Saadat78@…, 11 years ago

(In reply to comment #12)

Should be fixed in r35481, though I don't really understand why the issue is
not reproducible for me on Linux.

Thank you! I'll test this as soon as I get a chance and give you feedback.

comment:14 by Saadat78@…, 11 years ago

(In reply to comment #12)

Should be fixed in r35481, though I don't really understand why the issue is
not reproducible for me on Linux.

I tested it and can confirm that the problem has been fixed! Thank you very much for all your efforts!

Note: See TracTickets for help on using tickets.