Closed kloczek closed 1 year ago
Hmm .. I don't see anywhere those files ajt I don't see as well what could generate that
[tkloczko@pers-jacek LPCNet-0.3]$ find . -name birch.f32
[tkloczko@pers-jacek LPCNet-0.3]$ grep -r birch.f32
src/plot_features.m:feat_lpcnet=load_f32("../birch.f32", nb_lpcnet_features);
unittest/test_core_nn.sh: ../build_linux/src/dump_data --test --c2pitch ../wav/birch.wav birch.f32
unittest/test_core_nn.sh: diff birch_targ.f32 birch.f32 || { echo "ERROR in synth .f32 output! Exiting..."; exit 1; }
unittest/test_core_nn.sh: ../build_linux/src/test_lpcnet -l birch_states.f32 birch.f32 birch_out.raw
unittest/test_core_nn.sh: ../build_linux/src/dump_data --test --c2pitch ../wav/birch.wav birch.f32
unittest/test_core_nn.sh: diff birch_targ.f32 birch.f32 || { echo "ERROR in synth .f32 output! Exiting..."; exit 1; }
unittest/test_core_nn.sh: ../build_linux/src/test_lpcnet -n lpcnet_20h.f32 -l birch_states.f32 birch.f32 birch_out.raw
x86_64-redhat-linux-gnu/Testing/Temporary/LastTest.log:+ ../build_linux/src/dump_data --test --c2pitch ../wav/birch.wav birch.f32
x86_64-redhat-linux-gnu/Testing/Temporary/LastTest.log:+ diff birch_targ.f32 birch.f32
x86_64-redhat-linux-gnu/Testing/Temporary/LastTest.log:diff: birch.f32: No such file or directory
x86_64-redhat-linux-gnu/Testing/Temporary/LastTest.log:+ ../build_linux/src/dump_data --test --c2pitch ../wav/birch.wav birch.f32
x86_64-redhat-linux-gnu/Testing/Temporary/LastTest.log:+ diff birch_targ.f32 birch.f32
x86_64-redhat-linux-gnu/Testing/Temporary/LastTest.log:diff: birch.f32: No such file or directory
Can you confirm what branch and commit you're building off of? The latest master
that I have (101d925fcf8929575ee53755db16dcaac8f08daf) only seems to have the following tests:
As it is in the subject I'm building what exactly is on 0.3 git tag. OK will check 0.3 + master .. will back shortly 😋
Checked that PR and none of those 5 commits are adding missing files
FYI: to have base line working temporary I've added those 3 failing units to ctest exclude list so it no-so-critical. As there are some missing files look slike it is test suite and not actual tested code issue.
Oh right, I missed the title.
Anyway, git diff 391ea7c CMakeLists.txt
, among other changes, shows that the failing tests were removed:
@@ -192,16 +203,26 @@ add_subdirectory(src)
include(CTest)
enable_testing()
-add_test(NAME core_synthesis_default
- COMMAND sh -c "cd ${CMAKE_CURRENT_SOURCE_DIR}/unittest; SYNTH=1 ./test_core_nn.sh")
-add_test(NAME core_synthesis_load_20h
- COMMAND sh -c "cd ${CMAKE_CURRENT_SOURCE_DIR}/unittest; SYNTH_20h=1 ./test_core_nn.sh")
-add_test(NAME core_synthesis_mag
- COMMAND sh -c "cd ${CMAKE_CURRENT_SOURCE_DIR}/unittest; SYNTH_mag=1 ./test_core_nn.sh")
+# some basic tests - unfortunately the core NN synthsis is hard to test reliably as we get
+# different results on different runs due to numerical/precision issues
+add_test(NAME feature_extraction
+ COMMAND sh -c "PATH=$PATH:${CMAKE_CURRENT_BINARY_DIR}/src:${CMAKE_CURRENT_BINARY_DIR}/unittest;
+ cd ${CMAKE_CURRENT_SOURCE_DIR}/unittest;
+ pwd;
+ dump_data --test --c2pitch ${CMAKE_CURRENT_SOURCE_DIR}/wav/birch.wav birch.f32;
+ md5sum birch.f32;
+ md5sum birch_targ.f32;
+ diff32 --cont birch_targ.f32 birch.f32")
add_test(NAME nnet2f32
COMMAND sh -c "cd ${CMAKE_CURRENT_BINARY_DIR}; ./src/nnet2f32 t.f32")
add_test(NAME SIMD_functions
COMMAND sh -c "cd ${CMAKE_CURRENT_BINARY_DIR}; ./src/test_vec")
+add_test(NAME lpcnet_enc_dec
+ COMMAND sh -c "PATH=$PATH:${CMAKE_CURRENT_BINARY_DIR}/src;
+ cd ${CMAKE_CURRENT_SOURCE_DIR};
+ sox wav/wia.wav -t raw -r 16000 - |
+ lpcnet_enc -s |
+ lpcnet_dec -s > /dev/null")
# Packaging
set(CPACK_PACKAGE_DESCRIPTION_SUMMARY "Next-Generation Digital Voice for Two-Way Radio")
(391ea7c is the change that marks the release of 0.3. Diffing just up to the release of 0.4 -- 1431ee3 -- shows this same change.)
Anyway, I'd recommend trying version 0.4 instead, though neither 0.3 nor 0.4 have officially been released on https://github.com/drowe67/LPCNet/releases. @drowe67, should I go ahead and tag/create GitHub releases accordingly?
@tmiw - sorry I might have missed your latest comment :point_up:
Do you feel master ready to be tagged and released? It builds and 4/4 ctests pass for me.
FWIW I have been using a local build of the master branch, I think this is effectively v0.4, which is what I have named it in my own packages.
It's been working quite happily, and decodes all the 2020 modes which the current released lpcnetfreedv-0.2 in Fedora 38 doesn't.
@tmiw - sorry I might have missed your latest comment ☝️
Do you feel master ready to be tagged and released? It builds and 4/4 ctests pass for me.
That works for me. Should this be tagged as 0.5? It seems there were quite a few commits after CMakeLists.txt was updated to 0.4.
0.5 seems sensible to me.
Thanks everyone I've had a go at releasing v0.5
Thanks, I now have a new build of up-to-date codec2, lpcnetfreedv and freedv packages installed and running on Fedora 38.
cmake config:
and test suite is failing with: