summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMonty <xiphmont@xiph.org>2000-05-04 06:14:51 +0000
committerMonty <xiphmont@xiph.org>2000-05-04 06:14:51 +0000
commit633198c6ca15aef16da0147dae3d1f135ca7af83 (patch)
tree04bd229668f4698da595a3f68cf21fd5537feb1d
parentf258221ec2e0b127c91673516485878a2a2e5d7a (diff)
downloadlibvorbis-git-633198c6ca15aef16da0147dae3d1f135ca7af83.tar.gz
Incremental update; added noise/tone masking, more work on masking.xcf
svn path=/branches/new_acoustics_pending_merge_20000328/vorbis/; revision=359
-rw-r--r--doc/masking.xcfbin0 -> 6405537 bytes
-rw-r--r--include/vorbis/codec.h34
-rw-r--r--include/vorbis/modes.h48
3 files changed, 39 insertions, 43 deletions
diff --git a/doc/masking.xcf b/doc/masking.xcf
new file mode 100644
index 00000000..23541ed4
--- /dev/null
+++ b/doc/masking.xcf
Binary files differ
diff --git a/include/vorbis/codec.h b/include/vorbis/codec.h
index ede1859a..52fd8044 100644
--- a/include/vorbis/codec.h
+++ b/include/vorbis/codec.h
@@ -12,7 +12,7 @@
********************************************************************
function: libvorbis codec headers
- last mod: $Id: codec.h,v 1.10.2.4 2000/04/21 16:35:38 xiphmont Exp $
+ last mod: $Id: codec.h,v 1.10.2.5 2000/05/04 06:14:50 xiphmont Exp $
********************************************************************/
@@ -45,28 +45,30 @@ typedef struct {
/* psychoacoustic setup ********************************************/
typedef struct vorbis_info_psy{
- int curve_fit_iterations;
int athp;
int decayp;
-
+ int smoothp;
int noisefitp;
int noisefit_subblock;
double noisefit_threshdB;
double ath_att;
-
- double curveatt_250Hz[5];
- double curveatt_500Hz[5];
- double curveatt_1000Hz[5];
- double curveatt_2000Hz[5];
- double curveatt_4000Hz[5];
- double curveatt_8000Hz[5];
-
- int peakattp;
- double peakatt[6][5]; /* 250,500,1000,2000,4000,8000 Hz @
- 20, 40 60, 80, 100 dB */
- double peakpre;
- double peakpost;
+
+ int tonemaskp;
+ double toneatt_250Hz[5];
+ double toneatt_500Hz[5];
+ double toneatt_1000Hz[5];
+ double toneatt_2000Hz[5];
+ double toneatt_4000Hz[5];
+ double toneatt_8000Hz[5];
+
+ int noisemaskp;
+ double noiseatt_250Hz[5];
+ double noiseatt_500Hz[5];
+ double noiseatt_1000Hz[5];
+ double noiseatt_2000Hz[5];
+ double noiseatt_4000Hz[5];
+ double noiseatt_8000Hz[5];
double max_curve_dB;
diff --git a/include/vorbis/modes.h b/include/vorbis/modes.h
index 687a0a61..d35fcd75 100644
--- a/include/vorbis/modes.h
+++ b/include/vorbis/modes.h
@@ -12,7 +12,7 @@
********************************************************************
function: predefined encoding modes
- last mod: $Id: modes.h,v 1.9.2.6 2000/04/21 16:35:38 xiphmont Exp $
+ last mod: $Id: modes.h,v 1.9.2.7 2000/05/04 06:14:51 xiphmont Exp $
********************************************************************/
@@ -40,35 +40,29 @@
/* A farily high quality setting mix */
static vorbis_info_psy _psy_set0={
- 1, /* iterations to fit */
- 1, /* athp */
- 1, /* decayp */
-
- 1,8,4.,
+ 1,/*athp*/
+ 1,/*decayp*/
+ 1,/*smoothp*/
+ 1,8,0.,
-130.,
- {-35.,-40.,-60.,-80.,-85.},
- {-35.,-40.,-60.,-80.,-100.},
- {-35.,-40.,-60.,-80.,-100.},
- {-35.,-40.,-60.,-80.,-100.},
- {-35.,-40.,-60.,-80.,-100.},
- {-35.,-40.,-60.,-80.,-100.},
-
- 1,
- {{-6.,-8.,-12.,-16.,-18.},
- {-6.,-8.,-12.,-16.,-18.},
- {-6.,-8.,-12.,-16.,-18.},
- {-6.,-8.,-12.,-16.,-20.},
- {-6.,-8.,-12.,-16.,-20.},
- {-6.,-8.,-10.,-14.,-18.},},
- /*{{-99,-99,-99,-99,-99},
- {-99,-99,-99,-99,-99},
- {-99,-99,-99,-99,-99},
- {-99,-99,-99,-99,-99},
- {-99,-99,-99,-99,-99},
- {-99,-99,-99,-99,-99}},*/
- -80.,-40.,
+ 1,/* tonemaskp*/
+ {-35.,-40.,-60.,-80.,-80.}, /* remember that el 4 is an 80 dB curve, not 100 */
+ {-35.,-40.,-60.,-80.,-95.},
+ {-35.,-40.,-60.,-80.,-95.},
+ {-35.,-40.,-60.,-80.,-95.},
+ {-35.,-40.,-60.,-80.,-95.},
+ {-65.,-60.,-60.,-80.,-95.}, /* remember that el 1 is a 60 dB curve, not 40 */
+
+ 1,/*noisemaskp*/
+ {-100.,-100.,-100.,-200.,-200.}, /* this is the 500 Hz curve, which
+ is too wrong to work */
+ {-60.,-60.,-60.,-80.,-80.},
+ {-60.,-60.,-60.,-80.,-80.},
+ {-60.,-60.,-60.,-80.,-80.},
+ {-60.,-60.,-60.,-80.,-80.},
+ {-50.,-55.,-60.,-80.,-80.},
110.,