summaryrefslogtreecommitdiff
path: root/gr-blocks/python/blocks/bindings/wavfile_python.cc
diff options
context:
space:
mode:
Diffstat (limited to 'gr-blocks/python/blocks/bindings/wavfile_python.cc')
-rw-r--r--gr-blocks/python/blocks/bindings/wavfile_python.cc62
1 files changed, 22 insertions, 40 deletions
diff --git a/gr-blocks/python/blocks/bindings/wavfile_python.cc b/gr-blocks/python/blocks/bindings/wavfile_python.cc
index 950289d156..ff84bab7eb 100644
--- a/gr-blocks/python/blocks/bindings/wavfile_python.cc
+++ b/gr-blocks/python/blocks/bindings/wavfile_python.cc
@@ -14,7 +14,7 @@
/* BINDTOOL_GEN_AUTOMATIC(0) */
/* BINDTOOL_USE_PYGCCXML(0) */
/* BINDTOOL_HEADER_FILE(wavfile.h) */
-/* BINDTOOL_HEADER_FILE_HASH(85a13746fd109dbc7b94ba38aaf61e4c) */
+/* BINDTOOL_HEADER_FILE_HASH(69b513925578f5e61e5c98a083388fae) */
/***********************************************************************************/
#include <pybind11/complex.h>
@@ -29,49 +29,31 @@ namespace py = pybind11;
void bind_wavfile(py::module& m)
{
- using wav_header_info = gr::blocks::wav_header_info;
+ using wav_header_info = ::gr::blocks::wav_header_info;
py::class_<wav_header_info, std::shared_ptr<wav_header_info>>(m, "wav_header_info")
.def_readwrite("sample_rate", &wav_header_info::sample_rate)
.def_readwrite("nchans", &wav_header_info::nchans)
.def_readwrite("bytes_per_sample", &wav_header_info::bytes_per_sample)
- .def_readwrite("first_sample_pos", &wav_header_info::first_sample_pos)
.def_readwrite("samples_per_chan", &wav_header_info::samples_per_chan)
- .def_readwrite("data_chunk_size", &wav_header_info::data_chunk_size);
-
- m.def("wavheader_parse",
- &::gr::blocks::wavheader_parse,
- py::arg("fp"),
- py::arg("info"),
- D(wavheader_parse));
-
- m.def("wav_read_sample",
- &::gr::blocks::wav_read_sample,
- py::arg("fp"),
- py::arg("bytes_per_sample"),
- D(wav_read_sample));
-
-
- m.def("wavheader_write",
- &::gr::blocks::wavheader_write,
- py::arg("fp"),
- py::arg("sample_rate"),
- py::arg("nchans"),
- py::arg("bytes_per_sample"),
- D(wavheader_write));
-
-
- m.def("wav_write_sample",
- &::gr::blocks::wav_write_sample,
- py::arg("fp"),
- py::arg("sample"),
- py::arg("bytes_per_sample"),
- D(wav_write_sample));
-
-
- m.def("wavheader_complete",
- &::gr::blocks::wavheader_complete,
- py::arg("fp"),
- py::arg("byte_count"),
- D(wavheader_complete));
+ .def_readwrite("format", &wav_header_info::format)
+ .def_readwrite("subformat", &wav_header_info::subformat);
+
+ py::enum_<::gr::blocks::wavfile_format_t>(m, "wavfile_format_t")
+ .value("FORMAT_WAV", ::gr::blocks::FORMAT_WAV) // 65536
+ .value("FORMAT_FLAC", ::gr::blocks::FORMAT_FLAC) // 1507328
+ .value("FORMAT_OGG", ::gr::blocks::FORMAT_OGG) // 2097152
+ .value("FORMAT_RF64", ::gr::blocks::FORMAT_RF64) // 2228224
+ .export_values();
+
+ py::enum_<::gr::blocks::wavfile_subformat_t>(m, "wavfile_subformat_t")
+ .value("FORMAT_PCM_S8", ::gr::blocks::FORMAT_PCM_S8) // 1
+ .value("FORMAT_PCM_16", ::gr::blocks::FORMAT_PCM_16) // 2
+ .value("FORMAT_PCM_24", ::gr::blocks::FORMAT_PCM_24) // 3
+ .value("FORMAT_PCM_32", ::gr::blocks::FORMAT_PCM_32) // 4
+ .value("FORMAT_PCM_U8", ::gr::blocks::FORMAT_PCM_U8) // 5
+ .value("FORMAT_FLOAT", ::gr::blocks::FORMAT_FLOAT) // 6
+ .value("FORMAT_DOUBLE", ::gr::blocks::FORMAT_DOUBLE) // 7
+ .value("FORMAT_VORBIS", ::gr::blocks::FORMAT_VORBIS) // 96
+ .export_values();
}