| Commit message (Collapse) | Author | Age | Files | Lines |
... | |
|
|
|
|
|
|
|
|
|
|
|
|
| |
Fixes issue #1569.
Implement an option in wavfile_sink that allows appending
sound samples at the end of an existing file.
For this, a target WAV file must meet these requirements:
- the file must exist (will not be created if it does not).
- the last chunk in the file must be DATA.
- file params must match the configured ones (i.e. sample_rate, nchan
and bits_per_sample).
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The example test_16bit_1chunk.wav was invalid even if the tests passed.
This file caused errors in ffprobe (from ffmpeg) and wave (from python
standard lib).
This is what changed:
- LIST chunk corrected, according to spec. Previously `ffprobe` complained:
[wav @ 0x5653f92d6dc0] too short LIST tag
- File size corrected. Previously the test assumed that the resulting
headers to be identical, this is now taken into account.
Because of this, python's `wave` did not work. This is added to the test.
Parser is updated to check file size.
- Tests that did not close opened files were corrected.
References:
[1] https://sites.google.com/site/musicgapi/technical-documents/wav-file-format
[2] http://www-mmsp.ece.mcgill.ca/Documents/AudioFormats/WAVE/Docs/riffmci.pdf
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
These 3 new blocks provide the missing glue to move between messages
and variables in the same flowgraph. There are 3 variants here:
1. Monitor a variable and produce a user-specified message (pair)
when the variable changes. Useful bridging standard GUI controls
to message-based blocks.
2. When an inbound message (pair) is received, update a specified
variable.
3. When an inbound message (dict) is received, extract a single
dictionary entry and produce a message pair (useful if you have a
multi-value dictionary but you just want to pull off a single
attribute such as frequency or gain without modifying the upstream
block. This can be paired with (2) if necessary to move from a
dictionary item to a variable.
|
|
|
|
|
|
|
| |
Python has a RuntimeError that's thrown during the pmt to_python function.
Instead of throwing this error, SWIG has been updated to throw a TypeError.
This allows us to keep the same behavior whereby we iterate over PMT types
until the proper conversion is found
|
| |
|
| |
|
| |
|
| |
|
|
|
|
|
|
|
|
| |
blks2_selector was deprecated and finally removed
This block implements the same functionality but in a way more similar
to the Copy block
fixes #2460
|
| |
|
| |
|
|
|
|
|
|
| |
This affects all Python-based unit tests which use the Python random
module. If they do, this change adds random.seed(0) to every setUp()
call, so that all QA runs are reproducible.
|
| |
|
|
|
|
|
|
|
|
|
| |
Provide one unit test for the source and sink with the raw python
socket module.
Fix the tests on IPv4 only to avoid mismatched connections on IPv4 &
IPv6.
Fixes #2210.
|
|
|
|
|
|
| |
Running unit tests the sender socket could be created before the receiver socket
was ready. Try to avoid that by adding a sleep in between the receiver socket
creation and the sender socket creation.
|
| |
|
| |
|
| |
|
|\ |
|
| | |
|
| | |
|
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Formerly to_string() returned a byte string in Python2 and a
unicode string in Python3.
To get the same behaviour for Python2 and Python3 the Unicode
String in Python3 is converted to bytes. Which is a desired behaviour
for to_string() since the carried payload of messages includes
invalid unicode characters.
|
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Replace with encode('utf-8') mapping the surrogate mapped characters back to
their original byte values. As per documentation
http://www.swig.org/Doc3.0/Python.html 36.12.4
Add wrappercode to the swig definition to run python encode for Python3 and
return raw bytes for Python2.
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
For some reason, the block accepts serialized PMT from in-GNU Radio,
then unserializes it, then serializes it back.
All possible uses probably will prefer just passing the PMT itself.
Changing the API inherently fixes the Py3-migration related std::string
handling ambiguity.
|
| |
| |
| |
| | |
misuse
|
| |
| |
| |
| |
| |
| | |
- Fixed various linter issues
- Fixed file not being opened as binary
- Fixed non-Py3k compatible use of range()
|
| |
| |
| |
| | |
open() call was not specifying 'rb' (binary file).
|
| |\
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Manual merge conflict resolution has been applied to following
conflicts:
* Typos:
* gnuradio-runtime/python/gnuradio/ctrlport/GrDataPlotter.py
* gr-blocks/python/blocks/qa_wavfile.py
* gr-filter/examples/gr_filtdes_api.py
* grc/blocks/parameter.xml
* gr-uhd/python/uhd/__init__.py
* ValueError -> RuntimeError:
* gr-blocks/python/blocks/qa_hier_block2.py
* relative Imports & other Py3k:
* gr-digital/python/digital/psk_constellations.py
* gr-digital/python/digital/qam_constellations.py
* gr-digital/python/digital/test_soft_decisions.py
* gr-digital/python/digital/gfsk.py
* SequenceCompleter:
* gr-utils/python/modtool/modtool_add.py
* gr-utils/python/modtool/modtool_rename.py
* gr-utils/python/modtool/modtool_rm.py
* Updated API on next:
* gr-blocks/grc/blocks_file_source.xml
* gr-blocks/python/blocks/qa_file_source_sink.py
* gr-qtgui/grc/qtgui_time_sink_x.xml
* GRC Py3k Updates:
* grc/core/Block.py
* grc/core/Constants.py
* grc/core/Platform.py
* grc/core/utils/odict.py
* grc/gui/Actions.py
* grc/gui/Block.py
* grc/gui/Executor.py
* grc/gui/Port.py
|
| | | |
|
| | |\ |
|
| | |\ \ |
|
| | |\ \ \
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | | |
Conflicts:
grc/core/Param.py
grc/gui/Application.py
grc/gui/NotebookPage.py
|
| | |\ \ \ \ |
|
| | |\ \ \ \ \
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | | |
Conflicts:
gr-uhd/apps/uhd_app.py
|
| | |\ \ \ \ \ \
| | | | | | | | |
| | | | | | | | |
| | | | | | | | |
| | | | | | | | | |
Conflicts:
gnuradio-runtime/python/gnuradio/gr/tag_utils.py
|
| | |\ \ \ \ \ \ \ |
|
| | |\ \ \ \ \ \ \ \ |
|
| | |\ \ \ \ \ \ \ \ \ |
|
| | | | | | | | | | | | |
|
| | | | | | | | | | | |
| | | | | | | | | | | |
| | | | | | | | | | | |
| | | | | | | | | | | |
| | | | | | | | | | | |
| | | | | | | | | | | |
| | | | | | | | | | | | |
- Adds unit tests, and splits existing unit tests into different files:
qa_file_source.py - tests file_source_f
qa_file_sink.py - tests file_sink_f
qa_file_descriptor_source_sink.py - tests file_descriptor_*_f
|
| | | | | | | | | | | |
| | | | | | | | | | | |
| | | | | | | | | | | |
| | | | | | | | | | | |
| | | | | | | | | | | |
| | | | | | | | | | | | |
Test was opening zero-length file and depending on it to be populated
later. With addition of offset/length fields, file_source will be required
to check file size on open.
|
| | | | | | | | | | | | |
|
| |\ \ \ \ \ \ \ \ \ \ \
| | |_|_|_|_|_|_|_|_|_|/
| |/| | | | | | | | | | |
|
| |\ \ \ \ \ \ \ \ \ \ \
| | |_|_|_|_|_|_|_|_|_|/
| |/| | | | | | | | | |
| | | | | | | | | | | |
| | | | | | | | | | | |
| | | | | | | | | | | |
| | | | | | | | | | | | |
Conflicts:
gr-digital/examples/CMakeLists.txt
gr-uhd/lib/usrp_source_impl.cc
gr-uhd/lib/usrp_source_impl.h
|
| |\ \ \ \ \ \ \ \ \ \ \
| | |_|_|_|_|_|_|_|_|_|/
| |/| | | | | | | | | | |
|
| |\ \ \ \ \ \ \ \ \ \ \
| | |_|_|_|_|_|_|_|_|_|/
| |/| | | | | | | | | | |
|
| |\ \ \ \ \ \ \ \ \ \ \
| | |_|_|_|_|_|_|_|_|_|/
| |/| | | | | | | | | | |
|
| |\ \ \ \ \ \ \ \ \ \ \
| | |_|_|_|_|_|_|_|_|_|/
| |/| | | | | | | | | | |
|
| |\ \ \ \ \ \ \ \ \ \ \
| | |_|_|_|_|_|_|_|_|_|/
| |/| | | | | | | | | | |
|
| |\ \ \ \ \ \ \ \ \ \ \
| | |_|_|_|_|_|_|_|_|_|/
| |/| | | | | | | | | | |
|