aubio.git
15 years agoplugins/puredata/aubioonset~.c: rename peakpicker
Paul Brossier [Wed, 7 Oct 2009 18:33:15 +0000 (20:33 +0200)]
plugins/puredata/aubioonset~.c: rename peakpicker

15 years agosrc/onset/peakpick.c: rename aubio_pickpeak_t to aubio_peakpicker_t
Paul Brossier [Wed, 7 Oct 2009 18:31:43 +0000 (20:31 +0200)]
src/onset/peakpick.c: rename aubio_pickpeak_t to aubio_peakpicker_t

15 years agotests/src/test-filter.c: avoid redefining o
Paul Brossier [Wed, 7 Oct 2009 18:11:00 +0000 (20:11 +0200)]
tests/src/test-filter.c: avoid redefining o

15 years agosrc/spectral/filterbank.{c,h}: add function to set coefficients
Paul Brossier [Wed, 7 Oct 2009 17:55:08 +0000 (19:55 +0200)]
src/spectral/filterbank.{c,h}: add function to set coefficients

15 years agotests/src/test-filter.c: improve, indent
Paul Brossier [Wed, 7 Oct 2009 17:39:11 +0000 (19:39 +0200)]
tests/src/test-filter.c: improve, indent

15 years agotests/src/test-pitch*: update pitch prototypes
Paul Brossier [Wed, 7 Oct 2009 17:36:31 +0000 (19:36 +0200)]
tests/src/test-pitch*: update pitch prototypes

15 years agosrc/pitch/: change all _detect prototypes to _do
Paul Brossier [Wed, 7 Oct 2009 17:33:51 +0000 (19:33 +0200)]
src/pitch/: change all _detect prototypes to _do

15 years agosrc/onset/onsetdetection.{c,h}: no need for function specific prototypes to be public
Paul Brossier [Wed, 7 Oct 2009 16:28:53 +0000 (18:28 +0200)]
src/onset/onsetdetection.{c,h}: no need for function specific prototypes to be public

15 years agosrc/mathutils.c: add aubio_is_power_of_two and aubio_next_power_of_two
Paul Brossier [Wed, 7 Oct 2009 16:26:59 +0000 (18:26 +0200)]
src/mathutils.c: add aubio_is_power_of_two and aubio_next_power_of_two

15 years agotests/src/test-peakpick.c: update peakpicker prototype
Paul Brossier [Tue, 6 Oct 2009 15:28:19 +0000 (17:28 +0200)]
tests/src/test-peakpick.c: update peakpicker prototype

15 years agoexamples/aubionotes.c: update peakpicker prototype
Paul Brossier [Tue, 6 Oct 2009 15:06:54 +0000 (17:06 +0200)]
examples/aubionotes.c: update peakpicker prototype

15 years agoexamples/aubioonset.c: use interpolated onset position
Paul Brossier [Tue, 6 Oct 2009 15:06:30 +0000 (17:06 +0200)]
examples/aubioonset.c: use interpolated onset position

15 years agopython/aubio/task/onset.py: isonset > 0., not == 1
Paul Brossier [Tue, 6 Oct 2009 15:04:45 +0000 (17:04 +0200)]
python/aubio/task/onset.py: isonset > 0., not == 1

15 years agopython/aubio/aubioclass.py: update peakpicker class
Paul Brossier [Tue, 6 Oct 2009 15:04:18 +0000 (17:04 +0200)]
python/aubio/aubioclass.py: update peakpicker class

15 years agoswig/aubio.i: update peakpicker interface, escape #if as needed
Paul Brossier [Tue, 6 Oct 2009 15:03:23 +0000 (17:03 +0200)]
swig/aubio.i: update peakpicker interface, escape #if as needed

15 years agosrc/onset/peakpick.h: clean up peakpicker object
Paul Brossier [Tue, 6 Oct 2009 15:02:54 +0000 (17:02 +0200)]
src/onset/peakpick.h: clean up peakpicker object

15 years agosrc/temporal/resample.c: include config,h before checking HAVE_SAMPLERATE
Paul Brossier [Tue, 6 Oct 2009 15:01:55 +0000 (17:01 +0200)]
src/temporal/resample.c: include config,h before checking HAVE_SAMPLERATE

