/mpv/ - the Sup Forumsreatest media player

Installation:
mpv.io/installation/

Wiki:
github.com/mpv-player/mpv/wiki

Manual:
mpv.io/manual/master/

User Scripts (including opengl shaders):
github.com/mpv-player/mpv/wiki/User-Scripts

High quality video output profile (goes into mpv.conf):
profile=gpu-hq
mpv.io/manual/master/#configuration-files

Config example:
github.com/Argon-/mpv-config/blob/master/mpv.conf

Input.conf:
github.com/mpv-player/mpv/blob/master/etc/input.conf

Post your system specs and config if youre asking performance related questions.

Other urls found in this thread:

gist.github.com/haasn/d653506537c2f647d74074a9fb910be9
mpv.io/manual/master/#options-gpu-api
github.com/jb-alvarado/media-autobuild_suite
github.com/mpv-player/mpv-build
mpv.io/manual/master/#options-ytdl-raw-options
github.com/rg3/youtube-dl#options
github.com/rg3/youtube-dl#authentication-with-netrc-file
twitter.com/SFWRedditVideos

> that's what you get for letting others contribute to your project: they add stupid crap to your code, and when you ask why, they shit on you
> I ca4n stop working on mpv if you're prefer

I don't believe that desu.

Typical married couple.

Post more logs.

I managed to crash it a couple of times. This is with an gtx 760 on loonux.
If I keep going backwards and forwards in my playlist (while fullscreen makes it occur much more often) it will crash after a while and say
[vo/gpu/vulkan] vkAllocateMemory(vk->dev, &minfo, MPVK_ALLOCATOR, &slab->mem): VK_ERROR_OUT_OF_DEVICE_MEMORY
mpv: ../video/out/vulkan/malloc.c:264: vk_free_memslice: Assertion `slab' failed.
Aborted (core dumped)

Slightly different error when toggling fullscreen
[vo/gpu/vulkan] vkCreateSwapchainKHR(vk->dev, &sinfo, MPVK_ALLOCATOR, &p->swchain): VK_ERROR_OUT_OF_DEVICE_MEMORY
Segmentation fault (core dumped)

Also sometimes I get this error on exit
Exiting... (Quit)
mpv: ../video/out/vulkan/ra_vk.c:738: vk_buf_destroy: Assertion `buf_vk->refcount == 0' failed.
Aborted (core dumped)

I tried a bunch of other things like screenshots, vf hflip, cropping, rotating, zooming, panning, and changing aspect ratio and it all worked fine.

Also resizing the window
Audio/Video desynchronisation detected! Possible reasons include too slow
hardware, temporary CPU spikes, broken drivers, and broken files. Audio
position will not match to the video (see A-V status field).

