Commit graph

3372 commits

Author SHA1 Message Date
Mark Harris
4feb0dff99 Silence clang -Wcast-align warnings 2015-08-07 13:25:02 -04:00
Mark Harris
348e6946c1 Eliminate signed division overhead in align()
Signed-off-by: Timothy B. Terriberry <tterribe@xiph.org>
2015-08-04 17:56:13 -07:00
Jonathan Lennox
ef86768677 Simplify and generalize implementation of align(). Should be very efficient on sensible platforms, and correct everywhere. 2015-08-04 09:10:06 -07:00
Jean-Marc Valin
24539c4d7b Make align() work even on machines with 32-bit chars 2015-08-04 00:05:16 -04:00
Jean-Marc Valin
e90adb0013 More conservative alignment
Based on max size of void*, opus_int32 and opus_val32, rounded up to the
nearest power of two
2015-08-03 21:40:46 -04:00
Timothy B. Terriberry
fc0276fad4 Update the oggopus draft.
This version resolves some issues with the packet size limits
 raised by Mark Harris.
2015-07-07 11:25:42 -07:00
Timothy B. Terriberry
25c2f620b6 Improve OPUS_GET_LSB_DEPTH documentation.
We use at most 16 when using fixed-point (for the API or the
 internal implementation), but we didn't tell anyone this.
2015-06-23 11:41:11 -07:00
Ralph Giles
3bd0231be1
Add release checksums.
Keep a copy of the release tarball sha-256 checksums in the
repository for reference. Having a copy with the code in
distributed version control adds a verification path.

This should match http://downloads.xiph.org/releases/opus/SHA256SUMS.txt
2015-05-08 14:22:07 -07:00
Timothy B. Terriberry
ccfb066685 oggopus: Bump draft date and version for 07 publication. 2015-04-28 10:40:46 -07:00
Jean-Marc Valin
5b20cb01b3 rtp draft -11 2015-04-21 20:33:42 -04:00
Jean-Marc Valin
51abf4896b rtp draft -10 (deleting text) 2015-04-14 20:50:28 -04:00
Jean-Marc Valin
5771a672ca IESG RTP draft update 2015-04-10 17:55:30 -04:00
Timothy B. Terriberry
36e0445e61 Ogg Opus draft: Address chair review comments.
1. Removed an inappropriate normative MAY.
2. Gave an explicit range of sample rates deemed to be "non-crazy".
3. Give explicit guidance on packet sizes that SHOULD and MAY be rejected.
2015-03-13 16:32:23 -07:00
Jean-Marc Valin
6814b2c250 Avoiding the term "mode" in opus_demo 2015-02-27 15:01:28 -05:00
Timothy B. Terriberry
2d83e7e297 Wrap _mm_cvtepi...() intrinsics in macros on clang.
We already needed these macros for gcc with optimizations disabled,
 but it appears clang needs them all the time.

Thanks to Jonathan Lennox for the report.
2015-02-27 11:11:57 -08:00
Tristan Matthews
3b74d8bd72 opus_demo: remove unused but set values 2015-02-24 15:19:18 -05:00
Timothy B. Terriberry
75d81f5bb3 Document how to tell if your build is fixed-point.
This way we won't break this by accident.
2015-02-20 12:44:10 -08:00
Jean-Marc Valin
45cbdff36f Adds MIPS files to the make dist tarball 2015-02-11 14:10:03 -05:00
Jean-Marc Valin
155f99c87a Addressing Gen-ART comments on the RTP draft 2015-02-06 13:34:32 -05:00
Jean-Marc Valin
66611f1367 RTP draft: chair review 2015-01-13 09:19:32 -05:00
Ralph Giles
fdc6d3cc12 Update ISO Base Media Format draft to version 0.6.6. 2015-01-10 13:57:24 -08:00
Ralph Giles
af68b857a3 Update ISO Base Media Format draft to version 0.6.2. 2015-01-09 08:55:21 -08:00
Jean-Marc Valin
65fb456ce8 RTP: the return of maxaveragebitrate 2015-01-06 02:35:31 -05:00
Timothy B. Terriberry
7422189ab1 Fix silk_VQ_WMat_EC_sse4_1().
During review of c95c9a048f, I replaced a call to
 _mm_cvtepi8_epi32() with the OP_CVTEPI16_EPI32_M64() macro (note
 the 16 instead of 8).
Make a separate OP_CVTEPI8_EPI32_M32() macro and use that instead.

Thaks to Wei Zhou for the report.
2015-01-02 16:16:21 -08:00
Timothy B. Terriberry
23f503ad1c Fix warnings in pedantic build.
This should suppress our current issues with unused parameters,
 unused variables, and set-but-not-used variables.
2014-12-26 08:31:39 -08:00
Viswanath Puttagunta
0b0a2b4d06 armv7: celt_pitch_xcorr: Introduce ARM NEON intrinsics
Optimize celt_pitch_xcorr function (for floating point)
using ARM NEON intrinsics for SoCs that have NEON VFP unit.

To enable this optimization, use --enable-intrinsics
configure option.

Compile time and runtime checks are also supported to make sure
this optimization is only enabled when the compiler supports
NEON intrinsics.

