Commit Graph

497 Commits

Author SHA1 Message Date
saxon 227f25a3fb revid: improved some naming and revmoed uneeded const 2018-11-26 00:40:18 +10:30
saxon 98eb2c64e8 revid: revid output check and destination setting cleaner. Also changed destination release to single chunk.Close() so that chunks aren't closed more than once 2018-11-25 23:45:38 +10:30
saxon 5920d1c8d7 revid: made destination for revid a []loadSender and change code such that iterate through this when performing actions relating to destinations like write, send and close. Also created new sender call rtp sender that has a inherent rtp encoder 2018-11-25 23:10:38 +10:30
saxon a4ded5337d revid: changed close operation on destination to close operpation on slice ofoperations in reset() 2018-11-25 17:24:52 +10:30
saxon 5eb7225da9 revid & rtp: fixed up some logging, line breaks, and simplified some decrements/increments 2018-11-24 12:14:44 +10:30
saxon a231d57f06 revid: usage of nil error in logging message 2018-11-22 10:21:25 +10:30
saxon 4f4bebae25 revid: removed revid's overwnship of rtp encoder 2018-11-21 21:34:28 +10:30
saxon 92294aed70 rtp: assert that udp with no packetization works 2018-11-21 20:43:17 +10:30
saxon 1cebc821d1 revid and rtp: simplified relationship between mts encoder and rtp encoder and revmoed queue 2018-11-21 20:23:02 +10:30
saxon cedc63a0b5 revid: got rid of debug prints 2018-11-21 18:16:10 +10:30
saxon 315ba6bd76 revid: back to working state 2018-11-21 18:14:36 +10:30
saxon f53c866311 revid-cli: using MpegtsRtp to representation packetization under mpegtsrtp packetization 2018-11-21 17:30:46 +10:30
saxon 589ec15259 revid-cli: made -Output=Rtp to mean rtp over udp 2018-11-21 17:30:46 +10:30
saxon 8be3c4de23 revid-cli: allow setting of udp address through revid-cli options 2018-11-21 17:30:46 +10:30
saxon 16614df9f5 rtp: started using mpegts encoder inside rtp encoder so that fragmentation i.e. smaller rtp packets is easier. Streams fine. 2018-11-21 17:30:46 +10:30
saxon fce0937810 rtp: wrote some code so that config validated udp and rtp stuff as well 2018-11-21 17:30:46 +10:30
saxon c0e6ba2a5b rtp: checking for udp output and rtp packetisation in revid such that the right sender and encoder is selected 2018-11-21 17:30:46 +10:30
Dan Kortschak 57caef8937 revid: clean up output clips some more
The low volume throttle is removed since that's the job of the kernel's scheduler.
2018-10-19 21:11:02 +10:30
kortschak cec4f3803f Merged in remove-stream-chan (pull request #68)
revid: remove stream chan

* revid,stream: factor chan operations out into a separate type

* revid: remove stream chan

* revid: reduce label length

Approved-by: Alan Noble <anoble@gmail.com>
2018-10-19 00:50:08 +00:00
Dan Kortschak 4f5a47b1e5 revid: fix logging for completed stream with error 2018-10-05 08:21:21 +09:30
Dan Kortschak 81997cd68e revid: self-document and harmonize arguments to raspivid 2018-10-05 08:20:27 +09:30
Dan Kortschak c20ed48c40 revid: move command creation and logging out of switch 2018-10-05 08:20:27 +09:30
Dan Kortschak aba6ab1645 stream,revid: clean up data flow and docs 2018-10-04 10:35:43 +09:30
Saxon Milton 6a0c9941ea revid: capturing any errors from r.lexTo 2018-09-28 04:23:43 +00:00
saxon 0c2ccf55fa revid: move initialisation of revids netsender up higher in New so that we don't get nil pointer deference 2018-09-25 17:10:35 +09:30
saxon e6d0ee035e revid: added yet another message 2018-09-24 20:27:43 +09:30
saxon 9b7b88be98 revid: adding another debug print to make sure we're flushing ring buffer 2018-09-24 20:24:15 +09:30
saxon 724042baeb revid: change no of frames per clip to 25 for http 2018-09-24 19:56:05 +09:30
saxon ed8613a255 revid: return any errors from conversion of frame rate to int 2018-09-24 16:09:03 +09:30
Saxon Milton 0cf6014887 revid: passing delay corresponding to fps into lexTo - fixing quality issue when streaming from raspivid (not sending stuff too fast) 2018-09-24 15:57:00 +09:30
saxon 8df244891a revid: used args... in exec rather than strings.join to fix bug 2018-09-24 13:21:03 +09:30
saxon 6e773abd4e revid: made logging messages lowercase and removed exclamation marks 2018-09-20 11:23:52 +09:30
saxon e31678dc9b revid: moved pkg const declaration to revid.go and removed space in pkg string 2018-09-20 11:17:08 +09:30
saxon 0f24e19a2a revid: added pkg name to logging messages in revid.go and senders.go 2018-09-19 22:35:15 +09:30
saxon d17f7c87e9 revid: fixed raspivid args and logging 2018-09-19 22:02:50 +09:30
saxon b3a8f2bca3 revid: improved logging key value pairs in revid.go 2018-09-14 12:17:29 +09:30
saxon 85ab3a5744 revid: updated logging messages in config.go and revid.go to use new logger 2018-09-11 16:56:33 +09:30
Dan Kortschak b8bf44f57e parse=>stream/lex: move lexing to better location and name 2018-08-23 15:06:32 +09:30
Dan Kortschak eedc473125 revid,parse: remove io.Writer/stream.Encoder shim 2018-08-23 14:51:12 +09:30
Dan Kortschak 05ba19e4aa encoding->stream: rename packages 2018-08-20 07:49:02 +09:30
Dan Kortschak 7e1d7f77b8 revid,encoding/{flv,mts}: remove in-bound chans for packet encoders 2018-08-19 21:28:20 +09:30
Dan Kortschak 437c7756df flv: rename encoder type 2018-08-19 21:05:04 +09:30
Dan Kortschak 5d8eca850c mts: rename encoder type 2018-08-19 20:39:57 +09:30
Dan Kortschak c0f9f7bf7b encoding: restructure packages handling stream encoding 2018-08-19 20:29:22 +09:30
Dan Kortschak ddb78a6234 generator: clean up MPEG-TS encoding
This deletes or marks unused cruft, removes internal chans and makes
interface chans single item long to make way for removal.
2018-08-18 11:27:39 +09:30
Raul Vera dc1d09f8ae Separate the revid -t argument from the raspivid -t argument. 2018-08-10 04:37:54 +00:00
Dan Kortschak 372c42d5aa flv,generator: clean up FLV handling 2018-07-07 15:27:59 +09:30
Dan Kortschak db6ca2922a revid,parse: wire parse.H264 to revid
Through experimentation I have realised the previous ordering of NALU
types does not work with YouTube. I have also exhaustively checked the
requirement for each of the 3 NALU types that are checked and all are
needed. Finally, I have checked whether 7 is needed because of its
inclusion in a parallel branch; checking for this type prevents this
code from working.
2018-07-05 19:10:17 +09:30
Alan Noble 99ef1d0727 PR feedback and some other clean-up. 2018-06-27 07:50:05 +09:30
Alan Noble 1645b759f1 Added ns to Revid struct, so it could be exposed as a httpSender, and refactored revid-cli accordingly. 2018-06-26 15:53:55 +09:30
Alan Noble 9d113cc498 Renamed NativeRtmp to just Rtmp - since it is exposed to clients. FfmpegRtmp should be deprecated. 2018-06-25 10:53:26 +09:30
Dan Kortschak 647641bed6 revid: clean up input handling 2018-06-24 21:31:09 +09:30
Dan Kortschak fba613ab60 revid: make FramesPerClip an int 2018-06-20 14:38:34 +09:30
Dan Kortschak ec3eefeb37 revid: do not double report returned error 2018-06-20 13:59:38 +09:30
Dan Kortschak 090ad746a6 revid: change default frames/clip to 7 for http
This increases effective bitrate to 88kpbs from 12kbps with fpc=1.
2018-06-20 12:48:12 +09:30
kortschak 74a2891ed7 Merged in revid/httpaddress (pull request #32)
revid: use correct address for HTTP
2018-06-18 22:49:24 +00:00
Dan Kortschak ca5eefa4c3 generator,parser: remove Get prefix from read accessors
Also make user-facing chan exposure a little safer.
2018-06-17 21:52:55 +09:30
Dan Kortschak b66abcbfec revid: improve doc comment 2018-06-17 21:11:44 +09:30
Dan Kortschak a7d3edbe57 revid: rename ChangeConfig to SetConfig 2018-06-17 21:10:27 +09:30
Dan Kortschak ed923ed256 revid: rename GetConfigRef to Config 2018-06-17 21:08:37 +09:30
Dan Kortschak 6de4f8c9a6 revid: rename GetBitrate to Bitrate
Also change to int; when we get more than 2Gbs^-1, we'll probably be
using 64 bit devices.
2018-06-17 20:57:52 +09:30
kortschak 4c0d219fbf Merged in revid/nilcheck (pull request #33)
revid: fix nil dereference on RTMP reconnect
2018-06-16 04:10:17 +00:00
Dan Kortschak 36ebb5d58a revid: remove unused field in Revid 2018-06-15 21:18:22 +09:30
Dan Kortschak a995a36ad7 revid: fix nil dereference on RTMP reconnect 2018-06-14 22:54:44 +09:30
Dan Kortschak 3e6a3283e1 revid: use correct address for HTTP 2018-06-14 13:42:54 +09:30
Dan Kortschak 820dae7b4c revid: various cleanups 2018-06-09 14:58:33 +09:30
Dan Kortschak 1105ee3ea9 revid: use loadSender for clip sending 2018-06-09 14:08:48 +09:30
Dan Kortschak 3881cb9712 revid: avoid monomorphic interface 2018-06-09 11:31:21 +09:30
Dan Kortschak 3da57cbe46 revid: use time.Duration for durations 2018-06-08 12:48:11 +09:30
Dan Kortschak 902ac744fe revid: address review comments 2018-06-08 09:32:13 +09:30
Dan Kortschak dee6dec8d4 revid: wait for URL from netreceiver 2018-06-07 21:50:01 +09:30
Dan Kortschak 71a30bcc67 revid: lower-case names 2018-06-07 20:32:53 +09:30
Alan Noble 6c90fc342b revid.go deleted online with Bitbucket 2018-01-24 06:30:04 +00:00
Alan Noble 6c0f923480 Use full path to import ringbuffer. 2017-12-04 16:20:40 +10:30
Alan Noble 726d360a31 Resolved conflict. 2017-12-04 15:59:41 +10:30
Saxon1 47a7a3b757 ran gofmt 2017-12-04 14:36:23 +10:30
Saxon1 ada834dc2c made small changes to revid and ringbuffer to allow for use of ringbuffer in revid 2017-12-04 14:31:54 +10:30
Alan Noble 4536ec5358 Changed RTPEncapsulate to rtpEncapsulate since it is not exported. 2017-12-03 10:01:56 +10:30
Saxon1 a4929419b9 Removed calls to checkContinuityCounts 2017-12-03 08:46:08 +10:30
Saxon1 174acf5ba8 changed package corresponding to RingBuffer.go to ringbuffer from utilities 2017-12-03 02:47:13 +10:30
Saxon1 98cd4ff9ac Removed redundant else, to further abide by go style standards 2017-12-03 02:45:33 +10:30
Saxon1 9b779382eb Removed copy to increase efficiency 2017-12-03 02:42:47 +10:30
Saxon1 d63b5f6751 Removed continuity check and also checked read error rather than whether or not clip is nil. 2017-12-03 02:34:14 +10:30
Saxon Milton 0f028b799c Update revid to incorperate use of RingBuffer 2017-12-02 15:57:10 +10:30
Saxon1 5b802fb26e Fixed removed comment I didn't need 2017-11-24 11:13:24 +10:30
Saxon1 76cba026a1 whoops need to do it again, I don't know if that worked 2017-11-24 11:04:19 +10:30
Saxon1 d3d01090ed Changed times to time objects to clean things up and make things consistent 2017-11-24 11:03:41 +10:30
richardsonjack 7ff09c4b82 Output in kbps 2017-11-24 10:08:29 +10:30
Saxon Milton 2c6d1442af Cleaned up code and removed redundancies. 2017-11-23 08:35:36 +10:30
Saxon1 5f6f34cb25 Modified bitrate calc to hopefully be more efficient 2017-11-22 16:06:51 +10:30
Saxon1 e6e7c2bcc6 Added bitrateCalculator function to run as thread. Now need to debug. 2017-11-22 14:17:34 +10:30
Alan Noble f3c15f622e RTPSequenceNum => rtpSequenceNum 2017-09-21 13:38:57 +09:30
Alan Noble b54068e0a2 Improved error reporting and other changes to make more Go idiomatic. 2017-09-21 13:36:54 +09:30
Alan Noble d0e796f47d Cleaned up test for flags in readWriteVideo. 2017-09-21 10:42:39 +09:30
Alan Noble e3c62afb43 Eliminated some unnecessary buffer copies. 2017-09-21 07:50:22 +09:30
Alan Noble dbfe59432c Refactored to be more Go idiomatic. 2017-09-20 21:27:01 +09:30
Alan Noble c8bfccb310 Initial revision 2017-09-13 14:30:26 +09:30