Commit Graph

29 Commits

Author SHA1 Message Date
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
Jon Lech Johansen
76460d6404 Fix parsing of Transport header with multiple transports. (#145)
* Fix parsing of Transport header with multiple transports.

* Lint.

* Add test for Transport header with multiple transports.

* Filter out unsupported transports.

* Handle multicast properly when filtering out unsupported transports.

* Minor code cleanup.

* add Transports.Unmarshal(), add additional tests

Co-authored-by: aler9 <46489434+aler9@users.noreply.github.com>
2022-11-09 12:00:33 +01:00
aler9
e99f799c07 client: support cameras with invalid SSRC in transport header
(https://github.com/aler9/rtsp-simple-server/issues/1118)
2022-08-29 14:51:32 +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
1fd66bdaed fix parsing of transport headers with empty source (https://github.com/aler9/rtsp-simple-server/issues/986) 2022-06-11 11:54:51 +02:00
aler9
d2380aeed1 fix transport header parsing with dahua rtsp server (#121) 2022-04-21 08:58:59 +02:00
Tristan Matthews
db823872d3 client: parse source from transport
Fixes #107
2022-03-18 15:10:45 +01:00
aler9
50f19e6653 fix transport header error with some Hikvision cameras
fixes 'invalid transport header: encoding/hex: invalid byte: U+0020 ' ''.
2022-01-05 11:54:03 +01:00
aler9
78bfa5d6a8 use require.EqualError() in tests 2021-11-03 17:52:45 +01:00
aler9
61c39f9062 rename StreamProtocol and StreamDelivery into TransportProtocol and TransportDelivery 2021-10-22 17:59:36 +02:00
aler9
d8bf9b2307 improve coverage 2021-08-05 18:17:59 +02:00
aler9
ff8c485b11 headers: change Transport.Destination type to net.IP 2021-06-19 18:58:31 +02:00
aler9
3f3226b53d server: support reading with multicast 2021-06-17 16:45:24 +02:00
aler9
2c0d28ecb4 headers: support SSRCs with length < 4 (https://github.com/aler9/rtsp-simple-server/issues/396) 2021-05-29 22:23:07 +02:00
aler9
4f595a1d0d headers: support SSRCs with missing zeros (https://github.com/aler9/rtsp-simple-server/issues/396) 2021-05-29 19:19:27 +02:00
aler9
f908a15a1e rename tests 2021-05-26 20:37:18 +02:00
aler9
53e8f32bd0 improve coverage 2021-05-22 17:18:09 +02:00
aler9
d821107d27 headers: check 'protocol not found' error properly in Transport header 2021-05-20 19:23:33 +02:00
napieralla
70c97b8843 Allow Transport.Read to parse messages where fields arrive in unconventional order by utilizing keyValParse to read all fields in message 2021-05-20 11:06:22 +02:00
aler9
df4003f751 headers: add SSRC to Transport (#33) 2021-05-13 21:49:14 +02:00
aler9
8be64d9cf6 improve coverage 2021-05-12 16:16:43 +02:00
aler9
178fe919ea headers: fix case in which a missing key was not detected 2021-05-04 17:22:59 +02:00
aler9
c1cd32257f headers: add negative unit tests 2021-04-26 19:39:20 +02:00
aler9
14ce8dbc45 improve tests 2021-04-04 20:20:29 +02:00
aler9
5847b507d1 headers: merge parsing of key-values 2021-04-04 15:04:49 +02:00
aler9
da82a2dcc3 export most server errors 2021-03-21 09:59:43 +01:00
aler9
25772271db headers: rewrite initializers as members of their structs 2021-03-20 09:55:04 +01:00
aler9
3631309f9f support transport headers with a single port (https://github.com/aler9/rtsp-simple-server/issues/136) 2020-12-06 22:04:40 +01:00
aler9
c31922be16 move subfolders in pkg/ 2020-11-15 17:26:09 +01:00