AV: 00:23:29 / 01:50:55 (21%) A-V: 0.009 DS: 5.529/2 Cache: 9s+73MB
[vo/gpu/vulkan] Requested width 1124 does not match current width 1128
[vo/gpu/vulkan] Requested height 644 does not match current height 642
AV: 00:23:33 / 01:50:55 (21%) A-V: 0.017 DS: 3.480/10 Dropped: 27 Cache: 10s+73MB
[vo/gpu/vulkan] vkAllocateMemory(vk->dev, &minfo, MPVK_ALLOCATOR, &slab->mem): VK_ERROR_OUT_OF_DEVICE_MEMORY
mpv: ../video/out/vulkan/malloc.c:264: vk_free_memslice: Assertion `slab' failed.
Aborted (core dumped)

this was in haasns master bracnh btw. i switcheed to vulkan branch and will try again. i dont know which is correct exactly. i am noob at this XD

wtf i hate hanna now?

Don't test that branch, it's pretty buggy and all of that is pretty expected. (I renamed it to 'vulkan-crap', the new 'vulkan' should be much better)

I just installed MPV, what do now?

You watch videos.

Why is there a mpv general

Explain

┐( ̄ー ̄)┌

PMS?

FOSS

Is opengl going to be fully dropped/abandoned?

I wish

Posting from last thread how can i make the colors in mpv washed out like vlc or mpc+vmr9

Isn't it sad for developers?

Advertise it on every board.

>how to mangle my colors?
Try --video-output-levels=limited. You can also try playing around with --brightness and --contrast. For bonus points sprinkle in some --vf=format=colormatrix=bt.601, and maybe fuck around with the other --vf=format suboptions.

How do I make mpv remember the last volume level used? Is there a script for this?

Lower contrast and saturation

hwdec=dxva2

What should I do if my system freezes and I have to reboot? How do I get any kind of x11 log or whatever it is I need?

Report driver bug? :D

Also try with --vulkan-async-transfer=no and --vulkan-queue-count=1, does that get rid of the freeze?

>This allows me to safely enable async transfer, boosting performance anywhere from 10% to 25%, and making vulkan quite definitely faster than OpenGL for me: on 1080p clips I get like 410 -> 540 fps for opengl -> vulkan, and on the 8K torture test I get 38 -> 45 fps. (Compared to 35 fps with vulkan before this commit)

Neat. Ill still wait few weeks before updating. I expect shitload of bugs.

Onii-chan, why doesn't mpv have an anime preset that's already optimized for animation? Why do I have to waste hours trying to optimize it each time I upgrade mpv?

profile=gpu-hq +
>cscale=ewa_lanczossoft
>scale=haasnsoft
You can also add ravu r4 smoothtest1. Your welcome sis :)

is it time for mpvhq to make a comeback

Not really, it happens all the time.

Why would you change your config after upgrading? Existing stuff hardly changes, usually gets better performance but doesn't change for the worse.
New stuff might come that could be better than what you are using in your config right now but that can hardly be a disadvantage and it's not really common anyway.
In case stuff got deprecated it will tell you at playback and be backwards compatible for many months and sometimes even years.

I still don't get why wm4 has his hand firmly grasped around the handbrake when Vulkan is showing so much promise as a renderer and OGL needs to go eventually.

video-sync=display-resample was causing it I think. I did no-config and it was fine then I added --video-sync=display-resample and it froze after a couple of seconds, think it might have been as i switched between fullscreen. Completely locks up my PC and I have to reboot.

Well he's right from his point of view. The cares more about burden of maintenance and clean/quality code than any other of the devs.
And it's good that he does because otherwise mpv would turn into the clusterfuck mplayer or others are right now and that's precisely why mpv exists in the first place.

OpenGL will NEVER go away for the foreseeable future, lol

> hanna: how does it make sense to use std140 for RA_VARTYPE_BUF_RO but std430 for RA_VARTYPE_BUF_RW?
> wm4: ask khronos
> is int *foo[2] a pair of int arrays, or an array of int pairs?
> I guess the former
> isn't it the latter? but fuck C decl syntax
> so why do we mix std layouts
> ask khronos

Because mpv's purpose is not to be a great player on a small set of neatly tuned neckbeard machines. It's certainly not the same as mplayer, trying to maintain compatibility with ever toaster that existed in the past 30 years, but just because mplayer is shitty doesn't mean mpv has to go for the complete opposite which is just equally shitty.

I don't see why it couldn't coexist with OGL and act as the -hq default while OGL remains the toaster-friendly stock state.

>Why would you change your config after upgrading?
Because with every update devs add new features and quite often there are also new shaders and upsacale algorithms.
Having all the testing and settings done by people who write the software and know what they're doing is the way to go.

Haasn, get it done Onii-chan. Add an "anime" preset so we don't have to waste time copy/pasting all these bullshit parameters from these threads... from people who don't know what they're talking about.

you're super duper dumb

>and quite often there are also new shaders and upsacale algorithms.
Why do you expect the mpv devs to test all the third party shaders

See., you're one of these retards who shitposts and doesn't even know how little he knows.
Post less.

>Try --video-output-levels=limited.
worked, thank you!

haasn mostly watches anime so you can just copy some of his settings.

That was out of character =\

Too much blur.

So this is just about making gpu-hq use Vulkan? Well, I wouldn't care about that but I don't see how this is a "handbrake" either. There are definitly more people out there with proper opengl support than vulkan. And gpu-hq is about quality (good scalers etc.) not performance. opengl brings this quality to more people than vulkan. Of course vulkan might offer superior speed but these users can just make it use vulkan, so what's the deal?

Haasn doesn't watch anything anymore, he said that quite some time ago. These days (for many months, actually) he's either coding or playing games, mostly on his PS4. They have an offtopic channel where they talk about this stuff constantly, there you can monitor what he does if you feel like it.

this khronos guy sounds like a but hole

It can coexist for now but as more people upgrade to hardware that supports Vulkan the performance benefits will bring higher quality to lower end systems.

There's no point in some amazing quality video if it doesn't run smoothly in real time.

What kind of games he likes?
>there you can monitor what he does if you feel like it
I want to know what he ate for breakfast :O

Why can't you probe that? If there's Vulkan support, go with in in gpu-hq, otherwise OpenGL? The only way to please the maximum amount of users.
It could even be decided during compile time and waf just modifies the preset accordingly.

gist.github.com/haasn/d653506537c2f647d74074a9fb910be9
This used to be up to date, he used to talk about this list with pigoz some months ago. Not sure if still relevant.

I don't see why people are so hung up on having automagic meme settings. If you care that much put in the effort to find the settings you want yourself.

>If you care that much put in the effort to find the settings you want yourself.
why are you using mpv then? if you care so much about video, why don't you write your own video player?

>Why can't you probe that? If there's Vulkan support, go with in in gpu-hq, otherwise OpenGL?
That makes the most sense.

>It could even be decided during compile time
That would mean seperate vulkan builds which would probably just be messy and not achieve anything of value.

>That would mean seperate vulkan builds which would probably just be messy and not achieve anything of value.
Indeed, I totally forgot about that case.

Right, because tweaking settings requires exactly as much effort as writing a video player.

mpv.io/manual/master/#options-gpu-api

it's as absurd as your dumb suggestion.

>auto Use any available API (default)
>opengl Allow only OpenGL (requires OpenGL 2.1+ or GLES 2.0+)
I dont get it.

Because you are apparently stupid. Not a big deal, there are many like you.

why doesn't shinchiro just have a script to auto compile the latest mpv every 2 days or something? the erraatic release schedule is annoying

Can you stop with your rude unnecessary comments? Bad for your karma.

vulkan and d3d soon

Why don't you just build it yourself every 2 days or something?
Even on Windows it's not that hard.
github.com/jb-alvarado/media-autobuild_suite

is there any point of the full build if not using vapoursynth?

squee!

if it's going to be uploaded to sf anyway why not automate it instead of doing it on a whim?

>haasn is a bully
Didn't expect that desu.

he gets it from wm4

Something like that for Linux pls.

I'm not haasn

The fuck?
Paste this in a compile.sh:
git pull
python bootstrap.py
./waf configure
./waf compile

done.
What the heck...

if you want to play DVDs or open zip files

Well I'm not shinchiro so I couldn't tell you why he doesn't do that. But if you do it yourself you don't have to worry about what he is or isn't doing.

whats the correct way to install? i got told off for doing sudo ./waf install before. i did sudo pip install too because i get permission error otherwise.

...

You install libass-dev?

Well I assume you have the dependencies of course. You only need to get them once.
You are using Linux but have no idea what package managers are...?

Huh? Makes no sense.
"Installing" as in "move the binary into your PATH" can be done however you want and waf install is the normal way as per the build system used by mpv.
The official mpv-build scripts also use waf install: github.com/mpv-player/mpv-build

I don't see a need for sudo though, maybe that was the reason.

I only switched from Win.

When the waf compile script is done i can just move mpv.bin to other computer to use?

sudo apt-get install libass-dev

What is mpv.bin? It's just mpv
But yes you can as long as this computer has the dependencies in the same place. If not you need to build it static (I think the mpv-build scripts can do that)

>But yes you can as long as this computer has the dependencies
Will my apt manager autodownload them? I don't know what i need to install.
>If not you need to build it static (I think the mpv-build scripts can do that)
I tried static build some time ago and it still had some dependency problems...

maybe you should learn to use linux before starting compiling mpv.

I'd say install the one in your distro's repos for now, and then you could compile it when your more familiar with compilation on linux.

you still need to install the listed dependencies on the page with your package manager

To be honest i don't understand the principle of compiling mpv.
>copy git copies mpv files from which you build the program
>install necessary programs for compiling like git, devscripts, equivs
>run python script (no clue what it does)
>waf configure sets what features will be enabled in mpv (dvd playback, youtube-dl, etc), but is it dependent on what installed in the system of the person compiling? Also what features enabled/disabled if i leave it blank?
>waf compile compiles the program into binary file ready to use
Lets say i need to "install" the said binary file on another system. What dependencies do i need to have installed exactly? Depends on the waf configure? Can i build mpv in a way that all dependencies are into one file like ready to use like on Windows?

>Will my apt manager autodownload them?
No
>I don't know what i need to install.
Check the requirements mpv lists. Most stuff is option, i.e. when it finds the dependency it enables the respective feature. Therefore, you should make sure to have them all, at least the ones enabling features you care about.

When you want to "install" it on another system you need to copy the mpv binary and all libs it is liked against (the dependencies).
That's btw exactly what installers do. E.g. when you use an installer on Windows it copies the binary and all dependencies (mostly DLLs) and maybe further required files. That's all it does, just copy a bunch of files to the correct locations.

>Can i build mpv in a way that all dependencies are into one file like ready to use like on Windows?
For one, that's not default on windows either. When you need an installer, it's almost certainly also placing libs (dlls) somewhere.
But yes, that's possible and it's called a static build. The mpv-build scripts can also build ffmpeg and they do this static because ffmpeg can have a ridiculous amount of dependencies (and to not interfere with you system's ffmpeg).

What about just reading the mpv-build page or otherwise inform yourself about compiling?
>mpv doesn't need to be installed. The binary ./mpv/build/mpv can be used as-is. You can copy it to /usr/local/bin manually. Note that libass and ffmpeg will be statically linked with mpv when using the provided scripts, and no ffmpeg or libass libraries are/need to be installed. There are no required config or data files either.

>Note: most dependencies are optional and autodetected. If they're missing, these features will be disabled silently. This includes some dependencies which could be considered essential.

How to make bind for 50% of screen size = window size? window-scale goes with video size, geometry doesn't work in binds neither does autofit for me

What do I write into the mpv config file to enable youtube-dl "mark-watched" shit?

any recommended configs for Windows?

using this, accept suggestions
vo=opengl
opengl-backend=angle
tscale=catmull_rom
opengl-early-flush=no
opengl-pbo=yes
sigmoid-slope=10
scale=ewa_hanning
scale-radius=3.2383154841662362
cscale=ewa_lanczos
dscale=mitchell
scale-antiring=0
cscale-antiring=0
dither-depth=auto
correct-downscaling=yes
sigmoid-upscaling=yes
deband=yes
hwdec=d3d11va
[protocol.https]
cache-secs=100
user-agent='Mozilla/5.0 (Macintosh; Intel Mac OS X 10.11; rv:47.0) Gecko/20100101 Firefox/47.0'
[protocol.http]
cache-secs=100
user-agent='Mozilla/5.0 (Macintosh; Intel Mac OS X 10.11; rv:47.0) Gecko/20100101 Firefox/47.0'

mpv.io/manual/master/#options-ytdl-raw-options
github.com/rg3/youtube-dl#options
github.com/rg3/youtube-dl#authentication-with-netrc-file
ytdl-raw-options=username=user,password=pass,mark-watched=

Delete yourself.

>fake user-agent
I too use a fake user-agent string. It's the way to go.