Skip to content
Snippets Groups Projects
Commit 95637f0f authored by Philemon Prevot's avatar Philemon Prevot
Browse files

Update README to take qhb_version in account

parent 07405b99
No related branches found
No related tags found
1 merge request!3Add packet timestamp file logging to QHBv3 parser and correct wrong mag data bytes reading
/build/ /build/
/.vscode
\ No newline at end of file
...@@ -6,6 +6,7 @@ samples from the JASON Qualilife sound card developed by SMIoT. ...@@ -6,6 +6,7 @@ samples from the JASON Qualilife sound card developed by SMIoT.
Prerequisites Prerequisites
------------- -------------
To build and run the application, you will need: To build and run the application, you will need:
* a C++ compiler supporting C++11 (e.g., g++ 4.8.1 and above) * a C++ compiler supporting C++11 (e.g., g++ 4.8.1 and above)
...@@ -13,16 +14,20 @@ To build and run the application, you will need: ...@@ -13,16 +14,20 @@ To build and run the application, you will need:
* CMake 3.1 or above (optional) * CMake 3.1 or above (optional)
On a debian-based Linux system, these can be installed with: On a debian-based Linux system, these can be installed with:
``` ```
sudo apt install g++ libusb-1.0-0-dev cmake sudo apt install g++ libusb-1.0-0-dev cmake
``` ```
Compilation / Installation Compilation / Installation
-------------------------- --------------------------
Clone the repository somewhere or download and extract it. Clone the repository somewhere or download and extract it.
### Using CMake ### Using CMake
If cmake is available, create a build directory, compile, and install: If cmake is available, create a build directory, compile, and install:
``` ```
mkdir build mkdir build
cd build cd build
...@@ -30,27 +35,32 @@ cmake .. -DCMAKE_BUILD_TYPE=Release ...@@ -30,27 +35,32 @@ cmake .. -DCMAKE_BUILD_TYPE=Release
make make
sudo make install/strip sudo make install/strip
``` ```
This will install globally; pass `-DCMAKE_INSTALL_PREFIX=/some/directory` to This will install globally; pass `-DCMAKE_INSTALL_PREFIX=/some/directory` to
the `cmake` call to install to `/some/directory` instead. It is also possible the `cmake` call to install to `/some/directory` instead. It is also possible
to run the compiled application from the `src` subdirectory of the `build` to run the compiled application from the `src` subdirectory of the `build`
directory, skipping installation altogether. directory, skipping installation altogether.
### Without CMake ### Without CMake
If cmake is not available, you can still try to compile it manually. Just make If cmake is not available, you can still try to compile it manually. Just make
sure to link against `libusb`. For `g++`, an example `Makefile` is included in sure to link against `libusb`. For `g++`, an example `Makefile` is included in
the `src` directory, so the following may work: the `src` directory, so the following may work:
``` ```
cd src cd src
make make
``` ```
### Under Windows ### Under Windows
As for any other platform, there are multiple options on Windows. The following As for any other platform, there are multiple options on Windows. The following
has been tested successfully: Install CMake using the MSI installer from has been tested successfully: Install CMake using the MSI installer from
https://cmake.org, install the Microsoft Visual Studio Build Tools from https://cmake.org, install the Microsoft Visual Studio Build Tools from
https://aka.ms/buildtools (specifically, the C++ compiler), download and extract https://aka.ms/buildtools (specifically, the C++ compiler), download and extract
the precompiled Windows binaries from https://libusb.info. Open the x64 Native the precompiled Windows binaries from https://libusb.info. Open the x64 Native
Tools Command Prompt and navigate to the source directory. Run the following: Tools Command Prompt and navigate to the source directory. Run the following:
``` ```
mkdir build mkdir build
mkdir install mkdir install
...@@ -59,21 +69,24 @@ cmake .. -DCMAKE_BUILD_TYPE=Release -DLIBUSB_INCLUDE_DIR=<libusb_dir>/include -D ...@@ -59,21 +69,24 @@ cmake .. -DCMAKE_BUILD_TYPE=Release -DLIBUSB_INCLUDE_DIR=<libusb_dir>/include -D
nmake nmake
nmake install nmake install
``` ```
Replace `<libusb_dir>` with the path you extracted libusb to. If compilation and Replace `<libusb_dir>` with the path you extracted libusb to. If compilation and
installation succeeded, you will find a `jasonrec.exe` in `install/bin`. Copy installation succeeded, you will find a `jasonrec.exe` in `install/bin`. Copy
the `MS64/dll/libusb-1.0.dll` file from the libusb directory into `install/bin`. the `MS64/dll/libusb-1.0.dll` file from the libusb directory into `install/bin`.
You can now run `jasonrec.exe` from a command prompt, or by creating a shortcut You can now run `jasonrec.exe` from a command prompt, or by creating a shortcut
to it that includes suitable command line options. to it that includes suitable command line options.
Usage Usage
----- -----
Running `jasonrec` without any arguments (or with any unsupported number of Running `jasonrec` without any arguments (or with any unsupported number of
arguments, in fact) will display information on its usage: arguments, in fact) will display information on its usage:
``` ```
SMIoT JASON Qualilife sound recorder v1.3 SMIoT JASON Qualilife sound recorder v1.3
Usage:jasonrec channels rate filename [--help, -h] [--chunk_len, -c CHUNK_LEN] [--total_len, -t TOTAL_LEN] [--device, -d DEVICE] [--bit_depth, -b BIT_DEPTH] [--imu, -i IMU] [--filter, -f FILTER] [--verbose, -v] Usage:jasonrec qhb_version channels rate filename [--help, -h] [--chunk_len, -c CHUNK_LEN] [--total_len, -t TOTAL_LEN] [--device, -d DEVICE] [--bit_depth, -b BIT_DEPTH] [--imu, -i IMU] [--filter, -f FILTER] [--verbose, -v]
Positional arguments: Positional arguments:
QHB_VERSION: version of the qhb card used (currently supports version 2 to 3 included)
CHANNELS: number of channels to record (1 to 5) CHANNELS: number of channels to record (1 to 5)
RATE: sample rate in Hz to record at (integral number) RATE: sample rate in Hz to record at (integral number)
FILENAME: output file name. should include strftime() format specifiers FILENAME: output file name. should include strftime() format specifiers
...@@ -93,19 +106,24 @@ Optional arguments: ...@@ -93,19 +106,24 @@ Optional arguments:
``` ```
As an example, to record a single 30-minute file of 2 channels at 16 kHz, run: As an example, to record a single 30-minute file of 2 channels at 16 kHz, run:
``` ```
jasonrec 2 16000 recording.wav -t 1800 jasonrec 2 16000 recording.wav -t 1800
``` ```
To record 4 channels at 128 kHz sample rate in 5-minute chunks with filenames To record 4 channels at 128 kHz sample rate in 5-minute chunks with filenames
based on time stamps, without stopping, run: based on time stamps, without stopping, run:
``` ```
jasonrec 4 128000 %Y-%m-%d_%H-%M-%S.wav -c 300 jasonrec 4 128000 %Y-%m-%d_%H-%M-%S.wav -c 300
``` ```
To record the same 4 channels at 128 kHz sample rate in 5-minute chunks with filenames To record the same 4 channels at 128 kHz sample rate in 5-minute chunks with filenames
based on time stamps, without stopping, but with the saving of the imu data run: based on time stamps, without stopping, but with the saving of the imu data run:
``` ```
jasonrec 4 128000 %Y-%m-%d_%H-%M-%S.wav -c 300 -i %Y-%m-%d_%H-%M-%S.csv jasonrec 4 128000 %Y-%m-%d_%H-%M-%S.wav -c 300 -i %Y-%m-%d_%H-%M-%S.csv
``` ```
File names may also include directory names based on time stamps, but the File names may also include directory names based on time stamps, but the
directories have to be created in advance. directories have to be created in advance.
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment