Commit Graph

375 Commits

Author SHA1 Message Date
Saxon Milton d519f50fe5 Return from Noop lex routine
In the Noop lexer we start a routine that's responsible for output
of the written frames at a consistent rate (to make certain
destinations happy i.e. youtube). We weren't however returning
from this in the case that the lexing function is returned, we'd
therefore then be left with a hanging routine (this would
eventually keep happening until stack overflow if had long enough
runtime for the service; not a big deal for systemd services, but
still crappy). So, now we create a context which is cancelled when
when the lex function returns and can detect this in the output
routine.

Approved-by: Alan Noble
2024-04-07 11:47:31 +00:00
David Sutton a26983c8f3 codec/wav: Add type conversion map for wav encoding type. 2024-01-29 11:52:49 +10:30
David Sutton 578e60823b codec/wav: Implement a wav encoder
A wav encoder will be useful for returning easily playable audio files to users of vidgrind that are not familiar with PCM audio. Currently the encoder only support PCM data, but can be updated with other types. The encoder implements the writer interface.

* codec/wav: Add unit tests for wav encoder

Merged in create-wav-encoder (pull request #529)
Approved-by: Trek Hopton
2023-12-04 00:36:29 +00:00
ausocean-david d1aa224023 Audiofiltering:
Add amplifying capabilities, using Filter.Upper as the factor for amplification
2023-02-10 21:46:21 +10:30
Saxon Nelson-Milton 96078e1091 Don't do anything about cuff chan receive timeout 2023-02-09 10:46:59 +10:30
ausocean-david 70afcdb816 Audiofiltering:
Add amplifying capabilities, using Filter.Upper as the factor for amplification
2023-01-18 14:10:32 +10:30
David Sutton 52a56f3a52 Audiofiltering:
Increase efficiency of convolution algorithm.

Approximately 150x faster. (takes ~4.5s to lowpass filter ~1min of audio)
2022-12-28 16:02:14 +10:30
David Sutton b2d2a41fdc Audiofiltering:
Add amplification filter which uses filter.Upper as factor for amplification
2022-12-28 00:30:30 +10:30
ausocean-david d029038db9 Audiofiltering:
Interface the function with pre-existing data structures. The filters can now be generated into a filter type using a generic Generate function.
This generates a filter off of the specifications within the filter struct. There is a generic Apply function which takes in a buffer of PCM data (defined in pcm.go),
and outputs to a []byte.
2022-12-24 02:28:15 +10:30
Saxon Nelson-Milton f3cf74ce51 cmd/vidforward: add slate image write functionality
This includes adding facilities to handle termination signals
and err handling. Some modifications have been made to the file
input to accomodate the concurrency requirements. The slate
read mechanism is still fairly rudimentary and can only read
from a hardcoded file, but at this stage is for prototyping
purposes.
2022-11-26 13:38:25 +10:30
Saxon Nelson-Milton a4a9ab07f8 cmd/vidforward/main.go: add control API endpoint with PUT and DELETE methods
This change removes usage of netsender to provide remote
configuration of the service and replaces with a basic control
REST API with PUT and DELETE methods. PUT requests add or update
a broadcast, and DELETE removes a broadcast. In addition to these
changes, some modification of the NOOP lexer has been performed
including tuning of the controller.
2022-11-14 20:46:21 +10:30
Saxon Nelson-Milton dddfcc256b vidforward & codecutil & mts & device & revid: improved Noop lexer code using ring buffer structure and improved overall commenting and code 2022-09-21 16:47:58 +09:30
Saxon Nelson-Milton b312774b49 cmd/vidforward & revid & device & codec/codecutil: fixes bugs and improving stream quality 2022-09-14 07:44:35 +00:00
Saxon Nelson-Milton 46e97debd5 cmd/vidforward & revid: initial implementation of vidforwarding software 2022-09-09 11:24:29 +09:30
Saxon Nelson-Milton 5eb5992f15 using latest version of utils and using latest logging package 2022-05-27 15:42:58 +09:30
Russell Stanley b97f1f465f cmd/rv/probe.go improved error handling 2022-03-04 17:09:50 +10:30
Russell Stanley 9a02036628 merge master into turbidity-probe 2022-02-28 14:40:26 +10:30
Russell Stanley cb59034a2e cmd/rv/probe.go improved logging and moved trim function to codec/h264/parse.go 2022-02-23 10:26:47 +10:30
Trek H 78279d4405 alsa: always return errors from ALSA.Read(), handle in Lex() 2022-02-18 10:10:01 +10:30
Russell Stanley dd0653b60c split turbidity probe declaration 2022-02-08 01:21:33 +00:00
Saxon Nelson-Milton 7b00f00e16 added README.md files to top level packages 2021-04-11 11:19:37 +09:30
Trek H 1b13582151 codecutil: commenting 2021-02-22 15:30:00 +10:30
Trek H 778a19f939 codecutil, revid: made codecs represented as strings, updated where used 2021-02-22 15:15:30 +10:30
Trek H 9211ae4338 codecutil, revid: make codec a type and make const strings for metadata keys 2021-02-22 14:16:41 +10:30
Saxon Nelson-Milton 45c019a062 device: add raspistill package housing release and testing implementations 2021-01-20 14:33:47 +10:30
Saxon Nelson-Milton 698ed75dbc codec: removed mjpeg/testdata 2021-01-18 15:59:13 +10:30
Saxon Nelson-Milton af519d61fa codec: renmaed mjpeg package to jpeg and alter terminology throughout av repo to use mjpeg and jpeg terms appropriately. 2021-01-18 15:29:21 +10:30
Saxon Nelson-Milton 16d7a16762 codec/mjpeg/lex & lex_test.go: modified Lex to work with thumbnailed JPEG images and fixed Lex tests. 2021-01-16 16:45:04 +10:30
Saxon Nelson-Milton ca3f6b7620 codec/codecutil/list.go: added JPEG constant to codec consts enum 2021-01-12 15:05:25 +10:30
Trek H 1d67ab65a4 alsa: refactor DataSize function 2020-12-24 10:55:44 +10:30
Trek H 236d2c5f48 pes/codecutils: move SID functionality to pes from codecutils, add PCM and ADPCM encoding options 2020-12-22 12:51:20 +10:30
Trek H 8fdd0169fa helpers: added pcm as SID 2020-12-21 20:55:14 +10:30
Saxon Nelson-Milton 27c90ad852 running go fmt over repos 2020-12-17 21:38:10 +10:30
Saxon Milton 4cf155bbc2 Merged in correct-config-types (pull request #401)
Correct types of fields in revid/config/config.go Config struct
2020-05-02 03:55:13 +00:00
Ella Pietraroia 890f142fb9 Merged in godoc (pull request #387)
Package level comments

Approved-by: Saxon Milton <saxon.milton@gmail.com>
2020-04-23 05:35:23 +00:00
Ella Pietraroia 36dfb05326 formatting changes 2020-04-23 14:49:30 +09:30
Ella Pietraroia 0213c89b1b small formatting changes 2020-04-23 14:42:34 +09:30
Ella Pietraroia 149f95af84 no package level comments in test files 2020-04-23 12:34:11 +09:30
Saxon 031feda565 codec/h265: Lexer -> Extractor 2020-03-28 00:43:35 +10:30
Ella Pietraroia 4b99dac365 codec: mjpeg: pachage level comment 2020-03-12 15:29:41 +10:30
Ella Pietraroia 837b43985a codec: h264: h264dec: editing package comment 2020-03-12 15:16:51 +10:30
Ella Pietraroia 231ad77682 codec: hh264: adding package comment 2020-03-12 15:12:04 +10:30
Scott ac21b7d808 codec: add package comments to codec packages 2020-02-26 14:32:08 +10:30
Saxon Milton 615ec66163 Merged in level-prefix-fuzz (pull request #256)
codec/h264/h264dec/fuzz: added fuzzer test for parseLevelPrefix function

Approved-by: Saxon Milton <saxon.milton@gmail.com>
2020-01-28 23:57:15 +00:00
Saxon fb020df877 codec/h264/h264dec/fuzz/helpers.c: checking if r or br == NULL 2020-01-29 10:26:24 +10:30
Saxon ed626e02ab cmd/rv: did some cleaning and commenting
Modified profile.go file header. Updated binary name in run.sh.
2020-01-27 15:50:24 +10:30
Saxon 7033d62cc6 cmd/rv: created new revid binary that is only netsender client, not CLI as well 2020-01-27 13:55:09 +10:30
Saxon Milton c2329b3a3f Merged in lexers-return-ioeof (pull request #330)
codec: lexers return ioeof

Approved-by: Alan Noble <anoble@gmail.com>
Approved-by: kortschak <dan@kortschak.io>
2020-01-23 03:23:03 +00:00
Saxon 9b8667e56c fixed handling of errors from lex methods 2020-01-22 13:45:01 +10:30
Saxon 78484b5f5b codec/h264/lex.go: fixed handling of errors from ScanUntil 2020-01-22 13:43:08 +10:30