Skip to content

Releases: antowan/virtual-rtsp-camera

vcam 0.6.0

Choose a tag to compare

@github-actions github-actions released this 09 Oct 03:14

vcam 0.6.0

Added

  • Live RTSP/TCP and UDP sources with low-latency, timeout-bounded input,
    clean-stream copy forwarding, per-camera faults and source-outage recovery.
  • waiting-for-source health state, credential-redacted live sources, and an
    opt-in synthetic stream contract test covering format, CPU and recovery.

Install via pip / uv

pipx install vcam==0.6.0   # standalone CLI
uv tool install vcam==0.6.0

Docker

docker pull konekuto/vcam:0.6.0
docker pull konekuto/vcam:latest  # amd64 + arm64

vcam 0.5.0

Choose a tag to compare

@github-actions github-actions released this 06 Oct 10:14
741332b

vcam 0.5.0

Added

  • Synchronized playback application tests now map RTCP Sender Reports and RTP
    timestamps back to decoded fixture frames across baseline and publisher
    recovery, and verify cross-camera scene-start alignment within one frame.

Changed

  • Clarify that native Linux containers share the host kernel clock and that
    granting CAP_SYS_TIME can affect the host; clock adjustment is safe only
    in an isolated VM or when changing the host clock is explicitly intended.
  • Document the related RTCP-SR timestamp correction in
    edge-ai/aibox-webserver-backend-ms3#905.



Install via pip / uv

pipx install vcam==0.5.0   # standalone CLI
uv tool install vcam==0.5.0

Docker

docker pull konekuto/vcam:0.5.0
docker pull konekuto/vcam:latest  # amd64 + arm64

vcam 0.4.1

Choose a tag to compare

@github-actions github-actions released this 05 Oct 08:33

vcam 0.4.1

