Commit Graph

2534 Commits

Author SHA1 Message Date
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 e3c711d1f6 cmd/revid-cli: run failed log message to warning level 2019-04-15 13:13:01 +09:30
Saxon cea3a5958a revid: changed no location in reply log message to level debug 2019-04-15 13:09:56 +09:30
Saxon 56a9b7d6ef av: fixed broken tests 2019-04-15 11:43:46 +09:30
Saxon 3534d9031a av: updated go mod 2019-04-15 11:26:40 +09:30
Saxon 88431b1357 revid: made rtmpSender smarter with write error handling 2019-04-15 11:20:36 +09:30
Saxon d18373908b revid: added ringBuffer to rtmpSender 2019-04-15 10:48:12 +09:30
Saxon d75ea20137 revid: applying some feedback from last PR 2019-04-15 10:25:35 +09:30
Saxon f59879b51d revid: removed ringBuffer after lexer
Now that we want buffered senders (as required), the ringBuffer that was after the
lexer has been removed. Instead, we now have an ioext.multiWriterCloser to which the
lexer writes to. This then writes to the encoders, and then encoders write to each of
their own multiWriteClosers, which write to the appropriate senders. We now call
close on the first multiWriteCloser to close down the entired pipeline, as this close
call propogates through each level.

We have removed the outputClips routine as it's not required anymore to get data
from the revid ringBuffer, and have removed other things that were used by this, like
the IsRunning function.

We have also updated tests to work with these changes - they are passing.
2019-04-15 08:42:56 +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 Milton 899a2fe89e Merged in buffered-mts-sender (pull request #180)
revid: Buffered MtsSender

Approved-by: kortschak <dan@kortschak.io>
2019-04-14 01:44:53 +00:00
Saxon b347f2e9d1 revid: set revid.isRunning to false before waiting, because this is what triggers output routine to be killed. 2019-04-14 11:13:17 +09:30
Saxon 5cd12bff8a revid: dummyLogger in senders_test.go now uses pointer receiver for log 2019-04-13 20:41:47 +09:30
Saxon 9b48d22392 av: fixed conflicts with master 2019-04-13 20:15:08 +09:30
Saxon b6199988a3 av: updating go.sum 2019-04-13 20:06:16 +09:30
Saxon 90a059b37d av: now builds 2019-04-13 20:02:50 +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
Alan Noble be0f8d0094 Fix typo in Rotation param. 2019-04-11 22:17:01 +00:00
Trek Hopton 4738bae0d1 Merged in audio-mts-encoder (pull request #182)
Upgrade MTS encoder to transfer audio data

Approved-by: kortschak <dan@kortschak.io>
2019-04-11 06:41:18 +00:00
Trek H e75b3e3dfd Merge branch 'master' into audio-mts-encoder 2019-04-11 11:31:56 +09:30
Trek H 7c990b3bb5 mts: reordered, neatened and clarified code. 2019-04-10 17:18:42 +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