gecko-dev/dom/media/TrackUnionStream.cpp

473 строки
18 KiB
C++
Исходник Обычный вид История

/* -*- Mode: C++; tab-width: 2; indent-tabs-mode: nil; c-basic-offset: 2 -*-*/
/* This Source Code Form is subject to the terms of the Mozilla Public
* License, v. 2.0. If a copy of the MPL was not distributed with this file,
* You can obtain one at http://mozilla.org/MPL/2.0/. */
#include "MediaStreamGraphImpl.h"
#include "MediaStreamListener.h"
#include "mozilla/MathAlgorithms.h"
#include "mozilla/unused.h"
#include "AudioSegment.h"
#include "VideoSegment.h"
#include "nsContentUtils.h"
#include "nsIAppShell.h"
#include "nsIObserver.h"
#include "nsPrintfCString.h"
#include "nsServiceManagerUtils.h"
#include "nsWidgetsCID.h"
#include "prerror.h"
#include "mozilla/Logging.h"
#include "mozilla/Attributes.h"
#include "TrackUnionStream.h"
#include "ImageContainer.h"
#include "AudioChannelService.h"
#include "AudioNodeEngine.h"
#include "AudioNodeStream.h"
#include "AudioNodeExternalInputStream.h"
Bug 1094764 - Implement AudioContext.suspend and friends. r=roc,ehsan - Relevant spec text: - http://webaudio.github.io/web-audio-api/#widl-AudioContext-suspend-Promise - http://webaudio.github.io/web-audio-api/#widl-AudioContext-resume-Promise - http://webaudio.github.io/web-audio-api/#widl-AudioContext-close-Promise - http://webaudio.github.io/web-audio-api/#widl-AudioContext-state - http://webaudio.github.io/web-audio-api/#widl-AudioContext-onstatechange - In a couple words, the behavior we want: - Closed context cannot have new nodes created, but can do decodeAudioData, and create buffers, and such. - OfflineAudioContexts don't support those methods, transitions happen at startRendering and at the end of processing. onstatechange is used to make this observable. - (regular) AudioContexts support those methods. The promises and onstatechange should be resolved/called when the operation has actually completed on the rendering thread. Once a context has been closed, it cannot transition back to "running". An AudioContext switches to "running" when the audio callback start running, this allow authors to know how long the audio stack takes to start running. - MediaStreams that feed in/go out of a suspended graph should respectively not buffer at the graph input, and output silence - suspended context should not be doing much on the CPU, and we should try to pause audio streams if we can (this behaviour is the main reason we need this in the first place, for saving battery on mobile, and CPU on all platforms) - Now, the implementation: - AudioNodeStreams are now tagged with a context id, to be able to operate on all the streams of a given AudioContext on the Graph thread without having to go and lock everytime to touch the AudioContext. This happens in the AudioNodeStream ctor. IDs are of course constant for the lifetime of the node. - When an AudioContext goes into suspended mode, streams for this AudioContext are moved out of the mStreams array to a second array, mSuspendedStreams. Streams in mSuspendedStream are not ordered, and are not processed. - The MSG will automatically switch to a SystemClockDriver when it finds that there are no more AudioNodeStream/Stream with an audio track. This is how pausing the audio subsystem and saving battery works. Subsequently, when the MSG finds that there are only streams in mSuspendedStreams, it will go to sleep (block on a monitor), so we save CPU, but it does not shut itself down. This is mostly not a new behaviour (this is what the MSG does since the refactoring), but is important to note. - Promises are gripped (addref-ed) on the main thread, and then shepherd down other threads and to the GraphDriver, if needed (sometimes we can resolve them right away). They move between threads as void* to prevent calling methods on them, as they are not thread safe. Then, the driver executes the operation, and when it's done (initializing and closing audio streams can take some time), we send the promise back to the main thread, and resolve it, casting back to Promise* after asserting we're back on the main thread. This way, we can send them back on the main thread once an operation has complete (suspending an audio stream, starting it again on resume(), etc.), without having to do bookkeeping between suspend calls and their result. Promises are not thread safe, so we can't move them around AddRef-ed. - The stream destruction logic now takes into account that a stream can be destroyed while not being in mStreams. - A graph can now switch GraphDriver twice or more per iteration, for example if an author goes suspend()/resume()/suspend() in the same script. - Some operation have to be done on suspended stream, so we now use double for-loop around mSuspendedStreams and mStreams in some places in MediaStreamGraph.cpp. - A tricky part was making sure everything worked at AudioContext boundaries. TrackUnionStream that have one of their input stream suspended append null ticks instead. - The graph ordering algorithm had to be altered to not include suspended streams. - There are some edge cases (adding a stream on a suspended graph, calling suspend/resume when a graph has just been close()d).
2015-02-27 20:22:05 +03:00
#include "webaudio/MediaStreamAudioDestinationNode.h"
#include <algorithm>
#include "DOMMediaStream.h"
#include "GeckoProfiler.h"
#ifdef MOZ_WEBRTC
#include "AudioOutputObserver.h"
#endif
using namespace mozilla::layers;
using namespace mozilla::dom;
using namespace mozilla::gfx;
namespace mozilla {
Bug 946065 - Part 10: Move content/media/ to dom/. r=peterv --HG-- rename : content/media/AbstractMediaDecoder.h => dom/media/AbstractMediaDecoder.h rename : content/media/AudioBufferUtils.h => dom/media/AudioBufferUtils.h rename : content/media/AudioChannelFormat.cpp => dom/media/AudioChannelFormat.cpp rename : content/media/AudioChannelFormat.h => dom/media/AudioChannelFormat.h rename : content/media/AudioCompactor.cpp => dom/media/AudioCompactor.cpp rename : content/media/AudioCompactor.h => dom/media/AudioCompactor.h rename : content/media/AudioMixer.h => dom/media/AudioMixer.h rename : content/media/AudioSampleFormat.h => dom/media/AudioSampleFormat.h rename : content/media/AudioSegment.cpp => dom/media/AudioSegment.cpp rename : content/media/AudioSegment.h => dom/media/AudioSegment.h rename : content/media/AudioSink.cpp => dom/media/AudioSink.cpp rename : content/media/AudioSink.h => dom/media/AudioSink.h rename : content/media/AudioStream.cpp => dom/media/AudioStream.cpp rename : content/media/AudioStream.h => dom/media/AudioStream.h rename : content/media/AudioStreamTrack.cpp => dom/media/AudioStreamTrack.cpp rename : content/media/AudioStreamTrack.h => dom/media/AudioStreamTrack.h rename : content/media/AudioTrack.cpp => dom/media/AudioTrack.cpp rename : content/media/AudioTrack.h => dom/media/AudioTrack.h rename : content/media/AudioTrackList.cpp => dom/media/AudioTrackList.cpp rename : content/media/AudioTrackList.h => dom/media/AudioTrackList.h rename : content/media/BufferMediaResource.h => dom/media/BufferMediaResource.h rename : content/media/CubebUtils.cpp => dom/media/CubebUtils.cpp rename : content/media/CubebUtils.h => dom/media/CubebUtils.h rename : content/media/DOMMediaStream.cpp => dom/media/DOMMediaStream.cpp rename : content/media/DOMMediaStream.h => dom/media/DOMMediaStream.h rename : content/media/DecoderTraits.cpp => dom/media/DecoderTraits.cpp rename : content/media/DecoderTraits.h => dom/media/DecoderTraits.h rename : content/media/EncodedBufferCache.cpp => dom/media/EncodedBufferCache.cpp rename : content/media/EncodedBufferCache.h => dom/media/EncodedBufferCache.h rename : content/media/FileBlockCache.cpp => dom/media/FileBlockCache.cpp rename : content/media/FileBlockCache.h => dom/media/FileBlockCache.h rename : content/media/GraphDriver.cpp => dom/media/GraphDriver.cpp rename : content/media/GraphDriver.h => dom/media/GraphDriver.h rename : content/media/Latency.cpp => dom/media/Latency.cpp rename : content/media/Latency.h => dom/media/Latency.h rename : content/media/MP3FrameParser.cpp => dom/media/MP3FrameParser.cpp rename : content/media/MP3FrameParser.h => dom/media/MP3FrameParser.h rename : content/media/MediaCache.cpp => dom/media/MediaCache.cpp rename : content/media/MediaCache.h => dom/media/MediaCache.h rename : content/media/MediaData.cpp => dom/media/MediaData.cpp rename : content/media/MediaData.h => dom/media/MediaData.h rename : content/media/MediaDataDecodedListener.h => dom/media/MediaDataDecodedListener.h rename : content/media/MediaDecoder.cpp => dom/media/MediaDecoder.cpp rename : content/media/MediaDecoder.h => dom/media/MediaDecoder.h rename : content/media/MediaDecoderOwner.h => dom/media/MediaDecoderOwner.h rename : content/media/MediaDecoderReader.cpp => dom/media/MediaDecoderReader.cpp rename : content/media/MediaDecoderReader.h => dom/media/MediaDecoderReader.h rename : content/media/MediaDecoderStateMachine.cpp => dom/media/MediaDecoderStateMachine.cpp rename : content/media/MediaDecoderStateMachine.h => dom/media/MediaDecoderStateMachine.h rename : content/media/MediaDecoderStateMachineScheduler.cpp => dom/media/MediaDecoderStateMachineScheduler.cpp rename : content/media/MediaDecoderStateMachineScheduler.h => dom/media/MediaDecoderStateMachineScheduler.h rename : content/media/MediaInfo.h => dom/media/MediaInfo.h rename : content/media/MediaMetadataManager.h => dom/media/MediaMetadataManager.h rename : content/media/MediaQueue.h => dom/media/MediaQueue.h rename : content/media/MediaRecorder.cpp => dom/media/MediaRecorder.cpp rename : content/media/MediaRecorder.h => dom/media/MediaRecorder.h rename : content/media/MediaResource.cpp => dom/media/MediaResource.cpp rename : content/media/MediaResource.h => dom/media/MediaResource.h rename : content/media/MediaSegment.h => dom/media/MediaSegment.h rename : content/media/MediaShutdownManager.cpp => dom/media/MediaShutdownManager.cpp rename : content/media/MediaShutdownManager.h => dom/media/MediaShutdownManager.h rename : content/media/MediaStreamGraph.cpp => dom/media/MediaStreamGraph.cpp rename : content/media/MediaStreamGraph.h => dom/media/MediaStreamGraph.h rename : content/media/MediaStreamGraphImpl.h => dom/media/MediaStreamGraphImpl.h rename : content/media/MediaStreamTrack.cpp => dom/media/MediaStreamTrack.cpp rename : content/media/MediaStreamTrack.h => dom/media/MediaStreamTrack.h rename : content/media/MediaTaskQueue.cpp => dom/media/MediaTaskQueue.cpp rename : content/media/MediaTaskQueue.h => dom/media/MediaTaskQueue.h rename : content/media/MediaTrack.cpp => dom/media/MediaTrack.cpp rename : content/media/MediaTrack.h => dom/media/MediaTrack.h rename : content/media/MediaTrackList.cpp => dom/media/MediaTrackList.cpp rename : content/media/MediaTrackList.h => dom/media/MediaTrackList.h rename : content/media/RtspMediaResource.cpp => dom/media/RtspMediaResource.cpp rename : content/media/RtspMediaResource.h => dom/media/RtspMediaResource.h rename : content/media/SharedBuffer.h => dom/media/SharedBuffer.h rename : content/media/SharedThreadPool.cpp => dom/media/SharedThreadPool.cpp rename : content/media/SharedThreadPool.h => dom/media/SharedThreadPool.h rename : content/media/StreamBuffer.cpp => dom/media/StreamBuffer.cpp rename : content/media/StreamBuffer.h => dom/media/StreamBuffer.h rename : content/media/TextTrack.cpp => dom/media/TextTrack.cpp rename : content/media/TextTrack.h => dom/media/TextTrack.h rename : content/media/TextTrackCue.cpp => dom/media/TextTrackCue.cpp rename : content/media/TextTrackCue.h => dom/media/TextTrackCue.h rename : content/media/TextTrackCueList.cpp => dom/media/TextTrackCueList.cpp rename : content/media/TextTrackCueList.h => dom/media/TextTrackCueList.h rename : content/media/TextTrackList.cpp => dom/media/TextTrackList.cpp rename : content/media/TextTrackList.h => dom/media/TextTrackList.h rename : content/media/TextTrackRegion.cpp => dom/media/TextTrackRegion.cpp rename : content/media/TextTrackRegion.h => dom/media/TextTrackRegion.h rename : content/media/ThreadPoolCOMListener.cpp => dom/media/ThreadPoolCOMListener.cpp rename : content/media/ThreadPoolCOMListener.h => dom/media/ThreadPoolCOMListener.h rename : content/media/TimeVarying.h => dom/media/TimeVarying.h rename : content/media/TrackUnionStream.cpp => dom/media/TrackUnionStream.cpp rename : content/media/TrackUnionStream.h => dom/media/TrackUnionStream.h rename : content/media/VideoFrameContainer.cpp => dom/media/VideoFrameContainer.cpp rename : content/media/VideoFrameContainer.h => dom/media/VideoFrameContainer.h rename : content/media/VideoPlaybackQuality.cpp => dom/media/VideoPlaybackQuality.cpp rename : content/media/VideoPlaybackQuality.h => dom/media/VideoPlaybackQuality.h rename : content/media/VideoSegment.cpp => dom/media/VideoSegment.cpp rename : content/media/VideoSegment.h => dom/media/VideoSegment.h rename : content/media/VideoStreamTrack.cpp => dom/media/VideoStreamTrack.cpp rename : content/media/VideoStreamTrack.h => dom/media/VideoStreamTrack.h rename : content/media/VideoTrack.cpp => dom/media/VideoTrack.cpp rename : content/media/VideoTrack.h => dom/media/VideoTrack.h rename : content/media/VideoTrackList.cpp => dom/media/VideoTrackList.cpp rename : content/media/VideoTrackList.h => dom/media/VideoTrackList.h rename : content/media/VideoUtils.cpp => dom/media/VideoUtils.cpp rename : content/media/VideoUtils.h => dom/media/VideoUtils.h rename : content/media/VorbisUtils.h => dom/media/VorbisUtils.h rename : content/media/WebVTTListener.cpp => dom/media/WebVTTListener.cpp rename : content/media/WebVTTListener.h => dom/media/WebVTTListener.h rename : content/media/android/AndroidMediaDecoder.cpp => dom/media/android/AndroidMediaDecoder.cpp rename : content/media/android/AndroidMediaDecoder.h => dom/media/android/AndroidMediaDecoder.h rename : content/media/android/AndroidMediaPluginHost.cpp => dom/media/android/AndroidMediaPluginHost.cpp rename : content/media/android/AndroidMediaPluginHost.h => dom/media/android/AndroidMediaPluginHost.h rename : content/media/android/AndroidMediaReader.cpp => dom/media/android/AndroidMediaReader.cpp rename : content/media/android/AndroidMediaReader.h => dom/media/android/AndroidMediaReader.h rename : content/media/android/AndroidMediaResourceServer.cpp => dom/media/android/AndroidMediaResourceServer.cpp rename : content/media/android/AndroidMediaResourceServer.h => dom/media/android/AndroidMediaResourceServer.h rename : content/media/android/MPAPI.h => dom/media/android/MPAPI.h rename : content/media/android/moz.build => dom/media/android/moz.build rename : content/media/apple/AppleDecoder.cpp => dom/media/apple/AppleDecoder.cpp rename : content/media/apple/AppleDecoder.h => dom/media/apple/AppleDecoder.h rename : content/media/apple/AppleMP3Reader.cpp => dom/media/apple/AppleMP3Reader.cpp rename : content/media/apple/AppleMP3Reader.h => dom/media/apple/AppleMP3Reader.h rename : content/media/apple/moz.build => dom/media/apple/moz.build rename : content/media/compiledtest/TestAudioBuffers.cpp => dom/media/compiledtest/TestAudioBuffers.cpp rename : content/media/compiledtest/TestAudioMixer.cpp => dom/media/compiledtest/TestAudioMixer.cpp rename : content/media/compiledtest/moz.build => dom/media/compiledtest/moz.build rename : content/media/directshow/AudioSinkFilter.cpp => dom/media/directshow/AudioSinkFilter.cpp rename : content/media/directshow/AudioSinkFilter.h => dom/media/directshow/AudioSinkFilter.h rename : content/media/directshow/AudioSinkInputPin.cpp => dom/media/directshow/AudioSinkInputPin.cpp rename : content/media/directshow/AudioSinkInputPin.h => dom/media/directshow/AudioSinkInputPin.h rename : content/media/directshow/DirectShowDecoder.cpp => dom/media/directshow/DirectShowDecoder.cpp rename : content/media/directshow/DirectShowDecoder.h => dom/media/directshow/DirectShowDecoder.h rename : content/media/directshow/DirectShowReader.cpp => dom/media/directshow/DirectShowReader.cpp rename : content/media/directshow/DirectShowReader.h => dom/media/directshow/DirectShowReader.h rename : content/media/directshow/DirectShowUtils.cpp => dom/media/directshow/DirectShowUtils.cpp rename : content/media/directshow/DirectShowUtils.h => dom/media/directshow/DirectShowUtils.h rename : content/media/directshow/SampleSink.cpp => dom/media/directshow/SampleSink.cpp rename : content/media/directshow/SampleSink.h => dom/media/directshow/SampleSink.h rename : content/media/directshow/SourceFilter.cpp => dom/media/directshow/SourceFilter.cpp rename : content/media/directshow/SourceFilter.h => dom/media/directshow/SourceFilter.h rename : content/media/directshow/moz.build => dom/media/directshow/moz.build rename : content/media/eme/CDMCallbackProxy.cpp => dom/media/eme/CDMCallbackProxy.cpp rename : content/media/eme/CDMCallbackProxy.h => dom/media/eme/CDMCallbackProxy.h rename : content/media/eme/CDMCaps.cpp => dom/media/eme/CDMCaps.cpp rename : content/media/eme/CDMCaps.h => dom/media/eme/CDMCaps.h rename : content/media/eme/CDMProxy.cpp => dom/media/eme/CDMProxy.cpp rename : content/media/eme/CDMProxy.h => dom/media/eme/CDMProxy.h rename : content/media/eme/EMELog.cpp => dom/media/eme/EMELog.cpp rename : content/media/eme/EMELog.h => dom/media/eme/EMELog.h rename : content/media/eme/MediaEncryptedEvent.cpp => dom/media/eme/MediaEncryptedEvent.cpp rename : content/media/eme/MediaEncryptedEvent.h => dom/media/eme/MediaEncryptedEvent.h rename : content/media/eme/MediaKeyError.cpp => dom/media/eme/MediaKeyError.cpp rename : content/media/eme/MediaKeyError.h => dom/media/eme/MediaKeyError.h rename : content/media/eme/MediaKeyMessageEvent.cpp => dom/media/eme/MediaKeyMessageEvent.cpp rename : content/media/eme/MediaKeyMessageEvent.h => dom/media/eme/MediaKeyMessageEvent.h rename : content/media/eme/MediaKeySession.cpp => dom/media/eme/MediaKeySession.cpp rename : content/media/eme/MediaKeySession.h => dom/media/eme/MediaKeySession.h rename : content/media/eme/MediaKeys.cpp => dom/media/eme/MediaKeys.cpp rename : content/media/eme/MediaKeys.h => dom/media/eme/MediaKeys.h rename : content/media/eme/moz.build => dom/media/eme/moz.build rename : content/media/encoder/ContainerWriter.h => dom/media/encoder/ContainerWriter.h rename : content/media/encoder/EncodedFrameContainer.h => dom/media/encoder/EncodedFrameContainer.h rename : content/media/encoder/MediaEncoder.cpp => dom/media/encoder/MediaEncoder.cpp rename : content/media/encoder/MediaEncoder.h => dom/media/encoder/MediaEncoder.h rename : content/media/encoder/OmxTrackEncoder.cpp => dom/media/encoder/OmxTrackEncoder.cpp rename : content/media/encoder/OmxTrackEncoder.h => dom/media/encoder/OmxTrackEncoder.h rename : content/media/encoder/OpusTrackEncoder.cpp => dom/media/encoder/OpusTrackEncoder.cpp rename : content/media/encoder/OpusTrackEncoder.h => dom/media/encoder/OpusTrackEncoder.h rename : content/media/encoder/TrackEncoder.cpp => dom/media/encoder/TrackEncoder.cpp rename : content/media/encoder/TrackEncoder.h => dom/media/encoder/TrackEncoder.h rename : content/media/encoder/TrackMetadataBase.h => dom/media/encoder/TrackMetadataBase.h rename : content/media/encoder/VP8TrackEncoder.cpp => dom/media/encoder/VP8TrackEncoder.cpp rename : content/media/encoder/VP8TrackEncoder.h => dom/media/encoder/VP8TrackEncoder.h rename : content/media/encoder/VorbisTrackEncoder.cpp => dom/media/encoder/VorbisTrackEncoder.cpp rename : content/media/encoder/VorbisTrackEncoder.h => dom/media/encoder/VorbisTrackEncoder.h rename : content/media/encoder/fmp4_muxer/AMRBox.cpp => dom/media/encoder/fmp4_muxer/AMRBox.cpp rename : content/media/encoder/fmp4_muxer/AMRBox.h => dom/media/encoder/fmp4_muxer/AMRBox.h rename : content/media/encoder/fmp4_muxer/AVCBox.cpp => dom/media/encoder/fmp4_muxer/AVCBox.cpp rename : content/media/encoder/fmp4_muxer/AVCBox.h => dom/media/encoder/fmp4_muxer/AVCBox.h rename : content/media/encoder/fmp4_muxer/ISOControl.cpp => dom/media/encoder/fmp4_muxer/ISOControl.cpp rename : content/media/encoder/fmp4_muxer/ISOControl.h => dom/media/encoder/fmp4_muxer/ISOControl.h rename : content/media/encoder/fmp4_muxer/ISOMediaBoxes.cpp => dom/media/encoder/fmp4_muxer/ISOMediaBoxes.cpp rename : content/media/encoder/fmp4_muxer/ISOMediaBoxes.h => dom/media/encoder/fmp4_muxer/ISOMediaBoxes.h rename : content/media/encoder/fmp4_muxer/ISOMediaWriter.cpp => dom/media/encoder/fmp4_muxer/ISOMediaWriter.cpp rename : content/media/encoder/fmp4_muxer/ISOMediaWriter.h => dom/media/encoder/fmp4_muxer/ISOMediaWriter.h rename : content/media/encoder/fmp4_muxer/ISOTrackMetadata.h => dom/media/encoder/fmp4_muxer/ISOTrackMetadata.h rename : content/media/encoder/fmp4_muxer/MP4ESDS.cpp => dom/media/encoder/fmp4_muxer/MP4ESDS.cpp rename : content/media/encoder/fmp4_muxer/MP4ESDS.h => dom/media/encoder/fmp4_muxer/MP4ESDS.h rename : content/media/encoder/fmp4_muxer/MuxerOperation.h => dom/media/encoder/fmp4_muxer/MuxerOperation.h rename : content/media/encoder/fmp4_muxer/moz.build => dom/media/encoder/fmp4_muxer/moz.build rename : content/media/encoder/moz.build => dom/media/encoder/moz.build rename : content/media/fmp4/BlankDecoderModule.cpp => dom/media/fmp4/BlankDecoderModule.cpp rename : content/media/fmp4/MP4Decoder.cpp => dom/media/fmp4/MP4Decoder.cpp rename : content/media/fmp4/MP4Decoder.h => dom/media/fmp4/MP4Decoder.h rename : content/media/fmp4/MP4Reader.cpp => dom/media/fmp4/MP4Reader.cpp rename : content/media/fmp4/MP4Reader.h => dom/media/fmp4/MP4Reader.h rename : content/media/fmp4/PlatformDecoderModule.cpp => dom/media/fmp4/PlatformDecoderModule.cpp rename : content/media/fmp4/PlatformDecoderModule.h => dom/media/fmp4/PlatformDecoderModule.h rename : content/media/fmp4/android/AndroidDecoderModule.cpp => dom/media/fmp4/android/AndroidDecoderModule.cpp rename : content/media/fmp4/android/AndroidDecoderModule.h => dom/media/fmp4/android/AndroidDecoderModule.h rename : content/media/fmp4/apple/AppleATDecoder.cpp => dom/media/fmp4/apple/AppleATDecoder.cpp rename : content/media/fmp4/apple/AppleATDecoder.h => dom/media/fmp4/apple/AppleATDecoder.h rename : content/media/fmp4/apple/AppleCMFunctions.h => dom/media/fmp4/apple/AppleCMFunctions.h rename : content/media/fmp4/apple/AppleCMLinker.cpp => dom/media/fmp4/apple/AppleCMLinker.cpp rename : content/media/fmp4/apple/AppleCMLinker.h => dom/media/fmp4/apple/AppleCMLinker.h rename : content/media/fmp4/apple/AppleDecoderModule.cpp => dom/media/fmp4/apple/AppleDecoderModule.cpp rename : content/media/fmp4/apple/AppleDecoderModule.h => dom/media/fmp4/apple/AppleDecoderModule.h rename : content/media/fmp4/apple/AppleUtils.cpp => dom/media/fmp4/apple/AppleUtils.cpp rename : content/media/fmp4/apple/AppleUtils.h => dom/media/fmp4/apple/AppleUtils.h rename : content/media/fmp4/apple/AppleVDADecoder.cpp => dom/media/fmp4/apple/AppleVDADecoder.cpp rename : content/media/fmp4/apple/AppleVDADecoder.h => dom/media/fmp4/apple/AppleVDADecoder.h rename : content/media/fmp4/apple/AppleVDAFunctions.h => dom/media/fmp4/apple/AppleVDAFunctions.h rename : content/media/fmp4/apple/AppleVDALinker.cpp => dom/media/fmp4/apple/AppleVDALinker.cpp rename : content/media/fmp4/apple/AppleVDALinker.h => dom/media/fmp4/apple/AppleVDALinker.h rename : content/media/fmp4/apple/AppleVTDecoder.cpp => dom/media/fmp4/apple/AppleVTDecoder.cpp rename : content/media/fmp4/apple/AppleVTDecoder.h => dom/media/fmp4/apple/AppleVTDecoder.h rename : content/media/fmp4/apple/AppleVTFunctions.h => dom/media/fmp4/apple/AppleVTFunctions.h rename : content/media/fmp4/apple/AppleVTLinker.cpp => dom/media/fmp4/apple/AppleVTLinker.cpp rename : content/media/fmp4/apple/AppleVTLinker.h => dom/media/fmp4/apple/AppleVTLinker.h rename : content/media/fmp4/apple/ReorderQueue.h => dom/media/fmp4/apple/ReorderQueue.h rename : content/media/fmp4/apple/VideoDecodeAcceleration/VDADecoder.h => dom/media/fmp4/apple/VideoDecodeAcceleration/VDADecoder.h rename : content/media/fmp4/apple/VideoToolbox/VideoToolbox.h => dom/media/fmp4/apple/VideoToolbox/VideoToolbox.h rename : content/media/fmp4/eme/EMEAudioDecoder.cpp => dom/media/fmp4/eme/EMEAudioDecoder.cpp rename : content/media/fmp4/eme/EMEAudioDecoder.h => dom/media/fmp4/eme/EMEAudioDecoder.h rename : content/media/fmp4/eme/EMEDecoderModule.cpp => dom/media/fmp4/eme/EMEDecoderModule.cpp rename : content/media/fmp4/eme/EMEDecoderModule.h => dom/media/fmp4/eme/EMEDecoderModule.h rename : content/media/fmp4/eme/EMEH264Decoder.cpp => dom/media/fmp4/eme/EMEH264Decoder.cpp rename : content/media/fmp4/eme/EMEH264Decoder.h => dom/media/fmp4/eme/EMEH264Decoder.h rename : content/media/fmp4/eme/moz.build => dom/media/fmp4/eme/moz.build rename : content/media/fmp4/ffmpeg/FFmpegAudioDecoder.cpp => dom/media/fmp4/ffmpeg/FFmpegAudioDecoder.cpp rename : content/media/fmp4/ffmpeg/FFmpegAudioDecoder.h => dom/media/fmp4/ffmpeg/FFmpegAudioDecoder.h rename : content/media/fmp4/ffmpeg/FFmpegDataDecoder.cpp => dom/media/fmp4/ffmpeg/FFmpegDataDecoder.cpp rename : content/media/fmp4/ffmpeg/FFmpegDataDecoder.h => dom/media/fmp4/ffmpeg/FFmpegDataDecoder.h rename : content/media/fmp4/ffmpeg/FFmpegDecoderModule.cpp => dom/media/fmp4/ffmpeg/FFmpegDecoderModule.cpp rename : content/media/fmp4/ffmpeg/FFmpegDecoderModule.h => dom/media/fmp4/ffmpeg/FFmpegDecoderModule.h rename : content/media/fmp4/ffmpeg/FFmpegFunctionList.h => dom/media/fmp4/ffmpeg/FFmpegFunctionList.h rename : content/media/fmp4/ffmpeg/FFmpegH264Decoder.cpp => dom/media/fmp4/ffmpeg/FFmpegH264Decoder.cpp rename : content/media/fmp4/ffmpeg/FFmpegH264Decoder.h => dom/media/fmp4/ffmpeg/FFmpegH264Decoder.h rename : content/media/fmp4/ffmpeg/FFmpegLibs.h => dom/media/fmp4/ffmpeg/FFmpegLibs.h rename : content/media/fmp4/ffmpeg/FFmpegLog.cpp => dom/media/fmp4/ffmpeg/FFmpegLog.cpp rename : content/media/fmp4/ffmpeg/FFmpegLog.h => dom/media/fmp4/ffmpeg/FFmpegLog.h rename : content/media/fmp4/ffmpeg/FFmpegRuntimeLinker.cpp => dom/media/fmp4/ffmpeg/FFmpegRuntimeLinker.cpp rename : content/media/fmp4/ffmpeg/FFmpegRuntimeLinker.h => dom/media/fmp4/ffmpeg/FFmpegRuntimeLinker.h rename : content/media/fmp4/ffmpeg/README_mozilla => dom/media/fmp4/ffmpeg/README_mozilla rename : content/media/fmp4/ffmpeg/libav53/include/COPYING.LGPLv2.1 => dom/media/fmp4/ffmpeg/libav53/include/COPYING.LGPLv2.1 rename : content/media/fmp4/ffmpeg/libav53/include/libavcodec/avcodec.h => dom/media/fmp4/ffmpeg/libav53/include/libavcodec/avcodec.h rename : content/media/fmp4/ffmpeg/libav53/include/libavcodec/avfft.h => dom/media/fmp4/ffmpeg/libav53/include/libavcodec/avfft.h rename : content/media/fmp4/ffmpeg/libav53/include/libavcodec/dxva2.h => dom/media/fmp4/ffmpeg/libav53/include/libavcodec/dxva2.h rename : content/media/fmp4/ffmpeg/libav53/include/libavcodec/old_codec_ids.h => dom/media/fmp4/ffmpeg/libav53/include/libavcodec/old_codec_ids.h rename : content/media/fmp4/ffmpeg/libav53/include/libavcodec/opt.h => dom/media/fmp4/ffmpeg/libav53/include/libavcodec/opt.h rename : content/media/fmp4/ffmpeg/libav53/include/libavcodec/vaapi.h => dom/media/fmp4/ffmpeg/libav53/include/libavcodec/vaapi.h rename : content/media/fmp4/ffmpeg/libav53/include/libavcodec/vda.h => dom/media/fmp4/ffmpeg/libav53/include/libavcodec/vda.h rename : content/media/fmp4/ffmpeg/libav53/include/libavcodec/vdpau.h => dom/media/fmp4/ffmpeg/libav53/include/libavcodec/vdpau.h rename : content/media/fmp4/ffmpeg/libav53/include/libavcodec/version.h => dom/media/fmp4/ffmpeg/libav53/include/libavcodec/version.h rename : content/media/fmp4/ffmpeg/libav53/include/libavcodec/xvmc.h => dom/media/fmp4/ffmpeg/libav53/include/libavcodec/xvmc.h rename : content/media/fmp4/ffmpeg/libav53/include/libavformat/avformat.h => dom/media/fmp4/ffmpeg/libav53/include/libavformat/avformat.h rename : content/media/fmp4/ffmpeg/libav53/include/libavformat/avio.h => dom/media/fmp4/ffmpeg/libav53/include/libavformat/avio.h rename : content/media/fmp4/ffmpeg/libav53/include/libavformat/version.h => dom/media/fmp4/ffmpeg/libav53/include/libavformat/version.h rename : content/media/fmp4/ffmpeg/libav53/include/libavutil/adler32.h => dom/media/fmp4/ffmpeg/libav53/include/libavutil/adler32.h rename : content/media/fmp4/ffmpeg/libav53/include/libavutil/aes.h => dom/media/fmp4/ffmpeg/libav53/include/libavutil/aes.h rename : content/media/fmp4/ffmpeg/libav53/include/libavutil/attributes.h => dom/media/fmp4/ffmpeg/libav53/include/libavutil/attributes.h rename : content/media/fmp4/ffmpeg/libav53/include/libavutil/audio_fifo.h => dom/media/fmp4/ffmpeg/libav53/include/libavutil/audio_fifo.h rename : content/media/fmp4/ffmpeg/libav53/include/libavutil/audioconvert.h => dom/media/fmp4/ffmpeg/libav53/include/libavutil/audioconvert.h rename : content/media/fmp4/ffmpeg/libav53/include/libavutil/avassert.h => dom/media/fmp4/ffmpeg/libav53/include/libavutil/avassert.h rename : content/media/fmp4/ffmpeg/libav53/include/libavutil/avconfig.h => dom/media/fmp4/ffmpeg/libav53/include/libavutil/avconfig.h rename : content/media/fmp4/ffmpeg/libav53/include/libavutil/avstring.h => dom/media/fmp4/ffmpeg/libav53/include/libavutil/avstring.h rename : content/media/fmp4/ffmpeg/libav53/include/libavutil/avutil.h => dom/media/fmp4/ffmpeg/libav53/include/libavutil/avutil.h rename : content/media/fmp4/ffmpeg/libav53/include/libavutil/base64.h => dom/media/fmp4/ffmpeg/libav53/include/libavutil/base64.h rename : content/media/fmp4/ffmpeg/libav53/include/libavutil/blowfish.h => dom/media/fmp4/ffmpeg/libav53/include/libavutil/blowfish.h rename : content/media/fmp4/ffmpeg/libav53/include/libavutil/bprint.h => dom/media/fmp4/ffmpeg/libav53/include/libavutil/bprint.h rename : content/media/fmp4/ffmpeg/libav53/include/libavutil/bswap.h => dom/media/fmp4/ffmpeg/libav53/include/libavutil/bswap.h rename : content/media/fmp4/ffmpeg/libav53/include/libavutil/common.h => dom/media/fmp4/ffmpeg/libav53/include/libavutil/common.h rename : content/media/fmp4/ffmpeg/libav53/include/libavutil/cpu.h => dom/media/fmp4/ffmpeg/libav53/include/libavutil/cpu.h rename : content/media/fmp4/ffmpeg/libav53/include/libavutil/crc.h => dom/media/fmp4/ffmpeg/libav53/include/libavutil/crc.h rename : content/media/fmp4/ffmpeg/libav53/include/libavutil/dict.h => dom/media/fmp4/ffmpeg/libav53/include/libavutil/dict.h rename : content/media/fmp4/ffmpeg/libav53/include/libavutil/error.h => dom/media/fmp4/ffmpeg/libav53/include/libavutil/error.h rename : content/media/fmp4/ffmpeg/libav53/include/libavutil/eval.h => dom/media/fmp4/ffmpeg/libav53/include/libavutil/eval.h rename : content/media/fmp4/ffmpeg/libav53/include/libavutil/fifo.h => dom/media/fmp4/ffmpeg/libav53/include/libavutil/fifo.h rename : content/media/fmp4/ffmpeg/libav53/include/libavutil/file.h => dom/media/fmp4/ffmpeg/libav53/include/libavutil/file.h rename : content/media/fmp4/ffmpeg/libav53/include/libavutil/imgutils.h => dom/media/fmp4/ffmpeg/libav53/include/libavutil/imgutils.h rename : content/media/fmp4/ffmpeg/libav53/include/libavutil/intfloat.h => dom/media/fmp4/ffmpeg/libav53/include/libavutil/intfloat.h rename : content/media/fmp4/ffmpeg/libav53/include/libavutil/intfloat_readwrite.h => dom/media/fmp4/ffmpeg/libav53/include/libavutil/intfloat_readwrite.h rename : content/media/fmp4/ffmpeg/libav53/include/libavutil/intreadwrite.h => dom/media/fmp4/ffmpeg/libav53/include/libavutil/intreadwrite.h rename : content/media/fmp4/ffmpeg/libav53/include/libavutil/lfg.h => dom/media/fmp4/ffmpeg/libav53/include/libavutil/lfg.h rename : content/media/fmp4/ffmpeg/libav53/include/libavutil/log.h => dom/media/fmp4/ffmpeg/libav53/include/libavutil/log.h rename : content/media/fmp4/ffmpeg/libav53/include/libavutil/lzo.h => dom/media/fmp4/ffmpeg/libav53/include/libavutil/lzo.h rename : content/media/fmp4/ffmpeg/libav53/include/libavutil/mathematics.h => dom/media/fmp4/ffmpeg/libav53/include/libavutil/mathematics.h rename : content/media/fmp4/ffmpeg/libav53/include/libavutil/md5.h => dom/media/fmp4/ffmpeg/libav53/include/libavutil/md5.h rename : content/media/fmp4/ffmpeg/libav53/include/libavutil/mem.h => dom/media/fmp4/ffmpeg/libav53/include/libavutil/mem.h rename : content/media/fmp4/ffmpeg/libav53/include/libavutil/old_pix_fmts.h => dom/media/fmp4/ffmpeg/libav53/include/libavutil/old_pix_fmts.h rename : content/media/fmp4/ffmpeg/libav53/include/libavutil/opt.h => dom/media/fmp4/ffmpeg/libav53/include/libavutil/opt.h rename : content/media/fmp4/ffmpeg/libav53/include/libavutil/parseutils.h => dom/media/fmp4/ffmpeg/libav53/include/libavutil/parseutils.h rename : content/media/fmp4/ffmpeg/libav53/include/libavutil/pixdesc.h => dom/media/fmp4/ffmpeg/libav53/include/libavutil/pixdesc.h rename : content/media/fmp4/ffmpeg/libav53/include/libavutil/pixfmt.h => dom/media/fmp4/ffmpeg/libav53/include/libavutil/pixfmt.h rename : content/media/fmp4/ffmpeg/libav53/include/libavutil/random_seed.h => dom/media/fmp4/ffmpeg/libav53/include/libavutil/random_seed.h rename : content/media/fmp4/ffmpeg/libav53/include/libavutil/rational.h => dom/media/fmp4/ffmpeg/libav53/include/libavutil/rational.h rename : content/media/fmp4/ffmpeg/libav53/include/libavutil/samplefmt.h => dom/media/fmp4/ffmpeg/libav53/include/libavutil/samplefmt.h rename : content/media/fmp4/ffmpeg/libav53/include/libavutil/sha.h => dom/media/fmp4/ffmpeg/libav53/include/libavutil/sha.h rename : content/media/fmp4/ffmpeg/libav53/include/libavutil/time.h => dom/media/fmp4/ffmpeg/libav53/include/libavutil/time.h rename : content/media/fmp4/ffmpeg/libav53/include/libavutil/timecode.h => dom/media/fmp4/ffmpeg/libav53/include/libavutil/timecode.h rename : content/media/fmp4/ffmpeg/libav53/include/libavutil/timestamp.h => dom/media/fmp4/ffmpeg/libav53/include/libavutil/timestamp.h rename : content/media/fmp4/ffmpeg/libav53/include/libavutil/version.h => dom/media/fmp4/ffmpeg/libav53/include/libavutil/version.h rename : content/media/fmp4/ffmpeg/libav53/include/libavutil/xtea.h => dom/media/fmp4/ffmpeg/libav53/include/libavutil/xtea.h rename : content/media/fmp4/ffmpeg/libav53/moz.build => dom/media/fmp4/ffmpeg/libav53/moz.build rename : content/media/fmp4/ffmpeg/libav54/include/COPYING.LGPLv2.1 => dom/media/fmp4/ffmpeg/libav54/include/COPYING.LGPLv2.1 rename : content/media/fmp4/ffmpeg/libav54/include/libavcodec/avcodec.h => dom/media/fmp4/ffmpeg/libav54/include/libavcodec/avcodec.h rename : content/media/fmp4/ffmpeg/libav54/include/libavcodec/avfft.h => dom/media/fmp4/ffmpeg/libav54/include/libavcodec/avfft.h rename : content/media/fmp4/ffmpeg/libav54/include/libavcodec/dxva2.h => dom/media/fmp4/ffmpeg/libav54/include/libavcodec/dxva2.h rename : content/media/fmp4/ffmpeg/libav54/include/libavcodec/old_codec_ids.h => dom/media/fmp4/ffmpeg/libav54/include/libavcodec/old_codec_ids.h rename : content/media/fmp4/ffmpeg/libav54/include/libavcodec/vaapi.h => dom/media/fmp4/ffmpeg/libav54/include/libavcodec/vaapi.h rename : content/media/fmp4/ffmpeg/libav54/include/libavcodec/vda.h => dom/media/fmp4/ffmpeg/libav54/include/libavcodec/vda.h rename : content/media/fmp4/ffmpeg/libav54/include/libavcodec/vdpau.h => dom/media/fmp4/ffmpeg/libav54/include/libavcodec/vdpau.h rename : content/media/fmp4/ffmpeg/libav54/include/libavcodec/version.h => dom/media/fmp4/ffmpeg/libav54/include/libavcodec/version.h rename : content/media/fmp4/ffmpeg/libav54/include/libavcodec/xvmc.h => dom/media/fmp4/ffmpeg/libav54/include/libavcodec/xvmc.h rename : content/media/fmp4/ffmpeg/libav54/include/libavformat/avformat.h => dom/media/fmp4/ffmpeg/libav54/include/libavformat/avformat.h rename : content/media/fmp4/ffmpeg/libav54/include/libavformat/avio.h => dom/media/fmp4/ffmpeg/libav54/include/libavformat/avio.h rename : content/media/fmp4/ffmpeg/libav54/include/libavformat/version.h => dom/media/fmp4/ffmpeg/libav54/include/libavformat/version.h rename : content/media/fmp4/ffmpeg/libav54/include/libavutil/adler32.h => dom/media/fmp4/ffmpeg/libav54/include/libavutil/adler32.h rename : content/media/fmp4/ffmpeg/libav54/include/libavutil/aes.h => dom/media/fmp4/ffmpeg/libav54/include/libavutil/aes.h rename : content/media/fmp4/ffmpeg/libav54/include/libavutil/attributes.h => dom/media/fmp4/ffmpeg/libav54/include/libavutil/attributes.h rename : content/media/fmp4/ffmpeg/libav54/include/libavutil/audio_fifo.h => dom/media/fmp4/ffmpeg/libav54/include/libavutil/audio_fifo.h rename : content/media/fmp4/ffmpeg/libav54/include/libavutil/audioconvert.h => dom/media/fmp4/ffmpeg/libav54/include/libavutil/audioconvert.h rename : content/media/fmp4/ffmpeg/libav54/include/libavutil/avassert.h => dom/media/fmp4/ffmpeg/libav54/include/libavutil/avassert.h rename : content/media/fmp4/ffmpeg/libav54/include/libavutil/avconfig.h => dom/media/fmp4/ffmpeg/libav54/include/libavutil/avconfig.h rename : content/media/fmp4/ffmpeg/libav54/include/libavutil/avstring.h => dom/media/fmp4/ffmpeg/libav54/include/libavutil/avstring.h rename : content/media/fmp4/ffmpeg/libav54/include/libavutil/avutil.h => dom/media/fmp4/ffmpeg/libav54/include/libavutil/avutil.h rename : content/media/fmp4/ffmpeg/libav54/include/libavutil/base64.h => dom/media/fmp4/ffmpeg/libav54/include/libavutil/base64.h rename : content/media/fmp4/ffmpeg/libav54/include/libavutil/blowfish.h => dom/media/fmp4/ffmpeg/libav54/include/libavutil/blowfish.h rename : content/media/fmp4/ffmpeg/libav54/include/libavutil/bswap.h => dom/media/fmp4/ffmpeg/libav54/include/libavutil/bswap.h rename : content/media/fmp4/ffmpeg/libav54/include/libavutil/channel_layout.h => dom/media/fmp4/ffmpeg/libav54/include/libavutil/channel_layout.h rename : content/media/fmp4/ffmpeg/libav54/include/libavutil/common.h => dom/media/fmp4/ffmpeg/libav54/include/libavutil/common.h rename : content/media/fmp4/ffmpeg/libav54/include/libavutil/cpu.h => dom/media/fmp4/ffmpeg/libav54/include/libavutil/cpu.h rename : content/media/fmp4/ffmpeg/libav54/include/libavutil/crc.h => dom/media/fmp4/ffmpeg/libav54/include/libavutil/crc.h rename : content/media/fmp4/ffmpeg/libav54/include/libavutil/dict.h => dom/media/fmp4/ffmpeg/libav54/include/libavutil/dict.h rename : content/media/fmp4/ffmpeg/libav54/include/libavutil/error.h => dom/media/fmp4/ffmpeg/libav54/include/libavutil/error.h rename : content/media/fmp4/ffmpeg/libav54/include/libavutil/eval.h => dom/media/fmp4/ffmpeg/libav54/include/libavutil/eval.h rename : content/media/fmp4/ffmpeg/libav54/include/libavutil/fifo.h => dom/media/fmp4/ffmpeg/libav54/include/libavutil/fifo.h rename : content/media/fmp4/ffmpeg/libav54/include/libavutil/file.h => dom/media/fmp4/ffmpeg/libav54/include/libavutil/file.h rename : content/media/fmp4/ffmpeg/libav54/include/libavutil/imgutils.h => dom/media/fmp4/ffmpeg/libav54/include/libavutil/imgutils.h rename : content/media/fmp4/ffmpeg/libav54/include/libavutil/intfloat.h => dom/media/fmp4/ffmpeg/libav54/include/libavutil/intfloat.h rename : content/media/fmp4/ffmpeg/libav54/include/libavutil/intfloat_readwrite.h => dom/media/fmp4/ffmpeg/libav54/include/libavutil/intfloat_readwrite.h rename : content/media/fmp4/ffmpeg/libav54/include/libavutil/intreadwrite.h => dom/media/fmp4/ffmpeg/libav54/include/libavutil/intreadwrite.h rename : content/media/fmp4/ffmpeg/libav54/include/libavutil/lfg.h => dom/media/fmp4/ffmpeg/libav54/include/libavutil/lfg.h rename : content/media/fmp4/ffmpeg/libav54/include/libavutil/log.h => dom/media/fmp4/ffmpeg/libav54/include/libavutil/log.h rename : content/media/fmp4/ffmpeg/libav54/include/libavutil/lzo.h => dom/media/fmp4/ffmpeg/libav54/include/libavutil/lzo.h rename : content/media/fmp4/ffmpeg/libav54/include/libavutil/mathematics.h => dom/media/fmp4/ffmpeg/libav54/include/libavutil/mathematics.h rename : content/media/fmp4/ffmpeg/libav54/include/libavutil/md5.h => dom/media/fmp4/ffmpeg/libav54/include/libavutil/md5.h rename : content/media/fmp4/ffmpeg/libav54/include/libavutil/mem.h => dom/media/fmp4/ffmpeg/libav54/include/libavutil/mem.h rename : content/media/fmp4/ffmpeg/libav54/include/libavutil/old_pix_fmts.h => dom/media/fmp4/ffmpeg/libav54/include/libavutil/old_pix_fmts.h rename : content/media/fmp4/ffmpeg/libav54/include/libavutil/opt.h => dom/media/fmp4/ffmpeg/libav54/include/libavutil/opt.h rename : content/media/fmp4/ffmpeg/libav54/include/libavutil/parseutils.h => dom/media/fmp4/ffmpeg/libav54/include/libavutil/parseutils.h rename : content/media/fmp4/ffmpeg/libav54/include/libavutil/pixdesc.h => dom/media/fmp4/ffmpeg/libav54/include/libavutil/pixdesc.h rename : content/media/fmp4/ffmpeg/libav54/include/libavutil/pixfmt.h => dom/media/fmp4/ffmpeg/libav54/include/libavutil/pixfmt.h rename : content/media/fmp4/ffmpeg/libav54/include/libavutil/random_seed.h => dom/media/fmp4/ffmpeg/libav54/include/libavutil/random_seed.h rename : content/media/fmp4/ffmpeg/libav54/include/libavutil/rational.h => dom/media/fmp4/ffmpeg/libav54/include/libavutil/rational.h rename : content/media/fmp4/ffmpeg/libav54/include/libavutil/samplefmt.h => dom/media/fmp4/ffmpeg/libav54/include/libavutil/samplefmt.h rename : content/media/fmp4/ffmpeg/libav54/include/libavutil/sha.h => dom/media/fmp4/ffmpeg/libav54/include/libavutil/sha.h rename : content/media/fmp4/ffmpeg/libav54/include/libavutil/time.h => dom/media/fmp4/ffmpeg/libav54/include/libavutil/time.h rename : content/media/fmp4/ffmpeg/libav54/include/libavutil/version.h => dom/media/fmp4/ffmpeg/libav54/include/libavutil/version.h rename : content/media/fmp4/ffmpeg/libav54/include/libavutil/xtea.h => dom/media/fmp4/ffmpeg/libav54/include/libavutil/xtea.h rename : content/media/fmp4/ffmpeg/libav54/moz.build => dom/media/fmp4/ffmpeg/libav54/moz.build rename : content/media/fmp4/ffmpeg/libav55/include/COPYING.LGPLv2.1 => dom/media/fmp4/ffmpeg/libav55/include/COPYING.LGPLv2.1 rename : content/media/fmp4/ffmpeg/libav55/include/libavcodec/avcodec.h => dom/media/fmp4/ffmpeg/libav55/include/libavcodec/avcodec.h rename : content/media/fmp4/ffmpeg/libav55/include/libavcodec/avfft.h => dom/media/fmp4/ffmpeg/libav55/include/libavcodec/avfft.h rename : content/media/fmp4/ffmpeg/libav55/include/libavcodec/dxva2.h => dom/media/fmp4/ffmpeg/libav55/include/libavcodec/dxva2.h rename : content/media/fmp4/ffmpeg/libav55/include/libavcodec/vaapi.h => dom/media/fmp4/ffmpeg/libav55/include/libavcodec/vaapi.h rename : content/media/fmp4/ffmpeg/libav55/include/libavcodec/vda.h => dom/media/fmp4/ffmpeg/libav55/include/libavcodec/vda.h rename : content/media/fmp4/ffmpeg/libav55/include/libavcodec/vdpau.h => dom/media/fmp4/ffmpeg/libav55/include/libavcodec/vdpau.h rename : content/media/fmp4/ffmpeg/libav55/include/libavcodec/version.h => dom/media/fmp4/ffmpeg/libav55/include/libavcodec/version.h rename : content/media/fmp4/ffmpeg/libav55/include/libavcodec/xvmc.h => dom/media/fmp4/ffmpeg/libav55/include/libavcodec/xvmc.h rename : content/media/fmp4/ffmpeg/libav55/include/libavformat/avformat.h => dom/media/fmp4/ffmpeg/libav55/include/libavformat/avformat.h rename : content/media/fmp4/ffmpeg/libav55/include/libavformat/avio.h => dom/media/fmp4/ffmpeg/libav55/include/libavformat/avio.h rename : content/media/fmp4/ffmpeg/libav55/include/libavformat/version.h => dom/media/fmp4/ffmpeg/libav55/include/libavformat/version.h rename : content/media/fmp4/ffmpeg/libav55/include/libavutil/adler32.h => dom/media/fmp4/ffmpeg/libav55/include/libavutil/adler32.h rename : content/media/fmp4/ffmpeg/libav55/include/libavutil/aes.h => dom/media/fmp4/ffmpeg/libav55/include/libavutil/aes.h rename : content/media/fmp4/ffmpeg/libav55/include/libavutil/attributes.h => dom/media/fmp4/ffmpeg/libav55/include/libavutil/attributes.h rename : content/media/fmp4/ffmpeg/libav55/include/libavutil/audio_fifo.h => dom/media/fmp4/ffmpeg/libav55/include/libavutil/audio_fifo.h rename : content/media/fmp4/ffmpeg/libav55/include/libavutil/audioconvert.h => dom/media/fmp4/ffmpeg/libav55/include/libavutil/audioconvert.h rename : content/media/fmp4/ffmpeg/libav55/include/libavutil/avassert.h => dom/media/fmp4/ffmpeg/libav55/include/libavutil/avassert.h rename : content/media/fmp4/ffmpeg/libav55/include/libavutil/avconfig.h => dom/media/fmp4/ffmpeg/libav55/include/libavutil/avconfig.h rename : content/media/fmp4/ffmpeg/libav55/include/libavutil/avstring.h => dom/media/fmp4/ffmpeg/libav55/include/libavutil/avstring.h rename : content/media/fmp4/ffmpeg/libav55/include/libavutil/avutil.h => dom/media/fmp4/ffmpeg/libav55/include/libavutil/avutil.h rename : content/media/fmp4/ffmpeg/libav55/include/libavutil/base64.h => dom/media/fmp4/ffmpeg/libav55/include/libavutil/base64.h rename : content/media/fmp4/ffmpeg/libav55/include/libavutil/blowfish.h => dom/media/fmp4/ffmpeg/libav55/include/libavutil/blowfish.h rename : content/media/fmp4/ffmpeg/libav55/include/libavutil/bswap.h => dom/media/fmp4/ffmpeg/libav55/include/libavutil/bswap.h rename : content/media/fmp4/ffmpeg/libav55/include/libavutil/buffer.h => dom/media/fmp4/ffmpeg/libav55/include/libavutil/buffer.h rename : content/media/fmp4/ffmpeg/libav55/include/libavutil/channel_layout.h => dom/media/fmp4/ffmpeg/libav55/include/libavutil/channel_layout.h rename : content/media/fmp4/ffmpeg/libav55/include/libavutil/common.h => dom/media/fmp4/ffmpeg/libav55/include/libavutil/common.h rename : content/media/fmp4/ffmpeg/libav55/include/libavutil/cpu.h => dom/media/fmp4/ffmpeg/libav55/include/libavutil/cpu.h rename : content/media/fmp4/ffmpeg/libav55/include/libavutil/crc.h => dom/media/fmp4/ffmpeg/libav55/include/libavutil/crc.h rename : content/media/fmp4/ffmpeg/libav55/include/libavutil/dict.h => dom/media/fmp4/ffmpeg/libav55/include/libavutil/dict.h rename : content/media/fmp4/ffmpeg/libav55/include/libavutil/downmix_info.h => dom/media/fmp4/ffmpeg/libav55/include/libavutil/downmix_info.h rename : content/media/fmp4/ffmpeg/libav55/include/libavutil/error.h => dom/media/fmp4/ffmpeg/libav55/include/libavutil/error.h rename : content/media/fmp4/ffmpeg/libav55/include/libavutil/eval.h => dom/media/fmp4/ffmpeg/libav55/include/libavutil/eval.h rename : content/media/fmp4/ffmpeg/libav55/include/libavutil/fifo.h => dom/media/fmp4/ffmpeg/libav55/include/libavutil/fifo.h rename : content/media/fmp4/ffmpeg/libav55/include/libavutil/file.h => dom/media/fmp4/ffmpeg/libav55/include/libavutil/file.h rename : content/media/fmp4/ffmpeg/libav55/include/libavutil/frame.h => dom/media/fmp4/ffmpeg/libav55/include/libavutil/frame.h rename : content/media/fmp4/ffmpeg/libav55/include/libavutil/hmac.h => dom/media/fmp4/ffmpeg/libav55/include/libavutil/hmac.h rename : content/media/fmp4/ffmpeg/libav55/include/libavutil/imgutils.h => dom/media/fmp4/ffmpeg/libav55/include/libavutil/imgutils.h rename : content/media/fmp4/ffmpeg/libav55/include/libavutil/intfloat.h => dom/media/fmp4/ffmpeg/libav55/include/libavutil/intfloat.h rename : content/media/fmp4/ffmpeg/libav55/include/libavutil/intreadwrite.h => dom/media/fmp4/ffmpeg/libav55/include/libavutil/intreadwrite.h rename : content/media/fmp4/ffmpeg/libav55/include/libavutil/lfg.h => dom/media/fmp4/ffmpeg/libav55/include/libavutil/lfg.h rename : content/media/fmp4/ffmpeg/libav55/include/libavutil/log.h => dom/media/fmp4/ffmpeg/libav55/include/libavutil/log.h rename : content/media/fmp4/ffmpeg/libav55/include/libavutil/lzo.h => dom/media/fmp4/ffmpeg/libav55/include/libavutil/lzo.h rename : content/media/fmp4/ffmpeg/libav55/include/libavutil/macros.h => dom/media/fmp4/ffmpeg/libav55/include/libavutil/macros.h rename : content/media/fmp4/ffmpeg/libav55/include/libavutil/mathematics.h => dom/media/fmp4/ffmpeg/libav55/include/libavutil/mathematics.h rename : content/media/fmp4/ffmpeg/libav55/include/libavutil/md5.h => dom/media/fmp4/ffmpeg/libav55/include/libavutil/md5.h rename : content/media/fmp4/ffmpeg/libav55/include/libavutil/mem.h => dom/media/fmp4/ffmpeg/libav55/include/libavutil/mem.h rename : content/media/fmp4/ffmpeg/libav55/include/libavutil/old_pix_fmts.h => dom/media/fmp4/ffmpeg/libav55/include/libavutil/old_pix_fmts.h rename : content/media/fmp4/ffmpeg/libav55/include/libavutil/opt.h => dom/media/fmp4/ffmpeg/libav55/include/libavutil/opt.h rename : content/media/fmp4/ffmpeg/libav55/include/libavutil/parseutils.h => dom/media/fmp4/ffmpeg/libav55/include/libavutil/parseutils.h rename : content/media/fmp4/ffmpeg/libav55/include/libavutil/pixdesc.h => dom/media/fmp4/ffmpeg/libav55/include/libavutil/pixdesc.h rename : content/media/fmp4/ffmpeg/libav55/include/libavutil/pixfmt.h => dom/media/fmp4/ffmpeg/libav55/include/libavutil/pixfmt.h rename : content/media/fmp4/ffmpeg/libav55/include/libavutil/random_seed.h => dom/media/fmp4/ffmpeg/libav55/include/libavutil/random_seed.h rename : content/media/fmp4/ffmpeg/libav55/include/libavutil/rational.h => dom/media/fmp4/ffmpeg/libav55/include/libavutil/rational.h rename : content/media/fmp4/ffmpeg/libav55/include/libavutil/samplefmt.h => dom/media/fmp4/ffmpeg/libav55/include/libavutil/samplefmt.h rename : content/media/fmp4/ffmpeg/libav55/include/libavutil/sha.h => dom/media/fmp4/ffmpeg/libav55/include/libavutil/sha.h rename : content/media/fmp4/ffmpeg/libav55/include/libavutil/stereo3d.h => dom/media/fmp4/ffmpeg/libav55/include/libavutil/stereo3d.h rename : content/media/fmp4/ffmpeg/libav55/include/libavutil/time.h => dom/media/fmp4/ffmpeg/libav55/include/libavutil/time.h rename : content/media/fmp4/ffmpeg/libav55/include/libavutil/version.h => dom/media/fmp4/ffmpeg/libav55/include/libavutil/version.h rename : content/media/fmp4/ffmpeg/libav55/include/libavutil/xtea.h => dom/media/fmp4/ffmpeg/libav55/include/libavutil/xtea.h rename : content/media/fmp4/ffmpeg/libav55/moz.build => dom/media/fmp4/ffmpeg/libav55/moz.build rename : content/media/fmp4/gonk/GonkAudioDecoderManager.cpp => dom/media/fmp4/gonk/GonkAudioDecoderManager.cpp rename : content/media/fmp4/gonk/GonkAudioDecoderManager.h => dom/media/fmp4/gonk/GonkAudioDecoderManager.h rename : content/media/fmp4/gonk/GonkDecoderModule.cpp => dom/media/fmp4/gonk/GonkDecoderModule.cpp rename : content/media/fmp4/gonk/GonkDecoderModule.h => dom/media/fmp4/gonk/GonkDecoderModule.h rename : content/media/fmp4/gonk/GonkMediaDataDecoder.cpp => dom/media/fmp4/gonk/GonkMediaDataDecoder.cpp rename : content/media/fmp4/gonk/GonkMediaDataDecoder.h => dom/media/fmp4/gonk/GonkMediaDataDecoder.h rename : content/media/fmp4/gonk/GonkVideoDecoderManager.cpp => dom/media/fmp4/gonk/GonkVideoDecoderManager.cpp rename : content/media/fmp4/gonk/GonkVideoDecoderManager.h => dom/media/fmp4/gonk/GonkVideoDecoderManager.h rename : content/media/fmp4/gonk/moz.build => dom/media/fmp4/gonk/moz.build rename : content/media/fmp4/moz.build => dom/media/fmp4/moz.build rename : content/media/fmp4/wmf/MFTDecoder.cpp => dom/media/fmp4/wmf/MFTDecoder.cpp rename : content/media/fmp4/wmf/MFTDecoder.h => dom/media/fmp4/wmf/MFTDecoder.h rename : content/media/fmp4/wmf/WMFAudioMFTManager.cpp => dom/media/fmp4/wmf/WMFAudioMFTManager.cpp rename : content/media/fmp4/wmf/WMFAudioMFTManager.h => dom/media/fmp4/wmf/WMFAudioMFTManager.h rename : content/media/fmp4/wmf/WMFDecoderModule.cpp => dom/media/fmp4/wmf/WMFDecoderModule.cpp rename : content/media/fmp4/wmf/WMFDecoderModule.h => dom/media/fmp4/wmf/WMFDecoderModule.h rename : content/media/fmp4/wmf/WMFMediaDataDecoder.cpp => dom/media/fmp4/wmf/WMFMediaDataDecoder.cpp rename : content/media/fmp4/wmf/WMFMediaDataDecoder.h => dom/media/fmp4/wmf/WMFMediaDataDecoder.h rename : content/media/fmp4/wmf/WMFVideoMFTManager.cpp => dom/media/fmp4/wmf/WMFVideoMFTManager.cpp rename : content/media/fmp4/wmf/WMFVideoMFTManager.h => dom/media/fmp4/wmf/WMFVideoMFTManager.h rename : content/media/fmp4/wmf/moz.build => dom/media/fmp4/wmf/moz.build rename : content/media/gmp/GMPAudioDecoderChild.cpp => dom/media/gmp/GMPAudioDecoderChild.cpp rename : content/media/gmp/GMPAudioDecoderChild.h => dom/media/gmp/GMPAudioDecoderChild.h rename : content/media/gmp/GMPAudioDecoderParent.cpp => dom/media/gmp/GMPAudioDecoderParent.cpp rename : content/media/gmp/GMPAudioDecoderParent.h => dom/media/gmp/GMPAudioDecoderParent.h rename : content/media/gmp/GMPAudioDecoderProxy.h => dom/media/gmp/GMPAudioDecoderProxy.h rename : content/media/gmp/GMPAudioHost.cpp => dom/media/gmp/GMPAudioHost.cpp rename : content/media/gmp/GMPAudioHost.h => dom/media/gmp/GMPAudioHost.h rename : content/media/gmp/GMPCallbackBase.h => dom/media/gmp/GMPCallbackBase.h rename : content/media/gmp/GMPChild.cpp => dom/media/gmp/GMPChild.cpp rename : content/media/gmp/GMPChild.h => dom/media/gmp/GMPChild.h rename : content/media/gmp/GMPDecryptorChild.cpp => dom/media/gmp/GMPDecryptorChild.cpp rename : content/media/gmp/GMPDecryptorChild.h => dom/media/gmp/GMPDecryptorChild.h rename : content/media/gmp/GMPDecryptorParent.cpp => dom/media/gmp/GMPDecryptorParent.cpp rename : content/media/gmp/GMPDecryptorParent.h => dom/media/gmp/GMPDecryptorParent.h rename : content/media/gmp/GMPDecryptorProxy.h => dom/media/gmp/GMPDecryptorProxy.h rename : content/media/gmp/GMPEncryptedBufferDataImpl.cpp => dom/media/gmp/GMPEncryptedBufferDataImpl.cpp rename : content/media/gmp/GMPEncryptedBufferDataImpl.h => dom/media/gmp/GMPEncryptedBufferDataImpl.h rename : content/media/gmp/GMPMessageUtils.h => dom/media/gmp/GMPMessageUtils.h rename : content/media/gmp/GMPParent.cpp => dom/media/gmp/GMPParent.cpp rename : content/media/gmp/GMPParent.h => dom/media/gmp/GMPParent.h rename : content/media/gmp/GMPPlatform.cpp => dom/media/gmp/GMPPlatform.cpp rename : content/media/gmp/GMPPlatform.h => dom/media/gmp/GMPPlatform.h rename : content/media/gmp/GMPProcessChild.cpp => dom/media/gmp/GMPProcessChild.cpp rename : content/media/gmp/GMPProcessChild.h => dom/media/gmp/GMPProcessChild.h rename : content/media/gmp/GMPProcessParent.cpp => dom/media/gmp/GMPProcessParent.cpp rename : content/media/gmp/GMPProcessParent.h => dom/media/gmp/GMPProcessParent.h rename : content/media/gmp/GMPService.cpp => dom/media/gmp/GMPService.cpp rename : content/media/gmp/GMPService.h => dom/media/gmp/GMPService.h rename : content/media/gmp/GMPSharedMemManager.cpp => dom/media/gmp/GMPSharedMemManager.cpp rename : content/media/gmp/GMPSharedMemManager.h => dom/media/gmp/GMPSharedMemManager.h rename : content/media/gmp/GMPStorageChild.cpp => dom/media/gmp/GMPStorageChild.cpp rename : content/media/gmp/GMPStorageChild.h => dom/media/gmp/GMPStorageChild.h rename : content/media/gmp/GMPStorageParent.cpp => dom/media/gmp/GMPStorageParent.cpp rename : content/media/gmp/GMPStorageParent.h => dom/media/gmp/GMPStorageParent.h rename : content/media/gmp/GMPTimerChild.cpp => dom/media/gmp/GMPTimerChild.cpp rename : content/media/gmp/GMPTimerChild.h => dom/media/gmp/GMPTimerChild.h rename : content/media/gmp/GMPTimerParent.cpp => dom/media/gmp/GMPTimerParent.cpp rename : content/media/gmp/GMPTimerParent.h => dom/media/gmp/GMPTimerParent.h rename : content/media/gmp/GMPTypes.ipdlh => dom/media/gmp/GMPTypes.ipdlh rename : content/media/gmp/GMPVideoDecoderChild.cpp => dom/media/gmp/GMPVideoDecoderChild.cpp rename : content/media/gmp/GMPVideoDecoderChild.h => dom/media/gmp/GMPVideoDecoderChild.h rename : content/media/gmp/GMPVideoDecoderParent.cpp => dom/media/gmp/GMPVideoDecoderParent.cpp rename : content/media/gmp/GMPVideoDecoderParent.h => dom/media/gmp/GMPVideoDecoderParent.h rename : content/media/gmp/GMPVideoDecoderProxy.h => dom/media/gmp/GMPVideoDecoderProxy.h rename : content/media/gmp/GMPVideoEncodedFrameImpl.cpp => dom/media/gmp/GMPVideoEncodedFrameImpl.cpp rename : content/media/gmp/GMPVideoEncodedFrameImpl.h => dom/media/gmp/GMPVideoEncodedFrameImpl.h rename : content/media/gmp/GMPVideoEncoderChild.cpp => dom/media/gmp/GMPVideoEncoderChild.cpp rename : content/media/gmp/GMPVideoEncoderChild.h => dom/media/gmp/GMPVideoEncoderChild.h rename : content/media/gmp/GMPVideoEncoderParent.cpp => dom/media/gmp/GMPVideoEncoderParent.cpp rename : content/media/gmp/GMPVideoEncoderParent.h => dom/media/gmp/GMPVideoEncoderParent.h rename : content/media/gmp/GMPVideoEncoderProxy.h => dom/media/gmp/GMPVideoEncoderProxy.h rename : content/media/gmp/GMPVideoHost.cpp => dom/media/gmp/GMPVideoHost.cpp rename : content/media/gmp/GMPVideoHost.h => dom/media/gmp/GMPVideoHost.h rename : content/media/gmp/GMPVideoPlaneImpl.cpp => dom/media/gmp/GMPVideoPlaneImpl.cpp rename : content/media/gmp/GMPVideoPlaneImpl.h => dom/media/gmp/GMPVideoPlaneImpl.h rename : content/media/gmp/GMPVideoi420FrameImpl.cpp => dom/media/gmp/GMPVideoi420FrameImpl.cpp rename : content/media/gmp/GMPVideoi420FrameImpl.h => dom/media/gmp/GMPVideoi420FrameImpl.h rename : content/media/gmp/PGMP.ipdl => dom/media/gmp/PGMP.ipdl rename : content/media/gmp/PGMPAudioDecoder.ipdl => dom/media/gmp/PGMPAudioDecoder.ipdl rename : content/media/gmp/PGMPDecryptor.ipdl => dom/media/gmp/PGMPDecryptor.ipdl rename : content/media/gmp/PGMPStorage.ipdl => dom/media/gmp/PGMPStorage.ipdl rename : content/media/gmp/PGMPTimer.ipdl => dom/media/gmp/PGMPTimer.ipdl rename : content/media/gmp/PGMPVideoDecoder.ipdl => dom/media/gmp/PGMPVideoDecoder.ipdl rename : content/media/gmp/PGMPVideoEncoder.ipdl => dom/media/gmp/PGMPVideoEncoder.ipdl rename : content/media/gmp/README.txt => dom/media/gmp/README.txt rename : content/media/gmp/gmp-api/gmp-async-shutdown.h => dom/media/gmp/gmp-api/gmp-async-shutdown.h rename : content/media/gmp/gmp-api/gmp-audio-codec.h => dom/media/gmp/gmp-api/gmp-audio-codec.h rename : content/media/gmp/gmp-api/gmp-audio-decode.h => dom/media/gmp/gmp-api/gmp-audio-decode.h rename : content/media/gmp/gmp-api/gmp-audio-host.h => dom/media/gmp/gmp-api/gmp-audio-host.h rename : content/media/gmp/gmp-api/gmp-audio-samples.h => dom/media/gmp/gmp-api/gmp-audio-samples.h rename : content/media/gmp/gmp-api/gmp-decryption.h => dom/media/gmp/gmp-api/gmp-decryption.h rename : content/media/gmp/gmp-api/gmp-entrypoints.h => dom/media/gmp/gmp-api/gmp-entrypoints.h rename : content/media/gmp/gmp-api/gmp-errors.h => dom/media/gmp/gmp-api/gmp-errors.h rename : content/media/gmp/gmp-api/gmp-platform.h => dom/media/gmp/gmp-api/gmp-platform.h rename : content/media/gmp/gmp-api/gmp-storage.h => dom/media/gmp/gmp-api/gmp-storage.h rename : content/media/gmp/gmp-api/gmp-video-codec.h => dom/media/gmp/gmp-api/gmp-video-codec.h rename : content/media/gmp/gmp-api/gmp-video-decode.h => dom/media/gmp/gmp-api/gmp-video-decode.h rename : content/media/gmp/gmp-api/gmp-video-encode.h => dom/media/gmp/gmp-api/gmp-video-encode.h rename : content/media/gmp/gmp-api/gmp-video-frame-encoded.h => dom/media/gmp/gmp-api/gmp-video-frame-encoded.h rename : content/media/gmp/gmp-api/gmp-video-frame-i420.h => dom/media/gmp/gmp-api/gmp-video-frame-i420.h rename : content/media/gmp/gmp-api/gmp-video-frame.h => dom/media/gmp/gmp-api/gmp-video-frame.h rename : content/media/gmp/gmp-api/gmp-video-host.h => dom/media/gmp/gmp-api/gmp-video-host.h rename : content/media/gmp/gmp-api/gmp-video-plane.h => dom/media/gmp/gmp-api/gmp-video-plane.h rename : content/media/gmp/moz.build => dom/media/gmp/moz.build rename : content/media/gmp/mozIGeckoMediaPluginService.idl => dom/media/gmp/mozIGeckoMediaPluginService.idl rename : content/media/gmp/rlz/COPYING => dom/media/gmp/rlz/COPYING rename : content/media/gmp/rlz/README.mozilla => dom/media/gmp/rlz/README.mozilla rename : content/media/gmp/rlz/base/memory/scoped_ptr.h => dom/media/gmp/rlz/base/memory/scoped_ptr.h rename : content/media/gmp/rlz/base/string16.h => dom/media/gmp/rlz/base/string16.h rename : content/media/gmp/rlz/lib/assert.h => dom/media/gmp/rlz/lib/assert.h rename : content/media/gmp/rlz/lib/machine_id.h => dom/media/gmp/rlz/lib/machine_id.h rename : content/media/gmp/rlz/lib/string_utils.cc => dom/media/gmp/rlz/lib/string_utils.cc rename : content/media/gmp/rlz/lib/string_utils.h => dom/media/gmp/rlz/lib/string_utils.h rename : content/media/gmp/rlz/moz.build => dom/media/gmp/rlz/moz.build rename : content/media/gmp/rlz/win/lib/machine_id_win.cc => dom/media/gmp/rlz/win/lib/machine_id_win.cc rename : content/media/gstreamer/GStreamerAllocator.cpp => dom/media/gstreamer/GStreamerAllocator.cpp rename : content/media/gstreamer/GStreamerAllocator.h => dom/media/gstreamer/GStreamerAllocator.h rename : content/media/gstreamer/GStreamerDecoder.cpp => dom/media/gstreamer/GStreamerDecoder.cpp rename : content/media/gstreamer/GStreamerDecoder.h => dom/media/gstreamer/GStreamerDecoder.h rename : content/media/gstreamer/GStreamerFormatHelper.cpp => dom/media/gstreamer/GStreamerFormatHelper.cpp rename : content/media/gstreamer/GStreamerFormatHelper.h => dom/media/gstreamer/GStreamerFormatHelper.h rename : content/media/gstreamer/GStreamerFunctionList.h => dom/media/gstreamer/GStreamerFunctionList.h rename : content/media/gstreamer/GStreamerLoader.cpp => dom/media/gstreamer/GStreamerLoader.cpp rename : content/media/gstreamer/GStreamerLoader.h => dom/media/gstreamer/GStreamerLoader.h rename : content/media/gstreamer/GStreamerMozVideoBuffer.cpp => dom/media/gstreamer/GStreamerMozVideoBuffer.cpp rename : content/media/gstreamer/GStreamerMozVideoBuffer.h => dom/media/gstreamer/GStreamerMozVideoBuffer.h rename : content/media/gstreamer/GStreamerReader-0.10.cpp => dom/media/gstreamer/GStreamerReader-0.10.cpp rename : content/media/gstreamer/GStreamerReader.cpp => dom/media/gstreamer/GStreamerReader.cpp rename : content/media/gstreamer/GStreamerReader.h => dom/media/gstreamer/GStreamerReader.h rename : content/media/gstreamer/moz.build => dom/media/gstreamer/moz.build rename : content/media/gtest/MockMediaDecoderOwner.h => dom/media/gtest/MockMediaDecoderOwner.h rename : content/media/gtest/MockMediaResource.cpp => dom/media/gtest/MockMediaResource.cpp rename : content/media/gtest/MockMediaResource.h => dom/media/gtest/MockMediaResource.h rename : content/media/gtest/TestAudioCompactor.cpp => dom/media/gtest/TestAudioCompactor.cpp rename : content/media/gtest/TestGMPCrossOrigin.cpp => dom/media/gtest/TestGMPCrossOrigin.cpp rename : content/media/gtest/TestMP4Reader.cpp => dom/media/gtest/TestMP4Reader.cpp rename : content/media/gtest/TestTrackEncoder.cpp => dom/media/gtest/TestTrackEncoder.cpp rename : content/media/gtest/TestVideoSegment.cpp => dom/media/gtest/TestVideoSegment.cpp rename : content/media/gtest/TestVideoTrackEncoder.cpp => dom/media/gtest/TestVideoTrackEncoder.cpp rename : content/media/gtest/TestVorbisTrackEncoder.cpp => dom/media/gtest/TestVorbisTrackEncoder.cpp rename : content/media/gtest/TestWebMBuffered.cpp => dom/media/gtest/TestWebMBuffered.cpp rename : content/media/gtest/TestWebMWriter.cpp => dom/media/gtest/TestWebMWriter.cpp rename : content/media/gtest/mediasource_test.mp4 => dom/media/gtest/mediasource_test.mp4 rename : content/media/gtest/moz.build => dom/media/gtest/moz.build rename : content/media/gtest/test.webm => dom/media/gtest/test.webm rename : content/media/imagecapture/CaptureTask.cpp => dom/media/imagecapture/CaptureTask.cpp rename : content/media/imagecapture/CaptureTask.h => dom/media/imagecapture/CaptureTask.h rename : content/media/imagecapture/ImageCapture.cpp => dom/media/imagecapture/ImageCapture.cpp rename : content/media/imagecapture/ImageCapture.h => dom/media/imagecapture/ImageCapture.h rename : content/media/imagecapture/moz.build => dom/media/imagecapture/moz.build rename : content/media/mediasource/AsyncEventRunner.h => dom/media/mediasource/AsyncEventRunner.h rename : content/media/mediasource/ContainerParser.cpp => dom/media/mediasource/ContainerParser.cpp rename : content/media/mediasource/ContainerParser.h => dom/media/mediasource/ContainerParser.h rename : content/media/mediasource/MediaSource.cpp => dom/media/mediasource/MediaSource.cpp rename : content/media/mediasource/MediaSource.h => dom/media/mediasource/MediaSource.h rename : content/media/mediasource/MediaSourceDecoder.cpp => dom/media/mediasource/MediaSourceDecoder.cpp rename : content/media/mediasource/MediaSourceDecoder.h => dom/media/mediasource/MediaSourceDecoder.h rename : content/media/mediasource/MediaSourceReader.cpp => dom/media/mediasource/MediaSourceReader.cpp rename : content/media/mediasource/MediaSourceReader.h => dom/media/mediasource/MediaSourceReader.h rename : content/media/mediasource/MediaSourceResource.h => dom/media/mediasource/MediaSourceResource.h rename : content/media/mediasource/MediaSourceUtils.cpp => dom/media/mediasource/MediaSourceUtils.cpp rename : content/media/mediasource/MediaSourceUtils.h => dom/media/mediasource/MediaSourceUtils.h rename : content/media/mediasource/ResourceQueue.h => dom/media/mediasource/ResourceQueue.h rename : content/media/mediasource/SourceBuffer.cpp => dom/media/mediasource/SourceBuffer.cpp rename : content/media/mediasource/SourceBuffer.h => dom/media/mediasource/SourceBuffer.h rename : content/media/mediasource/SourceBufferDecoder.cpp => dom/media/mediasource/SourceBufferDecoder.cpp rename : content/media/mediasource/SourceBufferDecoder.h => dom/media/mediasource/SourceBufferDecoder.h rename : content/media/mediasource/SourceBufferList.cpp => dom/media/mediasource/SourceBufferList.cpp rename : content/media/mediasource/SourceBufferList.h => dom/media/mediasource/SourceBufferList.h rename : content/media/mediasource/SourceBufferResource.cpp => dom/media/mediasource/SourceBufferResource.cpp rename : content/media/mediasource/SourceBufferResource.h => dom/media/mediasource/SourceBufferResource.h rename : content/media/mediasource/TrackBuffer.cpp => dom/media/mediasource/TrackBuffer.cpp rename : content/media/mediasource/TrackBuffer.h => dom/media/mediasource/TrackBuffer.h rename : content/media/mediasource/moz.build => dom/media/mediasource/moz.build rename : content/media/mediasource/test/crashtests/1005366.html => dom/media/mediasource/test/crashtests/1005366.html rename : content/media/mediasource/test/crashtests/1059035.html => dom/media/mediasource/test/crashtests/1059035.html rename : content/media/mediasource/test/crashtests/926665.html => dom/media/mediasource/test/crashtests/926665.html rename : content/media/mediasource/test/crashtests/931388.html => dom/media/mediasource/test/crashtests/931388.html rename : content/media/mediasource/test/crashtests/crashtests.list => dom/media/mediasource/test/crashtests/crashtests.list rename : content/media/mediasource/test/mediasource.js => dom/media/mediasource/test/mediasource.js rename : content/media/mediasource/test/mochitest.ini => dom/media/mediasource/test/mochitest.ini rename : content/media/mediasource/test/seek.webm => dom/media/mediasource/test/seek.webm rename : content/media/mediasource/test/seek.webm^headers^ => dom/media/mediasource/test/seek.webm^headers^ rename : content/media/mediasource/test/seek_lowres.webm => dom/media/mediasource/test/seek_lowres.webm rename : content/media/mediasource/test/seek_lowres.webm^headers^ => dom/media/mediasource/test/seek_lowres.webm^headers^ rename : content/media/mediasource/test/test_BufferedSeek.html => dom/media/mediasource/test/test_BufferedSeek.html rename : content/media/mediasource/test/test_FrameSelection.html => dom/media/mediasource/test/test_FrameSelection.html rename : content/media/mediasource/test/test_HaveMetadataUnbufferedSeek.html => dom/media/mediasource/test/test_HaveMetadataUnbufferedSeek.html rename : content/media/mediasource/test/test_MediaSource.html => dom/media/mediasource/test/test_MediaSource.html rename : content/media/mediasource/test/test_MediaSource_disabled.html => dom/media/mediasource/test/test_MediaSource_disabled.html rename : content/media/mediasource/test/test_SeekableAfterEndOfStream.html => dom/media/mediasource/test/test_SeekableAfterEndOfStream.html rename : content/media/mediasource/test/test_SeekableAfterEndOfStreamSplit.html => dom/media/mediasource/test/test_SeekableAfterEndOfStreamSplit.html rename : content/media/mediasource/test/test_SeekableBeforeEndOfStream.html => dom/media/mediasource/test/test_SeekableBeforeEndOfStream.html rename : content/media/mediasource/test/test_SeekableBeforeEndOfStreamSplit.html => dom/media/mediasource/test/test_SeekableBeforeEndOfStreamSplit.html rename : content/media/mediasource/test/test_SplitAppend.html => dom/media/mediasource/test/test_SplitAppend.html rename : content/media/mediasource/test/test_SplitAppendDelay.html => dom/media/mediasource/test/test_SplitAppendDelay.html rename : content/media/nsIDocumentActivity.h => dom/media/nsIDocumentActivity.h rename : content/media/ogg/OggCodecState.cpp => dom/media/ogg/OggCodecState.cpp rename : content/media/ogg/OggCodecState.h => dom/media/ogg/OggCodecState.h rename : content/media/ogg/OggDecoder.cpp => dom/media/ogg/OggDecoder.cpp rename : content/media/ogg/OggDecoder.h => dom/media/ogg/OggDecoder.h rename : content/media/ogg/OggReader.cpp => dom/media/ogg/OggReader.cpp rename : content/media/ogg/OggReader.h => dom/media/ogg/OggReader.h rename : content/media/ogg/OggWriter.cpp => dom/media/ogg/OggWriter.cpp rename : content/media/ogg/OggWriter.h => dom/media/ogg/OggWriter.h rename : content/media/ogg/OpusParser.cpp => dom/media/ogg/OpusParser.cpp rename : content/media/ogg/OpusParser.h => dom/media/ogg/OpusParser.h rename : content/media/ogg/moz.build => dom/media/ogg/moz.build rename : content/media/omx/AudioOffloadPlayer.cpp => dom/media/omx/AudioOffloadPlayer.cpp rename : content/media/omx/AudioOffloadPlayer.h => dom/media/omx/AudioOffloadPlayer.h rename : content/media/omx/AudioOffloadPlayerBase.h => dom/media/omx/AudioOffloadPlayerBase.h rename : content/media/omx/AudioOutput.cpp => dom/media/omx/AudioOutput.cpp rename : content/media/omx/AudioOutput.h => dom/media/omx/AudioOutput.h rename : content/media/omx/AudioSink.h => dom/media/omx/AudioSink.h rename : content/media/omx/I420ColorConverterHelper.cpp => dom/media/omx/I420ColorConverterHelper.cpp rename : content/media/omx/I420ColorConverterHelper.h => dom/media/omx/I420ColorConverterHelper.h rename : content/media/omx/MPAPI.h => dom/media/omx/MPAPI.h rename : content/media/omx/MediaCodecDecoder.cpp => dom/media/omx/MediaCodecDecoder.cpp rename : content/media/omx/MediaCodecDecoder.h => dom/media/omx/MediaCodecDecoder.h rename : content/media/omx/MediaCodecProxy.cpp => dom/media/omx/MediaCodecProxy.cpp rename : content/media/omx/MediaCodecProxy.h => dom/media/omx/MediaCodecProxy.h rename : content/media/omx/MediaCodecReader.cpp => dom/media/omx/MediaCodecReader.cpp rename : content/media/omx/MediaCodecReader.h => dom/media/omx/MediaCodecReader.h rename : content/media/omx/MediaOmxCommonDecoder.cpp => dom/media/omx/MediaOmxCommonDecoder.cpp rename : content/media/omx/MediaOmxCommonDecoder.h => dom/media/omx/MediaOmxCommonDecoder.h rename : content/media/omx/MediaOmxCommonReader.cpp => dom/media/omx/MediaOmxCommonReader.cpp rename : content/media/omx/MediaOmxCommonReader.h => dom/media/omx/MediaOmxCommonReader.h rename : content/media/omx/MediaOmxDecoder.cpp => dom/media/omx/MediaOmxDecoder.cpp rename : content/media/omx/MediaOmxDecoder.h => dom/media/omx/MediaOmxDecoder.h rename : content/media/omx/MediaOmxReader.cpp => dom/media/omx/MediaOmxReader.cpp rename : content/media/omx/MediaOmxReader.h => dom/media/omx/MediaOmxReader.h rename : content/media/omx/MediaStreamSource.cpp => dom/media/omx/MediaStreamSource.cpp rename : content/media/omx/MediaStreamSource.h => dom/media/omx/MediaStreamSource.h rename : content/media/omx/OMXCodecDescriptorUtil.cpp => dom/media/omx/OMXCodecDescriptorUtil.cpp rename : content/media/omx/OMXCodecDescriptorUtil.h => dom/media/omx/OMXCodecDescriptorUtil.h rename : content/media/omx/OMXCodecProxy.cpp => dom/media/omx/OMXCodecProxy.cpp rename : content/media/omx/OMXCodecProxy.h => dom/media/omx/OMXCodecProxy.h rename : content/media/omx/OMXCodecWrapper.cpp => dom/media/omx/OMXCodecWrapper.cpp rename : content/media/omx/OMXCodecWrapper.h => dom/media/omx/OMXCodecWrapper.h rename : content/media/omx/OmxDecoder.cpp => dom/media/omx/OmxDecoder.cpp rename : content/media/omx/OmxDecoder.h => dom/media/omx/OmxDecoder.h rename : content/media/omx/RtspExtractor.cpp => dom/media/omx/RtspExtractor.cpp rename : content/media/omx/RtspExtractor.h => dom/media/omx/RtspExtractor.h rename : content/media/omx/RtspMediaCodecDecoder.cpp => dom/media/omx/RtspMediaCodecDecoder.cpp rename : content/media/omx/RtspMediaCodecDecoder.h => dom/media/omx/RtspMediaCodecDecoder.h rename : content/media/omx/RtspMediaCodecReader.cpp => dom/media/omx/RtspMediaCodecReader.cpp rename : content/media/omx/RtspMediaCodecReader.h => dom/media/omx/RtspMediaCodecReader.h rename : content/media/omx/RtspOmxDecoder.cpp => dom/media/omx/RtspOmxDecoder.cpp rename : content/media/omx/RtspOmxDecoder.h => dom/media/omx/RtspOmxDecoder.h rename : content/media/omx/RtspOmxReader.cpp => dom/media/omx/RtspOmxReader.cpp rename : content/media/omx/RtspOmxReader.h => dom/media/omx/RtspOmxReader.h rename : content/media/omx/mediaresourcemanager/IMediaResourceManagerClient.cpp => dom/media/omx/mediaresourcemanager/IMediaResourceManagerClient.cpp rename : content/media/omx/mediaresourcemanager/IMediaResourceManagerClient.h => dom/media/omx/mediaresourcemanager/IMediaResourceManagerClient.h rename : content/media/omx/mediaresourcemanager/IMediaResourceManagerDeathNotifier.cpp => dom/media/omx/mediaresourcemanager/IMediaResourceManagerDeathNotifier.cpp rename : content/media/omx/mediaresourcemanager/IMediaResourceManagerDeathNotifier.h => dom/media/omx/mediaresourcemanager/IMediaResourceManagerDeathNotifier.h rename : content/media/omx/mediaresourcemanager/IMediaResourceManagerService.cpp => dom/media/omx/mediaresourcemanager/IMediaResourceManagerService.cpp rename : content/media/omx/mediaresourcemanager/IMediaResourceManagerService.h => dom/media/omx/mediaresourcemanager/IMediaResourceManagerService.h rename : content/media/omx/mediaresourcemanager/MediaResourceHandler.cpp => dom/media/omx/mediaresourcemanager/MediaResourceHandler.cpp rename : content/media/omx/mediaresourcemanager/MediaResourceHandler.h => dom/media/omx/mediaresourcemanager/MediaResourceHandler.h rename : content/media/omx/mediaresourcemanager/MediaResourceManagerClient.cpp => dom/media/omx/mediaresourcemanager/MediaResourceManagerClient.cpp rename : content/media/omx/mediaresourcemanager/MediaResourceManagerClient.h => dom/media/omx/mediaresourcemanager/MediaResourceManagerClient.h rename : content/media/omx/mediaresourcemanager/MediaResourceManagerService.cpp => dom/media/omx/mediaresourcemanager/MediaResourceManagerService.cpp rename : content/media/omx/mediaresourcemanager/MediaResourceManagerService.h => dom/media/omx/mediaresourcemanager/MediaResourceManagerService.h rename : content/media/omx/mediaresourcemanager/moz.build => dom/media/omx/mediaresourcemanager/moz.build rename : content/media/omx/moz.build => dom/media/omx/moz.build rename : content/media/raw/RawDecoder.cpp => dom/media/raw/RawDecoder.cpp rename : content/media/raw/RawDecoder.h => dom/media/raw/RawDecoder.h rename : content/media/raw/RawReader.cpp => dom/media/raw/RawReader.cpp rename : content/media/raw/RawReader.h => dom/media/raw/RawReader.h rename : content/media/raw/RawStructs.h => dom/media/raw/RawStructs.h rename : content/media/raw/moz.build => dom/media/raw/moz.build rename : content/media/systemservices/LoadManager.cpp => dom/media/systemservices/LoadManager.cpp rename : content/media/systemservices/LoadManager.h => dom/media/systemservices/LoadManager.h rename : content/media/systemservices/LoadManagerFactory.cpp => dom/media/systemservices/LoadManagerFactory.cpp rename : content/media/systemservices/LoadManagerFactory.h => dom/media/systemservices/LoadManagerFactory.h rename : content/media/systemservices/LoadMonitor.cpp => dom/media/systemservices/LoadMonitor.cpp rename : content/media/systemservices/LoadMonitor.h => dom/media/systemservices/LoadMonitor.h rename : content/media/systemservices/OSXRunLoopSingleton.cpp => dom/media/systemservices/OSXRunLoopSingleton.cpp rename : content/media/systemservices/OSXRunLoopSingleton.h => dom/media/systemservices/OSXRunLoopSingleton.h rename : content/media/systemservices/OpenSLESProvider.cpp => dom/media/systemservices/OpenSLESProvider.cpp rename : content/media/systemservices/OpenSLESProvider.h => dom/media/systemservices/OpenSLESProvider.h rename : content/media/systemservices/moz.build => dom/media/systemservices/moz.build rename : content/media/test/320x240.ogv => dom/media/test/320x240.ogv rename : content/media/test/320x240.ogv^headers^ => dom/media/test/320x240.ogv^headers^ rename : content/media/test/448636.ogv => dom/media/test/448636.ogv rename : content/media/test/448636.ogv^headers^ => dom/media/test/448636.ogv^headers^ rename : content/media/test/VID_0001.ogg => dom/media/test/VID_0001.ogg rename : content/media/test/VID_0001.ogg^headers^ => dom/media/test/VID_0001.ogg^headers^ rename : content/media/test/allowed.sjs => dom/media/test/allowed.sjs rename : content/media/test/audio-gaps.ogg => dom/media/test/audio-gaps.ogg rename : content/media/test/audio-gaps.ogg^headers^ => dom/media/test/audio-gaps.ogg^headers^ rename : content/media/test/audio-overhang.ogg => dom/media/test/audio-overhang.ogg rename : content/media/test/audio-overhang.ogg^headers^ => dom/media/test/audio-overhang.ogg^headers^ rename : content/media/test/audio.wav => dom/media/test/audio.wav rename : content/media/test/audio.wav^headers^ => dom/media/test/audio.wav^headers^ rename : content/media/test/bad-signature.vtt => dom/media/test/bad-signature.vtt rename : content/media/test/badtags.ogg => dom/media/test/badtags.ogg rename : content/media/test/badtags.ogg^headers^ => dom/media/test/badtags.ogg^headers^ rename : content/media/test/basic.vtt => dom/media/test/basic.vtt rename : content/media/test/beta-phrasebook.ogg => dom/media/test/beta-phrasebook.ogg rename : content/media/test/beta-phrasebook.ogg^headers^ => dom/media/test/beta-phrasebook.ogg^headers^ rename : content/media/test/big.wav => dom/media/test/big.wav rename : content/media/test/big.wav^headers^ => dom/media/test/big.wav^headers^ rename : content/media/test/bogus.duh => dom/media/test/bogus.duh rename : content/media/test/bogus.ogv => dom/media/test/bogus.ogv rename : content/media/test/bogus.ogv^headers^ => dom/media/test/bogus.ogv^headers^ rename : content/media/test/bogus.wav => dom/media/test/bogus.wav rename : content/media/test/bogus.wav^headers^ => dom/media/test/bogus.wav^headers^ rename : content/media/test/bug1066943.webm => dom/media/test/bug1066943.webm rename : content/media/test/bug1066943.webm^headers^ => dom/media/test/bug1066943.webm^headers^ rename : content/media/test/bug461281.ogg => dom/media/test/bug461281.ogg rename : content/media/test/bug461281.ogg^headers^ => dom/media/test/bug461281.ogg^headers^ rename : content/media/test/bug482461-theora.ogv => dom/media/test/bug482461-theora.ogv rename : content/media/test/bug482461-theora.ogv^headers^ => dom/media/test/bug482461-theora.ogv^headers^ rename : content/media/test/bug482461.ogv => dom/media/test/bug482461.ogv rename : content/media/test/bug482461.ogv^headers^ => dom/media/test/bug482461.ogv^headers^ rename : content/media/test/bug495129.ogv => dom/media/test/bug495129.ogv rename : content/media/test/bug495129.ogv^headers^ => dom/media/test/bug495129.ogv^headers^ rename : content/media/test/bug495794.ogg => dom/media/test/bug495794.ogg rename : content/media/test/bug495794.ogg^headers^ => dom/media/test/bug495794.ogg^headers^ rename : content/media/test/bug498380.ogv => dom/media/test/bug498380.ogv rename : content/media/test/bug498380.ogv^headers^ => dom/media/test/bug498380.ogv^headers^ rename : content/media/test/bug498855-1.ogv => dom/media/test/bug498855-1.ogv rename : content/media/test/bug498855-1.ogv^headers^ => dom/media/test/bug498855-1.ogv^headers^ rename : content/media/test/bug498855-2.ogv => dom/media/test/bug498855-2.ogv rename : content/media/test/bug498855-2.ogv^headers^ => dom/media/test/bug498855-2.ogv^headers^ rename : content/media/test/bug498855-3.ogv => dom/media/test/bug498855-3.ogv rename : content/media/test/bug498855-3.ogv^headers^ => dom/media/test/bug498855-3.ogv^headers^ rename : content/media/test/bug499519.ogv => dom/media/test/bug499519.ogv rename : content/media/test/bug499519.ogv^headers^ => dom/media/test/bug499519.ogv^headers^ rename : content/media/test/bug500311.ogv => dom/media/test/bug500311.ogv rename : content/media/test/bug500311.ogv^headers^ => dom/media/test/bug500311.ogv^headers^ rename : content/media/test/bug501279.ogg => dom/media/test/bug501279.ogg rename : content/media/test/bug501279.ogg^headers^ => dom/media/test/bug501279.ogg^headers^ rename : content/media/test/bug504613.ogv => dom/media/test/bug504613.ogv rename : content/media/test/bug504613.ogv^headers^ => dom/media/test/bug504613.ogv^headers^ rename : content/media/test/bug504644.ogv => dom/media/test/bug504644.ogv rename : content/media/test/bug504644.ogv^headers^ => dom/media/test/bug504644.ogv^headers^ rename : content/media/test/bug504843.ogv => dom/media/test/bug504843.ogv rename : content/media/test/bug504843.ogv^headers^ => dom/media/test/bug504843.ogv^headers^ rename : content/media/test/bug506094.ogv => dom/media/test/bug506094.ogv rename : content/media/test/bug506094.ogv^headers^ => dom/media/test/bug506094.ogv^headers^ rename : content/media/test/bug516323.indexed.ogv => dom/media/test/bug516323.indexed.ogv rename : content/media/test/bug516323.indexed.ogv^headers^ => dom/media/test/bug516323.indexed.ogv^headers^ rename : content/media/test/bug516323.ogv => dom/media/test/bug516323.ogv rename : content/media/test/bug516323.ogv^headers^ => dom/media/test/bug516323.ogv^headers^ rename : content/media/test/bug520493.ogg => dom/media/test/bug520493.ogg rename : content/media/test/bug520493.ogg^headers^ => dom/media/test/bug520493.ogg^headers^ rename : content/media/test/bug520500.ogg => dom/media/test/bug520500.ogg rename : content/media/test/bug520500.ogg^headers^ => dom/media/test/bug520500.ogg^headers^ rename : content/media/test/bug520908.ogv => dom/media/test/bug520908.ogv rename : content/media/test/bug520908.ogv^headers^ => dom/media/test/bug520908.ogv^headers^ rename : content/media/test/bug523816.ogv => dom/media/test/bug523816.ogv rename : content/media/test/bug523816.ogv^headers^ => dom/media/test/bug523816.ogv^headers^ rename : content/media/test/bug533822.ogg => dom/media/test/bug533822.ogg rename : content/media/test/bug533822.ogg^headers^ => dom/media/test/bug533822.ogg^headers^ rename : content/media/test/bug556821.ogv => dom/media/test/bug556821.ogv rename : content/media/test/bug556821.ogv^headers^ => dom/media/test/bug556821.ogv^headers^ rename : content/media/test/bug557094.ogv => dom/media/test/bug557094.ogv rename : content/media/test/bug557094.ogv^headers^ => dom/media/test/bug557094.ogv^headers^ rename : content/media/test/bug580982.webm => dom/media/test/bug580982.webm rename : content/media/test/bug580982.webm^headers^ => dom/media/test/bug580982.webm^headers^ rename : content/media/test/bug603918.webm => dom/media/test/bug603918.webm rename : content/media/test/bug603918.webm^headers^ => dom/media/test/bug603918.webm^headers^ rename : content/media/test/bug604067.webm => dom/media/test/bug604067.webm rename : content/media/test/bug604067.webm^headers^ => dom/media/test/bug604067.webm^headers^ rename : content/media/test/bug883173.vtt => dom/media/test/bug883173.vtt rename : content/media/test/can_play_type_dash.js => dom/media/test/can_play_type_dash.js rename : content/media/test/can_play_type_ogg.js => dom/media/test/can_play_type_ogg.js rename : content/media/test/can_play_type_wave.js => dom/media/test/can_play_type_wave.js rename : content/media/test/can_play_type_webm.js => dom/media/test/can_play_type_webm.js rename : content/media/test/cancellable_request.sjs => dom/media/test/cancellable_request.sjs rename : content/media/test/chain.ogg => dom/media/test/chain.ogg rename : content/media/test/chain.ogg^headers^ => dom/media/test/chain.ogg^headers^ rename : content/media/test/chain.ogv => dom/media/test/chain.ogv rename : content/media/test/chain.ogv^headers^ => dom/media/test/chain.ogv^headers^ rename : content/media/test/chain.opus => dom/media/test/chain.opus rename : content/media/test/chain.opus^headers^ => dom/media/test/chain.opus^headers^ rename : content/media/test/chained-audio-video.ogg => dom/media/test/chained-audio-video.ogg rename : content/media/test/chained-audio-video.ogg^headers^ => dom/media/test/chained-audio-video.ogg^headers^ rename : content/media/test/chained-video.ogv => dom/media/test/chained-video.ogv rename : content/media/test/chained-video.ogv^headers^ => dom/media/test/chained-video.ogv^headers^ rename : content/media/test/chrome.ini => dom/media/test/chrome.ini rename : content/media/test/contentDuration1.sjs => dom/media/test/contentDuration1.sjs rename : content/media/test/contentDuration2.sjs => dom/media/test/contentDuration2.sjs rename : content/media/test/contentDuration3.sjs => dom/media/test/contentDuration3.sjs rename : content/media/test/contentDuration4.sjs => dom/media/test/contentDuration4.sjs rename : content/media/test/contentDuration5.sjs => dom/media/test/contentDuration5.sjs rename : content/media/test/contentDuration6.sjs => dom/media/test/contentDuration6.sjs rename : content/media/test/contentDuration7.sjs => dom/media/test/contentDuration7.sjs rename : content/media/test/contentType.sjs => dom/media/test/contentType.sjs rename : content/media/test/crashtests/0-timescale.html => dom/media/test/crashtests/0-timescale.html rename : content/media/test/crashtests/0-timescale.mp4 => dom/media/test/crashtests/0-timescale.mp4 rename : content/media/test/crashtests/1015662.html => dom/media/test/crashtests/1015662.html rename : content/media/test/crashtests/1028458.html => dom/media/test/crashtests/1028458.html rename : content/media/test/crashtests/1080986.html => dom/media/test/crashtests/1080986.html rename : content/media/test/crashtests/1080986.wav => dom/media/test/crashtests/1080986.wav rename : content/media/test/crashtests/459439-1.html => dom/media/test/crashtests/459439-1.html rename : content/media/test/crashtests/466607-1.html => dom/media/test/crashtests/466607-1.html rename : content/media/test/crashtests/466945-1.html => dom/media/test/crashtests/466945-1.html rename : content/media/test/crashtests/468763-1.html => dom/media/test/crashtests/468763-1.html rename : content/media/test/crashtests/474744-1.html => dom/media/test/crashtests/474744-1.html rename : content/media/test/crashtests/481136-1.html => dom/media/test/crashtests/481136-1.html rename : content/media/test/crashtests/492286-1.xhtml => dom/media/test/crashtests/492286-1.xhtml rename : content/media/test/crashtests/493915-1.html => dom/media/test/crashtests/493915-1.html rename : content/media/test/crashtests/495794-1.html => dom/media/test/crashtests/495794-1.html rename : content/media/test/crashtests/495794-1.ogg => dom/media/test/crashtests/495794-1.ogg rename : content/media/test/crashtests/576612-1.html => dom/media/test/crashtests/576612-1.html rename : content/media/test/crashtests/691096-1.html => dom/media/test/crashtests/691096-1.html rename : content/media/test/crashtests/752784-1.html => dom/media/test/crashtests/752784-1.html rename : content/media/test/crashtests/789075-1.html => dom/media/test/crashtests/789075-1.html rename : content/media/test/crashtests/789075.webm => dom/media/test/crashtests/789075.webm rename : content/media/test/crashtests/795892-1.html => dom/media/test/crashtests/795892-1.html rename : content/media/test/crashtests/844563.html => dom/media/test/crashtests/844563.html rename : content/media/test/crashtests/846612.html => dom/media/test/crashtests/846612.html rename : content/media/test/crashtests/852838.html => dom/media/test/crashtests/852838.html rename : content/media/test/crashtests/865537-1.html => dom/media/test/crashtests/865537-1.html rename : content/media/test/crashtests/868504.html => dom/media/test/crashtests/868504.html rename : content/media/test/crashtests/874869.html => dom/media/test/crashtests/874869.html rename : content/media/test/crashtests/874915.html => dom/media/test/crashtests/874915.html rename : content/media/test/crashtests/874934.html => dom/media/test/crashtests/874934.html rename : content/media/test/crashtests/874952.html => dom/media/test/crashtests/874952.html rename : content/media/test/crashtests/875144.html => dom/media/test/crashtests/875144.html rename : content/media/test/crashtests/875596.html => dom/media/test/crashtests/875596.html rename : content/media/test/crashtests/875911.html => dom/media/test/crashtests/875911.html rename : content/media/test/crashtests/876024-1.html => dom/media/test/crashtests/876024-1.html rename : content/media/test/crashtests/876024-2.html => dom/media/test/crashtests/876024-2.html rename : content/media/test/crashtests/876118.html => dom/media/test/crashtests/876118.html rename : content/media/test/crashtests/876207.html => dom/media/test/crashtests/876207.html rename : content/media/test/crashtests/876215.html => dom/media/test/crashtests/876215.html rename : content/media/test/crashtests/876249.html => dom/media/test/crashtests/876249.html rename : content/media/test/crashtests/876252.html => dom/media/test/crashtests/876252.html rename : content/media/test/crashtests/876834.html => dom/media/test/crashtests/876834.html rename : content/media/test/crashtests/877527.html => dom/media/test/crashtests/877527.html rename : content/media/test/crashtests/877820.html => dom/media/test/crashtests/877820.html rename : content/media/test/crashtests/878014.html => dom/media/test/crashtests/878014.html rename : content/media/test/crashtests/878328.html => dom/media/test/crashtests/878328.html rename : content/media/test/crashtests/878407.html => dom/media/test/crashtests/878407.html rename : content/media/test/crashtests/878478.html => dom/media/test/crashtests/878478.html rename : content/media/test/crashtests/880129.html => dom/media/test/crashtests/880129.html rename : content/media/test/crashtests/880202.html => dom/media/test/crashtests/880202.html rename : content/media/test/crashtests/880342-1.html => dom/media/test/crashtests/880342-1.html rename : content/media/test/crashtests/880342-2.html => dom/media/test/crashtests/880342-2.html rename : content/media/test/crashtests/880384.html => dom/media/test/crashtests/880384.html rename : content/media/test/crashtests/880404.html => dom/media/test/crashtests/880404.html rename : content/media/test/crashtests/880724.html => dom/media/test/crashtests/880724.html rename : content/media/test/crashtests/881775.html => dom/media/test/crashtests/881775.html rename : content/media/test/crashtests/882549.html => dom/media/test/crashtests/882549.html rename : content/media/test/crashtests/882956.html => dom/media/test/crashtests/882956.html rename : content/media/test/crashtests/884459.html => dom/media/test/crashtests/884459.html rename : content/media/test/crashtests/889042.html => dom/media/test/crashtests/889042.html rename : content/media/test/crashtests/894104.html => dom/media/test/crashtests/894104.html rename : content/media/test/crashtests/907986-1.html => dom/media/test/crashtests/907986-1.html rename : content/media/test/crashtests/907986-2.html => dom/media/test/crashtests/907986-2.html rename : content/media/test/crashtests/907986-3.html => dom/media/test/crashtests/907986-3.html rename : content/media/test/crashtests/907986-4.html => dom/media/test/crashtests/907986-4.html rename : content/media/test/crashtests/910171-1.html => dom/media/test/crashtests/910171-1.html rename : content/media/test/crashtests/920987.html => dom/media/test/crashtests/920987.html rename : content/media/test/crashtests/925619-1.html => dom/media/test/crashtests/925619-1.html rename : content/media/test/crashtests/925619-2.html => dom/media/test/crashtests/925619-2.html rename : content/media/test/crashtests/926619.html => dom/media/test/crashtests/926619.html rename : content/media/test/crashtests/933151.html => dom/media/test/crashtests/933151.html rename : content/media/test/crashtests/933156.html => dom/media/test/crashtests/933156.html rename : content/media/test/crashtests/944851.html => dom/media/test/crashtests/944851.html rename : content/media/test/crashtests/952756.html => dom/media/test/crashtests/952756.html rename : content/media/test/crashtests/966636.html => dom/media/test/crashtests/966636.html rename : content/media/test/crashtests/986901.html => dom/media/test/crashtests/986901.html rename : content/media/test/crashtests/990794.html => dom/media/test/crashtests/990794.html rename : content/media/test/crashtests/buffer-source-ended-1.html => dom/media/test/crashtests/buffer-source-ended-1.html rename : content/media/test/crashtests/cors.webm => dom/media/test/crashtests/cors.webm rename : content/media/test/crashtests/cors.webm^headers^ => dom/media/test/crashtests/cors.webm^headers^ rename : content/media/test/crashtests/crashtests.list => dom/media/test/crashtests/crashtests.list rename : content/media/test/crashtests/media-element-source-seek-1.html => dom/media/test/crashtests/media-element-source-seek-1.html rename : content/media/test/crashtests/offline-buffer-source-ended-1.html => dom/media/test/crashtests/offline-buffer-source-ended-1.html rename : content/media/test/crashtests/oscillator-ended-1.html => dom/media/test/crashtests/oscillator-ended-1.html rename : content/media/test/crashtests/oscillator-ended-2.html => dom/media/test/crashtests/oscillator-ended-2.html rename : content/media/test/crashtests/sound.ogg => dom/media/test/crashtests/sound.ogg rename : content/media/test/dash/dash-manifest-garbled-webm.mpd => dom/media/test/dash/dash-manifest-garbled-webm.mpd rename : content/media/test/dash/dash-manifest-garbled.mpd => dom/media/test/dash/dash-manifest-garbled.mpd rename : content/media/test/dash/dash-manifest-sjs.mpd => dom/media/test/dash/dash-manifest-sjs.mpd rename : content/media/test/dash/dash-manifest.mpd => dom/media/test/dash/dash-manifest.mpd rename : content/media/test/dash/dash-webm-audio-128k.webm => dom/media/test/dash/dash-webm-audio-128k.webm rename : content/media/test/dash/dash-webm-video-320x180.webm => dom/media/test/dash/dash-webm-video-320x180.webm rename : content/media/test/dash/dash-webm-video-428x240.webm => dom/media/test/dash/dash-webm-video-428x240.webm rename : content/media/test/dash/garbled.webm => dom/media/test/dash/garbled.webm rename : content/media/test/dash_detect_stream_switch.sjs => dom/media/test/dash_detect_stream_switch.sjs rename : content/media/test/detodos.opus => dom/media/test/detodos.opus rename : content/media/test/detodos.opus^headers^ => dom/media/test/detodos.opus^headers^ rename : content/media/test/detodos.webm => dom/media/test/detodos.webm rename : content/media/test/detodos.webm^headers^ => dom/media/test/detodos.webm^headers^ rename : content/media/test/dirac.ogg => dom/media/test/dirac.ogg rename : content/media/test/dirac.ogg^headers^ => dom/media/test/dirac.ogg^headers^ rename : content/media/test/dynamic_redirect.sjs => dom/media/test/dynamic_redirect.sjs rename : content/media/test/dynamic_resource.sjs => dom/media/test/dynamic_resource.sjs rename : content/media/test/file_access_controls.html => dom/media/test/file_access_controls.html rename : content/media/test/fragment_noplay.js => dom/media/test/fragment_noplay.js rename : content/media/test/fragment_play.js => dom/media/test/fragment_play.js rename : content/media/test/gizmo-frag-cenc.xml => dom/media/test/gizmo-frag-cenc.xml rename : content/media/test/gizmo-frag-cenc1.m4s => dom/media/test/gizmo-frag-cenc1.m4s rename : content/media/test/gizmo-frag-cenc2.m4s => dom/media/test/gizmo-frag-cenc2.m4s rename : content/media/test/gizmo-frag-cencinit.mp4 => dom/media/test/gizmo-frag-cencinit.mp4 rename : content/media/test/gizmo.mp4 => dom/media/test/gizmo.mp4 rename : content/media/test/gizmo.mp4^headers^ => dom/media/test/gizmo.mp4^headers^ rename : content/media/test/graph_latency.py => dom/media/test/graph_latency.py rename : content/media/test/huge-id3.mp3 => dom/media/test/huge-id3.mp3 rename : content/media/test/huge-id3.mp3^headers^ => dom/media/test/huge-id3.mp3^headers^ rename : content/media/test/id3tags.mp3 => dom/media/test/id3tags.mp3 rename : content/media/test/id3tags.mp3^headers^ => dom/media/test/id3tags.mp3^headers^ rename : content/media/test/invalid-cmap-s0c0.opus => dom/media/test/invalid-cmap-s0c0.opus rename : content/media/test/invalid-cmap-s0c0.opus^headers^ => dom/media/test/invalid-cmap-s0c0.opus^headers^ rename : content/media/test/invalid-cmap-s0c2.opus => dom/media/test/invalid-cmap-s0c2.opus rename : content/media/test/invalid-cmap-s0c2.opus^headers^ => dom/media/test/invalid-cmap-s0c2.opus^headers^ rename : content/media/test/invalid-cmap-s1c2.opus => dom/media/test/invalid-cmap-s1c2.opus rename : content/media/test/invalid-cmap-s1c2.opus^headers^ => dom/media/test/invalid-cmap-s1c2.opus^headers^ rename : content/media/test/invalid-cmap-short.opus => dom/media/test/invalid-cmap-short.opus rename : content/media/test/invalid-cmap-short.opus^headers^ => dom/media/test/invalid-cmap-short.opus^headers^ rename : content/media/test/invalid-discard_on_multi_blocks.webm => dom/media/test/invalid-discard_on_multi_blocks.webm rename : content/media/test/invalid-discard_on_multi_blocks.webm^headers^ => dom/media/test/invalid-discard_on_multi_blocks.webm^headers^ rename : content/media/test/invalid-excess_discard.webm => dom/media/test/invalid-excess_discard.webm rename : content/media/test/invalid-excess_discard.webm^headers^ => dom/media/test/invalid-excess_discard.webm^headers^ rename : content/media/test/invalid-excess_neg_discard.webm => dom/media/test/invalid-excess_neg_discard.webm rename : content/media/test/invalid-excess_neg_discard.webm^headers^ => dom/media/test/invalid-excess_neg_discard.webm^headers^ rename : content/media/test/invalid-m0c0.opus => dom/media/test/invalid-m0c0.opus rename : content/media/test/invalid-m0c0.opus^headers^ => dom/media/test/invalid-m0c0.opus^headers^ rename : content/media/test/invalid-m0c3.opus => dom/media/test/invalid-m0c3.opus rename : content/media/test/invalid-m0c3.opus^headers^ => dom/media/test/invalid-m0c3.opus^headers^ rename : content/media/test/invalid-m1c0.opus => dom/media/test/invalid-m1c0.opus rename : content/media/test/invalid-m1c0.opus^headers^ => dom/media/test/invalid-m1c0.opus^headers^ rename : content/media/test/invalid-m1c9.opus => dom/media/test/invalid-m1c9.opus rename : content/media/test/invalid-m1c9.opus^headers^ => dom/media/test/invalid-m1c9.opus^headers^ rename : content/media/test/invalid-m2c0.opus => dom/media/test/invalid-m2c0.opus rename : content/media/test/invalid-m2c0.opus^headers^ => dom/media/test/invalid-m2c0.opus^headers^ rename : content/media/test/invalid-m2c1.opus => dom/media/test/invalid-m2c1.opus rename : content/media/test/invalid-m2c1.opus^headers^ => dom/media/test/invalid-m2c1.opus^headers^ rename : content/media/test/invalid-neg_discard.webm => dom/media/test/invalid-neg_discard.webm rename : content/media/test/invalid-neg_discard.webm^headers^ => dom/media/test/invalid-neg_discard.webm^headers^ rename : content/media/test/invalid-preskip.webm => dom/media/test/invalid-preskip.webm rename : content/media/test/invalid-preskip.webm^headers^ => dom/media/test/invalid-preskip.webm^headers^ rename : content/media/test/long.vtt => dom/media/test/long.vtt rename : content/media/test/make-headers.sh => dom/media/test/make-headers.sh rename : content/media/test/manifest.js => dom/media/test/manifest.js rename : content/media/test/mochitest.ini => dom/media/test/mochitest.ini rename : content/media/test/multiple-bos-more-header-fileds.ogg => dom/media/test/multiple-bos-more-header-fileds.ogg rename : content/media/test/multiple-bos-more-header-fileds.ogg^headers^ => dom/media/test/multiple-bos-more-header-fileds.ogg^headers^ rename : content/media/test/multiple-bos.ogg => dom/media/test/multiple-bos.ogg rename : content/media/test/multiple-bos.ogg^headers^ => dom/media/test/multiple-bos.ogg^headers^ rename : content/media/test/no-cues.webm => dom/media/test/no-cues.webm rename : content/media/test/no-cues.webm^headers^ => dom/media/test/no-cues.webm^headers^ rename : content/media/test/noContentLength.sjs => dom/media/test/noContentLength.sjs rename : content/media/test/notags.mp3 => dom/media/test/notags.mp3 rename : content/media/test/notags.mp3^headers^ => dom/media/test/notags.mp3^headers^ rename : content/media/test/owl-funnier-id3.mp3 => dom/media/test/owl-funnier-id3.mp3 rename : content/media/test/owl-funnier-id3.mp3^headers^ => dom/media/test/owl-funnier-id3.mp3^headers^ rename : content/media/test/owl-funny-id3.mp3 => dom/media/test/owl-funny-id3.mp3 rename : content/media/test/owl-funny-id3.mp3^headers^ => dom/media/test/owl-funny-id3.mp3^headers^ rename : content/media/test/owl.mp3 => dom/media/test/owl.mp3 rename : content/media/test/owl.mp3^headers^ => dom/media/test/owl.mp3^headers^ rename : content/media/test/parser.vtt => dom/media/test/parser.vtt rename : content/media/test/pixel_aspect_ratio.mp4 => dom/media/test/pixel_aspect_ratio.mp4 rename : content/media/test/r11025_msadpcm_c1.wav => dom/media/test/r11025_msadpcm_c1.wav rename : content/media/test/r11025_msadpcm_c1.wav^headers^ => dom/media/test/r11025_msadpcm_c1.wav^headers^ rename : content/media/test/r11025_s16_c1.wav => dom/media/test/r11025_s16_c1.wav rename : content/media/test/r11025_s16_c1.wav^headers^ => dom/media/test/r11025_s16_c1.wav^headers^ rename : content/media/test/r11025_s16_c1_trailing.wav => dom/media/test/r11025_s16_c1_trailing.wav rename : content/media/test/r11025_s16_c1_trailing.wav^headers^ => dom/media/test/r11025_s16_c1_trailing.wav^headers^ rename : content/media/test/r11025_u8_c1.wav => dom/media/test/r11025_u8_c1.wav rename : content/media/test/r11025_u8_c1.wav^headers^ => dom/media/test/r11025_u8_c1.wav^headers^ rename : content/media/test/r11025_u8_c1_trunc.wav => dom/media/test/r11025_u8_c1_trunc.wav rename : content/media/test/r11025_u8_c1_trunc.wav^headers^ => dom/media/test/r11025_u8_c1_trunc.wav^headers^ rename : content/media/test/r16000_u8_c1_list.wav => dom/media/test/r16000_u8_c1_list.wav rename : content/media/test/r16000_u8_c1_list.wav^headers^ => dom/media/test/r16000_u8_c1_list.wav^headers^ rename : content/media/test/reactivate_helper.html => dom/media/test/reactivate_helper.html rename : content/media/test/redirect.sjs => dom/media/test/redirect.sjs rename : content/media/test/referer.sjs => dom/media/test/referer.sjs rename : content/media/test/region.vtt => dom/media/test/region.vtt rename : content/media/test/sample-fisbone-skeleton4.ogv => dom/media/test/sample-fisbone-skeleton4.ogv rename : content/media/test/sample-fisbone-skeleton4.ogv^headers^ => dom/media/test/sample-fisbone-skeleton4.ogv^headers^ rename : content/media/test/sample-fisbone-wrong-header.ogv => dom/media/test/sample-fisbone-wrong-header.ogv rename : content/media/test/sample-fisbone-wrong-header.ogv^headers^ => dom/media/test/sample-fisbone-wrong-header.ogv^headers^ rename : content/media/test/sample.3g2 => dom/media/test/sample.3g2 rename : content/media/test/sample.3gp => dom/media/test/sample.3gp rename : content/media/test/seek.ogv => dom/media/test/seek.ogv rename : content/media/test/seek.ogv^headers^ => dom/media/test/seek.ogv^headers^ rename : content/media/test/seek.webm => dom/media/test/seek.webm rename : content/media/test/seek.webm^headers^ => dom/media/test/seek.webm^headers^ rename : content/media/test/seek.yuv => dom/media/test/seek.yuv rename : content/media/test/seekLies.sjs => dom/media/test/seekLies.sjs rename : content/media/test/seek_support.js => dom/media/test/seek_support.js rename : content/media/test/seek_with_sound.ogg => dom/media/test/seek_with_sound.ogg rename : content/media/test/seek_with_sound.ogg^headers^ => dom/media/test/seek_with_sound.ogg^headers^ rename : content/media/test/short-cenc.mp4 => dom/media/test/short-cenc.mp4 rename : content/media/test/short-cenc.xml => dom/media/test/short-cenc.xml rename : content/media/test/short-video.ogv => dom/media/test/short-video.ogv rename : content/media/test/short-video.ogv^headers^ => dom/media/test/short-video.ogv^headers^ rename : content/media/test/short.mp4 => dom/media/test/short.mp4 rename : content/media/test/small-shot-mp3.mp4 => dom/media/test/small-shot-mp3.mp4 rename : content/media/test/small-shot-mp3.mp4^headers^ => dom/media/test/small-shot-mp3.mp4^headers^ rename : content/media/test/small-shot.m4a => dom/media/test/small-shot.m4a rename : content/media/test/small-shot.mp3 => dom/media/test/small-shot.mp3 rename : content/media/test/small-shot.mp3^headers^ => dom/media/test/small-shot.mp3^headers^ rename : content/media/test/small-shot.ogg => dom/media/test/small-shot.ogg rename : content/media/test/small-shot.ogg^headers^ => dom/media/test/small-shot.ogg^headers^ rename : content/media/test/sound.ogg => dom/media/test/sound.ogg rename : content/media/test/sound.ogg^headers^ => dom/media/test/sound.ogg^headers^ rename : content/media/test/spacestorm-1000Hz-100ms.ogg => dom/media/test/spacestorm-1000Hz-100ms.ogg rename : content/media/test/spacestorm-1000Hz-100ms.ogg^headers^ => dom/media/test/spacestorm-1000Hz-100ms.ogg^headers^ rename : content/media/test/split.webm => dom/media/test/split.webm rename : content/media/test/split.webm^headers^ => dom/media/test/split.webm^headers^ rename : content/media/test/street.mp4 => dom/media/test/street.mp4 rename : content/media/test/street.mp4^headers^ => dom/media/test/street.mp4^headers^ rename : content/media/test/test-1-mono.opus => dom/media/test/test-1-mono.opus rename : content/media/test/test-1-mono.opus^headers^ => dom/media/test/test-1-mono.opus^headers^ rename : content/media/test/test-2-stereo.opus => dom/media/test/test-2-stereo.opus rename : content/media/test/test-2-stereo.opus^headers^ => dom/media/test/test-2-stereo.opus^headers^ rename : content/media/test/test-3-LCR.opus => dom/media/test/test-3-LCR.opus rename : content/media/test/test-3-LCR.opus^headers^ => dom/media/test/test-3-LCR.opus^headers^ rename : content/media/test/test-4-quad.opus => dom/media/test/test-4-quad.opus rename : content/media/test/test-4-quad.opus^headers^ => dom/media/test/test-4-quad.opus^headers^ rename : content/media/test/test-5-5.0.opus => dom/media/test/test-5-5.0.opus rename : content/media/test/test-5-5.0.opus^headers^ => dom/media/test/test-5-5.0.opus^headers^ rename : content/media/test/test-6-5.1.opus => dom/media/test/test-6-5.1.opus rename : content/media/test/test-6-5.1.opus^headers^ => dom/media/test/test-6-5.1.opus^headers^ rename : content/media/test/test-7-6.1.opus => dom/media/test/test-7-6.1.opus rename : content/media/test/test-7-6.1.opus^headers^ => dom/media/test/test-7-6.1.opus^headers^ rename : content/media/test/test-8-7.1.opus => dom/media/test/test-8-7.1.opus rename : content/media/test/test-8-7.1.opus^headers^ => dom/media/test/test-8-7.1.opus^headers^ rename : content/media/test/test_VideoPlaybackQuality.html => dom/media/test/test_VideoPlaybackQuality.html rename : content/media/test/test_VideoPlaybackQuality_disabled.html => dom/media/test/test_VideoPlaybackQuality_disabled.html rename : content/media/test/test_access_control.html => dom/media/test/test_access_control.html rename : content/media/test/test_aspectratio_mp4.html => dom/media/test/test_aspectratio_mp4.html rename : content/media/test/test_audio1.html => dom/media/test/test_audio1.html rename : content/media/test/test_audio2.html => dom/media/test/test_audio2.html rename : content/media/test/test_audioDocumentTitle.html => dom/media/test/test_audioDocumentTitle.html rename : content/media/test/test_autoplay.html => dom/media/test/test_autoplay.html rename : content/media/test/test_autoplay_contentEditable.html => dom/media/test/test_autoplay_contentEditable.html rename : content/media/test/test_buffered.html => dom/media/test/test_buffered.html rename : content/media/test/test_bug1018933.html => dom/media/test/test_bug1018933.html rename : content/media/test/test_bug448534.html => dom/media/test/test_bug448534.html rename : content/media/test/test_bug463162.xhtml => dom/media/test/test_bug463162.xhtml rename : content/media/test/test_bug465498.html => dom/media/test/test_bug465498.html rename : content/media/test/test_bug493187.html => dom/media/test/test_bug493187.html rename : content/media/test/test_bug495145.html => dom/media/test/test_bug495145.html rename : content/media/test/test_bug495300.html => dom/media/test/test_bug495300.html rename : content/media/test/test_bug654550.html => dom/media/test/test_bug654550.html rename : content/media/test/test_bug686942.html => dom/media/test/test_bug686942.html rename : content/media/test/test_bug726904.html => dom/media/test/test_bug726904.html rename : content/media/test/test_bug874897.html => dom/media/test/test_bug874897.html rename : content/media/test/test_bug883173.html => dom/media/test/test_bug883173.html rename : content/media/test/test_bug895091.html => dom/media/test/test_bug895091.html rename : content/media/test/test_bug895305.html => dom/media/test/test_bug895305.html rename : content/media/test/test_bug919265.html => dom/media/test/test_bug919265.html rename : content/media/test/test_bug957847.html => dom/media/test/test_bug957847.html rename : content/media/test/test_can_play_type.html => dom/media/test/test_can_play_type.html rename : content/media/test/test_can_play_type_mpeg.html => dom/media/test/test_can_play_type_mpeg.html rename : content/media/test/test_can_play_type_no_ogg.html => dom/media/test/test_can_play_type_no_ogg.html rename : content/media/test/test_can_play_type_no_wave.html => dom/media/test/test_can_play_type_no_wave.html rename : content/media/test/test_can_play_type_no_webm.html => dom/media/test/test_can_play_type_no_webm.html rename : content/media/test/test_can_play_type_ogg.html => dom/media/test/test_can_play_type_ogg.html rename : content/media/test/test_can_play_type_wave.html => dom/media/test/test_can_play_type_wave.html rename : content/media/test/test_can_play_type_webm.html => dom/media/test/test_can_play_type_webm.html rename : content/media/test/test_chaining.html => dom/media/test/test_chaining.html rename : content/media/test/test_clone_media_element.html => dom/media/test/test_clone_media_element.html rename : content/media/test/test_closing_connections.html => dom/media/test/test_closing_connections.html rename : content/media/test/test_constants.html => dom/media/test/test_constants.html rename : content/media/test/test_contentDuration1.html => dom/media/test/test_contentDuration1.html rename : content/media/test/test_contentDuration2.html => dom/media/test/test_contentDuration2.html rename : content/media/test/test_contentDuration3.html => dom/media/test/test_contentDuration3.html rename : content/media/test/test_contentDuration4.html => dom/media/test/test_contentDuration4.html rename : content/media/test/test_contentDuration5.html => dom/media/test/test_contentDuration5.html rename : content/media/test/test_contentDuration6.html => dom/media/test/test_contentDuration6.html rename : content/media/test/test_contentDuration7.html => dom/media/test/test_contentDuration7.html rename : content/media/test/test_controls.html => dom/media/test/test_controls.html rename : content/media/test/test_currentTime.html => dom/media/test/test_currentTime.html rename : content/media/test/test_decode_error.html => dom/media/test/test_decode_error.html rename : content/media/test/test_decoder_disable.html => dom/media/test/test_decoder_disable.html rename : content/media/test/test_defaultMuted.html => dom/media/test/test_defaultMuted.html rename : content/media/test/test_delay_load.html => dom/media/test/test_delay_load.html rename : content/media/test/test_encryptedMediaExtensions.html => dom/media/test/test_encryptedMediaExtensions.html rename : content/media/test/test_error_in_video_document.html => dom/media/test/test_error_in_video_document.html rename : content/media/test/test_error_on_404.html => dom/media/test/test_error_on_404.html rename : content/media/test/test_fastSeek-forwards.html => dom/media/test/test_fastSeek-forwards.html rename : content/media/test/test_fastSeek.html => dom/media/test/test_fastSeek.html rename : content/media/test/test_fragment_noplay.html => dom/media/test/test_fragment_noplay.html rename : content/media/test/test_fragment_play.html => dom/media/test/test_fragment_play.html rename : content/media/test/test_imagecapture.html => dom/media/test/test_imagecapture.html rename : content/media/test/test_info_leak.html => dom/media/test/test_info_leak.html rename : content/media/test/test_invalid_reject.html => dom/media/test/test_invalid_reject.html rename : content/media/test/test_invalid_reject_play.html => dom/media/test/test_invalid_reject_play.html rename : content/media/test/test_invalid_seek.html => dom/media/test/test_invalid_seek.html rename : content/media/test/test_load.html => dom/media/test/test_load.html rename : content/media/test/test_load_candidates.html => dom/media/test/test_load_candidates.html rename : content/media/test/test_load_same_resource.html => dom/media/test/test_load_same_resource.html rename : content/media/test/test_load_source.html => dom/media/test/test_load_source.html rename : content/media/test/test_loop.html => dom/media/test/test_loop.html rename : content/media/test/test_media_selection.html => dom/media/test/test_media_selection.html rename : content/media/test/test_media_sniffer.html => dom/media/test/test_media_sniffer.html rename : content/media/test/test_mediarecorder_avoid_recursion.html => dom/media/test/test_mediarecorder_avoid_recursion.html rename : content/media/test/test_mediarecorder_creation.html => dom/media/test/test_mediarecorder_creation.html rename : content/media/test/test_mediarecorder_creation_fail.html => dom/media/test/test_mediarecorder_creation_fail.html rename : content/media/test/test_mediarecorder_getencodeddata.html => dom/media/test/test_mediarecorder_getencodeddata.html rename : content/media/test/test_mediarecorder_record_4ch_audiocontext.html => dom/media/test/test_mediarecorder_record_4ch_audiocontext.html rename : content/media/test/test_mediarecorder_record_audiocontext.html => dom/media/test/test_mediarecorder_record_audiocontext.html rename : content/media/test/test_mediarecorder_record_audiocontext_mlk.html => dom/media/test/test_mediarecorder_record_audiocontext_mlk.html rename : content/media/test/test_mediarecorder_record_audionode.html => dom/media/test/test_mediarecorder_record_audionode.html rename : content/media/test/test_mediarecorder_record_getdata_afterstart.html => dom/media/test/test_mediarecorder_record_getdata_afterstart.html rename : content/media/test/test_mediarecorder_record_gum_video_timeslice.html => dom/media/test/test_mediarecorder_record_gum_video_timeslice.html rename : content/media/test/test_mediarecorder_record_immediate_stop.html => dom/media/test/test_mediarecorder_record_immediate_stop.html rename : content/media/test/test_mediarecorder_record_no_timeslice.html => dom/media/test/test_mediarecorder_record_no_timeslice.html rename : content/media/test/test_mediarecorder_record_nosrc.html => dom/media/test/test_mediarecorder_record_nosrc.html rename : content/media/test/test_mediarecorder_record_session.html => dom/media/test/test_mediarecorder_record_session.html rename : content/media/test/test_mediarecorder_record_startstopstart.html => dom/media/test/test_mediarecorder_record_startstopstart.html rename : content/media/test/test_mediarecorder_record_stopms.html => dom/media/test/test_mediarecorder_record_stopms.html rename : content/media/test/test_mediarecorder_record_timeslice.html => dom/media/test/test_mediarecorder_record_timeslice.html rename : content/media/test/test_mediarecorder_reload_crash.html => dom/media/test/test_mediarecorder_reload_crash.html rename : content/media/test/test_mediarecorder_state_transition.html => dom/media/test/test_mediarecorder_state_transition.html rename : content/media/test/test_mediarecorder_unsupported_src.html => dom/media/test/test_mediarecorder_unsupported_src.html rename : content/media/test/test_mediatrack_consuming_mediaresource.html => dom/media/test/test_mediatrack_consuming_mediaresource.html rename : content/media/test/test_mediatrack_consuming_mediastream.html => dom/media/test/test_mediatrack_consuming_mediastream.html rename : content/media/test/test_mediatrack_events.html => dom/media/test/test_mediatrack_events.html rename : content/media/test/test_mediatrack_parsing_ogg.html => dom/media/test/test_mediatrack_parsing_ogg.html rename : content/media/test/test_mediatrack_replay_from_end.html => dom/media/test/test_mediatrack_replay_from_end.html rename : content/media/test/test_metadata.html => dom/media/test/test_metadata.html rename : content/media/test/test_mixed_principals.html => dom/media/test/test_mixed_principals.html rename : content/media/test/test_mozHasAudio.html => dom/media/test/test_mozHasAudio.html rename : content/media/test/test_networkState.html => dom/media/test/test_networkState.html rename : content/media/test/test_new_audio.html => dom/media/test/test_new_audio.html rename : content/media/test/test_no_load_event.html => dom/media/test/test_no_load_event.html rename : content/media/test/test_paused.html => dom/media/test/test_paused.html rename : content/media/test/test_paused_after_ended.html => dom/media/test/test_paused_after_ended.html rename : content/media/test/test_play_events.html => dom/media/test/test_play_events.html rename : content/media/test/test_play_events_2.html => dom/media/test/test_play_events_2.html rename : content/media/test/test_play_twice.html => dom/media/test/test_play_twice.html rename : content/media/test/test_playback.html => dom/media/test/test_playback.html rename : content/media/test/test_playback_errors.html => dom/media/test/test_playback_errors.html rename : content/media/test/test_playback_rate.html => dom/media/test/test_playback_rate.html rename : content/media/test/test_playback_rate_playpause.html => dom/media/test/test_playback_rate_playpause.html rename : content/media/test/test_played.html => dom/media/test/test_played.html rename : content/media/test/test_preload_actions.html => dom/media/test/test_preload_actions.html rename : content/media/test/test_preload_attribute.html => dom/media/test/test_preload_attribute.html rename : content/media/test/test_preload_suspend.html => dom/media/test/test_preload_suspend.html rename : content/media/test/test_progress.html => dom/media/test/test_progress.html rename : content/media/test/test_reactivate.html => dom/media/test/test_reactivate.html rename : content/media/test/test_readyState.html => dom/media/test/test_readyState.html rename : content/media/test/test_referer.html => dom/media/test/test_referer.html rename : content/media/test/test_replay_metadata.html => dom/media/test/test_replay_metadata.html rename : content/media/test/test_reset_events_async.html => dom/media/test/test_reset_events_async.html rename : content/media/test/test_reset_src.html => dom/media/test/test_reset_src.html rename : content/media/test/test_resume.html => dom/media/test/test_resume.html rename : content/media/test/test_seek-1.html => dom/media/test/test_seek-1.html rename : content/media/test/test_seek-10.html => dom/media/test/test_seek-10.html rename : content/media/test/test_seek-11.html => dom/media/test/test_seek-11.html rename : content/media/test/test_seek-12.html => dom/media/test/test_seek-12.html rename : content/media/test/test_seek-13.html => dom/media/test/test_seek-13.html rename : content/media/test/test_seek-2.html => dom/media/test/test_seek-2.html rename : content/media/test/test_seek-3.html => dom/media/test/test_seek-3.html rename : content/media/test/test_seek-4.html => dom/media/test/test_seek-4.html rename : content/media/test/test_seek-5.html => dom/media/test/test_seek-5.html rename : content/media/test/test_seek-6.html => dom/media/test/test_seek-6.html rename : content/media/test/test_seek-7.html => dom/media/test/test_seek-7.html rename : content/media/test/test_seek-8.html => dom/media/test/test_seek-8.html rename : content/media/test/test_seek-9.html => dom/media/test/test_seek-9.html rename : content/media/test/test_seekLies.html => dom/media/test/test_seekLies.html rename : content/media/test/test_seek_out_of_range.html => dom/media/test/test_seek_out_of_range.html rename : content/media/test/test_seekable1.html => dom/media/test/test_seekable1.html rename : content/media/test/test_seekable2.html => dom/media/test/test_seekable2.html rename : content/media/test/test_seekable3.html => dom/media/test/test_seekable3.html rename : content/media/test/test_source.html => dom/media/test/test_source.html rename : content/media/test/test_source_media.html => dom/media/test/test_source_media.html rename : content/media/test/test_source_null.html => dom/media/test/test_source_null.html rename : content/media/test/test_source_write.html => dom/media/test/test_source_write.html rename : content/media/test/test_standalone.html => dom/media/test/test_standalone.html rename : content/media/test/test_streams_autoplay.html => dom/media/test/test_streams_autoplay.html rename : content/media/test/test_streams_element_capture.html => dom/media/test/test_streams_element_capture.html rename : content/media/test/test_streams_element_capture_createObjectURL.html => dom/media/test/test_streams_element_capture_createObjectURL.html rename : content/media/test/test_streams_element_capture_playback.html => dom/media/test/test_streams_element_capture_playback.html rename : content/media/test/test_streams_element_capture_reset.html => dom/media/test/test_streams_element_capture_reset.html rename : content/media/test/test_streams_gc.html => dom/media/test/test_streams_gc.html rename : content/media/test/test_streams_srcObject.html => dom/media/test/test_streams_srcObject.html rename : content/media/test/test_streams_tracks.html => dom/media/test/test_streams_tracks.html rename : content/media/test/test_texttrack.html => dom/media/test/test_texttrack.html rename : content/media/test/test_texttrack_chrome.html => dom/media/test/test_texttrack_chrome.html rename : content/media/test/test_texttrackcue.html => dom/media/test/test_texttrackcue.html rename : content/media/test/test_texttrackcue_chrome.html => dom/media/test/test_texttrackcue_chrome.html rename : content/media/test/test_texttracklist.html => dom/media/test/test_texttracklist.html rename : content/media/test/test_texttracklist_chrome.html => dom/media/test/test_texttracklist_chrome.html rename : content/media/test/test_texttrackregion.html => dom/media/test/test_texttrackregion.html rename : content/media/test/test_timeupdate_small_files.html => dom/media/test/test_timeupdate_small_files.html rename : content/media/test/test_trackelementevent.html => dom/media/test/test_trackelementevent.html rename : content/media/test/test_trackevent.html => dom/media/test/test_trackevent.html rename : content/media/test/test_unseekable.html => dom/media/test/test_unseekable.html rename : content/media/test/test_videoDocumentTitle.html => dom/media/test/test_videoDocumentTitle.html rename : content/media/test/test_video_in_audio_element.html => dom/media/test/test_video_in_audio_element.html rename : content/media/test/test_video_to_canvas.html => dom/media/test/test_video_to_canvas.html rename : content/media/test/test_volume.html => dom/media/test/test_volume.html rename : content/media/test/test_vttparser.html => dom/media/test/test_vttparser.html rename : content/media/test/test_wav_ended1.html => dom/media/test/test_wav_ended1.html rename : content/media/test/test_wav_ended2.html => dom/media/test/test_wav_ended2.html rename : content/media/test/test_webvtt_disabled.html => dom/media/test/test_webvtt_disabled.html rename : content/media/test/variable-channel.ogg => dom/media/test/variable-channel.ogg rename : content/media/test/variable-channel.ogg^headers^ => dom/media/test/variable-channel.ogg^headers^ rename : content/media/test/variable-channel.opus => dom/media/test/variable-channel.opus rename : content/media/test/variable-channel.opus^headers^ => dom/media/test/variable-channel.opus^headers^ rename : content/media/test/variable-preskip.opus => dom/media/test/variable-preskip.opus rename : content/media/test/variable-preskip.opus^headers^ => dom/media/test/variable-preskip.opus^headers^ rename : content/media/test/variable-samplerate.ogg => dom/media/test/variable-samplerate.ogg rename : content/media/test/variable-samplerate.ogg^headers^ => dom/media/test/variable-samplerate.ogg^headers^ rename : content/media/test/variable-samplerate.opus => dom/media/test/variable-samplerate.opus rename : content/media/test/variable-samplerate.opus^headers^ => dom/media/test/variable-samplerate.opus^headers^ rename : content/media/test/vbr-head.mp3 => dom/media/test/vbr-head.mp3 rename : content/media/test/vbr-head.mp3^headers^ => dom/media/test/vbr-head.mp3^headers^ rename : content/media/test/vbr.mp3 => dom/media/test/vbr.mp3 rename : content/media/test/vbr.mp3^headers^ => dom/media/test/vbr.mp3^headers^ rename : content/media/test/video-overhang.ogg => dom/media/test/video-overhang.ogg rename : content/media/test/video-overhang.ogg^headers^ => dom/media/test/video-overhang.ogg^headers^ rename : content/media/test/vp9.webm => dom/media/test/vp9.webm rename : content/media/test/vp9.webm^headers^ => dom/media/test/vp9.webm^headers^ rename : content/media/test/vp9cake.webm => dom/media/test/vp9cake.webm rename : content/media/test/vp9cake.webm^headers^ => dom/media/test/vp9cake.webm^headers^ rename : content/media/test/wave_metadata.wav => dom/media/test/wave_metadata.wav rename : content/media/test/wave_metadata.wav^headers^ => dom/media/test/wave_metadata.wav^headers^ rename : content/media/test/wave_metadata_bad_len.wav => dom/media/test/wave_metadata_bad_len.wav rename : content/media/test/wave_metadata_bad_len.wav^headers^ => dom/media/test/wave_metadata_bad_len.wav^headers^ rename : content/media/test/wave_metadata_bad_no_null.wav => dom/media/test/wave_metadata_bad_no_null.wav rename : content/media/test/wave_metadata_bad_no_null.wav^headers^ => dom/media/test/wave_metadata_bad_no_null.wav^headers^ rename : content/media/test/wave_metadata_bad_utf8.wav => dom/media/test/wave_metadata_bad_utf8.wav rename : content/media/test/wave_metadata_bad_utf8.wav^headers^ => dom/media/test/wave_metadata_bad_utf8.wav^headers^ rename : content/media/test/wave_metadata_unknown_tag.wav => dom/media/test/wave_metadata_unknown_tag.wav rename : content/media/test/wave_metadata_unknown_tag.wav^headers^ => dom/media/test/wave_metadata_unknown_tag.wav^headers^ rename : content/media/test/wave_metadata_utf8.wav => dom/media/test/wave_metadata_utf8.wav rename : content/media/test/wave_metadata_utf8.wav^headers^ => dom/media/test/wave_metadata_utf8.wav^headers^ rename : content/media/test/wavedata_s16.wav => dom/media/test/wavedata_s16.wav rename : content/media/test/wavedata_s16.wav^headers^ => dom/media/test/wavedata_s16.wav^headers^ rename : content/media/test/wavedata_u8.wav => dom/media/test/wavedata_u8.wav rename : content/media/test/wavedata_u8.wav^headers^ => dom/media/test/wavedata_u8.wav^headers^ rename : content/media/wave/WaveDecoder.cpp => dom/media/wave/WaveDecoder.cpp rename : content/media/wave/WaveDecoder.h => dom/media/wave/WaveDecoder.h rename : content/media/wave/WaveReader.cpp => dom/media/wave/WaveReader.cpp rename : content/media/wave/WaveReader.h => dom/media/wave/WaveReader.h rename : content/media/wave/moz.build => dom/media/wave/moz.build rename : content/media/webaudio/AnalyserNode.cpp => dom/media/webaudio/AnalyserNode.cpp rename : content/media/webaudio/AnalyserNode.h => dom/media/webaudio/AnalyserNode.h rename : content/media/webaudio/AudioBuffer.cpp => dom/media/webaudio/AudioBuffer.cpp rename : content/media/webaudio/AudioBuffer.h => dom/media/webaudio/AudioBuffer.h rename : content/media/webaudio/AudioBufferSourceNode.cpp => dom/media/webaudio/AudioBufferSourceNode.cpp rename : content/media/webaudio/AudioBufferSourceNode.h => dom/media/webaudio/AudioBufferSourceNode.h rename : content/media/webaudio/AudioContext.cpp => dom/media/webaudio/AudioContext.cpp rename : content/media/webaudio/AudioContext.h => dom/media/webaudio/AudioContext.h rename : content/media/webaudio/AudioDestinationNode.cpp => dom/media/webaudio/AudioDestinationNode.cpp rename : content/media/webaudio/AudioDestinationNode.h => dom/media/webaudio/AudioDestinationNode.h rename : content/media/webaudio/AudioEventTimeline.h => dom/media/webaudio/AudioEventTimeline.h rename : content/media/webaudio/AudioListener.cpp => dom/media/webaudio/AudioListener.cpp rename : content/media/webaudio/AudioListener.h => dom/media/webaudio/AudioListener.h rename : content/media/webaudio/AudioNode.cpp => dom/media/webaudio/AudioNode.cpp rename : content/media/webaudio/AudioNode.h => dom/media/webaudio/AudioNode.h rename : content/media/webaudio/AudioNodeEngine.cpp => dom/media/webaudio/AudioNodeEngine.cpp rename : content/media/webaudio/AudioNodeEngine.h => dom/media/webaudio/AudioNodeEngine.h rename : content/media/webaudio/AudioNodeEngineNEON.cpp => dom/media/webaudio/AudioNodeEngineNEON.cpp rename : content/media/webaudio/AudioNodeEngineNEON.h => dom/media/webaudio/AudioNodeEngineNEON.h rename : content/media/webaudio/AudioNodeExternalInputStream.cpp => dom/media/webaudio/AudioNodeExternalInputStream.cpp rename : content/media/webaudio/AudioNodeExternalInputStream.h => dom/media/webaudio/AudioNodeExternalInputStream.h rename : content/media/webaudio/AudioNodeStream.cpp => dom/media/webaudio/AudioNodeStream.cpp rename : content/media/webaudio/AudioNodeStream.h => dom/media/webaudio/AudioNodeStream.h rename : content/media/webaudio/AudioParam.cpp => dom/media/webaudio/AudioParam.cpp rename : content/media/webaudio/AudioParam.h => dom/media/webaudio/AudioParam.h rename : content/media/webaudio/AudioParamTimeline.h => dom/media/webaudio/AudioParamTimeline.h rename : content/media/webaudio/AudioProcessingEvent.cpp => dom/media/webaudio/AudioProcessingEvent.cpp rename : content/media/webaudio/AudioProcessingEvent.h => dom/media/webaudio/AudioProcessingEvent.h rename : content/media/webaudio/BiquadFilterNode.cpp => dom/media/webaudio/BiquadFilterNode.cpp rename : content/media/webaudio/BiquadFilterNode.h => dom/media/webaudio/BiquadFilterNode.h rename : content/media/webaudio/BufferDecoder.cpp => dom/media/webaudio/BufferDecoder.cpp rename : content/media/webaudio/BufferDecoder.h => dom/media/webaudio/BufferDecoder.h rename : content/media/webaudio/ChannelMergerNode.cpp => dom/media/webaudio/ChannelMergerNode.cpp rename : content/media/webaudio/ChannelMergerNode.h => dom/media/webaudio/ChannelMergerNode.h rename : content/media/webaudio/ChannelSplitterNode.cpp => dom/media/webaudio/ChannelSplitterNode.cpp rename : content/media/webaudio/ChannelSplitterNode.h => dom/media/webaudio/ChannelSplitterNode.h rename : content/media/webaudio/ConvolverNode.cpp => dom/media/webaudio/ConvolverNode.cpp rename : content/media/webaudio/ConvolverNode.h => dom/media/webaudio/ConvolverNode.h rename : content/media/webaudio/DelayBuffer.cpp => dom/media/webaudio/DelayBuffer.cpp rename : content/media/webaudio/DelayBuffer.h => dom/media/webaudio/DelayBuffer.h rename : content/media/webaudio/DelayNode.cpp => dom/media/webaudio/DelayNode.cpp rename : content/media/webaudio/DelayNode.h => dom/media/webaudio/DelayNode.h rename : content/media/webaudio/DynamicsCompressorNode.cpp => dom/media/webaudio/DynamicsCompressorNode.cpp rename : content/media/webaudio/DynamicsCompressorNode.h => dom/media/webaudio/DynamicsCompressorNode.h rename : content/media/webaudio/FFTBlock.cpp => dom/media/webaudio/FFTBlock.cpp rename : content/media/webaudio/FFTBlock.h => dom/media/webaudio/FFTBlock.h rename : content/media/webaudio/GainNode.cpp => dom/media/webaudio/GainNode.cpp rename : content/media/webaudio/GainNode.h => dom/media/webaudio/GainNode.h rename : content/media/webaudio/MediaBufferDecoder.cpp => dom/media/webaudio/MediaBufferDecoder.cpp rename : content/media/webaudio/MediaBufferDecoder.h => dom/media/webaudio/MediaBufferDecoder.h rename : content/media/webaudio/MediaElementAudioSourceNode.cpp => dom/media/webaudio/MediaElementAudioSourceNode.cpp rename : content/media/webaudio/MediaElementAudioSourceNode.h => dom/media/webaudio/MediaElementAudioSourceNode.h rename : content/media/webaudio/MediaStreamAudioDestinationNode.cpp => dom/media/webaudio/MediaStreamAudioDestinationNode.cpp rename : content/media/webaudio/MediaStreamAudioDestinationNode.h => dom/media/webaudio/MediaStreamAudioDestinationNode.h rename : content/media/webaudio/MediaStreamAudioSourceNode.cpp => dom/media/webaudio/MediaStreamAudioSourceNode.cpp rename : content/media/webaudio/MediaStreamAudioSourceNode.h => dom/media/webaudio/MediaStreamAudioSourceNode.h rename : content/media/webaudio/OfflineAudioCompletionEvent.cpp => dom/media/webaudio/OfflineAudioCompletionEvent.cpp rename : content/media/webaudio/OfflineAudioCompletionEvent.h => dom/media/webaudio/OfflineAudioCompletionEvent.h rename : content/media/webaudio/OscillatorNode.cpp => dom/media/webaudio/OscillatorNode.cpp rename : content/media/webaudio/OscillatorNode.h => dom/media/webaudio/OscillatorNode.h rename : content/media/webaudio/PannerNode.cpp => dom/media/webaudio/PannerNode.cpp rename : content/media/webaudio/PannerNode.h => dom/media/webaudio/PannerNode.h rename : content/media/webaudio/PeriodicWave.cpp => dom/media/webaudio/PeriodicWave.cpp rename : content/media/webaudio/PeriodicWave.h => dom/media/webaudio/PeriodicWave.h rename : content/media/webaudio/PlayingRefChangeHandler.h => dom/media/webaudio/PlayingRefChangeHandler.h rename : content/media/webaudio/ReportDecodeResultTask.h => dom/media/webaudio/ReportDecodeResultTask.h rename : content/media/webaudio/ScriptProcessorNode.cpp => dom/media/webaudio/ScriptProcessorNode.cpp rename : content/media/webaudio/ScriptProcessorNode.h => dom/media/webaudio/ScriptProcessorNode.h rename : content/media/webaudio/ThreeDPoint.cpp => dom/media/webaudio/ThreeDPoint.cpp rename : content/media/webaudio/ThreeDPoint.h => dom/media/webaudio/ThreeDPoint.h rename : content/media/webaudio/WaveShaperNode.cpp => dom/media/webaudio/WaveShaperNode.cpp rename : content/media/webaudio/WaveShaperNode.h => dom/media/webaudio/WaveShaperNode.h rename : content/media/webaudio/WebAudioUtils.cpp => dom/media/webaudio/WebAudioUtils.cpp rename : content/media/webaudio/WebAudioUtils.h => dom/media/webaudio/WebAudioUtils.h rename : content/media/webaudio/blink/Biquad.cpp => dom/media/webaudio/blink/Biquad.cpp rename : content/media/webaudio/blink/Biquad.h => dom/media/webaudio/blink/Biquad.h rename : content/media/webaudio/blink/DenormalDisabler.h => dom/media/webaudio/blink/DenormalDisabler.h rename : content/media/webaudio/blink/DirectConvolver.cpp => dom/media/webaudio/blink/DirectConvolver.cpp rename : content/media/webaudio/blink/DirectConvolver.h => dom/media/webaudio/blink/DirectConvolver.h rename : content/media/webaudio/blink/DynamicsCompressor.cpp => dom/media/webaudio/blink/DynamicsCompressor.cpp rename : content/media/webaudio/blink/DynamicsCompressor.h => dom/media/webaudio/blink/DynamicsCompressor.h rename : content/media/webaudio/blink/DynamicsCompressorKernel.cpp => dom/media/webaudio/blink/DynamicsCompressorKernel.cpp rename : content/media/webaudio/blink/DynamicsCompressorKernel.h => dom/media/webaudio/blink/DynamicsCompressorKernel.h rename : content/media/webaudio/blink/FFTConvolver.cpp => dom/media/webaudio/blink/FFTConvolver.cpp rename : content/media/webaudio/blink/FFTConvolver.h => dom/media/webaudio/blink/FFTConvolver.h rename : content/media/webaudio/blink/HRTFDatabase.cpp => dom/media/webaudio/blink/HRTFDatabase.cpp rename : content/media/webaudio/blink/HRTFDatabase.h => dom/media/webaudio/blink/HRTFDatabase.h rename : content/media/webaudio/blink/HRTFDatabaseLoader.cpp => dom/media/webaudio/blink/HRTFDatabaseLoader.cpp rename : content/media/webaudio/blink/HRTFDatabaseLoader.h => dom/media/webaudio/blink/HRTFDatabaseLoader.h rename : content/media/webaudio/blink/HRTFElevation.cpp => dom/media/webaudio/blink/HRTFElevation.cpp rename : content/media/webaudio/blink/HRTFElevation.h => dom/media/webaudio/blink/HRTFElevation.h rename : content/media/webaudio/blink/HRTFKernel.cpp => dom/media/webaudio/blink/HRTFKernel.cpp rename : content/media/webaudio/blink/HRTFKernel.h => dom/media/webaudio/blink/HRTFKernel.h rename : content/media/webaudio/blink/HRTFPanner.cpp => dom/media/webaudio/blink/HRTFPanner.cpp rename : content/media/webaudio/blink/HRTFPanner.h => dom/media/webaudio/blink/HRTFPanner.h rename : content/media/webaudio/blink/IRC_Composite_C_R0195-incl.cpp => dom/media/webaudio/blink/IRC_Composite_C_R0195-incl.cpp rename : content/media/webaudio/blink/PeriodicWave.cpp => dom/media/webaudio/blink/PeriodicWave.cpp rename : content/media/webaudio/blink/PeriodicWave.h => dom/media/webaudio/blink/PeriodicWave.h rename : content/media/webaudio/blink/README => dom/media/webaudio/blink/README rename : content/media/webaudio/blink/Reverb.cpp => dom/media/webaudio/blink/Reverb.cpp rename : content/media/webaudio/blink/Reverb.h => dom/media/webaudio/blink/Reverb.h rename : content/media/webaudio/blink/ReverbAccumulationBuffer.cpp => dom/media/webaudio/blink/ReverbAccumulationBuffer.cpp rename : content/media/webaudio/blink/ReverbAccumulationBuffer.h => dom/media/webaudio/blink/ReverbAccumulationBuffer.h rename : content/media/webaudio/blink/ReverbConvolver.cpp => dom/media/webaudio/blink/ReverbConvolver.cpp rename : content/media/webaudio/blink/ReverbConvolver.h => dom/media/webaudio/blink/ReverbConvolver.h rename : content/media/webaudio/blink/ReverbConvolverStage.cpp => dom/media/webaudio/blink/ReverbConvolverStage.cpp rename : content/media/webaudio/blink/ReverbConvolverStage.h => dom/media/webaudio/blink/ReverbConvolverStage.h rename : content/media/webaudio/blink/ReverbInputBuffer.cpp => dom/media/webaudio/blink/ReverbInputBuffer.cpp rename : content/media/webaudio/blink/ReverbInputBuffer.h => dom/media/webaudio/blink/ReverbInputBuffer.h rename : content/media/webaudio/blink/ZeroPole.cpp => dom/media/webaudio/blink/ZeroPole.cpp rename : content/media/webaudio/blink/ZeroPole.h => dom/media/webaudio/blink/ZeroPole.h rename : content/media/webaudio/blink/moz.build => dom/media/webaudio/blink/moz.build rename : content/media/webaudio/compiledtest/TestAudioEventTimeline.cpp => dom/media/webaudio/compiledtest/TestAudioEventTimeline.cpp rename : content/media/webaudio/compiledtest/moz.build => dom/media/webaudio/compiledtest/moz.build rename : content/media/webaudio/moz.build => dom/media/webaudio/moz.build rename : content/media/webaudio/test/audio-expected.wav => dom/media/webaudio/test/audio-expected.wav rename : content/media/webaudio/test/audio-mono-expected-2.wav => dom/media/webaudio/test/audio-mono-expected-2.wav rename : content/media/webaudio/test/audio-mono-expected.wav => dom/media/webaudio/test/audio-mono-expected.wav rename : content/media/webaudio/test/audio-quad.wav => dom/media/webaudio/test/audio-quad.wav rename : content/media/webaudio/test/audio.ogv => dom/media/webaudio/test/audio.ogv rename : content/media/webaudio/test/audioBufferSourceNodeNeutered_worker.js => dom/media/webaudio/test/audioBufferSourceNodeNeutered_worker.js rename : content/media/webaudio/test/blink/README => dom/media/webaudio/test/blink/README rename : content/media/webaudio/test/blink/audio-testing.js => dom/media/webaudio/test/blink/audio-testing.js rename : content/media/webaudio/test/blink/convolution-testing.js => dom/media/webaudio/test/blink/convolution-testing.js rename : content/media/webaudio/test/blink/mochitest.ini => dom/media/webaudio/test/blink/mochitest.ini rename : content/media/webaudio/test/blink/panner-model-testing.js => dom/media/webaudio/test/blink/panner-model-testing.js rename : content/media/webaudio/test/browser.ini => dom/media/webaudio/test/browser.ini rename : content/media/webaudio/test/browser_mozAudioChannel.html => dom/media/webaudio/test/browser_mozAudioChannel.html rename : content/media/webaudio/test/browser_mozAudioChannel.js => dom/media/webaudio/test/browser_mozAudioChannel.js rename : content/media/webaudio/test/browser_mozAudioChannel_muted.html => dom/media/webaudio/test/browser_mozAudioChannel_muted.html rename : content/media/webaudio/test/browser_mozAudioChannel_muted.js => dom/media/webaudio/test/browser_mozAudioChannel_muted.js rename : content/media/webaudio/test/chrome.ini => dom/media/webaudio/test/chrome.ini rename : content/media/webaudio/test/invalid.txt => dom/media/webaudio/test/invalid.txt rename : content/media/webaudio/test/layouttest-glue.js => dom/media/webaudio/test/layouttest-glue.js rename : content/media/webaudio/test/mochitest.ini => dom/media/webaudio/test/mochitest.ini rename : content/media/webaudio/test/noaudio.webm => dom/media/webaudio/test/noaudio.webm rename : content/media/webaudio/test/small-shot-expected.wav => dom/media/webaudio/test/small-shot-expected.wav rename : content/media/webaudio/test/small-shot-mono-expected.wav => dom/media/webaudio/test/small-shot-mono-expected.wav rename : content/media/webaudio/test/small-shot.mp3 => dom/media/webaudio/test/small-shot.mp3 rename : content/media/webaudio/test/small-shot.ogg => dom/media/webaudio/test/small-shot.ogg rename : content/media/webaudio/test/test_AudioBuffer.html => dom/media/webaudio/test/test_AudioBuffer.html rename : content/media/webaudio/test/test_AudioContext.html => dom/media/webaudio/test/test_AudioContext.html rename : content/media/webaudio/test/test_AudioListener.html => dom/media/webaudio/test/test_AudioListener.html rename : content/media/webaudio/test/test_AudioNodeDevtoolsAPI.html => dom/media/webaudio/test/test_AudioNodeDevtoolsAPI.html rename : content/media/webaudio/test/test_OfflineAudioContext.html => dom/media/webaudio/test/test_OfflineAudioContext.html rename : content/media/webaudio/test/test_analyserNode.html => dom/media/webaudio/test/test_analyserNode.html rename : content/media/webaudio/test/test_analyserNodeOutput.html => dom/media/webaudio/test/test_analyserNodeOutput.html rename : content/media/webaudio/test/test_analyserNodePassThrough.html => dom/media/webaudio/test/test_analyserNodePassThrough.html rename : content/media/webaudio/test/test_audioBufferSourceNode.html => dom/media/webaudio/test/test_audioBufferSourceNode.html rename : content/media/webaudio/test/test_audioBufferSourceNodeEnded.html => dom/media/webaudio/test/test_audioBufferSourceNodeEnded.html rename : content/media/webaudio/test/test_audioBufferSourceNodeLazyLoopParam.html => dom/media/webaudio/test/test_audioBufferSourceNodeLazyLoopParam.html rename : content/media/webaudio/test/test_audioBufferSourceNodeLoop.html => dom/media/webaudio/test/test_audioBufferSourceNodeLoop.html rename : content/media/webaudio/test/test_audioBufferSourceNodeLoopStartEnd.html => dom/media/webaudio/test/test_audioBufferSourceNodeLoopStartEnd.html rename : content/media/webaudio/test/test_audioBufferSourceNodeLoopStartEndSame.html => dom/media/webaudio/test/test_audioBufferSourceNodeLoopStartEndSame.html rename : content/media/webaudio/test/test_audioBufferSourceNodeNeutered.html => dom/media/webaudio/test/test_audioBufferSourceNodeNeutered.html rename : content/media/webaudio/test/test_audioBufferSourceNodeNoStart.html => dom/media/webaudio/test/test_audioBufferSourceNodeNoStart.html rename : content/media/webaudio/test/test_audioBufferSourceNodeNullBuffer.html => dom/media/webaudio/test/test_audioBufferSourceNodeNullBuffer.html rename : content/media/webaudio/test/test_audioBufferSourceNodeOffset.html => dom/media/webaudio/test/test_audioBufferSourceNodeOffset.html rename : content/media/webaudio/test/test_audioBufferSourceNodePassThrough.html => dom/media/webaudio/test/test_audioBufferSourceNodePassThrough.html rename : content/media/webaudio/test/test_audioDestinationNode.html => dom/media/webaudio/test/test_audioDestinationNode.html rename : content/media/webaudio/test/test_audioParamExponentialRamp.html => dom/media/webaudio/test/test_audioParamExponentialRamp.html rename : content/media/webaudio/test/test_audioParamGain.html => dom/media/webaudio/test/test_audioParamGain.html rename : content/media/webaudio/test/test_audioParamLinearRamp.html => dom/media/webaudio/test/test_audioParamLinearRamp.html rename : content/media/webaudio/test/test_audioParamSetCurveAtTime.html => dom/media/webaudio/test/test_audioParamSetCurveAtTime.html rename : content/media/webaudio/test/test_audioParamSetCurveAtTimeZeroDuration.html => dom/media/webaudio/test/test_audioParamSetCurveAtTimeZeroDuration.html rename : content/media/webaudio/test/test_audioParamSetTargetAtTime.html => dom/media/webaudio/test/test_audioParamSetTargetAtTime.html rename : content/media/webaudio/test/test_audioParamSetValueAtTime.html => dom/media/webaudio/test/test_audioParamSetValueAtTime.html rename : content/media/webaudio/test/test_audioParamTimelineDestinationOffset.html => dom/media/webaudio/test/test_audioParamTimelineDestinationOffset.html rename : content/media/webaudio/test/test_badConnect.html => dom/media/webaudio/test/test_badConnect.html rename : content/media/webaudio/test/test_biquadFilterNode.html => dom/media/webaudio/test/test_biquadFilterNode.html rename : content/media/webaudio/test/test_biquadFilterNodePassThrough.html => dom/media/webaudio/test/test_biquadFilterNodePassThrough.html rename : content/media/webaudio/test/test_biquadFilterNodeWithGain.html => dom/media/webaudio/test/test_biquadFilterNodeWithGain.html rename : content/media/webaudio/test/test_bug1056032.html => dom/media/webaudio/test/test_bug1056032.html rename : content/media/webaudio/test/test_bug808374.html => dom/media/webaudio/test/test_bug808374.html rename : content/media/webaudio/test/test_bug827541.html => dom/media/webaudio/test/test_bug827541.html rename : content/media/webaudio/test/test_bug839753.html => dom/media/webaudio/test/test_bug839753.html rename : content/media/webaudio/test/test_bug845960.html => dom/media/webaudio/test/test_bug845960.html rename : content/media/webaudio/test/test_bug856771.html => dom/media/webaudio/test/test_bug856771.html rename : content/media/webaudio/test/test_bug866570.html => dom/media/webaudio/test/test_bug866570.html rename : content/media/webaudio/test/test_bug866737.html => dom/media/webaudio/test/test_bug866737.html rename : content/media/webaudio/test/test_bug867089.html => dom/media/webaudio/test/test_bug867089.html rename : content/media/webaudio/test/test_bug867104.html => dom/media/webaudio/test/test_bug867104.html rename : content/media/webaudio/test/test_bug867174.html => dom/media/webaudio/test/test_bug867174.html rename : content/media/webaudio/test/test_bug867203.html => dom/media/webaudio/test/test_bug867203.html rename : content/media/webaudio/test/test_bug875221.html => dom/media/webaudio/test/test_bug875221.html rename : content/media/webaudio/test/test_bug875402.html => dom/media/webaudio/test/test_bug875402.html rename : content/media/webaudio/test/test_bug894150.html => dom/media/webaudio/test/test_bug894150.html rename : content/media/webaudio/test/test_bug956489.html => dom/media/webaudio/test/test_bug956489.html rename : content/media/webaudio/test/test_bug964376.html => dom/media/webaudio/test/test_bug964376.html rename : content/media/webaudio/test/test_bug972678.html => dom/media/webaudio/test/test_bug972678.html rename : content/media/webaudio/test/test_channelMergerNode.html => dom/media/webaudio/test/test_channelMergerNode.html rename : content/media/webaudio/test/test_channelMergerNodeWithVolume.html => dom/media/webaudio/test/test_channelMergerNodeWithVolume.html rename : content/media/webaudio/test/test_channelSplitterNode.html => dom/media/webaudio/test/test_channelSplitterNode.html rename : content/media/webaudio/test/test_channelSplitterNodeWithVolume.html => dom/media/webaudio/test/test_channelSplitterNodeWithVolume.html rename : content/media/webaudio/test/test_convolverNode.html => dom/media/webaudio/test/test_convolverNode.html rename : content/media/webaudio/test/test_convolverNodeChannelCount.html => dom/media/webaudio/test/test_convolverNodeChannelCount.html rename : content/media/webaudio/test/test_convolverNodePassThrough.html => dom/media/webaudio/test/test_convolverNodePassThrough.html rename : content/media/webaudio/test/test_convolverNodeWithGain.html => dom/media/webaudio/test/test_convolverNodeWithGain.html rename : content/media/webaudio/test/test_convolverNode_mono_mono.html => dom/media/webaudio/test/test_convolverNode_mono_mono.html rename : content/media/webaudio/test/test_currentTime.html => dom/media/webaudio/test/test_currentTime.html rename : content/media/webaudio/test/test_decodeMultichannel.html => dom/media/webaudio/test/test_decodeMultichannel.html rename : content/media/webaudio/test/test_delayNode.html => dom/media/webaudio/test/test_delayNode.html rename : content/media/webaudio/test/test_delayNodeAtMax.html => dom/media/webaudio/test/test_delayNodeAtMax.html rename : content/media/webaudio/test/test_delayNodeChannelChanges.html => dom/media/webaudio/test/test_delayNodeChannelChanges.html rename : content/media/webaudio/test/test_delayNodeCycles.html => dom/media/webaudio/test/test_delayNodeCycles.html rename : content/media/webaudio/test/test_delayNodePassThrough.html => dom/media/webaudio/test/test_delayNodePassThrough.html rename : content/media/webaudio/test/test_delayNodeSmallMaxDelay.html => dom/media/webaudio/test/test_delayNodeSmallMaxDelay.html rename : content/media/webaudio/test/test_delayNodeTailIncrease.html => dom/media/webaudio/test/test_delayNodeTailIncrease.html rename : content/media/webaudio/test/test_delayNodeTailWithDisconnect.html => dom/media/webaudio/test/test_delayNodeTailWithDisconnect.html rename : content/media/webaudio/test/test_delayNodeTailWithGain.html => dom/media/webaudio/test/test_delayNodeTailWithGain.html rename : content/media/webaudio/test/test_delayNodeTailWithReconnect.html => dom/media/webaudio/test/test_delayNodeTailWithReconnect.html rename : content/media/webaudio/test/test_delayNodeWithGain.html => dom/media/webaudio/test/test_delayNodeWithGain.html rename : content/media/webaudio/test/test_dynamicsCompressorNode.html => dom/media/webaudio/test/test_dynamicsCompressorNode.html rename : content/media/webaudio/test/test_dynamicsCompressorNodePassThrough.html => dom/media/webaudio/test/test_dynamicsCompressorNodePassThrough.html rename : content/media/webaudio/test/test_gainNode.html => dom/media/webaudio/test/test_gainNode.html rename : content/media/webaudio/test/test_gainNodeInLoop.html => dom/media/webaudio/test/test_gainNodeInLoop.html rename : content/media/webaudio/test/test_gainNodePassThrough.html => dom/media/webaudio/test/test_gainNodePassThrough.html rename : content/media/webaudio/test/test_maxChannelCount.html => dom/media/webaudio/test/test_maxChannelCount.html rename : content/media/webaudio/test/test_mediaDecoding.html => dom/media/webaudio/test/test_mediaDecoding.html rename : content/media/webaudio/test/test_mediaElementAudioSourceNode.html => dom/media/webaudio/test/test_mediaElementAudioSourceNode.html rename : content/media/webaudio/test/test_mediaElementAudioSourceNodePassThrough.html => dom/media/webaudio/test/test_mediaElementAudioSourceNodePassThrough.html rename : content/media/webaudio/test/test_mediaStreamAudioDestinationNode.html => dom/media/webaudio/test/test_mediaStreamAudioDestinationNode.html rename : content/media/webaudio/test/test_mediaStreamAudioSourceNode.html => dom/media/webaudio/test/test_mediaStreamAudioSourceNode.html rename : content/media/webaudio/test/test_mediaStreamAudioSourceNodeCrossOrigin.html => dom/media/webaudio/test/test_mediaStreamAudioSourceNodeCrossOrigin.html rename : content/media/webaudio/test/test_mediaStreamAudioSourceNodePassThrough.html => dom/media/webaudio/test/test_mediaStreamAudioSourceNodePassThrough.html rename : content/media/webaudio/test/test_mediaStreamAudioSourceNodeResampling.html => dom/media/webaudio/test/test_mediaStreamAudioSourceNodeResampling.html rename : content/media/webaudio/test/test_mixingRules.html => dom/media/webaudio/test/test_mixingRules.html rename : content/media/webaudio/test/test_mozaudiochannel.html => dom/media/webaudio/test/test_mozaudiochannel.html rename : content/media/webaudio/test/test_nodeToParamConnection.html => dom/media/webaudio/test/test_nodeToParamConnection.html rename : content/media/webaudio/test/test_offlineDestinationChannelCountLess.html => dom/media/webaudio/test/test_offlineDestinationChannelCountLess.html rename : content/media/webaudio/test/test_offlineDestinationChannelCountMore.html => dom/media/webaudio/test/test_offlineDestinationChannelCountMore.html rename : content/media/webaudio/test/test_oscillatorNode.html => dom/media/webaudio/test/test_oscillatorNode.html rename : content/media/webaudio/test/test_oscillatorNode2.html => dom/media/webaudio/test/test_oscillatorNode2.html rename : content/media/webaudio/test/test_oscillatorNodePassThrough.html => dom/media/webaudio/test/test_oscillatorNodePassThrough.html rename : content/media/webaudio/test/test_oscillatorNodeStart.html => dom/media/webaudio/test/test_oscillatorNodeStart.html rename : content/media/webaudio/test/test_oscillatorTypeChange.html => dom/media/webaudio/test/test_oscillatorTypeChange.html rename : content/media/webaudio/test/test_pannerNode.html => dom/media/webaudio/test/test_pannerNode.html rename : content/media/webaudio/test/test_pannerNodeAbove.html => dom/media/webaudio/test/test_pannerNodeAbove.html rename : content/media/webaudio/test/test_pannerNodeChannelCount.html => dom/media/webaudio/test/test_pannerNodeChannelCount.html rename : content/media/webaudio/test/test_pannerNodeHRTFSymmetry.html => dom/media/webaudio/test/test_pannerNodeHRTFSymmetry.html rename : content/media/webaudio/test/test_pannerNodePassThrough.html => dom/media/webaudio/test/test_pannerNodePassThrough.html rename : content/media/webaudio/test/test_pannerNodeTail.html => dom/media/webaudio/test/test_pannerNodeTail.html rename : content/media/webaudio/test/test_pannerNode_equalPower.html => dom/media/webaudio/test/test_pannerNode_equalPower.html rename : content/media/webaudio/test/test_periodicWave.html => dom/media/webaudio/test/test_periodicWave.html rename : content/media/webaudio/test/test_scriptProcessorNode.html => dom/media/webaudio/test/test_scriptProcessorNode.html rename : content/media/webaudio/test/test_scriptProcessorNodeChannelCount.html => dom/media/webaudio/test/test_scriptProcessorNodeChannelCount.html rename : content/media/webaudio/test/test_scriptProcessorNodeNotConnected.html => dom/media/webaudio/test/test_scriptProcessorNodeNotConnected.html rename : content/media/webaudio/test/test_scriptProcessorNodePassThrough.html => dom/media/webaudio/test/test_scriptProcessorNodePassThrough.html rename : content/media/webaudio/test/test_scriptProcessorNodeZeroInputOutput.html => dom/media/webaudio/test/test_scriptProcessorNodeZeroInputOutput.html rename : content/media/webaudio/test/test_scriptProcessorNode_playbackTime1.html => dom/media/webaudio/test/test_scriptProcessorNode_playbackTime1.html rename : content/media/webaudio/test/test_singleSourceDest.html => dom/media/webaudio/test/test_singleSourceDest.html rename : content/media/webaudio/test/test_stereoPanningWithGain.html => dom/media/webaudio/test/test_stereoPanningWithGain.html rename : content/media/webaudio/test/test_waveDecoder.html => dom/media/webaudio/test/test_waveDecoder.html rename : content/media/webaudio/test/test_waveShaper.html => dom/media/webaudio/test/test_waveShaper.html rename : content/media/webaudio/test/test_waveShaperNoCurve.html => dom/media/webaudio/test/test_waveShaperNoCurve.html rename : content/media/webaudio/test/test_waveShaperPassThrough.html => dom/media/webaudio/test/test_waveShaperPassThrough.html rename : content/media/webaudio/test/test_waveShaperZeroLengthCurve.html => dom/media/webaudio/test/test_waveShaperZeroLengthCurve.html rename : content/media/webaudio/test/ting-44.1k-1ch.ogg => dom/media/webaudio/test/ting-44.1k-1ch.ogg rename : content/media/webaudio/test/ting-44.1k-1ch.wav => dom/media/webaudio/test/ting-44.1k-1ch.wav rename : content/media/webaudio/test/ting-44.1k-2ch.ogg => dom/media/webaudio/test/ting-44.1k-2ch.ogg rename : content/media/webaudio/test/ting-44.1k-2ch.wav => dom/media/webaudio/test/ting-44.1k-2ch.wav rename : content/media/webaudio/test/ting-48k-1ch.ogg => dom/media/webaudio/test/ting-48k-1ch.ogg rename : content/media/webaudio/test/ting-48k-1ch.wav => dom/media/webaudio/test/ting-48k-1ch.wav rename : content/media/webaudio/test/ting-48k-2ch.ogg => dom/media/webaudio/test/ting-48k-2ch.ogg rename : content/media/webaudio/test/ting-48k-2ch.wav => dom/media/webaudio/test/ting-48k-2ch.wav rename : content/media/webaudio/test/ting-dualchannel44.1.wav => dom/media/webaudio/test/ting-dualchannel44.1.wav rename : content/media/webaudio/test/ting-dualchannel48.wav => dom/media/webaudio/test/ting-dualchannel48.wav rename : content/media/webaudio/test/webaudio.js => dom/media/webaudio/test/webaudio.js rename : content/media/webm/EbmlComposer.cpp => dom/media/webm/EbmlComposer.cpp rename : content/media/webm/EbmlComposer.h => dom/media/webm/EbmlComposer.h rename : content/media/webm/WebMBufferedParser.cpp => dom/media/webm/WebMBufferedParser.cpp rename : content/media/webm/WebMBufferedParser.h => dom/media/webm/WebMBufferedParser.h rename : content/media/webm/WebMDecoder.cpp => dom/media/webm/WebMDecoder.cpp rename : content/media/webm/WebMDecoder.h => dom/media/webm/WebMDecoder.h rename : content/media/webm/WebMReader.cpp => dom/media/webm/WebMReader.cpp rename : content/media/webm/WebMReader.h => dom/media/webm/WebMReader.h rename : content/media/webm/WebMWriter.cpp => dom/media/webm/WebMWriter.cpp rename : content/media/webm/WebMWriter.h => dom/media/webm/WebMWriter.h rename : content/media/webm/moz.build => dom/media/webm/moz.build rename : content/media/webrtc/AudioOutputObserver.h => dom/media/webrtc/AudioOutputObserver.h rename : content/media/webrtc/MediaEngine.h => dom/media/webrtc/MediaEngine.h rename : content/media/webrtc/MediaEngineCameraVideoSource.cpp => dom/media/webrtc/MediaEngineCameraVideoSource.cpp rename : content/media/webrtc/MediaEngineCameraVideoSource.h => dom/media/webrtc/MediaEngineCameraVideoSource.h rename : content/media/webrtc/MediaEngineDefault.cpp => dom/media/webrtc/MediaEngineDefault.cpp rename : content/media/webrtc/MediaEngineDefault.h => dom/media/webrtc/MediaEngineDefault.h rename : content/media/webrtc/MediaEngineGonkVideoSource.cpp => dom/media/webrtc/MediaEngineGonkVideoSource.cpp rename : content/media/webrtc/MediaEngineGonkVideoSource.h => dom/media/webrtc/MediaEngineGonkVideoSource.h rename : content/media/webrtc/MediaEngineTabVideoSource.cpp => dom/media/webrtc/MediaEngineTabVideoSource.cpp rename : content/media/webrtc/MediaEngineTabVideoSource.h => dom/media/webrtc/MediaEngineTabVideoSource.h rename : content/media/webrtc/MediaEngineWebRTC.cpp => dom/media/webrtc/MediaEngineWebRTC.cpp rename : content/media/webrtc/MediaEngineWebRTC.h => dom/media/webrtc/MediaEngineWebRTC.h rename : content/media/webrtc/MediaEngineWebRTCAudio.cpp => dom/media/webrtc/MediaEngineWebRTCAudio.cpp rename : content/media/webrtc/MediaEngineWebRTCVideo.cpp => dom/media/webrtc/MediaEngineWebRTCVideo.cpp rename : content/media/webrtc/MediaTrackConstraints.h => dom/media/webrtc/MediaTrackConstraints.h rename : content/media/webrtc/PeerIdentity.cpp => dom/media/webrtc/PeerIdentity.cpp rename : content/media/webrtc/PeerIdentity.h => dom/media/webrtc/PeerIdentity.h rename : content/media/webrtc/moz.build => dom/media/webrtc/moz.build rename : content/media/webrtc/nsITabSource.idl => dom/media/webrtc/nsITabSource.idl rename : content/media/webspeech/moz.build => dom/media/webspeech/moz.build rename : content/media/webspeech/recognition/SpeechGrammar.cpp => dom/media/webspeech/recognition/SpeechGrammar.cpp rename : content/media/webspeech/recognition/SpeechGrammar.h => dom/media/webspeech/recognition/SpeechGrammar.h rename : content/media/webspeech/recognition/SpeechGrammarList.cpp => dom/media/webspeech/recognition/SpeechGrammarList.cpp rename : content/media/webspeech/recognition/SpeechGrammarList.h => dom/media/webspeech/recognition/SpeechGrammarList.h rename : content/media/webspeech/recognition/SpeechRecognition.cpp => dom/media/webspeech/recognition/SpeechRecognition.cpp rename : content/media/webspeech/recognition/SpeechRecognition.h => dom/media/webspeech/recognition/SpeechRecognition.h rename : content/media/webspeech/recognition/SpeechRecognitionAlternative.cpp => dom/media/webspeech/recognition/SpeechRecognitionAlternative.cpp rename : content/media/webspeech/recognition/SpeechRecognitionAlternative.h => dom/media/webspeech/recognition/SpeechRecognitionAlternative.h rename : content/media/webspeech/recognition/SpeechRecognitionResult.cpp => dom/media/webspeech/recognition/SpeechRecognitionResult.cpp rename : content/media/webspeech/recognition/SpeechRecognitionResult.h => dom/media/webspeech/recognition/SpeechRecognitionResult.h rename : content/media/webspeech/recognition/SpeechRecognitionResultList.cpp => dom/media/webspeech/recognition/SpeechRecognitionResultList.cpp rename : content/media/webspeech/recognition/SpeechRecognitionResultList.h => dom/media/webspeech/recognition/SpeechRecognitionResultList.h rename : content/media/webspeech/recognition/SpeechStreamListener.cpp => dom/media/webspeech/recognition/SpeechStreamListener.cpp rename : content/media/webspeech/recognition/SpeechStreamListener.h => dom/media/webspeech/recognition/SpeechStreamListener.h rename : content/media/webspeech/recognition/endpointer.cc => dom/media/webspeech/recognition/endpointer.cc rename : content/media/webspeech/recognition/endpointer.h => dom/media/webspeech/recognition/endpointer.h rename : content/media/webspeech/recognition/energy_endpointer.cc => dom/media/webspeech/recognition/energy_endpointer.cc rename : content/media/webspeech/recognition/energy_endpointer.h => dom/media/webspeech/recognition/energy_endpointer.h rename : content/media/webspeech/recognition/energy_endpointer_params.cc => dom/media/webspeech/recognition/energy_endpointer_params.cc rename : content/media/webspeech/recognition/energy_endpointer_params.h => dom/media/webspeech/recognition/energy_endpointer_params.h rename : content/media/webspeech/recognition/moz.build => dom/media/webspeech/recognition/moz.build rename : content/media/webspeech/recognition/nsISpeechRecognitionService.idl => dom/media/webspeech/recognition/nsISpeechRecognitionService.idl rename : content/media/webspeech/recognition/test/FakeSpeechRecognitionService.cpp => dom/media/webspeech/recognition/test/FakeSpeechRecognitionService.cpp rename : content/media/webspeech/recognition/test/FakeSpeechRecognitionService.h => dom/media/webspeech/recognition/test/FakeSpeechRecognitionService.h rename : content/media/webspeech/recognition/test/head.js => dom/media/webspeech/recognition/test/head.js rename : content/media/webspeech/recognition/test/hello.ogg => dom/media/webspeech/recognition/test/hello.ogg rename : content/media/webspeech/recognition/test/hello.ogg^headers^ => dom/media/webspeech/recognition/test/hello.ogg^headers^ rename : content/media/webspeech/recognition/test/mochitest.ini => dom/media/webspeech/recognition/test/mochitest.ini rename : content/media/webspeech/recognition/test/silence.ogg => dom/media/webspeech/recognition/test/silence.ogg rename : content/media/webspeech/recognition/test/silence.ogg^headers^ => dom/media/webspeech/recognition/test/silence.ogg^headers^ rename : content/media/webspeech/recognition/test/test_abort.html => dom/media/webspeech/recognition/test/test_abort.html rename : content/media/webspeech/recognition/test/test_audio_capture_error.html => dom/media/webspeech/recognition/test/test_audio_capture_error.html rename : content/media/webspeech/recognition/test/test_call_start_from_end_handler.html => dom/media/webspeech/recognition/test/test_call_start_from_end_handler.html rename : content/media/webspeech/recognition/test/test_nested_eventloop.html => dom/media/webspeech/recognition/test/test_nested_eventloop.html rename : content/media/webspeech/recognition/test/test_preference_enable.html => dom/media/webspeech/recognition/test/test_preference_enable.html rename : content/media/webspeech/recognition/test/test_recognition_service_error.html => dom/media/webspeech/recognition/test/test_recognition_service_error.html rename : content/media/webspeech/recognition/test/test_success_without_recognition_service.html => dom/media/webspeech/recognition/test/test_success_without_recognition_service.html rename : content/media/webspeech/recognition/test/test_timeout.html => dom/media/webspeech/recognition/test/test_timeout.html rename : content/media/webspeech/synth/SpeechSynthesis.cpp => dom/media/webspeech/synth/SpeechSynthesis.cpp rename : content/media/webspeech/synth/SpeechSynthesis.h => dom/media/webspeech/synth/SpeechSynthesis.h rename : content/media/webspeech/synth/SpeechSynthesisUtterance.cpp => dom/media/webspeech/synth/SpeechSynthesisUtterance.cpp rename : content/media/webspeech/synth/SpeechSynthesisUtterance.h => dom/media/webspeech/synth/SpeechSynthesisUtterance.h rename : content/media/webspeech/synth/SpeechSynthesisVoice.cpp => dom/media/webspeech/synth/SpeechSynthesisVoice.cpp rename : content/media/webspeech/synth/SpeechSynthesisVoice.h => dom/media/webspeech/synth/SpeechSynthesisVoice.h rename : content/media/webspeech/synth/ipc/PSpeechSynthesis.ipdl => dom/media/webspeech/synth/ipc/PSpeechSynthesis.ipdl rename : content/media/webspeech/synth/ipc/PSpeechSynthesisRequest.ipdl => dom/media/webspeech/synth/ipc/PSpeechSynthesisRequest.ipdl rename : content/media/webspeech/synth/ipc/SpeechSynthesisChild.cpp => dom/media/webspeech/synth/ipc/SpeechSynthesisChild.cpp rename : content/media/webspeech/synth/ipc/SpeechSynthesisChild.h => dom/media/webspeech/synth/ipc/SpeechSynthesisChild.h rename : content/media/webspeech/synth/ipc/SpeechSynthesisParent.cpp => dom/media/webspeech/synth/ipc/SpeechSynthesisParent.cpp rename : content/media/webspeech/synth/ipc/SpeechSynthesisParent.h => dom/media/webspeech/synth/ipc/SpeechSynthesisParent.h rename : content/media/webspeech/synth/ipc/test/file_ipc.html => dom/media/webspeech/synth/ipc/test/file_ipc.html rename : content/media/webspeech/synth/ipc/test/mochitest.ini => dom/media/webspeech/synth/ipc/test/mochitest.ini rename : content/media/webspeech/synth/ipc/test/test_ipc.html => dom/media/webspeech/synth/ipc/test/test_ipc.html rename : content/media/webspeech/synth/moz.build => dom/media/webspeech/synth/moz.build rename : content/media/webspeech/synth/nsISpeechService.idl => dom/media/webspeech/synth/nsISpeechService.idl rename : content/media/webspeech/synth/nsISynthVoiceRegistry.idl => dom/media/webspeech/synth/nsISynthVoiceRegistry.idl rename : content/media/webspeech/synth/nsSpeechTask.cpp => dom/media/webspeech/synth/nsSpeechTask.cpp rename : content/media/webspeech/synth/nsSpeechTask.h => dom/media/webspeech/synth/nsSpeechTask.h rename : content/media/webspeech/synth/nsSynthVoiceRegistry.cpp => dom/media/webspeech/synth/nsSynthVoiceRegistry.cpp rename : content/media/webspeech/synth/nsSynthVoiceRegistry.h => dom/media/webspeech/synth/nsSynthVoiceRegistry.h rename : content/media/webspeech/synth/pico/PicoModule.cpp => dom/media/webspeech/synth/pico/PicoModule.cpp rename : content/media/webspeech/synth/pico/moz.build => dom/media/webspeech/synth/pico/moz.build rename : content/media/webspeech/synth/pico/nsPicoService.cpp => dom/media/webspeech/synth/pico/nsPicoService.cpp rename : content/media/webspeech/synth/pico/nsPicoService.h => dom/media/webspeech/synth/pico/nsPicoService.h rename : content/media/webspeech/synth/test/common.js => dom/media/webspeech/synth/test/common.js rename : content/media/webspeech/synth/test/file_setup.html => dom/media/webspeech/synth/test/file_setup.html rename : content/media/webspeech/synth/test/file_speech_queue.html => dom/media/webspeech/synth/test/file_speech_queue.html rename : content/media/webspeech/synth/test/file_speech_simple.html => dom/media/webspeech/synth/test/file_speech_simple.html rename : content/media/webspeech/synth/test/mochitest.ini => dom/media/webspeech/synth/test/mochitest.ini rename : content/media/webspeech/synth/test/test_setup.html => dom/media/webspeech/synth/test/test_setup.html rename : content/media/webspeech/synth/test/test_speech_queue.html => dom/media/webspeech/synth/test/test_speech_queue.html rename : content/media/webspeech/synth/test/test_speech_simple.html => dom/media/webspeech/synth/test/test_speech_simple.html rename : content/media/webvtt/WebVTT.manifest => dom/media/webvtt/WebVTT.manifest rename : content/media/webvtt/WebVTTParserWrapper.js => dom/media/webvtt/WebVTTParserWrapper.js rename : content/media/webvtt/moz.build => dom/media/webvtt/moz.build rename : content/media/webvtt/nsIWebVTTListener.idl => dom/media/webvtt/nsIWebVTTListener.idl rename : content/media/webvtt/nsIWebVTTParserWrapper.idl => dom/media/webvtt/nsIWebVTTParserWrapper.idl rename : content/media/webvtt/package.json => dom/media/webvtt/package.json rename : content/media/webvtt/update-webvtt.js => dom/media/webvtt/update-webvtt.js rename : content/media/webvtt/vtt.jsm => dom/media/webvtt/vtt.jsm rename : content/media/wmf/DXVA2Manager.cpp => dom/media/wmf/DXVA2Manager.cpp rename : content/media/wmf/DXVA2Manager.h => dom/media/wmf/DXVA2Manager.h rename : content/media/wmf/WMF.h => dom/media/wmf/WMF.h rename : content/media/wmf/WMFByteStream.cpp => dom/media/wmf/WMFByteStream.cpp rename : content/media/wmf/WMFByteStream.h => dom/media/wmf/WMFByteStream.h rename : content/media/wmf/WMFDecoder.cpp => dom/media/wmf/WMFDecoder.cpp rename : content/media/wmf/WMFDecoder.h => dom/media/wmf/WMFDecoder.h rename : content/media/wmf/WMFReader.cpp => dom/media/wmf/WMFReader.cpp rename : content/media/wmf/WMFReader.h => dom/media/wmf/WMFReader.h rename : content/media/wmf/WMFSourceReaderCallback.cpp => dom/media/wmf/WMFSourceReaderCallback.cpp rename : content/media/wmf/WMFSourceReaderCallback.h => dom/media/wmf/WMFSourceReaderCallback.h rename : content/media/wmf/WMFUtils.cpp => dom/media/wmf/WMFUtils.cpp rename : content/media/wmf/WMFUtils.h => dom/media/wmf/WMFUtils.h rename : content/media/wmf/moz.build => dom/media/wmf/moz.build
2014-10-25 21:24:36 +04:00
#ifdef STREAM_LOG
#undef STREAM_LOG
#endif
LazyLogModule gTrackUnionStreamLog("TrackUnionStream");
#define STREAM_LOG(type, msg) MOZ_LOG(gTrackUnionStreamLog, type, msg)
TrackUnionStream::TrackUnionStream() :
ProcessedMediaStream(), mNextAvailableTrackID(1)
{
}
void TrackUnionStream::RemoveInput(MediaInputPort* aPort)
{
STREAM_LOG(LogLevel::Debug, ("TrackUnionStream %p removing input %p", this, aPort));
for (int32_t i = mTrackMap.Length() - 1; i >= 0; --i) {
if (mTrackMap[i].mInputPort == aPort) {
STREAM_LOG(LogLevel::Debug, ("TrackUnionStream %p removing trackmap entry %d", this, i));
EndTrack(i);
mTrackMap.RemoveElementAt(i);
}
}
ProcessedMediaStream::RemoveInput(aPort);
}
void TrackUnionStream::ProcessInput(GraphTime aFrom, GraphTime aTo, uint32_t aFlags)
{
if (IsFinishedOnGraphThread()) {
return;
}
AutoTArray<bool,8> mappedTracksFinished;
AutoTArray<bool,8> mappedTracksWithMatchingInputTracks;
for (uint32_t i = 0; i < mTrackMap.Length(); ++i) {
mappedTracksFinished.AppendElement(true);
mappedTracksWithMatchingInputTracks.AppendElement(false);
}
bool allFinished = !mInputs.IsEmpty();
bool allHaveCurrentData = !mInputs.IsEmpty();
for (uint32_t i = 0; i < mInputs.Length(); ++i) {
MediaStream* stream = mInputs[i]->GetSource();
if (!stream->IsFinishedOnGraphThread()) {
// XXX we really should check whether 'stream' has finished within time aTo,
// not just that it's finishing when all its queued data eventually runs
// out.
allFinished = false;
}
if (!stream->HasCurrentData()) {
allHaveCurrentData = false;
}
bool trackAdded = false;
for (StreamTracks::TrackIter tracks(stream->GetStreamTracks());
!tracks.IsEnded(); tracks.Next()) {
bool found = false;
for (uint32_t j = 0; j < mTrackMap.Length(); ++j) {
TrackMapEntry* map = &mTrackMap[j];
if (map->mInputPort == mInputs[i] && map->mInputTrackID == tracks->GetID()) {
bool trackFinished = false;
StreamTracks::Track* outputTrack = mTracks.FindTrack(map->mOutputTrackID);
found = true;
if (!outputTrack || outputTrack->IsEnded() ||
!mInputs[i]->PassTrackThrough(tracks->GetID())) {
trackFinished = true;
} else {
CopyTrackData(tracks.get(), j, aFrom, aTo, &trackFinished);
}
mappedTracksFinished[j] = trackFinished;
mappedTracksWithMatchingInputTracks[j] = true;
break;
}
}
if (!found && mInputs[i]->AllowCreationOf(tracks->GetID())) {
bool trackFinished = false;
trackAdded = true;
uint32_t mapIndex = AddTrack(mInputs[i], tracks.get(), aFrom);
CopyTrackData(tracks.get(), mapIndex, aFrom, aTo, &trackFinished);
mappedTracksFinished.AppendElement(trackFinished);
mappedTracksWithMatchingInputTracks.AppendElement(true);
}
}
if (trackAdded) {
for (MediaStreamListener* l : mListeners) {
l->NotifyFinishedTrackCreation(Graph());
}
}
}
for (int32_t i = mTrackMap.Length() - 1; i >= 0; --i) {
if (mappedTracksFinished[i]) {
EndTrack(i);
} else {
allFinished = false;
}
if (!mappedTracksWithMatchingInputTracks[i]) {
mTrackMap.RemoveElementAt(i);
}
}
if (allFinished && mAutofinish && (aFlags & ALLOW_FINISH)) {
// All streams have finished and won't add any more tracks, and
// all our tracks have actually finished and been removed from our map,
// so we're finished now.
FinishOnGraphThread();
} else {
mTracks.AdvanceKnownTracksTime(GraphTimeToStreamTimeWithBlocking(aTo));
}
if (allHaveCurrentData) {
// We can make progress if we're not blocked
mHasCurrentData = true;
}
}
uint32_t TrackUnionStream::AddTrack(MediaInputPort* aPort, StreamTracks::Track* aTrack,
GraphTime aFrom)
{
STREAM_LOG(LogLevel::Verbose, ("TrackUnionStream %p adding track %d for "
"input stream %p track %d, desired id %d",
this, aTrack->GetID(), aPort->GetSource(),
aTrack->GetID(),
aPort->GetDestinationTrackId()));
TrackID id;
if (IsTrackIDExplicit(id = aPort->GetDestinationTrackId())) {
MOZ_ASSERT(id >= mNextAvailableTrackID &&
mUsedTracks.BinaryIndexOf(id) == mUsedTracks.NoIndex,
"Desired destination id taken. Only provide a destination ID "
"if you can assure its availability, or we may not be able "
"to bind to the correct DOM-side track.");
#ifdef DEBUG
for (size_t i = 0; mInputs[i] != aPort; ++i) {
MOZ_ASSERT(mInputs[i]->GetSourceTrackId() != TRACK_ANY,
"You are adding a MediaInputPort with a track mapping "
"while there already exist generic MediaInputPorts for this "
"destination stream. This can lead to TrackID collisions!");
}
#endif
mUsedTracks.InsertElementSorted(id);
} else if ((id = aTrack->GetID()) &&
id > mNextAvailableTrackID &&
mUsedTracks.BinaryIndexOf(id) == mUsedTracks.NoIndex) {
// Input id available. Mark it used in mUsedTracks.
mUsedTracks.InsertElementSorted(id);
} else {
// No desired destination id and Input id taken, allocate a new one.
id = mNextAvailableTrackID;
// Update mNextAvailableTrackID and prune any mUsedTracks members it now
// covers.
while (1) {
if (!mUsedTracks.RemoveElementSorted(++mNextAvailableTrackID)) {
// Not in use. We're done.
break;
}
}
}
// Round up the track start time so the track, if anything, starts a
// little later than the true time. This means we'll have enough
// samples in our input stream to go just beyond the destination time.
StreamTime outputStart = GraphTimeToStreamTimeWithBlocking(aFrom);
nsAutoPtr<MediaSegment> segment;
segment = aTrack->GetSegment()->CreateEmptyClone();
for (uint32_t j = 0; j < mListeners.Length(); ++j) {
MediaStreamListener* l = mListeners[j];
l->NotifyQueuedTrackChanges(Graph(), id, outputStart,
TrackEventCommand::TRACK_EVENT_CREATED,
*segment,
aPort->GetSource(), aTrack->GetID());
}
segment->AppendNullData(outputStart);
StreamTracks::Track* track =
&mTracks.AddTrack(id, outputStart, segment.forget());
STREAM_LOG(LogLevel::Debug, ("TrackUnionStream %p added track %d for input stream %p track %d, start ticks %lld",
this, track->GetID(), aPort->GetSource(), aTrack->GetID(),
(long long)outputStart));
TrackMapEntry* map = mTrackMap.AppendElement();
map->mEndOfConsumedInputTicks = 0;
map->mEndOfLastInputIntervalInInputStream = -1;
map->mEndOfLastInputIntervalInOutputStream = -1;
map->mInputPort = aPort;
map->mInputTrackID = aTrack->GetID();
map->mOutputTrackID = track->GetID();
map->mSegment = aTrack->GetSegment()->CreateEmptyClone();
for (int32_t i = mPendingDirectTrackListeners.Length() - 1; i >= 0; --i) {
TrackBound<DirectMediaStreamTrackListener>& bound =
mPendingDirectTrackListeners[i];
if (bound.mTrackID != map->mOutputTrackID) {
continue;
}
MediaStream* source = map->mInputPort->GetSource();
map->mOwnedDirectListeners.AppendElement(bound.mListener);
if (mDisabledTrackIDs.Contains(bound.mTrackID)) {
bound.mListener->IncreaseDisabled();
}
STREAM_LOG(LogLevel::Debug, ("TrackUnionStream %p adding direct listener "
"%p for track %d. Forwarding to input "
"stream %p track %d.",
this, bound.mListener.get(), bound.mTrackID,
source, map->mInputTrackID));
source->AddDirectTrackListenerImpl(bound.mListener.forget(),
map->mInputTrackID);
mPendingDirectTrackListeners.RemoveElementAt(i);
}
return mTrackMap.Length() - 1;
}
void TrackUnionStream::EndTrack(uint32_t aIndex)
{
StreamTracks::Track* outputTrack = mTracks.FindTrack(mTrackMap[aIndex].mOutputTrackID);
if (!outputTrack || outputTrack->IsEnded())
return;
STREAM_LOG(LogLevel::Debug, ("TrackUnionStream %p ending track %d", this, outputTrack->GetID()));
for (uint32_t j = 0; j < mListeners.Length(); ++j) {
MediaStreamListener* l = mListeners[j];
StreamTime offset = outputTrack->GetSegment()->GetDuration();
nsAutoPtr<MediaSegment> segment;
segment = outputTrack->GetSegment()->CreateEmptyClone();
l->NotifyQueuedTrackChanges(Graph(), outputTrack->GetID(), offset,
TrackEventCommand::TRACK_EVENT_ENDED,
*segment,
mTrackMap[aIndex].mInputPort->GetSource(),
mTrackMap[aIndex].mInputTrackID);
}
for (TrackBound<MediaStreamTrackListener>& b : mTrackListeners) {
if (b.mTrackID == outputTrack->GetID()) {
b.mListener->NotifyEnded();
}
}
outputTrack->SetEnded();
}
void TrackUnionStream::CopyTrackData(StreamTracks::Track* aInputTrack,
uint32_t aMapIndex, GraphTime aFrom, GraphTime aTo,
bool* aOutputTrackFinished)
{
TrackMapEntry* map = &mTrackMap[aMapIndex];
StreamTracks::Track* outputTrack = mTracks.FindTrack(map->mOutputTrackID);
MOZ_ASSERT(outputTrack && !outputTrack->IsEnded(), "Can't copy to ended track");
MediaSegment* segment = map->mSegment;
MediaStream* source = map->mInputPort->GetSource();
GraphTime next;
*aOutputTrackFinished = false;
for (GraphTime t = aFrom; t < aTo; t = next) {
MediaInputPort::InputInterval interval = map->mInputPort->GetNextInputInterval(t);
interval.mEnd = std::min(interval.mEnd, aTo);
StreamTime inputEnd = source->GraphTimeToStreamTimeWithBlocking(interval.mEnd);
StreamTime inputTrackEndPoint = STREAM_TIME_MAX;
if (aInputTrack->IsEnded() &&
aInputTrack->GetEnd() <= inputEnd) {
inputTrackEndPoint = aInputTrack->GetEnd();
*aOutputTrackFinished = true;
}
if (interval.mStart >= interval.mEnd) {
break;
}
StreamTime ticks = interval.mEnd - interval.mStart;
next = interval.mEnd;
StreamTime outputStart = outputTrack->GetEnd();
if (interval.mInputIsBlocked) {
// Maybe the input track ended?
segment->AppendNullData(ticks);
STREAM_LOG(LogLevel::Verbose, ("TrackUnionStream %p appending %lld ticks of null data to track %d",
this, (long long)ticks, outputTrack->GetID()));
} else if (InMutedCycle()) {
segment->AppendNullData(ticks);
} else {
if (source->IsSuspended()) {
Bug 1094764 - Implement AudioContext.suspend and friends. r=roc,ehsan - Relevant spec text: - http://webaudio.github.io/web-audio-api/#widl-AudioContext-suspend-Promise - http://webaudio.github.io/web-audio-api/#widl-AudioContext-resume-Promise - http://webaudio.github.io/web-audio-api/#widl-AudioContext-close-Promise - http://webaudio.github.io/web-audio-api/#widl-AudioContext-state - http://webaudio.github.io/web-audio-api/#widl-AudioContext-onstatechange - In a couple words, the behavior we want: - Closed context cannot have new nodes created, but can do decodeAudioData, and create buffers, and such. - OfflineAudioContexts don't support those methods, transitions happen at startRendering and at the end of processing. onstatechange is used to make this observable. - (regular) AudioContexts support those methods. The promises and onstatechange should be resolved/called when the operation has actually completed on the rendering thread. Once a context has been closed, it cannot transition back to "running". An AudioContext switches to "running" when the audio callback start running, this allow authors to know how long the audio stack takes to start running. - MediaStreams that feed in/go out of a suspended graph should respectively not buffer at the graph input, and output silence - suspended context should not be doing much on the CPU, and we should try to pause audio streams if we can (this behaviour is the main reason we need this in the first place, for saving battery on mobile, and CPU on all platforms) - Now, the implementation: - AudioNodeStreams are now tagged with a context id, to be able to operate on all the streams of a given AudioContext on the Graph thread without having to go and lock everytime to touch the AudioContext. This happens in the AudioNodeStream ctor. IDs are of course constant for the lifetime of the node. - When an AudioContext goes into suspended mode, streams for this AudioContext are moved out of the mStreams array to a second array, mSuspendedStreams. Streams in mSuspendedStream are not ordered, and are not processed. - The MSG will automatically switch to a SystemClockDriver when it finds that there are no more AudioNodeStream/Stream with an audio track. This is how pausing the audio subsystem and saving battery works. Subsequently, when the MSG finds that there are only streams in mSuspendedStreams, it will go to sleep (block on a monitor), so we save CPU, but it does not shut itself down. This is mostly not a new behaviour (this is what the MSG does since the refactoring), but is important to note. - Promises are gripped (addref-ed) on the main thread, and then shepherd down other threads and to the GraphDriver, if needed (sometimes we can resolve them right away). They move between threads as void* to prevent calling methods on them, as they are not thread safe. Then, the driver executes the operation, and when it's done (initializing and closing audio streams can take some time), we send the promise back to the main thread, and resolve it, casting back to Promise* after asserting we're back on the main thread. This way, we can send them back on the main thread once an operation has complete (suspending an audio stream, starting it again on resume(), etc.), without having to do bookkeeping between suspend calls and their result. Promises are not thread safe, so we can't move them around AddRef-ed. - The stream destruction logic now takes into account that a stream can be destroyed while not being in mStreams. - A graph can now switch GraphDriver twice or more per iteration, for example if an author goes suspend()/resume()/suspend() in the same script. - Some operation have to be done on suspended stream, so we now use double for-loop around mSuspendedStreams and mStreams in some places in MediaStreamGraph.cpp. - A tricky part was making sure everything worked at AudioContext boundaries. TrackUnionStream that have one of their input stream suspended append null ticks instead. - The graph ordering algorithm had to be altered to not include suspended streams. - There are some edge cases (adding a stream on a suspended graph, calling suspend/resume when a graph has just been close()d).
2015-02-27 20:22:05 +03:00
segment->AppendNullData(aTo - aFrom);
} else {
MOZ_ASSERT(outputTrack->GetEnd() == GraphTimeToStreamTimeWithBlocking(interval.mStart),
Bug 1094764 - Implement AudioContext.suspend and friends. r=roc,ehsan - Relevant spec text: - http://webaudio.github.io/web-audio-api/#widl-AudioContext-suspend-Promise - http://webaudio.github.io/web-audio-api/#widl-AudioContext-resume-Promise - http://webaudio.github.io/web-audio-api/#widl-AudioContext-close-Promise - http://webaudio.github.io/web-audio-api/#widl-AudioContext-state - http://webaudio.github.io/web-audio-api/#widl-AudioContext-onstatechange - In a couple words, the behavior we want: - Closed context cannot have new nodes created, but can do decodeAudioData, and create buffers, and such. - OfflineAudioContexts don't support those methods, transitions happen at startRendering and at the end of processing. onstatechange is used to make this observable. - (regular) AudioContexts support those methods. The promises and onstatechange should be resolved/called when the operation has actually completed on the rendering thread. Once a context has been closed, it cannot transition back to "running". An AudioContext switches to "running" when the audio callback start running, this allow authors to know how long the audio stack takes to start running. - MediaStreams that feed in/go out of a suspended graph should respectively not buffer at the graph input, and output silence - suspended context should not be doing much on the CPU, and we should try to pause audio streams if we can (this behaviour is the main reason we need this in the first place, for saving battery on mobile, and CPU on all platforms) - Now, the implementation: - AudioNodeStreams are now tagged with a context id, to be able to operate on all the streams of a given AudioContext on the Graph thread without having to go and lock everytime to touch the AudioContext. This happens in the AudioNodeStream ctor. IDs are of course constant for the lifetime of the node. - When an AudioContext goes into suspended mode, streams for this AudioContext are moved out of the mStreams array to a second array, mSuspendedStreams. Streams in mSuspendedStream are not ordered, and are not processed. - The MSG will automatically switch to a SystemClockDriver when it finds that there are no more AudioNodeStream/Stream with an audio track. This is how pausing the audio subsystem and saving battery works. Subsequently, when the MSG finds that there are only streams in mSuspendedStreams, it will go to sleep (block on a monitor), so we save CPU, but it does not shut itself down. This is mostly not a new behaviour (this is what the MSG does since the refactoring), but is important to note. - Promises are gripped (addref-ed) on the main thread, and then shepherd down other threads and to the GraphDriver, if needed (sometimes we can resolve them right away). They move between threads as void* to prevent calling methods on them, as they are not thread safe. Then, the driver executes the operation, and when it's done (initializing and closing audio streams can take some time), we send the promise back to the main thread, and resolve it, casting back to Promise* after asserting we're back on the main thread. This way, we can send them back on the main thread once an operation has complete (suspending an audio stream, starting it again on resume(), etc.), without having to do bookkeeping between suspend calls and their result. Promises are not thread safe, so we can't move them around AddRef-ed. - The stream destruction logic now takes into account that a stream can be destroyed while not being in mStreams. - A graph can now switch GraphDriver twice or more per iteration, for example if an author goes suspend()/resume()/suspend() in the same script. - Some operation have to be done on suspended stream, so we now use double for-loop around mSuspendedStreams and mStreams in some places in MediaStreamGraph.cpp. - A tricky part was making sure everything worked at AudioContext boundaries. TrackUnionStream that have one of their input stream suspended append null ticks instead. - The graph ordering algorithm had to be altered to not include suspended streams. - There are some edge cases (adding a stream on a suspended graph, calling suspend/resume when a graph has just been close()d).
2015-02-27 20:22:05 +03:00
"Samples missing");
StreamTime inputStart = source->GraphTimeToStreamTimeWithBlocking(interval.mStart);
Bug 1094764 - Implement AudioContext.suspend and friends. r=roc,ehsan - Relevant spec text: - http://webaudio.github.io/web-audio-api/#widl-AudioContext-suspend-Promise - http://webaudio.github.io/web-audio-api/#widl-AudioContext-resume-Promise - http://webaudio.github.io/web-audio-api/#widl-AudioContext-close-Promise - http://webaudio.github.io/web-audio-api/#widl-AudioContext-state - http://webaudio.github.io/web-audio-api/#widl-AudioContext-onstatechange - In a couple words, the behavior we want: - Closed context cannot have new nodes created, but can do decodeAudioData, and create buffers, and such. - OfflineAudioContexts don't support those methods, transitions happen at startRendering and at the end of processing. onstatechange is used to make this observable. - (regular) AudioContexts support those methods. The promises and onstatechange should be resolved/called when the operation has actually completed on the rendering thread. Once a context has been closed, it cannot transition back to "running". An AudioContext switches to "running" when the audio callback start running, this allow authors to know how long the audio stack takes to start running. - MediaStreams that feed in/go out of a suspended graph should respectively not buffer at the graph input, and output silence - suspended context should not be doing much on the CPU, and we should try to pause audio streams if we can (this behaviour is the main reason we need this in the first place, for saving battery on mobile, and CPU on all platforms) - Now, the implementation: - AudioNodeStreams are now tagged with a context id, to be able to operate on all the streams of a given AudioContext on the Graph thread without having to go and lock everytime to touch the AudioContext. This happens in the AudioNodeStream ctor. IDs are of course constant for the lifetime of the node. - When an AudioContext goes into suspended mode, streams for this AudioContext are moved out of the mStreams array to a second array, mSuspendedStreams. Streams in mSuspendedStream are not ordered, and are not processed. - The MSG will automatically switch to a SystemClockDriver when it finds that there are no more AudioNodeStream/Stream with an audio track. This is how pausing the audio subsystem and saving battery works. Subsequently, when the MSG finds that there are only streams in mSuspendedStreams, it will go to sleep (block on a monitor), so we save CPU, but it does not shut itself down. This is mostly not a new behaviour (this is what the MSG does since the refactoring), but is important to note. - Promises are gripped (addref-ed) on the main thread, and then shepherd down other threads and to the GraphDriver, if needed (sometimes we can resolve them right away). They move between threads as void* to prevent calling methods on them, as they are not thread safe. Then, the driver executes the operation, and when it's done (initializing and closing audio streams can take some time), we send the promise back to the main thread, and resolve it, casting back to Promise* after asserting we're back on the main thread. This way, we can send them back on the main thread once an operation has complete (suspending an audio stream, starting it again on resume(), etc.), without having to do bookkeeping between suspend calls and their result. Promises are not thread safe, so we can't move them around AddRef-ed. - The stream destruction logic now takes into account that a stream can be destroyed while not being in mStreams. - A graph can now switch GraphDriver twice or more per iteration, for example if an author goes suspend()/resume()/suspend() in the same script. - Some operation have to be done on suspended stream, so we now use double for-loop around mSuspendedStreams and mStreams in some places in MediaStreamGraph.cpp. - A tricky part was making sure everything worked at AudioContext boundaries. TrackUnionStream that have one of their input stream suspended append null ticks instead. - The graph ordering algorithm had to be altered to not include suspended streams. - There are some edge cases (adding a stream on a suspended graph, calling suspend/resume when a graph has just been close()d).
2015-02-27 20:22:05 +03:00
segment->AppendSlice(*aInputTrack->GetSegment(),
std::min(inputTrackEndPoint, inputStart),
std::min(inputTrackEndPoint, inputEnd));
}
}
ApplyTrackDisabling(outputTrack->GetID(), segment);
for (uint32_t j = 0; j < mListeners.Length(); ++j) {
MediaStreamListener* l = mListeners[j];
// Separate Audio and Video.
if (segment->GetType() == MediaSegment::AUDIO) {
l->NotifyQueuedAudioData(Graph(), outputTrack->GetID(),
outputStart,
*static_cast<AudioSegment*>(segment),
map->mInputPort->GetSource(),
map->mInputTrackID);
} else {
// This part will be removed in bug 1201363.
l->NotifyQueuedTrackChanges(Graph(), outputTrack->GetID(),
outputStart, TrackEventCommand::TRACK_EVENT_NONE, *segment,
map->mInputPort->GetSource(),
map->mInputTrackID);
}
}
for (TrackBound<MediaStreamTrackListener>& b : mTrackListeners) {
if (b.mTrackID != outputTrack->GetID()) {
continue;
}
b.mListener->NotifyQueuedChanges(Graph(), outputStart, *segment);
}
outputTrack->GetSegment()->AppendFrom(segment);
}
}
void
TrackUnionStream::SetTrackEnabledImpl(TrackID aTrackID, bool aEnabled) {
for (TrackMapEntry& entry : mTrackMap) {
if (entry.mOutputTrackID == aTrackID) {
STREAM_LOG(LogLevel::Info, ("TrackUnionStream %p track %d was explicitly %s",
this, aTrackID, aEnabled ? "enabled" : "disabled"));
for (DirectMediaStreamTrackListener* listener : entry.mOwnedDirectListeners) {
bool oldEnabled = !mDisabledTrackIDs.Contains(aTrackID);
if (!oldEnabled && aEnabled) {
STREAM_LOG(LogLevel::Debug, ("TrackUnionStream %p track %d setting "
"direct listener enabled",
this, aTrackID));
listener->DecreaseDisabled();
} else if (oldEnabled && !aEnabled) {
STREAM_LOG(LogLevel::Debug, ("TrackUnionStream %p track %d setting "
"direct listener disabled",
this, aTrackID));
listener->IncreaseDisabled();
}
}
}
}
MediaStream::SetTrackEnabledImpl(aTrackID, aEnabled);
}
MediaStream*
TrackUnionStream::GetInputStreamFor(TrackID aTrackID)
{
for (TrackMapEntry& entry : mTrackMap) {
if (entry.mOutputTrackID == aTrackID && entry.mInputPort) {
return entry.mInputPort->GetSource();
}
}
return nullptr;
}
TrackID
TrackUnionStream::GetInputTrackIDFor(TrackID aTrackID)
{
for (TrackMapEntry& entry : mTrackMap) {
if (entry.mOutputTrackID == aTrackID) {
return entry.mInputTrackID;
}
}
return TRACK_NONE;
}
void
TrackUnionStream::AddDirectTrackListenerImpl(already_AddRefed<DirectMediaStreamTrackListener> aListener,
TrackID aTrackID)
{
RefPtr<DirectMediaStreamTrackListener> listener = aListener;
for (TrackMapEntry& entry : mTrackMap) {
if (entry.mOutputTrackID == aTrackID) {
MediaStream* source = entry.mInputPort->GetSource();
STREAM_LOG(LogLevel::Debug, ("TrackUnionStream %p adding direct listener "
"%p for track %d. Forwarding to input "
"stream %p track %d.",
this, listener.get(), aTrackID, source,
entry.mInputTrackID));
entry.mOwnedDirectListeners.AppendElement(listener);
if (mDisabledTrackIDs.Contains(aTrackID)) {
listener->IncreaseDisabled();
}
source->AddDirectTrackListenerImpl(listener.forget(),
entry.mInputTrackID);
return;
}
}
TrackBound<DirectMediaStreamTrackListener>* bound =
mPendingDirectTrackListeners.AppendElement();
bound->mListener = listener.forget();
bound->mTrackID = aTrackID;
}
void
TrackUnionStream::RemoveDirectTrackListenerImpl(DirectMediaStreamTrackListener* aListener,
TrackID aTrackID)
{
for (TrackMapEntry& entry : mTrackMap) {
// OutputTrackID is unique to this stream so we only need to do this once.
if (entry.mOutputTrackID != aTrackID) {
continue;
}
for (size_t i = 0; i < entry.mOwnedDirectListeners.Length(); ++i) {
if (entry.mOwnedDirectListeners[i] == aListener) {
STREAM_LOG(LogLevel::Debug, ("TrackUnionStream %p removing direct "
"listener %p for track %d, forwarding "
"to input stream %p track %d",
this, aListener, aTrackID,
entry.mInputPort->GetSource(),
entry.mInputTrackID));
if (mDisabledTrackIDs.Contains(aTrackID)) {
// Reset the listener's state.
aListener->DecreaseDisabled();
}
entry.mOwnedDirectListeners.RemoveElementAt(i);
break;
}
}
// Forward to the input
MediaStream* source = entry.mInputPort->GetSource();
source->RemoveDirectTrackListenerImpl(aListener, entry.mInputTrackID);
return;
}
for (size_t i = 0; i < mPendingDirectTrackListeners.Length(); ++i) {
TrackBound<DirectMediaStreamTrackListener>& bound =
mPendingDirectTrackListeners[i];
if (bound.mListener == aListener && bound.mTrackID == aTrackID) {
mPendingDirectTrackListeners.RemoveElementAt(i);
return;
}
}
}
} // namespace mozilla