I've started tinkering with the pieces of freedv, and I've found two
problems: The "Nc" number of channels parameter in fdmdv_demod does
not appear to be optional as shown on two rowetel web pages, and
fdmdv_demod is producing NUL bytes for output.
----- These commands appear to work:
$ cd ~/freedv-auto
$ svn info freetel-code | grep Revision
Revision: 1691
$ c2enc 1400 freetel-code/codec2/raw/morig.raw - | c2dec 1400 - - |
play -t raw -r 8000 -s -2 -
[ speech ]
$ fdmdv_get_test_bits - 2800 | fdmdv_mod - - | play -t raw -r 8000 -s
-2 -
[ 2.7 seconds of whirring noise ]
----- These commands do not appear to work:
This command is adapted from page: http://www.rowetel.com/blog/?page_id=2458
$ fdmdv_get_test_bits - 14000 | fdmdv_mod - - | fdmdv_demod - -
/tmp/demod_dump.txt | fdmdv_put_test_bits -
Error number of carriers must be btween 2 and 20
bits_per_fdmdv_frame: 28 bits_per_codec_frame: 56
bytes_per_codec_frame: 7
bits_per_fdmdv_frame: 28 bits_per_codec_frame: 56
bytes_per_codec_frame: 7
bits 0 errors 0 BER 0.0000
Note error "Error number of carriers must be btween 2 and 20" and also
typo in "between".
$ fdmdv_demod
usage: fdmdv_demod InputModemRawFile OutputBitFile [Nc] [OctaveDumpFile]
e.g fdmdv_demod hts1a_fdmdv.raw hts1a.c2
Number of carriers does not seem optional. Adding number of carriers:
$ fdmdv_get_test_bits - 14000 | fdmdv_mod - - | fdmdv_demod - - 14
/tmp/demod_dump.txt | fdmdv_put_test_bits -
bits_per_fdmdv_frame: 28 bits_per_codec_frame: 56
bytes_per_codec_frame: 7
bits_per_fdmdv_frame: 28 bits_per_codec_frame: 56
bytes_per_codec_frame: 7
----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
bits 0 errors 0 BER 0.0000
Number of carriers error message goes away, but why is bit count 0 and not
14000?
There is no file /tmp/demod_dump.txt. Is 14 the right number of carriers?
$ fdmdv_get_test_bits - 14000 | fdmdv_mod - - | fdmdv_demod - - 14
/tmp/demod_dump.txt | od
bits_per_fdmdv_frame: 28 bits_per_codec_frame: 56
bytes_per_codec_frame: 7
0000000 000000 000000 000000 000000 000000 000000 000000 000000
*
0003320 000000 000000 000000 000000 000000 000000 000000
0003335
fdmdv_demod is producing NULs for output.
Brian
------------------------------------------------------------------------------
HPCC Systems Open Source Big Data Platform from LexisNexis Risk Solutions
Find What Matters Most in Your Big Data with HPCC Systems
Open Source. Fast. Scalable. Simple. Ideal for Dirty Data.
Leverages Graph Analysis for Fast Processing & Easy Data Exploration
http://p.sf.net/sfu/hpccsystems
_______________________________________________
Freetel-codec2 mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/freetel-codec2