{"id":13835491,"url":"https://github.com/BanchouBoo/mpv-youtube-chat","last_synced_at":"2025-07-10T07:32:21.463Z","repository":{"id":180783122,"uuid":"576466218","full_name":"BanchouBoo/mpv-youtube-chat","owner":"BanchouBoo","description":"mpv lua script to overlay youtube chat on top of a video using yt-dlp","archived":false,"fork":false,"pushed_at":"2024-06-08T21:30:00.000Z","size":24,"stargazers_count":50,"open_issues_count":3,"forks_count":4,"subscribers_count":1,"default_branch":"master","last_synced_at":"2025-04-14T14:57:04.275Z","etag":null,"topics":["mpv","mpv-script","youtube","youtube-dl","yt-dlp"],"latest_commit_sha":null,"homepage":"","language":"Lua","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/BanchouBoo.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null}},"created_at":"2022-12-09T23:57:44.000Z","updated_at":"2025-03-09T23:50:16.000Z","dependencies_parsed_at":null,"dependency_job_id":"d3e92690-724b-4089-9b41-fabaf814f4d8","html_url":"https://github.com/BanchouBoo/mpv-youtube-chat","commit_stats":null,"previous_names":["banchouboo/mpv-youtube-chat"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/BanchouBoo/mpv-youtube-chat","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/BanchouBoo%2Fmpv-youtube-chat","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/BanchouBoo%2Fmpv-youtube-chat/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/BanchouBoo%2Fmpv-youtube-chat/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/BanchouBoo%2Fmpv-youtube-chat/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/BanchouBoo","download_url":"https://codeload.github.com/BanchouBoo/mpv-youtube-chat/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/BanchouBoo%2Fmpv-youtube-chat/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":264545168,"owners_count":23625404,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["mpv","mpv-script","youtube","youtube-dl","yt-dlp"],"created_at":"2024-08-04T14:01:03.331Z","updated_at":"2025-07-10T07:32:21.215Z","avatar_url":"https://github.com/BanchouBoo.png","language":"Lua","funding_links":[],"categories":["Social"],"sub_categories":[],"readme":"# mpv-youtube-chat\n\nDisplay chat replays overlayed on top of the video for past Youtube livestreams and premiers using [yt-dlp](https://github.com/yt-dlp/yt-dlp)\n\n## Notes\n- Untested on platforms other than Linux. If you are not using Linux you may need to manually set the script options `live-chat-directory` and/or `yt-dlp-path`.\n- Does not currenly work for streams are premiers that are currently airing as the live chat won't finish downloading until the stream/premier finishes. If you try to load the chat in one that is active it will still start downloading the live chat, so keep that in mind.\n- Downloading live chats can take awhile, especially for videos that have a very active chat and/or videos that are very long.\n\n## Requirements\n- [yt-dlp](https://github.com/yt-dlp/yt-dlp) is required to download the live_chat.json\n\n## Usage\nBinding `load-chat` to a keybinding and press it in a video. If the video is being played locally it will look for `video_filename_without_extension.live_chat.json` and load that if it exists. Otherwise, if you're watching from a URL, it will check if the video has a subtitle with the language `live_chat` and if so, it will download it to the path stored in `live-chat-directory` (see [Options](#Options)) with the filename `video_id.live_chat.json` if it does not already exist in that path, otherwise it will just load it from disk.\n\n## Bindable actions\n- `load-chat` -\u003e attempts to load the live chat replay as specified in [Usage](#Usage)\n- `unload-chat` -\u003e unloads the currently loaded live chat\n- `chat-hidden` -\u003e toggles the visibility of the live chat, optionally takes `yes` or `no` as a parameter to set it to that value instead of toggling it\n- `chat-anchor` -\u003e cycle the `anchor` option (see [Options](#Options)) from 1 through 9, optionally takes a value to set it directly\n- `break-anywhere` -\u003e toggles the value of the `message-break-anywhere` option, optionally takes `yes` or `no` as a parameter to set it to that value instead of toggling it\n\nTo bind an action, use `script-message` (e.g. `CTRL+j script-message load-chat`)\n\n## Options\n- `auto-load` (default `no`) -\u003e attempt to automatically load live chat when a video loads\n- `live-chat-directory` (default `C:/` on Windows and `XDG_DATA_HOME/youtube-live-chats` on all other platforms) -\u003e the directory to download `live_chat.json` files to\n- `yt-dlp-path` (default `yt-dlp`) -\u003e the path to your `yt-dlp` executable\n- `show-author` (default `yes`) -\u003e show the author's name with their message\n- `author-color` (default `random`) -\u003e color of the author's name in the message, available values are `random`, `none`, or a specific hex value (without a #)\n- `author-border-color` (default `000000`) -\u003e color of the borders around the author's name\n- `message-color` (default to `ffffff`) -\u003e color of the body text of a message\n- `message-border-color` (default `000000`) -\u003e color of the borders around the body text of a message\n- `font` (default to the osd font) -\u003e font to use for chat messages\n- `font-size` (default `16`) -\u003e font size for chat messages\n- `border-size` (default `2`) -\u003e border size for chat messages\n- `message-duration` (default `10000`) -\u003e duration that each message is shown for in miliseconds\n- `max-message-line-length` (default `40`) -\u003e the amount of characters before a message breaks into a new line\n- `message-break-anywhere` (default `no`) -\u003e whether line breaks in messages can happen anywhere or only after whole words\n- `message-gap` (default `10`) -\u003e additional spacing between chat messages, given as a percentage of the font height\n- `anchor` (default `1`) -\u003e where chat displays on the screen in numpad notation (`1` is bottom-left, `7` is top-left, `9` is top-right, etc.)\n\n## Plans\n- Parse live chats as they download, circumventing the need to wait for the whole thing to download before loading the chat and also allowing currently active streams and premiers to be supported\n- Support more chat message types. Currently regular messages and superchats (possible that some might be missed as of right now, there seems to be multiple formats for different kinds of messages and I'm not entirely sure what the difference is between these message formats are, if any) both work, I still need to add support memberships and paid stickers and possibly other kinds of messages I'm unaware of.\n- Better message rendering. If chat is anchored to the right, every line of every message will also be anchored to the right which looks rather unpleasant. See if I can have the chat be anchored to the right while allowing individual lines to be anchored to the left\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2FBanchouBoo%2Fmpv-youtube-chat","html_url":"https://awesome.ecosyste.ms/projects/github.com%2FBanchouBoo%2Fmpv-youtube-chat","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2FBanchouBoo%2Fmpv-youtube-chat/lists"}