Commit 7bd2b397 authored by crogers@google.com's avatar crogers@google.com

2010-12-03 Chris Rogers <crogers@google.com>

        Reviewed by Kenneth Russell.

        First steps to adding web audio files to build systems
        https://bugs.webkit.org/show_bug.cgi?id=49952

        * wtf/Complex.h:
2010-12-03  Chris Rogers  <crogers@google.com>

        Reviewed by Kenneth Russell.

        First steps to adding web audio files to build systems
        https://bugs.webkit.org/show_bug.cgi?id=49952

        No new tests since audio API is not yet implemented.

        * CMakeLists.txt:
        * DerivedSources.make:
        * ForwardingHeaders/wtf/Complex.h: Added.
        * GNUmakefile.am:
        * WebCore.gyp/WebCore.gyp:
        * WebCore.gypi:
        * WebCore.pri:
        * WebCore.pro:
        * bindings/js/JSDOMWindowCustom.cpp:
        (WebCore::JSDOMWindow::audioContext):
        * features.pri:
        * page/DOMWindow.idl:
        * platform/audio/HRTFElevation.cpp:


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@73283 268f45cc-cd09-0410-ab3c-d52691b4dbfc
parent 4252d665
2010-12-03 Chris Rogers <crogers@google.com>
Reviewed by Kenneth Russell.
First steps to adding web audio files to build systems
https://bugs.webkit.org/show_bug.cgi?id=49952
* wtf/Complex.h:
2010-12-03 Patrick Gansterer <paroga@webkit.org>
Reviewed by Andreas Kling.
......
......@@ -43,4 +43,7 @@ inline Complex complexFromMagnitudePhase(double magnitude, double phase)
} // namespace WTF
using WTF::Complex;
using WTF::complexFromMagnitudePhase;
#endif // WTF_Complex_h
......@@ -30,6 +30,7 @@ SET(WebCore_INCLUDE_DIRECTORIES
"${WEBCORE_DIR}/page/animation"
"${WEBCORE_DIR}/platform"
"${WEBCORE_DIR}/platform/animation"
"${WEBCORE_DIR}/platform/audio"
"${WEBCORE_DIR}/platform/graphics"
"${WEBCORE_DIR}/platform/graphics/filters"
"${WEBCORE_DIR}/platform/graphics/transforms"
......@@ -55,6 +56,7 @@ SET(WebCore_INCLUDE_DIRECTORIES
"${WEBCORE_DIR}/svg/graphics"
"${WEBCORE_DIR}/svg/graphics/filters"
"${WEBCORE_DIR}/svg/properties"
"${WEBCORE_DIR}/webaudio"
"${WEBCORE_DIR}/websockets"
"${WEBCORE_DIR}/wml"
"${WEBCORE_DIR}/workers"
......@@ -93,6 +95,7 @@ SET(WebCore_IDL_INCLUDES
plugins
storage
svg
webaudio
workers
xml
)
......@@ -374,6 +377,27 @@ SET(WebCore_IDL_FILES
storage/Storage.idl
storage/StorageEvent.idl
webaudio/AudioBuffer.idl
webaudio/AudioBufferSourceNode.idl
webaudio/AudioChannelSplitter.idl
webaudio/AudioChannelMerger.idl
webaudio/AudioContext.idl
webaudio/AudioDestinationNode.idl
webaudio/AudioGain.idl
webaudio/AudioGainNode.idl
webaudio/AudioListener.idl
webaudio/AudioNode.idl
webaudio/AudioPannerNode.idl
webaudio/AudioParam.idl
webaudio/AudioProcessingEvent.idl
webaudio/AudioSourceNode.idl
webaudio/ConvolverNode.idl
webaudio/DelayNode.idl
webaudio/HighPass2FilterNode.idl
webaudio/JavaScriptAudioNode.idl
webaudio/LowPass2FilterNode.idl
webaudio/RealtimeAnalyserNode.idl
websockets/WebSocket.idl
workers/AbstractWorker.idl
......
2010-12-03 Chris Rogers <crogers@google.com>
Reviewed by Kenneth Russell.
First steps to adding web audio files to build systems
https://bugs.webkit.org/show_bug.cgi?id=49952
No new tests since audio API is not yet implemented.
* CMakeLists.txt:
* DerivedSources.make:
* ForwardingHeaders/wtf/Complex.h: Added.
* GNUmakefile.am:
* WebCore.gyp/WebCore.gyp:
* WebCore.gypi:
* WebCore.pri:
* WebCore.pro:
* bindings/js/JSDOMWindowCustom.cpp:
(WebCore::JSDOMWindow::audioContext):
* features.pri:
* page/DOMWindow.idl:
* platform/audio/HRTFElevation.cpp:
2010-12-03 Patrick Gansterer <paroga@webkit.org>
Reviewed by David Levin.
......@@ -43,6 +43,7 @@ VPATH = \
$(WebCore)/plugins \
$(WebCore)/storage \
$(WebCore)/xml \
$(WebCore)/webaudio \
$(WebCore)/wml \
$(WebCore)/workers \
$(WebCore)/svg \
......@@ -53,6 +54,26 @@ DOM_CLASSES = \
AbstractView \
AbstractWorker \
Attr \
AudioBuffer \
AudioBufferSourceNode \
AudioChannelSplitter \
AudioChannelMerger \
AudioContext \
AudioDestinationNode \
AudioGain \
AudioGainNode \
AudioListener \
AudioNode \
AudioPannerNode \
AudioParam \
AudioProcessingEvent \
AudioSourceNode \
ConvolverNode \
DelayNode \
HighPass2FilterNode \
JavaScriptAudioNode \
LowPass2FilterNode \
RealtimeAnalyserNode \
BarInfo \
BeforeLoadEvent \
BeforeProcessEvent \
......
#ifndef WebCore_FWD_Complex_h
#define WebCore_FWD_Complex_h
#include <JavaScriptCore/Complex.h>
#endif
......@@ -36,6 +36,7 @@ webcore_cppflags += \
-I$(srcdir)/WebCore/page/animation \
-I$(srcdir)/WebCore/platform \
-I$(srcdir)/WebCore/platform/animation \
-I$(srcdir)/WebCore/platform/audio \
-I$(srcdir)/WebCore/platform/graphics \
-I$(srcdir)/WebCore/platform/graphics/filters \
-I$(srcdir)/WebCore/platform/graphics/transforms \
......@@ -62,6 +63,7 @@ webcore_cppflags += \
-I$(srcdir)/WebCore/svg/graphics \
-I$(srcdir)/WebCore/svg/graphics/filters \
-I$(srcdir)/WebCore/svg/properties \
-I$(srcdir)/WebCore/webaudio \
-I$(srcdir)/WebCore/websockets \
-I$(srcdir)/WebCore/wml \
-I$(srcdir)/WebCore/workers \
......@@ -4699,6 +4701,7 @@ IDL_PATH := \
$(WebCore)/plugins \
$(WebCore)/storage \
$(WebCore)/svg \
$(WebCore)/webaudio \
$(WebCore)/websockets \
$(WebCore)/workers \
$(WebCore)/xml
......@@ -4726,6 +4729,7 @@ EXTRA_DIST += \
$(shell ls $(srcdir)/WebCore/plugins/*.idl) \
$(shell ls $(srcdir)/WebCore/storage/*.idl) \
$(shell ls $(srcdir)/WebCore/svg/*.idl) \
$(shell ls $(srcdir)/WebCore/webaudio/*.idl) \
$(shell ls $(srcdir)/WebCore/websockets/*.idl) \
$(shell ls $(srcdir)/WebCore/workers/*.idl) \
$(shell ls $(srcdir)/WebCore/xml/*.idl) \
......
......@@ -143,6 +143,8 @@
'../page/chromium',
'../platform',
'../platform/animation',
'../platform/audio',
'../platform/audio/chromium',
'../platform/chromium',
'../platform/graphics',
'../platform/graphics/chromium',
......@@ -179,6 +181,7 @@
'../svg/graphics',
'../svg/graphics/filters',
'../svg/properties',
'../webaudio',
'../websockets',
'../workers',
'../xml',
......@@ -241,6 +244,7 @@
# related directories.
# platform/graphics/cg may need to stick around, though.
'../loader/archive/cf',
'../platform/audio/mac',
'../platform/graphics/mac',
'../platform/mac',
'../platform/text/mac',
......@@ -249,6 +253,7 @@
['OS=="win"', {
'webcore_include_dirs': [
'../page/win',
'../platform/audio/win',
'../platform/graphics/win',
'../platform/text/win',
'../platform/win',
......@@ -679,6 +684,7 @@
'--include', '../plugins',
'--include', '../storage',
'--include', '../svg',
'--include', '../webaudio',
'--include', '../websockets',
'--include', '../workers',
'--include', '../xml',
......@@ -1120,6 +1126,13 @@
['include', 'platform/(graphics/)?mac/[^/]*Font[^/]*\\.(cpp|mm?)$'],
['include', 'platform/graphics/mac/ComplexText[^/]*\\.(cpp|h)$'],
# Necessary for web audio API bringup on Chrome.
# They will later be replaced with chromium-specific code.
['include', 'platform/audio/mac/AudioBusMac\\.mm$'],
['include', 'platform/audio/mac/AudioDestinationMac\\.cpp$'],
['include', 'platform/audio/mac/AudioFileReaderMac\\.cpp$'],
['include', 'platform/audio/mac/FFTFrameMac\\.cpp$'],
# Cherry-pick some files that can't be included by broader regexps.
# Some of these are used instead of Chromium platform files, see
# the specific exclusions in the "sources!" list below.
......@@ -1387,6 +1400,13 @@
],
'mac_framework_dirs': [
'$(SDKROOT)/System/Library/Frameworks/ApplicationServices.framework/Frameworks',
'$(SDKROOT)/System/Library/Frameworks/Accelerate.framework',
'$(SDKROOT)/System/Library/Frameworks/CoreServices.framework',
'$(SDKROOT)/System/Library/Frameworks/Foundation.framework',
'$(SDKROOT)/System/Library/Frameworks/CoreFoundation.framework',
'$(SDKROOT)/System/Library/Frameworks/AudioToolbox.framework',
'$(SDKROOT)/System/Library/Frameworks/AudioUnit.framework',
'$(SDKROOT)/System/Library/Frameworks/CoreAudio.framework',
],
},
'conditions': [
......
......@@ -292,6 +292,26 @@
'storage/SQLTransactionSyncCallback.idl',
'storage/Storage.idl',
'storage/StorageEvent.idl',
'webaudio/AudioBuffer.idl',
'webaudio/AudioBufferSourceNode.idl',
'webaudio/AudioChannelMerger.idl',
'webaudio/AudioChannelSplitter.idl',
'webaudio/AudioContext.idl',
'webaudio/AudioDestinationNode.idl',
'webaudio/AudioGain.idl',
'webaudio/AudioGainNode.idl',
'webaudio/AudioListener.idl',
'webaudio/AudioNode.idl',
'webaudio/AudioPannerNode.idl',
'webaudio/AudioParam.idl',
'webaudio/AudioProcessingEvent.idl',
'webaudio/AudioSourceNode.idl',
'webaudio/ConvolverNode.idl',
'webaudio/DelayNode.idl',
'webaudio/HighPass2FilterNode.idl',
'webaudio/JavaScriptAudioNode.idl',
'webaudio/LowPass2FilterNode.idl',
'webaudio/RealtimeAnalyserNode.idl',
'websockets/WebSocket.idl',
'workers/AbstractWorker.idl',
'workers/DedicatedWorkerContext.idl',
......@@ -747,6 +767,8 @@
'bindings/v8/IDBBindingUtilities.h',
'bindings/v8/OptionsObject.cpp',
'bindings/v8/OptionsObject.h',
'bindings/v8/custom/V8AudioContextCustom.cpp',
'bindings/v8/custom/V8AudioNodeCustom.cpp',
'bindings/v8/custom/V8ImageDataCustom.cpp',
'bindings/v8/custom/V8CanvasPixelArrayCustom.cpp',
'bindings/v8/custom/V8ArrayBufferViewCustom.h',
......@@ -2340,6 +2362,65 @@
'page/WorkerNavigator.h',
'page/XSSAuditor.cpp',
'page/XSSAuditor.h',
'platform/audio/AudioArray.h',
'platform/audio/AudioBus.h',
'platform/audio/AudioBus.cpp',
'platform/audio/AudioChannel.h',
'platform/audio/AudioChannel.cpp',
'platform/audio/AudioDSPKernel.h',
'platform/audio/AudioDSPKernelProcessor.cpp',
'platform/audio/AudioDSPKernelProcessor.h',
'platform/audio/AudioDestination.h',
'platform/audio/AudioFileReader.h',
'platform/audio/AudioProcessor.h',
'platform/audio/AudioResampler.h',
'platform/audio/AudioResampler.cpp',
'platform/audio/AudioResamplerKernel.h',
'platform/audio/AudioResamplerKernel.cpp',
'platform/audio/AudioSourceProvider.h',
'platform/audio/AudioUtilities.h',
'platform/audio/AudioUtilities.cpp',
'platform/audio/Biquad.h',
'platform/audio/Biquad.cpp',
'platform/audio/Cone.h',
'platform/audio/Cone.cpp',
'platform/audio/Distance.h',
'platform/audio/Distance.cpp',
'platform/audio/EqualPowerPanner.h',
'platform/audio/EqualPowerPanner.cpp',
'platform/audio/FFTConvolver.h',
'platform/audio/FFTConvolver.cpp',
'platform/audio/FFTFrame.h',
'platform/audio/FFTFrame.cpp',
'platform/audio/HRTFDatabase.h',
'platform/audio/HRTFDatabase.cpp',
'platform/audio/HRTFDatabaseLoader.h',
'platform/audio/HRTFDatabaseLoader.cpp',
'platform/audio/HRTFElevation.h',
'platform/audio/HRTFElevation.cpp',
'platform/audio/HRTFKernel.h',
'platform/audio/HRTFKernel.cpp',
'platform/audio/HRTFPanner.h',
'platform/audio/HRTFPanner.cpp',
'platform/audio/Panner.h',
'platform/audio/Panner.cpp',
'platform/audio/Reverb.h',
'platform/audio/Reverb.cpp',
'platform/audio/ReverbConvolver.h',
'platform/audio/ReverbConvolver.cpp',
'platform/audio/ReverbAccumulationBuffer.h',
'platform/audio/ReverbAccumulationBuffer.cpp',
'platform/audio/ReverbConvolverStage.h',
'platform/audio/ReverbConvolverStage.cpp',
'platform/audio/ReverbInputBuffer.h',
'platform/audio/ReverbInputBuffer.cpp',
'platform/audio/VectorMath.h',
'platform/audio/VectorMath.cpp',
'platform/audio/mac/AudioBusMac.mm',
'platform/audio/mac/AudioDestinationMac.h',
'platform/audio/mac/AudioDestinationMac.cpp',
'platform/audio/mac/AudioFileReaderMac.cpp',
'platform/audio/mac/FFTFrameMac.cpp',
'platform/animation/Animation.cpp',
'platform/animation/Animation.h',
'platform/animation/AnimationList.cpp',
......@@ -4318,6 +4399,59 @@
'svg/SVGZoomAndPan.h',
'svg/SVGZoomEvent.cpp',
'svg/SVGZoomEvent.h',
'webaudio/AudioBasicProcessorNode.cpp',
'webaudio/AudioBasicProcessorNode.h',
'webaudio/AudioBuffer.h',
'webaudio/AudioBuffer.cpp',
'webaudio/AudioBufferSourceNode.h',
'webaudio/AudioBufferSourceNode.cpp',
'webaudio/AudioChannelMerger.h',
'webaudio/AudioChannelMerger.cpp',
'webaudio/AudioChannelSplitter.h',
'webaudio/AudioChannelSplitter.cpp',
'webaudio/AudioContext.h',
'webaudio/AudioContext.cpp',
'webaudio/AudioDestinationNode.h',
'webaudio/AudioDestinationNode.cpp',
'webaudio/AudioGain.h',
'webaudio/AudioGainNode.h',
'webaudio/AudioGainNode.cpp',
'webaudio/AudioListener.h',
'webaudio/AudioListener.cpp',
'webaudio/AudioNode.h',
'webaudio/AudioNode.cpp',
'webaudio/AudioNodeInput.cpp',
'webaudio/AudioNodeInput.h',
'webaudio/AudioNodeOutput.cpp',
'webaudio/AudioNodeOutput.h',
'webaudio/AudioPannerNode.h',
'webaudio/AudioPannerNode.cpp',
'webaudio/AudioParam.h',
'webaudio/AudioProcessingEvent.h',
'webaudio/AudioProcessingEvent.cpp',
'webaudio/AudioSourceNode.h',
'webaudio/BiquadDSPKernel.h',
'webaudio/BiquadDSPKernel.cpp',
'webaudio/BiquadProcessor.h',
'webaudio/BiquadProcessor.cpp',
'webaudio/ConvolverNode.h',
'webaudio/ConvolverNode.cpp',
'webaudio/DelayDSPKernel.h',
'webaudio/DelayDSPKernel.cpp',
'webaudio/DelayNode.h',
'webaudio/DelayNode.cpp',
'webaudio/DelayProcessor.h',
'webaudio/DelayProcessor.cpp',
'webaudio/HighPass2FilterNode.h',
'webaudio/HighPass2FilterNode.cpp',
'webaudio/JavaScriptAudioNode.h',
'webaudio/JavaScriptAudioNode.cpp',
'webaudio/LowPass2FilterNode.h',
'webaudio/LowPass2FilterNode.cpp',
'webaudio/RealtimeAnalyser.h',
'webaudio/RealtimeAnalyser.cpp',
'webaudio/RealtimeAnalyserNode.h',
'webaudio/RealtimeAnalyserNode.cpp',
'websockets/ThreadableWebSocketChannel.cpp',
'websockets/ThreadableWebSocketChannel.h',
'websockets/ThreadableWebSocketChannelClientWrapper.h',
......
......@@ -489,6 +489,26 @@ IDL_BINDINGS += \
svg/SVGUseElement.idl \
svg/SVGViewElement.idl \
svg/SVGVKernElement.idl \
webaudio/AudioBuffer.idl \
webaudio/AudioBufferSourceNode.idl \
webaudio/AudioChannelMerger.idl \
webaudio/AudioChannelSplitter.idl \
webaudio/AudioContext.idl \
webaudio/AudioDestinationNode.idl \
webaudio/AudioGain.idl \
webaudio/AudioGainNode.idl \
webaudio/AudioListener.idl \
webaudio/AudioNode.idl \
webaudio/AudioPannerNode.idl \
webaudio/AudioParam.idl \
webaudio/AudioProcessingEvent.idl \
webaudio/AudioSourceNode.idl \
webaudio/ConvolverNode.idl \
webaudio/DelayNode.idl \
webaudio/HighPass2FilterNode.idl \
webaudio/JavaScriptAudioNode.idl \
webaudio/LowPass2FilterNode.idl \
webaudio/RealtimeAnalyserNode.idl \
websockets/WebSocket.idl \
workers/AbstractWorker.idl \
workers/DedicatedWorkerContext.idl \
......
......@@ -239,6 +239,7 @@ WEBCORE_INCLUDEPATH = \
$$PWD/page/animation \
$$PWD/platform \
$$PWD/platform/animation \
$$PWD/platform/audio \
$$PWD/platform/graphics \
$$PWD/platform/graphics/filters \
$$PWD/platform/graphics/transforms \
......@@ -258,6 +259,7 @@ WEBCORE_INCLUDEPATH = \
$$PWD/svg/graphics \
$$PWD/svg/graphics/filters \
$$PWD/svg/properties \
$$PWD/webaudio \
$$PWD/websockets \
$$PWD/wml \
$$PWD/workers \
......
......@@ -34,6 +34,11 @@
#include "HTMLDocument.h"
#include "History.h"
#include "JSAudioConstructor.h"
#if ENABLE(WEB_AUDIO)
#include "JSAudioContext.h"
#endif
#include "JSDOMWindowShell.h"
#include "JSEvent.h"
#include "JSEventListener.h"
......@@ -648,6 +653,13 @@ JSValue JSDOMWindow::sharedWorker(ExecState* exec) const
}
#endif
#if ENABLE(WEB_AUDIO)
JSValue JSDOMWindow::audioContext(ExecState* exec) const
{
return getDOMConstructor<JSAudioContextConstructor>(exec, this);
}
#endif
#if ENABLE(WEB_SOCKETS)
JSValue JSDOMWindow::webSocket(ExecState* exec) const
{
......
......@@ -73,6 +73,7 @@ contains(DEFINES, ENABLE_SINGLE_THREADED=1) {
!contains(DEFINES, ENABLE_INPUT_SPEECH=.): DEFINES += ENABLE_INPUT_SPEECH=0
!contains(DEFINES, ENABLE_INSPECTOR=.): DEFINES += ENABLE_INSPECTOR=1
!contains(DEFINES, ENABLE_3D_RENDERING=.): DEFINES += ENABLE_3D_RENDERING=1
!contains(DEFINES, ENABLE_WEB_AUDIO=.): DEFINES += ENABLE_WEB_AUDIO=0
# SVG support
!contains(DEFINES, ENABLE_SVG=0) {
......
......@@ -500,6 +500,9 @@ module window {
attribute [JSCCustomGetter,Conditional=3D_CANVAS|BLOB,EnabledAtRuntime] Float32ArrayConstructor Float32Array; // Usable with new operator
attribute [JSCCustomGetter,Conditional=3D_CANVAS|BLOB,EnabledAtRuntime] DataViewConstructor DataView; // Usable with new operator
attribute [JSCCustomGetter,Conditional=WEB_AUDIO] AudioContextConstructor webkitAudioContext; // Usable with new operator
attribute [Conditional=WEB_AUDIO] AudioPannerNodeConstructor webkitAudioPannerNode; // Needed for panning model constants
attribute EventConstructor Event;
attribute BeforeLoadEventConstructor BeforeLoadEvent;
attribute HashChangeEventConstructor HashChangeEvent;
......
......@@ -34,7 +34,6 @@
#include "AudioBus.h"
#include "AudioFileReader.h"
#include "AudioResources.h"
#include "Biquad.h"
#include "FFTFrame.h"
#include "HRTFPanner.h"
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment