| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
| |
Review URL: https://chromiumcodereview.appspot.com/11607008
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@173668 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
flag to enable the support.
This initial version of the wrapper provides support for decoding Opus audio in WebM container files, and is disabled by default.
New flag added: --enable-opus-playback
BUG=166094
TEST=Opus audio in WebM containers plays back in <video> elements when --enable-opus-playback is specified on the command line.
Review URL: https://codereview.chromium.org/11416367
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@173663 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
| |
BUG=164395
Review URL: https://chromiumcodereview.appspot.com/11580006
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@173658 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
- Remove decryptor from FFmpegVideoDecoder.
- Remove all decryption functionality from ProxyDecryptor.
TBR=jam@chromium.org
BUG=141786
TEST=this removes an obsolete code path and should not affect any exitst test/functionality.
Review URL: https://codereview.chromium.org/11587002
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@173640 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
| |
inspecting the current state.
BUG=166440
Review URL: https://chromiumcodereview.appspot.com/11608003
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@173567 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
- Add VideoDecoderSelector to facilitate VideoDecoder initialization/selection.
- Add VideoDecoderSelectorTest.
- Remove DecryptingVideoDecoder from default decoder list.
- Disable decryption in FFmpegVideoDecoder.
- Updated all unittests.
After this CL, FFmpegVideoDecoder and ProxyDecryptor need to be cleaned.
BUG=141786
TEST=all tests pass; EME demos work.
Review URL: https://codereview.chromium.org/11573047
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@173562 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
| |
BUG=109405
TBR=dalecurtis
Review URL: https://chromiumcodereview.appspot.com/11586014
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@173474 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Note that Mac is (was) the only platform that did not use the volume level for the low-latency output path. This discrepancy is now removed.
This change should not affect the audio/video tag or any other audio client as far as I can tell.
TBR=dalecurtis
BUG=166394
TEST=Run this https://code.google.com/p/webrtc-samples/source/browse/trunk/demos/html/local-audio-rendering.html on Mac and verify that volume settings works.
Also executed: media_unittests
Review URL: https://codereview.chromium.org/11591013
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@173452 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
device changed.
The reasons for doing this include:
# when using the device notification from content/browser, the notification comes before the device is fully initialized, so the change won't show up in the following device enumeration.
# I saw a serious crash by plugging in or unplugging an audio device, I believe it is because some racing between two notifications, if this is the case, this patch should fix it.
BUG=160872,165147
TEST=manual test by plugging and unplugging device, look at the device selection menu in content setting media.
Review URL: https://chromiumcodereview.appspot.com/11529012
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@173350 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
| |
__Now__ renderer side mixing is enabled on Mac :-/
BUG=162768
TEST=audio works, tests pass.
TBR=sky
Review URL: https://codereview.chromium.org/11411189
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@173253 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
| |
BUG=165430
TEST=unittests and asan pass.
Review URL: https://codereview.chromium.org/11573023
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@173249 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
- Add AudioDecoderSelector to facilitate AudioDecoder selection.
- Add AudioDecoderSelectorTest.
- Update key_system.cc to support audio in clearkey key system.
- Update content_browsertests to test audio decrypt-only.
BUG=123421
TEST=both decrypt-only and decrypt-and-decode works for audio!
Review URL: https://codereview.chromium.org/11492003
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@173235 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
| |
BUG=none
Review URL: https://codereview.chromium.org/11551005
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@173198 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Overview:
=========
This patch ensures that a user can add a local media stream to an audio/video element and render the captured audio locally (in loopback).
Details:
========
Our current architecture is a bit hairy but I've done my best to add the new code in a structured way. I have an issue in crbug assigned to myself to refactor the code in this area since we really must improve and make it less complex to work with.
One more client now implements the webkit_media::MediaStreamAudioRenderer and this client is
called WebRtcLocalAudioRenderer (WLAR).
The WLAR is created by the WebMediaPlayer when a local media stream is generated and this will ensure that the controls for a media element becomes visible.
The main action takes place in WebRtcLocalAudioRenderer::Start() where I have gathered all the main stuff. This method is the best starting point for understanding the new data flow.
A reference to an existing WebRtcAudioCapturer (WAC) (owned by the WebRTC ADM) is given to the WLAR at construction. Calling Start =>
- WLAR connects itself to the WAC using the WAC pointer from construction
- render audio parameter are copied from the capture side (since output does resampling etc.)
- creates and inits a new AudioOutputDevice (AOD)
- starts the capturer and the new AOD
Media flow:
-----------
Data is recorded and fed to the WAC which knows that it is in "loopback mode". The WAC then stores recorded data in a FIFO. The WLAR consumes audio from the FIFO when the AOD needs data to render. The WLAR reads data from the FIFO using a callback.
Testing procedure:
==================
Main testing was done using a new WebRCT demo at https://www.corp.google.com/~henrika/webrtc/gum4.html.
I also tried all other demos at https://webrtc-demos.appspot.com/ and the htp://apprtc.appspot.com demo.
For all cases, debug filters were used to track things like calling sequences etc.
BUG=157142
Review URL: https://codereview.chromium.org/11450029
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@173164 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
| |
BUG=166027
Review URL: https://chromiumcodereview.appspot.com/11567024
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@173093 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
| |
- Also rename RequestDecryptorNotificationCB to SetDecryptorReadyCB.
- Move typedef of these callbacks to decryptor.h to avoid duplication.
TEST=no functionality change; all tests still pass.
Review URL: https://chromiumcodereview.appspot.com/11565007
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@173024 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
HTML5 tests were hanging on the mac_rel bots when using renderer side
mixing because the AudioTimeStamp->mHostTime provided to the InputProc()
is behind AudioGetCurrentHostTime(), which causes the latency calculation
to be negative and overflow since both values are UInt64.
Found while debugging test failures with:
https://chromiumcodereview.appspot.com/11411189/
BUG=none
TEST=trybots pass tests w/ renderer side mixing.
Review URL: https://codereview.chromium.org/11553007
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@172989 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
| |
It's only used in AC3 and ALS decoders, neither of which we use.
Review URL: https://chromiumcodereview.appspot.com/11573010
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@172959 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
| |
The proper fix for improving seek performance is to plumb read cancelation support through our network stack. Unfortunately that's a much larger problem I'm not going to tackle this very moment.
BUG=165757
Review URL: https://chromiumcodereview.appspot.com/11553034
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@172781 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
| |
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@172661 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
> Tell OSX to manage its own property listener callback thread.
>
> Seems OSX might be expecting us to only make AudioObjectPropertyData
> calls on the same thread as listener callbacks are fired on. Setting the
> kAudioHardwarePropertyRunLoop to NULL tells OSX to manage its own thread,
> which will hopefully ensure it has to fire callbacks in a concurrency safe
> manner.
>
> Another option might be to set the run loop to the one used by the
> audio thread. However, currently we call AudioObjectPropertyData in
> many places, not all of them on the audio thread.
>
> In the WebRTC code base they have this code:
>
> https://code.google.com/searchframe#OAMlx_jo-ck/src/third_party/webrtc/modules/audio_device/mac/audio_device_mac.cc&l=374
>
> I also found:
> http://stackoverflow.com/questions/9674666/default-audio-output-getting-device-changed-notification-coreaudio-mac-os-x
> http://lists.apple.com/archives/coreaudio-api/2009/Oct/msg00212.html
>
> BUG=158170
> TEST=device changes still work.
>
> Review URL: https://codereview.chromium.org/11413174
TBR=dalecurtis@google.com
Doesn't work on 10.6+ and crash rates are worse than the previous fix.
Review URL: https://codereview.chromium.org/11519042
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@172659 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Broke content_unittests on Linux (aura) and Linux (clang)
> Let ALSA enumerate audio devices rather than iterating over physical devices.
>
> Some configurations (e.g. Chromoting virtual desktops) have no audio hardware,
> but still provide valid ALSA output devices that Chrome can use.
>
> BUG=162953,165401
>
>
> Review URL: https://chromiumcodereview.appspot.com/11299222
TBR=wez@chromium.org
Review URL: https://codereview.chromium.org/11528021
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@172396 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
| |
Some configurations (e.g. Chromoting virtual desktops) have no audio hardware,
but still provide valid ALSA output devices that Chrome can use.
BUG=162953,165401
Review URL: https://chromiumcodereview.appspot.com/11299222
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@172385 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
| |
BUG=165304
TEST=ChunkDemuxerTest.TestEndOfStreamDuringCanceledSeek, ChunkDemuxerTest.TestEndOfStreamStillSetAfterSeek
Review URL: https://chromiumcodereview.appspot.com/11511011
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@172349 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
| |
WebKit is also allowed to call AppendData() with a length of 0 now so that the ChunkDemuxer can do the proper state transition.
BUG=165197
TEST=ChunkDemuxerTest.TestZeroLengthAppend, ChunkDemuxerTest.TestAppendAfterEndOfStream, LayoutTests/http/tests/media/media-source/video-media-source-append-in-ended-state.html
Review URL: https://chromiumcodereview.appspot.com/11507005
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@172199 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Original description:
Do a thorough check for the availability of the Media Foundation DLLs.
Comments from code:
On Vista this API is an optional download but the API is
advertised as a part of Windows 7 and onwards. However,
we've seen that the required DLLs are not available in some
Win7 distributions such as Windows 7 N and Windows 7 KN.
BUG=164654
TEST=Run media_unittests. See more details in the bug report.
TBR=mflodman
Review URL: https://chromiumcodereview.appspot.com/11500009
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@172132 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
> Do a thorough check for the availability of the Media Foundation DLLs.
> Comments from code:
> On Vista this API is an optional download but the API is
> advertised as a part of Windows 7 and onwards. However,
> we've seen that the required DLLs are not available in some
> Win7 distributions such as Windows 7 N and Windows 7 KN.
>
> BUG=164654
> TEST=Run media_unittests. See more details in the bug report.
> TBR=dalecurtis
>
> Review URL: https://chromiumcodereview.appspot.com/11476020
This breaks several unit tests on Vista Tests (1)
AllocateBadSize
Capture720p
CaptureVGA
DeAllocateCameraWhileRunning
OpenInvalidDevice
ReAllocateCamera
TBR=tommi@chromium.org
Review URL: https://codereview.chromium.org/11478052
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@172057 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Comments from code:
On Vista this API is an optional download but the API is
advertised as a part of Windows 7 and onwards. However,
we've seen that the required DLLs are not available in some
Win7 distributions such as Windows 7 N and Windows 7 KN.
BUG=164654
TEST=Run media_unittests. See more details in the bug report.
TBR=dalecurtis
Review URL: https://chromiumcodereview.appspot.com/11476020
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@172049 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
| |
See also r157836.
BUG=150920
TEST=media_unittests
Review URL: https://chromiumcodereview.appspot.com/11308310
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@171976 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
| |
convention checks.
Replaced FFmpegDemuxerStream::read_queue_ with the simpler FFmpegDemuxerStream::read_cb_ since we don't intend to support overlapping reads.
Review URL: https://chromiumcodereview.appspot.com/11411332
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@171943 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
| |
chrome:media-internals.
BUG=164673
Review URL: https://chromiumcodereview.appspot.com/11471006
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@171936 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
| |
The original commit r169004 introduce seek regressions on constrained network connections. For now we'll limit the number of asynchronous pending reads to one. While it limits throughput it shouldn't be a big factor during normal playback.
BUG=160640
Review URL: https://codereview.chromium.org/11308145
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@171883 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
right thread.
As a result VideoDecoder implementations have been updated to expect they get called on the correct thread instead of trampolining.
The newly added media::WrapCB() facilitates running callbacks on separate execution stacks to avoid reentrancy in calling code.
BUG=162917
Review URL: https://codereview.chromium.org/11428095
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@171854 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
| |
Check the requested frame rate and adjust it when it's out of range [1, 30].
BUG=160495
Review URL: https://codereview.chromium.org/11464016
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@171812 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
| |
Made the test flaky.
BUG=none
TEST=media_unittests --gtest_repeat=50
TBR=scherkus
Review URL: https://codereview.chromium.org/11475018
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@171705 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The AudioQueue API may use a large internal buffer and repeatedly call us
back to back once that internal buffer is filled. When this happens the
renderer client does not have enough time to read data back from the
shared memory before the next write comes along. If HandleInputBuffer()
is called too frequently, Sleep() to simulate realtime input and ensure
the shared memory doesn't get trampled.
BUG=157613
TEST=Playback works on older style Mac units.
Committed: https://src.chromium.org/viewvc/chrome?view=rev&revision=171681
Review URL: https://codereview.chromium.org/11482002
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@171701 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
> Delay delivery of audio input data.
>
> The AudioQueue API may use a large internal buffer and repeatedly call us
> back to back once that internal buffer is filled. When this happens the
> renderer client does not have enough time to read data back from the
> shared memory before the next write comes along. If HandleInputBuffer()
> is called too frequently, Sleep() to simulate realtime input and ensure
> the shared memory doesn't get trampled.
>
> BUG=157613
> TEST=Playback works on older style Mac units.
>
> Review URL: https://codereview.chromium.org/11482002
TBR=dalecurtis@google.com
Review URL: https://codereview.chromium.org/11478019
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@171692 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The AudioQueue API may use a large internal buffer and repeatedly call us
back to back once that internal buffer is filled. When this happens the
renderer client does not have enough time to read data back from the
shared memory before the next write comes along. If HandleInputBuffer()
is called too frequently, Sleep() to simulate realtime input and ensure
the shared memory doesn't get trampled.
BUG=157613
TEST=Playback works on older style Mac units.
Review URL: https://codereview.chromium.org/11482002
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@171681 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Adds a unittest for WebAudio's AudioFileReader. The test runs through
all supported Chrome audio codecs and performs a hash check.
BUG=none
TEST=unittest passes.
Review URL: https://chromiumcodereview.appspot.com/11441003
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@171651 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
| |
This is part of the changes to use string for key messages. We also need to make the same change in CDM.h, CDMs and PPAPI.
TBR=dmichael@chromium.org
BUG=164498
TEST=media_unittests; EME demo works.
Review URL: https://chromiumcodereview.appspot.com/11459005
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@171608 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
| |
For now do not pause on transient audio loses as it's not clear when to resume and when not to.
BUG=163914,147257
Review URL: https://chromiumcodereview.appspot.com/11412325
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@171567 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
| |
with MessageLoop.
Review URL: https://chromiumcodereview.appspot.com/11316293
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@171438 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
| |
BUG=151046
Review URL: https://codereview.chromium.org/11419174
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@171249 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
I had to revert the change since media and content unittests failed to load on the XP and Vista bots.
This modification to the above CL moves the MF delayload entries the chrome_dll.gyp over to media.gyp for all dependents
and doesn't use MF on Vista since it turns out that a special update is required (and our Vista bots don't have).
Original CL description:
Video capture implementation using the Media Foundation API.
This replaces the DirectShow based implementation for Vista,Win7 and Win8.
DirectShow isn't supported in metro mode so once we've landed this,
we can revert the workaround we have in place for Win8.
The CapabilityList class is mostly moved code from the DS implementation.
The difference is that I'm not using a std::map<> since that wasn't
really necessary and instead adding one member (via inheritance) to
the capability struct on Windows that holds the stream id that is needed.
BUG=140545
TEST=All video capture tests in media_unittests now test this new implementation (except on XP).
TBR=mflodman@chromium.org,darin@chromium.org
Review URL: https://codereview.chromium.org/11451010
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@171232 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Broke on Vista:
http://chromesshgw.corp.google.com/i/chromium.win/builders/Vista%20Tests%20%281%29/builds/31733/steps/media_unittests/logs/stdio
> Re-land https://codereview.chromium.org/11419200/
> I had to revert the change since media and content unittests failed to load on the XP bots.
> This modification to the above CL moves the MF delayload entries the chrome_dll.gyp over to media.gyp for all dependents.
>
> Original CL description:
>
> Video capture implementation using the Media Foundation API.
> This replaces the DirectShow based implementation for Vista,Win7 and Win8.
> DirectShow isn't supported in metro mode so once we've landed this,
> we can revert the workaround we have in place for Win8.
>
> The CapabilityList class is mostly moved code from the DS implementation.
> The difference is that I'm not using a std::map<> since that wasn't
> really necessary and instead adding one member (via inheritance) to
> the capability struct on Windows that holds the stream id that is needed.
>
> BUG=140545
> TEST=All video capture tests in media_unittests now test this new implementation (except on XP).
>
> TBR=mflodman@chromium.org,darin@chromium.org
>
> Review URL: https://codereview.chromium.org/11442011
TBR=tommi@chromium.org
Review URL: https://codereview.chromium.org/11443011
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@171220 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
I had to revert the change since media and content unittests failed to load on the XP bots.
This modification to the above CL moves the MF delayload entries the chrome_dll.gyp over to media.gyp for all dependents.
Original CL description:
Video capture implementation using the Media Foundation API.
This replaces the DirectShow based implementation for Vista,Win7 and Win8.
DirectShow isn't supported in metro mode so once we've landed this,
we can revert the workaround we have in place for Win8.
The CapabilityList class is mostly moved code from the DS implementation.
The difference is that I'm not using a std::map<> since that wasn't
really necessary and instead adding one member (via inheritance) to
the capability struct on Windows that holds the stream id that is needed.
BUG=140545
TEST=All video capture tests in media_unittests now test this new implementation (except on XP).
TBR=mflodman@chromium.org,darin@chromium.org
Review URL: https://codereview.chromium.org/11442011
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@171212 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
| |
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@171113 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
| |
This CL also changes the expected behavior of GenerateKeyRequest() of CleryKey key system when init_data is null. Previously it returns MediaKeyException (from render side) or fires KeyError (from plugin side). Now it fires an empty KeyMessage regardless. In the future the spec should be clear about this.
BUG=163785
TEST=media Layout test; media_unittests; content_browsertests
Review URL: https://chromiumcodereview.appspot.com/11348365
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@171081 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
> Video capture implementation using the Media Foundation API.
> This replaces the DirectShow based implementation for Vista,Win7 and Win8.
> DirectShow isn't supported in metro mode so once we've landed this,
> we can revert the workaround we have in place for Win8.
>
> The CapabilityList class is mostly moved code from the DS implementation.
> The difference is that I'm not using a std::map<> since that wasn't
> really necessary and instead adding one member (via inheritance) to
> the capability struct on Windows that holds the stream id that is needed.
>
> BUG=140545
> TEST=All video capture tests in media_unittests now test this new implementation (except on XP).
>
> Review URL: https://codereview.chromium.org/11419200
TBR=tommi@chromium.org
Review URL: https://codereview.chromium.org/11418307
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@170925 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This is a first step towards implementing three major Chromium features, all of which need to associate audio outputs with their source tabs. See BUGs referenced by this change for more details.
Previous attempt/approach: https://codereview.chromium.org/11166002/
Specifics:
1. Added two new IPC messages: AudioHostMsg_AssociateStreamWithProducer and AudioInputHostMsg_AssociateStreamWithConsumer.
2. Added "associate to render_view_id" IPC calls: PepperPlatformAudioInputImpl, PepperPlatformAudioOutputImpl, RenderAudioSourceProvider, RendererWebAudioDeviceImpl, WebRtcAudioRenderer.
3. AudioOutputDevice instances re-use the same stream IDs.
4. Removed AudioDeviceFactory and replaced test-injection scheme in AudioRendererMixerManager.
Not in scope:
1. Associating RenderViews with audio input to WebRTC.
2. Associating RenderViews with streams produced by the AudioRendererMixer.
3. Speech Input (implementation is in the browser process, not the render process).
Testing method: Confirm correct render_view_id shows up in debug logging when engaging the various audio code paths. Some of the many test sites used:
1. PPAPI (in and out): http://www.midomi.com/index.php?action=main.mic_check
2. WebMediaPlayer (e.g., <audio> and <video>): http://html5video.org/
3. WebAudio API: http://chromium.googlecode.com/svn/trunk/samples/audio/convolution-effects.html
4. WebRTC (output only): http://apprtc.appspot.com/
BUG=3541,64215,153392
TEST=Enabled debug logging via --vmodule=audio_renderer_host=1,audio_input_renderer_host=1 and then engaged the various Chrome audio code paths to confirm correct render_view_id shows up in browser process.
Review URL: https://chromiumcodereview.appspot.com/11359196
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@170919 0039d316-1c4b-4281-b951-d872f2087c98
|