Commit bec669ca authored by j's avatar j

import "aoTuV" beta5.5

 * based on libvorbis 1.2.0
 * The noise control of the Impulse block was expanded. 
   This is effective with the outstanding sample of the pre-echo.
 * The pre-echo reduction code came to work at a lower bit rate.
 * Noise Normalization was reviewed. As a result, the bug is revised.
 * The detailed tuning was done again.


svn path=/branches/vorbis-aotuv/; revision=14647
parent 6fffd238
libvorbis 1.2.0 (2007-07-25) -- "Xiph.Org libVorbis I 20070622"
* new ov_fopen() convenience call that avoids the common
stdio conflicts with ov_open() and MSVC runtimes.
* libvorbisfile now handles multiplexed streams
* improve robustness to corrupt input streams
* fix a minor encoder bug
* updated RTP draft
* build system updates
* minor corrections to the specification
libvorbis 1.1.2 (2005-11-27) -- "Xiph.Org libVorbis I 20050304" libvorbis 1.1.2 (2005-11-27) -- "Xiph.Org libVorbis I 20050304"
* fix a serious encoder bug with gcc 4 optimized builds * fix a serious encoder bug with gcc 4 optimized builds
......
aoTuV - Copyright (c) 2003-2006 Aoyumi aoTuV - Copyright (c) 2003-2008 Aoyumi
libvorbis - Copyright (c) 2002-2005 Xiph.org Foundation libvorbis - Copyright (c) 2002-2007 Xiph.org Foundation
Redistribution and use in source and binary forms, with or without Redistribution and use in source and binary forms, with or without
modification, are permitted provided that the following conditions modification, are permitted provided that the following conditions
......
## Process this file with automake to produce Makefile.in ## Process this file with automake to produce Makefile.in
AUTOMAKE_OPTIONS = foreign dist-zip AUTOMAKE_OPTIONS = 1.6 foreign dist-zip dist-bzip2
SUBDIRS = lib include doc examples vq SUBDIRS = lib include doc examples vq
...@@ -10,11 +10,8 @@ m4data_DATA = vorbis.m4 ...@@ -10,11 +10,8 @@ m4data_DATA = vorbis.m4
pkgconfigdir = $(libdir)/pkgconfig pkgconfigdir = $(libdir)/pkgconfig
pkgconfig_DATA = vorbis.pc vorbisenc.pc vorbisfile.pc pkgconfig_DATA = vorbis.pc vorbisenc.pc vorbisfile.pc
# we include the whole debian/ dir in EXTRA_DIST because there's a problem
# with autotools and HFS+ MacOSX file systems that caused debian/Makefile.am
# to pick up on the lowercase changelog file and add ChangeLog to DIST_COMMON
# because of it, breaking make dist. This works just as well.
EXTRA_DIST = \ EXTRA_DIST = \
CHANGES COPYING \
todo.txt autogen.sh \ todo.txt autogen.sh \
libvorbis.spec libvorbis.spec.in \ libvorbis.spec libvorbis.spec.in \
vorbis.m4 \ vorbis.m4 \
...@@ -22,17 +19,20 @@ EXTRA_DIST = \ ...@@ -22,17 +19,20 @@ EXTRA_DIST = \
vorbis-uninstalled.pc.in \ vorbis-uninstalled.pc.in \
vorbisenc-uninstalled.pc.in \ vorbisenc-uninstalled.pc.in \
vorbisfile-uninstalled.pc.in \ vorbisfile-uninstalled.pc.in \
debian macos macosx win32 doc examples symbian vq \
macos macosx win32
DISTCHECK_CONFIGURE_FLAGS = --enable-docs DISTCHECK_CONFIGURE_FLAGS = --enable-docs
dist-hook: dist-hook:
rm -rf `find $(distdir)/debian -name .svn` for item in $(EXTRA_DIST); do \
rm -rf `find $(distdir)/debian -name "Makefile*"` if test -d $$item; then \
rm -rf `find $(distdir)/macos -name .svn` echo -n "cleaning $$item dir for distribution..."; \
rm -rf `find $(distdir)/macosx -name .svn` rm -rf `find $(distdir)/$$item -name .svn`; \
rm -rf `find $(distdir)/win32 -name .svn` echo "OK"; \
fi; \
done
debug: debug:
$(MAKE) all CFLAGS="@DEBUG@" $(MAKE) all CFLAGS="@DEBUG@"
......
...@@ -5,7 +5,7 @@ ...@@ -5,7 +5,7 @@
* GOVERNED BY A BSD-STYLE SOURCE LICENSE INCLUDED WITH THIS SOURCE * * GOVERNED BY A BSD-STYLE SOURCE LICENSE INCLUDED WITH THIS SOURCE *
* IN 'COPYING'. PLEASE READ THESE TERMS BEFORE DISTRIBUTING. * * IN 'COPYING'. PLEASE READ THESE TERMS BEFORE DISTRIBUTING. *
* * * *
* THE OggVorbis SOURCE CODE IS (C) COPYRIGHT 1994-2004 * * THE OggVorbis SOURCE CODE IS (C) COPYRIGHT 1994-2007 *
* by the Xiph.org Foundation, http://www.xiph.org/ * * by the Xiph.org Foundation, http://www.xiph.org/ *
* * * *
******************************************************************** ********************************************************************
......
aoTuV Beta 5 aoTuV Beta 5.5
"aoTuV" tunes up Xiph.Org's libvorbis uniquely. "aoTuV" tunes up Xiph.Org's libvorbis uniquely.
A license is taken as "BSD-style license" as well as original libvorbis. A license is taken as "BSD-style license" as well as original libvorbis.
...@@ -14,8 +14,8 @@ A license is taken as "BSD-style license" as well as original libvorbis. ...@@ -14,8 +14,8 @@ A license is taken as "BSD-style license" as well as original libvorbis.
aoTuV based on <Xiph.Org libvorbis> aoTuV based on <Xiph.Org libvorbis>
Copyright (c) 2002-2005 Xiph.Org Foundation Copyright (c) 2002-2007 Xiph.Org Foundation
Copyright (c) 2003-2006 Aoyumi Copyright (c) 2003-2008 Aoyumi
AUTHOR : aoyumi <aoyumi@gmail.com> AUTHOR : aoyumi <aoyumi@gmail.com>
aoTuV beta5.5 technical information
The differences from the aoTuV beta 5...
1. The frequency domain width of M6 was revised.
2. For q-1/-2, a pre-echo reduction code was applied (M3). In addition,
the M3 code was improved.
3. The floor setup parameters in the low bit-rate was changed.
4. The part including bug of noise normalization was rewritten.
5. libvorbis 1.2.0 were merged. Furthermore, a revision of Bug #300 and
#1229 was applied.
6. The ATH curve of the high frequency area (more than 32kHz) was revised.
...and I tune up many parameters.
2008/03/30
Aoyumi
----------------------------------------------------------------------------
aoTuV beta5 technical information aoTuV beta5 technical information
...@@ -17,7 +44,8 @@ The differences from the aoTuV beta 4.51... ...@@ -17,7 +44,8 @@ The differences from the aoTuV beta 4.51...
5. In order to decrease artifact by collapse of audio energy, noise 5. In order to decrease artifact by collapse of audio energy, noise
normalization processing of point stereo was extended. [32/44.1/48kHz only] normalization processing of point stereo was extended. [32/44.1/48kHz only]
6. The threshold of channel coupling (lossless <=> point) is changed dynamically. This is a method based on a certain idea. [M6] 6. The threshold of channel coupling (lossless <=> point) is changed
dynamically. This is a method based on a certain idea. [M6]
...and I tune up many parameters. ...and I tune up many parameters.
......
...@@ -20,19 +20,71 @@ echo "checking for autoconf... " ...@@ -20,19 +20,71 @@ echo "checking for autoconf... "
DIE=1 DIE=1
} }
echo "checking for automake... " VERSIONGREP="sed -e s/.*[^0-9\.]\([0-9][0-9]*\.[0-9][0-9]*\).*/\1/"
(automake --version) < /dev/null > /dev/null 2>&1 || { VERSIONMKMAJ="sed -e s/\([0-9][0-9]*\)[^0-9].*/\\1/"
VERSIONMKMIN="sed -e s/.*[0-9][0-9]*\.//"
# do we need automake?
if test -r Makefile.am; then
AM_OPTIONS=`fgrep AUTOMAKE_OPTIONS Makefile.am`
AM_NEEDED=`echo $AM_OPTIONS | $VERSIONGREP`
if test x"$AM_NEEDED" = "x$AM_OPTIONS"; then
AM_NEEDED=""
fi
if test -z $AM_NEEDED; then
echo -n "checking for automake... "
AUTOMAKE=automake
ACLOCAL=aclocal
if ($AUTOMAKE --version < /dev/null > /dev/null 2>&1); then
echo "yes"
else
echo "no"
AUTOMAKE=
fi
else
echo -n "checking for automake $AM_NEEDED or later... "
majneeded=`echo $AM_NEEDED | $VERSIONMKMAJ`
minneeded=`echo $AM_NEEDED | $VERSIONMKMIN`
for am in automake-$AM_NEEDED automake$AM_NEEDED \
automake automake-1.7 automake-1.8 automake-1.9 automake-1.10; do
($am --version < /dev/null > /dev/null 2>&1) || continue
ver=`$am --version < /dev/null | head -n 1 | $VERSIONGREP`
maj=`echo $ver | $VERSIONMKMAJ`
min=`echo $ver | $VERSIONMKMIN`
if test $maj -eq $majneeded -a $min -ge $minneeded; then
AUTOMAKE=$am
echo $AUTOMAKE
break
fi
done
test -z $AUTOMAKE && echo "no"
echo -n "checking for aclocal $AM_NEEDED or later... "
for ac in aclocal-$AM_NEEDED aclocal$AM_NEEDED \
aclocal aclocal-1.7 aclocal-1.8 aclocal-1.9 aclocal-1.10; do
($ac --version < /dev/null > /dev/null 2>&1) || continue
ver=`$ac --version < /dev/null | head -n 1 | $VERSIONGREP`
maj=`echo $ver | $VERSIONMKMAJ`
min=`echo $ver | $VERSIONMKMIN`
if test $maj -eq $majneeded -a $min -ge $minneeded; then
ACLOCAL=$ac
echo $ACLOCAL
break
fi
done
test -z $ACLOCAL && echo "no"
fi
test -z $AUTOMAKE || test -z $ACLOCAL && {
echo echo
echo "You must have automake installed to compile $package." echo "You must have automake installed to compile $package."
echo "Download the appropriate package for your system," echo "Download the appropriate package for your distribution,"
echo "or get the source from one of the GNU ftp sites" echo "or get the source tarball at ftp://ftp.gnu.org/pub/gnu/"
echo "listed in http://www.gnu.org/order/ftp.html" exit 1
DIE=1 }
} fi
echo -n "checking for libtool... " echo -n "checking for libtool... "
for LIBTOOLIZE in libtoolize glibtoolize nope; do for LIBTOOLIZE in libtoolize glibtoolize nope; do
(type $LIBTOOLIZE) > /dev/null 2>&1 && break ($LIBTOOLIZE --version) < /dev/null > /dev/null 2>&1 && break
done done
if test x$LIBTOOLIZE = xnope; then if test x$LIBTOOLIZE = xnope; then
echo "nope." echo "nope."
...@@ -60,14 +112,14 @@ fi ...@@ -60,14 +112,14 @@ fi
echo "Generating configuration files for $package, please wait...." echo "Generating configuration files for $package, please wait...."
echo " aclocal $ACLOCAL_FLAGS" echo " $ACLOCAL $ACLOCAL_FLAGS"
aclocal $ACLOCAL_FLAGS || exit 1 $ACLOCAL $ACLOCAL_FLAGS || exit 1
echo " autoheader"
autoheader || exit 1
echo " $LIBTOOLIZE --automake" echo " $LIBTOOLIZE --automake"
$LIBTOOLIZE --automake || exit 1 $LIBTOOLIZE --automake || exit 1
echo " automake --add-missing $AUTOMAKE_FLAGS" echo " autoheader"
automake --add-missing $AUTOMAKE_FLAGS || exit 1 autoheader || exit 1
echo " $AUTOMAKE --add-missing $AUTOMAKE_FLAGS"
$AUTOMAKE --add-missing $AUTOMAKE_FLAGS || exit 1
echo " autoconf" echo " autoconf"
autoconf || exit 1 autoconf || exit 1
......
...@@ -11,19 +11,19 @@ AC_CANONICAL_TARGET ...@@ -11,19 +11,19 @@ AC_CANONICAL_TARGET
AM_CONFIG_HEADER([config.h]) AM_CONFIG_HEADER([config.h])
AM_INIT_AUTOMAKE(libvorbis,1.1.2) AM_INIT_AUTOMAKE(libvorbis,1.2.0)
AM_MAINTAINER_MODE AM_MAINTAINER_MODE
dnl Library versioning dnl Library versioning
V_LIB_CURRENT=3 V_LIB_CURRENT=4
V_LIB_REVISION=1 V_LIB_REVISION=0
V_LIB_AGE=3 V_LIB_AGE=4
VF_LIB_CURRENT=4 VF_LIB_CURRENT=5
VF_LIB_REVISION=1 VF_LIB_REVISION=0
VF_LIB_AGE=1 VF_LIB_AGE=2
VE_LIB_CURRENT=2 VE_LIB_CURRENT=2
VE_LIB_REVISION=2 VE_LIB_REVISION=3
VE_LIB_AGE=0 VE_LIB_AGE=0
AC_SUBST(V_LIB_CURRENT) AC_SUBST(V_LIB_CURRENT)
AC_SUBST(V_LIB_REVISION) AC_SUBST(V_LIB_REVISION)
......
...@@ -6,7 +6,8 @@ docdir = $(datadir)/doc/$(PACKAGE)-$(VERSION) ...@@ -6,7 +6,8 @@ docdir = $(datadir)/doc/$(PACKAGE)-$(VERSION)
### all of the static docs, commited to SVN and included as is ### all of the static docs, commited to SVN and included as is
static_docs = \ static_docs = \
draft-kerr-avt-vorbis-rtp-03.txt \ draft-ietf-avt-rtp-vorbis-06.xml \
draft-ietf-avt-rtp-vorbis-06.txt \
eightphase.png \ eightphase.png \
evenlsp.png \ evenlsp.png \
floor1_inverse_dB_table.html \ floor1_inverse_dB_table.html \
...@@ -100,7 +101,7 @@ $(BUILDDIR)/Vorbis_I_spec.xml: $(doc_sources) ...@@ -100,7 +101,7 @@ $(BUILDDIR)/Vorbis_I_spec.xml: $(doc_sources)
@mkdir -p $(BUILDDIR) @mkdir -p $(BUILDDIR)
@for file in $(doc_sources); do cp $(srcdir)/$$file $(BUILDDIR); done @for file in $(doc_sources); do cp $(srcdir)/$$file $(BUILDDIR); done
# translate the draft rtp.txt to .xml in the BUILDDIR # translate the draft rtp.txt to .xml in the BUILDDIR
$(BUILDDIR)/draft-rtp.xml: draft-kerr-avt-vorbis-rtp-03.txt $(BUILDDIR)/draft-rtp.xml: draft-ietf-avt-rtp-vorbis-05.txt
cat $< | sed 's/ //g' > $@ cat $< | sed 's/ //g' > $@
# cat $< | sed 's/ //g' | sed 's/</\&lt;/g' | sed 's/>/\&gt;/g' > $@ # cat $< | sed 's/ //g' | sed 's/</\&lt;/g' | sed 's/>/\&gt;/g' > $@
...@@ -112,15 +113,13 @@ Vorbis_I_spec.html: $(SPEC_PNG_BUILD) $(BUILDDIR)/Vorbis_I_spec.xml ...@@ -112,15 +113,13 @@ Vorbis_I_spec.html: $(SPEC_PNG_BUILD) $(BUILDDIR)/Vorbis_I_spec.xml
Vorbis_I_spec.fo: $(BUILDDIR)/Vorbis_I_spec.xml Vorbis_I_spec.fo: $(BUILDDIR)/Vorbis_I_spec.xml
cd build; xsltproc --xinclude --output $@ spec-fo.xsl Vorbis_I_spec.xml && mv $@ .. cd build; xsltproc --xinclude --output $@ spec-fo.xsl Vorbis_I_spec.xml && mv $@ ..
# we add the two newlines to pdfxmltex because on a number of Fedora systems # we add the two newlines to pdfxmltex because this entire XML
# tex prompts for input complaining about something; # toolchain is built from wishful thinking and bonghits and the
# and surprisingly there's no way to tell tex to ignore that # default supplied passivetex config files are buggy.
# also, --interaction doesn't seem to actually do anything different
# if you change it
Vorbis_I_spec.pdf: Vorbis_I_spec.fo $(SPEC_PNG_BUILD) $(SPEC_PDF_BUILD) Vorbis_I_spec.pdf: Vorbis_I_spec.fo $(SPEC_PNG_BUILD) $(SPEC_PDF_BUILD)
cp $< build/spec.fo # work around a passivetex bug cp $< build/spec.fo # work around a passivetex bug
cd build; echo -e -n "\n\n" | pdfxmltex --interaction nonstopmode spec.fo -cd build; echo -e -n "\n\n" | pdfxmltex spec.fo
cd build; echo -e -n "\n\n" | pdfxmltex --interaction nonstopmode spec.fo -cd build; echo -e -n "\n\n" | pdfxmltex spec.fo
rm build/spec.fo rm build/spec.fo
mv build/spec.pdf $@ mv build/spec.pdf $@
else else
......
This diff is collapsed.
No preview for this file type
This diff is collapsed.
This diff is collapsed.
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html> <html>
<head> <head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-15"/> <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-15"/>
<title>Ogg Vorbis Documentation</title> <title>Ogg Vorbis Documentation</title>
<style type="text/css"> <style type="text/css">
body { body {
margin: 0 18px 0 18px; margin: 0 18px 0 18px;
padding-bottom: 30px; padding-bottom: 30px;
font-family: Verdana, Arial, Helvetica, sans-serif; font-family: Verdana, Arial, Helvetica, sans-serif;
color: #333333; color: #333333;
font-size: .8em; font-size: .8em;
} }
a { a {
color: #3366cc; color: #3366cc;
} }
img { img {
border: 0; border: 0;
} }
#xiphlogo { #xiphlogo {
margin: 30px 0 16px 0; margin: 30px 0 16px 0;
} }
#content p { #content p {
line-height: 1.4; line-height: 1.4;
} }
h1, h1 a, h2, h2 a, h3, h3 a { h1, h1 a, h2, h2 a, h3, h3 a {
font-weight: bold; font-weight: bold;
color: #ff9900; color: #ff9900;
margin: 1.3em 0 8px 0; margin: 1.3em 0 8px 0;
} }
h1 { h1 {
font-size: 1.3em; font-size: 1.3em;
} }
h2 { h2 {
font-size: 1.2em; font-size: 1.2em;
} }
h3 { h3 {
font-size: 1.1em; font-size: 1.1em;
} }
li { li {
line-height: 1.4; line-height: 1.4;
} }
#copyright { #copyright {
margin-top: 30px; margin-top: 30px;
line-height: 1.5em; line-height: 1.5em;
text-align: center; text-align: center;
font-size: .8em; font-size: .8em;
color: #888888; color: #888888;
clear: both; clear: both;
} }
</style> </style>
</head> </head>
<body> <body>
<div id="xiphlogo"> <div id="xiphlogo">
<a href="http://www.xiph.org/"><img src="fish_xiph_org.png" alt="Fish Logo and Xiph.org"/></a> <a href="http://www.xiph.org/"><img src="fish_xiph_org.png" alt="Fish Logo and Xiph.org"/></a>
</div> </div>
<h1>Ogg Vorbis I format specification: floor1_inverse_dB_table</h1> <h1>Ogg Vorbis I format specification: floor1_inverse_dB_table</h1>
<p>The vector <tt>[floor1_inverse_dB_table]</tt> is a 256 element static <p>The vector <tt>[floor1_inverse_dB_table]</tt> is a 256 element static
lookup table consiting of the following values (read left to right lookup table consiting of the following values (read left to right
then top to bottom):</p> then top to bottom):</p>
<pre> <pre>
1.0649863e-07, 1.1341951e-07, 1.2079015e-07, 1.2863978e-07, 1.0649863e-07, 1.1341951e-07, 1.2079015e-07, 1.2863978e-07,
1.3699951e-07, 1.4590251e-07, 1.5538408e-07, 1.6548181e-07, 1.3699951e-07, 1.4590251e-07, 1.5538408e-07, 1.6548181e-07,
1.7623575e-07, 1.8768855e-07, 1.9988561e-07, 2.1287530e-07, 1.7623575e-07, 1.8768855e-07, 1.9988561e-07, 2.1287530e-07,
2.2670913e-07, 2.4144197e-07, 2.5713223e-07, 2.7384213e-07, 2.2670913e-07, 2.4144197e-07, 2.5713223e-07, 2.7384213e-07,
2.9163793e-07, 3.1059021e-07, 3.3077411e-07, 3.5226968e-07, 2.9163793e-07, 3.1059021e-07, 3.3077411e-07, 3.5226968e-07,
3.7516214e-07, 3.9954229e-07, 4.2550680e-07, 4.5315863e-07, 3.7516214e-07, 3.9954229e-07, 4.2550680e-07, 4.5315863e-07,
4.8260743e-07, 5.1396998e-07, 5.4737065e-07, 5.8294187e-07, 4.8260743e-07, 5.1396998e-07, 5.4737065e-07, 5.8294187e-07,
6.2082472e-07, 6.6116941e-07, 7.0413592e-07, 7.4989464e-07, 6.2082472e-07, 6.6116941e-07, 7.0413592e-07, 7.4989464e-07,
7.9862701e-07, 8.5052630e-07, 9.0579828e-07, 9.6466216e-07, 7.9862701e-07, 8.5052630e-07, 9.0579828e-07, 9.6466216e-07,
1.0273513e-06, 1.0941144e-06, 1.1652161e-06, 1.2409384e-06, 1.0273513e-06, 1.0941144e-06, 1.1652161e-06, 1.2409384e-06,
1.3215816e-06, 1.4074654e-06, 1.4989305e-06, 1.5963394e-06, 1.3215816e-06, 1.4074654e-06, 1.4989305e-06, 1.5963394e-06,
1.7000785e-06, 1.8105592e-06, 1.9282195e-06, 2.0535261e-06, 1.7000785e-06, 1.8105592e-06, 1.9282195e-06, 2.0535261e-06,
2.1869758e-06, 2.3290978e-06, 2.4804557e-06, 2.6416497e-06, 2.1869758e-06, 2.3290978e-06, 2.4804557e-06, 2.6416497e-06,
2.8133190e-06, 2.9961443e-06, 3.1908506e-06, 3.3982101e-06, 2.8133190e-06, 2.9961443e-06, 3.1908506e-06, 3.3982101e-06,
3.6190449e-06, 3.8542308e-06, 4.1047004e-06, 4.3714470e-06, 3.6190449e-06, 3.8542308e-06, 4.1047004e-06, 4.3714470e-06,
4.6555282e-06, 4.9580707e-06, 5.2802740e-06, 5.6234160e-06,