Commit Graph

3606 Commits

Author SHA1 Message Date
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
Saxon f546b9daed revid: improved mtsSender's output comment and moved closer to call 2019-04-10 12:15:46 +09:30
Saxon dd833afe2e revid: updated comment for setupPipeline 2019-04-10 12:13:08 +09:30
Saxon d3e3904e75 revid: commented Revid.writeClosers 2019-04-10 12:11:45 +09:30
Trek Hopton 789a526e75 Merged in pcm-loc-change (pull request #183)
Pcm package location change

Approved-by: Saxon Milton <saxon.milton@gmail.com>
2019-04-09 07:44:15 +00:00
Trek H 669a7d3c22 Merge branch 'master' into audio-mts-encoder 2019-04-09 16:07:02 +09:30
Saxon e92615ce8a Merge branch 'buffered-mts-sender' of http://bitbucket.org/ausocean/av into buffered-mts-sender 2019-04-09 16:00:56 +09:30
Saxon 66622920d5 revid: Buffered MtsSender
The mtsSender now has a ringBuffer and tests have been updated accordingly. The mtsSender now uses an output routine to get data from it's ringBuffer to send.
 Revid now uses ioext.multiWriteClosers for encoders to write to so that senders can be closed and therefore any output routines.
2019-04-09 15:58:34 +09:30
Trek H 8e9cbd5a79 pcm: updated import statements using pcm 2019-04-09 15:48:54 +09:30
Saxon f52272894a Merge branch 'rtp-parsing' of http://bitbucket.org/ausocean/av into rtp-parsing 2019-04-09 15:47:13 +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