Commit Graph

21 Commits

Author SHA1 Message Date
Saxon 38cfad7b67 revid: fixing some more bugs
Fixed H264 RTP extractor. Fine tuned some timing regarding geovision setup. Added some more
logging to geovision setup.
2019-10-23 12:48:22 +10:30
Saxon f336a03d7a revid: general bug fixing
Use http instead of https in gvctrl getLogin request. Gave RTP client a close method so that the conn can
be closed after we're done with the client. Put timeout on reading from the RTP client PacketConn so that
we don't hang on the ReadFrom call if the conn is closed. Closing the RTSP and RTP clients when
startRTSPCamera is returned.
2019-10-22 23:04:33 +10:30
Saxon 970a445ca4 codec/h265/lexer.go & protocol/rtp/client.go: fixed lexer and rtp client.
The lexer had a bug which is now fixed, and the RTP client is no longer looking for SSRC
in rtp.NewClient (which means we miss a packet).
2019-05-20 20:49:50 +09:30
Saxon bc6a0ae55e revid: using RTCP client to maintain RTP stream from RTSP server
Now adopting an RTCP client so that the RTP stream from the RTSP server can be maintained past 1 minute.
This change involved some refactor.
The rtcp.NewClient signature has been simplified. There is now a default send interval and name for use
in the source description in the receiver reports. These can be customised if required with the new
SetSendInterval and SetName funcs. The rtcp.NewClient signature now takes an rtp.Client, so that it
can get information from the RTP stream, like most recent sequence number. As a result of this requirement
the rtp package parse file has been extended with some functions for parsing out the sequence number and
ssrc from RTP packets and the RTP client provides getters for these things.
2019-05-20 18:14:27 +09:30
Saxon 07a6cfcf68 protocol/rtp/client.go: commented PacketReader 2019-05-13 14:03:11 +09:30
Saxon 4f55f2bed1 protocol/rtp/client.go: initialising PacketReader now to fix build runtime panic 2019-05-11 22:04:45 +09:30
Saxon 6acc2d7376 protocol/rtp/client.go: wrote PacketReader type
Client now possesses a PacketReader which has it's Read func wrapped by the Client's Read func
2019-05-11 22:01:07 +09:30
Saxon 534a0bcecb protocol/rtp/client.go: updated file description in file header. 2019-05-08 16:57:07 +09:30
Saxon c48e681c41 protocol/rtp/client.go: removed buffering in client.
Removed buffering in rtp client. This simplified things alot e.g. the recv routine has been removed, and therefore anything that was there to help with handling of the routine is also gone
like the Start() and Stop() methods as well as signalling channels and waitgroups. The client is now just effectively a wrapper for a udp conn.
2019-05-08 16:54:02 +09:30
Saxon 7e96f5999c protocol/rtp/client.go: updated comment for NewClient to remove mention of removed op argument 2019-05-08 15:47:11 +09:30
Saxon c9aa43394b protocol/rtp/client.go: got rid of useless continue in recv dst write if error encountered 2019-05-03 20:04:06 +09:30
Saxon 2f039e0c4b protoocl/rtp: removed comment for 'misc constants' 2019-05-03 20:02:29 +09:30
Saxon 80a7d41d8a protocol/rtp: removed op from Client i.e. what is read from Client are RTP packets. 2019-05-01 14:15:39 +09:30
Saxon 6694cab956 protocol/rtp: commented Client.Err() 2019-04-30 02:38:38 +09:30
Saxon 49a401681d protocol/rtp: Client.ErrChan => Client.err and wrote accessor function Client.Err() to access this chan as only receive 2019-04-30 02:37:18 +09:30
Saxon a0c324a813 protocol/rtp: simplified test
Simplified clien_test.go file by testing two different RTP packet operations using loop. We now first test no operation,
and then test a rtp.Payload operation, which gets the payload of the packets and stores them in the client ringbuffer for the
user of the client to read.
2019-04-21 23:07:30 +09:30
Saxon be76998c7d protocol/rtp: wrote TestReceiveNoOp
Wrote test TestReceiveNoOP to check that client works correctly when we give no operation to perform on RTP packets before
storing in the client ringBuffer, which calling io.Reader implementation Read will get packets form.
2019-04-21 22:40:08 +09:30
Saxon 00db293b44 protocol/rtp: consts for chan and ringbuffer sizes 2019-04-20 21:05:34 +09:30
Saxon 190d546c58 protocol/rtp: commented file 2019-04-19 18:40:15 +09:30
Saxon b302eafa68 protocol/rtp: setting Client's op field in constructor 2019-04-19 18:22:43 +09:30
Saxon ccc08bfad1 protoocl/rtp: added client.go file
Added client.go which contains a struct to describe an RTP client. It provides a method, Start, which will
invoke a recv routine to start receiving packets and process them using an op function passed on the Client's
creation. Client implements io.Reader, so that the client may be read from.
2019-04-19 18:17:06 +09:30