Commit graph

3269 commits

Author SHA1 Message Date
Jean-Marc Valin
9987a3b574 Speech/music discrimination (not used for anything yet)
Also, reducing the VBR rate on panned mono
2012-07-13 14:50:34 -04:00
Jean-Marc Valin
73eb363e2c Cleanup, slightly changed analysis band layout, MFCC-like features 2012-07-13 14:50:34 -04:00
Jean-Marc Valin
e9c353a09b Cleans up the most ugly parts of the analysis code
Should be mostly usable now.
2012-07-13 14:50:34 -04:00
Jean-Marc Valin
1a2e7650f9 Adds an analysis function to control VBR
Conflicts:

	src/opus_encoder.c
2012-07-13 14:50:34 -04:00
Jean-Marc Valin
9cf62baafc Implements a better transient metric for VBR 2012-07-13 14:50:34 -04:00
Jean-Marc Valin
27aea5c902 Using a "pure L1" metric for tf analysis 2012-07-13 14:50:34 -04:00
Jean-Marc Valin
d4165179b7 Unconstrained VBR no longer attempt to hit an average rate 2012-07-13 14:50:34 -04:00
Gian-Carlo Pascutto
619aa8b268 Fix MSVC Debug builds, set missing dependencies for tests. 2012-07-13 10:04:59 +02:00
Gian-Carlo Pascutto
c0edd63737 Make tests work on MSVC.
Add project files for Opus tests, fixup test source for Win32.
2012-07-12 18:00:46 -04:00
Gian-Carlo Pascutto
f57be69f07 Remove non-existent ReadMe.txt references. 2012-07-12 18:00:29 -04:00
Gian-Carlo Pascutto
a7bdbf7602 Add opus_demo target and project files. 2012-07-12 18:00:08 -04:00
Gian-Carlo Pascutto
d2fa2edfd8 Make compiler settings consistent. Actually produce the libary, remove the opus_demo for now. 2012-07-12 17:59:26 -04:00
Gian-Carlo Pascutto
cb42735813 Add missing multistream sources to MSVC project file. 2012-07-12 17:58:52 -04:00
Jean-Marc Valin
bdf87401da RTP draft fix
This is what got submitted as version 01
2012-07-11 15:54:55 -04:00
Jean-Marc Valin
37d9e1348d Fixes a hybrid encoder bug on 24 kHz stereo input 2012-07-11 15:53:39 -04:00
Gregory Maxwell
03105f5b70 Make OPUS_SET_GAIN survive decode reset.
This is the less-surprising behavior and will hopefully
result in fewer corner case bugs (e.g. losing gain
after seeking). This commit also updates the documentation.
2012-07-11 02:33:55 -04:00
Gregory Maxwell
9881484dbd test_opus_api: Fix valgrind expectations broken by last commit.
The last commit changed some of the multistream tests to use a
dual-mono setup instead of a single-stereo setup. Some of the
accompanying explicit valgrind checks were still setup to
look for stereo streams.
2012-07-11 02:18:44 -04:00
Gregory Maxwell
28b41ae5ae Add OPUS_{GET|SET}_GAIN CTLs for adjusting output gain.
This CTL was requested by Nicolas George for FFmpeg.
2012-07-11 00:04:24 -04:00
Gregory Maxwell
c329045758 Make stack-protector check use AC_LINK_IFELSE. 2012-07-07 02:29:56 -04:00
Gregory Maxwell
27a0a5fa46 Avoid using win32 lrintf ASM on mingw even when config.h is broken. 2012-07-07 02:01:44 -04:00
Timothy B. Terriberry
a7df963437 Typo fix.
Thanks to Ron Lee for pointing it out.
2012-07-05 14:26:02 -07:00
Timothy B. Terriberry
a2b2e0b88a Initial revision of Ogg Opus draft.
Adapted from http://wiki.xiph.org/OggOpus
2012-07-05 08:34:15 -07:00
Gregory Maxwell
1616230245 Add configure option to disable stack protector. 2012-06-28 20:22:26 -04:00
Gregory Maxwell
0c9060781c Dos2unix, trailing whitespace on draft-spittka-payload-rtp-opus.xml. 2012-06-19 09:11:40 -04:00
Jean-Marc Valin
25aec47575 Adds a copy of the RTP payload XML 2012-06-14 10:56:12 -04:00
Gregory Maxwell
de9b437eb2 Add -fixed to the version string & clarify that fixed disables float. 2012-06-11 19:19:55 -04:00
Ron
9a89d56d46 Include the doc dir in DIST_SUBDIRS instead of EXTRA_DIST
And explicitly specify what we want included in EXTRA_DIST of doc/Makefile.am,
otherwise make dist picks up whatever random junk you might have laying around
in that dir at the time you run it.

