
Dream Displays
Create in-game screens to stream your favorite videos in Minecraft.
- Загрузки
- 34K
- Подписчики
- 143
- Обновлён
- 3 июля 2026 г.
- Лицензия
- LGPL-3.0-only
Опубликован 22 апреля 2025 г.
If you enjoy Dream Displays, consider buying me a coffee. Every contribution helps keep the project alive!
Available for Fabric, NeoForge, Quilt, and popular server forks
Dream Displays also supports Fabric servers! No Paper or hybrid server software required.
Create interactive in-game displays that stream YouTube videos in real time, with smooth playback, configurable resolution, and even with synchronization mode for all players on the server.
For this mod to work, players install the client mod, while server admins can install either:
- Server plugin on Paper / Folia / Purpur or other fork
- Fabric server mod on Fabric servers

Features
Client
- Ad-free YouTube video playback, so you can enjoy uninterrupted viewing
- Seamless multiplayer synchronization: local, synced, and broadcast
- Livestreams and premières support
- Direct YouTube search and suggestions
- Vertical display orientation support
- Picture-in-Picture mode
- Adjustable resolutions from 144p up to 4K
- Volume control from 0% to 200%
- Brightness control from 0% to 100%
- Multiple video languages support
- Customizable display sizes in blocks
- Integrated controls for play, pause, and seek
- Hardware accelerations
- And much more!
Server
- Screens and settings remain after the server restarts or when unloaded
- Simple and precise server-side configuration
- Ultra-low network impact and zero lags
- Fabric server support (1:1 as Paper)
- Display commands — manage your in-game screens: create, delete, etc.
- Fine-grained permissions for admin-only control
How to use this mod?
Set up a display using black concrete, select it with a diamond axe, and type /display create. After the display is
created, type /display video <link to YouTube video> [language]
Done! To customize the display, look at it and press Shift + RMB

