Update Log

2.0.3-P1

  • Optimizations
  1. Fixed the issue where composite stream mode wouldn't show loading state when network is disconnected

  2. Fixed video size detection issue after Chrome upgraded to version 138

  3. Fixed multiple onTimeChange callbacks being triggered after seeking in afterReady state

  4. Fixed frame-by-frame playback issue caused by setting first second FPS to 1 in non-MSE mode

2.0.2-P4

  • Optimizations
  1. Removed invalid ADAS collision alerts with TTC of 99.00s

  2. Optimized frame-by-frame playback when seeking to the last second of evidence videos

  3. Fixed black screen issue when frame-by-frame playback followed by seeking to the last second in evidence videos

V2.0.3

  • New Features
  1. Added onStreamTypeChange hook to monitor stream switching

  2. Added destroyInstanceByUser parameter for passthrough mode, supporting keeping player instance after destroying all channels

  3. Added fullRatio parameter in global configuration to determine whether to stretch when filling screen

  4. Added startPlayTime parameter for playback start time

  5. Added onInputAudioDevicesChange hook to monitor input audio device changes

  • Optimizations
  • Fixed volume setting issue when intercom triggers afterReady

  • Fixed audio-video synchronization issue in non-MSE mode playback

  • Optimized AI information display

  • Fixed issue where aspect ratio array parameter doesn't take effect

  • Fixed audio switching issue in virtual playback with same channel data but different device IDs

  • Optimized end time judgment with 3-second error margin

  • Optimized onPlayEnd callback timing to trigger after afterReady

V2.0.2-P3

  • Optimizations
  1. Fixed issue where seeking while paused triggers onTimeChange callback twice

  2. Fixed issue where seeking in afterReady state triggers onTimeChange callback multiple times

  3. Fixed first-second stutter issue in WebCodecs passthrough startup

V2.0.2-P2

  • Optimizations
  1. Optimized green screen issue during main/sub stream switching on X3NPRO devices

  2. Optimized onTimeChange triggering during seek

V2.0.2-P1

  • New Features
  1. Modified the format of term and unit configurations. Refer to Configuration Document

  2. Disabled frame-by-frame and slow playback in keyframe mode.

  3. Added replaying status for playback.

  • Optimizations
  1. Frame-by-frame playback issues

  2. Audio-video synchronization issues in non-MSE mode

  3. ADAS algorithm pedestrian bounding box colors

  4. Frame deletion issue after seeking in unstarted MSE channels

  5. Repeated playback issue with 1-second evidence videos

V2.0.2

  • New Features
  1. Frame-by-frame mode now supports seek operation

  2. When no data available in frame-by-frame mode, onFramePlayNoData callback returns first or last frame

  3. Added term configuration, unit configuration and curve configuration for AI display

  4. Whether to enable cache mode for frame-by-frame playback

  5. Replaying after playback stops can trigger the afterReady hook

V2.0.1-P9

  • New Features
  1. setVolume and frame-by-frame operations are now available in afterReady state.
  • Optimizations
  1. Optimized player auto-close function when page refreshes

  2. Fixed mosaic issues when switching stream types

  3. Optimized audioContext memory usage

  4. Added 'reconnectExhausted' field to loadingTimeout hook indicating whether reconnection attempts are exhausted

V2.0.1-P8

  • Optimizations
  1. High-speed playback synchronization optimization

  2. Intercom real-time performance optimization

  3. Fixed playback end issue caused by large error in evidence end time

  4. Added fluency detection for direct streaming

    playerjs.performanceList

V2.0.1-P7

  • Bug Fixes
  1. The issue with the hasPostApi field is causing the interface to not use POST.

