Commit Graph

2618 Commits

Author SHA1 Message Date
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
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
scruzin d4c6a8f2a3 Removed as grossly out of date. 2019-04-10 16:06:36 +09:30
scruzin af32f13932 Removed obsolete directory. 2019-04-10 16:04:18 +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 02287bfd80 revid: added more to setupPipeline comment regarding parameters: 2019-04-10 14:05:53 +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 bab1e62798 revid: don't return from revid.Stop() if a close of one of the senders fails 2019-04-10 12:57:28 +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 850b45d791 revid: temp writeCloser wc in setupPipeline renamed to w 2019-04-10 12:22:41 +09:30
Saxon eb866ada5e revid: restructure rtmpSender's Close method 2019-04-10 12:20:39 +09:30
Saxon 9a52f19e3d revid: fixed mtsSender's output routine's logic 2019-04-10 12:19:28 +09:30
Saxon 3841b8cb5b revid: fixed build error in revid_test.go 2019-04-10 12:16:51 +09:30