summaryrefslogtreecommitdiffstats
path: root/media
Commit message (Collapse)AuthorAgeFilesLines
* Add VideoFrame::CreateColorFrame() for testing.xhwang@chromium.org2012-10-122-13/+22
| | | | | | | | | | BUG=none TEST=none Review URL: https://chromiumcodereview.appspot.com/11088086 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@161471 0039d316-1c4b-4281-b951-d872f2087c98
* Support encrypted audio stream in demuxer.xhwang@chromium.org2012-10-1213-128/+229
| | | | | | | | | | BUG=123421 TEST=updated media_unittest Review URL: https://chromiumcodereview.appspot.com/11088047 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@161465 0039d316-1c4b-4281-b951-d872f2087c98
* Add profile and extra_data info in VideoDecoderConfig::AsHumanReadableString.xhwang@chromium.org2012-10-111-1/+3
| | | | | | | | | | BUG=none TEST=none Review URL: https://chromiumcodereview.appspot.com/11087081 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@161422 0039d316-1c4b-4281-b951-d872f2087c98
* Don't attempt HW video decode for videos with height >1088, instead of 1080.posciak@chromium.org2012-10-111-1/+2
| | | | | | | | | | | | | 1088 is the proper value for 16x16 macroblocks. BUG=chromium-os-partner:15145 TEST=none TBR=fischman@chromium.org Review URL: https://chromiumcodereview.appspot.com/11087084 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@161417 0039d316-1c4b-4281-b951-d872f2087c98
* Implement video decoding methods in all Decryptor implementations.xhwang@chromium.org2012-10-117-13/+29
| | | | | | | | | | BUG=141784 TEST=none Review URL: https://chromiumcodereview.appspot.com/11094006 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@161373 0039d316-1c4b-4281-b951-d872f2087c98
* Clear source_id_{audio,video}_ after RemoveId.strobe@google.com2012-10-112-4/+21
| | | | | | | | | | | | | | | After adding a source buffer and then immediately removing it, new source buffers containing the same content component couldn't be added to the same MediaSource object. Such a pattern could be used as an ad-hoc canPlayType() for Media Source. This fixes. BUG=155226 TEST=ChunkDemuxer.TestRemoveAndAddId Review URL: https://chromiumcodereview.appspot.com/11088067 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@161369 0039d316-1c4b-4281-b951-d872f2087c98
* Ensures that we always run the low-latency audio capture at natively 128 ↵henrika@chromium.org2012-10-114-36/+96
| | | | | | | | | | | | | | | | audio frames. A FIFO is used to adapt to the buffer size requested by the client. Tested with WebRTC clients in Chrome as well. Added media_unittests as well for different sample rates. BUG=154352 TEST=content_unittests --v=1 --gtest_filter=WebRTC* Review URL: https://chromiumcodereview.appspot.com/11099013 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@161328 0039d316-1c4b-4281-b951-d872f2087c98
* Add decryptor requesting and kNoKey handling in DecryptingVideoDecoder (DVD).xhwang@chromium.org2012-10-107-140/+397
| | | | | | | | | | | | | | - These logic was previously implemented in ProxyDecryptor. Now add them into DVD so that the DVD can talk directly to other Decryptor implementations such as the PpapiDecryptor. - Since we have more states in DVD now, add more state enum to manage state transition. - Add RequestDecryptorNotificationCB for decryptor creation notification. - Add KeyAddedCB for notifying the DVD that new key has been added. BUG=141784 TEST=current unittests pass; added more unittests. Review URL: https://chromiumcodereview.appspot.com/11074010 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@161231 0039d316-1c4b-4281-b951-d872f2087c98
* Don't build shader_bench for Aura builds since it breaks all the win_aura ↵jam@chromium.org2012-10-101-1/+1
| | | | | | | | trybots (gfx::NativeWindow != HWND). Review URL: https://codereview.chromium.org/11086055 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@161200 0039d316-1c4b-4281-b951-d872f2087c98
* M23 shows lots of crahses with AudioManagerMac::GetAudioInputDeviceNames.xians@chromium.org2012-10-102-27/+22
| | | | | | | | | | | | | | Most of the crashes happened when the devices were being unplugged in audio_manager_mac.cc line 132 AudioObjectGetPropertyDataSize(), and some crashes happened in HasAudioInputDevices(). This Cl uses another way to query the input devices, hopefully it fixes the issue. TBR=tommi@chromium.org BUG=153411 TEST=media_unittests Review URL: https://codereview.chromium.org/11086050 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@161124 0039d316-1c4b-4281-b951-d872f2087c98
* Revert 161096 - M23 shows lots of crahses with ↵xians@chromium.org2012-10-102-22/+27
| | | | | | | | | | | | | | | | | | | | | AudioManagerMac::GetAudioInputDeviceNames. Most of the crashes happened when the devices were being unplugged in audio_manager_mac.cc line 132 AudioObjectGetPropertyDataSize(), and some crashes happened in HasAudioInputDevices(). This Cl uses another way to query the input devices, hopefully it fixes the issue. This CL makes the mac memory bot fail, revert it for now. BUG=153411 TEST=media_unittests Review URL: https://chromiumcodereview.appspot.com/11087045 TBR=xians@chromium.org Review URL: https://codereview.chromium.org/11091045 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@161107 0039d316-1c4b-4281-b951-d872f2087c98
* M23 shows lots of crahses with AudioManagerMac::GetAudioInputDeviceNames.xians@chromium.org2012-10-102-27/+22
| | | | | | | | | | | | | | Most of the crashes happened when the devices were being unplugged in audio_manager_mac.cc line 132 AudioObjectGetPropertyDataSize(), and some crashes happened in HasAudioInputDevices(). This Cl uses another way to query the input devices, hopefully it fixes the issue. BUG=153411 TEST=media_unittests Review URL: https://chromiumcodereview.appspot.com/11087045 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@161096 0039d316-1c4b-4281-b951-d872f2087c98
* Add crash key for Mac video capturesail@chromium.org2012-10-101-0/+6
| | | | | | | | | | | | | This CL calls SetCrashKeyValue() if a video capture device is opened. This can be used to determine if the crash involves video capture or if simply enumerating video capture device is enough to cause a crash. BUG=139164 Review URL: https://chromiumcodereview.appspot.com/11096030 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@161025 0039d316-1c4b-4281-b951-d872f2087c98
* [Mac] Enumerate webcam devices on the main thread.shess@chromium.org2012-10-101-7/+15
| | | | | | | | | | | | | | | The associated bug is about a crash in code which is only loaded due to +deviceNames, though the crash does not have any such code on the stack. If that call were not thread-safe, then possibly using it on a different thread breaks assumptions about where things are allocated and released. BUG=139164 Review URL: https://chromiumcodereview.appspot.com/11017045 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@161024 0039d316-1c4b-4281-b951-d872f2087c98
* Cleanup: IWYU for base/time.h. Also fix misc lint errors.thestig@chromium.org2012-10-104-4/+0
| | | | | | | | TBR=ben,brettw,oshima,rdsmith Review URL: https://chromiumcodereview.appspot.com/11087021 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@160999 0039d316-1c4b-4281-b951-d872f2087c98
* [Mac] Remove webcam capture output on main thread to OS race.shess@chromium.org2012-10-101-3/+15
| | | | | | | | | | | | | | | When doing webcam setup and teardown on a background thread, QTKit appears to have a race condition around how it posts work to the main thread. This posts part of teardown to the main thread to work around the problem. BUG=152757 TEST=See bug. Review URL: https://chromiumcodereview.appspot.com/11094031 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@160986 0039d316-1c4b-4281-b951-d872f2087c98
* Revert 159666 - Use clients' preferred buffer size when the sample rates ↵xians@chromium.org2012-10-092-24/+0
| | | | | | | | | | | | | | | | match and it is a number smaller than 2047. To be in par with M23. BUG=152780 TEST=apprtc.appspot.com/?debug=loopback, no choppy audio Review URL: https://chromiumcodereview.appspot.com/11014015 TBR=xians@chromium.org Review URL: https://codereview.chromium.org/11028092 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@160820 0039d316-1c4b-4281-b951-d872f2087c98
* Prevent AudioLowLatencyInputMac from changing frame sizes.dalecurtis@chromium.org2012-10-093-16/+39
| | | | | | | | | | | | Otherwise we'll hit a CHECK() later since the shared memory isn't configured for the new frame size. BUG=154352 TEST=mac build no longer crashes. Review URL: https://chromiumcodereview.appspot.com/11086009 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@160759 0039d316-1c4b-4281-b951-d872f2087c98
* disconnect captureOutput from VideoCaptureDeviceQTKit and captureSession ↵wjia@chromium.org2012-10-081-0/+6
| | | | | | | | | when capture is stopped. BUG=147104 Review URL: https://codereview.chromium.org/11065029 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@160745 0039d316-1c4b-4281-b951-d872f2087c98
* It seems PcmReadi() is often gives out more than 1 packets and this destroy ↵xians@chromium.org2012-10-081-3/+1
| | | | | | | | | | | the our scheduling for recording. BUG=153505 TEST=apprtc.appspot.com?debug=loopback, listen to the audio. Review URL: https://codereview.chromium.org/11065037 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@160661 0039d316-1c4b-4281-b951-d872f2087c98
* [Mac] Reformat webcam frames which do not match receiver assumptions.shess@chromium.org2012-10-082-2/+33
| | | | | | | | | | | | | | | | | | For width 508, the received frame will have a row stride of 2048 bytes, but the code which eventually receives the buffer expects 2032 bytes (508*4). Long-term, this needs to have the stride piped through, but doing so correctly will require making sure all the other code also works right WRT stride. BUG=152622 TEST=With this change, webcam works right. [Command-line for testing purposes: --ppapi-flash-path="/Applications/Google Chrome Canary.app/Contents/Versions/24.0.1287.0/Google Chrome Framework.framework/Internet Plug-Ins/PepperFlash/PepperFlashPlayer.plugin" --ppapi-flash-version=11.4.31.108] Review URL: https://chromiumcodereview.appspot.com/11075004 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@160633 0039d316-1c4b-4281-b951-d872f2087c98
* Fix for the video seek test failures seen on the windows perf av builders. ananta@chromium.org2012-10-061-2/+11
| | | | | | | | | | | | | | | | | | | | | | | | | | The seek tests started failing since revision 159552 which restricted the number of pending output video samples from the DXVA decoder on Windows to 1. These tests after decoding a number of frames send over the Flush call to the decoder and on receiving the Flush done notification, reset the decoder and then report the seek times. The tests failed presumably due to a timing issue which was exposed by restricting the number of pending output samples from the decoder to 1, which caused the Flush operation in the DXVA decoder to take longer to complete. The VideoRendererBase::Flush function in the renderer process invokes the GpuVideoDecoder::Reset function. This function internally checks if the decoder is in the draining state and keeps posting a task which would run the GpuVideoDecoder::Reset again. The GpuVideoDecoder would never come out of the draining state after this, because the read callback is set to NULL, which means that any ready frames would continue to live. The DXVA decoder on Windows would never come out of the draining state as it waits for picture frames to become available which only happens when the ready frames in the renderer are consumed. Fix is to drop the ready frames in the GpuVideoDecoder::Reset function if we are in the draining state. BUG=153939 R=fischman Review URL: https://chromiumcodereview.appspot.com/11068032 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@160528 0039d316-1c4b-4281-b951-d872f2087c98
* Upstream fullscreen video implementation for androidqinmin@chromium.org2012-10-052-2/+1
| | | | | | | | | BUG=136677 Review URL: https://chromiumcodereview.appspot.com/10979047 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@160431 0039d316-1c4b-4281-b951-d872f2087c98
* Add WASAPI-based unified audio I/O back-end for Windows 7.henrika@chromium.org2012-10-056-340/+1540
| | | | | | | | | | | | | | | | | | | | | | | Implementation of AudioOuputStream for Windows using the WASAPI API. Both input and output device must use the same sample rate. Corresponding implementation for Mac OS X is given by http://codereview.chromium.org/10916105/. Additional test using full Chrome: http://webaudiodemos.appspot.com/input/index.html Local tests have been performed using a wide range of audio devices and sample rates. It has also been verified that the QoS is good between two different devices as well as long as they both run at the same sample rate. 12 hour test of http://webaudiodemos.appspot.com/input/index.html worked well. Verified that we log a warning "Unified audio I/O is not supported." if the user has selected different sample rates for in and out. BUG=145092 TEST=media_unittests.exe --gtest_filter=WASAPIUnified* --enable-webaudio-input Review URL: https://codereview.chromium.org/10959068 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@160346 0039d316-1c4b-4281-b951-d872f2087c98
* Honor mmintrin.h intrinics when instrumenting Chrome with cygprofiler.glotov@chromium.org2012-10-051-14/+0
| | | | | | | | | | BUG=chromium-os:35028 TEST=build chrome with GYP_DEFINES="order_profiling=1" Review URL: https://chromiumcodereview.appspot.com/11045021 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@160341 0039d316-1c4b-4281-b951-d872f2087c98
* Removing annacc@chromium.org from OWNERS.scherkus@chromium.org2012-10-041-1/+0
| | | | git-svn-id: svn://svn.chromium.org/chrome/trunk/src@160217 0039d316-1c4b-4281-b951-d872f2087c98
* Tweak Garbage Collection algorithm in MediaSource to save last GOP appendedvrk@chromium.org2012-10-043-159/+413
| | | | | | | | | | | This CL changes the GC algorithm to also preserve the last GOP appended to prevent crashing/garbage output. BUG=150946 Review URL: https://codereview.chromium.org/11035013 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@160203 0039d316-1c4b-4281-b951-d872f2087c98
* [Android] Upstream a namespace comment in mediadfalcantara@chromium.org2012-10-041-1/+1
| | | | | | Review URL: https://chromiumcodereview.appspot.com/11028020 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@160201 0039d316-1c4b-4281-b951-d872f2087c98
* Add video decoding methods in Decryptor and add DecryptingVideoDecoder.xhwang@chromium.org2012-10-0412-25/+1076
| | | | | | | | | | | | | | | In Decryptor interface, video decoding methods are added to support CDMs that support both decryption and video decoding. A new VideoDecoder, DecryptingVideoDecoder, is added to support video decoding by Decryptors in the media pipeline. DecryptingVideoDecoder uses adapter pattern to convert a Decryptor into a VideoDecoder. In AddDefaultDecodersToCollection, add a DecryptingVideoDecoder object into the video decoder list. BUG=141784 TEST=new tests added into media_unittest Review URL: https://chromiumcodereview.appspot.com/10969028 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@160183 0039d316-1c4b-4281-b951-d872f2087c98
* Don't expand audio buffer when preroll is abortedvrk@chromium.org2012-10-042-2/+16
| | | | | | | | | BUG=151352 Review URL: https://chromiumcodereview.appspot.com/11048025 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@160018 0039d316-1c4b-4281-b951-d872f2087c98
* Refactor ProxyDecryptor.xhwang@chromium.org2012-10-031-3/+5
| | | | | | | | | | | | | | | | - Add a message loop so that we don't need the DecryptOnMessageLoop magic (and headache). - Only supports one pending DecryptCB and removes the vector of pending callbacks. - Fix the Seek() bug/regression introduced in r158457. - Guard against more edge cases (see the updated unittests). - Updated unittests. BUG=152589 TEST=media_unittests, content_unittests, demo page plays/seeks well. Review URL: https://chromiumcodereview.appspot.com/10979084 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@159847 0039d316-1c4b-4281-b951-d872f2087c98
* ReadPixels from known-usable textures, and give SkBitmap its precious BGRA.fischman@chromium.org2012-10-031-1/+1
| | | | | | | | BUG=153094 Review URL: https://chromiumcodereview.appspot.com/11043002 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@159842 0039d316-1c4b-4281-b951-d872f2087c98
* Call Stop() from all destructors of base::Thread subclasses (except for a ↵pkasting@chromium.org2012-10-031-0/+1
| | | | | | | | | | | couple that ensure Stop() has already been called). BUG=none TEST=none TBR=willchan,hans Review URL: https://codereview.chromium.org/11026019 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@159812 0039d316-1c4b-4281-b951-d872f2087c98
* It seems that snd_pcm_hw_params_set_* API does not work well any more in the ↵xians@chromium.org2012-10-021-66/+7
| | | | | | | | | | | | | | | latest ubuntu like 12.04. My tests show that it will freeze the pulseaudio for a while and get into underrun state. And it seems snd_pcm_set_params works better for the same purpose. This patch also fixes the choppy audio issue for webrtc in ubuntu 12.04. BUG=152232,153505 TEST=use pepper flash (./out/Debug/chrome -ppapi-flash-path=/your/path/libpepflashplayer.so) open link http://www.youtube.com/watch?v=F7pYHN9iC9I&feature=youtu.be in two tabs, audio should be good. uses apprtc.appspot.com to make a loopback call and verify the audio is good on ubuntu 12.04 Review URL: https://chromiumcodereview.appspot.com/11019010 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@159680 0039d316-1c4b-4281-b951-d872f2087c98
* Use clients' preferred buffer size when the sample rates match and it is a ↵xians@chromium.org2012-10-022-0/+24
| | | | | | | | | | | number smaller than 2047. BUG=152780 TEST=apprtc.appspot.com/?debug=loopback, no choppy audio Review URL: https://chromiumcodereview.appspot.com/11014015 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@159666 0039d316-1c4b-4281-b951-d872f2087c98
* Support reading pixels from HW-decoded video textures into canvas/webgl.fischman@chromium.org2012-10-014-0/+27
| | | | | | | | | BUG=153094 Review URL: https://chromiumcodereview.appspot.com/11016006 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@159571 0039d316-1c4b-4281-b951-d872f2087c98
* The media foundation H.264 decoder which we use for H/W H.264 video decoding ↵ananta@chromium.org2012-10-011-7/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | on Windows 7 and above has a small pool of decoding surfaces on which the decoded output is written. These surfaces are accessible via the IMFsample COM interface which we use. The IMFSample instance has ownership of the surface. When this instance is destroyed the surface is available for storing the next video frame. We save away the surface interface in the list of pending output samples. As per above, the surfaces can be overwritten with new decoded output leading to image distortion. A simple fix for this would be to save the IMFsample interface in the pending output sample instead of the surface. However the ProcessOutput call blocks if it has enough output to produce a frame and there is no available surface. Two fixes for this:- 1. The list of pending output samples now saves away the IMFSample interface instead of the surface. 2. In the Decode call we check if we have an output frame. If yes we queue the input buffer and process it when the frame is released to the client. 3. The Flush implementation in the DXVA decoder has also changed to handle the above behavior. We have a new state kFlushing which the decoder enters. This state is checked when we process output samples. The change in the gpu_video_decoder is to remove the OS_WIN check in the GpuVideoDecoder::CanMoreDecodeWorkBeDone function. The correct fix would be to not lie about being done with the input buffer until we have a valid output frame. However this is a limitation with the media foundation decoder API. BUG=150925 R=fischman@chromium.org Review URL: https://chromiumcodereview.appspot.com/10988013 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@159552 0039d316-1c4b-4281-b951-d872f2087c98
* Clean up scoped_com_initializer.h, primarily by removing #ifdefs for ↵pkasting@chromium.org2012-10-015-47/+69
| | | | | | | | | | | | non-Windows. Instead change files that use this to specifically #ifdef it for OS_WIN, like we do most other Windows-specific code. I plan to factor out the "subclass base::Thread to init MTA on Windows" pattern to its own file in a followup change. BUG=none TEST=none Review URL: https://codereview.chromium.org/10990079 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@159545 0039d316-1c4b-4281-b951-d872f2087c98
* Fix ChunkDemuxer end of stream tracking during canceled seeks.acolwell@chromium.org2012-10-012-26/+83
| | | | | | | | BUG=152595 Review URL: https://codereview.chromium.org/11013004 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@159540 0039d316-1c4b-4281-b951-d872f2087c98
* Style guide compliance: don't handle DCHECK failure.pkasting@chromium.org2012-09-293-32/+8
| | | | | | | | BUG=none TEST=none Review URL: https://codereview.chromium.org/10984063 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@159430 0039d316-1c4b-4281-b951-d872f2087c98
* Don't attempt HW decode for videos over 1920x1080 when not supported.posciak@chromium.org2012-09-281-0/+17
| | | | | | | | BUG=152765 Review URL: https://chromiumcodereview.appspot.com/10986097 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@159361 0039d316-1c4b-4281-b951-d872f2087c98
* Roll FFmpeg DEPS + Fixup FFmpeg tests.dalecurtis@google.com2012-09-284-43/+60
| | | | | | | | | | | | | | | | | | Pulls in the security fix for issue 152691 and adds a test for the problematic file. Additionally fixes a few issues which have led to rusting: - Updates hashes after AudioBus::ToInterleaved() changes. - Fixes a bunch of EXPECT_CALL failures and log spam since not all tests will satisfy these expectations due to invalid files. - Fixes a bug in the hashing code when NullAudioSink is never initialized. BUG=152691 TEST=unit tests. Review URL: https://codereview.chromium.org/10989089 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@159352 0039d316-1c4b-4281-b951-d872f2087c98
* move lock into qtkit code to remove racing condition.wjia@chromium.org2012-09-284-23/+24
| | | | | | | BUG=147104 Review URL: https://codereview.chromium.org/10911314 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@159347 0039d316-1c4b-4281-b951-d872f2087c98
* Improves jni_generator name mangling.bulach@chromium.org2012-09-283-86/+61
| | | | | | | | | | | | | Uses a more compact format to avoid generating uber-long names. Changes media_player_bridge to use such format. BUG= TEST= Review URL: https://chromiumcodereview.appspot.com/10957037 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@159240 0039d316-1c4b-4281-b951-d872f2087c98
* Cleanup: avoid foo ? true : false, part 1.thestig@chromium.org2012-09-273-3/+3
| | | | | | Review URL: https://chromiumcodereview.appspot.com/10939010 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@159137 0039d316-1c4b-4281-b951-d872f2087c98
* Fix crash when trying to use a camera that is already in use.perkj@chromium.org2012-09-272-0/+15
| | | | | | | | | | | | | This cl change the behaviour of VideoCaptureManager to not report errors that occur after a stream have been created. Ie - MediaStreamManager should not be told that starting a video capture device have failed since the video capture was not started through the MediaStreamManager. Instead - only the client that tried to start the video capture is notified of the error. BUG=152158 TEST= See the defect report. Review URL: https://chromiumcodereview.appspot.com/10990027 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@159011 0039d316-1c4b-4281-b951-d872f2087c98
* Tweak track buffer-related logic to switch to new data more quicklyvrk@chromium.org2012-09-273-20/+179
| | | | | | | | | | | | This CL changes the SourceBufferStream logic to switch from the track buffer data to the new underlying data as soon as it is possible. BUG=151079 Review URL: https://chromiumcodereview.appspot.com/10982019 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@158954 0039d316-1c4b-4281-b951-d872f2087c98
* Enforce Stop() is always called before dtor in FFmepgVideoDecoder.xhwang@chromium.org2012-09-264-35/+53
| | | | | | | | | | | | | | Enforce this because Stop() needs to do some shutdown work asynchronously. - Updated comments in VideoDecoder interface. - Added DCHECK in dtor. - Updated FFmpegVideoDecoderTest to call Stop() in dtor. BUG=93932,152262 TEST=Updated media_unittest Review URL: https://chromiumcodereview.appspot.com/10990039 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@158931 0039d316-1c4b-4281-b951-d872f2087c98
* Add ARM NEON intrinsic optimizations for SincResampler.dalecurtis@google.com2012-09-264-28/+94
| | | | | | | | | | | | | | | | On an exynos board these yielded an ~2.3x speedup: Benchmarking 50000000 iterations: Convolve_C took 5682.71ms. Convolve_NEON(unaligned) took 2451.18ms; which is 2.32x faster than Convolve_C. Convolve_NEON (aligned) took 2397.01ms; which is 2.37x faster than Convolve_C and 1.02x faster than Convolve_NEON (unaligned). BUG=none TEST=try bot, fischman. Review URL: https://codereview.chromium.org/10960023 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@158870 0039d316-1c4b-4281-b951-d872f2087c98
* Switch to using WebKit's test expecation parser.dalecurtis@google.com2012-09-263-154/+94
| | | | | | | | | | | | | | | | | Switches the TestExpecations file parser from our hand rolled parsing code over to using WebKit's parsing libraries directly. Fixes LayoutTestAnalyzer to work with the new TestExpecations file format. Requires WebKit/Tools/Scripts/ in PYTHONPATH. BUG=none TEST=unit tests, local runs. Review URL: https://codereview.chromium.org/10986008 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@158848 0039d316-1c4b-4281-b951-d872f2087c98