aler9
e6e7f11ee1
improve coverage
2022-12-09 12:31:18 +01:00
Alessandro Ros
51b8063325
rtph264: return error in decoder if packetization-mode is 2 ( #153 )
2022-11-14 21:23:13 +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
Alessandro Ros
035ee70202
speed up tests ( #143 )
2022-11-01 10:13:07 +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
e8fde26d55
return error in OnDecodeError when there are lost RTP packets
2022-10-31 15:05:42 +01:00
aler9
30e029011b
add OnDecodeError callback to both client and server
...
This allows to detect decode errors of RTP and RTCP packets
2022-10-31 12:36:30 +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
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
9f4fea8a01
change track initialization method
2022-06-23 13:13:36 +02:00
aler9
4e41b1c88b
improve tests
2022-06-11 19:19:38 +02:00
aler9
c1b10a80be
allow writing primitives to static buffers
2022-05-11 15:26:44 +02:00
aler9
edeef85e9e
accept io.Writer in Write() methods
2022-05-08 14:33:29 +02:00
aler9
bfe4e8cdaa
automatically remux oversized RTP/H264 packets; drop parameter ReadBufferSize
2022-04-09 20:16:14 +02:00
aler9
cec5326ccf
downgrade pion/rtp to v1 ( #110 ) ( #113 )
2022-04-01 11:19:43 +02:00
aler9
7f6383aa3c
server: make calling ServerStream.Close() mandatory
2022-03-24 12:44:20 +01:00
aler9
e7efb0c405
client: skip tracks with an invalid clock rate ( https://github.com/aler9/rtsp-simple-server/issues/832 )
2022-03-15 11:10:56 +01: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
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
86fb4181c7
server: allow calling ServerSession.WritePacketRTCP() inside OnRecord and OnPlay ( #99 )
2022-02-18 23:19:33 +01:00
aler9
3a2f9adbd5
server: decode and encode RTP/RTCP packets
2022-02-18 00:03:39 +01:00
Tristan Matthews
1b2a78a744
track: expose Set/GetControl
...
This is useful for clients that need to override the control field, which was
possible prior to 6d5bf0c1bb
via the Media field.
2022-02-11 20:28:57 +01:00
Tristan Matthews
247571eec8
track: expose MediaDescription()
2022-02-11 20:28:57 +01:00
aler9
ad69a8957b
support h264 tracks with extradata in sprop-parameter-sets
2022-01-30 15:51:49 +01:00
aler9
6d5bf0c1bb
new track system
2022-01-30 15:51:49 +01:00
aler9
f6a86b8789
server: send session timeout to clients through the session header ( https://github.com/aler9/rtsp-simple-server/issues/702 )
2022-01-20 16:32:32 +01:00
aler9
f3096ec102
improve write performance by
...
* buffering packets before sending them
* removing mutexes
2021-12-08 17:46:56 +01:00
aler9
a1de5ffdf9
add client TLS publish tests
2021-12-08 17:23:03 +01:00
aler9
7634076eb5
send receiver reports only after receiving a sender report
2021-12-06 17:09:59 +01:00
aler9
d5bdc197be
allow client and server to override most parameters
2021-11-18 12:17:04 +01:00
aler9
a4c43fc1e8
use UDP in sender / receiver report tests
2021-11-18 11:51:32 +01:00
aler9
1411cb33f5
server: support reading with VLC and multicast
2021-11-15 17:40:17 +01:00
aler9
f304ec52fb
server: make Close() wait for all resources to close
2021-11-12 18:01:27 +01:00
aler9
19568f2d42
fix tests
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
6e38851a09
add non standard frame tests
2021-11-06 13:28:16 +01:00
aler9
78bfa5d6a8
use require.EqualError() in tests
2021-11-03 17:52:45 +01:00
aler9
b5f1d7ccb6
fix tests
2021-10-30 14:58:02 +02:00
aler9
653b3ee993
update golangci-lint
2021-10-30 13:06:23 +02:00
aler9
61c39f9062
rename StreamProtocol and StreamDelivery into TransportProtocol and TransportDelivery
2021-10-22 17:59:36 +02:00
aler9
e7ab15750c
server: replace SetuppedProtocol() with SetuppedTransport()
2021-10-22 17:40:18 +02:00
aler9
d744a2e0d3
change way tracks are initialized
...
A config object is now required to initialize tracks.
Config objects are provided for H264 and AAC.
This allows to pass parameters easily and treat AAC
parameters explicitly.
2021-08-25 19:16:51 +02:00
aler9
a512762ba0
server: support setupping tracks with arbitrary interleaved IDs ( #47 )
2021-06-26 12:51:45 +02:00
aler9
7238502094
server: normalize errors
2021-06-18 00:08:04 +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