Best video players on macOS and Windows, from someone who got tired of VLC eating CPU for no reason
I bounced between video players for a while on both Mac and Windows. None of them felt ‘done’, they all had one thing that annoyed me enough to look for another. Here is where I eventually landed and what I use each one for. Your use will be different, but this should save you a few evenings of testing installers.
I use both macOS (personal) and Windows (work and gaming), so this is split but with overlap.
Elmedia Player (macOS)
I started using Elmedia Player on a 2019 Intel MacBook Pro because VLC made the fans spin up on 4K files. Elmedia handled the same files with less noise and fewer dropped frames. That was the first thing I noticed.
What I use it for:
- Local files in weird formats
- Watching stuff on an external monitor while keeping subtitles and audio in sync
- Streaming from the Mac to a TV without fighting with AirPlay menus
What helped me keep it installed:
- Subtitle handling feels sane. I drag in an .srt or .ass file, it loads, I nudge sync with keyboard shortcuts and it sticks.
- It deals fine with HEVC and high bitrate files on my M1 Mac mini. On the Intel machine it struggled a bit with some 4K HDR, but so did every other player I tried.
- Streaming to a smart TV worked more reliably than I expected. DLNA to an older LG TV did not always show up, though, so I fell back to HDMI there.
- Playback controls respond fast. Space, arrows, speed changes, all feel crisp.
Stuff I did not like much:
- The interface feels a bit busier than I need. I hide a lot of panels.
- On one OS update it asked for extra permissions for network streams, which made me double check settings.
- Hardware acceleration behavior on older Intel Macs felt inconsistent. On Apple silicon, it has been smoother.
On macOS, I keep Elmedia as my default player for almost everything non-DRM. It is not perfect, but I open it first.
VLC (macOS and Windows)
I tried to quit VLC a few times. I always end up reinstalling it when some old file refuses to play elsewhere.
Where it still earns its place:
- Plays weird, ancient codec files. Old anime encodes, security camera exports, damaged downloads. If anything opens them, VLC probably does.
- Fast and dirty conversions. I use ‘Convert / Save’ for quick format fixes when someone sends me something broken.
- Network streams. RTSP security camera feeds, old IPTV playlists, that kind of thing.
What annoys me:
- On macOS, the interface feels clunky. Menus feel glued from another era.
- Default subtitle rendering looks dated. I tweak it each fresh install.
- On Windows, it tends to grab file associations aggressively if I am not careful with install options.
- On some 4K HEVC files, it stutters more than mpv or PotPlayer on the same machine and GPU.
I still keep VLC on both systems, but it is no longer my first pick for regular viewing. It is more like a toolbox that I launch when others fail.
mpv (macOS and Windows)
This one took me a weekend to configure. After that, it became the main player for ‘serious watching’ on my desktop screens.
Where it shines:
- Playback quality feels sharp. With proper config and shaders, motion and scaling look cleaner than VLC on my screens.
- Keyboard control is excellent. Once I memorized my keybinds, mouse use dropped to almost zero.
- On Windows, paired with GPU acceleration, it handles 4K HDR files with fewer dropped frames than VLC on the same box.
- It is scriptable. I wired in auto-subtitle downloads and watched folders.
Where it fights you:
- First setup is rough. No installer wizard magic. Config lives in text files. The first time I opened it, there were no menus, no preferences, nothing. I had to read docs.
- If you like clickable settings for everything, this will annoy you.
- Some HDR handling quirks on older monitors. Needed forum threads and trial and error.
On macOS, I used IINA as a friendlier front-end for mpv. On Windows, I stayed with plain mpv plus a custom config. If you are ok editing a config file, it is worth it.
PotPlayer (Windows)
On my Windows gaming PC, this ended up as the default for local files for a while.
What pushed it up:
- Hardware acceleration support is solid on Nvidia and AMD cards. 4K videos with high bitrate played smoothly.
- Lots of settings for video filters, subtitles, audio. You can tune it quite a bit.
- It auto-detected most subtitle tracks and audio streams with less fiddling than VLC for the same files.
What pushed it down:
- The installer used to include bundled offers. You need to watch the setup steps.
- Interface feels cluttered if you want something minimal.
- Some menus look half translated or a bit inconsistent.
It is strong on Windows for people who want to tweak playback behavior and have a dedicated machine for media.
MPC-HC / MPC-BE (Windows)
I still have muscle memory from using MPC-HC years ago on Windows XP. It is lighter than most current players.
Where it works well:
- Low overhead. On older laptops, it used less CPU than VLC for 1080p files in my tests.
- Clean, simple layout. Play, pause, seek, subs, done.
- With LAV Filters and madVR configured, video quality can be excellent.
Where it falls short:
- Setup with external filters is extra work. A new user will likely not bother.
- Development history is scattered. MPC-HC ‘ended’ then continued with community builds, MPC-BE split off, so you must pick one.
- Modern streaming features lag behind stuff like Elmedia on macOS or PotPlayer.
On Windows, I still put MPC-BE on office machines where we only need basic playback and low resource use.
QuickTime Player (macOS)
I did not expect to use QuickTime at all, but I keep opening it for some specific tasks.
Where I use it:
- Quick screen recordings on Mac. For rough demos or sending a coworker a bug clip.
- Simple playback for .mov and .mp4 files when I do not need subtitles or extra features.
- Reliable system integration with macOS media keys.
Limits I hit:
- Poor format support. Anything complex usually fails or plays without audio.
- No advanced subtitle or filter control.
- Not great for high bitrate 4K compared to something like Elmedia or IINA.
I treat it as the ‘note pad’ of video players on Mac. Fine for basic stuff, not for your main setup.
How I split usage between Mac and Windows
On my own machines right now it looks like this:
macOS:
- Elmedia Player: default for most local files, especially when I want good subtitle support and easy streaming.
- mpv: for testing configs or specific shaders.
- VLC: for broken or weird files or specific network stream tasks.
- QuickTime: for screen recording and trivial playback.
Windows:
- mpv: main player for local media with custom config and GPU acceleration.
- PotPlayer: second option when I want a GUI with lots of knobs.
- MPC-BE: light player on older or underpowered systems.
- VLC: kept around for odd formats and network streams.
I ended up with more players installed than I planned, but over time I learned where each one behaves best. You probably only need two on each system, one as main and one as backup for the problem files.