Hello,

This is a continuation (from the Google digital-voice group) of some of 
the woes I am having compiling freedv.rx/tx using the freedv.api.

I am trying to build/compile exe. files for use on my XUbuntu 16.04 
machine, principally to experiment with the 2400B mode.

Freedv 1.1 has previously been successfully built and used OK.

The test
./freedv_tx 1600 speechsample.raw - | ./freedv_rx 1600 - - | play -t raw 
-r 8000 -s -2 -q -
works ok (using the exes from the api page).

My codec2 is svn 2841 (current)

In a nutshell >>>>>

Compile directory contents are:-
freedv_api.h
freedv_api.c
freedv_rx.c
freedv_tx.c
----------------------------------------------------------------------------------------------------------------------------------------------------------------------
 


My compile command line:-

:~/Desktop/weds$ g++ 
-I/home/g3nr/free-dv/src/-I/home/g3nr/free-dv/build_linux/codec2-dev/src/ 
freedv_api.c freedv_tx.c -o foo
----------------------------------------------------------------------------------------------------------------------------------------------------------------------
 

Compiler response:-

In file included from freedv_api.c:46:0:
/home/g3nr/free-dv/build_linux/codec2-dev/src/freedv_api_internal.h:138:34: 
error: redefinition of ‘float quiskFilt120t480 [480]’
  static float quiskFilt120t480[480] = { -0.000005050567303837, 
-0.00000026701179
                                   ^
In file included from freedv_api.c:46:0:
/home/g3nr/free-dv/build_linux/codec2-dev/src/freedv_api_internal.h:59:14: 
note: ‘float quiskFilt120t480 [480]’ previously declared here
  static float quiskFilt120t480[480];
               ^
freedv_api.c: In function ‘freedv* freedv_open(int)’:
freedv_api.c:174:31: error: invalid conversion from ‘void*’ to ‘int*’ 
[-fpermissive]
          f->codec_bits = malloc(1);
                                ^
freedv_api.c:201:31: error: invalid conversion from ‘void*’ to ‘int*’ 
[-fpermissive]
          f->codec_bits = malloc(1);
                                ^
freedv_api.c:230:31: error: invalid conversion from ‘void*’ to ‘int*’ 
[-fpermissive]
          f->codec_bits = malloc(1);
                                ^
In file included from /usr/include/stdlib.h:492:0,
                  from freedv_api.c:30:
freedv_api.c: In function ‘void freedv_tx_fsk_voice(freedv*, short int*)’:
freedv_api.c:434:16: error: invalid conversion from ‘void*’ to ‘float*’ 
[-fpermissive]
      tx_float = alloca(sizeof(float)*f->n_nom_modem_samples);
                 ^
freedv_api.c: In function ‘void freedv_tx_fsk_data(freedv*, short int*)’:
freedv_api.c:464:16: error: invalid conversion from ‘void*’ to ‘float*’ 
[-fpermissive]
      tx_float = alloca(sizeof(float)*f->n_nom_modem_samples);
                 ^
freedv_api.c: In function ‘int freedv_comprx_fdmdv_700(freedv*, COMP*, 
int*)’:
freedv_api.c:1202:107: error: cannot convert ‘float*’ to ‘char*’ for 
argument ‘5’ to ‘void cohpsk_put_test_bits(COHPSK*, int*, short int*, 
int*, char*)’
  its(f->cohpsk, &f->test_frame_sync_state, error_pattern, &bit_errors, 
rx_bits);

----------------------------------------------------------------------------------------------------------------------------------------------------------------------
 


Am I being too simplistic here? Are there file paths I haven't included 
properly?

Any help please would be much appreciated.


73s Andrew G3NR

------------------------------------------------------------------------------
What NetFlow Analyzer can do for you? Monitors network bandwidth and traffic
patterns at an interface-level. Reveals which users, apps, and protocols are 
consuming the most bandwidth. Provides multi-vendor support for NetFlow, 
J-Flow, sFlow and other flows. Make informed decisions using capacity 
planning reports. http://sdm.link/zohodev2dev
_______________________________________________
Freetel-codec2 mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/freetel-codec2

Reply via email to