COWMODSКаталог модов

MCCinema

Paper plugin to play back videos (with audio) in-game without the use of clientside mods. Now with full RGB support!

Автор: Malfrador2,5 тыс.16обновлён 27 окт. 2026 г.
ПроклятыеОбщениеУтилиты

Описание

Paper plugin to play back video (and audio) in-game without the use of clientside mods.

Features

  • Play local MP4/MKV/AVI/WEBM/MOV files or download videos directly from YouTube (optional)
  • Experimental full RGB mode, which works without any dithering leading to a superior image quality compared to similar plugins.
  • Play Livestreams directly from Twitch or YouTube by simply using an URL instead (no audio).
  • Automatic resource pack generation and hosting for synchronized audio playback for videos.
  • True 1080p or even 4K playback with efficient tile-based rendering
    • Only limit is the server and player bandwidth.
  • Improved bandwidth usage. Down to 8 MB/s for a really large (2176x896) screen.
  • Significantly improved visual quality
    • Floyd-Steinberg, Stucki or Atkinson dithering with temporal noise reduction
  • Full playback controls: pause, resume, seek, and skip
    • Audio is sliced into seamless chunks to work around Minecraft's audio limitations
  • Various compression techniques are used to reduce bandwidth usage as much as possible by only updating whats actually needed
    • Selective updating, downsampling, dirty region detection and more

Basic usage

All commands have helpful tab-completion available

  1. Use /mcc create <screen id> <aspect ratio> [x] [y] while looking at the lower left corner to create a screen
    • Tip: Make sure your screen is evenly lit, e.g. using light blocks.
  2. Place your video .mp4 files in /plugins/MCCinema/videos/
  3. Use /mcc play <screen id> <video> to start playback. Optionally include the --audio <chunk size> parameter to play with audio.
    • For audio, this plugin will use mcpacks.dev for Resourcepack hosting by default.
    • Alternatively, it can automatically host a resourcepack server if audio is enabled. On some hosts this may fail.
    • To allow for resuming and pausing of playback, audio data is split into chunks of <chunk size> seconds in length. The default value of 10s is usually good.
    • Use the --experimental flag to enable full RGB mode.
  4. You can use /mcc quality <screen> <performance/balanced/quality> to change playback quality settings. This will have a significant effect on bandwidth and CPU usage.
  5. Use /mcc crop <screen> while a local video is playing to adjust its viewport. Scroll to zoom, use W/A/S/D to pan, and hold sneak for precise adjustments. The saved crop is reused whenever that video is played again.

To download videos from YouTube, run /mcc download. There is some first-time setup required for this. MCC uses yt-dlp for this. You will be asked to confirm the yt-dlp download. But of course you can also always download YouTube videos manually and place them in /videos/ yourself!


A note on bandwidth usage:

This plugin will inevitably create a lot of traffic. Minecraft isn't really a great video player.

This is optimized as best as possible (and likely better than many similar plugins), however it can still be a lot.

The actual amount of traffic scales with two factors: Screen size, and how dynamic the video is. Videos with very little movement such as slideshows will barely generate any traffic. You can see live metrics, including bandwidth usage, using /mcc debug <screen id>. However note that those metrics are before compression. You can press F3+3 to get the built-in bandwidth graph, which will give you after compression bandwidth.

One example on a reasonably sized (7x4 blocks, 896x512) screen:

  • Server Trailer: Average 3 MB/s
    • This screen size gives you good enough resolution for most content

Two examples on a very large (17x7 blocks, 2176x896) screen:

Using Velocity with compression-threshold: 256 and compression-level: 4

  • Bad Apple: Average 400 KB/s
    • Only two colors, pillarboxing on both sides, many large same-color areas -> lower bandwidth usage
  • Bite Marks: Average 8 MB/s
    • Many colors, full CS format, very quick scenes -> high bandwidth usage

Configuration

You can find a full, commented configuration file here

Additional notes:

  • This plugin makes heavy use of multi-threading and benefits from more and faster CPU cores significantly.
  • Video and audio are streamed, so RAM usage should not be a meaningful concern. However, this plugin will create considerable GC pressure.
  • It is recommended to use a Velocity proxy in front of your server, and to then disable network-compression-threshold in server.properties. Doing so will offload the work of compressing and encrypting packets to the proxy, which can significantly improve performance and throughput. If that is not possible, increasing netty-threads in spigot.yml might be worth considering. If using Velocity, try playing around with the network-compression-threshold and compression-level settings a bit. I had great results with 256 and 4 respectively.
  • Packets are bundled per frame, so packets-per-second should not be a concern here.
  • You can tweak most config settings during video playback with /mcc debug <screen> <setting> <value>. Depending on the video content, tweaking settings might have a big effect (e.g. anime style vs real life videos).

