[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"project-954":3},{"id":4,"name":5,"fullName":6,"owner":5,"repo":5,"description":7,"homepage":8,"htmlUrl":9,"language":10,"languages":9,"totalLinesOfCode":9,"stars":11,"forks":12,"watchers":13,"openIssues":14,"contributorsCount":15,"subscribersCount":15,"size":15,"stars1d":16,"stars7d":17,"stars30d":18,"stars90d":15,"forks30d":15,"starsTrendScore":19,"compositeScore":20,"rankGlobal":9,"rankLanguage":9,"license":21,"archived":22,"fork":22,"defaultBranch":23,"hasWiki":24,"hasPages":22,"topics":25,"createdAt":9,"pushedAt":9,"updatedAt":32,"readmeContent":33,"aiSummary":34,"trendingCount":15,"starSnapshotCount":15,"syncStatus":35,"lastSyncTime":36,"discoverSource":37},954,"iina","iina\u002Fiina","The modern video player for macOS.","https:\u002F\u002Fiina.io",null,"Swift",45178,2838,531,1812,0,9,70,363,40,45,"GNU General Public License v3.0",false,"develop",true,[26,27,28,29,30,31],"hacktoberfest","macos","mpv","swift","video","video-player","2026-06-12 02:00:21","\u003Cp align=\"center\">\n\u003Cimg height=\"256\" src=\"https:\u002F\u002Fgithub.com\u002Fiina\u002Fiina\u002Fraw\u002Fmaster\u002Fiina\u002FAssets.xcassets\u002FAppIcon.appiconset\u002Ficon_512x512.png\">\n\u003C\u002Fp>\n\n\u003Ch1 align=\"center\">IINA\u003C\u002Fh1>\n\n\u003Cp align=\"center\">IINA is the \u003Cb>modern\u003C\u002Fb> video player for macOS.\u003C\u002Fp>\n\n\u003Cp align=\"center\">\n\u003Ca href=\"https:\u002F\u002Fiina.io\u002F\">Website\u003C\u002Fa> ·\n\u003Ca href=\"https:\u002F\u002Fgithub.com\u002Fiina\u002Fiina\u002Freleases\">Releases\u003C\u002Fa> ·\n\u003Ca href=\"https:\u002F\u002Ft.me\u002FIINAUsers\">Telegram Group\u003C\u002Fa>\n\u003C\u002Fp>\n\n---\n[![Crowdin](https:\u002F\u002Fbadges.crowdin.net\u002Fiina\u002Flocalized.svg)](https:\u002F\u002Fcrowdin.com\u002Fproject\u002Fiina)\n## Features\n\n* Based on [mpv](https:\u002F\u002Fgithub.com\u002Fmpv-player\u002Fmpv), which provides the best decoding capacity on macOS\n* Designed with modern versions of macOS (11.0+) in mind\n* All the features you need for video and music: subtitles, playlists, chapters…and much, much more!\n* Force Touch, picture-in-picture and advanced Touch Bar support\n* Customizable user interface including multiple color schemes and on screen controller (OSC) layout positioning\n* Standalone Music Mode designed for audio files\n* Video thumbnails\n* Online subtitle searching and intelligent local subtitle matching\n* Unlimited playback history\n* Convenient and interactive settings for video\u002Faudio filters\n* Fully customizable keyboard, mouse, trackpad, and gesture controls\n* mpv configuration files and script system for advanced users\n* Command line tool and browser extensions provided\n* In active development\n\n## Downloading\n\nYou can get IINA through several sources. For the latest stable and beta releases, visit the [GitHub release page](https:\u002F\u002Fgithub.com\u002Fiina\u002Fiina\u002Freleases) or the [IINA official website](https:\u002F\u002Fiina.io\u002F). If you want to try out the latest features and improvements before they are officially released, you can download the nightly builds from our [Nightly Download Page](https:\u002F\u002Fiina.io\u002Fnightly\u002F).\n\n> [!IMPORTANT]\n> Nightly builds are generated by GitHub automatically for every commits, which might be buggy and unusable. If you find a bug, please follow the [contributing section](#Contributing) and file an issue.\n\n## Building\n\nIINA uses mpv for media playback. To build IINA, you can either fetch copies of these libraries we have already built (using the instructions below) or build them yourself by skipping to [these instructions](#building-mpv-manually).\n\n### Using the pre-compiled libraries\n\n1. Download pre-compiled libraries by running\n\n```console\n.\u002Fother\u002Fdownload_libs.sh\n```\n\n> [!TIP]\n> - By default the shell script downloads universal binaries. You can download arch-specific binaries using `--arch \u003CARCH>` (`universal`, `arm64` or `x86_64`)\n> - Files are downloaded in parallel (5 concurrent downloads by default). You can change this using `--parallel \u003CN>` (from 1 to...)\n> - If you want to build an older IINA version you must change `DYLIBS_DOWNLOAD_PATH` in the script to download the corresponding dylibs. For example, `https:\u002F\u002Fiina.io\u002Fdylibs\u002F1.2.0\u002Funiversal\u002FfileList.txt`.\n\n2. Open iina.xcodeproj in the [latest public version of Xcode](https:\u002F\u002Fapps.apple.com\u002Fapp\u002Fxcode\u002Fid497799835). *IINA may not build if you use any other version.*\n\n3. Build the project.\n\n### Building mpv manually\n\n1. Build your own copy of mpv. If you're using a package manager to manage dependencies, the steps below outline the process.\n\n\t#### With Homebrew\n\n\tUse our tap as it passes in the correct flags to mpv's configure script:\n\n\t```console\n\tbrew tap iina\u002Fhomebrew-mpv-iina\n\tbrew install --HEAD mpv-iina\n\t```\n\n\t#### With MacPorts\n\n\tPass in these flags when installing:\n\n\t```console\n\tport install mpv +uchardet -bundle -rubberband configure.args=\"--enable-libmpv-shared --enable-lua --enable-libarchive --enable-libbluray --disable-swift --disable-rubberband\"\n\t```\n\n2. Copy the corresponding mpv and FFmpeg header files into `deps\u002Finclude\u002F`, replacing the current ones. You can find them on GitHub [(e.g. mpv)](https:\u002F\u002Fgithub.com\u002Fmpv-player\u002Fmpv\u002Ftree\u002Fmaster\u002Flibmpv), but it's recommended to copy them from the Homebrew or MacPorts installation. Always make sure the header files have the same version of the dylibs.\n\n3. Run `other\u002Fparse_doc.rb`. This script will fetch the latest mpv documentation and generate `MPVOption.swift`, `MPVCommand.swift` and `MPVProperty.swift`. Copy them from `other\u002F` to `iina\u002F`, replacing the current files. This is only needed when updating libmpv. Note that if the API changes, the player source code may also need to be changed.\n\n4. Run `other\u002Fchange_lib_dependencies.rb`. This script will deploy the dependent libraries into `deps\u002Flib`. If you're using a package manager to manage dependencies, invoke it like so:\n\n\t#### With Homebrew\n\n\t```console\n\tother\u002Fchange_lib_dependencies.rb \"$(brew --prefix)\" \"$(brew --prefix mpv-iina)\u002Flib\u002Flibmpv.dylib\"\n\t```\n\n\t#### With MacPorts\n\n\t```console\n\tport contents mpv | grep '\\.dylib$' | xargs other\u002Fchange_lib_dependencies.rb \u002Fopt\u002Flocal\n\t```\n\n5. Link the *yt-dlp* dependency to deps\u002Fexecutable \n \n   ```console\n   mkdir -p deps\u002Fexecutable\n   ln -s $(which yt-dlp) deps\u002Fexecutable\u002Fyoutube-dl\n   ```\n   \n6. Open `iina.xcodeproj` in the [latest public version of Xcode](https:\u002F\u002Fapps.apple.com\u002Fapp\u002Fxcode\u002Fid497799835). *IINA may not build if you use any other version.*\n\n7. Remove all references to `.dylib` files from the Frameworks group in the sidebar and add all the `.dylib` files in `deps\u002Flib` to that group by clicking  \"Add Files to iina...\" in the context menu.\n\n8. Add all the imported `.dylib` files into the \"Copy Dylibs\" phase under \"Build Phases\" tab of the iina target.\n\n9. Make sure the necessary `.dylib` files are present in the \"Link Binary With Libraries\" phase under \"Build Phases\". Xcode should have already added all dylibs under this section.\n\n10. Build the project.\n\n## Contributing\n\nIINA is always looking for contributions, whether it's through bug reports, code, or new translations.\n\n* If you find a bug in IINA, or would like to suggest a new feature or enhancement, it'd be nice if you could [search your problem first](https:\u002F\u002Fgithub.com\u002Fiina\u002Fiina\u002Fissues); while we don't mind duplicates, keeping issues unique helps us save time and consolidates effort. If you can't find your issue, feel free to [file a new one](https:\u002F\u002Fgithub.com\u002Fiina\u002Fiina\u002Fissues\u002Fnew\u002Fchoose).\n\n* If you're looking to contribute code, please read [CONTRIBUTING.md](CONTRIBUTING.md) — it has information on IINA's process for handling contributions, and tips on how the code is structured to make your work easier.\n\n* If you'd like to translate IINA to your language, please visit [IINA's instance of Crowdin](https:\u002F\u002Ftranslate.iina.io\u002F). You can create an account for free and start translating. Please do not send a pull request to this repo directly, Crowdin will automatically sync new translations with our repo. If you want to translate IINA into a new language that is currently not on the list, feel free to open an issue.\n\n## IINA Plugins List\n\n### Official Plugins\n- **[Online Media](https:\u002F\u002Fgithub.com\u002Fiina\u002Fplugin-online-media)** (`iina\u002Fplugin-online-media`) - Enhances online streaming and downloading.\n- **[OpenSubtitles](https:\u002F\u002Fgithub.com\u002Fiina\u002Fplugin-opensub)** (`iina\u002Fplugin-opensub`) - Search and download subtitles.\n- **[User Scripts](https:\u002F\u002Fgithub.com\u002Fiina\u002Fplugin-userscript)** (`iina\u002Fplugin-userscript`) - Run custom JavaScript snippets.\n\n### Community Plugins\n- **[Anime4K](https:\u002F\u002Fgithub.com\u002Fyorkyang2333\u002Fiina-anime4k)** (`yorkyang2333\u002Fiina-anime4k`) - Apply Anime4K shaders for real-time anime upscaling.\n- **[Bookmarks](https:\u002F\u002Fgithub.com\u002Fwyattowalsh\u002Fiina-plugin-bookmarks)** (`wyattowalsh\u002Fiina-plugin-bookmarks`) - Save and manage video timestamps.\n- **[Clickable Subtitles](https:\u002F\u002Fgithub.com\u002Fkerim\u002Fiina-clickable-subtitles)** (`kerim\u002Fiina-clickable-subtitles`) - Click subtitles to define words (macOS Look Up).\n- **[Danmaku](https:\u002F\u002Fgithub.com\u002Fxjbeta\u002Fiina-plugin-danmaku)** (`xjbeta\u002Fiina-plugin-danmaku`) - Overlay comments\u002Fdanmaku on video.\n- **[Danmaku Cosmos](https:\u002F\u002Fgithub.com\u002Fkarappo-yu\u002Fiina-plugin-danmaku-cosmos)** (`karappo-yu\u002Fiina-plugin-danmaku-cosmos`) - Niconico\u002FBilibili danmaku with CSS\u002FCanvas dual rendering, Comment Art support.\n- **[Episode Info](https:\u002F\u002Fgithub.com\u002FZain-Imam\u002Fiina-episode-info)** (`Zain-Imam\u002Fiina-episode-info`) - TMDB episode\u002Fmovie info overlay on pause, with built-in subtitle search.\n- **[File Viewer](https:\u002F\u002Fgithub.com\u002Fqktechies\u002Fiina-plugin-file-viewer)** (`qktechies\u002Fiina-plugin-file-viewer`) - bookmark folders, browse directory contents, and play video files directly within IINA.\n- **[Jellyfin](https:\u002F\u002Fgithub.com\u002Fmhajder\u002Fiina-jellyfin)** (`mhajder\u002Fiina-jellyfin`) - Browse and play media from Jellyfin servers.\n- **[Jump to Frame](https:\u002F\u002Fgithub.com\u002Fbbeny123\u002Fiina-jump-to-frame)** (`bbeny123\u002Fiina-jump-to-frame`) - Navigate video by specific frame number.\n- **[ListenBrainz Scrobbler](https:\u002F\u002Fgit.notfire.cc\u002Fnotfire\u002Fiina-listenbrainz)** - Scrobble your music to ListenBrainz.\n- **[Multiple Clips](https:\u002F\u002Fgithub.com\u002Fkarthisnk\u002Fmulti-cutter-iina)** (`karthisnk\u002Fmulti-cutter-iina`) - multiple clip of a video using ffmpeg, with Batch Clipping, Vertical Clip, Format Selection, Preview Clip.\n- **[PiP Toggle for IINA](https:\u002F\u002Fgithub.com\u002Fnastarandarjani\u002Fiina-pip-toggle)** (`nastarandarjani\u002Fiina-pip-toggle`) - Simple plugin to toggle Picture-in-Picture (PiP) to fullscreen.\n- **[Playlist Pro](https:\u002F\u002Fgithub.com\u002FCatCodeDanix\u002Fiina-playlist-pro)** (`CatCodeDanix\u002Fiina-playlist-pro`) - Seamless management of local and online playlists.\n- **[PolyScript](https:\u002F\u002Fgithub.com\u002FSammoMichael\u002Fpolyplugin-release)** (`SammoMichael\u002Fpolyplugin-release`) - Dual subtitles, hover dictionary, and AI-assisted translation for language learning.\n- **[recorder](https:\u002F\u002Fgithub.com\u002F5thDimensionalVader\u002Frecorder-iina)** (`5thDimensionalVader\u002Frecorder-iina`) - to clip a video using ffmpeg.\n- **[Skip Intro](https:\u002F\u002Fgithub.com\u002Fpparanoiidd\u002Fiina-skip-intro)** (`pparanoiidd\u002Fiina-skip-intro`) - Detect and skip intros, recaps and credits.\n- **[Trakt Scrobbler](https:\u002F\u002Fgithub.com\u002Fi3p9\u002Fiina-trakt-scrobbler)** (`i3p9\u002Fiina-trakt-scrobbler`) - Trakt.tv scrobbler plugin for IINA.\n\n\n> 💡 **Want to build your own plugin?**\n>\n> Explore the existing plugins listed here to learn how they work. If you create a new plugin or improve an existing one, feel free to contribute back by adding it to this list via a pull request.\n\n> 🚀 **Interested in creating an IINA plugin?**\n>\n> Start by exploring the existing plugins here to understand patterns and best practices. Once you’ve built your own plugin, please contribute back by adding it to this README so others can discover and use it.\n","IINA 是一款专为 macOS 设计的现代视频播放器。基于 mpv，IINA 提供了强大的解码能力和丰富的功能，包括字幕支持、播放列表、章节浏览等，并且针对 macOS 11.0 及以上版本进行了优化。它还具备 Force Touch、画中画模式以及高级触控栏支持等功能，同时提供了可定制的用户界面和多种颜色方案。此外，IINA 还拥有独立音乐模式、在线字幕搜索及智能本地字幕匹配等特性。适合需要在 macOS 上享受高质量音视频体验的用户使用。",2,"2026-06-11 02:40:31","top_all"]