Health Checks

Check Message

Full changelog is available on GitHub

Release Notes

Added

  • Add new collection type Rerun Collection
    • This collection type will show up as two collection types in classic schedules
      • Rerun (First Run)
      • Rerun (Rerun)
    • The playback order for each of these collection types can be set on the rerun collection itself
      • e.g. Season, Episode order for first run, Shuffle for rerun
    • When a first run item is added to a playout, it will immediately be made available in the rerun collection
    • Rerun history is currently scoped to the playout, and only supported in classic schedules
      • This means resetting the playout will reset the rerun history
    • Items will still be scheduled from the rerun collection if it is used before the first run collection
      • Otherwise, the rerun collection would be considered "empty" which prevents the playout build altogether
  • Add Rkmpp hardware acceleration by @peterdey
    • This is supported using jellyfin-ffmpeg7 on devices like Orange Pi 5 Plus and NanoPi R6S
  • Block schedules: allow selecting multiple watermarks on block items
  • Block schedules: allow selecting multiple graphics elements on block items
  • Add motion graphics element type
    • Supported in playback troubleshooting and all scheduling types
    • Supports video files with alpha channel (e.g. vp8/vp9 webm, apple prores 4444)
    • Supports EPG and Media Item replacement in entire template
      • EPG data is sourced from XMLTV for the current time
        • EPG data can also load a configurable number of subsequent (up next) entries
      • Media Item data is sourced from the currently playing media item
    • Template supports:
      • Content (video_path)
      • Placement (location, horizontal_margin_percent, vertical_margin_percent)
      • Scaling (scale, scale_width_percent)
      • Timing (start_seconds)
      • End behavior (end_behavior)
        • disappear (default) - disappear after playing once
        • loop - loop forever
        • hold - hold last frame forever, or hold_seconds
      • Draw order (z_index)
  • Add search fields to filter collections, schedules and playouts tables
  • Add selected row background color to schedules and playouts tables
  • Graphics engine text element: add width_percent and text_fit to support wrapping and scaling text
    • text_fit: none or unspecified will keep existing behavior (render text exactly as configured)
    • text_fit: wrap will wrap text to the given width_percent
    • text_fit: scale will scale text smaller to fit the given width_percent
      • Text that already fits with the configured style will not be adjusted
  • Block schedules: add experimental Break Content to decos
    • Break content is similar to filler from classic schedules
    • Break content is currently limited to placement Block Start (play before anything else in the block)
      • Future work will add other placement options
    • Break content is currently limited to playlists (which do not pad - they simply play through the playlist one time)
      • Future work will add other collection options which will pad to the full block duration
  • Add page to reorder channels (edit channel numbers) using drag and drop
    • New page is at Channels > Edit Channel Numbers
  • Scripted schedules: add setting to configure timeout of scripted playout build
    • New setting is at Settings > Playout > Scripted Schedule Timeout
  • Add experimental streaming mode HLS Segmenter (fmp4)
    • This mode is required for better compliance with HLS spec, and to support new output codecs
    • This mode will replace HLS Segmenter when it has received more testing
  • Allow HEVC playback in channel preview
    • This is restricted to compatible browsers
    • Preview button will be red when preview is disabled due to browser incompatibility
  • Add AV1 encoding support with NVIDIA, VAAPI and QSV acceleration
    • This also requires HLS Segmenter (fmp4)
  • Add Stream Selector option to playback troubleshooting tool
    • This can be helpful for validating stream selector behavior with specific content
    • Manual subtitle selection will be disabled when using a stream selector
  • Add basic log viewer to playback troubleshooting tool
    • Streaming log level will be forced to Debug during troubleshooting
    • Streaming log level will be restored to its previous value after troubleshooting completes
  • Add playout build status to UI
    • Playouts that fail to build will be highlighted yellow in the playouts table
    • Clicking on the failed playout will display the warning or error that caused the playout build to fail

Fixed

  • Fix green output when libplacebo tonemapping is used with NVIDIA acceleration and 10-bit output in FFmpeg Profile
  • Fix playback when invalid video preset has been saved in FFmpegProfile
    • This can happen when NVIDIA accel falls back to libx264 software encoder for 10-bit h264 output
  • Fix 10-bit output when using NVIDIA and graphics engine (watermark or other overlays)
  • Fix playback of Jellyfin content with unknown color range
  • Block schedules: skip collections (block items) that will never fit in block duration
  • Block schedules: skip media items that will never fit in block duration
  • Fix HLS playlist generation for clients that actually care about discontinuities (like hls.js)
    • This should resolve most playback issues with built-in channel preview
  • Fix deco dead air fallback selection and duration on mirror channels
  • Fix fallback filler duration on mirror channels
  • Fix slow startup caused by check for overlapping playout items
  • Fix green line in most cases when overlaying content using NVIDIA acceleration and H264 output
  • Fix non-SRT (e.g. SSA/ASS) external subtitle playback from media servers
  • Fix extracted text subtitle playback from media servers
  • Fix extracted text subtitles getting into invalid state after media server deep scans
    • Targeted deep scans will now extract text subtitles for the scanned show
  • Fix playlist preview
  • Use NVIDIA NvEnc API to detect encoder capability instead of heuristic based on GPU model/architecture
  • Use NVIDIA Cuvid API to detect decoder capability instead of heuristic based on GPU model/architecture
  • Fix filler expression not being respected when using a playlist as filler
  • Use "repeat count" metadata from animated GIFs in graphics engine (i.e. watermarks)
    • GIFs flagged to loop forever will loop forever
    • GIFs with a specific loop count will loop the specified number of times and then hold the final frame
      • Note that looping is relative to the start of the content, so this works best with permanent watermarks
  • Fix some more hls.js warnings by adding codec information to multi-variant playlists
  • Fix hardware decode of h264 constrained baseline content using VAAPI accel
  • Custom stream selector: ignore embedded text subtitles that have not been extracted
  • Fix cropping Jellyfin and Emby content that is smaller than the crop resolution
  • Sync movies with non-file media sources (e.g. http/nfs) from Emby movie libraries by @jasonarends

Changed

  • Filler presets: use separate text fields for hours, minutes and seconds duration
  • Use autocomplete fields for collection searching in deco editor
    • This greatly improves the editor performance
An error has occurred. This application may no longer respond until reloaded. Reload 🗙