Showcase

Very large screen (17x7 blocks, 2176x896 CS) playing at 24FPS

Even larger screen sizes are supported, but you will run into bandwidth limitations javaw_UbWieGAgKk

Галерея

Последние версии

Все версии →
release

MCCinema 2.5.0 - Fullscreen mode, RGB motion encoding and more

2.5.0
27 окт. 2026 г.34Minecraft: 26.2, 26.3paper
Скачать
Что нового
- Added the `--fullscreen` argument to `/mcc play`. When provided, an additional shader will be used to play the video inside the UI in fullscreen, instead of in-world - Fullscreen can be used in normal and experimental playback mode. - This may not work with mods like Iris - This put the player in spectator temporarily and fixes them in-place. - When `--fullscreen` is used together with `--experimental` RGB Mode, a new motion-compensated codec is used. This meaningfully reduces bandwidth in RGB Mode but increases server-side CPU usage and client-side shader work. - The encoder first tries to find global motion across the entire frame (-32 to +32px) - Second, individual 4x4 blocks are used to see if they can re-use data from neighbouring blocks - Every 30-60 frames or when a scene cut is detected, a full anchor frame is used to prevent motion prediction errors from piling up. - This is very heavily work in progress and I can think of some things that would further improve bandwidth usage and reduce the performance impact here - I would not recommend using this in any production environment. - 26.3 is now supported in addition to 26.2. - If ViaVersion is installed, MCC will support both 26.2 and 26.3 clients at once. - All commands have been migrated to Brigadier, using the [StrokkCommands library](https://github.com/Strokkur424/StrokkCommands). - A thread leak with finished playbacks has been fixed.
release

MCCinema 2.4.1

2.4.1
16 сент. 2026 г.412Minecraft: 26.2paper
Скачать
Что нового
- Added experimental RGB film playback via `/mcc play ... --experimental`. - Preserves the full 128×128 resolution of every map. The server encodes per-pixel luminance with 4×4 chroma and gradient data; a Minecraft core shader reconstructs the RGB image client-side. - This should improve color representation and detail, especially in noisier scenes and real-life video content. The downside is that the might look slightly softer. - Optimized frame fitting and tile encoding for more consistent playback performance. - Added .mov video support. - /mcc seek now renders the selected frame while paused.
release

Crop/Zoom, reworked media toolchain

2.4.0
28 авг. 2026 г.144Minecraft: 26.1, 26.1.1, 26.1.2, 26.2paper
Скачать
Что нового
- Reworked video downloads and livestream resolution for improved reliability across Windows, Linux and macOS. - MCCinema now downloads the correct native yt-dlp binary for the server's operating system and architecture. - MCCinema now uses an existing Deno or Node.js installation when available, or downloads its own private Deno runtime. - Downloaded tools are checksum-verified and health-checked before use. - Tool updates are performed safely, retaining the last working version if an update fails. - Added configurable stable/nightly yt-dlp channels and automatic update intervals. - MCCinema now attempts to use the ffmpeg executable bundled with JavaCV, falling back to a system installation when necessary. - Downloads and livestream playback now continue automatically after first-time media setup completes. - Added `/mcc media` for viewing yt-dlp, JavaScript runtime and cookie status. - Added `/mcc media retry` for repairing or updating the managed media tools. - Improved user-facing error messages for offline streams, rate limits, unsupported URLs, authentication failures and broken tool installations. - Improved YouTube cookie handling. - Cookies are now optional and public media is always attempted without them first. - Cookies are only used after YouTube reports that authentication is required. - `youtube_cookies.txt` is validated as a Netscape-format cookie file before use. - Invalid, expired and symbolic-link cookie files are rejected with clearer diagnostics. - Cookie changes are detected without requiring a plugin reload. - Improved livestream playback. - Removed the dependency on Python-based yt-dlp launchers. - Required HTTP headers from yt-dlp are now passed to the livestream connection. - Expired or stalled livestream URLs are automatically resolved again. - Added reconnect handling and reduced repeated stall messages in the server log. - The currently playing video is only replaced after the new livestream connection has loaded successfully. - Added interactive zooming and positioning for local videos. - Use `/mcc crop <screen>` while a local video is playing. - Use the mouse wheel to zoom and W/A/S/D to position the image. - Hold sneak for more precise adjustments and press F to reset the preview. - Use `/mcc crop save`, `/mcc crop reset` or `/mcc crop cancel` to finish editing. - Crop settings are persisted separately for each video and reused during future playback. - Improved audio extraction and conversion. - Audio is now extracted and encoded using the FFmpeg libraries bundled with JavaCV. - Added parallel audio chunk encoding and detailed conversion progress. - Improved mono/stereo downmixing and Vorbis chunk padding. - Incomplete or outdated audio caches are detected and rebuilt automatically. - Improved screen and map cleanup. - Newly created screen item frames and map items are tagged with persistent screen and tile information. - `/mcc delete` now removes the screen's item frames and map items automatically. - Legacy screens are also detected using their placement and map IDs. - Added the `mccinema.crop` and `mccinema.media` permissions.
release

MCCinema 2.3.3

2.3.3
28 июл. 2026 г.292Minecraft: 26.1, 26.1.1, 26.1.2, 26.2paper
Скачать
Что нового
- The `/mcc create` command will now automatically suggest a screen height that matches the aspect ratio, if a screen width was entered - An `IMAX` template (1.43:1) was added. - Audio processing now shows in-game feedback. - Video catch-up (e.g. when seeking or re-syncing audio) is now much faster. - A bug was fixed that caused dithering to run at source resolution instead of screen resolution. This improves performance of high-resolution video playback, and also should improve dithering quality slighty. - A bug was fixed that caused locally-hosted resourcepacks to not update properly.
release

MCCinema 2.3.2

2.3.2
2 июл. 2026 г.125Minecraft: 26.1, 26.1.1, 26.1.2paper
Скачать
Что нового
- Added `/mcc reload` to reload the config file. You may need to restart currently running playback for some config values to apply. - Fixed a threading issue with the screen fill color.
release

MCCinema 2.3.1

2.3.1
26 июн. 2026 г.56Minecraft: 26.1, 26.1.1, 26.1.2paper
Скачать
Что нового
- The blank screen color is now configurable, `display.blank-color`. Both named colors (`WHITE`) and hex values are accepted. Default is white. - `/mcc play` now optionally supports a list of players, e.g. `/mcc play screen video.mp4 --audio Malfrador Steve Dinnerbone`. If set, the video is only played to those players. - Fixed a bug where some map update packets where sent to all online players instead of only players tracking the screen. - Fixed a bug where the blank screen color was not properly set on screen creation and on relog
release

MCCinema 2.3.0 - Livestream support!

2.3.0
8 июн. 2026 г.118Minecraft: 26.1, 26.1.1, 26.1.2paper
Скачать
Что нового
- The plugin now supports playing YouTube and Twitch livestreams. Just use `/mcc play <screen> <twitch/YT link>`. - Livestreams are played at 20 FPS as well. - There is a slight delay of about 1s compared to directly viewing the stream on YT/Twitch. - Audio is sadly not supported, as there is no way to stream real-time audio to the client. - Quality settings changed with `/mcc quality` are now persisted per-screen. - An issue preventing yt-dlp from being properly detected on some systems has been fixed.
release

MCCinema 2.2.3

2.2.3
4 мая 2026 г.85Minecraft: 26.1, 26.1.1, 26.1.2paper
Скачать
Что нового
- Update to 26.1 - Java 25 is now required. For older Java versions, use 2.2.2.
release

MCCinema 2.2.2

2.2.2
10 апр. 2026 г.949Minecraft: 1.21, 1.21.1, 1.21.2, 1.21.3, 1.21.4, 1.21.5, 1.21.6, 1.21.7, 1.21.8, 1.21.9, 1.21.10, 1.21.11paper
Скачать
Что нового
- Improved performance of A/V drift skipping. The video processing lagging behind should no longer cause additional frame lag. - Resourcepacks are now added instead of replacing the server resourcepack
release

MCCinema 2.2.1

2.2.1
26 мар. 2026 г.71Minecraft: 1.21, 1.21.1, 1.21.2, 1.21.3, 1.21.4, 1.21.5, 1.21.6, 1.21.7, 1.21.8, 1.21.9, 1.21.10, 1.21.11paper
Скачать
Что нового
- Fixed duplicated audio in resourcepacks. This should reduce resourcepack size significantly. - Improved performance and quality of video playback - Some bandwidth optimisations - Added `/mcc quality <screen> <performance/balanced/quality>` command for easy selection of playback settings.