Alessandro Ros
425fce20fc
rename Transport* into Protocol* ( #895 )
2025-09-16 12:06:50 +02:00
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
f8649f6cf1
fix race condition in tests ( #894 )
2025-09-16 11:18:47 +02:00
Alessandro Ros
ead4471b5c
support RTSP-over-HTTP ( #433 ) ( #768 ) ( #887 )
2025-09-15 19:00:50 +02:00
Alessandro Ros
9259df7cff
modernize code ( #884 )
2025-09-07 16:05:13 +02:00
Alessandro Ros
9db34842c8
move host resolution from headers to client/server ( #883 )
2025-09-07 15:39:02 +02:00
Alessandro Ros
c466c342ba
expose transport details ( #850 )
...
add Client.Transport, ServerConn.Transport ServerSession.Transport
2025-09-06 16:28:40 +02:00
Alessandro Ros
3c2625c7cf
make most methods thread safe ( #882 )
...
Client: Stats
ServerConn: Session, Stats
ServerSession: State, Stats, Medias, Path, Query, Stream,
SetuppedSecure, SetuppedTransport, AnnouncedDescription
2025-09-06 15:42:07 +02:00
Alessandro Ros
cf2ff2b564
add Transport.Profile, media.Profile ( #873 )
...
this will allow to support AVPF in the future.
2025-09-04 18:08:51 +02:00
Alessandro Ros
367eb4dffd
fix encoding and decoding of NTP fractional part ( #869 ) ( #870 )
...
Fractional part now is in 1/(2^32) units, while it was in 1/(1^9) units.
2025-08-31 12:36:17 +02:00
Alessandro Ros
1021950db8
update linter settings ( #840 )
2025-07-26 16:28:03 +02:00
Alessandro Ros
616fa7ea89
support encrypted streams with SRTP and MIKEY ( #520 ) ( #809 )
2025-07-05 12:48:13 +02:00
Alessandro Ros
4f3337f56c
set SSRC of outgoing packets ( #803 )
...
In client and server, each format now has a fixed, unique, known in
advance SSRC, that is applied to outgoing packets belonging to each
format.
This is needed to support SRTP/MIKEY, that require each format to have
a fixed, unique, and known in advance SSRC.
A secondary effect is that SETUP responses now always contain SSRCs of
each format, regardless of the fact that the first packet has been
produced or not (previously we needed at least one packet, from which
the SSRC was extracted).
2025-07-05 11:08:57 +02:00
Alessandro Ros
6cf27aac05
remove useless code from tests ( #815 )
2025-06-30 10:15:11 +02:00
Alessandro Ros
ff08b85700
server: add ServerStreamStatsFormat.LocalSSRC ( #804 )
2025-06-28 16:56:44 +02:00
Alessandro Ros
b407cb1dd0
server: support reading back channels ( #597 ) ( #777 )
2025-05-04 17:04:15 +02:00
Alessandro Ros
904b0a1920
client: enable keepalives in most cases ( #775 )
2025-05-04 15:39:07 +02: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
Alessandro Ros
ca6286321d
fix various race conditions when writing packets to closed clients or server sessions ( #684 )
2025-01-19 12:07:59 +01:00
Alessandro Ros
9b72f5242f
server: add ServerConn.Session() method ( #668 )
2024-12-25 16:01:54 +01:00
Alessandro Ros
87c6d81053
add statistics to Client, ServerSession, ServerConn, ServerStream ( #556 ) ( #656 )
2024-12-25 13:30:08 +01:00
Alessandro Ros
8f74559616
close connections in case of write errors ( #613 ) ( #655 )
2024-12-14 13:45:11 +01:00
Alessandro Ros
a2df9d83b3
client: fix BytesSent / BytesReceived computation ( #612 ) ( #654 )
...
When the TCP transport protocol is in use, BytesSent and BytesReceived
were increased twice.
2024-12-13 20:55:50 +01:00
Alessandro Ros
db334b3a8d
server: fix crash with invalid SETUP request (bluenviron/mediamtx#4025) ( #652 )
2024-12-08 18:58:13 +01:00
Alessandro Ros
d43cce3086
server: fix error message ( #634 )
...
Return error 'can't setup medias with different protocols' when trying
to use UDP and TCP in sequence.
2024-10-14 12:28:03 +02:00
Alessandro Ros
6ed93de46c
server: fix SETUP in case of no track ID and query parameters ( #623 )
2024-09-15 23:24:34 +02:00
Alessandro Ros
72e74f349e
server: use relative control attributes ( #620 )
2024-09-15 22:51:55 +02:00
Katie Holly
9f6428bdb8
avoid returning partial RTP-Info header, omit seq/rtptime if needed ( #568 )
...
* avoid returning partial RTP-Info header, omit seq/rtptime if needed
* adjust test to align with new behavior of RTP-Info header
2024-05-09 22:17:26 +02:00
Alessandro Ros
363b48e632
update golangci-lint ( #554 )
2024-04-28 18:20:25 +02:00
Alessandro Ros
24ed937861
update golangci-lint ( #535 )
2024-03-19 12:50:26 +01:00
Alessandro Ros
93b02bc0e8
simplify tests ( #461 )
2023-11-07 23:21:33 +01:00
Alessandro Ros
01b3bfc6ab
move url.URL into base.URL ( #459 )
2023-11-07 16:51:45 +01:00
Dr. Ralf S. Engelschall
0933bf9975
add BytesSent to ServerStream ( #457 )
...
* add BytesSent to ServerStream (to allow MediaMTX to gather bytes sent on all paths)
* improve performance
* add test
---------
Co-authored-by: aler9 <46489434+aler9@users.noreply.github.com >
2023-11-04 17:46:22 +01:00
Alessandro Ros
2f7ed32139
server: add methods SetuppedStream, SetuppedPath, SetuppedQuery ( #444 )
2023-10-17 20:31:54 +02:00
Alessandro Ros
ed4bbe3986
client: support server-sent requests ( #93 ) ( #378 )
2023-08-24 16:07:09 +02:00
aler9
cdbecb1f5d
allow setting additional properties of streams through description.Stream
2023-08-22 16:46:18 +02:00
aler9
bfef17b717
add Client.PacketNTP(), ServerSession.PacketNTP()
2023-08-17 13:23:16 +02:00
aler9
5e5a21240d
rename pkg/formats into pkt/format
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
aler9
482b047999
server: allow ServerSession.WritePacket*() to return an error
2023-08-14 12:13:35 +02:00
aler9
2897122fcb
server: allow WritePacket() to return an error
2023-08-14 11:39:48 +02:00
aler9
18ddae4c50
enable errcheck
2023-08-13 16:29:53 +02:00
Alessandro Ros
e583556d86
server, client: allow using odd interleaved IDs ( #304 )
...
(https://github.com/bluenviron/mediamtx/issues/1762 )
2023-06-08 23:40:37 +02:00
Alessandro Ros
b0947c133e
move each goroutine in a dedicated struct ( #285 )
2023-05-17 21:14:00 +02:00
Alessandro Ros
a955288571
replace Format.Marshal() with RTPMap() and FMTP() ( #253 )
2023-04-15 13:46:19 +02:00
Alessandro Ros
9e29555063
simplify tests ( #247 )
2023-04-14 11:53:37 +02:00
Alessandro Ros
2342abb240
server: support TCP read requests without interleaved IDs ( #246 )
...
(https://github.com/aler9/mediamtx/issues/1650 )
2023-04-13 17:03:50 +02:00
Alessandro Ros
1f19f3cdb8
simplify tests ( #245 )
2023-04-13 12:01:57 +02:00