summaryrefslogtreecommitdiffstats
path: root/media
Commit message (Collapse)AuthorAgeFilesLines
* Use midpoint calculation for frame-exact seeking.scherkus@chromium.org2011-01-182-50/+112
| | | | | | | | | | | Previously we would use a "good enough" frame without fully taking duration into account. BUG=69499 TEST=media_unittests Review URL: http://codereview.chromium.org/6321005 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@71676 0039d316-1c4b-4281-b951-d872f2087c98
* Remove MessageLoop methods from Filter interface toacolwell@chromium.org2011-01-1529-332/+321
| | | | | | | | | | | | | | separate Filter management from MessageLoop management. This sets the stage for filters to share threads in the future which will reduce resource consumption when multiple <video> tags are on the same page. BUG=69451 TEST=None Review URL: http://codereview.chromium.org/6171009 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@71548 0039d316-1c4b-4281-b951-d872f2087c98
* Replace MockFilterCallback with MockCallback and simplify unit tests.scherkus@chromium.org2011-01-1512-327/+184
| | | | | | | | | | | We had a ton of unnecessarily duplicated code, most of which could be solved by introducing NewExpectedCallback(). BUG=none TEST=media_unittests Review URL: http://codereview.chromium.org/6350001 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@71537 0039d316-1c4b-4281-b951-d872f2087c98
* Implement renderer AudioDevice API for low-latency audio outputcrogers@google.com2011-01-152-0/+31
| | | | | | | | | BUG=none TEST=none (I tested locally for Mac OS X, but we'll need further testing for Windows and Linux as we add real-time threads, etc.) Review URL: http://codereview.chromium.org/6002005 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@71521 0039d316-1c4b-4281-b951-d872f2087c98
* Fix crash in reading audio capture device name.satish@chromium.org2011-01-141-0/+3
| | | | | | | | | | | Relevant crash report: http://crash/reportdetail?reportid=c48906f8d604a9d5#crashing_thread BUG=69608 TEST=none Review URL: http://codereview.chromium.org/6333005 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@71434 0039d316-1c4b-4281-b951-d872f2087c98
* Clang: enable -Wbool-conversions and -Wunused-variables on Linux.hans@chromium.org2011-01-142-11/+11
| | | | | | | | | | | | | | | -Wbool-conversion warns about EXPECT_EQ(false, blah), so replace that with EXPECT_FALSE(blah). Do the same with EXPECT_EQ(true, blah) for good measure (even though that doesn't generate warnings). Also remove the one instance of an unused variable. BUG=69421 TEST=buildbots all compile and all tests pass Review URL: http://codereview.chromium.org/6300001 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@71431 0039d316-1c4b-4281-b951-d872f2087c98
* Fix flaky behavior in pipeline teardown.acolwell@chromium.org2011-01-132-53/+83
| | | | | | | | | BUG=61012 TEST=Covered by existing media tests. Review URL: http://codereview.chromium.org/6179006 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@71347 0039d316-1c4b-4281-b951-d872f2087c98
* Chromium build failed with heap leak checker, or configured withtony@chromium.org2011-01-131-3/+2
| | | | | | | | | | | | | | | | | 'gyp_chromium -Dlinux_use_heapchecker=1 -Dlinux_keep_shadow_stacks=1' parameters. This configuration set gcc option '-finstrument-functions' and cause 'control reaches end of non-void function' error in some sources. Some errors occur in WebKit, and this changelist doesn't include patches for WebKit sources. TEST=pass sync_unit_tests, browser_tests, net_unittests Original patch by Takashi Toyoshima <toyoshim@google.com> at http://codereview.chromium.org/5991005/ Review URL: http://codereview.chromium.org/6262002 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@71274 0039d316-1c4b-4281-b951-d872f2087c98
* Use the lock when accessing the buffer object.cevans@chromium.org2011-01-121-0/+1
| | | | | | | | | BUG=69195 TEST=play Z-Type for hours :) Review URL: http://codereview.chromium.org/6157007 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@71211 0039d316-1c4b-4281-b951-d872f2087c98
* Change CompositeFilter to use ScopedRunnableMethodFactory &acolwell@chromium.org2011-01-112-14/+22
| | | | | | | | | | | | make OnCallback() static to prevent the CompositeFilter from becoming owned by other filter threads. BUG=68784 TEST=None Review URL: http://codereview.chromium.org/6226001 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@71067 0039d316-1c4b-4281-b951-d872f2087c98
* Change #ifdef _DEBUG test to #ifndef NDEBUG test.tfarina@chromium.org2011-01-101-2/+2
| | | | | | | | | BUG=None TEST=trybots Review URL: http://codereview.chromium.org/5991010 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@70956 0039d316-1c4b-4281-b951-d872f2087c98
* Reland "Remove base/scoped_handle_win.h."tfarina@chromium.org2011-01-092-6/+7
| | | | | | | | | | | | | | | Fixed the problem with rlz library. Now should be fine to land this again. This reverts commit 3620d9501af7bff688862c54fdd60f7eb41797f3. Original Review URL: http://codereview.chromium.org/6126002/ BUG=None TEST=trybots Review URL: http://codereview.chromium.org/6110005 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@70861 0039d316-1c4b-4281-b951-d872f2087c98
* Revert "Remove base/scoped_handle_win.h stub and fix up all callers to use ↵thakis@chromium.org2011-01-072-7/+6
| | | | | | | | | | the new location and namespace." This reverts r 70795, it broke the build. TBR=vandebo git-svn-id: svn://svn.chromium.org/chrome/trunk/src@70802 0039d316-1c4b-4281-b951-d872f2087c98
* Remove base/scoped_handle_win.h stub and fix up all callers to use the new ↵tfarina@chromium.org2011-01-072-6/+7
| | | | | | | | | | | location and namespace. BUG=None TEST=trybots Review URL: http://codereview.chromium.org/6126002 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@70795 0039d316-1c4b-4281-b951-d872f2087c98
* Handle changes in video frame size.scherkus@chromium.org2011-01-072-33/+78
| | | | | | | | | BUG=67303 TEST=media_unittests Review URL: http://codereview.chromium.org/6034007 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@70703 0039d316-1c4b-4281-b951-d872f2087c98
* Don't uninitialize FFmpegVideoDecodeEngine if we haven't initialized it.scherkus@chromium.org2011-01-063-5/+13
| | | | | | | | | | | This was originally commited as r70077 but was accidentally reverted. BUG=67303 TEST=media_unittests Review URL: http://codereview.chromium.org/6046006 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@70669 0039d316-1c4b-4281-b951-d872f2087c98
* Fix indents. I am used to webkit style, so did it wrong in last commit.inferno@chromium.org2011-01-061-2/+2
| | | | | | | BUG=68244 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@70637 0039d316-1c4b-4281-b951-d872f2087c98
* Turn the volume range check into a bail out return to prevent browser crash.inferno@chromium.org2011-01-061-3/+5
| | | | | | | | | BUG=68244 TEST=None Review URL: http://codereview.chromium.org/6133001 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@70635 0039d316-1c4b-4281-b951-d872f2087c98
* Refactor PipelineImpl to use CompositeFilter to manage Filter state transitions.acolwell@chromium.org2011-01-0510-123/+1764
| | | | | | | | | | | BUG=54110 TEST=media_unittests CompositeFilterTest.* Committed: http://src.chromium.org/viewvc/chrome?view=rev&revision=70267 Review URL: http://codereview.chromium.org/5744002 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@70527 0039d316-1c4b-4281-b951-d872f2087c98
* Move lots of GMock stuff out of line.erg@google.com2011-01-057-62/+137
| | | | | | | | | | | | | | Nico did some treemapping of our build time on Mac, and (surprise!) gmock unittests dominated. Gmock works with several large, heavy templates, and previous patches that out of line the ctors/dtors have significantly sped up compilation (e.g.GLMock) and have reduced thrashing. Nico says I should plug this again: http://www.chromium.org/developers/coding-style/cpp-dos-and-donts BUG=none TEST=none Review URL: http://codereview.chromium.org/6056008 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@70516 0039d316-1c4b-4281-b951-d872f2087c98
* check for codec null pointer when printing error messagefbarchard@chromium.org2011-01-041-2/+2
| | | | | | | | | BUG=68115 TEST=media_bench.exe --verbose=48 --stream=audio out.webm.68798.1929 should print Error: Could not open codec (NULL) for c:\work\out.webm.68798.1929 Review URL: http://codereview.chromium.org/6044008 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@70412 0039d316-1c4b-4281-b951-d872f2087c98
* Move CancellationFlag and WaitableEvent to the synchronization subdirectory.brettw@chromium.org2011-01-024-4/+4
| | | | | | | | TEST=it compiles BUG=none Review URL: http://codereview.chromium.org/5977010 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@70369 0039d316-1c4b-4281-b951-d872f2087c98
* Fix build by removing unused include.brettw@chromium.org2011-01-011-1/+0
| | | | git-svn-id: svn://svn.chromium.org/chrome/trunk/src@70364 0039d316-1c4b-4281-b951-d872f2087c98
* Move base/lock and base/condition_variable to base/synchronization/brettw@chromium.org2011-01-012-5/+5
| | | | | | | | | | | I kept a base/lock.h in place with a using statement to avoid updating all callers in one CL. TEST=it compiles BUG=none Review URL: http://codereview.chromium.org/6018013 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@70363 0039d316-1c4b-4281-b951-d872f2087c98
* Remove base/platform_thread.h stub and fix up all callers to use the new ↵brettw@google.com2011-01-019-27/+35
| | | | | | | | | location and namespace. TEST=none BUG=none git-svn-id: svn://svn.chromium.org/chrome/trunk/src@70346 0039d316-1c4b-4281-b951-d872f2087c98
* Move base/thread.h to base/threading, fix up callers to use the new location.brettw@chromium.org2011-01-0110-10/+10
| | | | | | | | TEST=it compiles BUG=none Review URL: http://codereview.chromium.org/6028009 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@70345 0039d316-1c4b-4281-b951-d872f2087c98
* Revert 70277 - Revert 70275 - Revert 70267 - Refactor PipelineImpl to use ↵acolwell@chromium.org2010-12-299-1706/+120
| | | | | | | | | | | | | | | | | | | CompositeFilter to manage Filter state transitions. BUG=54110 TEST=media_unittests CompositeFilterTest.* Review URL: http://codereview.chromium.org/5744002 TBR=acolwell@chromium.org Review URL: http://codereview.chromium.org/6026013 TBR=acolwell@chromium.org TBR=acolwell@chromium.org Review URL: http://codereview.chromium.org/5974011 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@70287 0039d316-1c4b-4281-b951-d872f2087c98
* Revert 70275 - Revert 70267 - Refactor PipelineImpl to use CompositeFilter ↵acolwell@chromium.org2010-12-299-120/+1706
| | | | | | | | | | | | | | | | to manage Filter state transitions. BUG=54110 TEST=media_unittests CompositeFilterTest.* Review URL: http://codereview.chromium.org/5744002 TBR=acolwell@chromium.org Review URL: http://codereview.chromium.org/6026013 TBR=acolwell@chromium.org git-svn-id: svn://svn.chromium.org/chrome/trunk/src@70277 0039d316-1c4b-4281-b951-d872f2087c98
* Revert 70267 - Refactor PipelineImpl to use CompositeFilter to manage Filter ↵acolwell@chromium.org2010-12-299-1706/+120
| | | | | | | | | | | | | | state transitions. BUG=54110 TEST=media_unittests CompositeFilterTest.* Review URL: http://codereview.chromium.org/5744002 TBR=acolwell@chromium.org Review URL: http://codereview.chromium.org/6026013 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@70275 0039d316-1c4b-4281-b951-d872f2087c98
* Refactor PipelineImpl to use CompositeFilter to manage Filter state transitions.acolwell@chromium.org2010-12-299-120/+1706
| | | | | | | | | BUG=54110 TEST=media_unittests CompositeFilterTest.* Review URL: http://codereview.chromium.org/5744002 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@70267 0039d316-1c4b-4281-b951-d872f2087c98
* Revert 70077 - Don't uninitialize FFmpegVideoDecodeEngine if we haven't ↵skerner@chromium.org2010-12-233-13/+5
| | | | | | | | | | | | | | initialized it. BUG=67303 TEST=media_unittests Review URL: http://codereview.chromium.org/6046006 TBR=scherkus@chromium.org Review URL: http://codereview.chromium.org/5970011 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@70092 0039d316-1c4b-4281-b951-d872f2087c98
* Don't uninitialize FFmpegVideoDecodeEngine if we haven't initialized it.scherkus@chromium.org2010-12-233-5/+13
| | | | | | | | | BUG=67303 TEST=media_unittests Review URL: http://codereview.chromium.org/6046006 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@70077 0039d316-1c4b-4281-b951-d872f2087c98
* Revert 70063 - Refactor PipelineImpl to use CompositeFilter to manage Filter ↵acolwell@chromium.org2010-12-239-1696/+120
| | | | | | | | | | | | | | state transitions. BUG=54110 TEST=media_unittests CompositeFilterTest.* Review URL: http://codereview.chromium.org/5744002 TBR=acolwell@chromium.org Review URL: http://codereview.chromium.org/6016011 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@70064 0039d316-1c4b-4281-b951-d872f2087c98
* Refactor PipelineImpl to use CompositeFilter to manage Filter state transitions.acolwell@chromium.org2010-12-239-120/+1696
| | | | | | | | | BUG=54110 TEST=media_unittests CompositeFilterTest.* Review URL: http://codereview.chromium.org/5744002 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@70063 0039d316-1c4b-4281-b951-d872f2087c98
* Fix AudioManager shutdownacolwell@chromium.org2010-12-236-2/+30
| | | | | | | | | | | | | | | | | | This patch makes sure the audio thread is stopped before the AudioManager is destroyed. Under heavy load it is possible to have tasks still on the audio thread's message loop when the audio manager is destroyed. These were getting called when the Thread object is destroyed which happens after all of the AudioManager destructors are called. The new Cleanup() method stops the thread before any destruction occurs. BUG=67804 TEST=none Review URL: http://codereview.chromium.org/6026011 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@70034 0039d316-1c4b-4281-b951-d872f2087c98
* Set scoped IO access when closing the audio input thread to allow joining.leandrogracia@chromium.org2010-12-221-0/+11
| | | | | | | | | | | This is a fix for the crash problem described by issue 67806. The problem was caused by a new included IO access assertion that prevented the IO thread to join any other thread. This raised an error when trying to stop the audio recording thread. BUG=67806 TEST=none Review URL: http://codereview.chromium.org/6063004 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@69994 0039d316-1c4b-4281-b951-d872f2087c98
* Revert 69959 - Refactor PipelineImpl to use CompositeFilter to manage Filter ↵acolwell@chromium.org2010-12-229-1696/+120
| | | | | | | | | | | | | | state transitions. BUG=54110 TEST=media_unittests CompositeFilterTest.* Review URL: http://codereview.chromium.org/5744002 TBR=acolwell@chromium.org Review URL: http://codereview.chromium.org/5987008 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@69962 0039d316-1c4b-4281-b951-d872f2087c98
* Refactor PipelineImpl to use CompositeFilter to manage Filter state transitions.acolwell@chromium.org2010-12-229-120/+1696
| | | | | | | | | BUG=54110 TEST=media_unittests CompositeFilterTest.* Review URL: http://codereview.chromium.org/5744002 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@69959 0039d316-1c4b-4281-b951-d872f2087c98
* Fix black video frames when seeking (which also fixes flashing poster issue).scherkus@chromium.org2010-12-222-8/+29
| | | | | | | | | | | | | | | Keep track of the last available video frame in VideoRendererBase. Don't drop our readystate when starting to seek as we do actually have something to display (this fixes the poster issue). Patch by sjl@chromium.org: http://codereview.chromium.org/5878007/ BUG=57173, 50581 TEST=media_unittests, test_shell_tests, media layout tests git-svn-id: svn://svn.chromium.org/chrome/trunk/src@69956 0039d316-1c4b-4281-b951-d872f2087c98
* Remove GetVp8CxAlgoAddress hackhclam@chromium.org2010-12-203-64/+0
| | | | | | | | | | | | libvpx has introduced vpx_codec_vp8_cx() and vpx_codec_vp8_dx() use them instead. BUG=None TEST=None Review URL: http://codereview.chromium.org/5831006 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@69745 0039d316-1c4b-4281-b951-d872f2087c98
* Mark FakeAudioInputTest.BasicCallbacks as flaky.phajdan.jr@chromium.org2010-12-171-1/+2
| | | | | | | | | | TBR=satish BUG=49497 TEST=media_unittests Review URL: http://codereview.chromium.org/6018001 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@69554 0039d316-1c4b-4281-b951-d872f2087c98
* (Committing on behalf of Chris Rogers -- original CL ↵kbr@google.com2010-12-165-1/+367
| | | | | | | | | | | | | | | http://codereview.chromium.org/5550006/ ) Implement WebKitClientImpl::loadAudioResource() to decode in-memory audio file data for use by WebKit. Most of the interesting low-level code is being added in the media directory. BUG=NONE TEST=NONE (tested locally with web audio API loading files of format .wav .aif .mp3 .m4a 16bit 24bit In the longer term, WebKit layout tests will comprehensively exercise this code) Review URL: http://codereview.chromium.org/5880002 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@69458 0039d316-1c4b-4281-b951-d872f2087c98
* Ugh, one more scoped_refptr NewRunnableMethod.willchan@chromium.org2010-12-151-1/+1
| | | | | | | | | BUG=28083 TEST=builds Review URL: http://codereview.chromium.org/5864002 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@69233 0039d316-1c4b-4281-b951-d872f2087c98
* Last few NewRunnableMethod scoped_refptr params to fix.willchan@chromium.org2010-12-151-1/+1
| | | | | | | | | BUG=28083 TEST=builds Review URL: http://codereview.chromium.org/5870001 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@69229 0039d316-1c4b-4281-b951-d872f2087c98
* Make members of Singleton<T> private and only visible to the singleton type. ↵satish@chromium.org2010-12-147-40/+50
| | | | | | | | | | | | | | | This enforces that the Singleton<T> pattern can only be used within classes which want singleton-ness. As part of this CL I have also fixed up files which got missed in my previous CLs to use a GetInstance() method and use Singleton<T> from the source file. There are a small number of places where I have also switched to LazyInstance as that was more appropriate for types used in a single source file. BUG=65298 TEST=all existing tests should continue to pass. Review URL: http://codereview.chromium.org/5682008 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@69107 0039d316-1c4b-4281-b951-d872f2087c98
* Deinline even more destructors.erg@google.com2010-12-1412-11/+45
| | | | | | | | | BUG=none TEST=compiles Review URL: http://codereview.chromium.org/5794003 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@69084 0039d316-1c4b-4281-b951-d872f2087c98
* Even more virtual method deinlining.erg@google.com2010-12-132-3/+5
| | | | | | | | | BUG=none TEST=compiles Review URL: http://codereview.chromium.org/5741001 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@69041 0039d316-1c4b-4281-b951-d872f2087c98
* Revert 68932 - Make members of Singleton<T> private and only visible to the ↵satish@chromium.org2010-12-117-50/+40
| | | | | | | | | | | | | | | | | | singleton type. This enforces that the Singleton<T> pattern can only be used within classes which want singleton-ness. As part of this CL I have also fixed up files which got missed in my previous CLs to use a GetInstance() method and use Singleton<T> from the source file. There are a small number of places where I have also switched to LazyInstance as that was more appropriate for types used in a single source file. BUG=65298 TEST=all existing tests should continue to pass. Review URL: http://codereview.chromium.org/5682008 TBR=satish@chromium.org Review URL: http://codereview.chromium.org/5721005 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@68936 0039d316-1c4b-4281-b951-d872f2087c98
* Make members of Singleton<T> private and only visible to the singleton type. ↵satish@chromium.org2010-12-117-40/+50
| | | | | | | | | | | | | | | This enforces that the Singleton<T> pattern can only be used within classes which want singleton-ness. As part of this CL I have also fixed up files which got missed in my previous CLs to use a GetInstance() method and use Singleton<T> from the source file. There are a small number of places where I have also switched to LazyInstance as that was more appropriate for types used in a single source file. BUG=65298 TEST=all existing tests should continue to pass. Review URL: http://codereview.chromium.org/5682008 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@68932 0039d316-1c4b-4281-b951-d872f2087c98
* Start deinlining non-empty virtual methods. (This will be automatically checkederg@google.com2010-12-095-3/+11
| | | | | | | | | | | for in the future.) BUG=none TEST=compiles Review URL: http://codereview.chromium.org/5574006 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@68746 0039d316-1c4b-4281-b951-d872f2087c98