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
62f597457b
fix support for 32bit architectures
2022-11-10 22:06:33 +01:00
aler9
d75423d185
rename ReadBytes and WrittenBytes into BytesReceived and BytesSent
2022-11-09 19:28:05 +01:00
Alessandro Ros
95d1562735
server: add methods to get read and written bytes ( #147 )
...
ServerConn.ReadBytes()
ServerConn.WrittenBytes()
ServerSession.ReadBytes()
ServerSession.WrittenBytes()
2022-11-09 13:41:48 +01:00
aler9
9216576d49
server: allow to associate user data to connections
2022-11-03 12:57:42 +01:00
Alessandro Ros
7a4c7d6d66
remove h264 decoding and re-encoding ( #144 )
...
* stop re-encoding H264
* stop decoding H264
* improve tests
2022-11-02 14:38:05 +01:00
aler9
0e6a0b8b25
call OnDecodeError when rtpcleaner returns an error
2022-10-31 18:51:29 +01:00
aler9
b1f72f9392
return error in OnDecodeError when there are oversized UDP packets
2022-10-31 15:53:15 +01:00
aler9
27f8015ac6
simplify usage of Conn
2022-08-15 00:10:21 +02:00
aler9
06bed24dd9
add intermediate layer between net.Conn and client / server
2022-08-14 23:43:01 +02:00
aler9
a2c6a7fb97
server: change behavior in case of unhandled methods
...
(https://github.com/aler9/rtsp-simple-server/issues/1066 )
Return 501 and keep connection open instead of returning 400 and
closing the connection.
2022-08-07 13:51:12 +02:00
aler9
4940e8faeb
server: add Session to ServerHandlerOnSetParameterCtx
2022-08-07 13:43:59 +02:00
Alessandro Ros
df7336b5e8
implement packet reordering for UDP / Multicast transports ( #132 )
...
* implement packet reordering for UDP transport
* rtcpreceiver: stop handling unordered / duplicate packets
* remote useless Sleep() from tests
2022-07-05 23:29:03 +02:00
aler9
f3b0fc69b4
rename Read / Write into Unmarshal / Marshal when needed
...
Read() / Write() are used to read / write from streams, while
Unmarshal() / Marshal() are used to decode / encode from / to bytes.
2022-06-27 17:27:16 +02:00
aler9
ac910c63db
rename rtpproc into rtpcleaner
2022-06-11 19:50:38 +02:00
aler9
92ed04ad6c
optimize RTP packet handling
2022-06-11 19:11:24 +02:00
aler9
98b6515c33
move RTP packet handling into separate package
2022-06-11 13:47:26 +02:00
aler9
2fa3148a27
move URL into dedicated folder
2022-06-05 01:27:19 +02:00
aler9
c1b10a80be
allow writing primitives to static buffers
2022-05-11 15:26:44 +02:00
aler9
ff34f5ac1d
improve performance
2022-04-10 15:12:33 +02:00
aler9
7bf907e94c
improve performance
2022-04-10 11:29:15 +02:00
aler9
bfe4e8cdaa
automatically remux oversized RTP/H264 packets; drop parameter ReadBufferSize
2022-04-09 20:16:14 +02:00
aler9
0463e6b510
server: parse incoming RTP/H264 packets; fix RTCP receiver jitter
2022-04-08 16:45:09 +02:00
aler9
9d12c345f8
support go 1.18
2022-04-07 12:57:23 +02:00
aler9
e12b22ae77
fix encoding of RTP packets with padding
...
this fixes a SIGSEGV with GStreamer
2022-03-08 12:47:55 +01:00
aler9
dd0904407f
cleanup code
2022-03-02 22:19:09 +01:00
aler9
95117f0aa4
server: rename Req field into Request
2022-02-19 22:20:01 +01:00
aler9
d7f6567e20
server: restore authentication support
2022-02-19 21:56:27 +01:00
aler9
0e8595a31d
server: remove Session header from ANNOUNCE responses ( https://github.com/aler9/rtsp-simple-server/issues/840 )
2022-02-19 19:23:30 +01:00
aler9
7dd4842fc0
server: do not allow a connection to communicate with multiple sessions
2022-02-19 18:52:05 +01:00
aler9
c7a36478b4
server: remove useless code
2022-02-19 17:54:11 +01:00
aler9
fe99404495
server: sync states with client ones
2022-02-18 10:02:20 +01:00
aler9
d44f1eb03a
server: save RAM by releasing read buffers earlier
2022-02-18 00:03:39 +01:00
aler9
bca6756cd6
improve performance
2022-02-18 00:03:39 +01:00
aler9
3a2f9adbd5
server: decode and encode RTP/RTCP packets
2022-02-18 00:03:39 +01:00
aler9
f3096ec102
improve write performance by
...
* buffering packets before sending them
* removing mutexes
2021-12-08 17:46:56 +01:00
aler9
289c272469
server: simplify tcp handling
2021-12-07 22:46:47 +01:00
aler9
066ddd4423
server: write UDP packets in parallel.
...
A goroutine writer is allocated for each session and
for each multicast stream.
This increases bandwidth and prevents freezes caused
by lagging readers.
2021-12-07 22:45:24 +01:00
aler9
9b88ede6a9
server: remove useless line
2021-12-07 21:53:55 +01:00
aler9
e9bb3e12bf
remove tcp/udp comments
2021-12-06 13:55:57 +01:00
aler9
e98cb8b108
rename tcpFrameBuffer into tcpReadBuffer
2021-12-04 22:11:10 +01:00
aler9
d5bdc197be
allow client and server to override most parameters
2021-11-18 12:17:04 +01:00
aler9
3ff70157d0
server: do not send receiver reports when using TCP
2021-11-18 12:17:04 +01:00
aler9
1411cb33f5
server: support reading with VLC and multicast
2021-11-15 17:40:17 +01:00
aler9
b81267e310
server: improve performance
2021-11-13 12:36:12 +01:00
aler9
e2b52d0b84
server: do not use StreamType
2021-11-12 18:01:27 +01:00
aler9
e8e2059b0d
remove StreamType from base
2021-11-12 18:01:27 +01:00
aler9
6d340cdf39
rtcp*: split ProcessFrame into ProcessPacketRTP and ProcessPacketRTCP
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