Граф коммитов

494 Коммитов

Автор SHA1 Сообщение Дата
Ralph Giles 26f29172b9 Bug 865253 - Part 5: Shorten a comment to fit in 80 columns. r=ehsan 2013-08-19 11:58:00 -07:00
Ralph Giles f429e8e85f Bug 865253 - Part 4: Stop OscillatorNodes on context shutdown. r=ehsan
Like AudioBufferSourceNode and ScriptProcessorNode, OscillatorNode
holds a self-reference in mPlaying. Keep track of all osc nodes
in the AudioContext and explicitly stop them to make sure this
reference is dropped.
2013-08-19 11:57:00 -07:00
Ralph Giles 076262a557 Bug 865253 - Part 3: Direct generation of fixed oscillator types. r=ehsan
Simple direct calculation of the fixed types.

We probably want to use the PeriodicWave machinery to generate
the pre-defined waveforms once it's available. In either case
we can optimize this significantly by caching the generated
waveform when the frequency is stationary over the block.
2013-08-19 11:56:00 -07:00
Ehsan Akhgari f90e61776c Bug 865253 - Part 2: Implement the alternate enum values for OscillatorNode; r=roc 2013-08-19 11:54:00 -07:00
Ehsan Akhgari 3eb725fd41 Bug 865253 - Part 1: Implement the DOM bindings for OscillatorNode; r=roc 2013-08-19 11:53:00 -07:00
Ehsan Akhgari 1131972e0e Bug 905409 - Minimize the Web Audio #includes; r=roc 2013-08-15 15:44:14 -04:00
Wes Kocher be220c4f15 Backed out changeset 016fa89e49b0 (bug 905409) on a CLOSED TREE 2013-08-14 17:21:45 -07:00
Ehsan Akhgari 22b906442c Bug 905409 - Minimize the Web Audio #includes; r=roc 2013-08-14 18:46:00 -04:00
Paul Adenot 2b1c914893 Bug 899135 - Drop buffers in ScriptProcessorNode instead of buffering them when the main thread is blocked. r=roc 2013-08-13 19:34:22 +02:00
Ms2ger 1a5ae526d9 Bug 901323 - Don't include nsContentUtils.h unnecessarily; r=jlebar 2013-08-14 08:56:21 +02:00
Paul Adenot 2d3fb3fa56 Bug 903476 - Fuzz a bit more and android as well.
--HG--
extra : rebase_source : 57d9a1ed3549a0c8a2af9fb8be42b5823f21a2ec
2013-08-13 15:56:42 +02:00
Paul Adenot 8a3bf5043a Bug 903476 - Fuzz a bit more on win32.
--HG--
extra : rebase_source : 321848369a2f2401b1fcaf287bfbcd049a7c299c
2013-08-13 14:48:36 +02:00
Paul Adenot 3dcf264bda Bug 903476 - Update the fuzzing values in test_mediaDecoding.html because we changed the resampler. r=ehsan
--HG--
extra : rebase_source : 3b354018ba83f53cf64d6adb511c41dfcb205039
2013-08-13 12:44:34 +02:00
Karl Tomlinson fb08eba385 b=815643 Implement HRTF panner processing based on Blink implementation r=ehsan
--HG--
extra : rebase_source : 197fd6f39d3d45b61d25d9dc399c72828d93655a
2013-08-09 10:08:06 +12:00
Karl Tomlinson c41d18de82 b=815643 Add Blink's HRTFPanner to the build r=ehsan
--HG--
extra : rebase_source : 14187eb58d308c25b3ff37356a1aef6757aee81d
2013-08-09 10:07:49 +12:00
Karl Tomlinson bfa9fc4aa2 b=815643 Refactor DelayNodeEngine delay processing into a shareable class r=ehsan
--HG--
extra : rebase_source : e25ff3e490c2cbce5ed7cdf9419ccc2850ea16e5
2013-08-09 10:07:49 +12:00
Karl Tomlinson 705047473b b=865241 don't join HRTFDatabaseLoader thread until it has finished r=ehsan
Also turn some always-true conditions into assertions.

--HG--
extra : rebase_source : a38b75a1a27f25cef7b9dd86a1cca15ce9f67893
2013-08-09 10:07:42 +12:00
Karl Tomlinson 1a98f66b41 b=865241 make HRTFDatabaseLoader ref-counting thread-safe r=ehsan
--HG--
extra : rebase_source : 8cab96807c111eb103dbe931d14a86a8b97a824e
2013-08-09 09:59:56 +12:00
Karl Tomlinson b446dda0ec b=815643 Add Blink's HRTFDatabase and HRTFDatabaseLoader to the build r=ehsan
--HG--
extra : rebase_source : e7aa0ce1ca436bbb429cb1f6051b3b8210bf767a
2013-08-09 09:56:28 +12:00
Karl Tomlinson 82fc807491 b=815643 Add Blink's HRTFElevation to the build r=ehsan
--HG--
extra : rebase_source : 5dda0b6c6302197574ac5fafbb0f06b1ac65980a
2013-08-08 21:38:30 +12:00
Karl Tomlinson 64b55fc1da b=815643 Reduce convolver fft size for low sample rates r=ehsan
--HG--
extra : rebase_source : 0d7c6d4a3bcb340fc674f0b4181cf264fcc4e041
2013-08-08 21:38:30 +12:00
Karl Tomlinson dd71493550 b=815643 Add code to interpret and resample impulse response data r=ehsan
--HG--
extra : rebase_source : 35497353634022f297b2ebf333b7230b12c1f9c2
2013-08-08 21:38:30 +12:00
Karl Tomlinson 7aae3a93ab b=815643 Add HRTF impulse response data r=ehsan
The impulse response sample data is directly from individual impulse response wave files
in Blink SVN revision 153183.

