git-svn-id: svn+ssh://jackaudio.org/trunk/jack@4058 0c269be4-1314-0410-8aa9-9f06e86f4224tags/0.120.1
| @@ -716,26 +716,38 @@ fi | |||
| # Celt low-latency audio codec. netjack transmission via internet. | |||
| HAVE_CELT=false | |||
| PKG_CHECK_MODULES(CELT, celt >= 0.7.0,[HAVE_CELT=true], [true]) | |||
| PKG_CHECK_MODULES(CELT, celt >= 0.8.0,[HAVE_CELT=true], [true]) | |||
| if test x$HAVE_CELT = xfalse; then | |||
| PKG_CHECK_MODULES(CELT, celt >= 0.5.0,[HAVE_CELT=true], [true]) | |||
| PKG_CHECK_MODULES(CELT, celt >= 0.7.0,[HAVE_CELT=true], [true]) | |||
| if test x$HAVE_CELT = xfalse; then | |||
| AC_DEFINE(HAVE_CELT,0,"Whether CELT is available") | |||
| AC_MSG_RESULT(no) | |||
| AC_MSG_WARN([*** NetJack will not be built with celt support]) | |||
| PKG_CHECK_MODULES(CELT, celt >= 0.5.0,[HAVE_CELT=true], [true]) | |||
| if test x$HAVE_CELT = xfalse; then | |||
| AC_DEFINE(HAVE_CELT,0,"Whether CELT is available") | |||
| AC_MSG_RESULT(no) | |||
| AC_MSG_WARN([*** NetJack will not be built with celt support]) | |||
| else | |||
| AC_DEFINE(HAVE_CELT,1,"Whether CELT is available") | |||
| AC_DEFINE(HAVE_CELT_API_0_5,1,"Whether CELT API is 0.5 API") | |||
| AC_DEFINE(HAVE_CELT_API_0_7,0,"Whether CELT API is 0.7 API") | |||
| AC_DEFINE(HAVE_CELT_API_0_8,0,"Whether CELT API is 0.8 API") | |||
| AC_MSG_RESULT(yes (0.5)) | |||
| NETJACK_LIBS="$NETJACK_LIBS $CELT_LIBS" | |||
| fi | |||
| else | |||
| AC_DEFINE(HAVE_CELT,1,"Whether CELT is available") | |||
| AC_DEFINE(HAVE_CELT_API_0_5,1,"Whether CELT API is 0.5 API") | |||
| AC_DEFINE(HAVE_CELT_API_0_7,0,"Whether CELT API is 0.7 API") | |||
| AC_MSG_RESULT(yes (0.5)) | |||
| AC_MSG_RESULT(yes (0.7)) | |||
| AC_DEFINE(HAVE_CELT_API_0_5,0,"Whether CELT API is 0.5 API") | |||
| AC_DEFINE(HAVE_CELT_API_0_7,1,"Whether CELT API is 0.7 API") | |||
| AC_DEFINE(HAVE_CELT_API_0_8,0,"Whether CELT API is 0.8 API") | |||
| NETJACK_LIBS="$NETJACK_LIBS $CELT_LIBS" | |||
| fi | |||
| else | |||
| AC_DEFINE(HAVE_CELT,1,"Whether CELT is available") | |||
| AC_MSG_RESULT(yes (0.7)) | |||
| AC_DEFINE(HAVE_CELT_API_0_5,0,"Whether CELT API is 0.5 API") | |||
| AC_DEFINE(HAVE_CELT_API_0_7,1,"Whether CELT API is 0.7 API") | |||
| NETJACK_LIBS="$NETJACK_LIBS $CELT_LIBS" | |||
| AC_DEFINE(HAVE_CELT,1,"Whether CELT is available") | |||
| AC_MSG_RESULT(yes (0.7)) | |||
| AC_DEFINE(HAVE_CELT_API_0_5,0,"Whether CELT API is 0.5 API") | |||
| AC_DEFINE(HAVE_CELT_API_0_7,0,"Whether CELT API is 0.7 API") | |||
| AC_DEFINE(HAVE_CELT_API_0_8,1,"Whether CELT API is 0.8 API") | |||
| NETJACK_LIBS="$NETJACK_LIBS $CELT_LIBS" | |||
| fi | |||
| AC_SUBST(NETJACK_LIBS) | |||
| @@ -373,7 +373,7 @@ void netjack_attach( netjack_driver_state_t *netj ) | |||
| if( netj->bitdepth == CELT_MODE ) | |||
| { | |||
| #if HAVE_CELT | |||
| #if HAVE_CELT_API_0_7 | |||
| #if HAVE_CELT_API_0_7 || HAVE_CELT_API_0_8 | |||
| celt_int32 lookahead; | |||
| netj->celt_mode = celt_mode_create( netj->sample_rate, netj->period_size, NULL ); | |||
| #else | |||
| @@ -406,7 +406,7 @@ void netjack_attach( netjack_driver_state_t *netj ) | |||
| if( netj->bitdepth == CELT_MODE ) { | |||
| #if HAVE_CELT | |||
| #if HAVE_CELT_API_0_7 | |||
| #if HAVE_CELT_API_0_7 || HAVE_CELT_API_0_8 | |||
| netj->capture_srcs = jack_slist_append(netj->capture_srcs, celt_decoder_create( netj->celt_mode, 1, NULL ) ); | |||
| #else | |||
| netj->capture_srcs = jack_slist_append(netj->capture_srcs, celt_decoder_create( netj->celt_mode ) ); | |||
| @@ -452,7 +452,7 @@ void netjack_attach( netjack_driver_state_t *netj ) | |||
| jack_slist_append (netj->playback_ports, port); | |||
| if( netj->bitdepth == CELT_MODE ) { | |||
| #if HAVE_CELT | |||
| #if HAVE_CELT_API_0_7 | |||
| #if HAVE_CELT_API_0_7 || HAVE_CELT_API_0_8 | |||
| CELTMode *celt_mode = celt_mode_create( netj->sample_rate, netj->period_size, NULL ); | |||
| netj->playback_srcs = jack_slist_append(netj->playback_srcs, celt_encoder_create( celt_mode, 1, NULL ) ); | |||
| #else | |||
| @@ -1369,10 +1369,17 @@ render_payload_to_jack_ports_celt (void *packet_payload, jack_nframes_t net_peri | |||
| // audio port, decode celt data. | |||
| CELTDecoder *decoder = src_node->data; | |||
| #if HAVE_CELT_API_0_8 | |||
| if( !packet_payload ) | |||
| celt_decode_float( decoder, NULL, net_period_down, buf, nframes ); | |||
| else | |||
| celt_decode_float( decoder, packet_bufX, net_period_down, buf, nframes ); | |||
| #else | |||
| if( !packet_payload ) | |||
| celt_decode_float( decoder, NULL, net_period_down, buf ); | |||
| else | |||
| celt_decode_float( decoder, packet_bufX, net_period_down, buf ); | |||
| #endif | |||
| src_node = jack_slist_next (src_node); | |||
| } | |||
| @@ -1414,7 +1421,11 @@ render_jack_ports_to_payload_celt (JSList *playback_ports, JSList *playback_srcs | |||
| float *floatbuf = alloca (sizeof(float) * nframes ); | |||
| memcpy( floatbuf, buf, nframes*sizeof(float) ); | |||
| CELTEncoder *encoder = src_node->data; | |||
| #if HAVE_CELT_API_0_8 | |||
| encoded_bytes = celt_encode_float( encoder, floatbuf, nframes, packet_bufX, net_period_up ); | |||
| #else | |||
| encoded_bytes = celt_encode_float( encoder, floatbuf, NULL, packet_bufX, net_period_up ); | |||
| #endif | |||
| if( encoded_bytes != net_period_up ) | |||
| printf( "something in celt changed. netjack needs to be changed to handle this.\n" ); | |||
| src_node = jack_slist_next( src_node ); | |||
| @@ -137,7 +137,7 @@ alloc_ports (int n_capture_audio, int n_playback_audio, int n_capture_midi, int | |||
| } | |||
| if( bitdepth == 1000 ) { | |||
| #if HAVE_CELT | |||
| #if HAVE_CELT_API_0_7 | |||
| #if HAVE_CELT_API_0_7 || HAVE_CELT_API_0_8 | |||
| CELTMode *celt_mode = celt_mode_create( jack_get_sample_rate( client ), jack_get_buffer_size(client), NULL ); | |||
| capture_srcs = jack_slist_append(capture_srcs, celt_decoder_create( celt_mode, 1, NULL ) ); | |||
| #else | |||
| @@ -180,7 +180,7 @@ alloc_ports (int n_capture_audio, int n_playback_audio, int n_capture_midi, int | |||
| } | |||
| if( bitdepth == 1000 ) { | |||
| #if HAVE_CELT | |||
| #if HAVE_CELT_API_0_7 | |||
| #if HAVE_CELT_API_0_7 || HAVE_CELT_API_0_8 | |||
| CELTMode *celt_mode = celt_mode_create( jack_get_sample_rate (client), jack_get_buffer_size(client), NULL ); | |||
| playback_srcs = jack_slist_append(playback_srcs, celt_encoder_create( celt_mode, 1, NULL ) ); | |||
| #else | |||