New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

mpv blue screen, on latest build, with ITU-R Recommendation BT.2020 #5069

Closed
99issues opened this Issue Nov 2, 2017 · 6 comments

Comments

Projects
None yet
3 participants
@99issues

99issues commented Nov 2, 2017

mpv version and platform

mpv 0.27.0-328-g4617a53496-dirty (C) 2000-2017 mpv/MPlayer/mplayer2 projects
built on Tue Oct 31 15:54:07 UTC 2017
ffmpeg library versions:
libavutil 56.0.100
libavcodec 58.2.100
libavformat 58.0.102
libswscale 5.0.101
libavfilter 7.0.101
libswresample 3.0.100
ffmpeg version: N-88322-g1ab3b7f64a-1

Reproduction steps

mpv -vo gpu --ytdl-format='bestvideo+bestaudio/best' https://www.youtube.com/watch?v=hsbM2c6-9Wg

Expected behavior

Video, audio, and OSD

Actual behavior

Blue screen, no OSD, audio only

Log file

http://sprunge.us/UWUR

video card: intel
video driver: xserver-xorg-video-intel
OS: debian sid (unstable)

@wm4 wm4 added the invalid label Nov 2, 2017

@wm4

This comment has been minimized.

Contributor

wm4 commented Nov 2, 2017

Log missing. (Can anyone write a bot for his?)

@99issues

This comment has been minimized.

99issues commented Nov 2, 2017

Log URL added.

@haasn

This comment has been minimized.

Member

haasn commented Nov 2, 2017

OpenGL 2.1

Jesus that's old. Anyway, this could probably be fixed by changing it to “if (sig > j) { sig *= ... }”, or by using a ternary. It will probably still break other code that depends on mix() though, and not all of it can be patched this easily. It might work for this particular file, but not all of them.

I don't intend to bend over backwards for GLSL 120 support. The most I'll do is disable tone mapping on GLSL 120, but that won't improve the result for you either.

@99issues

This comment has been minimized.

99issues commented Nov 2, 2017

Thank you for looking into this. Is there any way to fallback to a different video output driver or possible renderer option(s) whenever viewing a video using this color space?

My knowledge regarding this issue is limited but, willing to learn. Besides learning GLSL, what else should be learned to be able to support legacy systems using OpenGL 2.1 / GLSL 120 for this situation?

@haasn

This comment has been minimized.

Member

haasn commented Nov 2, 2017

Well, one thing you could do is force the target primaries/trc to be the same as the file by using --target-prim=bt.2020 --target-trc=pq. That should make it look identical to what it would look like if this function did not exist to begin with. But it will not look very good.

Actually, in this case there's an easier work-around: If you use a different tone mapping function (e.g. --tone-mapping=hable), it should work even on GLSL 120.

@99issues

This comment has been minimized.

99issues commented Nov 2, 2017

Forcing the target primaries and trc did not work, same blue screen:

[vo/gpu] Disabling scaler #3 mitchell (GLSL version too old).
[vo/gpu] Disabling color management (GLSL version too old).

Using --tone-mapping=hable was able to display. Thank you for the work-around!

@wm4 wm4 removed the invalid label Nov 3, 2017

@wm4 wm4 closed this in 2abf20b Nov 3, 2017

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment