9.1
Release notes list only what changed since the immediately preceding release. Please read the full release notes page, including intermediate releases, to compare to your current version.
9.1.151 (August 18, 2026)
Summary
This General Availability release provides a single, unified firmware version across Series 3, 4, 5 and 6 players. Chromium 120 is supported on all player series for consistent performance across mixed player fleets as well as ongoing security improvements.
Feature Changes
- OS-21753: (Series 3 and 4) Setting HWZ to off on Series 3 and 4 players has no effect in this release
- OS-19781 (LGUV5N) The internal storage name has been changed from FLASH: to SD:
Improvements
- OS-20201: (XT5, XT4) Added mirror, mirror_rot90, mirror_rot180 and mirror_rot270 transforms to roHtmlWidget
- OS-21083: (XT5) An error is now logged if multi-channel LPCM EDID has no Speaker Allocation Data Block
- OS-21421: (HD4, LS4) Added implementation for HTML video element setSyncParams method when using the native BrightSign video player in 9.1.
- OS-21732: (General) Added an roPcap BrightScript API to analyze, replay and extract PCAP files.
- OS-21754: (Series 3 and 4) These players now always use BrightSign media player regardless of the registry setting since they don't support Chromium media player playback.
- OS-21765: (General) Added security updates to SRT video transport
Bug Fixes
- OS-20711: (XT4) Resolved an issue where HDMI Input shown in an HTML video tag would sometimes not display.
- OS-21551: (General) Fixed HTML video element onseeked event which was not being called when currentTime was set to the actual current time
- OS-21691: (General) Fixed OOM associated with bt scanning cache
- OS-21711: (Series 5) Fixes chroma keying of limited-range content.
- OS-21716: (Series 5) Fixed startup screens appearing too small and duplicated.
- OS-21743: (General) Fixed occasional HDMI lockup on some models of Hisense televisions.
- OS-21751: (General) Fixed an issue with the mouse cursor not disappearing if done at the same time as destroying an roHtmlWidgetroHtmlWidget
- OS-21796: (General) Fixed a crash associated with the following BrightSign JavaScript methods:
- networkstatus: getInterfaceStatus, getHostStatus
- networkdiagnostics: testInternetConnectivity
- resolver: flushDnsCacheand, brightscript methods
- roNetworkConfiguration: TestInternetConnectivity, FlushDNSCache as well as dws pages dns_lookup, network_diagnostics
- OS-21797: (XT5) Fixed video distortion when using videos with width that was not a multiple of 16.
- OS-21842: (Series 5 and 6 players) Restored support for YUV422 video playback
- OS-21855: (LS5) Fixed a video player crash when video reading data from browser blob object store
- OS-21871: (Series 5 and 6) Resolved a crash when destroying a Text, Ticker, Clock or Image widget
- OS-21881: (Series 5 and 6) Series 5 and 6 players reported roTouchEvent events in focused widget coordinates instead of global display coordinates like Series 4 players. Now these players also use global coordinates.
- OS-21883: (General) Fixed for HTML video playback using the native video player with URLs that contain fragments
- OS-21983: (XC5) Fixed corrupted image shown when using HDR video.
- OS-21984: (Series 3) Fixed HDR mode incorrectly setting SDR with 9.1
9.1.140 Beta (July 14, 2026)
Feature Changes
- OS-15494: (General) QtWebEngine is not available for Chromium versions above 87 (meaning WebRTC desktop sharing is no longer supported)
Bug Fixes
- OS-20469: (XT5, XD5, HD5, LS5, HS5, MD5, LG5) Implemented a fix for default audio input which was not being set correctly on players
- OS-21652: (General) Fixed a Chromium bug that can cause webpages with a page containing @starting-style in the stylesheet to crash
- OS-21708: (General) Fixed handling of large PES packets in MPEG transport streams that would cause rebuffering, stream restarts and loss of sync.
Supervisor v3.3.4.1 Update (OS-21701)
- BCN-21349: Error handling for display firmware update process
- BCN-21366: Check if FW file is completely uploaded before reboot or triggering tv-controller service
- BCN-21552: Don't stop watchdog during shutdown
- BCN-21476: Open WebSockets connection and enable RDWS even with LDWS disabled
- BCN-21051: Supervisor support for opt out
9.1.137 Beta (June 30, 2026)
Improvements
- OS-17808: (LGUV5N) Added crash dump support
- OS-21399: (Series 5 and 6) A new option, DropErrorFrames was added to roVideoPlayer and the HTML video tag. This allows users to configure whether to show frames with errors or drop them (which can cause pauses). By default, these errors are shown on Series 4 and earlier players. On Series 5 and later players, errors are hidden by default.
Bug Fixes
- OS-20573: (General) Fixed poor rendering performance for video in HTML presentations on rotated screens. This issue was intermittent and occurred from start-up; it was introduced in BOS 9.0.168.2 but the failure rate was much higher in versions from 9.0.211 on.
- OS-21094: (General)SetAudioMode(0) can result in no audio if the audio routing set has no valid route for multichannel output. This restores the previous behavior which will do stereo mixdown as a last option.
- OS-21496: (General) JavaScript legacy BSObjects will now receive events when run in nested iframes
- OS-21519: (General) Fixed a JavaScript object construction issue that could result in the error ReferenceError: Cannot access 'objectDefinition before initialization
- OS-21636: (General) Fixed an occasional crash when jobs are cancelled in the dispatch queue
- OS-21639: (General) Disabled the cursor when using Chromium 87
- OS-21640: (General) Fixed BrightScript and JavaScript BLE scanning APIs to include events from peers without discoverable flags
- OS-21641: (General) The list of DHCP server leases can be viewed again via DWS (broken since 9.1.126).
9.1.132 Beta (June 12, 2026)
Improvements
- OS-20976: (General) Mismatched stream lengths on files will no longer be detected as a stall (but will continue to be a stall for live streams).
- OS-21375: (HD4) Electron default reject dialog timeout changed from one to five seconds to allow more time on slower players.
- OS-21215: (General) Improved interlace support when using H.265
Bug Fixes
- OS-20119: (General) Fixed a crash that occurs when restarting the player after creating an HTML widget with invalid parameters.
- OS-20157: (Series 3 and 4) Fixed a 9.1 32-bit overflow error that occurred when calculating sound percentage volume
- OS-20450: (Series 4, 5 and 6) Fixed a crash when mixing explicit and relative video player Z-order APIs.
- OS-21242: (LS5, HS5) Added fix for unresolved EME MediaKeySession.closed promise after session is closed
- OS-21377: (General) Added a fix so Chromium 87 displays web pages (this regressed in BOS version 9.1.121).
- OS-21456: (XT5) Fixed an occasional ticker crash that happened when the RecvThreadPoll CopyElements call created a copied list after removing invalid elements.
9.1.128 Beta (May 13, 2026)
This is a Beta release for all BrightSign Series 3, 4, 5, 6 (XS156) and LGUV5N players.
Improvements
- OS-20967: (XT5) Chroma/luma key performance has been greatly improved, and tearing and juddering on keyed videos has been fixed.
- OS-21103: (General) The BrightSign DHCP server now works correctly even when the link is not present on the interface at startup.
- OS-21120: (General) It is now possible to query the health of player FLASH: storage partition using roStorageInfo.GetDeviceHealth().
- OS-21121: (General) Chromium web inspector will now work on IPv6 addresses by default.
- OS-21126: (General) DHCP leases granted by the BrightSign DHCP server are now persistent across reboots. The lease time has been reduced from ten days to one day.
Bug Fixes
- OS-20183: (General) Fixed an issue introduced on 9.1 with Chromium 120, which caused all graphics widgets (Text, Image, Canvas) to appear behind the roHtmlWidget. Graphics widgets stack in creation order by default and respect their raise() and lower() methods.
- OS-20425: (Series 3 and 4) Fixed an issue where roDeviceInfo HasFeature would not report eAC3 decode as present on players that have a Dolby decode.
- OS-20493: (General) Fixed a five frame audio lead introduced in 9.1.94
- OS-20508: (XD6, XS6) Resolved an issue with 4K output where non-fullscreen video with a resolution of 1920x1080 or less degraded quality
- OS-20569: (General) Fixed a crash during media playback from the asset pool caused by a misconfigured asset pool. The new behavior will be a playback error.
- OS-20570: (LS5) Fixed a file handle leak when using rotated video players
- OS-20708: (LS4) Restored the splash screen during firmware updates (this has been unavailable since BOS 9.1.1).
- OS-20914: (Series 3 and 4) Corrected subtitle placement for videos that are not fullscreen. This addresses a regression in functionality when moving from BOS 9.0.* to BOS 9.1.*
- OS-20981: (Series 4) Fixed a crash that occurs when closed-caption subtitles are used
- OS-21001: (LS5) Fixed memory overflow issue in Panfrost drivers causing an occasional crash when running under heavy memory pressure
- OS-21048: (Series 5) Ensured that players correctly bypass proxies when streaming video
- OS-21049: (General) Restored the behavior of focusing the next window in the stack when the topmost focused window closes
9.1.93.2 (April 30, 2026)
This is a GA release for Series 5, Series 6 and LGUV5N players. There is no version available for Series 3, 4, and AU5 players.
Improvements
- OS-20368: (General) Enabled memory pressure monitoring for roHtmlWidget
Bug Fixes
- OS-19965: (Series 5 and 6) Improved seamless switching of ABR streams when using Chromium Media Player.
- OS-20127: (General) Fixed a lockup that can happen if an error occurs while fetching a blob during roHtmlWidget video playback using the BrightSign native player
Supervisor (3.2.06) and DWS (1.51.0) Update (OS-20345)
9.1.125 Beta (May 1, 2026)
This is a Beta release for all BrightSign Series 3, 4, 5, 6 (XS156) and LGUV5N players.
Improvements
- OS-21120: (General) It is now possible to query the health of player FLASH: storage partition using roStorageInfo.GetDeviceHealth().
- OS-21121: (General) Chromium web inspector will now work on IPv6 addresses by default.
Bug Fixes
- OS-20183: (General) Fixed an issue introduced on 9.1 with Chromium 120, which caused all graphics widgets (Text, Image, Canvas) to appear behind the roHtmlWidget. Graphics widgets stack in creation order by default and respect their raise() and lower() methods.
- OS-20425: (Series 3 and 4) Fixed an issue where roDeviceInfo HasFeature would not report eAC3 decode as present on players that have a Dolby decode.
- OS-20493: (General) Fixed a five frame audio lead introduced in 9.1.94
- OS-20508: (XD6, XS6) Resolved an issue with 4K output where non-fullscreen video with a resolution of 1920x1080 or less degraded quality
- OS-20569: (General) Fixed a crash during media playback from the asset pool caused by a misconfigured asset pool. The new behavior will be a playback error.
- OS-20570: (LS5) Fixed a file handle leak when using rotated video players
- OS-20914: (Series 3 and 4) Corrected subtitle placement for videos that are not fullscreen. This addresses a regression in functionality when moving from BOS 9.0.* to BOS 9.1.*.
- OS-21001: (LS5) Fixed memory overflow issue in Panfrost drivers causing an occasional crash when running under heavy memory pressure
- OS-21048: (Series 5) Ensured that players correctly bypass proxies when streaming video.
- OS-21049: (General) Restored the behavior of focusing the next window in the stack when the topmost focused window closes.
- OS-21138: (XT5) Fixed issues with some 8K videos stuttering and some 4K 10-bit videos being rendered at 8-bit color.
9.1.120 Beta (April 18, 2026)
This is a Beta release for all BrightSign Series 3, 4, 5, 6 (XS156) and LGUV5N players.
Improvements
- OS-3751: (General) Added registry option to use jemalloc as memory allocator:
- In 9.1, with this change, the registry override for jemalloc is 'registry>debug>allocator jemalloc'
- In 9.2, we plan to make jemalloc the default
- OS-20810: (General) Added an enable_pdf_viewer boolean option to roHtmlWidget constructor parameters. Applications should set the flag to 1 to enable the built-in PDF renderer in the browser. If is undefined or false, the browser triggers an roHtmlWidgetEvent with reason download-request.
Bug Fixes
- OS-20389: (LS5) Fixed intermittent crash triggered by GPU power handling when running HTML video
- OS-20687: (XT5) Fixed errors when encoding HDMI input to a file/stream.
- OS-20942: (Series 5 and 6) Changed the behavior of video files served over HTTP. This makes looping behavior for video served over HTTP act like local file playback.
- OS-20957: (XT5) Fixed a stutter that occurs in some H.265 videos
- OS-21049: (General) Restored the behavior of focusing the next window in the stack when the topmost focused window closes.
- OS-21167: (General) Players with configured WiFi will now enter network recovery correctly at boot time. This behavior has been broken since 9.1.47.
- OS-21168: (General) Players with WiFi no longer incorrectly say “Please insert storage device for recovery” briefly before entering network recovery.
Supervisor (3.3.0.0) and DWS (1.57.0) Update (OS-21131)
- BCN-18154: Corrected DWS property lock and storage encryption info URLs
- BCN-18884: SD download buttons are not rendered correctly in smaller screen
- BCN-18885: Improved firmware update reliability with more consistent manifest refresh behavior
- BCN-18997: Updated sendDeviceInfoSetting to also return MAC address when using IPv6
- BCN-19265: Fixed blank storage field in Local DWS format dialog
- BCN-19268: Updated DWS flash storage label to FLASH
- BCN-19270: BrightAuthor:connected 1.81.0 shows duplicate Flash tabs
- BCN-19276: Removed a reboot that can occur on first boot or factory reset when the player has an internet connection
- OS-20699: (XC5, XT5) Restored events to Series 5 and later players to fix a regression introduced in 9.0.166.1
- OS-20880: (LS5) Reduced video artifacts caused by freeing in use cached graphics memory under heavy memory usage.
- OS-21174: roStorageHotplug GetStorageStatus(“USB1:”) no longer returns present = true when there is no USB device present.
9.1.116 Beta (March 25, 2026)
This is a Beta release for all BrightSign Series 3, 4, 5, 6 (XS156) and LGUV5N players.
Improvements
- OS-19598: (Series 4) Added MSE support with Chromium (this was available in BOS 8.5 but is now also available in BOS 9.1)
- OS-20011: (General) roNetworkConfiguration now includes a GetDialupStatus method and the JavaScript networkconfiguration modem object now includes a getStatus method.
- OS-20290: (General) The temporary disable_hw_rotation registry setting has been removed as it is no longer needed.
- OS-20698: (General) Added a priorityOrder attribute to storage
- OS-20753: (General) Enabled memory pressure monitoring for roHtmlWidget
- OS-20980: (General) Added an insecure_private_network_access registry flag to the html section. It disables the security checks when a public website tries to access resources on the local network (PNA, PrivateNetworkAccess).
Bug Fixes
- OS-19674: (XT5) Fixed a problem that prevented the player from producing crash dumps
- OS-20058: (Series 3 and 4) Fixes potential deadlocks when destroying tickers
- OS-20127: (General) Fixed an intermittent lockup if an error occurs while fetching a blob during roHtmlWidget video playback using the BrightSign native player
- OS-20216: (XD5, HD5) Fixed a limitation that artificially restricted the maximum video width to 3840 pixels. These players now handle video modes with a pixel width of 4096.
- OS-20249: (General) Fixed an issue where browser instances created with @brightsign/htmlwidget that send large payloads using BSMessagePort may result in a crash
- OS-20251: (Series 4), Fixed a crash when creating an HTML video tag and using the preferredcaptions attribute in BOS 9.1.x
- OS-20350: (General) Fixed a problem that caused the roHtmlWidget SetRectangle call to be ignored when only the position changed, without altering the size.
- OS-20389: (LS5) Fixed an intermittent crash triggered by GPU power handling when running HTML video
- OS-20430, OS-19033: (Series 5) These players now support chroma-keying properties in the HTML video tag
- OS-20434: (General) Fixed a crash that occurred infrequently at startup
- OS-20494: (XT5) Fixed frame ordering issues
- OS-20603: (General) Ensured that roHtmlWidget Show() call does not complete before the window is actually visible on the screen.
- OS-20660: (XT5) Improved video quality for windowed video with resolutions greater than FullHD
- OS-20688: (General) Fixed an issue with UTF-8 non ASCII characters being corrupted when sent using the roHtmlWidget PostJSMessage method
- OS-20753: (Series 3 and 4) Replaced Chromium’s MemoryPressureMonitor with a unified monitor tracking active media players, PSI (Pressure Stall Information), MemoryPressure from Linux, and available graphics memory on Series 3 and 4 players. It sends memory pressure events to the browser to drop caches and perform garbage collection.
- OS-20768: (XS6) Fixed a bug that caused RTC alarms to only work once every seven days
- OS-20832: (XT5) Fixed a boot loop when HDMI output is disabled
- OS-20880: (LS5) Fixed video artifacts caused by freeing in use cached graphics memory under heavy memory usage.
- OS-20896: (Series 3 and 4) Added support for mouse wheel page scrolling in roHtmlWidget.
- OS-20937: (General) Fixed a crash that occurs when more than 30 HTML video player instances exist at the same time.
- OS-20941: (General) Now the JavaScript field navigator.languages is set correctly when roHtmlWidget constructor parameter language is set
- OS-20971: (Series 3 and 4) Users can now scroll the mouse cursor offscreen in an roHtmlWidget (the cursor no longer gets stuck at edges and corners)
- OS-20978: (XT5, XC5) Fixed issues that occurred when using roHtmlWidget with HTML5 videos that are semi transparent.
- OS-20996: (XT5) Fixed SCTE-20 caption handling. It corrects the parsing the SCTE-20 fields to recover the CC pair count.
- OS-21012, OS-20949, OS-20830: (General) Fixed a number of subtitle regressions
Supervisor (3.2.1.3) Update (OS-20346, OS-20717)
- BCN-18037: Enhanced DWS file upload reliability with hash verification, atomic writes, and improved error handling
- BCN-19028: Player Static IP config is now preserved when applying a Setup package with "use current player settings"
Chromium 120
The YouTube player detects if video is visible on the screen. If the video is not visible, it will not start playback or emit a playing event. Any content that waits for a playing event to start showing the page will not be displayed in this scenario, so users should not rely on playing event, but should use a ready event instead (OS-20283)
- OS-17298: CVE-2025-47203 is fixed by no longer including dbclient in the BrightSign OS.
- OS-20339: Added a fix to Chromium 120 to make HTML pages that use the viewport_meta tag display with the correct scaling
- OS-20452: Upgrade libmicrohttpd to v1.0.2 to address CVE-2023-27371 and also address CVE-2025-59777 & CVE-2025-62689.
- OS-20478: Addressed libexpat CVE-2024-45491, CVE-2024-45492 & CVE-2024-50602.
- OS-20673: Fixed a regression that caused Chromium 120 to fail playing HLS streams, including YouTube Live videos.
- OS-20674: Added the missing Shutdown() method to the BSTicker object
- OS-20675: Fixed a regression in Chromium 120 which incorrectly advertised BrightSign video player MediaCapabilities, causing websites like YouTube to delay video playback while determining the correct codec.
- OS-20888: Added corrections to time zone deficiencies (first corrected in OS-16298)
- OS-20963: Chromium 120 can now render PDF files.
9.1.92.2 (Jan 30, 2026)
This is a Beta release for Series 3, 4, and the AU5 players. It is a GA release for other Series 5, Series 6 and LGUV5N players.
Bug Fixes
- OS-19940: (Series 5) Fixed stream-freeze / player-deadlock that prevents playback from working until reboot
9.1.99 Beta (Jan 29, 2026)
This is a Beta release for all BrightSign Series 3, 4, 5, 6 (XS156) and LGUV5N players.
Improvements
- OS-16912: (Series 5) Enabled multichannel playback on HDMI outputs
- OS-17752: (General) Hotplug handling has been improved, particularly for multiple-output players. Previously outputs could stay blank or powered off indefinitely after hotplug in some circumstances.
- OS-19040: (General) Improved performance of rotated video in certain circumstances
Bug Fixes
- OS-18782: (General) Ensured that players do not start up with scene elements missing or frozen on initial boot. This issue only impacted scene elements rendered via the GPU and video playback was not impacted.
- OS-18884: (General) Fixed potential crashes when popping visible elements from a ticker.
- OS-19208: (General) Fixed handling of global mouse button events for roTouchScreen when the HWZ ordering has been changed.
- OS-19791: (General) Resolved a crash that occured when enabling power saving on an output that is playing video.
- OS-20223: (HD5, XD5) Fixed regressions since BOS 9.0: HTML video playback performance, blank screen in certain situations.
- OS-20350: (General) Fixed a problem that caused the roHtmlWidget SetRectangle() call to be ignored when only the position changed, without altering the size.
- OS-20431: (General) Fixed potential crashes that occured when popping visible elements from a ticker.
- OS-20454: (HD224, HD1024, CV-HD2, S-STBP-HD2, TPS-SP1-4 and OF1006) Updated graphics memory allocation to address an issue with subtitles failing to render
- OS-20494: (XT5) Fixed frame ordering issues
- OS-20517: (General) Fixed an intermittent crash that occured when displaying video tag on HDMI output other than HDMI 1
- OS-20562: (General) Using roBrightPackage on file systems containing symlinks no longer risks causing player reboots.
- OS-20607: (AU5) Fixed a crash when using roSyncManager
Chromium 120
- OS-20451: Fixed CVE-2015-8011, CVE-2015-8012, CVE-2020-27827, CVE-2021-43612 & CVE-2023-41910 in lldpd
9.1.96 Beta (December 19, 2025)
This is a Beta release for all BrightSign Series 3, 4, 5, 6 (XS156) and LGUV5N players.
Breaking Changes
- OS-19781: (LGUV5N) The internal storage name has been changed from FLASH: to SD:
New Features
- OS-18654: (LGUV5N) These players now support IR receiver in BrightScript and JavaScript
Improvements
- OS-17814: (LGUV5N) Audio video playback now synchronized within one video frame
- OS-20011: (General) roNetworkConfiguration now includes a GetDialupStatus method and the JavaScript networkconfiguration modem object now includes a getStatus method.
- OS-20232: (Series 5 and 6) Added support for mirrored transforms in roVideoPlayer.SetTransform
- OS-20322, OS-19986: (General) Video looping behavior is now consistent across all players when using LoopButNotSeamless:
- MEDIAENDED will be raised when returning to the start
- Looping will always have seams (i.e. visible pauses), even if the video is encoded in a way that would otherwise have allowed seamless looping
- The value returned from GetPlaybackPosition will reset to 0, rather than continue to increment when looping.
- Fixed an issue where the behavior of LoopButNotSeamless depended on previous calls to SetLoopMode
- OS-20314: (General) The splash screen now appears earlier in the boot process. It can now be replaced with a customer image using the BrightSign Shell writebootfile command.
- OS-20336: (Series 3 and 4) Fixed 32-bit overflow error when calculating sound percentage volume
- OS-20368: (General) Enabled memory pressure monitoring for roHtmlWidget
- OS-20430, OS-19033: (Series 5 and 6) Chroma-keying properties is now supported in the HTML video tag.
Bug Fixes
- OS-12496: (Series 4) Fixed a crash happening on player bootup
- OS-19326: (Series 4) Fixed playback of H.264 streams with constraint_set5_flag set
- OS-19940: (General) Fix stream-freeze / player-deadlock that prevents playback working until reboot.
- OS-19984: (Series 3, 4) Corrected subtitle placement for videos that are not fullscreen (this addresses a regression in functionality when moving from 9.0.* to 9.1.*).
- OS-20058: (Series 3, 4) Fixed potential deadlocks when destroying tickers
- OS-20127: (Series 5 and newer) Fixed a lockup that can occur if an error occurs while fetching a blob during roHtmlWidget video playback using the BrightSign video player.
- OS-20216: (HD5, XD5) Fixed a limitation that artificially restricted the maximum video width to 3840 pixel width video modes.
- OS-20271: (Series 5) Fixed the handling of midstream audio and video stream configuration changes (e.g. HLS discontinuity) for Chromium media playback
- OS-20284: (General) Fixed touch events which did not work on parts of the screen when an roHtmlWidget was transformed 90 or 270 degrees.
- OS-20324, OS-20067: (HD5, XD5, XT5, LS5, XS6, XD6, HD6, BrightSign Built-in) Fixed parsing of some h.264 encoder streams which caused corruption.
- OS-20357: (General) Fixed the roHtmlWidget LoadFinished event not being set when a data URL is used.
- OS-20381: (XD6) Boot, splash, and upgrade screens now display on these players
- OS-20433: (General) Fixed the loadFinished event not being sent when an roHtmlWidget URL has non standard URL encoding
- OS-20434: (General) Fixed a crash that very occasionally would happen at startup.
- OS-20452: (General) Upgraded libmicrohttpd to v1.0.2 to address CVE-2023-27371, CVE-2025-59777, and CVE-2025-62689.
Supervisor (3.2.0.6) and DWS (1.51.0) Update (OS-20436, OS-20346)
- BCN-18285: Supervisor support for triggering checkins with update service
- BCN-18668: Add player uptime parameter to bsnfetch's request to supervisor update server
- BCN-18643: Create registry key to support custom time interval for update server check-in
- BCN-18519: SD card download API should return 400 response to indicate no on-going operation instead of 404
- BCN-18644: Randomize second update server request time
- BCN-18037: Enhanced DWS file upload endpoint (PUT /v1/files/:path/) with optional SHA-512 hash verification, atomic writes using .partial files, and improved error handling to prevent incomplete uploads.
Chromium 120
- OS-19598: (Series 4) Added MSE support with Chromium
9.1.92.1 (December 4, 2025)
This is a Beta release for Series 3, 4, and the AU5 players. It is a GA release for other Series 5, Series 6 and LGUV5N players.
Improvements
- OS-20368: (General) Enabled memory pressure monitoring for roHtmlWidget
Bug Fixes
- OS-20127: (General) Fixed a lockup that can occur if an error occurs while fetching a blob during roHtmlWidget video playback when using the BrightSign video player that is based on MPV software.
9.1.92 (November 27, 2025)
This is a Beta release for Series 3, 4, and the AU5 players. It is a GA release for other Series 5, Series 6 and LGUV5N players.
New Features
- roHtmlWidget now uses Chromium 120
- OS-15839: (HS5, LS5) Added Widevine DRM Level 3 support for players running Chromium MediaPlayer
Improvements
- OS-14352: (General) Added missing support for setting fonts in an roHtmlWidget using the fonts constructor and AddFont API.
- OS-16166: (Series 5) Added informational fields for roVideoMode. GetHdmiInputStatus to bring reporting in-line with Series 4. The additional fields are input_present, device_present, width, height, interlaced, frame_rate, tmds_clock and colorspace.
- OS-16735: (Series 5) Added support for HTTP proxies when playing back media streams.
- OS-17037: (Series 5 and later) AES Counter mode (AesCtr) and AES Counter mode with HMAC (AesCtrHmac) file decryption added for video files.
- OS-17352: (LS5, HS5, HD5, XD5, Mx, and XT5) Upgraded the rescue kernel to 9.1.61 if the current version is older. This fixes the behavior of the LED during upgrades from rescue mode on players with a single LED.
- OS-17462: (Series 5 and later) AES Counter mode (AesCtr) and AES Counter mode with HMAC (AesCtrHmac) file decryption added for audio files.
- OS-17516: (LS5) Upgraded the rescue kernel to version 9.1.61 if the current version is older. This fixes an issue with applying updates from USB (and SSD on XD5) in rescue kernel version 9.0.130 and later.
- OS-18329: (LGUV5N) On board WiFi now working
- OS-18602: (Series 5 and later) x-bs-audio-mode attribute for audio implemented
- OS-18836: (Series 5) Added support for AES ECB mode decryption of transport streams
- OS-18639: (Series 5) Fixed RTP playback of source-specific multicast streams
- OS-18946: (General) Reduced latency on multicast UDP streams to ~7 frames @ 1080p and ~11 frames @ 4K.
- OS-18983: (General) The messages_pb.js file, which offers the JavaScript bindings for the TV controller protobuf messages, is now generated using protobufjs. This changes the format in which tvcontroller messages and commands are parsed. As a result, application code must be updated. See tvcontroller for details.
- OS-19015: (Series 5) Players now send a MEDIA_ENDED event when HDMI is disconnected, and PLAYING when it's reconnected if it resumes playback.
- OS-19040: (HD5, XD5, LS5, HS5, XT5) Improved performance of rotated video in some circumstances.
- OS-19358: (LGUV5N) Audio can now be enabled with an IR remote and TV joystick
- OS-19383: (LGUV5N) Screen mode rotation and video player rotation implemented
- OS-19445: (General) Updated the set of trusted CA root certificates to match those used by Firefox 140.1.0 ESR. The complete list of trusted CA root certificates is now available from the new cacerts list BrightSign shell command.
- OS-19740: (General) Sped up channel switching for streams containing DSM-CC
- OS-19744: (General) Provided regeneration method for ssh host keys. roNetworkConfiguration.ResetSshHostKeys() and system.resetSshHostKeys() methods added.
- OS-19766: (General) roHttpServer’s constructor now supports a bind_to_interface parameter indicating that the server should only listen on a particular network interface. The parameter should be an interface number or an interface name.
- OS-19988: (General) Added a security_params.trusted_iframes_enabled flag to roHtmlWidget constructor parameters to control iframes access to BrightSign objects and Node.js. By default, iframe access is now denied, and we recommend that you enable all BrightSign-specific APIs through your application rather than through iframes because iframes lets content that may not be under your control access core player APIs.
- OS-20018: Multiple BrightScript objects of the same type can now be used in a single roHtmlWidget
- OS-20117: (General) An HTML tag can now be reused for multiple videos that use the blob URI.
- OS-20182: Added a user_data field to the roHtmlWidget constructor properties
- OS-20189: JavaScript is no longer throttled when roHtmlWidgets are hidden
Bug Fixes
- These roDeviceInfo methods have been deprecated:
- GetVersionNumber(): use GetVersion() or FirmwareIsAtLeast() instead
- GetBootVersionNumber(): use GetBootVersion() or BootFirmwareIsAtLeast() instead
- OS-15387: (LS5, HS5, HD5, XD5, XT5, HS6, XD6) Fixed audio volume controls for SPDIF
- OS-18346: (XD5) Fixed flickering issues when displaying video with subtitles and/or a ticker
- OS-18595: (Series 5) Fixed media looping when it has a negative start PTS.
- OS-18718: (General) Fixed a system hang during playback of corrupted content: Previously, corrupted content could trigger an infinite loop of decoder resets and green-screen output which appeared to cause the player to become unresponsive. This change implements fixes to recover when this condition occurs, or to automatically reboot if the recovery fails.
- OS-18765: (XC5, LS5, HS5, Mx, HD5, XD5, XT5, XS6, HD6, and XD6) The "auto" video mode performance at resolutions above HD was improved to match that of explicit modes.
- OS-18847: (XT5) Fixed a crash where moderately large multi-line strings are pushed into a roTextWidget in scrolling ticker mode. Multi-line strings will still only ever show the first line in scrolling ticker mode.
- OS-19007, 19325: (XT5) Fixed the video stopping when using video sizes of 1px height or 1px width, which can occur during some transition effects on HTML video tags.
- OS-19009: (XS6) Fixed roVideoPlayer not rotating MPEG2 videos.
- OS-19023: (XS6) Fixed video player output rotation for the following cases:
- Subtitles, closed captions
- OS-19152: (Series 3/4) Fixed stale/old CEAX08 captions
- OS-19178: (XC5) Fixed a bug which caused no audio output from HDMI-1
- OS-19250: (General) Fixed HTML video playback when using the player with an HTML page that has transparency
- OS-19260: (Series 5) Fixed AV sync on Series 5 players. Previously, these players exhibited a 3 frame audio lead. Now, the video should always be within +/- 1 frame of the audio.
- OS-19293: (General) Fixed late call of documentCreation and documentReady in javascriptInjection
- OS-19302: (LS5) Fixed playback artifacts on 4K videos when using a cursor
- OS-19312: (General) Resolved a crash that occurs when the player is prompted to perform a soft reset or restart the application. This was a regression from BOS 9.1.50.
- OS-19327: (General) Fixed an issue where roHtmlWidgets can block the roVideoPlayer output when using Chromium120 with automatic z-ordering
- OS-19382: (XT5, XD6) Players now request the correct PoE class 4 budget (25W)
- OS-19389: (General) Fixed AudioDelay parameter when used with local files.
- OS-19390: (Series 5) Fixed StreamLowLatency parameter to make Series 5 consistent with Series 4. Previously the StreamLowLatency parameter still respected the StreamLatency setting when it should have ignored it.
- OS-19436: (Mx) Fixed an occasional crash when audio is enabled and automatic silence insertion occurs.
- OS-19450: (General) Fixed an issue with URLs in the format file:/<drive>:/<directory>/<filename> failing to load
- OS-19463: (Series 5) Added support for the videoinput object
- OS-19471: (General) Fixed an issue where updates made during powersave would not be seen if the HTML widget updated while powersave was enabled but not after powersave was disabled
- OS-19536: (Series 5) Reduced glass to glass latency by ~1 frame for HEVC MPEG transport streams that contain only one full access unit per PES packet. The stream must contain access unit delimiters. This option can be enabled with the option x-bs-stream-pes-contains-only-complete-frames (or StreamPesContainsOnlyCompleteFrames in BrightScript) for compatible streams.
- OS-19561: (LS5, HS5) Fixed a slower graphics (e.g. WebGL) performance regression in the BOS 9.1.52 beta release.
- OS-19567: (LS5) Fixed a bug where interlaced videos were de-interlaced, but only showed every other frame; this also sometimes led to jittery playback.
- OS-19569: (LS5) Fixed an issue with BSSyncManager sometimes crashing when the HtmlWidget is destroyed if its close method was earlier called.
- OS-19570, OS-19897: (Series 4 and 5) Fixed the audio logDb setting. Series 4 and 5 players now set the audio volume levels consistently when using the Db API.
- OS-19595: (General) Fixed an issue with BSCECTransmitter ::SendRawMessage not sending data correctly and callback onececrxframe in BSCECReceiver either resulting in a crash and not being called correctly.
- OS-19610: (General) Fixed a failure to remove signed extensions on factory reset
- OS-19612: (General) Fixed an issue where the DWS SetPowerSaveMode did not have a visible effect.
- OS-19625: (General) Fixed crashes with certain sizes of cursor image.
- OS-19659: (XS156) Fixed output of 2376x288x60p video mode
- OS-19667: (XC5) Fixed a crash that occurs when restarting the BrightSign application
- OS-19681: (Series 3/4 players) Fixed videos missing from screenshots in certain mosaic mode configurations
- OS-19682: (XT5) Fixed a crash that occurs while shutting down BrightSign application when there are open HTML widgets.
- OS-19701: (General) Fixed a crash in the video player when AES parameters are misconfigured
- OS-19719: (HD5, XD5, LS5, HS5) Fixed an issue with 10-bit videos with video player rotation missing from the output.
- OS-19721: (General) Fixed an issue with file URLs not working when using htmlwidget
- OS-19741: (Series 5 and later) Playback will now fail rather than waiting for the channel to come on air when playing an MPEG-TS stream with no channels transmitting content, as it does on Series 4 and earlier.
- OS-19771: (General) HTML5 video playback on Vimeo, and other players that use mse, no longer need the PLAY button to be pressed twice to start playback.
- OS-19797: (General) Fixed an issue with XHR requests failing on some web pages when the registry setting disable-http-cache is enabled and a storage path is set for an roHtmlWidget
- OS-19830: (General) Fixed an error when parsing address data for lost bt device. This impacts bt.devicelost event as well as roBtCentralManager.DeviceLostEvent
- OS-19832: (General) Fixed a reset that can occur when using htmlwidget to create htmlwidgets that use Brightsign JavaScript objects
- OS-19863: (General) Fixed a memory leak caused by the getBVNComponents() method in devicestatus
- OS-19866: (XD5) Unformatted SSDs are now detected and reported correctly which allows them to be formatted automatically on boot (regression in BOS 9.0.139 and later)
- OS-19870: (XD5) Unformatted or corrupt USB drives no longer risk being reported as not present by roStorageHotplug.GetStorageStatus("USB1:")
- OS-19881: (LS5) Fixed a potential deadlock when changing the keyboard layout while pressing keyboard keys
- OS-19880 (General): Added a fix for BSDatagramSocket not working after an HTML page is reloaded by JavaScript
- OS-19901: (General) BSBtManager has been entirely removed and is no longer available - use the JavaScript bt object instead.
- OS-19940: (General) Fix stream-freeze / player-deadlock that prevents playback working until reboot.
- OS-19971: (LS3, HD3, LS4) Fixed colorspace differences between low end devices and other device series.
- OS-19975: (XC5) Fixed a crash and/or no output in some situations with the mouse cursor enabled
- OS-20040, OS-20041: (General) Several legacy BrightScript objects (BSControlPort , BSIRReceiver , BSDatagramSocket , BSSerialPort) had small differences between how DOM events and callbacks are generated. Legacy BrightScript JavaScript objects on 9.1 (Chromium120) releases now have the same event structure as 9.0 releases (Chromium87)
- OS-20091: (XD5) Fixed some crash regressions occurring on BOS version 9.1.73 and later
- OS-20133: (General) Fixed a reset that can occur when destroying htmlwidgets that use BrightSign JavaScript objects and were created using htmlwidget
- OS-20139: (XC5) Fixed a problem that assigned touchscreens to hdmi-2 instead of hdmi-1
- OS-20153: (General) Fixed a reset that can occur when creating and destroying multiple htmlwidgets that were created using htmlwidget
- OS-20173: (General) roHtmlWidget raise/lower now functions correctly.
- OS-20303: (General) Fixed the case where no load-finished event is generated when the main frame URL in an roHtmlWidget is changed by JavaScript
- OS-20231: (General) Fixed BSSerialPort::SendBytes not sending data correctly
- OS-20250: (General) Fixed for a load finish event being generated whenever a load fail occurs and for a load fail event being sent for iframes.
- OS-20253: (General) Now avoids having two roHtmlWidgets having input focus simultaneously.
- OS-20312: (General) Fixed a crash that occurs when restarting the player after creating an HTML widget with invalid parameters.
- OS-20291: (Series 5, 6 players) Fixed PlayStaticImage with rotated output videomodes
Supervisor (3.2.0.4), DWS (1.48.0), and Default Autorun (1.1.0) Update (OS-19943, OS-19928, OS-19910, OS-19891, OS-19343, OS-20171)
- BCN-18358: Implemented DWS API password strength validation
- BCN-18369: The DWS now generates per player TLS/certificates and enables HTTPS access by default
- BCN-18384: For new or factory reset players, Local DWS will be disabled by default
- BCN-18390: Temporarily removed the ability to enable Local DWS from RDWS
- BCN-18398: Removed the Telnet option from the DWS UI and enforced complexity requirements for the SSH password
- BCN-18411: On-device setup functionality removed except for the activation code and WiFi setup method
- BCN-18401: Added a section to the Control tab which lets users reset SSH host keys
- BCN-18404: Added DWS API support to reset SSH host keys
- BCN-18429: When users upgrade their OS to this or later versions, the Local DWS will still be enabled with serial number as password by default as it was previously
- BCN-18444: Added DWS section in Control tab to reset TLS certificates used by DWS
- BCN-18445: Fixed cannot connect to Local DWS on non-default port
- BCN-18450: A new enable_http_redirect flag has been added to the networking section. If it is set to false, external requests to HTTP will be processed normally instead of redirected.
- BCN-18506: Fixed player cannot load activation screen when Local DWS disabled
Chromium 120
Chromium 120 does not support accessing the Web Inspector through an HTTP server. We recommend using the chrome://inspect interface documented here.
- OS-17565: Fixed curl CVE-2024-7264.
- OS-19209: Fixed mouse cursor show/hide when cursor is on video or HTML widget
- OS-19413: Fixed the data type of getBytes() in the BSDatagramSocket ondatagram event in Chromium 110 not being an ArrayBuffer
- OS-19913: The JavaScript cookiestore object has now been implemented
Known Issues
- OS-17649: Series 3/4 players don’t support non-hwz video
- OS-17650: Chromium Media Player is not supported on Series 4 players
- OS-17651: Mouse scroll is not supported on Series 3/4 players
- OS-19063, OS-19981: The ticker is not frame-accurate, so it can skip more frames than previously and uses more resources.
- OS-19145: Sharing the BrightSign player output over WebRTC is not supported
- OS-19598: Series4 players don’t support MSE using Brightsign Media Player.
- OS-19971: Series4 players will have slight differences between screenshots and golden images/comparison values.
- OS-19973: Chromium120 initial page launch is slower than Chromium87
- OS-19979: WebGL performance and graphics in general isn’t as good as previously
- OS-19983: Stream the screen functionality cannot stream graphics surfaces
- OS-19984: Closed captions are not displayed if video window is not full screen
- OS-19987: Scrolling a webpage with a video is very jerky
Deprecated Features
There is no plan for the following known issues to be addressed. They are either deprecated or deleted features:
- OS-17098: mpcdi is not supported
- OS-19143: @brightsign/compositor functions pause(), resume() only work for graphics generated by BrightSign objects such as, roTextWidget, roImageWidget etc. roHtmlWidget graphics cannot be paused() and resumed()
roHtmlWidget Migration Tips
The Chromium 87 to 120 upgrade is designed to be as transparent as possible for roHtmlWidget users. However, you may need to make the following changes to your application code:
- New trusted_iframes_enabled flag in security params: To enhance security iframes are now denied access to BrightScript-JavaScript objects and Node.js by default. The following example shows how to set this new parameter while keeping code backwards compatible:
- BrightScript-JavaScript Objects resources: Several of the BrightScript objects have a Close method that will shut down the instance to prevent it from further consuming resources. If this method is not called, garbage collection determines when the instance will be destroyed. From this release onwards all BrightScript-JavaScript Object have a Close method and you should modify your application code to call this. The following example shows how to call the new Close method in BSMessagePort and keep backwards compatiblity.
- The timing of roHtmlWidget initialization has changed in Chromium 120 compared to Chromium 87. This affects how SetUserData and MapFilesFromAssetPool behave when using constructor properties.
9.1.52 Beta (June 18, 2025)
This Beta release supports all BrightSign Series 3, 4, 5, 6 (XS156) and LGUV5N players. This release enables partners to evaluate this version in their production environments and specific use cases prior to a General Availability (GA) release.
New Features
- OS-16282, OS-17497, OS-17652, OS-18041, OS-18420, OS-18421: roHtmlWidget now uses Chromium 120:
- Series 5 players can switch back to Chromium87 by setting the html > widget_type registry value to chromium87.
- roHtmlWidget cannot be switched back to Chromium87 on Series 3 and 4 players.
- OS-18181: (General) Added a new registry value, html > disable-http-cache 1, that allows customers to completely disable the Chromium HTTP cache to reduce the number of files created on SD card.
- OS-17871: (LS5, HS5) Enabled the NPU
- OS-19173: (General) Added a new registry setting, html > web_inspector_port, that allows the web inspector port to be changed from the default value of 2999
- OS-19194: (Series 5) Added support for AudioDelay parameter to match Series 4 behavior; this allows the user to configure a deliberate AV offset.
Improvements
- OS-16027 (XT5) Added HDCP passthrough support
- OS-16166: (Series 5) Added informational fields for roVideoMode.GetHdmiInputStatus() to bring reporting more in-line with that seen on Series 4
- OS-17752: (All) Hotplug handling has been improved, particularly for multiple-output players. Previously outputs could stay blank or powered off indefinitely after hotplug in some circumstances.
- OS-17878: (General) The roNodejs Node.js version is now upgraded to version 18.18.2
- OS-18221: (Series 5) Added support for handling discontinuities in MPEG transport streams
- OS-18293: (Series 5 and 6 players, except the AU5) On-board storage can now be formatted.
- OS-18387: (General) Added a GetStorages() method to roStorageHotplug to list the available storage devices
- OS-18424: (XT5) Added support for NV16 and NV24 input formats on HDMI-in port.
- OS-18425: (General) Disabled TLS1.3 support in EAP to improve compatibility with 802.1x/WPA networks
- OS-18670: (XS156) Implemented low-power states used by MOKA displays
- OS-18689: (General) Added support to stop Bluetooth scanning to the JavaScript bt object
- OS-18724: (BrightSign Built-in, XD6) Added kernel-level support for Bluetooth LE advertisement scanning
- HW-1007: (HS5, LS5) improved the reliability of the SD card interface
- OS-18598 (XS6) : Improved the efficiency of video rotation when using the roVideoMode.SetScreenModes API (or JavaScript equivalent). If issues occur, this feature can be disabled using the `disable_hw_rotation` registry setting described in BrightSign Registry Keys.
- OS-18602: (Series 5 and later players) `x-bs-audio-mode` attribute for @brightsign/audio implemented as described on this page.
- OS-18765: (General) Fixed accidental selection of fullres graphics when using videomode “auto” with 4K monitors. This graphics configuration now matches that selected by an explicit 3840x2160 videomode.
- OS-18805: (LGUV5N) Added support for CEA608 and CEA708 subtitles.
- OS-19015: (XT5) Players now send a MEDIA_ENDED event when HDMI-in is disconnected and PLAYING when it's reconnected if it resumes playback.
- OS-19031: (General) Added a “html”->”spatial-navigation” registry flag, which enables spatial navigation for roHtmlWidget and roElectron if value is set to “1”
- OS-19033: (Series 5) Added support for chroma-keying properties in the HTML video tag
- OS-19084: (General) In roHtmlWidget, removed support for force_shared_storage and force_unshared_storage flags because sharing the storage location between multiple roHtmlWidget instances no longer carries a risk of data corruption. The behavior is now that the browser storage is shared if the same storage path is used or not specified.
- OS-19173: (General) The web inspector port will now always use port 2999. In the 9.1 GA release, this parameter will be configurable with registry settings.
- OS-16097: (Series 5) A new audio > volume registry setting is available. The value, which defaults to “logarithmic”, can be set to “linear” to make the audio volume curve act the same as Series 4 and earlier players.
- OS-18685: (XS6) Added crashdump support
- OS-18716: (Series 5 and later) The StreamProbe parameter now works for Series 5 players.
- OS-19211: (General) Extensions can now be listed and removed from the BrightSign shell using the "extensions" command.
- OS-19303: (Series 4) Series 4 players will now have the same volume curve as Series 5 when using the audiooutput volumeLinear or roAudioOutput SetVolume APIs. This change will mean that volumes in the middle of the range will be louder than previous versions of the software on Series 4 players.
Bug Fixes
- OS-15468: (XC5, XD5) Prevented the infrared transmit line always idling high drawing excess current. Detects that an roIRReceiver has been created and powers the receiver while it is being used.
- OS-16504: (LS5) 10-bit videos now appear correctly in screenshots. Previously they were replaced by a solid dark red area.
- OS-17176: (HS5, LS5) Fixed tearing/glitching of graphical elements caused by the GPU displaying partial frames
- OS-17206: When using the BrightSign media player with Chromium 120, this fixes cases where video is not shown or shown with incorrect transparency when the HWZ is set to negative values.
- OS-17305: (HS5, LS5) Fixed visual artifacts on these players when GPU composition was used
- OS-17505: (XT5, XD5, HD5, LS5, HS5 and XS6) Fixed display issues with ticker widgets that have non-multiple-of-4 widths
- OS-17679: (General) Made window surfaces transparent by default, so that content beneath transparencies is visible
- OS-17706: (General) Ensured that the window background can be hidden
- OS-17825: (XC5) Upgraded kernel to fix an audio-related crash
- OS-17945: (General) Fixed an issue with roHtmlWidget setRectangle not working (windows cannot be moved after they are created)
- OS-18002: (General) Hidden/private sections are no longer reported by the legacy DWS registry_dump API.
- OS-18309: (General) Fixed a crash that occurs when a new video is started.
- OS-18516: (General) Fixed support for HID devices, like the RF Air mouse, so they work with all buttons
- OS-18610: (Series 5) @brightsign/videooutput.getPowerSaveMode() now returns the correct result
- OS-18620: (XT5) Fixed inability to render roTextWidget smooth tickers on revision F and newer hardware.
- OS-18626: (General) Fixed a player stall after “circular buffer overrun”
- OS-18627: (General) Fixed freeze frame and repeated circular buffer overruns after restarting
- OS-18636: (General) Removed teardrop icon which appeared with a long press touch
- OS-18661: (Series 5) Fixed @brightsign/virtualinput and ensured that events are raised in the right order
- OS-18704: (General) Fixed roHtmlWidget.InjectJavascript in Chromium120
- OS-18773: (General) Fixed a deadlock during playback end.
- OS-18787: (BrightSign Built-in) Cropped videos should now play properly
- OS-18822: (General) Fixed a @brightsign/keyboard crash that occurred when non-ASCII characters are used in the keyboard (for example, VolumeUp/VolumeDown)
- OS-18856: (XT5, LS4) Crash in roElectron object creation is now fixed. roElectron is an Alpha feature.
- OS-18876: (BrightSign Built-in) OS updates no longer fail if a USB drive containing an update is inserted whilst a presentation is running or if many USB drives are attached
- OS-18574: (LS5, XT5, BrightSign Built-in) Set correct color format on HDMI output when switching between RGB and YCbBr4:2:0 modes
- OS-18783: (General) Fixed a crash caused by a max value number conversion
- OS-18925: (General) Fixed an roElectron and roNodejs object creation failure in the case where an empty object is passed as a constructor parameter.
- OS-18921: (Series 5) Fixed a crash caused by extended periods of Bluetooth scanning
- OS-18990: (XC4055) Fixed a potential crash with the restartapplication() call
- OS-19008: (MD435) Minimum bootloader version bumped to 9.0.207
- OS-19164: (General) Fixed synchronous playback of UDP MPEG2 TS that contains audio tracks that are not at a 48 kHz sample rate.
- OS-18772: (Series 5 and 6) Fixed an issue where an HTML5 video using the BrightSign video player is hidden by setting display: none, it will still be shown if HWZ is on.
- OS-18870: (BrightSign Built-in, XS156) Fixed an issue with running Node.js modules from within roHtmlWidget
- OS-17577: (Series 5 and 6) Fixed a crash in the compositor
- OS-18602: (Series 5 and later) Fixed `x-bs-audio-mode` attribute for @brightsign/audio
- OS-18782: (XS6) Fixed frozen/missing scene elements on initial boot
- OS-18718: (Series 5 and 6) Fixed a system hang during playback of corrupted content
- OS-19023: (XS6) Fixed video player output rotation for:
- roVideoPlayer.SetViewMode()
- Subtitles, closed captions
- OS-19153: Fixed a crash when playing AES encrypted video files
- OS-19214: (Series 5) Fixed the volume setting when specifying volume in decibels. Applies to both audiooutput and roAudioOutput.
- OS-19237: Fixed a crash while playing MP3 files in HTML
Proposed Feature Changes
The behaviour of the audio volume curve on Series 4 players will be altered in the General Availability release to align with that currently used on Series 5 and 6 players.
- Series 4 has previously implemented a linear curve whereas Series 5/6 implement a logarithmic curve, so there was a mismatch between the series
- On Series 4, the default behavior will be the same logarithmic curve as Series 5 and is defined in a registry setting.
- The JavaScript audiooutput and BrightScript roAudioOutput APIs will support functions to switch between the default logarithmic curve and legacy linear curve, for backwards compatibility.
Known Issues (Temporary)
The following known issues will be addressed before the General Availability release:
- OS-14352: Specifying custom fonts for browser using AddFont API and fonts roHtmlWidget constructor parameter is no longer supported. Use HTML webfonts as a substitute. This feature is only supported in BrightAuthor Classic (not BrightAuthor:connected).
- OS-17651: Mouse scroll is not supported on roHtmlWidget on Series 4
- OS-18297: Tearing on HD5 and XD5 when GPU rendering is used with Chromium to play certain lower resolution videos with BrightSign video player.
- OS-19145: Sharing the BrightSign player output over WebRTC is not supported
- OS-19358: (LGUV5N) Audio has been enabled, and defaults to 100% of maximum (normal BrightSign behavior). Media with audio will play at high volume since there is currently no volume control on the display.
Known Issues (Permanent)
There is no plan for the following known issues to be addressed. They are either deprecated or deleted features:
- OS-17098: mpcdi is not supported
- OS-19143: @brightsign/compositor functions pause(), resume() only work for graphics generated by BrightSign objects such as, roTextWidget, roImageWidget etc. roHtmlWidget graphics cannot be paused() and resumed()
Supervisor (2.0.23), DWS (1.43.0), and Autorun (0.0.88) Updates (OS-18337, OS-18381, OS-18788, OS-18848)
- BCN-17505: (BrightSign Built-in) The default autorun can now use flash as the default storage
Chromium 120
- OS-18548: Fixed the implementation of focus tracking so window focus works correctly when a second window is displayed
- OS-19093: Fixed CVE-2025-0395
Chromium 120 Known Issues
- BSSecureStore is being replaced by @brightsign/securestore. Please review the documentation for the migration example. This is a permanent, not temporary, issue.