15 years agointerfaces/python: add cvec and filter types
Paul Brossier [Tue, 6 Oct 2009 00:50:49 +0000 (02:50 +0200)]
interfaces/python: add cvec and filter types

15 years agointerfaces/python: add cvec and filter types
Paul Brossier [Tue, 6 Oct 2009 00:49:53 +0000 (02:49 +0200)]
interfaces/python: add cvec and filter types

15 years agoswig/aubio.i: update prototype
Paul Brossier [Mon, 5 Oct 2009 17:41:48 +0000 (19:41 +0200)]
swig/aubio.i: update prototype

15 years agosrc/onset/peakpick.c: use quadint in peakpick to get interpolated peak position,...
Paul Brossier [Mon, 5 Oct 2009 17:40:45 +0000 (19:40 +0200)]
src/onset/peakpick.c: use quadint in peakpick to get interpolated peak position, real in the range [0,2] in number of hop size

15 years agoswig/aubio.i: update set_a,c_weighting prototypes
Paul Brossier [Sun, 4 Oct 2009 22:31:37 +0000 (00:31 +0200)]
swig/aubio.i: update set_a,c_weighting prototypes

15 years agosrc/temporal/{a,c}_weighting.{c,h}: set_a,c_weighting return 1 on error, 0 on success
Paul Brossier [Sun, 4 Oct 2009 22:30:32 +0000 (00:30 +0200)]
src/temporal/{a,c}_weighting.{c,h}: set_a,c_weighting return 1 on error, 0 on success

15 years agopython/aubiomodule.c: move PyAubio_ArrayToFvec to py-fvec.c
Paul Brossier [Fri, 2 Oct 2009 13:39:33 +0000 (15:39 +0200)]
python/aubiomodule.c: move PyAubio_ArrayToFvec to py-fvec.c

15 years agopython/test_aubio.py: update unit tests
Paul Brossier [Fri, 2 Oct 2009 13:38:30 +0000 (15:38 +0200)]
python/test_aubio.py: update unit tests

15 years agopython/aubiomodule.c: add zero_crossing_rate and min_removal
Paul Brossier [Fri, 2 Oct 2009 09:24:08 +0000 (11:24 +0200)]
python/aubiomodule.c: add zero_crossing_rate and min_removal

15 years agopython/aubiomodule.c: PyAubio_ArrayToFvec to convert numpy array to a Py_fvec, no...
Paul Brossier [Fri, 2 Oct 2009 09:20:31 +0000 (11:20 +0200)]
python/aubiomodule.c: PyAubio_ArrayToFvec to convert numpy array to a Py_fvec, no copy

15 years agopython/py-fvec.c, python/aubio-types.g: define AUBIO_FLOAT, move default length and...
Paul Brossier [Fri, 2 Oct 2009 09:19:48 +0000 (11:19 +0200)]
python/py-fvec.c, python/aubio-types.g: define AUBIO_FLOAT, move default length and channels here, rename fvec to aubio.fvec

15 years agosrc/mathutils.{c,h}: loop over channels when possible, improve documentation, indent
Paul Brossier [Fri, 2 Oct 2009 04:11:07 +0000 (06:11 +0200)]
src/mathutils.{c,h}: loop over channels when possible, improve documentation, indent

15 years agosrc/mathutils.c: fix fvec_min_removal
Paul Brossier [Fri, 2 Oct 2009 00:14:06 +0000 (02:14 +0200)]
src/mathutils.c: fix fvec_min_removal

15 years agosrc/mathutils.c and co: use 0.0, not 0.0f
Paul Brossier [Fri, 2 Oct 2009 00:10:25 +0000 (02:10 +0200)]
src/mathutils.c and co: use 0.0, not 0.0f

15 years agosrc/mathutils.c: rename fvec_dc_removal to fvec_min_removal
Paul Brossier [Fri, 2 Oct 2009 00:05:23 +0000 (02:05 +0200)]
src/mathutils.c: rename fvec_dc_removal to fvec_min_removal

15 years agotests/src/: various updates
Paul Brossier [Thu, 1 Oct 2009 23:26:08 +0000 (01:26 +0200)]
tests/src/: various updates

15 years agosrc/mathutils.{c,h}: rename all vec_ to fvec_
Paul Brossier [Thu, 1 Oct 2009 23:19:10 +0000 (01:19 +0200)]
src/mathutils.{c,h}: rename all vec_ to fvec_

