mirror of
https://github.com/ZoneMinder/zoneminder.git
synced 2026-10-12 11:43:13 -04:00
Ffmpeg reaches the same network cameras libvlc did, so carrying a second streaming library -- with its own threading, its own bugs and its own build dependency -- buys nothing. The preceding migration moves existing monitors to Ffmpeg first, so Monitor::Load cannot meet a type it no longer recognises, which is Fatal and would stop zmc rather than skip the monitor. Drops LibvlcCamera, the LIBVLC camera type and its parse and construction arms, LIBVLC_SRC and Camera::IsLibvlc, the ZM_NO_LIBVLC option and the libvlc probe, and the HAVE_LIBVLC and HAVE_VLC_VLC_H defines. Since the camera resolved libvlc through dlopen rather than linking it, this removes a headers-only build dependency and a runtime one, and nothing else needed relinking. kOptionSeparators stays -- the Ffmpeg path still parses the Options field with it -- but it is no longer a contract shared between two readers, so its comment and the test that pins its behaviour are reworded rather than removed. Built clean from a fresh cmake configure, which no longer lists libVLC among optional libraries; unit suite passes (147 cases, 12531 assertions); no libvlc strings remain in zmc. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_015Y6FieTwEXuLhhR4e2yiax