VS1005 HiRes Recorder

Discussion about writing software for VS1005 and the VSOS Operating System. Also posts about VS1005-related hardware design and device drivers should be posted here.
Post Reply
User avatar
Henrik
VLSI Staff
Posts: 1095
Joined: Tue 2010-06-22 14:10

VS1005 HiRes Recorder

Post by Henrik » Fri 2018-01-19 12:19

Hello!

During the last few years, from time to time there have been people asking us whether we could record high-quality PCM to SD cards. Our answer has always been "Unfortunately not, because modern SD cards introduce occasional delays up to one second, so we would need buffer memory to implement that". Today, this changes.

It is with extraordinay pleasure that I present you with the VS1005 HiRes Recorder application. Features of the application are:
  • Records up to 96 kHz 24-bit stereo PCM to SD Card
  • Maximum supported size of SD card 64 GB (will be expanded later) EDIT 180201: 256 GB successfully tested
  • Uses VS23S040 as a 4-Mbit audio buffer
  • Graphical user interface
  • Uses stdaudioin so can be configured to use either VS1005's own ADCs or external ADC
  • Dynamic range 98 dB(A) with VS1005's own ADC
  • For longer recordings, can split audio to multiple 2 GB files with zero sample loss, overcoming FAT32 file size limitations
  • Recording time on 64 GB card from over 30 hours (96k/24b) to over 92 hours (48k/16b)
  • Automatic file system recovery if power is lost while recording
The HiRes Recorder application can run on two VS1005 boards:
  • VS1005 Developer Board + VS1005 Dev. Board Extension 1: http://www.vlsi.fi/en/support/evaluatio ... sion1.html
    • Intended for stand-alone operation.
    • Includes rotary controller and LCD interface.
    • Brand new: Released today!
  • VS1005 BreakOut Board v2.0
    • Intended as a slave to a host microcontroller.
    • Includes UART user interface.
    • Will be released later in Q1/2018.
On the Ext1 board, VS1005 HiRes Recorder several of its features: 1.77" LCD, rotary controller, and VS23S040 memory for buffering. The buffer memory is required because modern, large capacity SD cards sometimes pause up to 1 second when they are being written to. The battery backed-up memory of VS1005 is used for bookkeeping while recording, and if the unit loses main power during recording (battery drain, dropping the device, etc), the file system will automatically be restored at next restart, and only up to a few seconds of the recording will be lost.

Attached to this post is v0.30 of the HiRes recorder, as well as its documentation for both the Ext1 and BOB20 boards. You can quickly change #define statements to compile a version for either of the boards.

Have fun!

Kind regards,
- Henrik
Attachments
HiResRec_Ext1_v030.pdf
HiRes Recorder documentation for VS1005 DevBoard Ext1
(434.88 KiB) Downloaded 39 times
HiResRec_Bob2_v030.pdf
HiRes Recorder documentation for BOB 2.0
(334.69 KiB) Downloaded 52 times
HiResRec030.zip
VSIDE Solution of the HiRes Recorder
(56.53 KiB) Downloaded 35 times
Good signatures never die. They just fade away.

User avatar
Henrik
VLSI Staff
Posts: 1095
Joined: Tue 2010-06-22 14:10

Re: VS1005 HiRes Recorder v0.31

Post by Henrik » Mon 2018-01-22 15:27

Hello!

Here is a new v0.31 of the HiRes Recorder. It now can gracefully handle situations where an SD card is insterted that contains an unknown file system, like exFAT. In such a case, the HiRes Recorder asks whether to format the card to FAT32. This new version requires VSOS 3.52 or higher to work.

Kind regards,
- Henrik
Attachments
HiResRec031.zip
VSIDE Solution of the HiRes Recorder
(64.74 KiB) Downloaded 30 times
HiResRec_Ext1_v031.pdf
HiRes Recorder documentation for VS1005 DevBoard Ext1
(435.16 KiB) Downloaded 33 times
HiResRec_Bob2_v031.pdf
HiRes Recorder documentation for BOB 2.0
(334.99 KiB) Downloaded 31 times
Good signatures never die. They just fade away.

User avatar
Henrik
VLSI Staff
Posts: 1095
Joined: Tue 2010-06-22 14:10

Re: VS1005 HiRes Recorder

Post by Henrik » Wed 2018-01-24 11:53

Hello!