--HG--
extra : rebase_source : 037471efd5be1f0d4a798bcc01192db9398377c2
2013-08-08 21:38:30 +12:00
Karl Tomlinson a1cbea47fb b=815643 Use symmetry to halve the number of HRTF kernels calculated and cached r=ehsan
--HG--
extra : rebase_source : 12e4a114630e793c22d3e335c38c641a6bc20ee2
2013-08-08 21:38:29 +12:00
Karl Tomlinson 1377d6665c b=815643 Add Blink's HRTFKernel to the build r=ehsan
A functional difference is that HRTFKernel is not reference-counted.

--HG--
extra : rebase_source : 66a9653fed75265ec55d915b731876bcb793d513
2013-08-08 21:38:29 +12:00
Karl Tomlinson f2b27a4c67 b=865241 always leave 20 samples of headroom when extracting group delay, removing the discontinuity at delay = 20 r=ehsan
--HG--
extra : rebase_source : 30515ea2236b7503ff7e446d50930f91135bc7e0
2013-08-08 21:38:29 +12:00
Karl Tomlinson 7ec61fbe98 b=815643 Add Blink's frequency interpolation and group delay methods from FFTFrame to FFTBlock r=ehsan
--HG--
extra : rebase_source : 1e3393c85f1828cbcce49af1e3160fc3535d39b8
2013-08-08 21:38:24 +12:00
Karl Tomlinson 0cf01a15bc b=865241 don't try to compute a phase for group delay from the DC and nyquist components of the DFT r=ehsan
Given imagP[0] is really realP[halfSize], it doesn't make sense to calculate a
phase from placing the DC and Nyquist components in different directions.
The DC component doesn't have a phase offset and lastPhase is already
initialized to zero.

This makes extractAverageGroupDelay() consistent with addConstantGroupDelay()
and to some extent interpolateFrequencyComponents().

The effect of the bug would have been small for reasonably sized FFTs.

--HG--
extra : rebase_source : b2931d625bd7e014f123b576f28aad7f719c585d
2013-08-08 21:37:36 +12:00
Karl Tomlinson 115c9d9f04 b=815643 remove unused HRTF code r=ehsan
--HG--
extra : rebase_source : f6063443b6e7574055b0ad92e95e32d7f0a850cd
2013-08-08 21:37:36 +12:00
Karl Tomlinson 7f070cfa1c b=815643 Import the HRTF panner implementation from Blink r=ehsan
This code was copied from Blink SVN revision 153183.

--HG--
extra : rebase_source : 968f69846f5c532eda3580c8ce2176e2e6b5fc63
2013-08-08 21:37:36 +12:00
Ryan VanderMeulen febf24bb96 Merge inbound to m-c. 2013-08-09 19:08:45 -04:00
Nathan Froyd 74113f673d Bug 901615 - don't include BindingUtils.h in AudioContext.h; r=roc 2013-08-05 13:40:06 -04:00
Paul Adenot f2e69e21d4 Bug 897092 - Fix setTargetAtTime glitch. r=ehsan
--HG--
extra : rebase_source : 8b1162e7721637df2b8a2faad849609d3177369b
2013-08-09 15:11:03 +02:00
Robert O'Callahan 2d1ffcaf14 Bug 856361. Part 8: Fix copying of track data from input streams to output streams in AudioNodeExternalInputStream. r=padenot
--HG--
extra : rebase_source : 344780d9c27ce3026ae5c12a08ea6a1ba3b4e924
2013-08-01 16:02:49 +12:00
Ehsan Akhgari 0151f23455 Bug 855568 - Implement MediaElementAudioSourceNode
X-Git-Commit-ID: 52f1fcdd561e8214e6820a3f2478d9e8b9623430