V2.0.1-P6

  • Bug Fixes
  1. MSE data not playing after page is hidden when evidence is short
  2. Fixed WebCodecs H.265 default software decoding configuration error
  3. MSE audio G711A misjudged as intercom causing discard
  4. Fixed issues with reopening video after closing when page is hidden
  • New Features
  1. Added AI alarm type configuration. Refer to Configuration Documentation

    playerjs.config = { allowAlarm: [] };
  2. Added real-time priority and smooth priority configuration for live view MSE mode. Refer to Live View Documentation

    createLivePlayer(doms, { playMode: 0, // 0-real-time priority, 1-smooth priority });
  • Optimizations
  1. WebCodecs defaults to software decoding
  2. Intercom stuttering optimization
  3. Added afterReady hook for listening
  4. First second stuttering optimization for listening
  5. Video information plugin performance optimization
  6. Added timeout error to listening/intercom onError Hook

V2.0.1-P5

  • New Features
  1. Header includes _referer

V2.0.1-P4

  • Bug Fixes
  1. Fixed frame-by-frame playback getting stuck due to GOP anomaly
  2. Fixed mosaic display issue after container scaling
  3. Fixed grid display issue when re-editing mosaic at low resolution
  4. Fixed WASM error caused by fileSize being string type
  • New Features
  1. Added default playback speed startMultiple. Refer to Playback Configuration
  2. Added size and format configuration for screenshots. Refer to Screenshot Function
  3. Added right-click delete function for manual mosaic
  4. Added reconnection logic configuration for live view. Refer to Reconnection
  • Optimizations
  1. Loading timeout does not require pause when page is hidden
  2. MSE decoder reset after decoding error
  3. Force onTimeChange trigger once at afterReady
  4. Audio delay optimization

V2.0.1-P3

  • Bug Fixes
  1. Fixed replay and seek issues after network disconnection
  • Optimizations
  1. MSE frame matching optimization
  2. AI rectangle box and lane line optimization

V2.0.1-P2

  • Bug Fixes
  1. Fixed magnification effect lost after switching stream type
  2. Fixed manual mosaic bugs
  3. Fixed video error on Safari for iPhone
  4. Fixed no mosaic at MSE playback start
  • Optimizations
  1. Immediate resolve when closing live view
  2. Loading timeout callback channel optimization

V2.0.1-P1

  • New Features

Added manual mosaic related APIs. Manual Mosaic API

V2.0.1

  • New Features

    1. Support for 905, 1078 device multi-channel simultaneous playback. Due to device not supporting multi-channel synchronization, strong synchronization cannot be guaranteed during playback

    2. Added manual mosaic function, refer to Additional Video Functions manual mosaic section

    3. Added intercom prompt sound function

    4. Added mining large rock block function

    5. Added support for selecting software/hardware decoding in WebCodecs

  • Interface Changes

    1. Added multi-channel playback flag for playback

    Device multi-channel synchronous playback identifier, default synchronous playback. For 1078, 905 multi-channel playback, needs to be set to false. Only supported by device playback and mixed playback.

H5Player.createHistoryPlayer(domList, { deviceSyncPlay: false, });
  1. Added startPrompt, stopPrompt for passing start/end prompt sounds
const intercom = H5Player.createIntercom({
    ...config,
    startPrompt: buffer, // Start prompt sound, PCM format, 16-bit, 8000Hz sample rate, mono channel
    stopPrompt: buffer // End prompt sound, PCM format, 16-bit, 8000Hz sample rate, mono channel
});
  1. Added global WebCodecs software/hardware decoding

Whether to enable hardware decoding for WebCodecs. 0-browser auto select, 1-hardware decoding, 2-software decoding. Only effective when decoderType = 2. If live view needs higher real-time performance, set this to 2, though it will sacrifice some performance.

H5Player.config = { hardwareAcceleration: 0, };
  • Interface Additions

    1. Added intercom HOOKS
intercom.hooks.afterReady.tap('ready', () => {
    message.info('Start prompt sound ended, intercom started');
});

intercom.hooks.afterStop.tap('stop', () => {
    message.info('End prompt sound ended, intercom stopped');
});
  • Optimizations

    1. Memory, CPU, latency optimization

    WASM software decoding latency 400ms, MSE hardware decoding latency 1200ms, WebCodecs hardware decoding latency 850ms, WebCodecs software decoding latency 400ms.

    Performance comparison: MSE > WebCodecs hardware decoding > WebCodecs software decoding > WASM software decoding