Tweak the top level delegation targets, because this means distclean will be
run in the doc dir by default now without our help.
2012-06-11 15:33:57 -04:00
Jean-Marc Valin
99aaff5233 opus_compare.m was outdated 2012-06-11 14:37:44 -04:00
Ron
783ecbff0c Don't bark scary warnings at compile time about no doxygen
We already report whether or not the docs will be built in the summary box
at the end of the configure run.
2012-06-11 14:24:18 -04:00
Gregory Maxwell
91b56f6542 Fixup paths in doc/ 2012-06-11 13:33:35 -04:00
Gregory Maxwell
595b334f26 Pretty up the HTML doxygen output. 2012-06-11 01:42:32 -04:00
Gregory Maxwell
daa14598eb Add brief descriptions to the encode/decode groups to avoid weird autobreif strings. 2012-06-10 21:30:01 -04:00
Gregory Maxwell
1f65ce89b0 Correct documentation in opus_custom.h. 2012-06-10 21:15:02 -04:00
Gregory Maxwell
2967d4e220 Remove unnecessary and not-very-portable opus_demo case insensitivity. 2012-06-04 16:47:25 -04:00
Gregory Maxwell
daa416700c Fix doxygen docs wrt OPUS_WARN_UNUSED_RESULT and OPUS_ARG_NONNULL.
Also get the subname rigtht.
2012-06-02 23:17:29 -04:00
Gregory Maxwell
c64f4a4265 Update headers to cause warnings on unused returns and null args.
In places where an ignored return or a null-arg is a sure indication
of a bug add the GCC warning attributes. The null arg annotation
is not enable for Opus itself because it will cause the compiler
to optimize out some null checks. I don't trust our callers
quite that much.
2012-06-01 15:58:17 -04:00
root
bcbf40b601 modified the Visual Studio 2010 projects and solution file to include a x64 configuration. modified the output folders such that the architecture is included in the path (so you get Release64, Debug32, etc.) so you can have all build types in one tree. 2012-06-01 14:26:01 -04:00
Gregory Maxwell
f99e3292e7 Avoid an inconsequential memory leak in tests/test_opus_decode.c 2012-06-01 08:47:25 -04:00
Gregory Maxwell
d6737c8522 Avoid an inconsequential memory leak in tests/test_opus_encode.c. 2012-06-01 00:52:51 -04:00
Jean-Marc Valin
bc1683d983 Seems like using dllimport on Windows wasn't useful
This was a problem for static builds
2012-05-31 11:50:33 -04:00
Gregory Maxwell
9ce27c564e Fix for building mingw32 apps. 2012-05-30 14:42:29 -04:00
Ralph Giles
d8f1c7093c Advertise the static library for uninstalled builds.
It's less surprising for people using the -uninstalled
pkg-config file if we advertise the static library rather
than the shared build. That way the executables work without
having to hack the same location into LD_LIBRARY_PATH, and
the resulting binaries are easier to distribute.

For this to actually work with opus-tools, the -fPIE had
to be turned off, as it was in 1d128b4d5c6f. Support
for static PIE builds would be restored if we compiled
libopus.a with -fPIC.

Also remove the private header locations. These are no
longer required to declare any of the public api.
2012-05-30 14:19:01 -04:00
Jean-Marc Valin
66ac10210c Fixes some cases where MIN/MAX macros result in duplicated function calls
Also enforces an upper bound of 510 kb/s even for frames that are
smaller than 20 ms. This reduces waste for high bitrate VBR.
2012-05-30 14:04:51 -04:00
Timothy B. Terriberry
d09dc7c7a2 Fix opus-uninstalled.pc.
With these changes, opus-tools can actually build using it.
2012-05-28 23:44:42 -04:00
Ralph Giles
64c2dd7d8e Add extern "C" protection to opus_multistream.h.
Unlike the other headers, opus_multistream.h didn't declare
itself to be C code, causing confusing errors when the caller
tries to use the functions from C++.
2012-05-23 16:33:14 -07:00
Gregory Maxwell
e052947f18 Use 'frame' instead of 'signal', take out stdlib.h in silk/.
On MacOS, stdlib.h ends up including sys/signal.h, generating
warnings about the local variables called 'signal' shadowing
the global symbol signal(3).

This was originally done in 86476906 but it missed some use
of 'signal' in prototypes in headers where it didn't cause
warnings. Later the prototypes were moved around and the
warnings came back.

This also cleans up some cases in where stdlib.h was used
but shouldn't be required.
2012-05-23 10:28:36 -04:00
Ron
b6512b444d Enable building just the library (or just the docs)
Both are still built and installed by default though.
2012-05-21 23:16:39 +09:30
Ron
b2b0391e56 Actually install the documentation with make install
Instead of just its build stamp :)
2012-05-21 23:14:50 +09:30
Gregory Maxwell
d445f02f65 Tweak doxygen input so that the manpage names won't conflict. 2012-05-20 19:33:38 -04:00
Jean-Marc Valin
24ed465e71 int vs opus_int32 consistency 2012-05-18 15:14:17 -04:00