15 years agorename vec_min and vec_min_elem to fvec_min and fvec_max_elem
Paul Brossier [Thu, 1 Oct 2009 23:11:37 +0000 (01:11 +0200)]
rename vec_min and vec_min_elem to fvec_min and fvec_max_elem

15 years agorename vec_max and vec_max_elem to fvec_max fvec_max_elem
Paul Brossier [Thu, 1 Oct 2009 23:09:46 +0000 (01:09 +0200)]
rename vec_max and vec_max_elem to fvec_max fvec_max_elem

15 years agotests/src/test-filterbank.c: print coeffs
Paul Brossier [Thu, 1 Oct 2009 23:07:29 +0000 (01:07 +0200)]
tests/src/test-filterbank.c: print coeffs

15 years agosrc/mathutils.c: rename vec_mean to fvec_mean
Paul Brossier [Thu, 1 Oct 2009 23:05:26 +0000 (01:05 +0200)]
src/mathutils.c: rename vec_mean to fvec_mean

15 years agotests/src/test-phasevoc.c add missing stdio.h
Paul Brossier [Thu, 1 Oct 2009 23:00:53 +0000 (01:00 +0200)]
tests/src/test-phasevoc.c add missing stdio.h

15 years agosrc/temporal/[ac]_weighting.[ch]: add 11025 Hz
Paul Brossier [Thu, 1 Oct 2009 22:56:31 +0000 (00:56 +0200)]
src/temporal/[ac]_weighting.[ch]: add 11025 Hz

15 years agosrc/temporal/[ac]_weighting.c: update error message
Paul Brossier [Thu, 1 Oct 2009 22:51:50 +0000 (00:51 +0200)]
src/temporal/[ac]_weighting.c: update error message

15 years agosrc/temporal/[ac]_weighting.[ch]: add coeffs for 24, 32, 48 and 88.2 kHz
Paul Brossier [Thu, 1 Oct 2009 22:49:59 +0000 (00:49 +0200)]
src/temporal/[ac]_weighting.[ch]: add coeffs for 24, 32, 48 and 88.2 kHz

15 years agoexamples/utils.c: use fvec_zeros()
Paul Brossier [Thu, 1 Oct 2009 22:30:05 +0000 (00:30 +0200)]
examples/utils.c: use fvec_zeros()

15 years agosrc/spectral/fft.{c,h}: move fftw3.h include inside fft.c
Paul Brossier [Thu, 1 Oct 2009 15:41:07 +0000 (17:41 +0200)]
src/spectral/fft.{c,h}: move fftw3.h include inside fft.c

15 years agosrc/spectral/filterbank.{c,h}: aubio_filterbank_t_ -> _aubio_filterbank_t
Paul Brossier [Thu, 1 Oct 2009 15:38:37 +0000 (17:38 +0200)]
src/spectral/filterbank.{c,h}: aubio_filterbank_t_ -> _aubio_filterbank_t

15 years agosrc/onset/onsetdetection.c: simplify complex domain computation
Paul Brossier [Thu, 1 Oct 2009 15:36:01 +0000 (17:36 +0200)]
src/onset/onsetdetection.c: simplify complex domain computation

15 years agoMakefile.am: update java location
Paul Brossier [Thu, 1 Oct 2009 13:44:48 +0000 (15:44 +0200)]
Makefile.am: update java location

15 years agoconfigure.ac: do not use AM_SILENT_RULES for now, wait for automake 1.11 to reach...
Paul Brossier [Thu, 1 Oct 2009 13:44:03 +0000 (15:44 +0200)]
configure.ac: do not use AM_SILENT_RULES for now, wait for automake 1.11 to reach most systems

15 years agosrc/Makefile.am: update a- and c-weighting filter filenames
Paul Brossier [Thu, 1 Oct 2009 13:02:22 +0000 (15:02 +0200)]
src/Makefile.am: update a- and c-weighting filter filenames

15 years agosrc/onset/onsetdetection.c: fix off by one error in complexdomain without complex.h
Paul Brossier [Thu, 1 Oct 2009 07:04:35 +0000 (09:04 +0200)]
src/onset/onsetdetection.c: fix off by one error in complexdomain without complex.h