Ченджлог
1.8.8Релиз26.1.1, 26.1.2, 26.2 · 3 июля 2026 г.
Highlights
- UI improvements like gradient fill, shimmer effects, and more place for suggestions
- Enhanced media player stability and performance; now seeks are smoother and faster
- Enhanced native logging and error handling
- Fix
Fabric1.21.1 display rendering - Fixed some minor issues and edge cases
Client
Features
- Added gradient fill and shimmer effects for thumbnails and loading states
Improvements
- Pausing now keeps the decoder warm on every pipeline, so resume is instant instead of restarting the stream
- Seeking no longer tears the whole session down before reconnecting: the picture holds its last frame while the target position warms up in the background, then jumps — including the loop wrap-around in synced / broadcast modes
- The first decoded frame is now shown immediately on start and seek instead of waiting for the playback cushion to fill
- Stream startup got faster:
FFmpegno longer probes the container with its default 5 MB / 5 s window - Stall recovery now reconnects in the background while the picture holds its last frame instead of blanking
- Reduced render overhead on 26.x versions
- Removed unreachable frame-resize handling from the video reader loop
- Updated the in-process YouTube resolver
NewPipeExtractor - Enhanced
LAVdecoder with cached packets - Enhanced natives logging and error handling
- Enhanced thumbnail's quality
Fixes
- Fixed
Fabric1.21.1 display rendering - Fixed two different videos sharing the same thumbnail when their IDs differed only by letter case
- Fixed a failed thumbnail registration being able to crash the game
- Fixed a rare race during quality switches that could destroy the live display textures and leave the screen rendering through dead handles
- Fixed display teardown leaving already-freed textures reachable, which could lead to rendering through dead handles
- Fixed player initialization callbacks getting lost when registered right as initialization finished
- Fixed the reappearance audio bridge potentially starting mid-sample, which could produce noise
- Fixed several retrying displays being able to block every other display's initialization
- Fixed leaked
yt-dlpsubprocesses when the fast in-process resolver crashed mid-race
Server
Fixes
- Fixed displays with long URLs on
MySQL - Fixed display deletion logic and enhanced
Multiverse-like projects compatibility - Fixed legacy sync packets being able to store an arbitrarily large video duration on the server
1.8.8Релиз26.2 · 3 июля 2026 г.
Highlights
- UI improvements like gradient fill, shimmer effects, and more place for suggestions
- Enhanced media player stability and performance; now seeks are smoother and faster
- Enhanced native logging and error handling
- Fix
Fabric1.21.1 display rendering - Fixed some minor issues and edge cases
Client
Features
- Added gradient fill and shimmer effects for thumbnails and loading states
Improvements
- Pausing now keeps the decoder warm on every pipeline, so resume is instant instead of restarting the stream
- Seeking no longer tears the whole session down before reconnecting: the picture holds its last frame while the target position warms up in the background, then jumps — including the loop wrap-around in synced / broadcast modes
- The first decoded frame is now shown immediately on start and seek instead of waiting for the playback cushion to fill
- Stream startup got faster:
FFmpegno longer probes the container with its default 5 MB / 5 s window - Stall recovery now reconnects in the background while the picture holds its last frame instead of blanking
- Reduced render overhead on 26.x versions
- Removed unreachable frame-resize handling from the video reader loop
- Updated the in-process YouTube resolver
NewPipeExtractor - Enhanced
LAVdecoder with cached packets - Enhanced natives logging and error handling
- Enhanced thumbnail's quality
Fixes
- Fixed
Fabric1.21.1 display rendering - Fixed two different videos sharing the same thumbnail when their IDs differed only by letter case
- Fixed a failed thumbnail registration being able to crash the game
- Fixed a rare race during quality switches that could destroy the live display textures and leave the screen rendering through dead handles
- Fixed display teardown leaving already-freed textures reachable, which could lead to rendering through dead handles
- Fixed player initialization callbacks getting lost when registered right as initialization finished
- Fixed the reappearance audio bridge potentially starting mid-sample, which could produce noise
- Fixed several retrying displays being able to block every other display's initialization
- Fixed leaked
yt-dlpsubprocesses when the fast in-process resolver crashed mid-race
Server
Fixes
- Fixed displays with long URLs on
MySQL - Fixed display deletion logic and enhanced
Multiverse-like projects compatibility - Fixed legacy sync packets being able to store an arbitrarily large video duration on the server
1.8.8Релиз26.1.2 · 3 июля 2026 г.
Highlights
- UI improvements like gradient fill, shimmer effects, and more place for suggestions
- Enhanced media player stability and performance; now seeks are smoother and faster
- Enhanced native logging and error handling
- Fix
Fabric1.21.1 display rendering - Fixed some minor issues and edge cases
Client
Features
- Added gradient fill and shimmer effects for thumbnails and loading states
Improvements
- Pausing now keeps the decoder warm on every pipeline, so resume is instant instead of restarting the stream
- Seeking no longer tears the whole session down before reconnecting: the picture holds its last frame while the target position warms up in the background, then jumps — including the loop wrap-around in synced / broadcast modes
- The first decoded frame is now shown immediately on start and seek instead of waiting for the playback cushion to fill
- Stream startup got faster:
FFmpegno longer probes the container with its default 5 MB / 5 s window - Stall recovery now reconnects in the background while the picture holds its last frame instead of blanking
- Reduced render overhead on 26.x versions
- Removed unreachable frame-resize handling from the video reader loop
- Updated the in-process YouTube resolver
NewPipeExtractor - Enhanced
LAVdecoder with cached packets - Enhanced natives logging and error handling
- Enhanced thumbnail's quality
Fixes
- Fixed
Fabric1.21.1 display rendering - Fixed two different videos sharing the same thumbnail when their IDs differed only by letter case
- Fixed a failed thumbnail registration being able to crash the game
- Fixed a rare race during quality switches that could destroy the live display textures and leave the screen rendering through dead handles
- Fixed display teardown leaving already-freed textures reachable, which could lead to rendering through dead handles
- Fixed player initialization callbacks getting lost when registered right as initialization finished
- Fixed the reappearance audio bridge potentially starting mid-sample, which could produce noise
- Fixed several retrying displays being able to block every other display's initialization
- Fixed leaked
yt-dlpsubprocesses when the fast in-process resolver crashed mid-race
Server
Fixes
- Fixed displays with long URLs on
MySQL - Fixed display deletion logic and enhanced
Multiverse-like projects compatibility - Fixed legacy sync packets being able to store an arbitrarily large video duration on the server
1.8.8Релиз1.21.11 · 3 июля 2026 г.
Highlights
- UI improvements like gradient fill, shimmer effects, and more place for suggestions
- Enhanced media player stability and performance; now seeks are smoother and faster
- Enhanced native logging and error handling
- Fix
Fabric1.21.1 display rendering - Fixed some minor issues and edge cases
Client
Features
- Added gradient fill and shimmer effects for thumbnails and loading states
Improvements
- Pausing now keeps the decoder warm on every pipeline, so resume is instant instead of restarting the stream
- Seeking no longer tears the whole session down before reconnecting: the picture holds its last frame while the target position warms up in the background, then jumps — including the loop wrap-around in synced / broadcast modes
- The first decoded frame is now shown immediately on start and seek instead of waiting for the playback cushion to fill
- Stream startup got faster:
FFmpegno longer probes the container with its default 5 MB / 5 s window - Stall recovery now reconnects in the background while the picture holds its last frame instead of blanking
- Reduced render overhead on 26.x versions
- Removed unreachable frame-resize handling from the video reader loop
- Updated the in-process YouTube resolver
NewPipeExtractor - Enhanced
LAVdecoder with cached packets - Enhanced natives logging and error handling
- Enhanced thumbnail's quality
Fixes
- Fixed
Fabric1.21.1 display rendering - Fixed two different videos sharing the same thumbnail when their IDs differed only by letter case
- Fixed a failed thumbnail registration being able to crash the game
- Fixed a rare race during quality switches that could destroy the live display textures and leave the screen rendering through dead handles
- Fixed display teardown leaving already-freed textures reachable, which could lead to rendering through dead handles
- Fixed player initialization callbacks getting lost when registered right as initialization finished
- Fixed the reappearance audio bridge potentially starting mid-sample, which could produce noise
- Fixed several retrying displays being able to block every other display's initialization
- Fixed leaked
yt-dlpsubprocesses when the fast in-process resolver crashed mid-race
Server
Fixes
- Fixed displays with long URLs on
MySQL - Fixed display deletion logic and enhanced
Multiverse-like projects compatibility - Fixed legacy sync packets being able to store an arbitrarily large video duration on the server
1.8.8Релиз1.21.1 · 3 июля 2026 г.
Highlights
- UI improvements like gradient fill, shimmer effects, and more place for suggestions
- Enhanced media player stability and performance; now seeks are smoother and faster
- Enhanced native logging and error handling
- Fix
Fabric1.21.1 display rendering - Fixed some minor issues and edge cases
Client
Features
- Added gradient fill and shimmer effects for thumbnails and loading states
Improvements
- Pausing now keeps the decoder warm on every pipeline, so resume is instant instead of restarting the stream
- Seeking no longer tears the whole session down before reconnecting: the picture holds its last frame while the target position warms up in the background, then jumps — including the loop wrap-around in synced / broadcast modes
- The first decoded frame is now shown immediately on start and seek instead of waiting for the playback cushion to fill
- Stream startup got faster:
FFmpegno longer probes the container with its default 5 MB / 5 s window - Stall recovery now reconnects in the background while the picture holds its last frame instead of blanking
- Reduced render overhead on 26.x versions
- Removed unreachable frame-resize handling from the video reader loop
- Updated the in-process YouTube resolver
NewPipeExtractor - Enhanced
LAVdecoder with cached packets - Enhanced natives logging and error handling
- Enhanced thumbnail's quality
Fixes
- Fixed
Fabric1.21.1 display rendering - Fixed two different videos sharing the same thumbnail when their IDs differed only by letter case
- Fixed a failed thumbnail registration being able to crash the game
- Fixed a rare race during quality switches that could destroy the live display textures and leave the screen rendering through dead handles
- Fixed display teardown leaving already-freed textures reachable, which could lead to rendering through dead handles
- Fixed player initialization callbacks getting lost when registered right as initialization finished
- Fixed the reappearance audio bridge potentially starting mid-sample, which could produce noise
- Fixed several retrying displays being able to block every other display's initialization
- Fixed leaked
yt-dlpsubprocesses when the fast in-process resolver crashed mid-race
Server
Fixes
- Fixed displays with long URLs on
MySQL - Fixed display deletion logic and enhanced
Multiverse-like projects compatibility - Fixed legacy sync packets being able to store an arbitrarily large video duration on the server
1.8.8Релиз26.2 · 3 июля 2026 г.
Highlights
- UI improvements like gradient fill, shimmer effects, and more place for suggestions
- Enhanced media player stability and performance; now seeks are smoother and faster
- Enhanced native logging and error handling
- Fix
Fabric1.21.1 display rendering - Fixed some minor issues and edge cases
Client
Features
- Added gradient fill and shimmer effects for thumbnails and loading states
Improvements
- Pausing now keeps the decoder warm on every pipeline, so resume is instant instead of restarting the stream
- Seeking no longer tears the whole session down before reconnecting: the picture holds its last frame while the target position warms up in the background, then jumps — including the loop wrap-around in synced / broadcast modes
- The first decoded frame is now shown immediately on start and seek instead of waiting for the playback cushion to fill
- Stream startup got faster:
FFmpegno longer probes the container with its default 5 MB / 5 s window - Stall recovery now reconnects in the background while the picture holds its last frame instead of blanking
- Reduced render overhead on 26.x versions
- Removed unreachable frame-resize handling from the video reader loop
- Updated the in-process YouTube resolver
NewPipeExtractor - Enhanced
LAVdecoder with cached packets - Enhanced natives logging and error handling
- Enhanced thumbnail's quality
Fixes
- Fixed
Fabric1.21.1 display rendering - Fixed two different videos sharing the same thumbnail when their IDs differed only by letter case
- Fixed a failed thumbnail registration being able to crash the game
- Fixed a rare race during quality switches that could destroy the live display textures and leave the screen rendering through dead handles
- Fixed display teardown leaving already-freed textures reachable, which could lead to rendering through dead handles
- Fixed player initialization callbacks getting lost when registered right as initialization finished
- Fixed the reappearance audio bridge potentially starting mid-sample, which could produce noise
- Fixed several retrying displays being able to block every other display's initialization
- Fixed leaked
yt-dlpsubprocesses when the fast in-process resolver crashed mid-race
Server
Fixes
- Fixed displays with long URLs on
MySQL - Fixed display deletion logic and enhanced
Multiverse-like projects compatibility - Fixed legacy sync packets being able to store an arbitrarily large video duration on the server
1.8.8Релиз26.1.2 · 3 июля 2026 г.
Highlights
- UI improvements like gradient fill, shimmer effects, and more place for suggestions
- Enhanced media player stability and performance; now seeks are smoother and faster
- Enhanced native logging and error handling
- Fix
Fabric1.21.1 display rendering - Fixed some minor issues and edge cases
Client
Features
- Added gradient fill and shimmer effects for thumbnails and loading states
Improvements
- Pausing now keeps the decoder warm on every pipeline, so resume is instant instead of restarting the stream
- Seeking no longer tears the whole session down before reconnecting: the picture holds its last frame while the target position warms up in the background, then jumps — including the loop wrap-around in synced / broadcast modes
- The first decoded frame is now shown immediately on start and seek instead of waiting for the playback cushion to fill
- Stream startup got faster:
FFmpegno longer probes the container with its default 5 MB / 5 s window - Stall recovery now reconnects in the background while the picture holds its last frame instead of blanking
- Reduced render overhead on 26.x versions
- Removed unreachable frame-resize handling from the video reader loop
- Updated the in-process YouTube resolver
NewPipeExtractor - Enhanced
LAVdecoder with cached packets - Enhanced natives logging and error handling
- Enhanced thumbnail's quality
Fixes
- Fixed
Fabric1.21.1 display rendering - Fixed two different videos sharing the same thumbnail when their IDs differed only by letter case
- Fixed a failed thumbnail registration being able to crash the game
- Fixed a rare race during quality switches that could destroy the live display textures and leave the screen rendering through dead handles
- Fixed display teardown leaving already-freed textures reachable, which could lead to rendering through dead handles
- Fixed player initialization callbacks getting lost when registered right as initialization finished
- Fixed the reappearance audio bridge potentially starting mid-sample, which could produce noise
- Fixed several retrying displays being able to block every other display's initialization
- Fixed leaked
yt-dlpsubprocesses when the fast in-process resolver crashed mid-race
Server
Fixes
- Fixed displays with long URLs on
MySQL - Fixed display deletion logic and enhanced
Multiverse-like projects compatibility - Fixed legacy sync packets being able to store an arbitrarily large video duration on the server
1.8.8Релиз1.21.11 · 3 июля 2026 г.
Highlights
- UI improvements like gradient fill, shimmer effects, and more place for suggestions
- Enhanced media player stability and performance; now seeks are smoother and faster
- Enhanced native logging and error handling
- Fix
Fabric1.21.1 display rendering - Fixed some minor issues and edge cases
Client
Features
- Added gradient fill and shimmer effects for thumbnails and loading states
Improvements
- Pausing now keeps the decoder warm on every pipeline, so resume is instant instead of restarting the stream
- Seeking no longer tears the whole session down before reconnecting: the picture holds its last frame while the target position warms up in the background, then jumps — including the loop wrap-around in synced / broadcast modes
- The first decoded frame is now shown immediately on start and seek instead of waiting for the playback cushion to fill
- Stream startup got faster:
FFmpegno longer probes the container with its default 5 MB / 5 s window - Stall recovery now reconnects in the background while the picture holds its last frame instead of blanking
- Reduced render overhead on 26.x versions
- Removed unreachable frame-resize handling from the video reader loop
- Updated the in-process YouTube resolver
NewPipeExtractor - Enhanced
LAVdecoder with cached packets - Enhanced natives logging and error handling
- Enhanced thumbnail's quality
Fixes
- Fixed
Fabric1.21.1 display rendering - Fixed two different videos sharing the same thumbnail when their IDs differed only by letter case
- Fixed a failed thumbnail registration being able to crash the game
- Fixed a rare race during quality switches that could destroy the live display textures and leave the screen rendering through dead handles
- Fixed display teardown leaving already-freed textures reachable, which could lead to rendering through dead handles
- Fixed player initialization callbacks getting lost when registered right as initialization finished
- Fixed the reappearance audio bridge potentially starting mid-sample, which could produce noise
- Fixed several retrying displays being able to block every other display's initialization
- Fixed leaked
yt-dlpsubprocesses when the fast in-process resolver crashed mid-race
Server
Fixes
- Fixed displays with long URLs on
MySQL - Fixed display deletion logic and enhanced
Multiverse-like projects compatibility - Fixed legacy sync packets being able to store an arbitrarily large video duration on the server
Комментарии
Загружаем…