- Change SSRC variable from unsigned long to uint32_t to match the
struct definition (avoids inconsistent width on 64-bit platforms)
- Fix format specifier from %lx to %x to match uint32_t
- Change recv return type from int to ssize_t for correctness and
consistency with zm_rtp_ctrl.cpp
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
FFmpeg is an integral component of ZM. Promote the appropriate libraries to required dependencies.
This reduces the possible build configurations greatly and thus maintenance burden.
The Socket class collides with a class named the same way from liblive555. This confuses the linker and links the wrong object leading to a crash when connecting to the RTSP server.
With this commit a unified structure for includes is introduced.
The general rules:
* Only include what you need
* Include wherever possible in the cpp and forward-declare in the header
The includes are sorted in a local to global fashion. This means for the include order:
0. If cpp file: The corresponding h file and an empty line
1. Includes from the project sorted alphabetically
2. System/library includes sorted alphabetically
3. Conditional includes
Monitors with source type 'remote' can now be accessed over IPv6. This
code uses getaddrinfo(3) now instead of gethostbyname(3) - and changes a
lot of networking stuff which should be tested thoroughly.