15 years agoswig/aubio.i: update filter interface
Paul Brossier [Thu, 1 Oct 2009 06:24:00 +0000 (08:24 +0200)]
swig/aubio.i: update filter interface

15 years agotests/src: include stdio.h as needed, add HAVE_LIBSAMPLERATE
Paul Brossier [Thu, 1 Oct 2009 06:22:29 +0000 (08:22 +0200)]
tests/src: include stdio.h as needed, add HAVE_LIBSAMPLERATE

15 years agointerfaces/python: improve draft wrapper alpha_norm example, add some unit tests
Paul Brossier [Wed, 30 Sep 2009 15:42:13 +0000 (17:42 +0200)]
interfaces/python: improve draft wrapper alpha_norm example, add some unit tests

15 years agomoved cpp to interfaces/
Paul Brossier [Wed, 30 Sep 2009 01:54:34 +0000 (03:54 +0200)]
moved cpp to interfaces/

15 years agoadded new python interface draft, work in progress
Paul Brossier [Wed, 30 Sep 2009 01:46:35 +0000 (03:46 +0200)]
added new python interface draft, work in progress

15 years agocreated interfaces directory, moved java there and added new python draft interface
Paul Brossier [Wed, 30 Sep 2009 01:45:12 +0000 (03:45 +0200)]
created interfaces directory, moved java there and added new python draft interface

15 years agowscript: updated for waf r6742
Paul Brossier [Wed, 30 Sep 2009 00:44:52 +0000 (02:44 +0200)]
wscript: updated for waf r6742

15 years agotests/python/src/temporal/a_weighting.py: moved from adesign.py
Paul Brossier [Tue, 29 Sep 2009 23:24:56 +0000 (01:24 +0200)]
tests/python/src/temporal/a_weighting.py: moved from adesign.py

15 years agowscript: move test build rules from tests/src/wscript_build, use new unit test system
Paul Brossier [Tue, 29 Sep 2009 18:45:41 +0000 (20:45 +0200)]
wscript: move test build rules from tests/src/wscript_build, use new unit test system

15 years agosrc/temporal/filter.h: 80 characters maximum per line
Paul Brossier [Tue, 29 Sep 2009 18:14:26 +0000 (20:14 +0200)]
src/temporal/filter.h: 80 characters maximum per line

15 years agosrc/temporal/filter.{c,h}: indent, update copyright and license
Paul Brossier [Tue, 29 Sep 2009 18:08:10 +0000 (20:08 +0200)]
src/temporal/filter.{c,h}: indent, update copyright and license

15 years agosrc/temporal/filter.c: fix aubio_filter_do and aubio_filter_do_outplace
Paul Brossier [Tue, 29 Sep 2009 17:58:43 +0000 (19:58 +0200)]
src/temporal/filter.c: fix aubio_filter_do and aubio_filter_do_outplace

15 years agosrc/aubio_priv.h: add alias from AUBIO_ERR to AUBIO_ERROR
Paul Brossier [Tue, 29 Sep 2009 06:01:01 +0000 (08:01 +0200)]
src/aubio_priv.h: add alias from AUBIO_ERR to AUBIO_ERROR

15 years agosrc/aubio.h: update header names
Paul Brossier [Tue, 29 Sep 2009 06:00:12 +0000 (08:00 +0200)]
src/aubio.h: update header names

15 years agosrc/temporal: rename adesign/adsgn to a_weighting, idem for c_weighting
Paul Brossier [Tue, 29 Sep 2009 05:58:03 +0000 (07:58 +0200)]
src/temporal: rename adesign/adsgn to a_weighting, idem for c_weighting

15 years agosrc/temporal: revamp filter object, clarify API for A- and C-weighting filters,
Paul Brossier [Tue, 29 Sep 2009 05:43:12 +0000 (07:43 +0200)]
src/temporal: revamp filter object, clarify API for A- and C-weighting filters,
add coefficients for 8000 16000 22050 44100 96000 192000, improve documentation,
remove unneeded filter_priv.h, add A and C weighting tests.

15 years agosrc/spectral/spectral_centroid.h: protect with #ifndef _FOO_H and #ifdef __cplusplus
Paul Brossier [Mon, 28 Sep 2009 20:02:20 +0000 (22:02 +0200)]
src/spectral/spectral_centroid.h: protect with #ifndef _FOO_H and #ifdef __cplusplus