Signed-off-by: Timothy B. Terriberry <tterribe@xiph.org>
2014-12-25 14:36:46 -08:00
Ralph Giles
5b712da9c2 Document the motivation for the 120 ms repacketizer limit.
See the mailing list discussion at
http://lists.xiph.org/pipermail/opus/2014-December/002802.html
2014-12-20 12:37:48 -08:00
Ron
7424bb0a24 Fix the quoting of AC_LANG_PROGRAM
It was under-quoted in c95c9a048f, which
leads to a flood of warnings when it gets incorrectly expanded, like:

configure.ac:354: warning: AC_LANG_CONFTEST: no AC_LANG_SOURCE call detected in body
2014-12-20 19:46:20 +10:30
Jean-Marc Valin
3b1928ce3e RTP draft: addressing comments from Martin Thompson 2014-12-08 16:26:42 -05:00
Timothy B. Terriberry
aad281878d Fix celt_pitch_xcorr_c signature.
This should not take an arch parameter, so it can properly be used
 as a fallback for accelerated versions which do not.
This patch instead provides a separate version which can call
 accelerated helpers for platforms that have taken that approach.
2014-12-01 14:25:52 -08:00
Mark Harris
25b27a9c16 multistream: improve arg check
Avoid undefined behavior (signed arithmetic overflow) or
implementation-defined behavior (malloc(0)) on out-of-range arguments,
e.g. opus_multistream_encoder_create(48000, 2, 2147483647, 1, ...)
or opus_multistream_surround_encoder_create(48000, 3, 0, ...).

Signed-off-by: Jean-Marc Valin <jmvalin@jmvalin.ca>
2014-11-27 12:04:14 -05:00
Jean-Marc Valin
d10755e95c RTP draft in last call 2014-11-19 11:08:04 -05:00
Cameron Gutman
8921f82fb9 float_cast: Fix MSVC ARM build
Signed-off-by: Tristan Matthews <tmatth@videolan.org>
2014-11-19 03:04:14 -05:00
Ralph Giles
8ab1968e13 oggopus: bump draft date and version for 06 publication. 2014-10-17 17:04:45 -07:00
Ralph Giles
79cce68d74 oggopus: Mention 'malformed' at the first instance of invalid TOC.
This is just a should, so we want to leave the RFC 6716 reference
to the second occurance, but using the same language ties them
together and to the later occurances.
2014-10-17 17:02:02 -07:00
Ralph Giles
ddbc768c98 oggopus: Refer to RFC 6716 on how to handle malformed packets.
The Opus RFC doesn't really say what to do beyond rejecting
a particular packet, but having the reference reinforces that
we're trying to leverage the same constraints in the specific
context of ogg encapsulation, and this isn't a new rule.
2014-10-17 16:51:57 -07:00
Ralph Giles
ba409a420b oggopus: use 'invalid' to match other occurances and RFC 6716.
Suggestion from mark4o.
2014-10-17 16:50:53 -07:00
Ralph Giles
54f061d159 oggopus: Improve wording. 2014-10-17 15:40:54 -07:00
Ralph Giles
a38044e097 oggopus: Refer to 'TOC sequence' instead of byte.
This avoids confusion with the number of frames being defined
by more than the first byte with code 3 packets.

Patch from mark4o.
2014-10-17 15:08:11 -07:00
Ralph Giles
5e0c904eb6 oggopus: Fix opus_encode_ctl invocations.
The macros take arguments, they aren't just constants. Thanks to
mark4o for the report.
2014-10-14 18:23:32 -07:00
Ralph Giles
3731a57a1b oggopus: Improve wording. 2014-10-14 17:55:46 -07:00
Ralph Giles
08aa815e0a oggopus: bump draft date and version for 05 publication. 2014-10-14 14:54:31 -07:00
Ralph Giles
7abe7d65c2 oggopus: Clarify leading zeros are ok for R128 tags.
Add a limit of no more than 6 characters for these tags' values.
2014-10-14 14:52:31 -07:00
Tristan Matthews
fd562eefa2 tests: fix linking for --enable-fixed-point on ARM 2014-10-12 15:12:52 -04:00
Ralph Giles
32ff38bc8a Update mp4 encapsulation spec to v0.5.3.
Based on http://vfrmaniac.fushizen.eu/contents/opus_in_isobmff.html
2014-10-07 16:05:07 -07:00
Timothy B. Terriberry
554b349cdb There are no tabs in source code.
There is also no trailing whitespace.
2014-10-03 21:49:57 -07:00
Timothy B. Terriberry
020a0a48d5 Fix build bustage from c95c9a048. 2014-10-03 21:11:51 -07:00
xiangmingzhu
c95c9a048f Cisco optimization for x86 & fixed point
1. Only for fixed point on x86 platform (32bit and 64bit, uses SIMD
   intrinsics up to SSE4.2)
2. Use "configure --enable-fixed-point --enable-intrinsics" to enable
   optimization, default is disabled.
3. Official test cases are verified and passed.

Signed-off-by: Timothy B. Terriberry <tterribe@xiph.org>
2014-10-03 21:16:00 -04:00
Jean-Marc Valin
80460334b7 -DOPUS_WILL_BE_SLOW to disable the no-optimization warning 2014-09-30 14:40:13 -04:00
Ralph Giles
93fe3ce14f Add build script for mp4 spec.
This is a quick script to download, rename and sanitize
Yusuke Nakamura's draft for opus in the ISO Base Media File Format.
2014-09-29 10:53:17 -07:00