Saxon
f0a1a866dd
protocol/rtsp: removed writeRequest receiver method
2019-04-26 15:09:59 +09:30
Saxon
4998d8d4d6
protocol/rtsp/cmd/stream: using NewClient rather than NewSession
2019-04-26 14:35:25 +09:30
Saxon
14cb6f7f07
protocol/rtsp: reflect go net.http package patterns
...
Request now has a Write receiver method that will write to the passed io.Writer. Client now has Do method that will send the request and return the respons and any errors. Also Renamed the Client
field to Session, which was mistakenly changed.
2019-04-26 14:20:58 +09:30
Saxon
4e98b4d2ea
protocol/rtsp: renamed urlStr to addr
2019-04-26 14:08:58 +09:30
Saxon
cd18d9f5a7
protocol/rtsp: removed Client field from client struct as not useful
2019-04-26 14:07:29 +09:30
Saxon
a0fb299b06
protocol/rtsp: moved client functionality into client.go file
2019-04-26 13:57:18 +09:30
Alan Noble
149a2fa6b9
Fix package-level doc comment.
2019-04-26 00:36:23 +00:00
Saxon
9169afe34f
protocol/rtsp: general clean up
2019-04-25 15:30:28 +09:30
Saxon
f3f3be5fc6
protocol/rtsp: completed test for rtsp
...
Completed test to check that each method we support works and can produce valid requests. The requests are compared to requests that have been proven valid. This test also checks that the RTSP
client communicates over tcp correctly. i.e. we have set up a client and server, and we check that this communication happens correctly.
2019-04-25 14:46:21 +09:30
Saxon
adbb9d1c99
protocol/rtsp: added testing file and wrote some signature for possible tests
2019-04-23 17:27:37 +09:30
Saxon
e00c959a84
protocol/rtcp: renamed NTPTimestamp to Timestamp
...
Renamed NTPTimestamp and referenced specifications rather than quoting. Renamed Timestamp func to ParseTimestamp.
2019-04-23 16:40:26 +09:30
Saxon
a256dc9133
protocol/rtsp: made rtsp/cmd/stream functional
2019-04-23 16:22:58 +09:30
Saxon
34c59c95d6
protocol/rtsp: working on main.go in rtsp/cmd/stream
...
Added file header to main.go, and modified rtsp.go to work with cmd/stream/main.go. This change modifies writeRequest, which now takes a *url.URL. This means the Setup() method can parse a new
URL that contains a given track, and then give this to writeRequest.
2019-04-23 15:49:54 +09:30
Saxon
d03ae3ff7e
protocol/rtsp: fixed rtsp.go file header indentation
2019-04-23 15:33:07 +09:30
Saxon
63da7dbb59
protocol/rtcp: removed unecessary logging in test files
2019-04-23 14:45:16 +09:30
Saxon
017abea667
protocol/rtcp: fixed indentation in file headers
2019-04-23 14:38:26 +09:30
Saxon
4c2962ba75
protocol/rtcp: renamed SourceDescription to Description
2019-04-23 14:33:27 +09:30
Saxon
889072bde0
protocol/rtcp: improve ReportBlock field names
2019-04-23 14:30:05 +09:30
Saxon
4068aea207
protocol/rtp: better comment for NTPTimestamp and renamed fields
2019-04-23 14:25:22 +09:30
Saxon
b43f6f8072
protocol/rtcp: renamed highestSequence() to sequence.
2019-04-23 14:16:40 +09:30
Saxon
6b994d0dba
protocol/rtcp: made Client error channel unexported
...
Renamed Client ErrChan field to err, i.e. made unexported. Wrote Err() accessor that allows user to only read from error channel.
2019-04-23 13:26:56 +09:30
Saxon
a43ef56618
protocol/rtcp: addressing PR feedback
2019-04-22 00:34:03 +09:30
Saxon
cbad00b6e6
av: fixed conflict
2019-04-21 23:58:59 +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
f454a34856
protocol/rtp: added client_test.go for client testing
2019-04-20 21:10:03 +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
Saxon
a8e56311c2
protocol/rtcp: addressing PR feedback
2019-04-19 14:15:43 +09:30
Saxon
68b996f698
protocol/rtsp: removed LICENSE.BSD file as license now in rtsp.go
2019-04-18 13:53:02 +09:30
Saxon
e87eadf8fd
protocol/rtsp/rtsp.go: commenting and general clean up.
2019-04-17 18:31:03 +09:30
Saxon
c9082c1b4c
protocol/rtsp/rtsp.go: put tcp dial in new session
...
tcp dial is now in new session, firstly so that we don't have to do the s.conn == nil check and also so that we dont't have to pass around the url everywhere.
2019-04-17 12:45:02 +09:30
Saxon
85bb88c325
protocol/rtsp: removed README
2019-04-17 12:22:54 +09:30
Saxon
1bcf05830d
protocol/rtsp: removing rtp package
...
We already have an rtp package, which I will extend with client functionality, so we don't need this here.
2019-04-17 12:20:36 +09:30
Saxon
02c11c234f
protocol/rtsp/rtsp.go: added back beatgammits structs
...
Added them back because i realised I can't use http Requests and Responses and the accompanying methods because then this wouldn't be the RTSP protocol, it would be the HTTP protocol, which is not what we're doing.
2019-04-17 12:18:23 +09:30
Saxon
0543cb0968
protocol/rtsp/rtsp.go: got rid of NewRequest and put logic into writeRequest
2019-04-17 10:20:49 +09:30
Saxon
948e9a67e1
protocol/rtsp/rtsp.go: simplified RTSP method functions wrap a single writeRequest func
2019-04-17 09:05:34 +09:30
Saxon
6f4738a04c
protocol/rtsp: removed sdp stuff
...
We won't be using this, at least not initially, so it's being deleted.
2019-04-17 08:15:52 +09:30
Saxon
cd7e2ce3f3
protocol/rtsp: removed response writer interface, which was just http.ResponseWriter
2019-04-17 07:51:34 +09:30
Saxon
d34eabcd34
protocol/rtcp/client.go: not using defer for simple setters/getters
2019-04-17 07:41:31 +09:30
Saxon
9de1b541a9
protocol/rtsp: removed unused stuff
...
Firstly removed unused RTSP method string consts. Also removed all the unused http response codes. Removed
ReadRequest, as this was also not used.
2019-04-16 23:32:50 +09:30
Saxon
4a97a626a0
protocol/rtsp: added beatgammits pkg and also my stream/main.go program
...
Most of this is unmodified except for the stream/main.go program. I am going to use this as a test that simply streams from an RTSP server to vlc.
2019-04-16 22:47:13 +09:30
Saxon
881ddc3d38
protocol/rtcp: using defer where I can
2019-04-16 22:01:38 +09:30
Saxon
f66a94543a
protocol/rtcp: fixed some further feedback
2019-04-16 17:17:48 +09:30
Saxon
51478ee064
protocol/rtcp: addressing of PR feedback
2019-04-16 17:16:13 +09:30
Saxon
f54dd13959
protocol/rtcp: added file headers
2019-04-16 16:45:44 +09:30
Saxon
5cf39595eb
protocol/rtcp: fix case of protocols in comments
2019-04-16 16:31:04 +09:30
Saxon
9e55feafe7
protocol: removed rtsp stuff
...
For this branch we will only include efforts regarding rtcp.
2019-04-16 12:38:14 +09:30
Saxon
1a19412223
protocol/rtcp: finished client_test.go improved usability or client
...
Finished writing the client_test.go file and through the process fixed some bugs in the client. Also increased usability by providing a Stop() method
so that the send and recv routines, and also the connection can be terminated. Also created a sender report struct in rtcp.go - this helped with
testing.
2019-04-16 12:33:58 +09:30
Saxon Milton
6ee286e988
Merged in rtp-parsing (pull request #179 )
...
protocol/rtp: can parse payload from RTP packet
Approved-by: Alan Noble <anoble@gmail.com>
Approved-by: kortschak <dan@kortschak.io>
2019-04-16 00:31:21 +00:00
Saxon
aa947d112c
protocol/rtcp: wrote test for Client.formPayload
2019-04-15 17:35:36 +09:30
Saxon
dca007a5ba
rtcp/protocol: tried to make Bytes funcs and client formation of payload more efficient
2019-04-15 16:56:52 +09:30
Saxon
2669862ced
protocol/rtcp: wrote struct for RTCP sender report
2019-04-15 15:53:06 +09:30
Saxon
af664b0661
protocol/rtsp: more commenting and started writing client_test.go to check the behaviour of the rtcp client
2019-04-15 14:01:38 +09:30
Saxon
56a9b7d6ef
av: fixed broken tests
2019-04-15 11:43:46 +09:30
Saxon
4a613e600c
protocol/rtp: fixed gnu license url in file headers for parse_test.go and parse.go
2019-04-14 17:08:42 +09:30
Saxon
5fa0969530
protocol/rtcp: changed Timestamp func so that it returns msw and lsw
2019-04-13 19:48:20 +09:30
Saxon
757564a2ed
protocol/rtcp: wrote body for Timestamp and added testing.
2019-04-12 18:02:27 +09:30
Saxon
8f452e1155
protocol/rtcp/rtcp.go: added placeholder functions for getting sender report timestamp words
2019-04-12 16:40:52 +09:30
Saxon
81048d1613
protocol/rtcp/client.go: writing rtcp client
...
Added client.go file which contains an rtcp client abstraction. This will listen for incoming sender reports and send out receiver reports.
2019-04-12 16:29:35 +09:30
Saxon
db81547962
protocol/rtcp: wrote test for SourceDescription.Bytes() and made modifiations to make it pass.
2019-04-12 11:14:07 +09:30
Saxon
22d71f8a57
protocol/rtcp: fixed writing of SenderSSRC in ReceiverReport header, now test passing.
2019-04-10 17:12:00 +09:30
Saxon
0700a8270d
protocol/rtp: updated parse.go function comments
2019-04-10 16:56:32 +09:30
Saxon
956110f0ef
protocol/rtcp: wrote test for ReceiverReport.Bytes()
...
This uses data from a "good" packet that vlc used during a stream from a geovision. I have filled the fields
of a receiver report with the same data, and am checking that the result from Bytes() is the same as the
good data.
2019-04-10 16:54:01 +09:30
Saxon
139d4b92ab
protocol/rtcp: added rtcp_test.go file with signatures for some likely tests
2019-04-10 16:33:12 +09:30
scruzin
863db58a84
Removed references to obsolete Session.
2019-04-10 16:32:07 +09:30
Saxon
ddabd9afbf
protocol/rtcp: wrote Bytes for for SourceDescription type
2019-04-10 16:29:40 +09:30
Saxon
5bdea4a09f
protocol: moved rtcp protocol stuff to under protocol rather than under rtsp.
2019-04-10 15:22:38 +09:30
Saxon
32d232908a
protocol/rtsp/rtcp: start writing rtcp structs
...
Wrote structure for Header, ReceiverReport, ReportBlocks, Chunks and Source Description. Wrote Bytes function for ReceiverReport.
2019-04-10 15:21:06 +09:30
Saxon
1160985b2a
protocol/rtsp: fixing url usage
2019-04-10 14:01:13 +09:30
Saxon
6b9f552610
protocol/rtsp: removed rtsp-util/main.go and create cmd/stream/main.go
...
cmd/stream/main.go will be a simple client that sets up an rtsp connection and asks for the server to stream.
2019-04-10 13:12:31 +09:30
Saxon
a0fb380717
protocol/rtp: simplified hasExt function
2019-04-10 12:52:05 +09:30
Saxon
ff0c62910c
protcol/rtp: panic in Payload if length is not sufficiently long to be RTP packet.
2019-04-10 12:51:05 +09:30
Saxon
6992ab395b
protocol/rtp: removed extHeaderLen func
2019-04-09 15:45:40 +09:30
Saxon
b5c018276f
protocol/rtp: commented rtpVer const and made defaultHeadSize 12 rather than 4*3
2019-04-09 15:45:40 +09:30
Saxon
df3e66e5b2
protocol/rtp: removed redundant version checks from helper funcs in parse.go
2019-04-09 15:45:40 +09:30
Saxon
09b8a2baff
protocol/rtp: fixed indentation issue in file header in parse_test.go
2019-04-09 15:45:40 +09:30
Saxon
b5711d18c5
protocol/rtp: fixed indentation issue in file header
2019-04-09 15:45:40 +09:30
Saxon
3dfc7ed990
protocol/rtp: wrote TestPayload
...
Wrote test TestPayload which will check that we can correctly get the payload from an RTP
packet using Payload for a variety of different RTP packet configurations.
2019-04-09 15:45:40 +09:30
Saxon
275b86285e
protocol/rtp: added TestExtHeaderLen
...
Added test TestExtHeaderLen which checks that extHeaderLen returns the correct len for
an RTP packet with an extension header.
2019-04-09 15:45:40 +09:30
Saxon
3dc6d7733b
protocol/rtp: wrote TestHasExt
...
Wrote test TestHasExt which checks the behaviour of hasExt for when it's call with an
RTP packet with an extension indicator and also for an RTP packet with no extension
indicator.
2019-04-09 15:45:40 +09:30
Saxon
c2b67d7fb9
protocol/rtp: wrote TestCsrcCount
...
Wrote test TestCsrcCount to check behaviour of csrcCount is expected.
2019-04-09 15:45:40 +09:30
Saxon
74b25e646a
protocol/rtp: wrote TestVersion
...
Wrote test that checks the version func will correctly get the
version from an RTP packet.
2019-04-09 15:45:40 +09:30
Saxon
fa9888723f
protocol/rtp: added parse_test.go file and fixed copyrights.
2019-04-09 15:45:40 +09:30
Saxon
af9a9bc6c0
protocol/rtp: added parse.go file with parsing functionality
...
Added parse.go. This file contains functionality to obtain the Payload from an RTP packet.
Unexported functions to help with this extraction have been added; extHeaderLen, hasExt,
csrcCount and version.
2019-04-09 15:45:40 +09:30
Saxon
4978db2f2b
revid: fixed silly rtp bug
2019-04-09 15:44:18 +09:30
Saxon
83122d0ac5
protocol/rtsp: adding beatgammit's rtsp pkg to our codebase
...
Much of the functionality we require for rtsp input is here, but some modification will be required to fix some bugs and get it functional; which will come in later PRs.
2019-04-09 12:32:12 +09:30
Saxon
6dbbee81d2
protocol/rtp: rtp packet payload comment update
2019-04-03 12:20:54 +10:30
Saxon
efa0d38aad
protocol/rtp: removed Len field from ExtensionHeader struct as we can gather from len(ExtensionHeader.Header)
2019-04-02 21:49:11 +10:30
Saxon
95a9e4a2ef
protocol/rtp: extended functionality of rtp pkg
...
rtp.Bytes can now deal with CSRC fields, extension fields and padding. Tests have been updated to be more extensive in checks.
2019-03-29 15:48:34 +10:30
Saxon
5366eca2f2
av: fixed imports
2019-03-25 11:51:03 +10:30
Saxon
3a736172ee
av: restructured directories
2019-03-25 11:34:56 +10:30