Commit Graph

58 Commits

Author SHA1 Message Date
aler9
0db2d3eb8c rtmp: improve performance
reuse existing structs instead of allocating them during every read()
2022-08-15 16:11:23 +02:00
aler9
af7a815f83 update gortsplib 2022-08-05 23:50:45 +02:00
aler9
f7c08f577a rtmp: fix decoding of chunk3 + chunk3 2022-07-19 16:42:11 +02:00
Alessandro Ros
9e6abc6e9f
rtmp: rewrite implementation of rtmp connection (#1047)
* rtmp: improve MsgCommandAMF0

* rtmp: fix MsgSetPeerBandwidth

* rtmp: add message tests

* rtmp: replace implementation with new one

* rtmp: rename handshake functions

* rtmp: avoid calling useless function

* rtmp: use time.Duration for PTSDelta

* rtmp: fix decoding chunks with relevant size

* rtmp: rewrite implementation of rtmp connection

* rtmp: fix tests

* rtmp: improve error message

* rtmp: replace h264 config implementation

* link against github.com/notedit/rtmp

* normalize MessageStreamID

* rtmp: make acknowledge optional

* rtmp: fix decoding of chunk2 + chunk3

* avoid using encoding/binary
2022-07-17 15:17:18 +02:00
aler9
50d205274f fix tests 2022-07-17 12:02:17 +02:00
aler9
822a896a82 rtmp: fix rtmp -> rtsp audio conversion 2022-07-17 09:54:16 +02:00
aler9
ef3e18a9e9 rtmp: add handshake functions 2022-07-16 15:18:04 +02:00
aler9
772c5b2363 rtmp: improve tests 2022-07-16 12:42:48 +02:00
aler9
2a0567ab4a rtmp: improve tests 2022-07-14 21:49:18 +02:00
aler9
67e8a01d56 rtmp: split net.Conn from rtmp.Conn 2022-07-09 17:25:33 +02:00
aler9
bf1f45df32 rtmp: add conn handshake tests 2022-07-09 16:19:49 +02:00
aler9
a19f45f736 rtmp: fix s1 generation 2022-07-09 15:00:47 +02:00
aler9
8e14dff6d0 rtmp: fix tests 2022-07-09 14:04:51 +02:00
aler9
e771f9eba0 rename file 2022-07-02 22:11:26 +02:00
aler9
45c1370145 rtmp: normalize API 2022-06-27 17:52:20 +02:00
aler9
41b08c9f50 update gortsplib 2022-06-24 17:00:28 +02:00
aler9
ec4c40b222 update gortsplib 2022-06-23 13:54:48 +02:00
aler9
06b09efa91 rtmp: add tests 2022-06-11 00:31:43 +02:00
aler9
58cbd072c8 rtmp: support ping requests 2022-06-11 00:31:05 +02:00
aler9
05bac43177 rtmp: fix compatibility with some dji drones (#928) 2022-06-11 00:19:06 +02:00
aler9
2601ca5661 rtmp: implement acknowledge mechanism 2022-06-08 20:47:36 +02:00
aler9
ee2908081e rtmp: make chunk writes atomic 2022-06-08 14:07:30 +02:00
aler9
d0781e5e4a rtmp: add DTS field to video / audio messages 2022-06-07 23:13:31 +02:00
aler9
d3797d3139 rtmp: improve video / audio messages 2022-06-07 22:48:10 +02:00
aler9
7abb85ab20 rtmp: improve tests 2022-06-07 21:12:58 +02:00
aler9
cd19332350 rtmp: use bufio reader during handshake 2022-06-07 20:00:24 +02:00
aler9
eb09c7c965 rtmp: improve handshake 2022-06-06 14:24:59 +02:00
aler9
af3e5c9183 rtmp: improve handshake 2022-06-06 00:07:24 +02:00
aler9
6a24c82589 rtmp: add user control messages 2022-06-05 22:44:55 +02:00
aler9
ba83ef65d2 rtmp: add message reader / writer 2022-06-05 01:06:40 +02:00
aler9
76e47686b2 rtmp: rename Message into RawMessage 2022-06-04 22:17:50 +02:00
aler9
959b78586a rtmp: add MessageReader 2022-05-16 11:57:29 +02:00
aler9
1f6d92bc3a rtmp: add additional message types 2022-05-14 00:52:11 +02:00
aler9
180db31166 rtmp: support negative timestamps in MessageWriter 2022-05-14 00:37:08 +02:00
aler9
dcdb0cf13f rtmp: fix timestamp in MessageWriter 2022-05-14 00:19:43 +02:00
aler9
d1c6c56077 rtmp: add Chunk2 2022-05-14 00:11:01 +02:00
aler9
420b6b21c4 rtmp: split MessageWriter into single handlers per chunk stream 2022-05-13 23:47:54 +02:00
aler9
896c799f99 rtmp: add MessageType, ControlChunkStreamID 2022-05-13 23:38:39 +02:00
aler9
9519bf670a rtmp: add MessageWriter 2022-05-13 20:53:52 +02:00
aler9
046a3f248d rtmp: add primitives 2022-05-13 19:04:47 +02:00
aler9
d5a1b8c8ab rtmp: cleanup tests 2022-04-18 17:04:59 +02:00
aler9
db7ee22789 rtsp source: support AAC tracks with custom sizelength, indexlength and indexdeltalength
(https://github.com/aler9/gortsplib/pull/118)
2022-04-15 13:17:00 +02:00
aler9
a34a01ebd9 RTMP client/source: support dynamic H264 SPS/PPS 2022-04-08 18:19:53 +02:00
aler9
983469a1f9 rtmp: support clients that publish with empty metadata or no metadata (#386) (#769) 2022-02-12 17:48:55 +01:00
aler9
789a306acd add rtmp tests 2022-02-12 16:21:16 +01:00
aler9
2bfdcc7d89 update gortsplib 2022-01-30 17:43:03 +01:00
aler9
811540b34b tidy up rtmp 2021-12-22 17:37:15 +01:00
aler9
1dff3239d2 remove rtmp.Conn.NetConn() 2021-12-22 17:33:37 +01:00
aler9
68ab5c05f6 move aac utilities into gortsplib 2021-09-23 20:24:10 +02:00
aler9
7ba507f205 rtmp: print clearer error message in case no H264/AAC tracks are found 2021-08-31 10:42:08 +02:00