Commit Graph

51 Commits

Author SHA1 Message Date
David Sutton ee6046cab0 alsa.go: Add chunkingRead function to abstract reading from the alsa buffer (#440)
The chunkingRead function allows the record period to not impact on the recording buffer size of the audio. This should allow for less issues related to alsa buffer reading.
2024-05-16 15:53:00 +09:30
David Sutton c8f846f87d alsa: Fix sample rate negotiation (#441)
This change fixes the sample rate negotiation functionality, by making a comparison against the value of the slice and not the index.
2024-02-29 15:20:42 +10:30
Saxon Nelson-Milton fe2f091272 run gofmt 2022-11-06 17:25:28 +10:30
Saxon Nelson-Milton 5eb5992f15 using latest version of utils and using latest logging package 2022-05-27 15:42:58 +09:30
Trek H 563897eb8c alsa: error handling 2022-02-18 10:13:16 +10:30
Trek H 78279d4405 alsa: always return errors from ALSA.Read(), handle in Lex() 2022-02-18 10:10:01 +10:30
Trek H c5c1816607 alsa: close pool buffer on stop 2022-02-14 14:44:35 +10:30
Trek H f9a6bcc9dc alsa: return EOF from alsa.Read so that pauses can be detected and input stopped 2022-02-09 16:38:10 +10:30
Trek H 23e4607cc5 alsa: return n where applicable in alsa.Read 2022-02-09 16:21:02 +10:30
Trek H 1abca8cd7e alsa: removed use of pool buffer chunk, Read closes the chunk for us since it's a fully consuming read 2022-02-09 15:00:04 +10:30
Trek H eeef34e1fb alsa: don't stop recording if there's an unexpected ring buffer error 2022-02-02 17:07:18 +10:30
Trek H a0867331cb alsa: log number of bytes read 2022-02-01 14:13:25 +10:30
Trek H be35600571 alsa: check and handle common errors with pool buffer 2022-01-27 11:50:45 +10:30
Dan Kortschak 5f4bcb61e0 device/alsa: check error 2022-01-13 16:08:02 +10:30
Dan Kortschak baef3c0585 device/alsa,revid: clarify type conditions and remove redundant condition 2022-01-13 16:08:02 +10:30
Dan Kortschak fd7113860b device: fix incorrect uses of MultiError and guard against misuse 2022-01-13 16:08:02 +10:30
Dan Kortschak 7541015730
cmd/audio-netsender,device/alsa,revid: swap out ring buffer for pool buffer
Names of config fields have been left unchanged since they appear to be lexically
coupled to behaviour and so require greater care.
2021-05-17 11:15:38 +09:30
Trek H 778a19f939 codecutil, revid: made codecs represented as strings, updated where used 2021-02-22 15:15:30 +10:30
Trek H 1d67ab65a4 alsa: refactor DataSize function 2020-12-24 10:55:44 +10:30
Trek H 35e602748d alsa: pass codec to ring buffer size calc 2020-12-24 09:57:32 +10:30
Saxon Nelson-Milton 606b784f5e fixed various things particularly use of %w formatting directive in wrong places to satisfy repo testing 2020-12-19 13:43:23 +10:30
Saxon Nelson-Milton 67a0771c32 device/alsa/alsa.go: removed OpenError 2020-12-14 15:56:33 +10:30
Trek H 744a33d6be alsa: improve error handling 2020-09-03 16:44:22 +09:30
Trek H c86e3c4ce9 alsa: improve error checking 2020-08-21 14:34:13 +09:30
Trek H a475b6f67f alsa: try requested channel 2020-08-21 14:13:15 +09:30
Trek H d9393b46b0 alsa: negotiate channels both stereo and mono, also fix error handling 2020-08-19 16:55:35 +09:30
Trek H abbe35d7a8 alsa: improve documentation 2020-08-13 16:23:19 +09:30
Trek H 456b711b28 alsa: test files updated to use Setup instead of Set 2020-08-13 15:51:24 +09:30
Trek H ba08c58af4 alsa: added comment for exported function DataSize 2020-08-13 15:42:28 +09:30
Trek H c394dc9d89 alsa, revid: reverted changes to revid and changed how ALSA implements Device 2020-08-13 15:28:59 +09:30
Trek H 53a55cc477 Merge branch 'master' into audio-order 2020-08-11 20:20:01 +09:30
Trek H adf5ddece1 revid, alsa: reorder audio setup 2020-08-11 20:17:52 +09:30
Trek H 5fe586913f alsa, revid: added correct device configuration and defaulting for audio 2020-08-11 11:43:17 +09: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
Scott c682f49071 device: use fatal instead of skip in tests 2020-01-31 14:02:45 +10:30
Scott 9ddd4be089 device: use constants for test code 2020-01-31 12:22:48 +10:30
Scott 0bd21b9003 device/alsa: implement IsRunning method for alsa 2020-01-30 11:22:24 +10:30
Scott f1d1fe2cad device: add tests for IsRunning
To check that the IsRunning method is working, some tests are needed. These tests shall be skipped when an AVdevice is not connected, such as when testing within Circle-CI.
2020-01-30 11:21:06 +10:30
Scott 9a0e52a8f3 device: add IsRunning method to device interface
This commit adds the IsRunning method to the AVDevice interface. It doesn't implement it yet, that will be for a future commit.
2020-01-29 09:28:44 +10:30
scruzin c49e716a59 Added Name to AVDevice. 2019-11-22 10:55:13 +10:30
Trek H 395e8bf278 alsa: increase ring buffer timeout
Removed validate function.
2019-11-16 23:56:18 +10:30
Trek H 4b4b3cb2cb alsa: increase read timeout 2019-11-16 23:47:05 +10:30
Trek H cd63d0d95a alsa: unexported ringbuffer chunksize
Chunksize can be calculated without needing an ALSA device instance.

Added a DataSize function to pcm package for calculating size of pcm data given relevant attributes.

Removed ChunkSize from config revid config struct.

Changed NewByteLexer to accept an in rather than a pointer.
2019-11-13 19:56:13 +10:30
Trek H d7a8d2bd87 Merge branch 'general-pcm' into unexport-chunksize 2019-11-13 17:15:38 +10:30
Trek H f2c9cc5881 alsa: renamed ALSA.buf to ALSA.pb since there are two buffers
Also elaborated on the difference in the comments.
2019-11-13 17:11:35 +10:30
Trek H 796a3b9a97 pcm: changed term clip to buffer 2019-11-13 16:54:41 +10:30
Saxon dec39a3636 revid: now using AVDevice implementations
Also renamed constructors of devices to reduce stutter e.g. raspivid.NewRaspivid to
raspivid.New
2019-11-13 14:11:29 +10:30
Trek H 5e472ba4c9 pcm: refactored to be general not alsa only
Addition of new structs and helper functions for passing around pcm clips/buffers and their formats so that we don't have to import and rely on yobert/alsa code.

Updated any commands and alsa package to use refactored code.
2019-11-12 21:24:08 +10:30
Alan Noble 7da3778485 Fix license hyperlink in comment. 2019-11-12 05:35:01 +00:00
Alan Noble cdc7755634 Fix license hyperlink in comment. 2019-11-12 05:34:16 +00:00