In bug 922912, we folded back gkmedias.dll info xul.dll, so in practice, there
is no default configuration left that exercises GKMEDIAS_SHARED_LIBRARY. And
sure enough, it's been broken for months in many different ways.
The gkmedias intermediate library is however kept for webrtc signaling tests.
The patch removes 455 occurrences of FAIL_ON_WARNINGS from moz.build files, and
adds 78 instances of ALLOW_COMPILER_WARNINGS. About half of those 78 are in
code we control and which should be removable with a little effort.
This also changes the HUGEMEM test to be independent of quality.
|oversample| has a maximum value of 32, so we know that the interpolating
resampler will use less memory when st->den_rate > 441.
--HG--
extra : transplant_source : vl%C1d%A5%FB%3Cd%FBC%86%FD%26%EC%FB%C0%5C%26%7D%8C
https://gcc.gnu.org/onlinedocs/gcc/Extended-Asm.html#Extended-Asm says
asm [volatile] ( AssemblerTemplate : [OutputOperands] [ : [InputOperands] [ : [Clobbers] ] ] )
which implies that Clobbers is optional even after the third colon, but
the gcc used for b2g_try_emulator_dep builds says
resample_neon.c: In function 'saturate_32bit_to_16bit':
resample_neon.c:50: error: expected string literal before ')' token
--HG--
extra : rebase_source : 6ca7768d5b30f67ff6827acc9a4fdc51a672bc1e
This ensures that code in resample.c will run on Intel x86 cpus even when SSE
support has been compiled, and will provide similarly for neon support when
enabled.
--HG--
rename : media/libspeex_resampler/sse-detect-runtime.patch => media/libspeex_resampler/simd-detect-runtime.patch
rename : media/libspeex_resampler/src/resample_neon.h => media/libspeex_resampler/src/resample_neon.c
rename : media/libspeex_resampler/src/resample_sse.h => media/libspeex_resampler/src/resample_sse.c
rename : media/libspeex_resampler/src/sse_detect.cpp => media/libspeex_resampler/src/simd_detect.cpp
rename : media/libspeex_resampler/src/sse_detect.h => media/libspeex_resampler/src/simd_detect.h
extra : rebase_source : bdf1ef791129dedeadce7369354a5992729a99b7
When built with FIXED_POINT speex_resampler_process_float() assumes the
samples are in the range ±0x7fff and so Gecko instead uses ConvertAudioSamples
and speex_resampler_process_int(). This decision is based on
MOZ_SAMPLE_TYPE_S16.
--HG--
extra : rebase_source : 1e67861478026dfa65b61a31e3272970a7094094
When "speex/speex_resampler.h" was included, another exported header (in
dist/include) would find the speex/speex_resampler.h in dist/include before
dist/system_wrappers. Visibility of undefined symbols depended on the order
of includes.
This patch changes includes to <speex/speex_resampler.h> so that
WRAP_SYSTEM_INCLUDES works as expected but removes the wrapper when not using
GKMEDIAS_SHARED_LIBRARY.
--HG--
extra : rebase_source : 93ca1dbdd6b489647624326e78539f44c60d0b34
Upstream SATURATE32PSHR changes conflict with Gecko's SSE runtime
detection patch. That patch is updated to reduce deviation from
upstream.
--HG--
extra : rebase_source : fdaf355f802b944fcbe286e076ca19dc6bc33f80
This is the speexdsp revision most similar to what is currently in Gecko.
We'll want to keep the HUGEMEM variant that we currently have from
opus-tools, but that will be restored in a subsequent patch.
--HG--
extra : rebase_source : 0d0d881dc1c997a42c9386136f0b93fd15aa0331
Instead of defining OUTSIDE_SPEEX and RANDOM_PREFIX everywhere
speex_resampler.h is included, it is easier to patch the header.
Symbol names in gkmedias symbols.def are updated now that RANDOM_PREFIX is
taking effect, and unused symbols are no longer exported.
--HG--
extra : transplant_source : sx%C9%ED%EB%E7%D8P%09%18%87%D4Oj%85%D5%25%C8%A5%01
This allows a client to align output samples consistently for independent
resampling of contiguous input buffers.
--HG--
extra : rebase_source : 58caba11ac7f78418b173a98556276d3b4644603
sample_frac_num is the array most likely to be non-zero after resampling a
previous stream, but the other arrays can also be left at non-zero values
in other situations.
--HG--
extra : rebase_source : dfd3974f051ff0b1794a937d712dda185352f7d5