15 years agosrc/temporal/: avoid include in .h, protect with #ifndef _FOO_H and #ifdef __cplusplus
Paul Brossier [Mon, 28 Sep 2009 19:57:10 +0000 (21:57 +0200)]
src/temporal/: avoid include in .h, protect with #ifndef _FOO_H and #ifdef __cplusplus

15 years agosrc/pitch/pitchdetection.c: include filter.h
Paul Brossier [Mon, 28 Sep 2009 19:55:45 +0000 (21:55 +0200)]
src/pitch/pitchdetection.c: include filter.h

15 years agosrc/spectral/: remove include from filterbank_mel.h, modify mfcc.c to include filterb...
Paul Brossier [Mon, 28 Sep 2009 19:54:59 +0000 (21:54 +0200)]
src/spectral/: remove include from filterbank_mel.h, modify mfcc.c to include filterbank.h

15 years agosrc/vecutils.{c,h}: expand header and add documentation, add cvec_pow, fix SAFE_LOG...
Paul Brossier [Mon, 28 Sep 2009 19:27:10 +0000 (21:27 +0200)]
src/vecutils.{c,h}: expand header and add documentation, add cvec_pow, fix SAFE_LOG macros

15 years agosrc/spectral/filterbank.c: move log10 to mfcc.c
Paul Brossier [Mon, 28 Sep 2009 19:19:40 +0000 (21:19 +0200)]
src/spectral/filterbank.c: move log10 to mfcc.c

15 years agosrc/spectral/fft.c: add a warning if using fftw3 with aubio single
Paul Brossier [Mon, 28 Sep 2009 19:17:53 +0000 (21:17 +0200)]
src/spectral/fft.c: add a warning if using fftw3 with aubio single

15 years agosrc/aubio.h: include vecutils.h
Paul Brossier [Mon, 28 Sep 2009 19:16:09 +0000 (21:16 +0200)]
src/aubio.h: include vecutils.h

15 years agosrc/mathutils.h: move window types doc after ifdef cplusplus
Paul Brossier [Mon, 28 Sep 2009 19:11:41 +0000 (21:11 +0200)]
src/mathutils.h: move window types doc after ifdef cplusplus

15 years agosrc/vecutils.{c,h}: add a bunch of function to modify fvec and cvec, defined with...
Paul Brossier [Mon, 28 Sep 2009 19:09:22 +0000 (21:09 +0200)]
src/vecutils.{c,h}: add a bunch of function to modify fvec and cvec, defined with some magic macros

15 years agosrc/aubio_priv.h: define VERY_SMALL_NUMBER here, add KILL_DENORMAL and CEIL_DENORMAL...
Paul Brossier [Mon, 28 Sep 2009 18:58:03 +0000 (20:58 +0200)]
src/aubio_priv.h: define VERY_SMALL_NUMBER here, add KILL_DENORMAL and CEIL_DENORMAL macros, SAFE_LOG10 and SAFE_LOG

15 years agosrc/tempo/beattracking.c: avoid large backward off-beat errors, add define for debugging
Paul Brossier [Mon, 28 Sep 2009 18:12:02 +0000 (20:12 +0200)]
src/tempo/beattracking.c: avoid large backward off-beat errors, add define for debugging

15 years agosrc/tempo/beattracking.c: fix maxindex == winlen never reached condition, avoiding...
Paul Brossier [Sun, 27 Sep 2009 00:19:49 +0000 (02:19 +0200)]
src/tempo/beattracking.c: fix maxindex == winlen never reached condition, avoiding very large bpm values, add some debugging strings

15 years agoext/Makefile.am: update flags from SNDLIB to SNDFILE
Paul Brossier [Sat, 26 Sep 2009 16:34:54 +0000 (18:34 +0200)]
ext/Makefile.am: update flags from SNDLIB to SNDFILE

15 years agoconfigure.ac: enable silent rules
Paul Brossier [Sat, 26 Sep 2009 16:32:34 +0000 (18:32 +0200)]
configure.ac: enable silent rules

15 years agosrc/Makefile.am: add missing config.h
Paul Brossier [Sat, 26 Sep 2009 15:12:08 +0000 (17:12 +0200)]
src/Makefile.am: add missing config.h