The documentation for the HiRes Recorder v0.31 says that card sizes up to 64 GB are supported. However, there is actually no intentionally set limit, and I have today successfully tested the recorder with a 128 GB card. Note, however, that for support of cards larger than 32 GB to work you need VSOS 3.52, the version of Format.dl3 that is included in the VSOS 3.52 Root and Libraries package, and HiRes Recorder v0.31.

Kind regards,
- Henrik
Good signatures never die. They just fade away.

User avatar
Henrik
VLSI Staff
Posts: 1095
Joined: Tue 2010-06-22 14:10

Re: VS1005 HiRes Recorder v0.32

Post by Henrik » Wed 2018-01-31 13:05

Hello!

Here is a new version 0.32 of the HiRes Recorder. The main new features are:
  • Added new section to the documentation, called Features.
  • Tested SD cards up to 256 GB (was up to 64 GB).
  • Handles better when an SD card is removed and inserted.
  • Still compatible with VSOS 3.52, but finalizing recordings is more than an order of magnitude faster when used under VSOS 3.53. Example: Finalizing 17 audio files with a total size of 34.3 GB (16 hours and 34 minutes of 24-bit 96 kHz recording) takes 89 seconds under VSOS 3.52, but only 4 seconds under VSOS 3.53.
Have fun!

Kind regards,
- Henrik
Attachments
HiResRec032.zip
VSIDE Solution of the HiRes Recorder
(64.95 KiB) Downloaded 30 times
HiResRec_Ext1_v032.pdf
HiRes Recorder documentation for VS1005 DevBoard Ext1
(441.7 KiB) Downloaded 28 times
HiResRec_Bob2_v032.pdf
HiRes Recorder documentation for BOB 2.0 (board not released yet)
(341.47 KiB) Downloaded 24 times
Good signatures never die. They just fade away.

cruedag
User
Posts: 10
Joined: Mon 2017-03-20 13:58

Re: VS1005 HiRes Recorder

Post by cruedag » Mon 2018-02-05 17:50

These are great news for us, thanks a lot for your work, that's a long awaited feature.

I have a question regardign ogg vorbis quality encoding, and don't know if it is better to create a new thread on that issue or not.

I've recently upgrade the VSOS kernel to v3.53 and have found a relevant change in the way that maximum quality ogg vorbis (10 out ot 10) recorded at 48kHz are now stored: now I get a compressed file where an internal 20 KHz cutoff frequency seems to be applied to the recording; the same code gave me up to 24kHz signals (no internal cutoff frequency, antialiasing or whatever you called it) with previous VSOS versions.

Is there any new directive in the libencvorb dll to disable that internal filtering, or is there anyway to recover that feature?

User avatar
Henrik
VLSI Staff
Posts: 1095
Joined: Tue 2010-06-22 14:10

Re: VS1005 HiRes Recorder

Post by Henrik » Wed 2018-02-07 13:08

Hello!
cruedag wrote:
Mon 2018-02-05 17:50
These are great news for us, thanks a lot for your work, that's a long awaited feature.
Yes, I'm pretty excited myself over this new recorder because it now allows for us to store uncompressed audio with zero compromises with audio quality.
I have a question regardign ogg vorbis quality encoding, and don't know if it is better to create a new thread on that issue or not.
Actually, it would be better handled elsewhere, so I've created a new thread so as not to clutter this one. You can find my answers here:
viewtopic.php?f=13&t=2219

Kind regards,
- Henrik
Good signatures never die. They just fade away.

User avatar
Henrik
VLSI Staff
Posts: 1095
Joined: Tue 2010-06-22 14:10

Re: VS1005 HiRes Recorder v0.40

Post by Henrik » Thu 2018-02-08 11:22

Hello!

Here is version 0.40 of the HiRes Recorder. This version has some support for Broadcast Wave Format file linking. It should help in making BWF aware programs recognize and link audio strams that have been split into multiple files.

Kind regards,
- Henrik
Attachments
HiResRec040.zip
VSIDE Solution of the HiRes Recorder
(69.74 KiB) Downloaded 28 times
HiResRec_Ext1_v040.pdf
HiRes Recorder documentation for VS1005 DevBoard Ext1
(449.82 KiB) Downloaded 26 times
HiResRec_Bob2_v040.pdf
HiRes Recorder documentation for BOB 2.0 (board not released yet)
(349.26 KiB) Downloaded 29 times
Good signatures never die. They just fade away.

Post Reply