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
Alessandro Ros
1694d9086d
use normalized trackID in place of mediaUUID ( #226 )
...
This is needed to support clients like the Grandstream GXV3500.
Fixes #190
2023-04-07 12:38:10 +02:00
Alessandro Ros
2fbba142cc
add OnTransportSwitch, OnPacketLost, OnDecodeError to server and client ( #225 )
...
These new hooks replace the generic hooks Log() and OnWarning().
2023-04-04 17:10:37 +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
1ad059a80b
server: use absolute RTSP URL as control attribute ( #210 )
...
this is necessary in order to make GStreamer's rtspsrc to send query parameters correctly in SETUP requests.
2023-03-24 10:54:14 +01:00
aler9
d75c8e4788
speedup tests
2023-02-13 13:18:22 +01:00
Alessandro Ros
a2d6ce8af6
replace OnDecodeError with OnWarning ( #177 )
2023-01-23 12:54:57 +01:00
aler9
ca3ab98cca
server: fix generation of RTP-Info
2023-01-11 00:57:30 +01:00
aler9
645f9462e2
server: support publishing/reading to/from path '/' or ''
2023-01-11 00:39:58 +01:00
Alessandro Ros
ae9dac0ad3
use random UUIDs as media IDs ( #163 )
...
* remove Medias.Clone(), Media.Clone(), Format.Clone()
* server: use random UUIDs as media IDs
* client: use random UUIDs as media IDs
2022-12-22 20:32:28 +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