15 years agoconfigure.ac: make libsamplerate optional
Paul Brossier [Sat, 26 Sep 2009 05:11:23 +0000 (07:11 +0200)]
configure.ac: make libsamplerate optional

15 years agodoc/Makefile.am: update list of source and generated manpages
Paul Brossier [Sat, 26 Sep 2009 05:10:15 +0000 (07:10 +0200)]
doc/Makefile.am: update list of source and generated manpages

15 years agoext/aubioext.h: add flags for libsndfile
Paul Brossier [Sat, 26 Sep 2009 04:59:32 +0000 (06:59 +0200)]
ext/aubioext.h: add flags for libsndfile

15 years agosrc/aubio.h: add HAVE_SAMPLERATE flags
Paul Brossier [Sat, 26 Sep 2009 04:51:19 +0000 (06:51 +0200)]
src/aubio.h: add HAVE_SAMPLERATE flags

15 years agosrc/temporal/resample.c: add flags
Paul Brossier [Sat, 26 Sep 2009 04:50:24 +0000 (06:50 +0200)]
src/temporal/resample.c: add flags

15 years agoswig/aubio.i: add flags for sndfile and samplerate
Paul Brossier [Sat, 26 Sep 2009 04:39:01 +0000 (06:39 +0200)]
swig/aubio.i: add flags for sndfile and samplerate

15 years agopython: finish getting rid of numarray
Paul Brossier [Sat, 26 Sep 2009 04:34:28 +0000 (06:34 +0200)]
python: finish getting rid of numarray

15 years agodoc/aubiomfcc.sgml: add brief manpage for aubiomfcc
Paul Brossier [Sat, 26 Sep 2009 02:46:41 +0000 (04:46 +0200)]
doc/aubiomfcc.sgml: add brief manpage for aubiomfcc

15 years agosrc/cvec.{c,h}: add cvec_set, cvec_zeros and cvec_ones
Paul Brossier [Sat, 26 Sep 2009 02:44:00 +0000 (04:44 +0200)]
src/cvec.{c,h}: add cvec_set, cvec_zeros and cvec_ones

15 years agodoc/aubiotrack.sgml: remove irrelevant threshold option
Paul Brossier [Sat, 26 Sep 2009 02:42:32 +0000 (04:42 +0200)]
doc/aubiotrack.sgml: remove irrelevant threshold option

15 years agopython/aubio/aubioclass.py: print filename of file that failed opening
Paul Brossier [Fri, 25 Sep 2009 23:55:27 +0000 (01:55 +0200)]
python/aubio/aubioclass.py: print filename of file that failed opening

15 years agopython/aubio: use Gnuplot.Data with_ keywords, with is a reserved keyword in python...
Paul Brossier [Fri, 25 Sep 2009 23:42:52 +0000 (01:42 +0200)]
python/aubio: use Gnuplot.Data with_ keywords, with is a reserved keyword in python 2.6 (debian #512622)

15 years agopython/aubio/gnuplot.py: use numpy, not numarray (debian #478438)
Paul Brossier [Fri, 25 Sep 2009 23:40:44 +0000 (01:40 +0200)]
python/aubio/gnuplot.py: use numpy, not numarray (debian #478438)

15 years agopython/aubio/task/notes.py: remove useless import of numarray (debian #478438)
Paul Brossier [Fri, 25 Sep 2009 23:10:55 +0000 (01:10 +0200)]
python/aubio/task/notes.py: remove useless import of numarray (debian #478438)

15 years agopython/aubio/task/onset.py: use numarray, not numpy (debian #478438)
Paul Brossier [Fri, 25 Sep 2009 23:09:50 +0000 (01:09 +0200)]
python/aubio/task/onset.py: use numarray, not numpy (debian #478438)

15 years agotests/python/localaubio.py: add some tricks to work with waf too
Paul Brossier [Fri, 25 Sep 2009 23:04:44 +0000 (01:04 +0200)]
tests/python/localaubio.py: add some tricks to work with waf too

15 years agosrc/spectral/fft.h: improve fftw types comments
Paul Brossier [Fri, 25 Sep 2009 22:38:19 +0000 (00:38 +0200)]
src/spectral/fft.h: improve fftw types comments

15 years agosrc/types.h: remove useless include and comment
Paul Brossier [Fri, 25 Sep 2009 22:33:05 +0000 (00:33 +0200)]
src/types.h: remove useless include and comment