Skip to content

ppobs v32.1.2-rc002

Pre-release
Pre-release

Choose a tag to compare

@Elon666-ai Elon666-ai released this 12 Sep 05:59
· 61 commits to main since this release

ppobs v32.1.2-rc002

This version includes enhanced WHIP/P2P streaming, HEVC/H264 multi-track simultaneous broadcast, SRT simultaneous broadcast, optimized live streaming settings, improved image quality processing capabilities, and stability fixes.

WHIP / P2P Streaming

  • Added WHIP HEVC + H264 multi-track streaming
  • H264 and HEVC use separate WHIP sessions
  • Each session carries audio separately
  • Supports multi-layer Simulcast for H264/HEVC
  • Automatically matches the corresponding vendor's H264/HEVC encoder
  • Provides explicit prompts when the HEVC encoder is unavailable
  • Added WHIP P2P NAT detection
  • Detects the publisher's NAT type before streaming
  • Persistentizes device ID
  • Automatically downgrades to Edge-only when NAT detection fails, without blocking streaming
  • Added PPCenter STUN service deployment and configuration
  • Enhanced P2P WebSocket signaling security
  • Forces remote signaling to use wss://
  • ws:// only allows localhost/loopback
  • Fixed IPv6 loopback address handling
  • Fixed WHIP connection establishment, reconnection, and termination processes
  • Faster disconnection recovery
  • Added reconnect watchdog
  • Limit reconnection frequency to avoid duplicate reconnection threads
  • Fixed data transmission race condition when connection is closed
  • Fixed residual reconnection after degrade WebSocket stops
  • Fixed issue where the encoder remained active after WHIP output failure
  • Fixed issue where WHIP output was stuck at 0 bitrate
  • Support for {ppcenter_appid} expansion
  • WHIP endpoint supports App ID placeholders
  • Custom SRT URL's streamid also supports App ID placeholders

Simulcast / SRT

  • Added single SRT connection to carry multiple Simulcast streams
  • Each video encoder outputs an independent H264 elementary stream
  • Support for routing video packets by track_idx
  • Each layer independently waits for a keyframe before starting transmission
  • Preserves the high-to-low Simulcast hierarchy order
  • Creates independent FFmpeg AVStream and encoding state for each layer
  • SRT Simulcast is limited to a maximum of 4 layers.
  • WHIP Simulcast is also limited to a maximum of 4 layers.
  • SRT multi-channel video requires all video encoders to be H.264.
  • Fixed compatibility issues with the first H.264 Access Unit of the hardware encoder.
  • Supports valid Annex-B leading zeros.
  • Supports 4-byte AVCC to Annex-B conversion.
  • Correctly cleans up FFmpeg/MPEG-TS state when initialization fails.
  • Custom services no longer display inapplicable independent "Multitrack Video Settings".
  • Retains the unified "Simultaneous Playback Configuration" entry for custom services and WHIP.

Push Streaming Limitations

WHIP push streaming has added hard limits, applicable to all startup methods and reconnection paths:

  • Maximum landscape resolution: 3840x2160
  • Maximum portrait resolution: 2160x3840
  • Maximum FPS: 60
  • Maximum video bitrate: 10000 Kbps
  • H264, HEVC, and all Simulcast layers are validated separately.
  • Output stops and a clear error is logged when limits are exceeded.
  • Settings interface provides advance warning of resolution and FPS exceeding limits.

Live Streaming Settings

  • Unified configuration items for custom services and WHIP:
  • Endpoint
  • Simultaneous Broadcast
  • Authentication Center
  • Interval Live Streaming Configuration
  • Custom and WHIP endpoints are remembered separately.
  • Endpoint addresses will not be used interchangeably when switching between the two services.
  • Authentication center configuration is also displayed for custom services.
    Custom service authentication center fields are saved to the corresponding service settings.
    Custom services retain the user-selected audio encoder.
  • No longer automatically switching or hiding encoders such as Opus based on protocol recommendations.
  • Simultaneous broadcast encoders are uniformly limited to 4 layers.

Image Quality and Video Processing

  • Added Clarity filter
  • Added Temporal Denoise filter
  • Added basic Beauty filter
  • Added face beautification/stylization capabilities
  • Added ROI-Related Capabilities
  • Manual ROI selection
  • Decoupling ROI from WHIP service settings
  • Moving ROI settings to the video settings page
  • Adding live streaming quality score
  • Calculating video quality score and PSNR
  • Supporting quality degradation alerts
  • Supporting quality score preview overlays
  • Adjusting quality processing defaults and UI text
  • Enhancing QSV/hardware encoder bitrate cap handling

Network and Clock

  • Adding Windows network adapter type recognition
  • Ethernet
  • Wi-Fi
  • Cellular
  • Other/Unknown
  • Adding the following to RTMP and WHIP logs:
  • Network interface card description
  • Network interface card type
  • Uplink and downlink speeds
  • Adding active network adapter logs at startup
  • Improved NTP clock calibration
  • Anchoring the calibrated clock to the system wall time
  • Improved streaming timestamp stability