[HN Gopher] Mpv - A free, open source, and cross-platform media ...
___________________________________________________________________
Mpv - A free, open source, and cross-platform media player
Author : peter_d_sherman
Score : 341 points
Date : 2022-07-18 12:04 UTC (10 hours ago)
(HTM) web link (mpv.io)
(TXT) w3m dump (mpv.io)
| skitter wrote:
| Mpv has an interesting commit message that rants about the
| insanity of C locales: https://github.com/mpv-
| player/mpv/commit/1e70e82baa91
| jmrm wrote:
| After skimming that message I think I'll save this for later. I
| probably would use it for some project I need to use locales
| with :-)
| badocr wrote:
| Eric S. Raymond commented on that commit, congratulating wm4.
| capableweb wrote:
| "Interesting" indeed:
|
| > All in all, I believe this proves that software developers as
| a whole and as a culture produce worse results than drug
| addicted butt fucked monkeys randomly hacking on typewriters
| while inhaling the fumes of a radioactive dumpster fire fueled
| by chinese platsic toys for children and Elton John/Justin
| Bieber crossover CDs for all eternity.
|
| This the final paragraph after the author wrote a novel in the
| git commit message.
| schleck8 wrote:
| The guy who made this commit has this in his Github bio:
|
| > Creator of @mpv-player. I was kicked out of the project,
| but all the backstabbers will pay for it in due time. GNOME
| is the plague.
| [deleted]
| Snetry wrote:
| Dont trust the current wm4 github account. The original
| account was deleted and someone made one with the same
| name.
| raintrees wrote:
| I did not really think I was the only one who gets
| frustrated, but wow - My rants are not quite that
| inventive/descriptive...
| [deleted]
| [deleted]
| jlg23 wrote:
| bwahaha. what a gem; thank you!
|
| "To justify this emotional outbreak potentially insulting to
| unknown persons, I will write a lot of text. Those not
| comfortable with toxic language should pretend this is a
| religious text."
|
| I'm going to steal this.
| KennyBlanken wrote:
| "Interesting" is certainly one way to put "author displaying
| blatant homophobic attitudes."
|
| Edit: referencing anal sex and two musicians, one of whom is
| effeminate and the other gay(and famously popular among gay
| people), all as insults. The author is a mix of misogynistic
| and homophobic.
| bool3max wrote:
| These are nowhere near "blatant". Maybe you're the homophobic
| one?
| bhaney wrote:
| "Those not comfortable with toxic language should pretend
| this is a religious text"
| kupopuffs wrote:
| but hey, he fixed it!
| bityard wrote:
| Genuinely curious: it's obviously, well, manic, but which
| part of that quote is homophobic?
| amilios wrote:
| > Those not comfortable with toxic language should pretend
| this is a religious text.
|
| Not going to lie, I laughed a little. But you're right.
| NazakiAid wrote:
| A problem I had with MPV was that turning it up past 100% had
| very obvious distortion whereas VLC didn't have this when at the
| same volume so unfortunately, I am stuck with VLC on Linux unless
| I figure out whats wrong.
| MichaelCollins wrote:
| I don't know how VLC does it, but the _asoftclip_ ffmpeg filter
| probably does what you want.
| NazakiAid wrote:
| Thanks, will give that a go
| antihero wrote:
| You realise how gain works, right? If it's above 100% it will
| clip because there isn't infinite headroom
| loeg wrote:
| Sure, but something else seems to be going on:
|
| > whereas VLC didn't have this when at the same volume
| noisem4ker wrote:
| Soft limiting, as opposed to clipping, avoids audible
| distortion.
| jjcon wrote:
| I love mpv - it works much better on my Linux laptop than vlc for
| some reason, (I think wayland related).
| ur-whale wrote:
| mpv is what powers smplayer, my absolute favorite movie player
| app (sooo much better than vlc).
|
| By itself, mpv isn't very user-friendly though, it needs to be
| wrapped up in a third-party GUI, then its power really shines.
| agumonkey wrote:
| A superb piece of software.
| sylware wrote:
| nyanmp, a brutal suckless-like x11/vulkan/alsa linux open-source
| video player based on ffmpeg:
| https://rocketgit.com/user/sylware/nyanmp/source
|
| ( _grin_ )
| MichaelCollins wrote:
| If the idea is radical minimalism, what advantage does nyanmp
| have over ffplay?
| ognyankulev wrote:
| License (AGPLv3) doesn't make sense for a video player. It only
| scares any use in corporate environment.
| MichaelCollins wrote:
| Makes sense to me. Software for common people, but not for
| corporations or people with an abnormal legal paranoia. WTFPL
| is probably also good for this, lawyers seem to hate it but
| normal people are free to use it without worry.
|
| Imagine the motivation somebody might have for releasing
| their software under a noncommercial freeware license. AGPLv3
| is not a noncommercial freeware license but it de facto
| filters big tech corps as a noncommercial license might, with
| the added bonus of allowing the use of any GPLv2-or-later
| code. Best of both worlds.
| ripdog wrote:
| Curious as to what the advantages of this are over mpv?
| cercatrova wrote:
| MPV is great for setting upscaling filters like Anime4k or Nvidia
| Image Scaling. All you have to do is add a glsl file to the
| shaders folder and voila, you get a crisp, clean image on the
| other side. I often watch 1080p to upscaled 4k shows and anime
| through this method.
| Hamuko wrote:
| I'm glad that Plex is using mpv these days. Makes it a lot nicer
| to use on my Apple TV, since you can basically throw anything at
| it without the need for transcoding.
| monetus wrote:
| This has always worked much more smoothly than vlc for me on
| raspberry pis
| anfractuosity wrote:
| I really like mpv and use it on my laptop, but I thought the
| package in the raspberry pi os repo didn't support
| acceleration? Which is why I've been using vlc for videos (e.g.
| hevc 4k videos).
| mrob wrote:
| My favorite feature is "video-sync=display-resample". This gives
| you perfect frame pacing by synchronizing the video to vertical
| refresh and resampling the audio to match. If you set your
| refresh rate to an integer multiple of the frame rate, every
| frame will be shown for the exact same time. The audio resampling
| compensates for very small discrepancies between speeds by
| imperceptibly changing the audio speed. It's similar to the
| proprietary DirectShow filter "ReClock", but AFAIK ReClock does
| not dynamically adjust the speed to compensate for clock drift
| like MPV does, in which case you could theoretically still get
| imperfect frame pacing. (I haven't actually used ReClock so I
| could be mistaken here.)
|
| Also great is MPV's support for arbitrary OpenGL shaders. This
| can include very complicated shaders, e.g. real-time neural
| network upscaling:
|
| https://github.com/igv/FSRCNN-TensorFlow/releases
|
| SD video can look surprisingly good after upscaling with this.
| neurostimulant wrote:
| Amazing! I tried it with a 360p video and scaling the player
| window to 1080p and it's looking sharp. The original looks
| blurry when you scale the window to 1080p.
| loeg wrote:
| How much does it have to adjust playback speed to get frames to
| an even multiple of refresh rate? Like 2%, or 20? This feature
| isn't for me -- I'm a big fan of the +/- 10% playback speed
| '['/']' buttons -- but it sounds neat.
| mrob wrote:
| By default, it only makes very small changes. See the "video-
| sync-max-video-change" setting.
| willis936 wrote:
| In my experience with Reclock's interface: it does track CPU
| clock drift.
| KennyBlanken wrote:
| The display sync resampling is amazing.
|
| When I first experienced it, it made me realize how terrible
| VLC is; VLC can't play back video at a consistent framerate,
| and this is particularly noticeable in panning scenes in
| videos, especially anime.
|
| People talk about VLC like it's a poster-child of open source,
| but really, I just see a bloated, crash-prone program that
| doesn't even do its primary function particularly well or
| efficiently.
| astrange wrote:
| Computer monitors (60fps) can't play anime at a constant
| framerate (24fps). Computer monitors aren't TVs.
| KennyBlanken wrote:
| Computer monitors are not all 60hz, and I cited anime as
| _one_ example; TV and movies also have jerky playback.
|
| VLC does the behavior described (jerky playback) on both a
| Mac with 60hz display that is several years old, and on a
| cutting edge PC that has a refresh rate more than five
| times the framerate of anime _and supports variable refresh
| rate_.
|
| mpv plays anime butter-smooth on both systems.
|
| I love it when I get a supremely condescending explanation
| that is also wrong.
| astrange wrote:
| > Computer monitors are not all 60hz, and I cited anime
| as one example; TV and movies also have jerky playback.
|
| The ones that are 60hz are 60hz, and that's not the
| reason monitors aren't TVs. They aren't TVs because they
| don't have one of 1. black frame insertion 2. 60->120fps
| motion interpolation, so you have persistence of vision
| issues. (aka motion blur, jerkiness, or both at once)
|
| Movies are also 24fps, though of course they're different
| from animation because they have built in motion blur
| (same as if you recorded with 1/24 exposure time vs
| 1/1000).
|
| mpv's video retiming works some of the time, but means it
| changes the pitch of audio which is sometimes
| unacceptable, same as old NTSC->PAL transfers.
|
| ...if your monitor has variable refresh rate why are you
| using retiming?
| mrob wrote:
| >They aren't TVs because they don't have one of 1. black
| frame insertion 2. 60->120fps motion interpolation
|
| Most older LCD TVs do not have either black frame
| insertion or motion interpolation. BFI causes motion
| artifacts (trailing ghost images) if the frame rate of
| the video is less than the refresh rate. Motion
| interpolation also adds its own artifacts.
|
| >mpv's video retiming works some of the time, but means
| it changes the pitch of audio
|
| The best way to use it is to set custom monitor timings
| (e.g. with xrandr) so that the adjustment needed is too
| small to detect. There are various scripts to automate
| this, although I haven't personally tried any (I just
| change mode manually).
|
| >if your monitor has variable refresh rate why are you
| using retiming?
|
| I have a VRR monitor, but I still use retiming because it
| only has a 6 bit panel, and VRR makes temporal dithering
| artifacts ("frame rate control") visible.
| jchw wrote:
| VideoLAN is responsible for a whole lot of open source code
| that benefits the entire video ecosystem, like
| x264/x265/dav1d. Even if you dislike VLC, I think this is
| underselling their contributions to the world.
|
| Also, I find VLC is a safe recommendation for someone who
| just wants to casually play some video files. It's fairly
| user friendly, it runs on literally everything, and it
| supports most multimedia formats anyone could ever care
| about. I like and use MPV, but I use VLC on some Android TV
| devices because it's readily available and runs buttery
| smooth on crappy hardware.
| UnlockedSecrets wrote:
| Nice! Is there any similarly good filter out there for frame
| interpolation? I love smooth videos just havent had the time to
| look around too much.
| 5e92cb50239222b wrote:
| Have you tried the built-in one?
| interpolation tscale=oversample
|
| It makes cheap animation (with low 'real' FPS) pretty smooth,
| and doesn't seem to affect other videos in any noticeable
| way.
| UnlockedSecrets wrote:
| Unfortunately this is not quite the same thing, It just
| plays around with how the existing frames are displayed
| instead of generating new ones based on the motion vectors
| in video files.
|
| It is best described by MPV's documentation at
| https://github.com/mpv-player/mpv/wiki/Interpolation
| nyanpasu64 wrote:
| One of my least favorite features of VLC (tied with network
| stream interruptions killing the playback rather than
| reconnecting) is that VLC guesses your audio hardware's
| sampling rate itself (rather than using the hardware's self-
| reported rate), and resamples even audio-only files that match
| your hardware's self-reported rate. And every time you seek in
| a file, VLC's guess of the hardware sampling rate is thrown
| off, causing VLC to start pitch-shifting the sound just enough
| (usually just barely, but sometimes up to 1 semitone) for you
| to notice and start doubting your sanity, if the audio pitch
| actually changed or if you're hallucinating things. There's a
| long-running bug report at
| https://code.videolan.org/videolan/vlc/-/issues/14287.
|
| I think PipeWire does something similar to synchronize multiple
| audio devices without a shared word clock, but I haven't tested
| how much its rate analyzer drifts when starting/stopping
| playback or in steady state.
| 867-5309 wrote:
| I have experienced this with IPTV on Kodi, but I've only ever
| noticed it on the BBC News countdown tune, sining a semitone
| up and down. AFAIK that's using ffmpeg
| vjerancrnjak wrote:
| Exactly the same thing happens with mpv if you shift the
| audio manually. I experienced that recently. After shifting,
| whenever I go forward or backward it gets out of sync + the
| performance decreases ( without the shift going forward or
| backwards is instant)
| wodenokoto wrote:
| > My favorite feature is "video-sync=display-resample". This
| gives you perfect frame pacing by synchronizing the video to
| vertical refresh ...
|
| Does that mean video in 23.976 frames per second will be sped
| up and play at 30?
| ac29 wrote:
| No.
| mrob wrote:
| You can force it to do that if you really want to, but by
| default it will speed it up to 24.00fps and play it
| alternating between 2 and 3 screen refreshes for each frame
| (i.e. 3:2 pulldown without the interlacing).
| zbuf wrote:
| Agree here. mpv plays for hours without a single frame upset.
|
| The final icing on the cake is I use a small LUA hook to set
| the refresh rate of the projector to match the source material.
| capableweb wrote:
| > Also great is MPV's support for arbitrary OpenGL shaders.
| This can include very complicated shaders, e.g. real-time
| neural network upscaling:
|
| Holy shit, I had no idea about this (that mpv could load OpenGL
| shaders nor that there is shaders that do RT neural upscaling),
| literally blowing my mind.
| leeoniya wrote:
| check this out: https://github.com/TianZerL/ACNetGLSL
| mrob wrote:
| For line art, try "FSRCNNX_x2_16-0-4-1_anime_enhance.glsl":
| https://github.com/HelpSeeker/FSRCNN-
| TensorFlow/releases/tag...
|
| Or if you don't want noise reduction, try
| "FSRCNNX_x2_8-0-4-1_LineArt.glsl":
| https://github.com/igv/FSRCNN-TensorFlow/releases (in
| checkpoints_params.7z)
|
| Both are IMO sharper and more accurate than ACNet.
| neurostimulant wrote:
| Wow this one produces even sharper images. Thanks!
| adamrezich wrote:
| I've been using mpv for the last couple of years as my main media
| player simply because it was the best one I could find that
| supports ReShade, because I'm a weirdo who likes fuzzy CRT
| shaders on my 90s television rips (and other things too)
| nonbirithm wrote:
| I was surprised to learn that mpv doesn't support the Raspberry
| Pi, and the maintainers don't seem interested in supporting it[0]
| even though VLC works fine.
|
| [0] https://github.com/mpv-
| player/mpv/issues/7492#issuecomment-9...
| litoE wrote:
| There's omxplayer as a command line video player for the
| Raspberry Pi.
| peter_d_sherman wrote:
| Source Code: https://github.com/mpv-player/mpv
| Sunspark wrote:
| I have never understood why this player doesn't have a GUI where
| settings can be adjusted. It only has a bare-bones window.
| Command-line has it's place, but I don't think poring over man
| pages to find the command-line switch to change an algo or
| whatever is called for is the correct interface for a video
| player.
|
| A video player is an interface for the human. Command-lines are
| better for things that need to interface with a computer.
| cyborgx7 wrote:
| Text is the universal interface. It can be easily be output and
| input by both people and computers.
|
| That said, there are plenty of video players with very robust
| GUIs. What's wrong with having one that is focused on people
| who want to use the command line?
| pessimizer wrote:
| There are plenty of wrappers for it that are even older than it
| (because they were once for mplayer/mplayer2.)
|
| If you're confused that the programmers of media playing and
| manipulating software aren't interested in GUIs that plenty of
| other people have volunteered to write, I don't know what to
| tell you.
|
| My favorite (really the only one I've used for many years) is
| smplayer. It gets everything about GUI right that VLC gets
| horribly wrong. Notably, its developers only work on a GUI, and
| don't develop mpv. It's cross-platform, too.
|
| edit:
| https://en.wikipedia.org/wiki/Mpv_(media_player)#Interface_a...
| Hamuko wrote:
| > _I have never understood why this player doesn 't have a GUI
| where settings can be adjusted._
|
| Have you ever had a look at how long the mpv settings
| documentation is?
|
| https://mpv.io/manual/master/
| majkinetor wrote:
| SMplayer is awesome frontend and cross platform.
| howeyc wrote:
| mpv is not for you.
|
| I think it's perfect.
| WhyNotHugo wrote:
| > I have never understood why this player doesn't have a GUI
| where settings can be adjusted.
|
| I'll start by saying that `mpv` is likely not for you.
|
| Personally, I see little value in such complex GUI. 99% of the
| times I double click on a video and I want it to play. I don't
| need a fancy wizard to customise any settings.
|
| I just have tiny config file I created in 2016 and it still
| works today -- and the fact that it's a text file means it's
| just been part of my dotfiles all this time and carries over
| onto new systems.
| thanatos519 wrote:
| double-click? So you /do/ use a GUI! I type 'mpv filename' in
| my terminal. I don't need a fancy GUI to choose my files.
| antonymy wrote:
| I share your sentiment. People make GUIs for MPV but I'd rather
| just use a media player designed for GUI users out of the box.
| Got nothing against ffmpeg, wonderful tool, just some things I
| think need a proper GUI.
| msmenardi wrote:
| I think the man page for MPV is a little too detailed.
| Sometimes all you need is a list of flags and a brief
| description of what they do - but some documentation (looking
| at you rsync and mpv) is designed to teach you mastery over the
| tool - which is a little overkill most of the time.
| badocr wrote:
| > Sometimes all you need is a list of flags and a brief
| description of what they do [...]
|
| $ mpv --list-<options|properties>
|
| Pipe to a grep-like program for keywords.
| MichaelCollins wrote:
| The detailed manpage is great. The more details the manpage
| has for each flag, the easier it is for me to find the flag
| I'm looking for by searching for related terms. Longer
| descriptions means a greater chance of my related search term
| hitting a relevant result.
|
| Common flags and short descriptions of them can be found with
| `mpv --help` or `tldr mpv`
|
| rsync is another example of a manpage I love. Very detailed
| means very useful. With a detailed manpage, I don't have to
| waste my time figuring out where the real manual is.
| 5e92cb50239222b wrote:
| You're not going to understand 95% of mpv's settings without a
| very detailed explanation anyway, unless you're one of its
| developers.
|
| Anyhow, I configured mine back when I switched to it (probably
| around 2013), and never had to touch it again. Doesn't seem
| like a huge problem.
| squarefoot wrote:
| > I have never understood why this player doesn't have a GUI
| where settings can be adjusted.
|
| I'm not into MPV, but as a MPlayer (http://www.mplayerhq.hu)
| user, I perfectly understand your point, however there's a
| reason some software still uses TUIs. Video players are
| different beasts compared to other apps; very often you end up
| changing one or more settings in a per video basis, which makes
| the text interface a lot more useable than having to look for
| that control to tweak among hundreds. Also, external interfaces
| can be added almost trivially; Mpv itself is embedded in a lot
| of GUI software without the user even noticing.
|
| When I first started using MPlayer (ages ago, had to compile it
| every time, codecs back then had to be "imported" from Windows,
| etc.) I also thought the text interface was clumsy and old
| looking, then I familiarized with it, used it on a daily basis
| to transcode videos using the MEncoder companion encoding
| software, and after some time MPlayer became, and still is, my
| favorite video player under Linux.
|
| > A video player is an interface for the human. Command-lines
| are better for things that need to interface with a computer.
|
| I have memories of assistants learning Wordstar key sequences
| faster than many current geeks learn vi ones. It's wonderful
| how sometimes humans can adapt.
|
| Just to clarify: I love well made GUIs; it's just that
| sometimes they're less necessary than we think.
| lostmsu wrote:
| The control trend lately is to have a global search in
| settings (and also commands).
| enasterosophes wrote:
| I chose mpv (and before that, mplayer) exactly because it
| doesn't have all that bling.
| MichaelCollins wrote:
| I never invoke mpv from my command line shell, I invoke it
| through my file managers (Dolphin or dired). I configure mpv
| using my text editor to edit the configuration file at
| ~/.config/mpv/mpv.conf. If I want to make on-the-fly changes I
| use my mouse and keyboard to invoke key bindings. If I don't
| have a keybinding set for whatever I want to change and don't
| want to edit my config for it, then I can use the built-in REPL
| to change it (but I very rarely have a reason to do this.)
|
| > _correct interface for a video player._
|
| That 'correctness' is subjective. It isn't correct for you, but
| it is for me.
| gourlaysama wrote:
| There are GUIs based on mpv that provide a user-friendly
| interface and just use mpv for playback, see Celluloid [0].
|
| [0]: https://celluloid-player.github.io/
| antihero wrote:
| If you want a GUI try IINA it is built on top of mpv and is
| polished.
| imbnwa wrote:
| That's what I use
| eqtn wrote:
| iina - for macos (based on mpv)
|
| https://github.com/iina/iina
| soderfoo wrote:
| iina is great -- wish it had cross platform support because it
| is one of the best mpv implementations I have seen.
| leeoniya wrote:
| don't forget to enable hardware accelerated decoding.
|
| i found it to be off by default in many installations.
|
| press "i" during playback to see if it's being utilized. or
| simply compare CPU usage before and after (should be drastic).
| also radeontop and intel_gpu_top will help in debugging / getting
| it working.
|
| https://wiki.archlinux.org/title/mpv#Hardware_video_accelera...
| whyoh wrote:
| I disabled hardware acceleration, it was on by default. I think
| seeking is faster with it off and I believe there was another
| advantage, which I don't remember now. I find that CPU usage is
| negligible, but YMMV.
| kiwijamo wrote:
| On older hardware it makes a huge difference. Also very
| useful if you are on a battery, in my experience it can be
| the difference between 2 hours or 6 hours of battery life. I
| think it's off by default because hardware acceleration
| sometimes introduces visual artifacts but these are so minor
| I would prefer the extra 4 hours of battery life and not
| giving a hot laptop. YMMV and indeed it may not be noticeable
| on newer hardware and maybe not an issue if there are no
| batteries.
| goombacloud wrote:
| It's the go-to player for watching a video with two subtitles,
| quite essential if you happen to watch a movie with someone and
| both need different subs.
| lambic wrote:
| I've always used mplayer for command line video playback. How
| does mpv compare to that?
| loeg wrote:
| To a first degree approximation, it's the actively-developed
| fork of mplayer.
| Hamuko wrote:
| mpv is the successor to mplayer2, which was the successor of
| mplayer.
| MikusR wrote:
| It is mplayer but better.
| msmenardi wrote:
| You can use --vo=tct if you're on console. Also I heard MPV has
| Sixel support now, but I couldn't get it working when I tried.
| MichaelCollins wrote:
| I'm sorry if this is obvious, but did you double-check your
| mpv was built with Sixel support? `mpv --vo=help` will list
| the video outputs your build of mpv supports; sixel should be
| listed there if your mpv was built with it, but I suspect
| most distros package mpv without sixel support.
| rob_c wrote:
| Have you never used anything other than a DVD or Windows media
| player? This is ancient!
|
| It's very good, but frankly, why is this news to anyone?
| cogman10 wrote:
| Meta: While these are good tools, what's going on here? Seems
| like a number of these older opensource projects have hit the HN
| frontpage today.
| Teknoman117 wrote:
| One of my favorite things about Mpv is that it's basically a
| clear cut example on how to use the FFmpeg api. It's written in a
| way that's fairly straightforward to follow, and was rather
| instrumental in me understanding the hardware acceleration API of
| FFmpeg.
| zekica wrote:
| Yes, that's true. I even contributed one feature to mpv. It was
| easy to port some features regarding VAAPI post processing -
| extra deinterlace modes and correctly handling bottom field
| first videos that Kodi had, but mpv didn't at the time.
| yboris wrote:
| My favorite is the _Media Player Classic Black Edition_ (MPC-BE)
|
| https://sourceforge.net/projects/mpcbe/ &
| https://github.com/Aleksoid1978/MPC-BE
|
| I love the (optionally) minimal UI it has.
| Sin2x wrote:
| Haruna is a nice front-end of it for Qt
| guessmyname wrote:
| I have the impression that the "Ten Thousand" [1] effect has
| increased quite significantly in the last couple of months.
|
| I have seen multiple submissions from different users pointing to
| homepages of software that is already very popular. I guess this
| is a sign that the current most active Hacker News users are also
| in the youngest age group, which makes all these programs look
| new.
|
| Just the other day someone posted about the Vala programming
| language [2].
|
| SpaceVIm [3], although, this was mostly a 2.0 release
| announcement.
|
| I wonder if Hacker News administrators have considered creating a
| separate page for these submissions to keep the front page clean.
| Basically, put previously-submitted links into a "revival" page,
| and novelty links in the "new" page.
|
| [1] https://xkcd.com/1053/
|
| [2] https://news.ycombinator.com/item?id=32113825
|
| [3] https://news.ycombinator.com/item?id=31986851
| badocr wrote:
| It's the reddit effect. As reddit's popularity keep increasing
| for the past 5 years or so, HN links posted on the platform get
| that much more attention. Specially true for indians,
| pakistanis and chinese.
| yakubin wrote:
| My favourite feature of mpv is small but neat: going frame-by-
| frame forwards _and_ backwards with the keys "." and ",". VLC
| can step forwards, but not backwards, which frustrated me a fair
| bit, because I like first stepping really fast forwards to go
| into the general vicinity of the frame I wanted to catch,
| necessarily overshooting the target a bit and then backing off a
| bit and narrowing down the frame with greater precision. VLC
| didn't allow me to do that, overshooting meant I needed to do the
| whole thing all over again; but mpv got me covered.
| kennywinker wrote:
| Can anyone who's used both explain the differences / advantages
| of this over vlc?
| whyoh wrote:
| It loads much faster than VLC and it also seems faster in
| general. The GUI is very minimalistic and you can leave only
| the video itself (with the 'no-border' setting). It has a bunch
| of nice little features/settings, but it requires some
| exploration and changing config files...
|
| I switched from VLC to mpv some years ago and never looked
| back. It's just better for opening random video/audio files,
| IMO.
| MichaelCollins wrote:
| mpv has better support for playing videos from the web. You can
| paste a youtube link into vlc's "Open Network Stream..."
| dialogue, but because VLC doesn't use yt-dlp for this it often
| doesn't work at all (it presently doesn't work for me) and
| works with fewer websites than mpv.
|
| Also mpv's json IPC interface is easier to use with better
| documentation than any of VLC's numerous remote control
| protocols (which aren't mentioned in the manpage, and have
| incomplete hand-wavy documentation spread across numerous
| poorly organized wiki pages.)
| capableweb wrote:
| One very neat feature, mpv can play videos (with sound)
| directly in your terminal (no extra windows needed):
| mpv --vo=tct 'https://www.instagram.com/p/CfZK86fozXa/'
| [deleted]
| metadat wrote:
| For one thing, VLC on macOS has become so unreliable it's more
| or less unusable. Randomly won't play valid video streams, slow
| or completely broken seeking, and even intermittently crashes.
|
| I switched to IINA and haven't looked back, it's incredibly
| good for most cases. Unfortunate that it's Mac-only software;
| not a multi-platform capable solution.
|
| https://iina.io/
|
| MPV is the only video player I'm aware of which is available
| for every common desktop platform and works consistently across
| them.
| yewenjie wrote:
| I love mpv. It is my default media player in both Linux and
| Android.
| assbuttbuttass wrote:
| One of my favorite features of mpv, it integrates with yt-dlp to
| play youtube videos just given the URL! mpv
| 'https://www.youtube.com/watch?v=dQw4w9WgXcQ'
| xfalcox wrote:
| Pair it with GPU acceleration for smooth and low CPU overhead
| playback for livestreams: mpv -vo=gpu
| --hwdec=vaapi --gpu-context=wayland
| https://www.twitch.tv/gorgc
| 5e92cb50239222b wrote:
| Shove that into ~/.config/mpv/mpv.conf (each parameter on its
| own line and without the dash prefix) if you don't want to
| repeat yourself over and over again.
| capableweb wrote:
| Worth noting, yt-dlp doesn't just handle YouTube (as the name
| and your comment might imply) but basically any multimedia on
| the web. Another example: mpv
| 'https://www.instagram.com/p/CfZK86fozXa/'
|
| Or mpv
| 'https://twitter.com/thesalaam10/status/1547180911606767616'
|
| And many more sites. Here is the full list of supported
| websites: https://github.com/yt-dlp/yt-
| dlp/blob/master/supportedsites....
| neurostimulant wrote:
| And with `--vo=tct` argument, you can watch youtube videos
| directly on your terminal! No GUI necessary!
| mpv --vo=tct "https://youtube.com/watch?v=dQw4w9WgXcQ"
| t-3 wrote:
| It can also use SDL or DRM to render video on the console. I
| use this for viewing video and images (even pdfs, with
| imagemagick) without a graphical environment.
| kitsunesoba wrote:
| Or if you want to play something without video at all for
| e.g. music livestreams, that can be done too. Example below
| uses the famous lofi girl stream. mpv --no-
| video --vo=null --ytdl-format='bestaudio/best'
| 'https://www.youtube.com/watch?v=jfKfPfyJRdk'
| badocr wrote:
| > mpv --no-video --vo=null --ytdl-format='bestaudio/best'
| 'lofi hip hop radio - beats to relax/study to'
|
| With --ytdl-format='bestaudio' there's no need to disable
| the video track or use the null vo.
| kitsunesoba wrote:
| Maybe that behavior is Linux-exclusive? Under macOS and
| Windows, if I only use --ytdl-format='bestaudio/best'
| with livestreams mpv will spawn a window with the video.
| badocr wrote:
| I'm on Windows as well. Just get rid of the 'best'
| argument for '--ytdl-format'. Also, 'bestaudio' is mostly
| only known as a keyword for Youtube videos.
| ufo wrote:
| I recommend this for watching lectures & other long videos.
| Compared to the web player mpv gives finer control of playback
| speed and seeking forwards and backwards.
| ews wrote:
| Emacs has a mode to control mpv for easy note taking which
| seems perfect for this https://github.com/kljohann/mpv.el
| mssdvd wrote:
| See also this https://github.com/karthink/elfeed-tube
| piffey wrote:
| Really great for studying other languages too. Can quickly go
| back and relisten to the same section over and over and over
| again without an ad popping in midway through a listen.
| 5e92cb50239222b wrote:
| mpv also does fine as a simple image viewer. Bind image mime
| types to /usr/bin/mpv, and you're golden. If you want a
| slideshow, run `mpv /path/to/image/dir`.
| abdusco wrote:
| One of the best features of mpv that I miss sorely on other
| players, (notably PotPlayer[0] on Windows) is that it has first
| class scripting support.
|
| You can write Lua/Javascript and bind it to a hotkey and run your
| own scripts, pass in current video, playback position, download
| subtitles etc.
|
| [0]: I use mpv.net on Windows, too, but PotPlayer has better UX.
| mrtweetyhack wrote:
| ranger_danger wrote:
| Still no crossfade support though, unfortunately.
| ksdnjweusdnkl21 wrote:
| Writing scripts for mpv is really fun. I would recommend it for
| anyone especially for people who are learning programming.
| There is a lot of room for innovation and creativity. The
| development feedback loop is quick, interactive and visual.
| disk0 wrote:
| For anyone already acquainted with emmylua/vscode-lua I'd
| recommend using my type declarations for mpv--need to push
| some commits for recent changes but it's completely
| functional
|
| https://github.com/disco0/mpv-types-lua
| pltnr wrote:
| Just curious why Lua is frequently used as plugin script? I
| would like to use an already familiar one like Python instead
| of to learn a new one.
| grumbel wrote:
| LUA is essentially build as a plugin language. It's simple
| and well behaved, very easy to spawn when you need it and
| throw it away when you are done with it. It can also be
| isolated, if you don't want to give people access to file-io
| functions for example, you just don't load them into the
| interpreter and everything works as expected.
|
| Most other language are not like that, they rely on global
| state and want to take full control your program. The
| interpreter also tends to be full of functions you can't get
| rid of, so they are impossible to secure. Even simple things
| like spawning two independent interpreters are often not
| supported. A language like Python really wants you to extend
| Python with modules, not extend your program with Python.
|
| Long story short, writing a Lua interpreter is just a couple
| of lines of code: https://www.lua.org/pil/24.1.html
| pimeys wrote:
| It is very easy to embed to C/C++ codebase, much faster than
| almost any other scripting languages (luajit) and adds a
| minimal amount to the binary size.
| capableweb wrote:
| Lua is so similar to Python that you could learn the basics
| in one afternoon since you already know Python. The official
| book is a great start: https://www.lua.org/pil/1.html
| Thaxll wrote:
| Problem with MPV is that they don't provide any compiled
| binaries.
| hocuspocus wrote:
| Is that such a big issue when binary packages are available
| from pretty much every package manager out there?
| shmerl wrote:
| I use it for most media playback, except some like MIDI that
| aren't supported.
| [deleted]
___________________________________________________________________
(page generated 2022-07-18 23:00 UTC)