Highlights:
- A complete revamp of the layout system (hopefully for the last time) with tons of bug fixes, and various panels & modes are now far more reliable and exact.
- A new OSC overlay style which more closely resembles modern online players, & more OSC layout customization options.
- Playback progress bar has a completely rewritten drawing process with many new customizations, including a new hover indicator, clearer/prettier rendering of chapters, precision shading to indicate loaded segments of remote files, and more.
- The buttons in the OSC, title bar, & more, now make use of native Apple symbols & are animated (given that your version of MacOS is new enough to support it).
- More tables & other UI elements have added usability features (details below).
- Smooth scrolling on Apple trackpads & Mac Mouse is now fully supported, and now thumbnail preview can be displayed during scroll-to-seek.
- Performance enhancements to Playback History window & playlist sidebar.
- Includes updates to mpv v0.38.0, FFmpeg v7.0.1, and the upcoming IINA beta release (though IINA's new plugin support is disabled; see details below).
- The app name is now finally "IINA Advance", to avoid confusion with the upstream app. The two apps use separate preference domains and will not interfere with each other if both are running at the same time.
Also, it is now possible to receive update notifications! A prompt should appear on the second launch, but update checking can also be configured in Settings…
> General
> Updates
, as in the upstream IINA project.
New Features
OSC Layout
- When OSC has position =
Bottom
, and placement =Inside
, there is a new option to change the color scheme toClear-Black Gradient
from the previous default, now calledMacOS Graphite
. The new scheme uses a transparent background with a partial black shadow, and draws the OSC buttons & controls in a brighter shade of white & their own black shadows.

-
Added ability to change the overall size (height) of the OSC when in
Top
orBottom
modes.
-
When OSC has position =
Bottom
, there is a new option (enabled by default):Use 2-row style when there is enough OSC height
. Enabling this will allow for a more modern layout which places the playback position slider on a row by itself above the other controls. But if the OSC height is set to too small a value, the old (single-row) layout will be used instead due to its better usability when compacted. Unchecking this box will also force the use of the old single-row layout. -
If the previous checkbox is enabled, another option becomes visible under
Playback position & volume sliders
:Always show time labels on each side of position slider
. If this is checked, the "progress" & "elapsed" time labels will be placed on the left & right sides of the playback position slider instead of on the row below it.

- Added options to adjust size & spacing of the playback controls (left arrow / Play/Pause / right arrow) as well as size & spacing of toolbar items (only for
Top
orBottom
modes, and only whenUse 2-row style when there is enough OSC height
is unchecked). - Added new option to
Use left/right button for
popup:Do Not Use
, which hides the left/right arrow buttons entirely.

- Add new checkbox,
Control speed with pressure (if Force Click enabled)
, which can disable the (default) use of Force Touch to vary speed of rewind & fast-forward buttons based on applied pressure. - When the option
When media ends
>Using Resume will replay media from beginning
is enabled, the Play/Pause button's icon changes to a "restart" arrow to better indicate what it will do.

Play Position & Volume Sliders
- Drawing of the play position & volume slider bars has been completely rewritten with more sophisticated features (continue reading...).
- The play position slider bar now expands in height when hovered over, similar to the behavior of some modern online media players. This effect can be disabled via the
Bar magnifies when hovered over
checkbox in Settings.

- Added option to use the system accent color for the playback slider progress, instead of gray. Now enabled by default.
- Added an option, when playing a remote file (e.g. from a NAS file share), to indicate the loaded sections (what mpv calls "cached ranges") in the play position slider bar by using a slightly different shade of color. (This feature was previously present only when streaming media from a URL, but was not as fine-grained). To disable this behavior, uncheck
Highlight loaded segments of remote files
.

- When
Show chapter positions in progress bar
is checked, chapters are now drawn with clear space between instead of using gray-colored lines.

- When hovering the cursor over the play position slider, there is now a small vertical line to indicate the horizontal location in the slider bar, a feature present in some modern players.
- If volume exceeds 100%, the portion of volume above 100% will be drawn in a slightly different color in the volume slider.
- The knob of the play position slider &/or volume slider is hidden until hovering over the bar (except for OSC position
Floating
, where it is always shown). This can be changed back to the previous behavior, where the knob is always drawn, via a new checkbox in Settings. - The mouse cursor now changes to a pointing hand when hovering over either the play position slider or volume slider, as an additional indicator that it is within range. (This is actually a modern replacement of a feature which seems to have broken many years ago in upstream IINA. This replaces dead code which was attempting change the cursor into a cross (small-T) shape. I chose to use a pointing hand instead because it seems more modern, and it's what VLC does).
- Added option to draw sliders with sharp corners instead of rounding them, like rectangles instead of long pills.

- Use native MacOS symbols for the "on top" & sidebar toggle buttons in the menu bar, as well as all the buttons in the OSC and in music mode. (MacOS 11.0+)
- The new buttons in the OSC & menu bar can also animate when clicked, and some (such as the Play/Pause button) will animate when changing icons using the new MacOS "content transition" symbol animations (some require MacOS 12+, but MacOS 15 or newer is required for full support).
Thumbnails
- Added option to show thumbnails when dragging the playback slider or when using the scroll wheel to seek. This can be disabled by using the new option
Thumbnail Preview
>Show preview while seeking with slider / scroll wheel
. - Thumbnail Preview now always shows
Border
popup, even if Advanced Settings is not enabled (We're all adults here, right? At least I hope). If the selected border contains a shadow, a new checkbox is available beside it,White shadow
. Previous versions of IINA-A attempted to use a white shadow in dark mode and a black shadow in light mode. But this behavior had bugs which prevented it from being consistent, and after some thought it didn't really make sense; in either mode the shadow is cast over the video, but dark mode has no impact on the colors the video is displaying. - Thumbnails now support "flipped" and "mirrored" video modes and e.g. will now be shown right-to-left if the video is mirrored horizontally.
- Thumbnail rotation, flip, & mirror are now done via CoreAnimation on-the-fly via the GPU (which is almost instantaneous) instead of batch-regenerating & transforming the thumbnail files (which can take nearly as long as generating them!) The result is that thumbnails for e.g. a rotated video now take half as long to generate because half of the time went into the rotation. As another consequence, toggling the video rotation while playing will no longer cause the thumbnails to disappear for a few seconds due to the regeneration. I have a solid lead for speeding up thumbnail generation even more, which can hopefully be implemented in a future release.
- [Experimental] Basic support for integrating with thumbfast. When enabled, thumbfast will be directed to provide thumbnails instead of the built-in engine. See the wiki page for more details.
Window Management
- When
Always open media in new window
is checked, dragging & dropping multiple files into the app, or opening multiple files at once from the Finder, will now open new separate windows for each file. Previously, only a single window would be opened, playing the first file & appending the remaining files to its queue. - A previously existing feature, available if
Lock proportions to prevent empty space around video
is enabled, would make use of blank space in the window and shift the video into it to prevent it from overlapping with the "inside" sidebars. This has been rewritten so it has a smoother animation; it now takes effect while in full screen as well as windowed mode, and now will shift the video vertically to avoid top & bottom "inside" panels as well. This behavior can now be turned off using the settingMove video into empty space (if available) to reduce overlap
.


Other Optimizations / Improvements
- When windows are restored at launch, their previous order from front to back is now preserved.
- Increased the range of options for scroll wheel sensitivity, and added labels to show the current value in
Control
settings.

- Added several optimizations to scroll wheel handling for a noticeably smoother experience when using scroll-to-seek.
- Reworked the settings layout in
UI
>Sidebars
into a new column-based format which is more concise & easier to read.

- Toolbar icons are slightly larger by default, and they use the new icons from upstream IINA, where applicable.
- Rewrote the MediaPlayer & Now Playing integration code. It now updates more intelligently & displays a thumbnail preview for the active media. It also grays out buttons when they can't be used, for example the Prev Media button when playing the first item in the playlist.
- The scrolling labels in music mode use a new time-based algorithm for smoother & more consistent scroll speed.
- The volume OSD now uses the same variatic icons as the icon in the volume slider: the icon now hints at the general volume level via its number of waves.
- At launch, the Playback History window now loads asynchronously & shows a "loading" message rather than not showing anything until it finishes. (Previously there could be long, unpredictable delays at startup when the history contained lots of files files on remote volumes). The loading spinner uses a system symbol which animates in MacOS 15+.
- Playback History table now hides the Progress column if saving progress via Watch Later is disabled (
Settings…
>Saved Data
). - Playback History table now shows a "No results found" message if a search results in zero rows being shown.
- Eliminated duplicate work when loading durations of items in the Playlist table, so they load at least 2x as quickly, as well as reduce stuttering when opening the playlist sidebar.
- Also implemented a shared in-memory cache for playlist items, so that an update to a media's title, duration, and certain other metadata fields takes effect across all windows. More work needs to be done, however, to consolidate the other redundant data structures, i.e. playback history meta & meta created by the autoload system.
- Enhancements to the
Advanced
>Additional mpv options
table: added drag & drop, drag to reorder, cut/copy/paste/delete. It now performs basic validation to help prevent incorrect values in the Name column.

- Enhancements to the
Watch
table in the Inspector window: added ability to scroll, drag & drop, drag to reorder, inline row editing via double-click or Enter key. Rows in the Value column now wrap into multiple lines instead of getting truncated .

- It is also now possible to drag & drop between the
Watch
andAdditional mpv options
tables. - It is now possible to edit rows in the
Key Bindings
table while a search is active, without clearing the search. - The
Audio delay
slider in the Audio Settings sidebar is now finer-grained, changing by 50ms increments instead of 500ms. - The custom window style now shows the document icon button in the title bar (although unlike the native title bar, it doesn't yet do anything when clicked on).
- Improved the custom window's border colors in light mode.
- Tons of other small UI improvements and fixes.
Bug fixes
- [major] Completely rewrote scroll wheel handling, which was almost totally broken for Magic Trackpad & Magic Mouse. Scrolling is much smoother now and properly supports inertia (if enabled in System Settings). It should also be less likely to be tripped accidentally, and should be more accurate about distinguishing between horizontal & vertical scroll.
- [major] Fixed many problems when opening playlist (.m3u, etc.) files, which was totally broken previously.
- [major] Fixed lots of bugs when playing network streams: windows would not open reliably, the buffering icon would be shown when it shouldn't have been, and other problems.
- [major] Fixed incorrect aspect ratio calculation for videos. (Aspect ratio handling should be on par with mpv now. But there are still some issues with crop which I'm planning to address in the next major release).
- Finally fixed a bug where the video would stretch or squeeze horizontally while resizing the window if an "inside" sidebar was showing.
- Fixed occasional video distortion or strange window animations when zooming or restoring the window (e.g. by double-clicking on the title bar).
- Fixed visual glitches when resizing player windows in MacOS Sequoia.
- Fixed wrong chapter initially selected when opening chapter from the Chapters table.
- Fixed issue with native windows in MacOS Sequoia where changing to full screen and back would cause the window's document icon to disappear from its title bar.
- Fixed several rare crashes at exit.
- Fixed #4.
- Fixed #7.
- Fixed bug: On Top button invisible but clickable in music mode
- Fixed: toggling PiP with second window when another window was already in PiP would result in both thinking they were in PiP.
- Fixed issue where the thickness of the borders of the top & bottom bars would be a random value between 0.0 and 1.0 points instead of exactly 0.5 points.
- Fixed many minor window size bugs, especially in music mode.
Upstream Changes
Merged the features from upstream IINA's develop
branch which integrates mpv 0.38, now that critical bug fixes have been merged. This includes the main new features:
- New UI options to change secondary subtitle delay & position.
- Support for spatial audio via use of the AVFoundation driver.
- Support for ReplayGain, with configuration options in the UI.
- New loading window when opening a network URL.
I'm continuing to disable support for IINA's new plugins system for now. There is an open upstream build issue which needs to get resolved first, and it's still not clear whether plugin functionality is production-ready. But I have left in the ability to enable plugin support by setting a hidden preference. Feel free to contact me or open an issue for details.
Upgrade disclaimers:
As in the v1.2 release, there are a couple of potential hiccups when upgrading to v1.3:
- Wrong aspect ratio if restoring previous versions' windows: If you have existing saved windows from past launches, you may find that after the first launch of v1.3, the video in one or more of your windows may be restored with the wrong aspect ratio. This is because of a bug fix in v1.3 which changes one of the stored parameters used to calculate aspect ratio from what was used in v1.2.x. If this happens, you can fix it (one window at a time) by opening a new file in that window, or by cycling the video track to
<None>
and then back to the previous track (see theVideo
menu'sVideo Track
submenu). I am planning improvements in v1.4 to self-correct a bad aspect ratio & other video geometry to eliminate the chance of ending up in bad states like this in the future. - Some default settings have changed. New settings have been added, with new defaults, and I have also adjusted some of the old default settings with what I think are improvements for new users. But if you were using one of the old defaults and find that after upgrading to v1.3 something has changed on you, you may have to adjust a setting or two to get back to what you had. Almost all of the changes relate to UI settings and should be easily obvious and easily corrected, but please report an issue if there is a major snag or if something seems wrong.