Changed

  • Update the Ruff development dependency from 0.16.8 to 0.16.9 (#24).
  • Update the Docker Hub description GitHub Action from v4 to v5 (#21).
  • Retain the synchronized H.264 playback integration released in 0.4.0.


Install via pip / uv

pipx install vcam==0.4.1   # standalone CLI
uv tool install vcam==0.4.1

Docker

docker pull konekuto/vcam:0.4.1
docker pull konekuto/vcam:latest  # amd64 + arm64

vcam 0.4.0

Choose a tag to compare

@github-actions github-actions released this 05 Oct 08:24

vcam 0.4.0

Added

  • Opt-in synchronized H.264 copy playback through sync_group in the VCAM
    package, configuration and supervisor. Compatible constant-frame-rate assets
    share a monotonic scene clock across loops and recover isolated publishers at
    admitted IDR points without restarting healthy peers.
  • Source admission, bounded indexing, startup barriers, progress watchdogs and
    per-member synchronization health diagnostics. Install vcam[sync] for the
    optional Python backend; Docker includes it.
  • Controlled 44-second application tests covering ten scene wraps, late joins,
    reconnects, B-frame worker exits and suspended-worker recovery. The decoded
    receipt spread gate remains 33.333 ms; this is not a universal skew SLA.

Changed

  • README reorganized as a landing page with dedicated configuration, Docker,
    service and testing guides.

Fixed

  • Synchronized worker shutdown uses isolated command pipes instead of shared
    stop-event locks that could deadlock after a worker was killed.
  • Startup readiness waits continue servicing active synchronization groups.
  • Diagnostic telemetry is drained before watchdog evaluation and final evidence
    collection.

Controlled local application tests and Docker runtime smoke passed.
Representative workloads, networks and deployment environments require
separate qualification; these results are not a universal synchronization SLA.



Install via pip / uv

pipx install vcam==0.4.0   # standalone CLI
uv tool install vcam==0.4.0

Docker

docker pull konekuto/vcam:0.4.0
docker pull konekuto/vcam:latest  # amd64 + arm64

vcam 0.3.1

Choose a tag to compare

@github-actions github-actions released this 24 Sep 02:41
a53e069

vcam 0.3.1

Fixed

  • Replay now matches UDP RTP packets against the source and destination
    endpoints negotiated in the RTSP handshake, preventing unrelated
    colliding-port traffic from contaminating a track.
  • SETUP requests for an unknown track URI now return 404 instead of
    silently configuring the first track.


Install via pip / uv

pipx install vcam==0.3.1   # standalone CLI
uv tool install vcam==0.3.1

Docker

docker pull konekuto/vcam:0.3.1
docker pull konekuto/vcam:latest  # amd64 + arm64

vcam 0.3.0

Choose a tag to compare

@github-actions github-actions released this 15 Sep 05:25

vcam 0.3.0

Added

  • Optional Toxiproxy Docker Compose profile for TCP network chaos testing,
    including runtime latency, bandwidth, timeout, and disconnect scenarios.
  • vcam doctor reports the optional Toxiproxy CLI or API when available.


Install via pip / uv

pipx install vcam==0.3.0   # standalone CLI
uv tool install vcam==0.3.0

Docker

docker pull konekuto/vcam:0.3.0
docker pull konekuto/vcam:latest  # amd64 + arm64

vcam 0.2.1

Choose a tag to compare

@github-actions github-actions released this 04 Sep 15:16

vcam 0.2.1

  • fix: align v0.2.1 package metadata
  • chore(deps): Bump the python-deps group with 2 updates (#9)
  • refactor: unify error hierarchy, extract CLI helpers, harden filters (#11)

Install via pip / uv

pipx install vcam==0.2.1   # standalone CLI
uv tool install vcam==0.2.1

Docker

docker pull konekuto/vcam:0.2.1
docker pull konekuto/vcam:latest  # amd64 + arm64

vcam 0.2.0

Choose a tag to compare

@github-actions github-actions released this 30 Aug 09:00

vcam 0.2.0

Added

  • vcam replay serves a captured RTSP/RTP session back byte for byte, over
    interleaved TCP or UDP, preserving the original payloads and inter-packet
    timing. Captures are recorded with tcpdump; see the README for the workflow.

Changed

  • The capture size limit is now 256 MB, down from 512 MB. Loading a capture
    costs about 6x the file size in memory at roughly 15 MB/s, so the old limit
    quietly allowed a ~3 GB resident set. The refusal message states the memory a
    load would need.
  • Replay warns when the host could not keep pace with the capture. Late packets
    were counted but never reported, and absolute deadlines keep the stream in
    sync regardless, so the operator had no way to see it.

Fixed

  • --sdp descriptions were modified in place while a capture was being
    matched, dropping any media block the capture had no stream for.
  • vcam --version reported the wrong version. It was hardcoded in
    vcam/__init__.py and had drifted two releases behind pyproject.toml; it is
    now read from the installed distribution.
  • ReplayServer.shutdown() could return while a reader was still being sent
    RTP. Two separate races: callers of stop_player after the first returned
    without waiting, and a connection was unregistered before it was closed, so
    shutdown could not see it.
  • A capture played with --no-loop never hung up when it ran out, leaving
    clients waiting on a silent connection.
  • The MediaMTX API port preflight probed 0.0.0.0 while MediaMTX binds
    127.0.0.1, so a taken port looked free and startup failed later with a
    message blaming the RTSP port.

Security

  • Container security updates were being served from a stale build cache, so
    apt-get upgrade had frozen at the packages current when the cache was
    written. The layer is now keyed on the build date and refreshes daily.


Install via pip / uv

pipx install vcam==0.2.0   # standalone CLI
uv tool install vcam==0.2.0

Docker

docker pull konekuto/vcam:0.2.0
docker pull konekuto/vcam:latest  # amd64 + arm64

vcam 0.1.4

Choose a tag to compare

@github-actions github-actions released this 25 Aug 16:06

vcam 0.1.4

Added

  • vcam generate — interactive wizard that scans a directory for video files
    and guides the user through building a cameras.yaml without writing YAML by
    hand. For each discovered file it asks whether to include it, confirms or
    overrides the camera name (auto-derived from the file stem), probes the file
    with ffprobe to recommend copy vs transcode, and accepts a start offset.
    Server settings (RTSP port, optional auth) are collected at the end. Supports
    --scan <dir> to target a specific folder and --force to overwrite an
    existing config.


Install via pip / uv

pipx install vcam==0.1.4   # standalone CLI
uv tool install vcam==0.1.4

Docker

docker pull konekuto/vcam:0.1.4
docker pull konekuto/vcam:latest  # amd64 + arm64

vcam 0.1.3

Choose a tag to compare

@github-actions github-actions released this 25 Aug 15:25

vcam 0.1.3

Added

  • Repository governance baseline for public collaboration with low maintainer
    overhead:
    • MIT LICENSE
    • CONTRIBUTING.md with scope boundaries and issue-first policy
    • CODE_OF_CONDUCT.md (Contributor Covenant 2.1)
    • GitHub issue templates for bug reports and feature requests
    • pull request template with focused review checklist
    • stale workflow to auto-manage inactive issues/PRs
  • README badges and a contribution policy summary to improve discoverability and
    set contribution expectations on the landing page.


Install via pip / uv

pipx install vcam==0.1.3   # standalone CLI
uv tool install vcam==0.1.3

Docker

docker pull konekuto/vcam:0.1.3
docker pull konekuto/vcam:latest  # amd64 + arm64