57 Commits

Author SHA1 Message Date
Alessandro Ros ec81d388d1 switch to v5 (#890)
* switch from v4 to v5

* remove deprecated entities

* remove "2" suffix from entities

* rename TransportProtocol into Protocol
2025-09-16 11:46:52 +02:00
Alessandro Ros ead4471b5c support RTSP-over-HTTP (#433) (#768) (#887) 2025-09-15 19:00:50 +02:00
Alessandro Ros f4ef4ec23a examples: print write errors (#810) 2025-06-28 12:42:37 +02:00
Alessandro Ros b1804d77e8 bump golangci-lint (#784) 2025-05-23 14:51:33 +02:00
Alessandro Ros cc0c96626c improve examples (#778) 2025-05-04 17:00:18 +02:00
Alessandro Ros 1b127d70bb examples: restart video files when they end (#733) 2025-03-23 19:04:12 +01:00
Alessandro Ros e46ae59920 add server-h264-from-disk example (#719) (#727) 2025-03-23 16:53:54 +01:00
Alessandro Ros 304c38bb60 examples: prevent redundant checks in OnSetup when recording (#731) 2025-03-23 16:33:46 +01:00
Alessandro Ros 87d3720f48 examples: use RWMutex when possible (#730) 2025-03-23 16:25:42 +01:00
Alessandro Ros c8f4a0b0d3 examples: add missing mutex in OnSetup (#729) 2025-03-23 16:20:54 +01:00
Alessandro Ros fcb018151b make ServerStream return an error if initialized before Server (#719) (#728) 2025-03-23 16:17:34 +01:00
Alessandro Ros 376fb9e821 replace New* with Initialize (#723) 2025-03-16 13:58:35 +01:00
aler9 cdbecb1f5d allow setting additional properties of streams through description.Stream 2023-08-22 16:46:18 +02:00
aler9 5e5a21240d rename pkg/formats into pkt/format 2023-08-16 13:26:17 +02:00
aler9 e2c526b3b8 remove ServerHandler.Server 2023-08-16 13:26:17 +02:00
aler9 68d4bf8da0 add *Server argument to NewServerStream() 2023-08-16 13:26:17 +02:00
aler9 80106144e6 bump to v4 2023-08-16 13:26:17 +02:00
Alessandro Ros af3ed2bd83 merge format and formatdecenc into formats (#222) 2023-04-01 13:23:16 +02:00
Alessandro Ros 04f5a4041c change owner (#217) 2023-03-31 12:34:07 +02:00
Alessandro Ros 7b6a5f8cb3 Add proxy example (#141) (#175)
* cleanup

* add proxy example
2023-01-23 11:23:16 +01:00
aler9 e86bf26343 cleanup examples 2023-01-08 22:13:15 +01:00
Alessandro Ros 2e88705875 improve coverage (#168) 2023-01-06 23:34:10 +01:00
aler9 38b24b8e26 rename 'track' references into 'format' 2022-12-13 18:06:41 +01:00
Alessandro Ros a1396206b5 convert Tracks into Medias and Formats (#155)
* split tracks from medias

* move tracks into dedicated package

* move media into dedicated package

* edit Medias.Marshal() in order to return SDP

* add medias.Find() and simplify examples

* improve coverage

* fix rebase errors

* replace TrackIDs with MediaIDs

* implement media-specific and track-specific callbacks for reading RTCP and RTP packets

* rename publish into record, read into play

* add v2 tag

* rename tracks into formats
2022-12-11 22:03:22 +01:00
aler9 be93b242a5 examples: disconnect allow overriding publishers in server 2022-11-20 22:16:16 +01:00
Alessandro Ros 7951b2e4af allow to set NTP of outgoing packets in both client and server (#148) 2022-11-14 16:55:40 +01:00
aler9 b3cde905f7 add server-h264-save-to-disk example 2022-10-29 16:56:03 +02:00
aler9 3bd8ad810f update docs 2022-05-13 23:04:03 +02:00
aler9 d0cab3c8bd server: add parameter 'containsKeyFrame' to WritePacketRTP; fix RTCP sender reports and RTP-Info 2022-04-08 16:45:09 +02:00
aler9 7d9c882cc9 server: generate RTCP sender reports automatically; remote RTCP routing from examples 2022-03-24 15:27:19 +01:00
aler9 b2ad021fa7 update docs 2022-03-24 12:26:19 +01:00
aler9 3a2f9adbd5 server: decode and encode RTP/RTCP packets 2022-02-18 00:03:39 +01:00
aler9 51ab931caa fix examples 2022-01-09 21:29:41 +01:00
aler9 a22116e66e client: turn ReadFrames into OnPacketRTP, OnPacketRTCP 2021-11-12 18:01:27 +01:00
aler9 b4aadd8e4c update docs 2021-11-12 18:01:27 +01:00
aler9 1f5dec4a02 server: move address into Server struct 2021-11-12 18:01:27 +01:00
aler9 2882bacdf2 server: split WriteFrame into WritePacketRTP and WritePacketRTCP 2021-11-12 18:01:27 +01:00
aler9 472430f900 server: split OnFrame into OnPacketRTP and OnPacketRTCP 2021-11-12 18:01:27 +01:00
aler9 c81daa8f70 fix example 2021-06-19 19:04:08 +02:00
aler9 63e2864a67 server: use one IP per stream; expose multicast parameters in configuration 2021-06-19 18:48:32 +02:00
aler9 db28e87ecb server: fill SSRC in SETUP responses and RTP-Info in PLAY responses automatically 2021-06-17 16:45:24 +02:00
aler9 3f3226b53d server: support reading with multicast 2021-06-17 16:45:24 +02:00
aler9 ebe40cfc95 server: remove useless check 2021-06-06 13:54:41 +02:00
aler9 4b385ec04b server: change OnSetup() to allow users to set SSRC (#33) 2021-05-16 15:09:08 +02:00
aler9 7469a3362a server: add author to OnSessionOpen 2021-05-08 22:27:05 +02:00
aler9 e52fda806d add ServerConn.Close(), ServerSession.Close() 2021-05-07 11:42:01 +02:00
aler9 9d42a63102 server: add error to OnSessionClose() 2021-05-04 16:51:20 +02:00
aler9 5527f4d1f7 fix crash in server examples 2021-05-04 16:51:20 +02:00
aler9 44f204d137 improve server examples 2021-05-04 16:51:20 +02:00
aler9 259043685d server: implement sessions 2021-05-04 16:51:20 +02:00