From: Andre Noll Date: Sun, 16 Dec 2012 23:09:22 +0000 (+0100) Subject: Merge branch 't/resample' X-Git-Tag: v0.4.12~4 X-Git-Url: http://git.tuebingen.mpg.de/?p=paraslash.git;a=commitdiff_plain;h=ff12b505b227585daf5aecc822d6b2e8841c2be7 Merge branch 't/resample' Was cooking for quite some time. The merge conflicted slightly, but this was easy to fix. However, even with the conflict resolved, the merged tree would not compile because after the merge para_play depends on libsamplerate, but this dependency was not encoded in configure.ac. There was no way to fix this issue in either of the two branches involved without rewriting history: The recently merged t/afh_receiver branch (which introduced para_play) had no idea of libsamplerate while t/resample has no idea of para_play. This merge commit fixes both issues. 0eb69b resample filter: Implementation. cad284 resample filter: Infrastructure. 37e0df check_wav: Ask parent nodes before falling back to defaults. 216399 Replace check_wav_task by write_task. 1af65c Move wav detection code to a separate file. d5dc1c write: Make wav-related config options modular. c25d04 para_filter: Call proper ->free_config method on shutdown. Conflicts: m4/gengetopt/makefile --- ff12b505b227585daf5aecc822d6b2e8841c2be7 diff --cc configure.ac index 444f9ed1,aacecee8..f3e8fb07 --- a/configure.ac +++ b/configure.ac @@@ -100,20 -100,16 +100,20 @@@ all_errlist_objs="mp3_afh afh_common ne dccp_recv recv_common write_common file_write audiod_command client_common recv stdout filter stdin audioc write client exec send_common ggo udp_recv color fec fecdec_filter - prebuffer_filter bitstream imdct + prebuffer_filter bitstream imdct check_wav wma_afh wma_common wmadec_filter buffer_tree crypt_common - gui gui_theme sideband" + gui gui_theme sideband afh_recv play" -executables="recv filter audioc write client afh audiod" +executables="recv filter audioc write client afh audiod play" -recv_cmdline_objs="add_cmdline(recv http_recv dccp_recv udp_recv)" +recv_cmdline_objs="add_cmdline(recv http_recv dccp_recv udp_recv afh_recv)" + +recv_errlist_objs=" + http_recv recv_common recv time string net dccp_recv fd + sched stdout ggo udp_recv buffer_tree afh_recv afh_common + wma_afh wma_common mp3_afh +" -recv_errlist_objs="http_recv recv_common recv time string net dccp_recv - fd sched stdout ggo udp_recv buffer_tree" recv_ldflags="" filter_cmdline_objs="add_cmdline(filter compress_filter amp_filter prebuffer_filter)" @@@ -1107,6 -1039,44 +1107,47 @@@ f CPPFLAGS="$OLD_CPPFLAGS" LDFLAGS="$OLD_LDFLAGS" LIBS="$OLD_LIBS" + ############################################################# libsamplerate + OLD_CPPFLAGS="$CPPFLAGS" + OLD_LD_FLAGS="$LDFLAGS" + OLD_LIBS="$LIBS" + + have_samplerate="yes" + AC_ARG_WITH(samplerate_headers, [AS_HELP_STRING(--with-samplerate-headers=dir, + [look for samplerate headers also in dir])]) + if test -n "$with_samplerate_headers"; then + samplerate_cppflags="-I$with_samplerate_headers" + CPPFLAGS="$CPPFLAGS $samplerate_cppflags" + fi + AC_ARG_WITH(samplerate_libs, [AS_HELP_STRING(--with-samplerate-libs=dir, + [look for samplerate libs also in dir])]) + if test -n "$with_samplerate_libs"; then + samplerate_libs="-L$with_samplerate_libs" + LDFLAGS="$LDFLAGS $samplerate_libs" + fi + + AC_CHECK_HEADER(samplerate.h, [], have_samplerate=no) + AC_CHECK_LIB([samplerate], [src_process], [], have_samplerate=no, []) + + if test "$have_samplerate" = "yes"; then + all_errlist_objs="$all_errlist_objs resample_filter" + filter_errlist_objs="$filter_errlist_objs resample_filter check_wav" + filter_cmdline_objs="$filter_cmdline_objs add_cmdline(resample_filter)" + audiod_errlist_objs="$audiod_errlist_objs resample_filter check_wav" + audiod_cmdline_objs="$audiod_cmdline_objs add_cmdline(resample_filter)" ++ play_errlist_objs="$play_errlist_objs resample_filter check_wav" ++ play_cmdline_objs="$play_cmdline_objs add_cmdline(resample_filter)" + filter_ldflags="$filter_ldflags $samplerate_libs -lsamplerate" + audiod_ldflags="$audiod_ldflags $samplerate_libs -lsamplerate" ++ play_ldflags="$play_ldflags $samplerate_libs -lsamplerate" + filters="$filters resample" + AC_SUBST(samplerate_cppflags) + else + AC_MSG_WARN([no resample support in para_audiod/para_filter]) + fi + CPPFLAGS="$OLD_CPPFLAGS" + LDFLAGS="$OLD_LDFLAGS" + LIBS="$OLD_LIBS" ############################################################# error2.h AC_MSG_NOTICE(creating error2.h) for i in $executables; do diff --cc m4/gengetopt/makefile index c88dfd98,c3b42f44..138ac30b --- a/m4/gengetopt/makefile +++ b/m4/gengetopt/makefile @@@ -34,8 -37,10 +37,12 @@@ $(ggo_dir)/client.ggo: $(m4_ggo_dir)/history_file.m4 \ $(m4_ggo_dir)/complete.m4 $(ggo_dir)/fade.ggo: $(m4_ggo_dir)/loglevel.m4 $(m4_ggo_dir)/config_file.m4 + $(ggo_dir)/resample_filter.ggo: \ + $(m4_ggo_dir)/channels.m4 \ + $(m4_ggo_dir)/sample_rate.m4 \ + $(m4_ggo_dir)/sample_format.m4 +$(ggo_dir)/play.ggo: $(m4_ggo_dir)/loglevel.m4 $(m4_ggo_dir)/config_file.m4 + $(ggo_dir)/%.ggo: $(m4_ggo_dir)/%.m4 $(m4_ggo_dir)/header.m4 | $(ggo_dir) @[ -z "$(Q)" ] || echo 'M4 $<' $(Q) m4 -I $(m4_ggo_dir) $< > $@