GNU Radio C++ API Reference
gcd20ee2
The Free & Open Software Radio Ecosystem
Loading...
Searching...
No Matches
wavfile.h
Go to the documentation of this file.
1
/* -*- c++ -*- */
2
/*
3
* Copyright 2008,2013 Free Software Foundation, Inc.
4
*
5
* This file is part of GNU Radio
6
*
7
* SPDX-License-Identifier: GPL-3.0-or-later
8
*
9
*/
10
11
// This file stores all the RIFF file type knowledge for the wavfile_*
12
// gnuradio/blocks.
13
14
#ifndef _GR_WAVFILE_H_
15
#define _GR_WAVFILE_H_
16
17
namespace
gr
{
18
namespace
blocks
{
19
20
//! WAV file header information.
21
struct
wav_header_info
{
22
23
//! sample rate [S/s]
24
int
sample_rate
;
25
26
//! Number of channels
27
int
nchans
;
28
29
//! Bytes per sample
30
int
bytes_per_sample
;
31
32
//! Number of samples per channel
33
long
long
samples_per_chan
;
34
35
//! sndfile format
36
int
format
;
37
38
//! sndfile format
39
int
subformat
;
40
};
41
42
enum
wavfile_format_t
{
43
FORMAT_WAV
= 0x010000,
44
FORMAT_FLAC
= 0x170000,
45
FORMAT_OGG
= 0x200000,
46
FORMAT_RF64
= 0x220000,
47
};
48
49
enum
wavfile_subformat_t
{
50
FORMAT_PCM_S8
= 1,
51
FORMAT_PCM_16
,
52
FORMAT_PCM_24
,
53
FORMAT_PCM_32
,
54
FORMAT_PCM_U8
,
55
FORMAT_FLOAT
,
56
FORMAT_DOUBLE
,
57
FORMAT_VORBIS
= 0x0060,
58
FORMAT_OPUS
= 0x0064,
59
};
60
61
}
/* namespace blocks */
62
}
/* namespace gr */
63
64
typedef
gr::blocks::wavfile_format_t
wavfile_format_t
;
65
typedef
gr::blocks::wavfile_subformat_t
wavfile_subformat_t
;
66
67
#endif
/* _GR_WAVFILE_H_ */
gr::blocks
Definition
abs_blk.h:20
gr::blocks::wavfile_subformat_t
wavfile_subformat_t
Definition
wavfile.h:49
gr::blocks::FORMAT_PCM_24
@ FORMAT_PCM_24
Definition
wavfile.h:52
gr::blocks::FORMAT_PCM_16
@ FORMAT_PCM_16
Definition
wavfile.h:51
gr::blocks::FORMAT_PCM_U8
@ FORMAT_PCM_U8
Definition
wavfile.h:54
gr::blocks::FORMAT_OPUS
@ FORMAT_OPUS
Definition
wavfile.h:58
gr::blocks::FORMAT_PCM_S8
@ FORMAT_PCM_S8
Definition
wavfile.h:50
gr::blocks::FORMAT_VORBIS
@ FORMAT_VORBIS
Definition
wavfile.h:57
gr::blocks::FORMAT_PCM_32
@ FORMAT_PCM_32
Definition
wavfile.h:53
gr::blocks::FORMAT_DOUBLE
@ FORMAT_DOUBLE
Definition
wavfile.h:56
gr::blocks::FORMAT_FLOAT
@ FORMAT_FLOAT
Definition
wavfile.h:55
gr::blocks::wavfile_format_t
wavfile_format_t
Definition
wavfile.h:42
gr::blocks::FORMAT_RF64
@ FORMAT_RF64
Definition
wavfile.h:46
gr::blocks::FORMAT_OGG
@ FORMAT_OGG
Definition
wavfile.h:45
gr::blocks::FORMAT_FLAC
@ FORMAT_FLAC
Definition
wavfile.h:44
gr::blocks::FORMAT_WAV
@ FORMAT_WAV
Definition
wavfile.h:43
gr
GNU Radio logging wrapper.
Definition
basic_block.h:29
gr::blocks::wav_header_info
WAV file header information.
Definition
wavfile.h:21
gr::blocks::wav_header_info::nchans
int nchans
Number of channels.
Definition
wavfile.h:27
gr::blocks::wav_header_info::samples_per_chan
long long samples_per_chan
Number of samples per channel.
Definition
wavfile.h:33
gr::blocks::wav_header_info::bytes_per_sample
int bytes_per_sample
Bytes per sample.
Definition
wavfile.h:30
gr::blocks::wav_header_info::sample_rate
int sample_rate
sample rate [S/s]
Definition
wavfile.h:24
gr::blocks::wav_header_info::format
int format
sndfile format
Definition
wavfile.h:36
gr::blocks::wav_header_info::subformat
int subformat
sndfile format
Definition
wavfile.h:39
wavfile_format_t
gr::blocks::wavfile_format_t wavfile_format_t
Definition
wavfile.h:64
wavfile_subformat_t
gr::blocks::wavfile_subformat_t wavfile_subformat_t
Definition
wavfile.h:65
gr-blocks
include
gnuradio
blocks
wavfile.h
Generated by
1.16.1