--HG--
extra : rebase_source : c40cd0c7070dec9e0273093499228f13906f8fc5
2013-07-25 15:01:49 +12:00
Robert O'Callahan bd85906413 Bug 856361. Part 6: Make MediaStreamAudioSourceNode keep its DOMMediaStream alive, and make the DOMMediaStream keep the MediaStreamAudioSourceNode alive. r=ehsan
--HG--
extra : rebase_source : 0e3b5108d8ced8b1f1f427c9fd4f87e97c46921d
2013-07-25 14:07:34 +12:00
secretrobotron 84e2becf3b Bug 856361. Part 5: Implement MediaStreamAudioSourceNode. r=ehsan
--HG--
extra : rebase_source : 265f31edda31a2f749eacc568919304622446748
2013-07-24 23:29:39 +12:00
JW Wang 7e87656829 Bug 875277 - Part 2: Implement WaveShaperNode.oversample - speex. r=ehsan 2013-08-06 14:11:32 +08:00
JW Wang e4702bd95f Bug 875277 - Part 1: Implement WaveShaperNode.oversample - webidl enums. r=ehsan 2013-08-06 14:15:07 +08:00
Ryan VanderMeulen 87a4ee15f4 Backed out changesets aee6b1a6c400 and a633e4d67d31 (bug 875277) for bustage. 2013-08-05 20:47:07 -04:00
JW Wang 5c464c8e34 Bug 875277 - Part 2: Implement WaveShaperNode.oversample - speex. r=ehsan 2013-08-05 10:34:52 +08:00
JW Wang 835d56c5d5 Bug 875277 - Part 1: Implement WaveShaperNode.oversample - webidl enums. r=ehsan 2013-07-26 15:14:35 +08:00
Boris Zbarsky bcd1523d40 Bug 900898 part 2. Move to using Nullable<TypedArray> to represent possibly-null TypedArray structs. r=smaug 2013-08-05 13:40:01 -04:00
Ehsan Akhgari 11d536d021 Bug 900341 - Shut down the decoder object for an AudioContext from a runnable; r=bent,roc 2013-08-02 12:07:17 -04:00
Mike Hommey 2e729aa83d Bug 881323 - Re-implement CycleCollectorParticipant with actual vtables, with constexpr to avoid static initializers. r=mccr8 2013-08-02 10:29:05 +09:00
Ehsan Akhgari 2824b29025 Bug 895322 - Part 1: Replace the usages of MOZ_STATIC_ASSERT with C++11 static_assert; r=Waldo
This patch was mostly generated by running the following scripts on the codebase, with some
manual changes made afterwards:

# static_assert.sh
#!/bin/bash
# Command to convert an NSPR integer type to the equivalent standard integer type

function convert() {
echo "Converting $1 to $2..."
find . ! -wholename "*nsprpub*" \
       ! -wholename "*security/nss*" \
       ! -wholename "*/.hg*" \
       ! -wholename "obj-ff-dbg*" \
       ! -name nsXPCOMCID.h \
       ! -name prtypes.h \
         -type f \
      \( -iname "*.cpp" \
         -o -iname "*.h" \
         -o -iname "*.cc" \
         -o -iname "*.mm" \) | \
    xargs -n 1 `dirname $0`/assert_replacer.py #sed -i -e "s/\b$1\b/$2/g"
}

convert MOZ_STATIC_ASSERT static_assert
hg rev --no-backup mfbt/Assertions.h \
                   media/webrtc/signaling/src/sipcc/core/includes/ccapi.h \
                   modules/libmar/src/mar_private.h \
                   modules/libmar/src/mar.h


# assert_replacer.py
#!/usr/bin/python

import sys
import re

pattern = re.compile(r"\bMOZ_STATIC_ASSERT\b")

def replaceInPlace(fname):
  print fname
  f = open(fname, "rw+")
  lines = f.readlines()
  for i in range(0, len(lines)):
    while True:
      index = re.search(pattern, lines[i])
      if index != None:
        index = index.start()
        lines[i] = lines[i][0:index] + "static_assert" + lines[i][index+len("MOZ_STATIC_ASSERT"):]
        for j in range(i + 1, len(lines)):
          if lines[j].find("                 ", index) == index:
            lines[j] = lines[j][0:index] + lines[j][index+4:]
          else:
            break
      else:
        break
  f.seek(0, 0)
  f.truncate()
  f.write("".join(lines))
  f.close()

argc = len(sys.argv)
for i in range(1, argc):
  replaceInPlace(sys.argv[i])

--HG--
extra : rebase_source : 4b4a4047d82f2c205b9fad8d56dfc3f1afc0b045
2013-07-18 13:59:53 -04:00
Paul Adenot f558a92953 Bug 895720 - Actually use the fuzz value. 2013-07-30 11:10:33 +01:00
Paul Adenot 8e849d9058 Bug 895720 - On MacOS, increase the fuzz factor for test_audioBufferSourceNodeOffset.html. 2013-07-30 11:06:33 +01:00
Ryan VanderMeulen 268ee517df Bug 894941 - Increase fuzz tolerance for the small-shot.ogg mediaDecoding test to resolve a CLOSED TREE. 2013-07-26 15:17:34 -04:00
Robert O'Callahan 269f816a9e Bug 890716. Fix race in Reverb::Reverb. r=padenot
--HG--
extra : rebase_source : 65af577f5ffcf7f7a0b650f1693f4159ddac4ac6
2013-07-26 13:35:22 +12:00