gecko-dev/dom/media/GraphDriver.cpp
Birunthan Mohanathas d655634897 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 20:24:36 +03:00

1071 lines
34 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 "CubebUtils.h"
#ifdef XP_MACOSX
#include <sys/sysctl.h>
#endif
#ifdef PR_LOGGING
extern PRLogModuleInfo* gMediaStreamGraphLog;
#define STREAM_LOG(type, msg) PR_LOG(gMediaStreamGraphLog, type, msg)
#else
#define STREAM_LOG(type, msg)
#endif
// We don't use NSPR log here because we want this interleaved with adb logcat
// on Android/B2G
// #define ENABLE_LIFECYCLE_LOG
#ifdef ENABLE_LIFECYCLE_LOG
#ifdef ANDROID
#include "android/log.h"
#define LIFECYCLE_LOG(args...) __android_log_print(ANDROID_LOG_INFO, "Gecko - MSG" , ## __VA_ARGS__); printf(__VA_ARGS__);printf("\n");
#else
#define LIFECYCLE_LOG(...) printf(__VA_ARGS__);printf("\n");
#endif
#else
#define LIFECYCLE_LOG(...)
#endif
namespace mozilla {
struct AutoProfilerUnregisterThread
{
// The empty ctor is used to silence a pre-4.8.0 GCC unused variable warning.
AutoProfilerUnregisterThread()
{
}
~AutoProfilerUnregisterThread()
{
profiler_unregister_thread();
}
};
GraphDriver::GraphDriver(MediaStreamGraphImpl* aGraphImpl)
: mIterationStart(0),
mIterationEnd(0),
mStateComputedTime(0),
mNextStateComputedTime(0),
mGraphImpl(aGraphImpl),
mWaitState(WAITSTATE_RUNNING),
mCurrentTimeStamp(TimeStamp::Now()),
mPreviousDriver(nullptr),
mNextDriver(nullptr)
{ }
void GraphDriver::SetGraphTime(GraphDriver* aPreviousDriver,
GraphTime aLastSwitchNextIterationStart,
GraphTime aLastSwitchNextIterationEnd,
GraphTime aLastSwitchStateComputedTime,
GraphTime aLastSwitchNextStateComputedTime)
{
// We set mIterationEnd here, because the first thing a driver do when it
// does an iteration is to update graph times, so we are in fact setting
// mIterationStart of the next iteration by setting the end of the previous
// iteration.
mIterationStart = aLastSwitchNextIterationStart;
mIterationEnd = aLastSwitchNextIterationEnd;
mStateComputedTime = aLastSwitchStateComputedTime;
mNextStateComputedTime = aLastSwitchNextStateComputedTime;
STREAM_LOG(PR_LOG_DEBUG, ("Setting previous driver: %p (%s)", aPreviousDriver, aPreviousDriver->AsAudioCallbackDriver() ? "AudioCallbackDriver" : "SystemClockDriver"));
MOZ_ASSERT(!mPreviousDriver);
mPreviousDriver = aPreviousDriver;
}
void GraphDriver::SwitchAtNextIteration(GraphDriver* aNextDriver)
{
// This is the situation where `mPreviousDriver` is an AudioCallbackDriver
// that is switching device, and the graph has found the current driver is not
// an AudioCallbackDriver, but tries to switch to a _new_ AudioCallbackDriver
// because it found audio has to be output. In this case, simply ignore the
// request to switch, since we know we will switch back to the old
// AudioCallbackDriver when it has recovered from the device switching.
if (aNextDriver->AsAudioCallbackDriver() &&
mPreviousDriver &&
mPreviousDriver->AsAudioCallbackDriver()->IsSwitchingDevice() &&
mPreviousDriver != aNextDriver) {
return;
}
LIFECYCLE_LOG("Switching to new driver: %p (%s)",
aNextDriver, aNextDriver->AsAudioCallbackDriver() ?
"AudioCallbackDriver" : "SystemClockDriver");
// Sometimes we switch twice to a new driver per iteration, this is probably a
// bug.
MOZ_ASSERT(!mNextDriver || mNextDriver->AsAudioCallbackDriver());
mNextDriver = aNextDriver;
}
void GraphDriver::EnsureImmediateWakeUpLocked()
{
mGraphImpl->GetMonitor().AssertCurrentThreadOwns();
mWaitState = WAITSTATE_WAKING_UP;
mGraphImpl->mGraphDriverAsleep = false; // atomic
mGraphImpl->GetMonitor().Notify();
}
void GraphDriver::UpdateStateComputedTime(GraphTime aStateComputedTime)
{
MOZ_ASSERT(aStateComputedTime > mIterationEnd);
// The next state computed time can be the same as the previous, here: it
// means the driver would be have been blocking indefinitly, but the graph has
// been woken up right after having been to sleep.
if (aStateComputedTime < mStateComputedTime) {
printf("State time can't go backward %ld < %ld.\n", static_cast<long>(aStateComputedTime), static_cast<long>(mStateComputedTime));
}
mStateComputedTime = aStateComputedTime;
}
void GraphDriver::EnsureNextIteration()
{
mGraphImpl->EnsureNextIteration();
}
class MediaStreamGraphShutdownThreadRunnable : public nsRunnable {
public:
explicit MediaStreamGraphShutdownThreadRunnable(GraphDriver* aDriver)
: mDriver(aDriver)
{
}
NS_IMETHOD Run()
{
MOZ_ASSERT(NS_IsMainThread());
LIFECYCLE_LOG("MediaStreamGraphShutdownThreadRunnable for graph %p",
mDriver->GraphImpl());
// We can't release an audio driver on the main thread, because it can be
// blocking.
if (mDriver->AsAudioCallbackDriver()) {
LIFECYCLE_LOG("Releasing audio driver off main thread.");
nsRefPtr<AsyncCubebTask> releaseEvent =
new AsyncCubebTask(mDriver->AsAudioCallbackDriver(),
AsyncCubebTask::SHUTDOWN);
mDriver = nullptr;
releaseEvent->Dispatch();
} else {
LIFECYCLE_LOG("Dropping driver reference for SystemClockDriver.");
mDriver = nullptr;
}
return NS_OK;
}
private:
nsRefPtr<GraphDriver> mDriver;
};
void GraphDriver::Shutdown()
{
if (AsAudioCallbackDriver()) {
LIFECYCLE_LOG("Releasing audio driver off main thread (GraphDriver::Shutdown).\n");
nsRefPtr<AsyncCubebTask> releaseEvent =
new AsyncCubebTask(AsAudioCallbackDriver(), AsyncCubebTask::SHUTDOWN);
releaseEvent->Dispatch();
} else {
Stop();
}
}
ThreadedDriver::ThreadedDriver(MediaStreamGraphImpl* aGraphImpl)
: GraphDriver(aGraphImpl)
{ }
ThreadedDriver::~ThreadedDriver()
{
if (mThread) {
mThread->Shutdown();
}
}
class MediaStreamGraphInitThreadRunnable : public nsRunnable {
public:
explicit MediaStreamGraphInitThreadRunnable(ThreadedDriver* aDriver)
: mDriver(aDriver)
{
}
NS_IMETHOD Run()
{
char aLocal;
STREAM_LOG(PR_LOG_DEBUG, ("Starting system thread"));
profiler_register_thread("MediaStreamGraph", &aLocal);
LIFECYCLE_LOG("Starting a new system driver for graph %p\n",
mDriver->mGraphImpl);
if (mDriver->mPreviousDriver) {
LIFECYCLE_LOG("%p releasing an AudioCallbackDriver(%p), for graph %p\n",
mDriver,
mDriver->mPreviousDriver.get(),
mDriver->GraphImpl());
MOZ_ASSERT(!mDriver->AsAudioCallbackDriver());
// Stop and release the previous driver off-main-thread, but only if we're
// not in the situation where we've fallen back to a system clock driver
// because the osx audio stack is currently switching output device.
if (!mDriver->mPreviousDriver->AsAudioCallbackDriver()->IsSwitchingDevice()) {
nsRefPtr<AsyncCubebTask> releaseEvent =
new AsyncCubebTask(mDriver->mPreviousDriver->AsAudioCallbackDriver(), AsyncCubebTask::SHUTDOWN);
mDriver->mPreviousDriver = nullptr;
releaseEvent->Dispatch();
}
} else {
MonitorAutoLock mon(mDriver->mGraphImpl->GetMonitor());
MOZ_ASSERT(mDriver->mGraphImpl->MessagesQueued(), "Don't start a graph without messages queued.");
mDriver->mGraphImpl->SwapMessageQueues();
}
mDriver->RunThread();
return NS_OK;
}
private:
ThreadedDriver* mDriver;
};
void
ThreadedDriver::Start()
{
LIFECYCLE_LOG("Starting thread for a SystemClockDriver %p\n", mGraphImpl);
nsCOMPtr<nsIRunnable> event = new MediaStreamGraphInitThreadRunnable(this);
// Note: mThread may be null during event->Run() if we pass to NewNamedThread! See AudioInitTask
nsresult rv = NS_NewNamedThread("MediaStreamGrph", getter_AddRefs(mThread));
if (NS_SUCCEEDED(rv)) {
mThread->Dispatch(event, NS_DISPATCH_NORMAL);
}
}
void
ThreadedDriver::Resume()
{
Start();
}
void
ThreadedDriver::Revive()
{
// Note: only called on MainThread, without monitor
// We know were weren't in a running state
STREAM_LOG(PR_LOG_DEBUG, ("AudioCallbackDriver reviving."));
// If we were switching, switch now. Otherwise, tell thread to run the main
// loop again.
MonitorAutoLock mon(mGraphImpl->GetMonitor());
if (mNextDriver) {
mNextDriver->SetGraphTime(this, mIterationStart, mIterationEnd,
mStateComputedTime, mNextStateComputedTime);
mGraphImpl->SetCurrentDriver(mNextDriver);
mNextDriver->Start();
} else {
nsCOMPtr<nsIRunnable> event = new MediaStreamGraphInitThreadRunnable(this);
mThread->Dispatch(event, NS_DISPATCH_NORMAL);
}
}
void
ThreadedDriver::Stop()
{
NS_ASSERTION(NS_IsMainThread(), "Must be called on main thread");
// mGraph's thread is not running so it's OK to do whatever here
STREAM_LOG(PR_LOG_DEBUG, ("Stopping threads for MediaStreamGraph %p", this));
if (mThread) {
mThread->Shutdown();
mThread = nullptr;
}
}
SystemClockDriver::SystemClockDriver(MediaStreamGraphImpl* aGraphImpl)
: ThreadedDriver(aGraphImpl),
mInitialTimeStamp(TimeStamp::Now()),
mLastTimeStamp(TimeStamp::Now())
{}
SystemClockDriver::~SystemClockDriver()
{ }
void
ThreadedDriver::RunThread()
{
AutoProfilerUnregisterThread autoUnregister;
bool stillProcessing = true;
while (stillProcessing) {
GraphTime prevCurrentTime, nextCurrentTime;
GetIntervalForIteration(prevCurrentTime, nextCurrentTime);
mStateComputedTime = mNextStateComputedTime;
mNextStateComputedTime =
mGraphImpl->RoundUpToNextAudioBlock(
nextCurrentTime + mGraphImpl->MillisecondsToMediaTime(AUDIO_TARGET_MS));
STREAM_LOG(PR_LOG_DEBUG,
("interval[%ld; %ld] state[%ld; %ld]",
(long)mIterationStart, (long)mIterationEnd,
(long)mStateComputedTime, (long)mNextStateComputedTime));
stillProcessing = mGraphImpl->OneIteration(prevCurrentTime,
nextCurrentTime,
StateComputedTime(),
mNextStateComputedTime);
if (mNextDriver && stillProcessing) {
STREAM_LOG(PR_LOG_DEBUG, ("Switching to AudioCallbackDriver"));
mNextDriver->SetGraphTime(this, mIterationStart, mIterationEnd,
mStateComputedTime, mNextStateComputedTime);
mGraphImpl->SetCurrentDriver(mNextDriver);
mNextDriver->Start();
return;
}
}
}
void
SystemClockDriver::GetIntervalForIteration(GraphTime& aFrom, GraphTime& aTo)
{
TimeStamp now = TimeStamp::Now();
aFrom = mIterationStart = IterationEnd();
aTo = mIterationEnd = mGraphImpl->SecondsToMediaTime((now - mCurrentTimeStamp).ToSeconds()) + IterationEnd();
mCurrentTimeStamp = now;
PR_LOG(gMediaStreamGraphLog, PR_LOG_DEBUG+1, ("Updating current time to %f (real %f, mStateComputedTime %f)",
mGraphImpl->MediaTimeToSeconds(aTo),
(now - mInitialTimeStamp).ToSeconds(),
mGraphImpl->MediaTimeToSeconds(StateComputedTime())));
if (mStateComputedTime < aTo) {
STREAM_LOG(PR_LOG_WARNING, ("Media graph global underrun detected"));
aTo = mIterationEnd = mStateComputedTime;
}
if (aFrom >= aTo) {
NS_ASSERTION(aFrom == aTo , "Time can't go backwards!");
// This could happen due to low clock resolution, maybe?
STREAM_LOG(PR_LOG_DEBUG, ("Time did not advance"));
}
}
GraphTime
SystemClockDriver::GetCurrentTime()
{
return IterationEnd();
}
TimeStamp
OfflineClockDriver::GetCurrentTimeStamp()
{
MOZ_CRASH("This driver does not support getting the current timestamp.");
return TimeStamp();
}
void
SystemClockDriver::WaitForNextIteration()
{
mGraphImpl->GetMonitor().AssertCurrentThreadOwns();
PRIntervalTime timeout = PR_INTERVAL_NO_TIMEOUT;
TimeStamp now = TimeStamp::Now();
if (mGraphImpl->mNeedAnotherIteration) {
int64_t timeoutMS = MEDIA_GRAPH_TARGET_PERIOD_MS -
int64_t((now - mCurrentTimeStamp).ToMilliseconds());
// Make sure timeoutMS doesn't overflow 32 bits by waking up at
// least once a minute, if we need to wake up at all
timeoutMS = std::max<int64_t>(0, std::min<int64_t>(timeoutMS, 60*1000));
timeout = PR_MillisecondsToInterval(uint32_t(timeoutMS));
STREAM_LOG(PR_LOG_DEBUG+1, ("Waiting for next iteration; at %f, timeout=%f", (now - mInitialTimeStamp).ToSeconds(), timeoutMS/1000.0));
if (mWaitState == WAITSTATE_WAITING_INDEFINITELY) {
mGraphImpl->mGraphDriverAsleep = false; // atomic
}
mWaitState = WAITSTATE_WAITING_FOR_NEXT_ITERATION;
} else {
mGraphImpl->mGraphDriverAsleep = true; // atomic
mWaitState = WAITSTATE_WAITING_INDEFINITELY;
}
if (timeout > 0) {
mGraphImpl->GetMonitor().Wait(timeout);
STREAM_LOG(PR_LOG_DEBUG+1, ("Resuming after timeout; at %f, elapsed=%f",
(TimeStamp::Now() - mInitialTimeStamp).ToSeconds(),
(TimeStamp::Now() - now).ToSeconds()));
}
if (mWaitState == WAITSTATE_WAITING_INDEFINITELY) {
mGraphImpl->mGraphDriverAsleep = false; // atomic
}
mWaitState = WAITSTATE_RUNNING;
mGraphImpl->mNeedAnotherIteration = false;
}
void
SystemClockDriver::WakeUp()
{
mGraphImpl->GetMonitor().AssertCurrentThreadOwns();
mWaitState = WAITSTATE_WAKING_UP;
mGraphImpl->mGraphDriverAsleep = false; // atomic
mGraphImpl->GetMonitor().Notify();
}
OfflineClockDriver::OfflineClockDriver(MediaStreamGraphImpl* aGraphImpl, GraphTime aSlice)
: ThreadedDriver(aGraphImpl),
mSlice(aSlice)
{
}
class MediaStreamGraphShutdownThreadRunnable2 : public nsRunnable {
public:
explicit MediaStreamGraphShutdownThreadRunnable2(nsIThread* aThread)
: mThread(aThread)
{
}
NS_IMETHOD Run()
{
MOZ_ASSERT(NS_IsMainThread());
MOZ_ASSERT(mThread);
mThread->Shutdown();
mThread = nullptr;
return NS_OK;
}
private:
nsCOMPtr<nsIThread> mThread;
};
OfflineClockDriver::~OfflineClockDriver()
{
// transfer the ownership of mThread to the event
// XXX should use .forget()/etc
if (mThread) {
nsCOMPtr<nsIRunnable> event = new MediaStreamGraphShutdownThreadRunnable2(mThread);
mThread = nullptr;
NS_DispatchToMainThread(event);
}
}
void
OfflineClockDriver::GetIntervalForIteration(GraphTime& aFrom, GraphTime& aTo)
{
aFrom = mIterationStart = IterationEnd();
aTo = mIterationEnd = IterationEnd() + mGraphImpl->MillisecondsToMediaTime(mSlice);
if (mStateComputedTime < aTo) {
STREAM_LOG(PR_LOG_WARNING, ("Media graph global underrun detected"));
aTo = mIterationEnd = mStateComputedTime;
}
if (aFrom >= aTo) {
NS_ASSERTION(aFrom == aTo , "Time can't go backwards!");
// This could happen due to low clock resolution, maybe?
STREAM_LOG(PR_LOG_DEBUG, ("Time did not advance"));
}
}
GraphTime
OfflineClockDriver::GetCurrentTime()
{
return mIterationEnd;
}
void
OfflineClockDriver::WaitForNextIteration()
{
// No op: we want to go as fast as possible when we are offline
}
void
OfflineClockDriver::WakeUp()
{
MOZ_ASSERT(false, "An offline graph should not have to wake up.");
}
AsyncCubebTask::AsyncCubebTask(AudioCallbackDriver* aDriver, AsyncCubebOperation aOperation)
: mDriver(aDriver),
mOperation(aOperation),
mShutdownGrip(aDriver->GraphImpl())
{
NS_WARN_IF_FALSE(mDriver->mAudioStream || aOperation == INIT, "No audio stream !");
}
AsyncCubebTask::~AsyncCubebTask()
{
}
NS_IMETHODIMP
AsyncCubebTask::Run()
{
MOZ_ASSERT(mThread);
if (NS_IsMainThread()) {
mThread->Shutdown(); // can't shutdown from the thread itself, darn
// don't null out mThread!
// See bug 999104. we must hold a ref to the thread across Dispatch()
// since the internal mthread ref could be released while processing
// the Dispatch(), and Dispatch/PutEvent itself doesn't hold a ref; it
// assumes the caller does.
return NS_OK;
}
MOZ_ASSERT(mDriver);
switch(mOperation) {
case AsyncCubebOperation::INIT:
LIFECYCLE_LOG("AsyncCubebOperation::INIT\n");
mDriver->Init();
break;
case AsyncCubebOperation::SHUTDOWN:
LIFECYCLE_LOG("AsyncCubebOperation::SHUTDOWN\n");
mDriver->Stop();
mDriver = nullptr;
mShutdownGrip = nullptr;
break;
case AsyncCubebOperation::SLEEP: {
{
LIFECYCLE_LOG("AsyncCubebOperation::SLEEP\n");
MonitorAutoLock mon(mDriver->mGraphImpl->GetMonitor());
// We might just have been awoken
if (mDriver->mGraphImpl->mNeedAnotherIteration) {
mDriver->mPauseRequested = false;
mDriver->mWaitState = AudioCallbackDriver::WAITSTATE_RUNNING;
mDriver->mGraphImpl->mGraphDriverAsleep = false ; // atomic
break;
}
mDriver->Stop();
mDriver->mGraphImpl->mGraphDriverAsleep = true; // atomic
mDriver->mWaitState = AudioCallbackDriver::WAITSTATE_WAITING_INDEFINITELY;
mDriver->mPauseRequested = false;
mDriver->mGraphImpl->GetMonitor().Wait(PR_INTERVAL_NO_TIMEOUT);
}
STREAM_LOG(PR_LOG_DEBUG, ("Restarting audio stream from sleep."));
mDriver->StartStream();
break;
}
default:
MOZ_CRASH("Operation not implemented.");
}
// and now kill this thread
NS_DispatchToMainThread(this);
return NS_OK;
}
AudioCallbackDriver::AudioCallbackDriver(MediaStreamGraphImpl* aGraphImpl, dom::AudioChannel aChannel)
: GraphDriver(aGraphImpl)
, mIterationDurationMS(MEDIA_GRAPH_TARGET_PERIOD_MS)
, mStarted(false)
, mAudioChannel(aChannel)
, mInCallback(false)
, mPauseRequested(false)
#ifdef XP_MACOSX
, mCallbackReceivedWhileSwitching(0)
#endif
{
STREAM_LOG(PR_LOG_DEBUG, ("AudioCallbackDriver ctor for graph %p", aGraphImpl));
}
AudioCallbackDriver::~AudioCallbackDriver()
{}
void
AudioCallbackDriver::Init()
{
cubeb_stream_params params;
uint32_t latency;
MOZ_ASSERT(!NS_IsMainThread(),
"This is blocking and should never run on the main thread.");
mSampleRate = params.rate = CubebUtils::PreferredSampleRate();
#if defined(__ANDROID__)
#if defined(MOZ_B2G)
params.stream_type = CubebUtils::ConvertChannelToCubebType(mAudioChannel);
#else
params.stream_type = CUBEB_STREAM_TYPE_MUSIC;
#endif
if (params.stream_type == CUBEB_STREAM_TYPE_MAX) {
NS_WARNING("Bad stream type");
return;
}
#else
(void)mAudioChannel;
#endif
params.channels = mGraphImpl->AudioChannelCount();
if (AUDIO_OUTPUT_FORMAT == AUDIO_FORMAT_S16) {
params.format = CUBEB_SAMPLE_S16NE;
} else {
params.format = CUBEB_SAMPLE_FLOAT32NE;
}
if (cubeb_get_min_latency(CubebUtils::GetCubebContext(), params, &latency) != CUBEB_OK) {
NS_WARNING("Could not get minimal latency from cubeb.");
return;
}
cubeb_stream* stream;
if (cubeb_stream_init(CubebUtils::GetCubebContext(), &stream,
"AudioCallbackDriver", params, latency,
DataCallback_s, StateCallback_s, this) == CUBEB_OK) {
mAudioStream.own(stream);
} else {
NS_WARNING("Could not create a cubeb stream for MediaStreamGraph, falling back to a SystemClockDriver");
// Fall back to a driver using a normal thread.
mNextDriver = new SystemClockDriver(GraphImpl());
mNextDriver->SetGraphTime(this, mIterationStart, mIterationEnd,
mStateComputedTime, mNextStateComputedTime);
mGraphImpl->SetCurrentDriver(mNextDriver);
mNextDriver->Start();
return;
}
cubeb_stream_register_device_changed_callback(mAudioStream,
AudioCallbackDriver::DeviceChangedCallback_s);
StartStream();
STREAM_LOG(PR_LOG_DEBUG, ("AudioCallbackDriver started."));
}
void
AudioCallbackDriver::Destroy()
{
STREAM_LOG(PR_LOG_DEBUG, ("AudioCallbackDriver destroyed."));
mAudioStream.reset();
}
void
AudioCallbackDriver::Resume()
{
STREAM_LOG(PR_LOG_DEBUG, ("Resuming audio threads for MediaStreamGraph %p", mGraphImpl));
if (cubeb_stream_start(mAudioStream) != CUBEB_OK) {
NS_WARNING("Could not start cubeb stream for MSG.");
}
}
void
AudioCallbackDriver::Start()
{
// If this is running on the main thread, we can't open the stream directly,
// because it is a blocking operation.
if (NS_IsMainThread()) {
STREAM_LOG(PR_LOG_DEBUG, ("Starting audio threads for MediaStreamGraph %p from a new thread.", mGraphImpl));
nsRefPtr<AsyncCubebTask> initEvent =
new AsyncCubebTask(this, AsyncCubebTask::INIT);
initEvent->Dispatch();
} else {
STREAM_LOG(PR_LOG_DEBUG, ("Starting audio threads for MediaStreamGraph %p from the previous driver's thread", mGraphImpl));
Init();
if (mPreviousDriver) {
nsCOMPtr<nsIRunnable> event =
new MediaStreamGraphShutdownThreadRunnable(mPreviousDriver);
mPreviousDriver = nullptr;
NS_DispatchToMainThread(event);
}
}
}
void
AudioCallbackDriver::StartStream()
{
if (cubeb_stream_start(mAudioStream) != CUBEB_OK) {
MOZ_CRASH("Could not start cubeb stream for MSG.");
}
{
MonitorAutoLock mon(mGraphImpl->GetMonitor());
mStarted = true;
mWaitState = WAITSTATE_RUNNING;
}
}
void
AudioCallbackDriver::Stop()
{
if (cubeb_stream_stop(mAudioStream) != CUBEB_OK) {
NS_WARNING("Could not stop cubeb stream for MSG.");
}
}
void
AudioCallbackDriver::Revive()
{
// Note: only called on MainThread, without monitor
// We know were weren't in a running state
STREAM_LOG(PR_LOG_DEBUG, ("AudioCallbackDriver reviving."));
// If we were switching, switch now. Otherwise, start the audio thread again.
MonitorAutoLock mon(mGraphImpl->GetMonitor());
if (mNextDriver) {
mNextDriver->SetGraphTime(this, mIterationStart, mIterationEnd,
mStateComputedTime, mNextStateComputedTime);
mGraphImpl->SetCurrentDriver(mNextDriver);
mNextDriver->Start();
} else {
STREAM_LOG(PR_LOG_DEBUG, ("Starting audio threads for MediaStreamGraph %p from a new thread.", mGraphImpl));
nsRefPtr<AsyncCubebTask> initEvent =
new AsyncCubebTask(this, AsyncCubebTask::INIT);
initEvent->Dispatch();
}
}
void
AudioCallbackDriver::GetIntervalForIteration(GraphTime& aFrom,
GraphTime& aTo)
{
}
GraphTime
AudioCallbackDriver::GetCurrentTime()
{
uint64_t position = 0;
if (cubeb_stream_get_position(mAudioStream, &position) != CUBEB_OK) {
NS_WARNING("Could not get current time from cubeb.");
}
return mSampleRate * position;
}
void AudioCallbackDriver::WaitForNextIteration()
{
#if 0
mGraphImpl->GetMonitor().AssertCurrentThreadOwns();
// We can't block on the monitor in the audio callback, so we kick off a new
// thread that will pause the audio stream, and restart it when unblocked.
// We don't want to sleep when we haven't started the driver yet.
if (!mGraphImpl->mNeedAnotherIteration && mAudioStream && mGraphImpl->Running()) {
STREAM_LOG(PR_LOG_DEBUG+1, ("AudioCallbackDriver going to sleep"));
mPauseRequested = true;
nsRefPtr<AsyncCubebTask> sleepEvent =
new AsyncCubebTask(this, AsyncCubebTask::SLEEP);
sleepEvent->Dispatch();
}
#endif
}
void
AudioCallbackDriver::WakeUp()
{
mGraphImpl->GetMonitor().AssertCurrentThreadOwns();
mGraphImpl->GetMonitor().Notify();
}
/* static */ long
AudioCallbackDriver::DataCallback_s(cubeb_stream* aStream,
void* aUser, void* aBuffer,
long aFrames)
{
AudioCallbackDriver* driver = reinterpret_cast<AudioCallbackDriver*>(aUser);
return driver->DataCallback(static_cast<AudioDataValue*>(aBuffer), aFrames);
}
/* static */ void
AudioCallbackDriver::StateCallback_s(cubeb_stream* aStream, void * aUser,
cubeb_state aState)
{
AudioCallbackDriver* driver = reinterpret_cast<AudioCallbackDriver*>(aUser);
driver->StateCallback(aState);
}
/* static */ void
AudioCallbackDriver::DeviceChangedCallback_s(void* aUser)
{
AudioCallbackDriver* driver = reinterpret_cast<AudioCallbackDriver*>(aUser);
driver->DeviceChangedCallback();
}
bool AudioCallbackDriver::InCallback() {
return mInCallback;
}
AudioCallbackDriver::AutoInCallback::AutoInCallback(AudioCallbackDriver* aDriver)
: mDriver(aDriver)
{
mDriver->mInCallback = true;
}
AudioCallbackDriver::AutoInCallback::~AutoInCallback() {
mDriver->mInCallback = false;
}
#ifdef XP_MACOSX
bool
AudioCallbackDriver::OSXDeviceSwitchingWorkaround()
{
MonitorAutoLock mon(GraphImpl()->GetMonitor());
if (mSelfReference) {
// Apparently, depending on the osx version, on device switch, the
// callback is called "some" number of times, and then stops being called,
// and then gets called again. 10 is to be safe, it's a low-enough number
// of milliseconds anyways (< 100ms)
if (mCallbackReceivedWhileSwitching++ >= 10) {
// If we have a self reference, we have fallen back temporarily on a
// system clock driver, but we just got called back, that means the osx
// audio backend has switched to the new device.
// Ask the graph to switch back to the previous AudioCallbackDriver
// (`this`), and when the graph has effectively switched, we can drop
// the self reference and unref the SystemClockDriver we fallen back on.
if (GraphImpl()->CurrentDriver() == this) {
mSelfReference.Drop(this);
mNextDriver = nullptr;
} else {
GraphImpl()->CurrentDriver()->SwitchAtNextIteration(this);
}
}
return true;
}
return false;
}
#endif // XP_MACOSX
long
AudioCallbackDriver::DataCallback(AudioDataValue* aBuffer, long aFrames)
{
bool stillProcessing;
if (mPauseRequested) {
PodZero(aBuffer, aFrames * mGraphImpl->AudioChannelCount());
return aFrames;
}
#ifdef XP_MACOSX
if (OSXDeviceSwitchingWorkaround()) {
PodZero(aBuffer, aFrames * mGraphImpl->AudioChannelCount());
return aFrames;
}
#endif
#ifdef DEBUG
// DebugOnly<> doesn't work here... it forces an initialization that will cause
// mInCallback to be set back to false before we exit the statement. Do it by
// hand instead.
AutoInCallback aic(this);
#endif
if (mStateComputedTime == 0) {
MonitorAutoLock mon(mGraphImpl->GetMonitor());
// Because this function is called during cubeb_stream_init (to prefill the
// audio buffers), it can be that we don't have a message here (because this
// driver is the first one for this graph), and the graph would exit. Simply
// return here until we have messages.
if (!mGraphImpl->MessagesQueued()) {
PodZero(aBuffer, aFrames * mGraphImpl->AudioChannelCount());
return aFrames;
}
mGraphImpl->SwapMessageQueues();
}
uint32_t durationMS = aFrames * 1000 / mSampleRate;
// For now, simply average the duration with the previous
// duration so there is some damping against sudden changes.
if (!mIterationDurationMS) {
mIterationDurationMS = durationMS;
} else {
mIterationDurationMS = (mIterationDurationMS*3) + durationMS;
mIterationDurationMS /= 4;
}
mBuffer.SetBuffer(aBuffer, aFrames);
// fill part or all with leftover data from last iteration (since we
// align to Audio blocks)
mScratchBuffer.Empty(mBuffer);
// if we totally filled the buffer (and mScratchBuffer isn't empty),
// we don't need to run an iteration and if we do so we may overflow.
if (mBuffer.Available()) {
mStateComputedTime = mNextStateComputedTime;
// State computed time is decided by the audio callback's buffer length. We
// compute the iteration start and end from there, trying to keep the amount
// of buffering in the graph constant.
mNextStateComputedTime =
mGraphImpl->RoundUpToNextAudioBlock(mStateComputedTime + mBuffer.Available());
mIterationStart = mIterationEnd;
// inGraph is the number of audio frames there is between the state time and
// the current time, i.e. the maximum theoretical length of the interval we
// could use as [mIterationStart; mIterationEnd].
GraphTime inGraph = mStateComputedTime - mIterationStart;
// We want the interval [mIterationStart; mIterationEnd] to be before the
// interval [mStateComputedTime; mNextStateComputedTime]. We also want
// the distance between these intervals to be roughly equivalent each time, to
// ensure there is no clock drift between current time and state time. Since
// we can't act on the state time because we have to fill the audio buffer, we
// reclock the current time against the state time, here.
mIterationEnd = mIterationStart + 0.8 * inGraph;
STREAM_LOG(PR_LOG_DEBUG, ("interval[%ld; %ld] state[%ld; %ld] (frames: %ld) (durationMS: %u) (duration ticks: %ld)\n",
(long)mIterationStart, (long)mIterationEnd,
(long)mStateComputedTime, (long)mNextStateComputedTime,
(long)aFrames, (uint32_t)durationMS,
(long)(mNextStateComputedTime - mStateComputedTime)));
mCurrentTimeStamp = TimeStamp::Now();
if (mStateComputedTime < mIterationEnd) {
STREAM_LOG(PR_LOG_WARNING, ("Media graph global underrun detected"));
mIterationEnd = mStateComputedTime;
}
stillProcessing = mGraphImpl->OneIteration(mIterationStart,
mIterationEnd,
mStateComputedTime,
mNextStateComputedTime);
} else {
NS_WARNING("DataCallback buffer filled entirely from scratch buffer, skipping iteration.");
stillProcessing = true;
}
mBuffer.BufferFilled();
if (mNextDriver && stillProcessing) {
{
// If the audio stream has not been started by the previous driver or
// the graph itself, keep it alive.
MonitorAutoLock mon(mGraphImpl->GetMonitor());
if (!IsStarted()) {
return aFrames;
}
}
STREAM_LOG(PR_LOG_DEBUG, ("Switching to system driver."));
mNextDriver->SetGraphTime(this, mIterationStart, mIterationEnd,
mStateComputedTime, mNextStateComputedTime);
mGraphImpl->SetCurrentDriver(mNextDriver);
mNextDriver->Start();
// Returning less than aFrames starts the draining and eventually stops the
// audio thread. This function will never get called again.
return aFrames - 1;
}
if (!stillProcessing) {
LIFECYCLE_LOG("Stopping audio thread for MediaStreamGraph %p", this);
return aFrames - 1;
}
return aFrames;
}
void
AudioCallbackDriver::StateCallback(cubeb_state aState)
{
STREAM_LOG(PR_LOG_DEBUG, ("AudioCallbackDriver State: %d", aState));
}
void
AudioCallbackDriver::MixerCallback(AudioDataValue* aMixedBuffer,
AudioSampleFormat aFormat,
uint32_t aChannels,
uint32_t aFrames,
uint32_t aSampleRate)
{
uint32_t toWrite = mBuffer.Available();
if (!mBuffer.Available()) {
NS_WARNING("DataCallback buffer full, expect frame drops.");
}
MOZ_ASSERT(mBuffer.Available() <= aFrames);
mBuffer.WriteFrames(aMixedBuffer, mBuffer.Available());
MOZ_ASSERT(mBuffer.Available() == 0, "Missing frames to fill audio callback's buffer.");
DebugOnly<uint32_t> written = mScratchBuffer.Fill(aMixedBuffer + toWrite * aChannels, aFrames - toWrite);
NS_WARN_IF_FALSE(written == aFrames - toWrite, "Dropping frames.");
};
void AudioCallbackDriver::PanOutputIfNeeded(bool aMicrophoneActive)
{
#ifdef XP_MACOSX
cubeb_device* out;
int rv;
char name[128];
size_t length = sizeof(name);
rv = sysctlbyname("hw.model", name, &length, NULL, 0);
if (rv) {
return;
}
if (!strncmp(name, "MacBookPro", 10)) {
if (cubeb_stream_get_current_device(mAudioStream, &out) == CUBEB_OK) {
// Check if we are currently outputing sound on external speakers.
if (!strcmp(out->output_name, "ispk")) {
// Pan everything to the right speaker.
if (aMicrophoneActive) {
if (cubeb_stream_set_panning(mAudioStream, 1.0) != CUBEB_OK) {
NS_WARNING("Could not pan audio output to the right.");
}
} else {
if (cubeb_stream_set_panning(mAudioStream, 0.0) != CUBEB_OK) {
NS_WARNING("Could not pan audio output to the center.");
}
}
} else {
if (cubeb_stream_set_panning(mAudioStream, 0.0) != CUBEB_OK) {
NS_WARNING("Could not pan audio output to the center.");
}
}
cubeb_stream_device_destroy(mAudioStream, out);
}
}
#endif
}
void
AudioCallbackDriver::DeviceChangedCallback() {
MonitorAutoLock mon(mGraphImpl->GetMonitor());
PanOutputIfNeeded(mMicrophoneActive);
// On OSX, changing the output device causes the audio thread to no call the
// audio callback, so we're unable to process real-time input data, and this
// results in latency building up.
// We switch to a system driver until audio callbacks are called again, so we
// still pull from the input stream, so that everything works apart from the
// audio output.
#ifdef XP_MACOSX
// Don't bother doing the device switching dance if the graph is not RUNNING
// (starting up, shutting down), because we haven't started pulling from the
// SourceMediaStream.
if (!GraphImpl()->Running()) {
return;
}
if (mSelfReference) {
return;
}
mSelfReference.Take(this);
mCallbackReceivedWhileSwitching = 0;
mNextDriver = new SystemClockDriver(GraphImpl());
mNextDriver->SetGraphTime(this, mIterationStart, mIterationEnd,
mStateComputedTime, mNextStateComputedTime);
mGraphImpl->SetCurrentDriver(mNextDriver);
mNextDriver->Start();
#endif
}
void
AudioCallbackDriver::SetMicrophoneActive(bool aActive)
{
MonitorAutoLock mon(mGraphImpl->GetMonitor());
mMicrophoneActive = aActive;
PanOutputIfNeeded(mMicrophoneActive);
}
uint32_t
AudioCallbackDriver::IterationDuration()
{
// The real fix would be to have an API in cubeb to give us the number. Short
// of that, we approximate it here. bug 1019507
return mIterationDurationMS;
}
bool
AudioCallbackDriver::IsStarted() {
mGraphImpl->GetMonitor().AssertCurrentThreadOwns();
return mStarted;
}
} // namepace mozilla