@chrisalvir1/camera-ui-homekit-4k 0.6.22 → 0.6.24

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/CHANGELOG.md CHANGED
@@ -1,5 +1,24 @@
1
1
  # Changelog
2
2
 
3
+ ## [0.6.24] — Fast HomeKit Stream Start (<100ms), 100% Video Passthrough, Talkback Direct SRTP & Smooth 48kHz Audio
4
+
5
+ - **Eliminated "Sin respuesta" (No response) & Fast Stream Startup**: Removed blocking talkback initialization and removed the 1.5-second RTSP probe delay (`-probesize 1000000 -analyzeduration 1500000`) that was causing Tapo C402, Wyze, Cocina, and Ezviz to exceed HomeKit's 2-second timeout. Restored fast 0.5s probe for FFmpeg and instant native streaming.
6
+ - **Restored Native Video Passthrough (Wyze, Tapo C120, Cocina, Ezviz)**: Cameras $\le$ 1080p use Camera.UI native `createRtpSession` with 100% video passthrough (`copy`), zero CPU, and instant stream open (<150ms). Tapo C402 (2K) uses Apple Silicon hardware acceleration (`h264_videotoolbox`).
7
+ - **Eliminated Metallic Screeching ("ruido chillante") & Audio Stutter**: Native in-memory Opus packets are rewritten to exact 48,000 Hz RFC 7587 timestamps via `RtpContinuity.rewrite(packet, 0, now, sampleRate * 1000)`. FFmpeg resampler uses smooth `async=1` (reverting disruptive `async=1000`), completely eliminating choppy audio and screeching.
8
+ - **Single-Session Two-Way Audio (Talkback)**: Configured `startBackchannel` directly on the camera's native session with controller SRTP credentials (`key`, `salt`, `suite`), allowing Camera.UI / go2rtc to decrypt and forward talkback audio directly to camera speakers. Controller microphone packets are forwarded without restrictive payload-type filtering. Non-native streams initialize talkback asynchronously in the background without blocking stream startup.
9
+ - **Preserved OpenCV & CoreML Detections**: Kept comprehensive animal and vehicle detection taxonomy in `DetectionMotion.ts`.
10
+ - **Atomic Constraints**: Absolutely zero changes to HEVC/HKSV3 or recording sessions.
11
+
12
+ ## [0.6.23] — OpenCV/CoreML Animal & Vehicle Detections, Two-Way Audio Talkback & Audio Continuity
13
+
14
+ - **OpenCV & CoreML Visual Detections Restored**: Expanded `DetectionMotion` event evaluation to include specific animal and vehicle labels (`dog`, `cat`, `bird`, `pet`, `car`, `truck`, `bus`, `motorcycle`, `bicycle`, etc.), direct `event.detections` arrays, and detector triggers (`opencv`, `coreml`, `yolo`, `object`). Prevents dropping animal and vehicle detections from Camera.UI, properly firing HomeKit `MotionDetected` for HKSV classification.
15
+ - **Audio Stutter and Sudden Drop Elimination**: Removed destructive `timeline.rewrite` from FFmpeg live audio packet output. Preserved native 48kHz Opus RTP timestamps without 32-bit unsigned wrapping jumps (which previously caused 4.29 billion tick jumps that muted CoreAudio after initial playback).
16
+ - **Network Jitter Resilience for Cloud Feeds (Ring)**: Updated FFmpeg live audio resampling to `-af aresample=async=1000:first_pts=0` and added `-thread_queue_size 1024` on input, preventing packet drops and pauses on network jitter.
17
+ - **Delayed RTSP Audio Detection (Ezviz)**: Increased probe buffer to `-probesize 1000000 -analyzeduration 1500000` to reliably detect and stream audio tracks that arrive after initial video frames.
18
+ - **Pure Video Passthrough + Libopus Audio (Tapo C120 & Wyze)**: Standardized live H.264 streaming through `H264LiveRtpSession` with `-c:v copy` (100% video passthrough, zero re-encoding) and clean `libopus` audio transcoding, eliminating the metallic screeching ("ruido chillante") produced by `node-av`'s internal Opus encoder.
19
+ - **Two-Way Audio (Talkback) Decryption and Forwarding**: Authenticates and decrypts controller microphone packets using the controller's SRTP key (`request.audio.srtp_key`), forwarding clear RTP audio packets directly to Camera.UI / go2rtc via `CameraUiTalkbackSession` and `startBackchannel()`.
20
+ - **Atomic Constraints**: Absolutely zero changes to HEVC/HKSV3 or recording logic.
21
+
3
22
  ## [0.6.22] — Robust H.264 Live Stream & Crystal-Clear Audio Passthrough
4
23
 
5
24
  - **Fixed IP Version Match in `prepareStream`**: Ensured `addressOverride` strictly matches `request.addressVersion` (IPv4 vs IPv6). When HomeKit connects via IPv6, avoiding incompatible IPv4 override prevents HAP-NodeJS from rejecting the stream with "Incoming and outgoing ip address versions must match!" which previously resulted in "Sin respuesta".
package/bundle.zip CHANGED
Binary file
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@chrisalvir1/camera-ui-homekit-4k",
3
3
  "displayName": "HOMEKIT 4K — by Chrisalvir",
4
- "version": "0.6.22",
4
+ "version": "0.6.24",
5
5
  "description": "Exports Camera.UI cameras to Apple Home with H.264/HKSV and HEVC/HKSV3 streaming paths.",
6
6
  "homepage": "https://github.com/Chrisalvir1/homekit-4k",
7
7
  "repository": {