Cobalt 25.LTS.20 Stable Release
The Cobalt team has pushed critical patches to the Cobalt 25.lts.stable branch with tag 25.lts.20 (25.lts.20.1034877)
The Evergreen binaries are available on GitHub (5.20.2)
Considering the importance of these patches, the Cobalt team strongly recommends that partners migrate Cobalt to this new version as soon as possible if you have Cobalt 25.lts.stable on your existing devices.
More detailed information can be found in the respective CHANGELOG.md files.
Cobalt Changes
New Features / Support
- Media :
- IAMF :
- Android :
- Added a garbage collection threshold RRO for
SbMediaGetBufferGarbageCollectionDurationThreshold
(#4184) - Fixed a potential nullptr dereference issue in
StopWatchingSocket
. (#4220) - Prevented ANRs at SCREEN_OFF by skipping
eglSwapBuffers
calls aftersurfaceDestroyed
until the nextSurfaceCreated
. (#4252) - Reverted DPad key mapping changes to address unintended issues with game controller operation. (#4261)
- Fixed an issue where the errno was not set correctly on
arm64
devices when an internationalization file could not be opened from the Android asset manager. (#4387) - Accessibility: Restored Starboard A11y implementations for Android on SB 14/15. (#4167)
- Added a garbage collection threshold RRO for
- Network :
- Various performance improvements for HTTP/3 support, with a strong
encouragement for platforms to implement
CobaltExtensionSocketReceiveMultiMsgApi
for optimal networking and streaming performance (#4519)) - Improved network performance by adding the capability to utilize
recvmmsg
on Linux kernel based platforms to read multiple packets in a single system call, resulting in significant bandwidth increases and CPU usage reduction. Implemented with an optional Starboard extension (starboard/extension/socket_receive_multi_msg.h
) (#4321) - Documentation for platforms to add the
CobaltExtensionSocketReceiveMultiMsgApi
extension, available instarboard/doc/networking_performance.md
((#4519)) - Enabled UDP socket connection to improve bandwidth, reduce CPU usage, and potentially decrease connection latency. (#4270)
- Ensured compatibility with older Starboard builds by providing a
fallback mechanism for sending UDP packets on connected sockets, while
retaining performance benefits on platforms with the
SocketReceiveMultiMsg
extension. (#4337)
- Various performance improvements for HTTP/3 support, with a strong
encouragement for platforms to implement
Updates and Improvements
- Removed duplicates for the POSIX APIs from the exported symbols map. (#4179)
- Resolved H264 decoder initialization errors in Xbox by improving texture creation robustness and expanding hardware video decoder logs. (#4159) , (#4137)
- Fixed a bug causing dropped frames during 4K video playback after resuming from rest mode by adding socket watcher closure if there are no pending operations.(#4182)
- Reduced CPU utilization by avoiding unnecessary libevent timers in the
MessagePump
. (#4258) - Fixed a crash in the Cobalt loader app on Starboard 15 caused by a missing
flag in
SbFileOpen
. (#4320) - Fixed a context check error in
DebugServer
by correctly verifying sequenced task execution. (#4326) - Fixed build errors encountered by some compilers
(
crash_report_database_generic.cc
,process_snapshot_linux.cc
, andthread_priority.cc
) (#4227 - Fix issue preventing Cobalt from launching on
ARCH_ARM64
configurations due to structstat
mismatch between musl and arch64 compiler (#4365)
Evergreen
NOTE : Cobalt 25 binaries are not compatible with AOSP EG integrations on SB v14 and v15.
- Added Starboard version check to the Evergreen updater to ensure compatibility with downloaded images. (#4235)
- Enabled a 64 bit build of AOSP APK on 25 LTS (#4351)
Contact Points
Please contact our support channels if you have any problems, questions, or feedback.