43 ms·
Mpv – A free, open-source, and cross-platform media player
- deleted 2y ago[deleted]
- mathfailure 2y agoThe best media player available on linux. The worst GUI (none) out of the box. Bearable after tinkering a bit with configs.
- Bluestein 2y ago> The best media player available on linux Strong clam, this ... PS. For the controversy: Please note I am not disputing the claim - particularly when many claim this is the best player on any platform, not just Linux.-
- pengaru 2y ago> Strong clam, this ... What's better?
- lottin 2y agomplayer
- prurigro 2y agoIsn't mpv a more modern and maintained mplayer fork? Mplayer was my go-to for many many years, starting in the early 2000s, but I switched at one point and can't remember why. What do you prefer about mplayer?
- lottin 2y agoIf I recall correctly, for a brief time mplayer disappeared from Debian. At the time I evaluated various alternatives and mpv was one of them, but I switched back to mplayer as soon as it made its way back to the distribution. For me, mplayer is the standard media player. I guess I just don't see any reason to switch to mpv or to any other player.
- pengaru 2y agoI see no reason to cling to mplayer/mplayer2, mpv has pushed things forward from there. mplayer is what I used to use ages ago, can't think of a single thing I miss that it did which mpv doesn't. Like you, I was introduced to mpv through the debian disappearance, and it's been fine. Forks can be necessary to keep development active; it's one of the core features of FOSS.
- chungy 2y agomplayer has DVD menu support, mpv doesn't. I use Kodi if I need to navigate DVD menus these days, which is rare but it happens...
- chgs 2y agoI used played for 20+ years but moved to mpv recently as I ran into a couple of things player won’t work with. Struggling to see the benefit of mplayer over mpv today.
- loeg 2y agompv is an active mplayer fork.
- vocx2tx 2y ago> The worst GUI (none) out of the box. That's funny, for me that's exactly the best GUI out of the box. I actually did some tinkering to reduce the GUI parts even more, and added more keyboard shortcuts.
- sgc 2y agoI use SMPlayer as a front end for mpv (you can select mplayer or mpv as backend). Not sure if that is common or even a good idea. But I am generally happy with it.
- Glyptodon 2y agoThat's funny. SMPlayer was my preferred MPlayer front end before I switched to MPV years ago. And I've never really felt like I needed more GUI for MPV.
- quohort 2y agotry celluloid https://github.com/celluloid-player/celluloid https://github.com/celluloid-player/celluloid
- globular-toast 2y agoIt does have a GUI in the form of video overlays. For me it's perfect. By default it just shows the video which is both necessary and sufficient.
- w4rh4wk5 2y agoIs this worth a look when you are pretty happy with VLC already?
- baal80spam 2y agoYes, it is. I don't understand the cult of VLC to be honest. There are better media players, at least on Windows.
- djbusby 2y agoWe love VLC because it plays anything, everytime. And has done this, for a long time, since times when other players struggled. Maybe it's not the "Best" - it is still the goodest.
- literallycancer 2y agoVLC doesn't play everything though. mpv plays stuff that VLC can't play. I never have to worry about codecs or installing anything.
- djbusby 2y agoSure. My point is that VLC gets a special place. It "just works" for a decade before MPV, still does and across 3+ platforms! MPV is great too! I think it's important to also recognize how rad VLC was and continues to be.
- blooalien 2y agoVLC plays pretty much any media file from pretty much anywhere it can be stored, and it's got a pretty standard interface, so folks find it easy to understand how to operate it. That's it. No real "cult" situation there. Just an app that does it's job well. Same is true of mpv, but some people will prefer it (as I do) because it's lightweight and clean and quick (and all the stuff people also like about VLC).
- 2y ago
- jwells89 2y agoThis has always worked well for me, handling anything that’s thrown at it with ease. Things may have changed since then, but when I first encountered the project several years ago it seemed like the thing that made this project stand out compared to other player projects was a big emphasis on correctness and accurate playback. There have files I’ve encountered that for example VLC will play with quirks (color reproduction is not quite right, etc) that mpv plays perfectly.
- Bluestein 2y ago> There have files I’ve encountered that for example VLC will play with quirks (color reproduction is not quite right, etc) that mpv plays perfectly. Given how VLC is basically bulletproof and will play absolutely anything thrown at it - it's great to hear that mpv is up there ...
- mixmastamyk 2y agoWhile great in general, vlc has many small seek/sync issues, and also seems to be in maintenance mode.
- Bluestein 2y ago> to be in maintenance mode. Sad to hear.- PS. On a tangent, rethorically - baring bugs and security - at one point is (if ever) software "finished"? "We built this search engine. It works. The infrastructure has team enough to run it. But we have this huge payroll of people." So "improvements" and "features" (and constant UI and UX changes) ... ... "enshittification" ensues.- When is "good enough" ... good enough?
- nine_k 2y agoA web search engine is never done because spammers never cease attempts to.game it in new ways, and because new phenomena keep appearing on the web, from presidents posting official news on twitter to the proliferation of AI-generated texts with subtly incorrect information. A media player, though, has fewer challenges.
- ailurooo 2y agoi used to be able to go frame by frame with quicktime.. is there any modern video player that can actually do this?
- thegeomaster 2y agompv does it! Period key (.) for next frame, comma (,) for previous. Super handy.
- amlib 2y agoYou can also hold those keys to play normally at the speed set with [ and ], so you can actually play the video in reverse and slow motion or whatever. Be aware that it's usually very intensive on cpu time (and maybe gpu decoding if applicable) since it has to usually go back a whole keyframe and compute all frames between while doing that, which may result in less than smooth playback on some videos.
- chungy 2y agoReverse usually works significantly worse, at least with common video codecs that work on key frames and intraframes. Depending on your work flow, codecs that don't operate on keyframes/intraframes will actually provide mpv the capability of playing backwards at full speed (eg: rawvideo, ffv1, magicyuv...).
- entropie 2y agoThis is a build in feature that mplayer had and mpv has aswell . and , on keyboard go frame-to-frame, you can also up and downspeed with [ and ]
- righthand 2y agoOfftopic: vlc too
- pferdone 2y agoonly next frame
- entropie 2y agoI started to use it on linux a few years ago. Now its on every device, even on my android tablet. Its perfect. Minimalistic, sane defaults, fast and just works. It can even play natively over ssh. Its awesome > mpv sftp://mit@nyx/home/mit/Work/merged.mp4 Recently I needed a hotkey to rotate a video (which seems not like any player can easily do this; for mpv it was a 'r cycle_values video-rotate "90" "180" "270" "0"' in the in input.conf)
- ivanjermakov 2y agoYou can also play videos over http, many websites are supported, even YouTube: mpv <yt link>
- vocx2tx 2y agoIt uses yt-dlp as the download backend, so it works with anything that yt-dlp handles.
- nagisa 2y agoI have found this not to be as straightforward as this. In particular: 1. Although `yt-dlp` consistently is able to download videos at link speed (even when the said link is in multi-gig range!), streaming the video through `mpv` will not work as well and some videos would buffer every couple chunks. But that was in the past… 2. With recent changes to how videos are served and "protected", I'm still able to download them with recent versions of `yt-dlp`, but streaming a `yt-dlp` generated playlist will reliably fail to work (this is true for the newpipe android app too.) 3. Even back when streaming youtube worked, closed captions and other such features would not work by default. I download videos first, nowadays. And then play them with mpv anyway.
- mtlmtlmtlmtl 2y agoFor 1, there might be settings that can help. I used to use mplayer(of which mpv is a fork) to watch pirate streams of premier league games several years ago, via acestream. Since this was live, lag was a real issue; you can't buffer ahead when there's nothing to buffer yet. Eventually I figured out that mplayer had settings to do things like buffer for 2 minutes at the beginning of the stream before playing. You could also configure it by megabytes pre-buffered. This solved my lag issues very neatly. I can't remember what the settings were, it's been a long time and I don't have those config files anymore. But it should all be in the docs somewhere.
- coppsilgold 2y agoMPV has versatile scripts. For example you can cut and crop a video you are watching[1]. You can also introduce hotkeys for functionalities I have never seen in another player. I use this (input.conf) sometimes to normalize the brightness and colors of a scene I'm watching (may not work when using hardware decoding): n vf toggle normalize=smoothing=100 Or rotate a video: Ctrl+r no-osd cycle-values video-rotate "90" "180" "270" "0" [1] <https://github.com/occivink/mpv-scripts https://github.com/occivink/mpv-scripts>
- sweeter 2y agoit also has a robust Lua scripting interface. I made a tool in Golang and Lua that allows Mpv to treat torrent files and magnet links as if they were http links. You can then stream a torrent directly. People also don't realize that mpv not only has the ability to stream youtube videos but you can also search youtube on the CLI using mpv `mpv ytdl://ytsearch:query` it can also play videos directly in the terminal using ascii, sixel or kitty image protocol (which is by far the highest quality)
- abhishekjha 2y agoDo you have an example?
- ftk_ 2y agoNot OP but also wrote a similar thing for mpv. https://github.com/ftk/mpv-confluence/tree/torrserver https://github.com/ftk/mpv-confluence/tree/torrserver
- Bluestein 2y ago> I made a tool in Golang and Lua that allows Mpv to treat torrent files and magnet links as if they were http links. You can then stream a torrent directly. Increíble. Consider putting this up somewhere folks can find it.- > it can also play videos directly in the terminal using ascii Beats Star Wars over telnet :)
- 369548684892826 2y ago
- blfr 2y agoThe best media player in existence: superb minimalist UI, makes use of hardware accelaration, and just plays videos. Its continued excellence is one of the reasons why I will probably remain a pirate for life. Streaming services spend millions on their players and don't come close.
- FabHK 2y agoIt seems to me that YouTube cripples their web player on purpose to "entice" you to download their app and upgrade to premium.
- factorialboy 2y agoGoat
- etra0 2y agoA fantastic mediaplayer, quite minimalistic and performant; it does what it's supposed to do! Also has a fantastic commit where the author rants about locales: https://github.com/mpv-player/mpv/commit/1e70e82baa9193f6f027338b0fab0f5078971fbe https://github.com/mpv-player/mpv/commit/1e70e82baa9193f6f02... worth a read for some chuckles.
- beagle3 2y agoA long, informative read, with some profanities. Highly recommended! 25 years ago, Spolsky wrote an article called “everything you wanted to know about Unicode and character sets”. Those of you who only lived in the post Unicode/UTF world might find that one informative as wel.
- josephg 2y agoAs strange as it is to say, I think avoiding problems like this might be one of the biggest productivity boosts from new languages like Go, Rust, Swift, etc. New ecosystems get a chance to “do over” the standard library and flush all the horrible legacy choices made before we knew better (locales, UTF16, etc). The standard library in Zig, Go, Rust, and many others is miles ahead of the C standard library or posix api. That is reason enough to use them.
- b112 2y agoI'm skeptical that rust magically deals with, for example, character sets in 30 year old subtitle files, in a way that makes C seem inadequate. Legacy compatibility has value.
- Dylan16807 2y agoThe correct place to handle character sets is when you're reading the file, not to sprinkle it all throughout your program.
- josephg 2y agoRight. And the rust standard library provides (in my mind) the right API for this. Strings are always internally utf8. But they have constructor methods to create strings from UTF16 bytes, or utf32 or whatever. Rust isn’t unique. Swift, Go and Python3 all expose more or less the same api. C’s standard library, with the benefit of hindsight, is uniquely terrible here.
- thegeomaster 2y agoJoining the praise in this thread. Extremely reliable, fast, versatile, plays anything. What I haven't seen mentioned is that it has 1- or 2-key keyboard shortcuts for almost everything, down to adjusting audio/video delay, subtitle size and offset, etc etc. Once you've had the experience of adjusting the video just how you like it in 5 seconds with a series of keypresses without having to pause or disrupt the playback, you'll never want to go back.
- Bluestein 2y agoIt feels like the "Vim" of video players.-
- palata 2y agoI have been using mpv on Linux for like 10 years, it's simply amazing. No complaint, it just works. Highly recommended.
- iLemming 2y agoWhat's cool that you can control it from your editor. It feels so nice managing YouTube video playback from Emacs, makes the note-taking so easy. elfeed-tube/elfeed-tube-fetch command lets you follow the transcript, while ignoring commercial bits. You can basically search through the text and play it from that point.
- Agingcoder 2y agoI didn’t know mplayer had been forked - this looks good to me. The primary reason why I used mplayer in the early 2000s was performance, both in terms of cpu and for lack of a better word ‘ smoothness ‘. Basically all other players seemed to produce choppy videos ( including regular dvd players ) but mplayer didn’t ( and there was no motion interpolation). A friend of mine told me that mplayer was very accurate ( ie each frame lasted exactly the same duration), unlike most players on the market at the time and this explained the ‘smooth’ feeling. Is this smoothness advantage still the case ? Would anyone know why it felt like that years ago ?
- jcelerier 2y agoIt's impossible for video players to be exactly accurate on normal monitors as most computer monitors don't handle movie frame rates. Either a frame gets skipped or elongated here and there, audio get resampled while video speed changes, etc. but there's definitely no silver bullet due to imperfect hardware not matching movie data formats
- globular-toast 2y agoA lot of monitors these days support a kind of variable refresh rate like Freesync, so this should be possible. I've never actually got it to work with AMD, Linux and mpv, though.
- loeg 2y agoIt's relatively easy to get 100us level precision in CPU wait and mpv has 42ms (42,000us) to emit each frame (at 24fps). Nevermind that the monitor refresh is likely 60fps or better so each frame lasts for two+ monitor frames anyway. As long as it is consistent with each frame timing it should be very rare that a video frame is skipped or doubled up.
- globular-toast 2y agoFrames shouldn't be skipped but if the monitor is at 60Hz and the video is at 24 then many frames will have to come early or late. That's what causes the stutter that is most apparent on slow planning scenes. It's like the reel in the projector is being fed through in a jerky manner so each from lines up with one of the monitor frames rather than going through at constant speed like it's supposed to. There's no way around this. However with 120Hz monitors you just display one frame every 5 frames and no jerky motion is required (except the fact that US releases are at 23.976fps, not 24, so a frame will have to be doubled every now and then I guess, or maybe the soundtrack is just pitched up to 24? Don't know).
- t-3 2y agoMy favorite thing about mpv is that it works under the console using framebuffer or drm. This can be used with configuration or scripting for image viewing, reading pdfs, and more without needing needing a lot of specialized tools, especially on non-linux platforms where graphical framebuffer tools aren't available. Tmux +(e)links + mpv can nearly completely obviate the need for a graphical environment and removes a lot of distracting things from view.
- HPsquared 2y agoCan it do smooth scrubbing (i.e. scrolling the progress bar)? So many media players only show the key frames when scrubbing, making it a much less pleasant experience. Some mobile phones (Apple, Samsung) built-in media players seem to do it nicely, but I've never found a desktop media player that does it (VLC can't). Probably would require a lot of extra decoding behind the scenes to extract all the frames, but worth it on a modern machine.
- arp242 2y agoI don't really know what "scrubbing" is, but If you add "exact" to seek then it will use exact (non-keyframe) seeks. I think that's what you want? For example from my input.conf: Right seek 5 # In seconds; these are limited by keyframes Left seek -5 Shift+Right seek 2 exact # Smaller non-keyframe-limited, seeks with shift Shift+Left seek -2 exact Obviously, this is slower. Sometimes much slower (depending on the file).
- latexr 2y ago> Obviously, this is slower. Sometimes much slower (depending on the file). Anecdotally, I’d change that “sometimes” to “often”. After years of using `exact` I finally stopped. It always felt that the wait was longer than going to the previous keyframe and rewatching the bit. Now if I could only find the perfect timing to go back, though.
- arp242 2y agoA lot of stuff I watch is 720p, and it's okay with that. But with some types of higher quality files it can be (very) slow. That said, I have replaced most of my "exact seeks" with "sub-seek"; in input.conf: Alt+Right sub-seek 1 # Go to next/previous sub (within demuxer-readahead-secs) Alt+d sub-seek 1 Alt+Left sub-seek -1 Alt+a sub-seek -1 And then in mpv.conf: demuxer-readahead-secs=120 # sub-seek only works within this cache demuxer-hysteresis-secs=60 # Fill cache only if lower than this; saves battery This allows me to fairly quickly skip past stuff that's not too interesting, while still actually following the gist of what's going on. I think it's also bound by default, but I'm not sure what that is from the top of my head. You'll definitely need to set that cache as it's only 2 seconds or so by default.
- gioo 2y agompv is awesome. Shout-out, in no particular order, to: - Seeds of Might/JySzE's base `mpv.conf`[1] - uosc, a feature-rich but still minimalist UI[2] - thumbfast, a fast thumbnailer to be used with uosc or another custom UI[3] - Eisa01's SmartSkip, which allows to skip intros & more (audio-based)[4] [1] Windows: https://gist.github.com/JySzE/db4149cad726b3b6955dca8d47a19721 https://gist.github.com/JySzE/db4149cad726b3b6955dca8d47a197..., macOS: https://gist.github.com/JySzE/34ee131da3974811a9469e1e3b7d4d34 https://gist.github.com/JySzE/34ee131da3974811a9469e1e3b7d4d... [2] https://github.com/tomasklaen/uosc https://github.com/tomasklaen/uosc [3] https://github.com/po5/thumbfast https://github.com/po5/thumbfast [4] https://github.com/Eisa01/mpv-scripts#smartskip https://github.com/Eisa01/mpv-scripts#smartskip
- Cyph0n 2y agoNot to take away from the work done on the plugin, but that’s a “basic” skip intro implementation. To reliably be able to find intros/credits, you need to some non-local analysis - basically, you need to look for common chunks of audio across episodes in a season or entire show. I wrote a CLI tool that can do this, albeit it’s not really “finished” and probably will never be. My initial goal was to use it to develop a Jellyfin plugin, but then I discovered that there was already such a plugin :) https://github.com/aksiksi/needle https://github.com/aksiksi/needle
- tbeseda 2y agoIf anyone is looking for the mpv core with a GUI on macOS, take a look at IINA https://github.com/iina/iina https://github.com/iina/iina
- radicality 2y agoIt’s also the only way I can play HDR on macOS that looks decent (besides the native players like QuickLook/Quicktime/Photos). I went into a rabbit hole recently playing iPhone-recorded Dolby hdr videos and tweaking all the various mpv settings but nothing really looked the same as in Photos. Iina is closer but also not exactly the same as the native players.
- SSLy 2y agoinfuse will also do good job, but it's using apple engine instead of ffmpeg, and it's paid for the good stuff https://apps.apple.com/us/app/infuse-video-player/id1136220934 https://apps.apple.com/us/app/infuse-video-player/id11362209...
- galad87 2y agoiPhone-recorded Dolby Vision videos uses an additional metadata called "Ambient Viewing Environment", and I don't think any third-party player supports it at the moment. https://developer.apple.com/documentation/technotes/tn3145-hdr-video-metadata https://developer.apple.com/documentation/technotes/tn3145-h...
- arch1t3cht 2y agoIINA has issues with color space conversions. I've heard that the specific issue is that it always (incorrectly) assumes a BT601 matrix for all videos, though I haven't verified it myself and cannot really right now. (I did verify its colors differing from stock mpv before writing this comment, though.) Various mpv wrappers exists, but for reasons like these stock mpv is the only fully reliable version.
- yborg 2y agoHuh, that explains it, I was wondering why I was having problems with some video that VLC would even playback correctly, I didn't think to try the stock mpv.
- matricaria 2y agoOn macOS there is IINA which uses mpv under the hood but with a more native GUI.
- Venn1 2y agoIf you're on Linux, don't forget to enable hardware acceleration by adding hwdec=auto to mpv.conf. Works with AMD/Intel/NVIDIA. https://interfacinglinux.com/2024/01/10/hardware-acceleration-with-mpv/ https://interfacinglinux.com/2024/01/10/hardware-acceleratio...
- synergy20 2y agogreat to know this. thanks!
- NavinF 2y agoWhy would that be disabled by default?
- diggan 2y agoDoesn't work on all systems, I presume. Better to default to something that definitely works everywhere. https://github.com/mpv-player/mpv/blob/a3baf94ab9f3b43a8027d74c43991a3c2da732e0/etc/mpv.conf#L69-L73 https://github.com/mpv-player/mpv/blob/a3baf94ab9f3b43a8027d... Would be appropriate to have true/false/auto instead of auto==true though, so auto wouldn't use it unless it confirmed to be working.
- NavinF 2y agoStill, isn't this bizarre? Over the last couple of decades using Windows and macOS across many machines, I've encountered one time I had to mess with settings like this. That's the time I temporarily disabled hw accel in chrome so I could screenshare and watch a show with someone. Meanwhile on Linux you gotta configure every app one at a time because sane defaults and auto configuration weren't invented here.
- crossroadsguy 2y agoBecause if you don't have to enable a flag or two in a text config file what's the fun of using Linux after all :)
- 2y ago
- adamomada 2y agoMac users can get a very nice front end to mpv with https://iina.io https://iina.io Bonus trivia: Plex Media Player uses mpv as the video player
- causality0 2y agoThat is... not a glowing endorsement. I've had more bugs and player failures from Plex than any other media software I've ever used.
- Larrikin 2y agoStreaming or player errors? Plex has basically never failed to play any video I've ever given it, but a bad connection can totally ruin streaming. I wish they would implement pause and allow to buffer.
- causality0 2y agoIn my experience Plex has a serious problem with determining whether or not it's capable of playing a file back directly without converting. I regularly have to switch it to "convert automatically" to make a file play.
- Hamuko 2y agoWhat can be directly played and not directly played are just lists of formats that Plex bakes into the app, and not really anything to do with mpv, right? https://github.com/ambroisemaupate/plex-profiles/blob/master/Chromecast.xml https://github.com/ambroisemaupate/plex-profiles/blob/master...
- SSLy 2y agoplex uses terribly old build of mpv with questionable config
- arch1t3cht 2y agoIINA has various issues that mpv does not have, in particular with color space conversions (see https://news.ycombinator.com/item?id=41278331 https://news.ycombinator.com/item?id=41278331 for a few more details)
- pentagrama 2y agoHappy VLC user here, but might give this a try, I want to find a better UX with the player controls, like a way to pin the controls bar when full screen (it disappears after some seconds), a 10s forward/backwards control, bigger buttons, less bloated settings, less features that I don't use like radio and other stuff. But one thing that confused me seeing that homepage is that it shows a player UI screenshot, but it says " mpv is a free (as in freedom) media player for the command line", isn't just for the command line right? I assume you can install it as an app and it has an UI like VLC. (I'm on the phone rn will check it on my PC later).
- SSLy 2y agoyou can just drag-n-drop a file on top of the window and it'll promptly get played
- arp242 2y agompv has a UI for things like seeking forward and backward, displaying info, etc. But you typically start it like: % mpv file.mp4 That's what they mean. It doesn't really have things such as "File → Open" like VLC has. At least not out of the box, but it's scriptable with Lua and there are scripts and even entire "alternative frontends" that can do this. It can also be remote controlled via a socket; I built an audio player like this; works pretty well. In general, if you want a "Windows-like" or "macOS-like" experience then VLC is pretty good. If you want a more "unix-beardy" experience then mpv is pretty good.
- btdmaster 2y agoIt does have a drag-and-drop window if you start it with `mpv --profile=pseudo-gui` (I think the same as its .desktop file)
- pentagrama 2y agoThanks for your response. Understand. So MPV may not be for me, I don't know how to use a command line app, I remember have to use to fix an Ubuntu issue and the UX was painful to me.
- deleted 2y ago[deleted]
- foresto 2y agoIt's excellent with companion tools as well. For example... Streamlink, for watching live streams without a web browser: https://streamlink.github.io/ https://streamlink.github.io/ Syncplay, for remote movie parties: https://syncplay.pl/about/syncplay/ https://syncplay.pl/about/syncplay/
- amlib 2y agoMy favorite feature of mpv so far is being able to apply CRT shaders in real time to content. This solution also handles properly downscaling HD videos into actual 240p buffers that then gets upscaled to your screen resolution by the shader. https://i.imgur.com/akmgzxX.png https://i.imgur.com/akmgzxX.png https://github.com/hhirtz/mpv-retro-shaders https://github.com/hhirtz/mpv-retro-shaders
- shpx 2y agoOn my Macbook Air, mpv adds an orange tint to videos so I hate when I have to use it because it's the only player that can play a file I downloaded.
- literallycancer 2y agoDo you have the Apple silicon version? The brew package is messed up somehow IIRC a the up to date version for Apple silicon doesn't have the graphical shortcuts (I don't remember what brew calls these), but the one that does is for the Intel CPUs.
- lairv 2y agoI use it to inspect video frames by frames, particularly being able to go back one frame. VLC doesn't support it, this thread about the feature is hilarious https://forum.videolan.org/viewtopic.php?t=120627 https://forum.videolan.org/viewtopic.php?t=120627
- sergiotapia 2y agoi wonder why he's such an ass about it, and totally adamant that it's impossible when multiple players already do this fast. ego?
- aaplok 2y agoHe mentions in the thread that he had to delete posts offensive to the developers. Maybe that's why? In fairness to him, he offers the posters an opportunity to propose a technical solution and responds to all the posts that do it. It is interesting that nobody in the thread went to check in the code of mpv, smplayer, etc. to see how it's done there. Surely this would be the best response to his request for technical suggestions?
- efilife 2y ago> It is interesting that nobody in the thread went to check in the code of mpv, smplayer, etc. to see how it's done there. Surely this would be the best response to his request for technical suggestions? Maybe because these users just can't code?
- aaplok 2y ago> Maybe because these users just can't code? It would be still interesting that the intersection between the set of users who claim on this forum it's possible and the set of users who can code is empty.
- efilife 2y agoThe users noticed that other players can do that, so it wasn't hard to deduce this is possible. You don't need to know how to code to notice that someone, somewhere had done something
- lights0123 2y agolibmpv is also amazing. It's a simple C API that allows you to render each frame into an OpenGL framebuffer or pixel array, using a fully hardware-accelerated path for the former.
- preisschild 2y agoLove the use of one of the best Kubrick scenes IMO on the main site
- YuccaGloriosa 2y agoI added a hotkeys for change subtitles scale...well worth it
- xwall 2y agoDoes anyone here know more features that MPV offers that VLC and MPC don't, considering they are all free and open-source?
- rafaelgoncalves 2y agoLike anothers comments said, mpv has some awesome native hw decoding and you can play frame by frame, previous and next, vlc you can only do next [1] (awesome thread btw). :) And mpc/mpc-hc is discontinued [2]. [1] https://news.ycombinator.com/item?id=41278203 https://news.ycombinator.com/item?id=41278203 [2] https://news.ycombinator.com/item?id=41277818 https://news.ycombinator.com/item?id=41277818
- SirMaster 2y agompc-hc is not discontinued. https://github.com/clsid2/mpc-hc https://github.com/clsid2/mpc-hc Plus there is also mpc-be which is actively developed and pretty much the same. https://github.com/Aleksoid1978/MPC-BE https://github.com/Aleksoid1978/MPC-BE
- dither8 2y agoIn my input.conf file I've created filter keyboard shortcuts: F1 af toggle "acompressor=ratio=4,loudnorm" F2 vf toggle "bwdif" First one is an alright dynamic range compressor (makes the loud parts quieter and quieter parts loud). Second is a deinterlace at default settings. These are standard ffmpeg filters and mpv let's you turn these on in real time.
- azizLIGHT- 2y agoI amalgamated some audio filters to cycle through on a F1 press - Loudness Normalization: "lavfi=[loudnorm=i=-14.0:lra=13.0:tp=-1.0]" - Loudness Normalization + Mild Tinnitus Filter: "lavfi=[loudnorm=i=-14.0:lra=13.0:tp=-1.0,equalizer=f=6000:width_type=o:w=2:g=-20]" - Mild Tinnitus Filter: "equalizer=f=6000:width_type=o:w=2:g=-20" - Aggressive Tinnitus Filter: "equalizer=f=4000:width_type=q:w=1:g=-30,equalizer=f=6000:width_type=q:w=1:g=-30,equalizer=f=8000:width_type=q:w=1:g=-30" - Bass Reduction: "bass=f=210:g=-17.7" - Alternative Loudness Normalization: "loudnorm=linear=no" - Dynamic Audio Normalization: "dynaudnorm=s=0" - None: "" F1 cycle-values af "lavfi=[loudnorm=i=-14.0:lra=13.0:tp=-1.0]" "lavfi=[loudnorm=i=-14.0:lra=13.0:tp=-1.0,equalizer=f=6000:width_type=o:w=2:g=-20]" "equalizer=f=6000:width_type=o:w=2:g=-20" "equalizer=f=4000:width_type=q:w=1:g=-30,equalizer=f=6000:width_type=q:w=1:g=-30,equalizer=f=8000:width_type=q:w=1:g=-30" "bass=f=210:g=-17.7" "loudnorm=linear=no" "dynaudnorm=s=0" "" https://reddit.com/r/mpv/comments/xf8p9t/movie_volume_compression/iolj3za/?context=3 https://reddit.com/r/mpv/comments/xf8p9t/movie_volume_compre... https://pastebin.pl/view/2f48e64c https://pastebin.pl/view/2f48e64c
- Klover 2y agoInstead of using 2 compressors in tandem, it might be better to set the very good one to your preference: F1 af toggle "loudnorm=I=-14:LRA=1:tp=-1:linear=false:dual_mono=true" The I=-14 is the target 'volume', which makes it as loud as YouTube and Spotify, setting it to -23 will be much quieter, but gives you more dynamic range. LRA=1 goes from 1-50, with 1 being the most compressing which is probably what you want in this case. TP=-1 sets the limiter to -1dB, which is plenty of clipping threshold because loudnorm calls the resampler for 192kHz before working in dynamic mode. Linear=false because we use dynamic mode here and cannot even use linear mode. Dual_mono=true makes -14 as loud for mono as stereo sources. Since loudnorm adjusts volumes and sets limits for you, you can forego mpv's audio downmixing if your target is stereo and simply put all your channels together before bringing them to loudnorm: F1 af toggle "pan=stereo|c0=FC+LFE+FL+BL+SL|c1=FC+LFE+FR+BR+SR,loudnorm=I=-14:LRA=1:tp=-1:linear=false:dual_mono=true"
- dbcooper 2y agoWhat are the best upscalers for MPV these days?
- loeg 2y agompv is the most active fork/evolution of the historical "mplayer" player of yesteryear. I've been using this program in one form or another for probably 20 years now. It's great; highly recommend.
- newsclues 2y agoI started using it after the latest Ubuntu version broke VLC, and am quite pleased
- devwastaken 2y agoThe only player that has proper HDR playback support and proper HDR to SDR conversion plus GPU accel.
- FrostKiwi 2y agoCannot recommend --video-sync=display-resample enough. The one reason I use mpv on every OS over every other media player
- navigate8310 2y agoCan you explain what it does?
- shmerl 2y ago> Resample audio to match the video. This mode will also try to adjust audio speed to compensate for other drift. (This means it will play the audio at a different speed every once in a while to reduce the A/V difference.) I'm not sure what's the benefit of that is though.
- FrostKiwi 2y agoIt's makes so the frame pacing fits the display refresh rate, making viewing a lot more pleasant and smoother. Eg.: Your Screen is 60hz, but the video is 59.97hz, then there will be a dropped frame. `--video-sync=display-resample` speeds the video up by a tiny percentage to make every display refresh match a new video frame. The correction factor is recalculated every frame and can be viewed by pressing I. This makes way more difference that one would imagine and makes 60hz gameplay look hyper smooth, even though not much changed. Frame pacing really matters. Applies to very closely matching framerates or multiples of (eg. 60hz screen with 29.97hz video), not to bigger differences like 50hz vs 60hz. Drawback: MPV will be forced to run at screen V-Sync, draining battery faster. If your screen is 60hz, but the video is 29.97hz, MPV will re-draw the screen at 60hz, instead of just 29.97hz, doubling GPU load.
- shmerl 2y ago60 Hz display is a bad case to begin with. How visible it is let's say on 180 Hz one? Though ideally, may be display should use adaptive sync to the player rather than the player trying to hack around the video to display?
- lossolo 2y agoDoes anyone else have a problem with it on Mac when trying to open videos using the 'Open With' dialog in Finder? I see it start for a second, and then it just quits. It works properly from the command line
- npteljes 2y agoMy default player is VLC, because it's a great generalist for video, audio and video inputs, but I appreciate mpv very much too. Especially useful on CPU limited devices, I get more performance out of it than any other player.
- zephyra334 2y ago[dead]
- solegrammarian 2y agoLicensed on a GNU General Public License (GPLv2+) except for the /video/out files which appear to be either unidentifiable or proprietary code rewritten from nVidia, and another unnamed company's repository.
- opan 2y agompv is one of my favorite pieces of software, incredibly useful and high quality, enjoyable to use. Right up there with (neo)vim, openssh, tmux.
- omeid2 2y agoThe MPV of images for linux is IMV: https://sr.ht/~exec64/imv/ https://sr.ht/~exec64/imv/
- kelvie 2y agowith a couple of lines in ~/.config/mpv/mpv.conf, mpv is the mpv of image viewers: image-display-duration=inf autofit-larger=100%x100%
- slmjkdbtl 2y agoLove the scripting system. I spend 100% my time to write scripts for mpv and vim and 0% for actual work.
- Perroboc 2y agoIf using KDE, I recommend Haruna as a frontend. Really easy to use!
- varenc 2y agoI absolutely love mpv. And if you have a Mac check out IINA. It’s just a relatively thin GUI over the mpv core.
- dsp_person 2y agoI love their section on how to embed mpv in other apps [1]. Too bad there's not an XEmbed equivalent for Wayland [2]. [1] https://github.com/mpv-player/mpv-examples/blob/master/libmpv/README.md https://github.com/mpv-player/mpv-examples/blob/master/libmp... [2] https://github.com/mpv-player/mpv/issues/9654 https://github.com/mpv-player/mpv/issues/9654
- feverzsj 2y agoLibmpv also has a much better api than libvlc.
- tobyhinloopen 2y agoMPV can play stuff VLC can’t, and it’s HDR support is superior
- gorgoiler 2y agoThis is an extremely venerable project, formerly known as mplayer. There are half a million commits going back to 2001, and that’s just from when the CVS repo was converted to Subversion. streamlink and mpv on a fanless Minix z100 running Ubuntu was a nigh-on perfect Olympics experience. https://streamlink.github.io/ https://streamlink.github.io/ https://www.minix.com.hk/products/z100-0db-fanless-n100-mini-pc https://www.minix.com.hk/products/z100-0db-fanless-n100-mini...
- thrdbndndn 2y agoI don't think mplayer and mpv are the same thing. It forked mplayer (among others), but mplayer is still its own thing.
- smeg_it 2y agoI switch from mplayer to mpv some years ago but I don't remember when. I use it daily as my media center player.
- ctenb 2y agoI love mpv. But when I pause and resume the video, the first few seconds are jittery. I've not encountered that on other players. Does anyone know why this is?
- Aardwolf 2y agoFor me I have that with VLC and MPV is the stable one (in Archlinux). In my experience, trying different sound output device or module settings sometimes fixes such issues (and usually pulseaudio is the laggy one)
- ctenb 2y agoBoth sound and video are stuttering for me, would that still be caused by audio issues?
- Aardwolf 2y agoThese two do seem connected, at least in my case, maybe the video is waiting for the audio codec. Of course your issue could be something entirely different than what I'm typically encountering! I have like 3 things trying to be audio device on my linux (of which the graphics card is the most unwanted one and sometimes it randomly manages to take over despite me not changing any settings) and the list of audio modules that show up is simply enormous (pulseaudio, pipewire, alsa, ...), some of those make VLC stutter, others don't. It's a mess but at least pipewire works better than puseaudio in my case...
- Simon_ORourke 2y agoAwesome, any open-source cross-platform media player is always welcome in my setup!
- ho_schi 2y agoYou can use mpv on the framebuffer-terminal. Pass the option —vo=drm and it works flawlessly with free drivers for AMD, Intel or Nvidia.
- kinibha 2y agoUsing for last couple of years, its best.
- ksdnjweusdnkl21 2y agoIt sounds stupid but the killer feature for me is possibility to have multiple subtitles visible, all easily configurable with a few keybinds (track, offset, position, size etc). No streaming service provides this, and they actively omit subtitle languages that aren't "relevant" to your geolocation. I cannot respect a service like that.
- cenamus 2y agoEspecially for things like language learning they are amazing, but services like Amazon show like two (English and the local language) out of the 30 something they have available. And I won't even go into the difference of subtitles and dubbing...
- ksdnjweusdnkl21 2y agoFor language learning there are some scripts that allow you to hover words and show translations for them. I haven't used them myself with mpv, but I found that kind of tools to be invaluable on a browser when learning a language with a foreign script.
- scbrg 2y ago+1. This is a fantastic feature. I haven't even bothered learning the keybindings (perhaps I should), I just start with --sid1= and --sid2= and it works well enough. Neither me nor my significant other are native English speakers, but we have different native languages. I'm comfortable enough with English, but like having English subtitles since I have a hard time with some dialects and occasionally just miss a word or two due to noisy audio. My SO likes having subtitles in their native language. Being able to have multiple subtitles makes it possible for both of us to get the experience we like, at the cost of a little screen real estate. Well worth it.
- ksdnjweusdnkl21 2y agoThey are not default keybinds, but like any configuration can be cycled or set at runtime. Actually I don't use the keybindings much directly since my default config usually is fine, but have a remote GUI to configure it when needed.
- pahn 2y agoMpv is great! And also the only player I found to be externally controlable, e.g. through a hardware jog/shuttle or an Arduino. This might be outdated (from 2018), but for reference (me talking to myself ;): https://softwarerecs.stackexchange.com/questions/53208/video-player-with-external-control https://softwarerecs.stackexchange.com/questions/53208/video...
- cranberryturkey 2y agoFor a web media platform checkout https://zymo.tv https://zymo.tv
- _V_ 2y agoI switched to MPV years ago - for some reason VLC started to stutter when opening a file, which is quite annoying. It does not matter whether it is local ol remote file, format does not matter - every open and every seek will trigger this few-second long stutter. MPV does not do this, so over the years I began to use it as my daily driver.
- natrys 2y agoThis is S tier software. I remember using this on a laptop with 2gb RAM years ago. The combo of mpv and youtube-dl could deal with large number of sites (not just youtube), when even the browser struggled.
- Sporktacular 2y agoI think youtube-dl is no longer under development. Any suggestions for an alternative?
- mzajc 2y agoyoutube-dl is still under development (last commit at the time of writing was 2 weeks ago), but there are forks with more features, such as yt-dlp.[1] [1] https://github.com/yt-dlp/yt-dlp https://github.com/yt-dlp/yt-dlp
- natrys 2y agoyt-dlp[1] has now taken on that mantle. I think mpv nowadays just recognises yt-dlp as the de facto alternative, but if yours doesn't then you can just put this in your mpv.conf: script-opts=ytdl_hook-ytdl_path=yt-dlp [1] https://github.com/yt-dlp/yt-dlp https://github.com/yt-dlp/yt-dlp
- deleted 2y ago[deleted]
- haunter 2y agoNo DVD or BD menu support as I've tried now
- Narushia 2y agoApparently there is partial support for it: https://github.com/mpv-player/mpv/issues/14370#issuecomment-2212578142 https://github.com/mpv-player/mpv/issues/14370#issuecomment-... This should let you play a VIDEO_TS folder, ISO, or an actual disc… with the caveat that you need to figure out the coordinates of the menu yourself by using an external tool.
- Thaxll 2y agoMPV is great for powerusers, for the vast majority of people just use VLC. I used both over the year and there are still things that are really annoying in mpv: - you can't render on a Chromecast - opening a file that does not work does nothing, you don't know what's happening, is the file corrupted, is the codec not supported ?? - the no ui idea is nice for opening a single file, but then you go to the rabbithole of millions of settings / config to do anything more complicated, playlists? ( why can't I drag and drop on the window ) - it's hard to compile, so it's up to you to find up to date version on your distro
- literallycancer 2y agoIf your distro has outdated packages, that's a problem with your distro. You can always just open files with a CLI if you want to see the error messages. What do you mean can't drag and drop on a window? That's literally how you add subtitles or open a file if you opened mpv from the shortcut, rather than by opening a file.
- Thaxll 2y agoNone of the distro keeps package up to date with mpv. Only rolling one are probably updated. Adding a file does not enqueued them, it just open it and play it right away.
- valenceelectron 2y agoHold shift while dropping the file to enqueue it. At least on macOS that works.
- zamubafoo 2y agoNever had to deal with your third point, I just open it via the CLI and it's pretty verbose regarding issues it encounters.
- valenceelectron 2y ago>- opening a file that does not work does nothing, you don't know what's happening, is the file corrupted, is the codec not supported ?? You could open the console to see errors. https://mpv.io/manual/master/#console https://mpv.io/manual/master/#console >- the no ui idea is nice for opening a single file, but then you go to the rabbithole of millions of settings / config to do anything more complicated, playlists? ( why can't I drag and drop on the window ) I cannot relate to that. "ad-hoc" playlists or even adding more files while some are already playing works fine for me on macOS. There's a chance the built-in UI differs between operating systems, not sure. >- it's hard to compile, so it's up to you to find up to date version on your distro I consider that hardly the fault of the mpv project. Other than that, there are usually third-party providers for mpv binaries.
- thrusong 2y agompv is a key part of my home theatre automation I wrote in PHP. It runs on a Pi 4. PHP assembles playlists with a Dolby ad, a vintage dancing hot dog ad, trailers, and the feature. It runs mpv through proc_open. It monitors the progress and controls mpv through a socket to know when to dim or raise the lights, open or close the curtain, etc. https://www.youtube.com/watch?v=Q7YEVGWJjvI https://www.youtube.com/watch?v=Q7YEVGWJjvI
- Bluestein 2y ago> Dolby ad, a vintage dancing hot dog ad, trailers, and the feature This is great.- Particularly the vintage dancing hot dog ad, mind you :)
- flanked-evergl 2y agoI use it as a backend for smplayer: https://www.smplayer.info/en/mpv https://www.smplayer.info/en/mpv
- Brosper 2y agoThis kind of project always lacks better UI/UX. I wonder if there is a way to bring more UI/UX people to Open-Source projects.
- cranberryturkey 2y agoanother good one in development is http://zymo.tv http://zymo.tv
- Mangesga 2y ago[flagged]
- markwong 2y agoI am using it for listening to the online radio in terminal.
- syngrog66 2y agochiming in to say VLC is the best audio clip player I've found. every time in past I surveyed the space all other options I tried had one or more showstoppers like too buggy or not the right API. VLC (and driving it via either Golang or CLi) has been reliable, decently documented and ultra configurable.
- mysteria 2y agoOne cool thing about mpv is that it can transcode audio encoded in different surround sound formats (AAC, FLAC, Atmos, etc.) into regular Dolby Digital for use with old pre HDMI AVRs using SPDIF. AFAIK it's the only player that can do this natively without any additional work on the OS level. I'll just add this here but if you want this kind of transcoding for the entire system rather than just mpv you can use dcaenc with its virtual 6 channel input encoding everything to DTS. I send the encoded audio to the AVR using a cheap TI PCM27XX sound card with optical output.
- iwishiknewlisp 2y agoWhat I like most about mpv is how you can control it through its socket. Often times I will play a movie or tv show on a separate monitor, so being able to pause or rewind or change volume without switching workspaces is important. I have in my i3 config, keybindings so I can easily control mpv with my keyboard: https://github.com/ediw8311xht/dotfiles/blob/6a765910ab5ac17a2c3faf7147943252eda04de9/i3wm/modes.conf#L166 https://github.com/ediw8311xht/dotfiles/blob/6a765910ab5ac17... Additionally, mpv has a powerful script system. One of my favorite scripts is fast foward through intro, which is crucial for watching a tv show. https://github.com/rui-ddc/skip-intro https://github.com/rui-ddc/skip-intro. Another nice script is https://github.com/familyfriendlymikey/mpv-cut https://github.com/familyfriendlymikey/mpv-cut, which enables creating clips in mpv. There are a ton of other useful scripts, and its not difficult to create a custom script yourself using lua. Mpv automatically resuming is also nice for watching tv shows or movies. Only problem is that if you shutdown mpv through killing the window then automatically resuming from history gets messed up.
- janandonly 2y agoMplayer, or MPV was my go-to program, next to VLC player, when I still used Windows and had loose mp4 files to play. Nowadays I’m just streaming on my Mac. Those good old days. [/ dream]
- bentt 2y agoTechnically superior with a bit of a learning curve, but really worth it. If they surfaced more of their functionality better, it would gain a lot of users.
- Gormo 2y agoOne of the nice things about MPV is that you can apply FFMpeg filters at playback, allowing you to use a wide range of transformations on a source video without having to re-render it for each variation. We're using inexpensive industrial mini-PCs, Alpine Linux, and MPV as a custom digital signage solution at my company, and centrally managing them via Ansible.
- lillecarl 2y agoWhat does an industrial minipc offer that an RPI doesn't in this case? :)
- Gormo 2y agoIt's x86; it works better for hardware accelerated video playback via VAAPI due to FOSS Intel drivers; because it's fully integrated out of the box, its total cost is a bit cheaper than an RPi, and as a single unit with no assembly, it's quite a bit faster to deploy. I'm using these: https://www.amazon.com/MeLE-Fanless-Computer-Ethernet-PCG02/dp/B09DV784X3 https://www.amazon.com/MeLE-Fanless-Computer-Ethernet-PCG02/.... Works great with Linux, and has a very customizable BIOS.
- mixmastamyk 2y agoNeat. How to get without Windows?
- Gormo 2y agoHaven't seen it available without preinstalled Windows, but even with that, the price is good, and it's easy enough to wipe it and install Linux.
- mixmastamyk 2y agoThanks. Shame to see MS get even a penny of my money however.
- actinium226 2y agoWe have free, open-source, cross-platform media player at home [vlc].
- ashconnor 2y agoLove the message when attempting to open a multi-volume rar video. [libarchive] This appears to be a multi-volume archive. [libarchive] Support is not very good due to libarchive limitations. [libarchive] There are known cases of libarchive crashing mpv on these. [libarchive] This is also an excessively inefficient and stupid way to distribute [libarchive] media files. People creating them should rethink this.
- Hwheye7 2y ago[flagged]