Step 5 (SAP): announce the stream via SAP

- aes67_sdp_sap: SAP (RFC 2974) announcer task. SAPv1 to
  239.255.255.255:9875 every 30 s and within 1 s of any SDP change
  (config save, GM change), with the old hash deleted first. Active while
  aes67.discovery = sap, the stream is enabled, the AES67 interface has
  an IP and a PTP GM is known. Deletion when that stops and at shutdown
  (reboot/OTA) via a shutdown handler. TTL = aes67.ttl.
- Docs: SAP implementation notes; session_ver bump on GM change still open.
- Verified with a SAP listener: 30 s repeats with a stable hash; rename
  -> delete old + announce new (o= version follows); manual -> delete;
  sap -> announce; reboot and OTA -> delete at shutdown, first announce
  after boot only once the GM is known.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
2026-09-25 06:57:47 +10:00
parent 044e9913a7
commit f3779696d5
4 changed files with 153 additions and 4 deletions
+1 -1
View File
@@ -1,3 +1,3 @@
idf_component_register(SRCS "aes67_sdp_sap.c"
INCLUDE_DIRS "include"
PRIV_REQUIRES aes67_net aes67_ptp aes67_web esp_netif)
PRIV_REQUIRES aes67_net aes67_ptp aes67_web esp_netif esp_timer lwip)