Commit Graph

75 Commits

Author SHA1 Message Date
Alessandro Ros
a54a5946c7 add 32-bit tests; return errors in case of string-to-int overflows (#276) 2023-05-08 13:10:31 +02:00
Alessandro Ros
b6727c07ef add fuzz tests (#234) 2023-04-09 18:02:36 +02:00
Alessandro Ros
5859c9cb29 fix crash when Content-Length is set to a negative value -1 (#233) 2023-04-09 18:00:42 +02:00
Alessandro Ros
03b96abf84 rename Read() methods into Marshal() (#221) 2023-03-31 13:09:49 +02:00
Alessandro Ros
04f5a4041c change owner (#217) 2023-03-31 12:34:07 +02:00
Alessandro Ros
f6438ed8d1 normalize file names (#173) 2023-01-22 11:44:20 +01:00
Alessandro Ros
91f18ab6d9 Add RTP/MJPEG decoder and encoder (#165)
* rename format.JPEG into format.MJPEG

* add examples/client-publish-format-mjpeg

* add rtp/mjpeg decoder and encoder
2022-12-27 13:43:23 +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
aler9
06bed24dd9 add intermediate layer between net.Conn and client / server 2022-08-14 23:43:01 +02:00
aler9
c6972424d6 avoid using encoding/binary 2022-07-17 14:54:04 +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
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
ee6d7a87a3 base: return error from Write() methods 2022-05-11 13:30:09 +02:00
aler9
6fe7a316ba restore support for cameras with percent sign in password, broken after 1e612f2 2022-05-10 17:32:11 +02:00
aler9
18f7fab361 update docs 2022-05-10 10:28:52 +02:00
aler9
edeef85e9e accept io.Writer in Write() methods 2022-05-08 14:33:29 +02:00
aler9
1e612f2443 server: fix reading with ffplay and stateless ipv6 2022-04-21 13:15:11 +02:00
aler9
bfe4e8cdaa automatically remux oversized RTP/H264 packets; drop parameter ReadBufferSize 2022-04-09 20:16:14 +02:00
aler9
82b03f368f update docs 2022-02-18 10:35:29 +01:00
aler9
8ef623f56d do not treat generic bytes as strings into errors 2022-01-23 12:39:21 +01:00
aler9
f3096ec102 improve write performance by
* buffering packets before sending them
* removing mutexes
2021-12-08 17:46:56 +01:00
aler9
e8e2059b0d remove StreamType from base 2021-11-12 18:01:27 +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
84837b9751 server: fill ctx.Query correctly (#73) 2021-09-23 08:53:10 +02:00
aler9
dbfc058f0c update golangci-lint 2021-09-09 23:05:50 +02:00
aler9
a512762ba0 server: support setupping tracks with arbitrary interleaved IDs (#47) 2021-06-26 12:51:45 +02:00
aler9
14393985fe base: improve coverage 2021-05-29 19:30:12 +02:00
aler9
f908a15a1e rename tests 2021-05-26 20:37:18 +02:00
aler9
70c0dc7800 remove base.MustParseURL 2021-05-23 16:48:56 +02:00
aler9
47dca4d0ac improve coverage 2021-05-23 16:44:54 +02:00
aler9
53e8f32bd0 improve coverage 2021-05-22 17:18:09 +02:00
aler9
cd378ad0bf base: improve coverage 2021-05-22 15:50:12 +02:00
aler9
ce83edbed1 base: improve coverage 2021-05-21 18:52:55 +02:00
aler9
9a7d0c56fa base: rename content into body 2021-05-21 13:38:39 +02:00
aler9
8be64d9cf6 improve coverage 2021-05-12 16:16:43 +02:00
aler9
f02db78dec base: improve coverage 2021-05-11 12:48:03 +02:00
aler9
f8ef945dae client: allow to call client.Close() always 2021-05-10 17:18:41 +02:00
aler9
1b9b19dd84 use uppercase for UDP/TCP 2021-05-08 22:35:29 +02:00
aler9
bec905ed9c base: improve tests 2021-05-07 13:22:52 +02:00
aler9
e9518993d4 base: improve negative tests 2021-04-24 11:46:48 +02:00
aler9
d050001b58 base: add tests 2021-04-12 14:25:22 +02:00
aler9
2e5aef4c12 base: add tests 2021-04-11 18:12:08 +02:00
aler9
113935ab47 cleanup docs and tests 2021-04-08 19:22:26 +02:00
aler9
14ce8dbc45 improve tests 2021-04-04 20:20:29 +02:00
aler9
1f8d7a9ae7 client: build track URLs by using Content-Base, when provided by server 2021-04-03 16:23:14 +02:00
aler9
02ecadc2eb client: rewrite test without rtsp-simple-server 2021-03-20 18:29:00 +01:00
aler9
1c2509cb54 update golangci-lint 2021-03-20 16:15:38 +01:00
aler9
8936db52e4 base: add InterleavedFrame tests 2021-03-18 20:19:34 +01:00