Package Details: mpv-git 0.26.0_15_gbbfd9b5a29-1

Git Clone URL: https://aur.archlinux.org/mpv-git.git (read-only)
Package Base: mpv-git
Description: Video player based on MPlayer/mplayer2 (git version)
Upstream URL: https://mpv.io
Keywords: media player video
Licenses: GPL
Conflicts: mpv
Provides: mpv
Submitter: rpolzer
Maintainer: qmega
Last Packager: qmega
Votes: 173
Popularity: 3.728194
First Submitted: 2012-12-04 09:21
Last Updated: 2017-07-23 17:25

Required by (70)

Sources (2)

Latest Comments

qmega commented on 2017-07-08 15:33

Yeah, it does look like it's from that commit, but I don't know what the proper fix is. In any case, it's an upstream issue, nothing to be done here. I saw you updated your issue there, but they'll probably ask for a more detailed log (with -v) so you might want to go ahead and upload that.

laichiaheng commented on 2017-07-08 05:53

It happens to the HEVC 10bit, and it seems to be caused by the 300f6a334498059f28ec63406112348c7e00fa64 which you mentioned before.
Is there any way to fix it?

VO: [opengl] 1920x1080 yuv420p10
[vo/opengl] before retrieving framebuffer depth: OpenGL error INVALID_VALUE.
AV: 00:00:00 / 01:43:56 (0%) A-V: -0.034 DS: 2.500/0
[vo/opengl] after video rendering: OpenGL error INVALID_VALUE.
[vo/opengl] after rendering: OpenGL error INVALID_VALUE.
[vo/opengl] after video rendering: OpenGL error INVALID_VALUE.
AV: 00:00:00 / 01:43:56 (0%) A-V: 0.006 DS: 2.643/0
Opening video filter: [vapoursynth file=/home/user/.local/share/SVP4/scripts/669bd95b.py buffered-frames=4 concurrent-frames=7]
Using conversion filter.
[vapoursynth] Unsupported output format.
Image formats incompatible or invalid.
Video filter chain:
[in] 1920x1080 yuv420p10 bt.709/bt.709/bt.1886/limited SP=1.000000 CL=unknown
[scale] 1920x1080 yuv420p16 bt.709/bt.709/bt.1886/limited SP=1.000000 CL=unknown [a]
[vapoursynth] "vapoursynth.00" ??? <---
[out] ???
AV: 00:00:03 / 01:43:56 (0%) A-V: 0.005 DS: 2.405/2 Dropped: 10
[vo/opengl] after creating framebuffer texture: OpenGL error INVALID_VALUE.
AV: 00:00:04 / 01:43:56 (0%) A-V: 0.002 DS: 2.360/3 Dropped: 12

qmega commented on 2017-07-06 22:08

No idea. What is "doesn't work well" supposed to mean? Are you still getting the errors you posted the other day, or have you successfully built but mpv but it isn't doing what you want? In either case, as I said the other day, please provide the exact commands you're running and their output.

mpv-vapoursynth uses 0.25.0 release, so if that works and git master doesn't you could bisect between the two. The only changes in the AUR package since 0.25.0 have been the option stuff, which shouldn't affect the build at all if you don't enable them, so this is probably an upstream change or something on your own machine. If it's the former, my best completely uneducated guesses are either 300f6a334498059f28ec63406112348c7e00fa64, or your config becoming invalid due to the list-option parsing changes. If that doesn't help and you can't bisect yourself, you'll have to provide more information if you want help.

laichiaheng commented on 2017-07-06 15:44

The newer build of mpv-git doesn't work well with SVP4, but some older version like mpv-vapoursynth works fine with it, what might cause this?

qmega commented on 2017-07-04 19:12

A little more info might help, but those messages probably came from trying to clone the git repo for mpv, or possibly for this AUR package if you're using a helper that works like that. Probably GitHub (or Arch) servers were having temporary issues, or maybe there's a misbehaving proxy in the way. It's probably worth just trying again, now that it's been a few hours. If it still happens, please provide the exact commands you're running and their full output.

laichiaheng commented on 2017-07-04 13:39

The requested URL returned error: 504
The requested URL returned error: 502

qmega commented on 2017-05-29 23:05

Implemented a basic options system. Thanks for the idea, severach, and sorry it took me so long to get around to doing it.

It's not comprehensive, but I put in the stuff that's frequently requested and most of what's in the community package, minus a few that appear to be redundant or you'd already have installed if you wanted them. If anything's missing, feel free to request it.

severach commented on 2017-04-27 22:54

_opt_FooBar=1
Simple solution: put options at the top of the PKGBUILD. When enabled, they add to depends and turn on the appropriate compile options. Anyone willing to run makepkg gets to choose. Options don't work in the repos but they do work in the AUR.

qmega commented on 2017-04-27 22:14

@ThrowAwayNo_1: Currently I only have ffmpeg as a hard depend because that's the only thing that you can't build mpv without. There is a script that sets the dependencies of the generated package to what it actually depends on, so in my personal install (and yours too, if you installed it), libxss is a dependency. If I added it as a default dependency, someone using mpv on a Wayland-only machine, or a headless machine using --vo=image or audio only or something, would have to edit the PKGBUILD to remove it every time if they wanted to avoid installing and linking against a ton of X11 libs. Granted, most people using this package are probably using X11, but trying to guess at that balance with all the optional dependencies strikes me as a losing battle. The way it is now, everyone has to figure out their optional dependencies the first time (unless everything they need is already installed), but then you pretty much never have to worry about it again, except in the rare occasion a new dependency is added for a feature you already used that you don't already happen to have installed. (I guess that's what happened to you here.)

About optdepends, see the comment I just pinned.

qmega commented on 2017-04-27 22:00

I've gotten a lot of requests to add various optional dependencies to optdepends, so I'm pinning an explanation of why I don't do that. I'm still very much open to suggestions on how to improve the situation; I just don't want to answer the same question again and again.

TL;DR: Basically, mpv's optional dependencies aren't really optdepends the way the packaging system sees them. Either they were linked against at build time, and mpv won't run without them (hard depend), or they weren't, in which case even if you install them they can't be used until you rebuild mpv.

An optdepend tells the packaging system that you can freely install or uninstall it and you will just get/lose the associated optional functionality. Although mpv has many optional dependencies, they don't work like that. They're optional at compile time, but once you've built the package they're either hard dependencies or not dependencies at all. For example: Lua scripting support. If you don't have a supported Lua interpreter installed when you build, your copy of mpv will not support Lua scripting, even if you install Lua later. And if you build with Lua support, uninstalling Lua will render your mpv unable to run entirely, not just disable Lua support. There is a script included with this package that detects what libraries your build is linked against and sets those as (hard) depends when creating the package, so the package you install accurately reflects its dependencies. It might be nice if you were presented with a list of optional dependencies to choose from before building the package for the first time, but I'm not aware of a decent way to do that - user interaction in the PKGBUILD feels nasty, and I definitely don't want any interaction required after the first build. As a compromise, I have a message on install that mentions this issue, but I have it only on the first install to avoid annoying people.

This system is certainly far from ideal, but I haven't thought of anything better. The way it is prevents dependencies from getting out of sync, and allows everyone to use whichever optional features they want without having to install a bunch of stuff they don't or edit the PKGBUILD every time. The price is that you have to figure out which extra packages you need the first time you install, but at least you only have to do that once. If anyone can think of a better system, I'm all ears.

All comments