1
0
mirror of https://github.com/f4exb/sdrangel.git synced 2024-11-18 14:21:49 -05:00
sdrangel/plugins/samplesink/filesink
2017-05-05 10:40:45 +02:00
..
CMakeLists.txt
filesink.pro
filesinkgui.cpp File Sink: implemented arbitrary sample rate selection 2017-04-06 19:19:32 +02:00
filesinkgui.h File Sink: implemented arbitrary sample rate selection 2017-04-06 19:19:32 +02:00
filesinkgui.ui File sink plugin: ensure minimum width 2017-04-09 20:29:24 +02:00
filesinkoutput.cpp Refactoring: removed device parameter from all start() methods in sample sink plugins 2017-04-14 03:44:49 +02:00
filesinkoutput.h Refactoring: removed device parameter from all start() methods in sample sink plugins 2017-04-14 03:44:49 +02:00
filesinkplugin.cpp Sample sink plugins: removed useless init pure virtual method 2017-04-12 23:26:40 +02:00
filesinkplugin.h Tx support: BladeRF output plugin: compiles 2017-01-02 10:39:21 +01:00
filesinksettings.cpp File Sink: implemented arbitrary sample rate selection 2017-04-06 19:19:32 +02:00
filesinksettings.h File Sink: implemented arbitrary sample rate selection 2017-04-06 19:19:32 +02:00
filesinkthread.cpp Code warnings in Eclipse cleanup 2017-05-05 10:40:45 +02:00
filesinkthread.h Tx support: implemented final interpolation stage in FileSink plugin 2017-01-02 03:14:46 +01:00
readme.md Continuous sample rate setting: updated related plugins documentation 2017-04-09 20:30:01 +02:00

File sink plugin

Introduction

This output sample sink plugin sends its samples to file in the SDRangel .sdriq format.

The format is S16LE I/Q samples. Thus there are 4 bytes per sample. I and Q values are 16 bit signed integers. The file starts with a context header containing information about center frequency, sample rate and timestamp of the start of the recording. This header has a length which is a multiple of a sample size (normally 24 bytes thus 6 samples). Thus this file can be used as a raw I/Q file with S16LE samples tolerating a glitch at the start corresponding to the 6 "random" samples. For example in GNURadio you can simply specify your file source format as short complex.

You can also zap the 24 bytes header with this Linux command: tail -c +25 myfile.sdriq > myfile.raw

To convert in another format you may use the sox utility. For example to convert to 32 bit (float) complex samples do: sox -r 48k b 16 e signed-integer -c 2 myfile.raw -e float -c 2 myfilec.raw

Note that you have to specify the sampling rate and use .raw for the file extensions.

Build

The plugin is always built.

Interface

File sink plugin GUI

1: Start/Stop

Device start / stop button.

  • Blue triangle icon: device is ready and can be started
  • Red square icon: device is running and can be stopped
  • Magenta (or pink) square icon: an error occured

2: File stream sample rate

This is the file stream sample rate in kS/s after interpolation (4) from the baseband stream. Thus this is the sample rate (7) multiplied by the interpolation factor (6).

3: Frequency

This is the center frequency in kHz that will be put in the file header.

4: Output file selection

Use this file dialog to specify the output file.

5: File name

This is the file path of the output file.

6: Interpolation factor

The baseband stream is interpolated by this value before being written to file. It can vary in powers of two from 1 (no interpolation) to 64.

7: Baseband sample rate

This is the baseband sample rate before interpolation in S/s.

Use the wheels to adjust the sample rate. Left click on a digit sets the cursor position at this digit. Right click on a digit sets all digits on the right to zero. This effectively floors value at the digit position.

8: Time counter

This is the recording time count in HH:MM:SS.SSS