summaryrefslogtreecommitdiffstats
path: root/media
Commit message (Collapse)AuthorAgeFilesLines
* This test now works for the mac audio capture code as well, and in a future ↵satish@chromium.org2010-09-0213-152/+69
| | | | | | | | | | | | | CL I'll enable audio recording in linux and this test will suit that code too. In the process I changed a uint32 in a function prototype to int because style guide recommends int for such cases. I also added parameter validation code to the mac audio manager to get it pass this new test. BUG=none TEST=media_unittests should succeed as before. Review URL: http://codereview.chromium.org/3357004 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@58365 0039d316-1c4b-4281-b951-d872f2087c98
* media: recycle buffers/direct rendering etc. (third patch)jiesun@google.com2010-09-0212-370/+623
| | | | | | | | | | | | | | 1. ffmpeg use direct rendering for ogg/h264. webm still do not use direct rendering. for both cases, decoder owns buffers. 2. video renderer change to support flush in a more flexible way. 3. openmax 's both path had been merged and both recycle buffer, 4. finish/fine tune seek logic in openmax code . TEST=test matrix/player_x11/layout test. BUG = None Review URL: http://codereview.chromium.org/3014059 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@58279 0039d316-1c4b-4281-b951-d872f2087c98
* Fixed OpenBSD build.sergeyu@chromium.org2010-09-022-33/+7
| | | | | | | | | | | Compilation on OpenBSD was broken by previous commits in the audio code. BUG=None TEST=None Review URL: http://codereview.chromium.org/3301007 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@58276 0039d316-1c4b-4281-b951-d872f2087c98
* Fixing rounding error in buffering bar for fully loaded HTTP videosvrk@google.com2010-09-012-14/+30
| | | | | | | | | | | | | Added logic in the buffering code to no longer estimate buffered time if the video is fully loaded over HTTP. Also corrected some erroneous buffering logic and fixed tests to match the revised expectations. BUG=50570 TEST=media_unittests Review URL: http://codereview.chromium.org/3249010 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@58213 0039d316-1c4b-4281-b951-d872f2087c98
* Add AudioParameters struct. Use it everywhere.sergeyu@chromium.org2010-08-3142-450/+399
| | | | | | | | | BUG=None TEST=unittests Review URL: http://codereview.chromium.org/3226012 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@58097 0039d316-1c4b-4281-b951-d872f2087c98
* Revert "re-enable ogg threads"tony@chromium.org2010-08-312-1/+10
| | | | | | | | | | | | Because http/tests/media/video-cookie.html is failing. This reverts commit r58043. TBR=fbarchard Review URL: http://codereview.chromium.org/3231011 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@58057 0039d316-1c4b-4281-b951-d872f2087c98
* re-enable ogg threadsfbarchard@chromium.org2010-08-312-10/+1
| | | | | | | | | BUG=53967 TEST=ogv videos still play but more efficiently Review URL: http://codereview.chromium.org/3217015 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@58043 0039d316-1c4b-4281-b951-d872f2087c98
* Guarantee PPAPI Audio playbacks are stopped in Pause().neb@chromium.org2010-08-311-0/+7
| | | | | | | | | BUG=none TEST=pepper audio demo is playing audio Review URL: http://codereview.chromium.org/3142005 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@58014 0039d316-1c4b-4281-b951-d872f2087c98
* Second attempt at fixing the Direct3D Present() crash. It is fixed by ↵imcheng@chromium.org2010-08-303-5/+5
| | | | | | | | | | | | realizing that the Direct3D device is shared by multiple decoder threads and the "renderer" thread and so the D3DCREATE_MULTITHREADED flag must be specified when it is created. BUG=49364 TEST=try mfdecoder with -h -r flags set. (render using Present() as fast as possible) Tried it on my laptop where it used to crash most of the time -- now with the fix, the program no longer crashes. Review URL: http://codereview.chromium.org/3218007 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@57884 0039d316-1c4b-4281-b951-d872f2087c98
* there are 2 threads for AVCodecThreadInitfbarchard@chromium.org2010-08-281-0/+1
| | | | | | | | | BUG=NONE TEST=NONE Review URL: http://codereview.chromium.org/3271002 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@57786 0039d316-1c4b-4281-b951-d872f2087c98
* another mock failurefbarchard@chromium.org2010-08-281-1/+1
| | | | | | | | | BUG=none TEST=none Review URL: http://codereview.chromium.org/3266006 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@57774 0039d316-1c4b-4281-b951-d872f2087c98
* mock test 3 threads not 2 for mediafbarchard@chromium.org2010-08-281-2/+2
| | | | | | | | BUG=none TEST=none git-svn-id: svn://svn.chromium.org/chrome/trunk/src@57773 0039d316-1c4b-4281-b951-d872f2087c98
* remove meaningless ffmpeg fast flagfbarchard@chromium.org2010-08-283-6/+4
| | | | | | | | | BUG=none TEST=none Review URL: http://codereview.chromium.org/3280004 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@57771 0039d316-1c4b-4281-b951-d872f2087c98
* FBTF: Remove unneeded headers from base/ (part 7)thestig@chromium.org2010-08-2711-6/+10
| | | | | | | | BUG=none TEST=none Review URL: http://codereview.chromium.org/3176026 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@57737 0039d316-1c4b-4281-b951-d872f2087c98
* Displays a speech input UI bubble during speech recognition.satish@chromium.org2010-08-271-0/+3
| | | | | | | | | | | | | | | | | | | The webkit code passes in display rect of the input element requesting speech input and we create a UI bubble pointing at this element when starting speech input. The user can click outside the bubble to close it, which aborts recognition if we were still recording audio. The user can also click the cancel link in the bubble which aborts recognition irrespective of what state it is in now. Added a SpeechInputBubbleController class to take care of marshalling the requests between the speech input code in IO thread and the UI bubble in the UI thread. Also added a unit test for this class. BUG=none TEST=unit_tests --gtest_filter=SpeechInputBubbleControllerTest.* Review URL: http://codereview.chromium.org/3156048 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@57666 0039d316-1c4b-4281-b951-d872f2087c98
* Add missing backslash to fix build break caused bysatish@chromium.org2010-08-271-1/+1
| | | | | | | | | | | http://src.chromium.org/viewvc/chrome?view=rev&revision=57660 TBR=joth BUG=none TEST=none Review URL: http://codereview.chromium.org/3255001 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@57661 0039d316-1c4b-4281-b951-d872f2087c98
* Mac audio input implementationjoth@chromium.org2010-08-277-17/+395
| | | | | | | | | | | Required for speech input feature BUG=none TEST=Added AudioInputStreamMacTest.* unit tests Review URL: http://codereview.chromium.org/3181041 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@57660 0039d316-1c4b-4281-b951-d872f2087c98
* media: add flush stage before stop().jiesun@google.com2010-08-262-54/+133
| | | | | | | | | | | | | | to make stop more clean without race condiction, we need to flush therefore when stop happen, there are no buffer exchange. 1. add seek_pending_ to track a seek operation in transition. 2. add tearing_down_ to track a stop operation in transition. 3. add stop_pending_ to track a stop that could be delayed by a seek. 4. an error while initialization will trigger a short teardown. ( stopping => stopped ) 5. an error after initialization will trigger a full tear down. ( pausing => flushing =>stopping => stopped. ). Review URL: http://codereview.chromium.org/3192008 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@57564 0039d316-1c4b-4281-b951-d872f2087c98
* Share one thread between all AudioOutputControllers instead of creating one ↵sergeyu@chromium.org2010-08-2528-236/+372
| | | | | | | | | | | per stream. TEST=unittests BUG=39825 Review URL: http://codereview.chromium.org/3185022 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@57392 0039d316-1c4b-4281-b951-d872f2087c98
* Removed strmiids.lib from MftH264Decoder by reordering two header files. ↵imcheng@chromium.org2010-08-251-4/+4
| | | | | | | | | | | (move evr.h after mfapi.h) BUG=none TEST=compile the decoder, example, and unittests and see if it works. Review URL: http://codereview.chromium.org/3191027 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@57383 0039d316-1c4b-4281-b951-d872f2087c98
* Changed mft_h264_decoder's API to match with video_decode_engine.h. Also ↵imcheng@chromium.org2010-08-2513-1332/+1044
| | | | | | | | | | | | | | | | changed the example and unittests. Implementation of mft_h264_decoder.cc is similar to ffmpeg_video_decode_engine.cc. For now, a d3d surface output from the decoder is converted from NV12 to YV12 and stored in regular memory. So rendering with --enable-dxva is a bit slower for now. Once we figure out how to connect with ANGLE, we won't need the conversion / transfer. basic_renderer.* is now replaced with a simpler implementation of EventHandler inside the example code. d3d_util.* is also removed because d3d9 initialization is now moved inside the initialization of the decoder and it is the only place where it is used. BUG=none TEST=included in this patch Review URL: http://codereview.chromium.org/3156046 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@57261 0039d316-1c4b-4281-b951-d872f2087c98
* Revert 57254 - Share one thread between all AudioOutputControllers instead ↵scherkus@chromium.org2010-08-2423-352/+228
| | | | | | | | | | | | | | of creating one per stream. TEST=unittests BUG=39825 Review URL: http://codereview.chromium.org/3185022 TBR=sergeyu@chromium.org Review URL: http://codereview.chromium.org/3192017 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@57256 0039d316-1c4b-4281-b951-d872f2087c98
* Share one thread between all AudioOutputControllers instead of creating one ↵sergeyu@chromium.org2010-08-2423-228/+352
| | | | | | | | | | | per stream. TEST=unittests BUG=39825 Review URL: http://codereview.chromium.org/3185022 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@57254 0039d316-1c4b-4281-b951-d872f2087c98
* Add VP8 codec enum to video decoder.fgalligan@chromium.org2010-08-232-0/+3
| | | | | | | | | | BUG=52594 TEST=Play a WebM file in debug Chrome build and renderer should not crash. Review URL: http://codereview.chromium.org/3189013 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@57070 0039d316-1c4b-4281-b951-d872f2087c98
* fix windows loop problem.jiesun@google.com2010-08-192-14/+12
| | | | | | | | | | | turns out filters are flushed from upstream to downstream... BUG=52605 TEST=windows Review URL: http://codereview.chromium.org/3107023 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@56706 0039d316-1c4b-4281-b951-d872f2087c98
* Revert 56582 - ffmpeg flag CODEC_FLAG2_FAST removedrvargas@google.com2010-08-183-2/+3
| | | | | | | | | | | | BUG=52607 TEST=ffmpeg_tests tulip\tulip2.mp4 should be same performance as media_bench.exe --video-threads=3 --fast2 --stream=video tulip\tulip2.mp4 Review URL: http://codereview.chromium.org/3157024 TBR=fbarchard@chromium.org Review URL: http://codereview.chromium.org/3125023 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@56606 0039d316-1c4b-4281-b951-d872f2087c98
* ffmpeg flag CODEC_FLAG2_FAST removedfbarchard@chromium.org2010-08-183-3/+2
| | | | | | | | | BUG=52607 TEST=ffmpeg_tests tulip\tulip2.mp4 should be same performance as media_bench.exe --video-threads=3 --fast2 --stream=video tulip\tulip2.mp4 Review URL: http://codereview.chromium.org/3157024 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@56582 0039d316-1c4b-4281-b951-d872f2087c98
* revert thread enable for ogv. bug on video-cookie.html likely affects mp4 ↵fbarchard@chromium.org2010-08-181-1/+3
| | | | | | | | | | as well BUG=none TEST=./src/webkit/tools/layout_tests/run_webkit_tests.sh --debug http/tests/media/\* Review URL: http://codereview.chromium.org/3137020 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@56478 0039d316-1c4b-4281-b951-d872f2087c98
* remove pragma message to fix build issuefbarchard@chromium.org2010-08-181-5/+0
| | | | | | | | | BUG=none TEST=none Review URL: http://codereview.chromium.org/3155028 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@56465 0039d316-1c4b-4281-b951-d872f2087c98
* enable multicore decode for ogg theora videofbarchard@chromium.org2010-08-181-2/+6
| | | | | | | | | BUG=none TEST=media layout tests should not be flakey. Review URL: http://codereview.chromium.org/3083013 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@56463 0039d316-1c4b-4281-b951-d872f2087c98
* media: add ifdef to prevent build error in "use-system-ffmpeg" casejiesun@google.com2010-08-182-1/+23
| | | | | | Review URL: http://codereview.chromium.org/3108025 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@56461 0039d316-1c4b-4281-b951-d872f2087c98
* Re-land part of r55416, minus actually moving the test_suite.h contents to a ↵brettw@chromium.org2010-08-173-2/+5
| | | | | | | | | | | | | | | | | | | | | | | .cc file. Cleanup in base. This moves the implementation (and a bunch of header file dependencies) from the multiprocess test and the test_suite headers to .cc files. Moves multiprocess_test to the test directory, and all of this stuff to the existing base_test_support project. I also used the base namespace. Previously other projects included this functionality just by #include because it was all inline, so I had to add dependencies on base_test_support in a few places. Moves and renames the command line switch this was using to base_switches. Move the base switch for process type to chrome switches. TEST=none BUG=none Review URL: http://codereview.chromium.org/3026055 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@56399 0039d316-1c4b-4281-b951-d872f2087c98
* Initialize member var.finnur@chromium.org2010-08-172-3/+8
| | | | | | | | | | BUG=None TEST=None CID=12547 Review URL: http://codereview.chromium.org/3190001 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@56323 0039d316-1c4b-4281-b951-d872f2087c98
* GTTF: some more FRIEND_TEST_ALL_PREFIXESphajdan.jr@chromium.org2010-08-161-5/+6
| | | | | | | | | TEST=none BUG=44549 Review URL: http://codereview.chromium.org/3161021 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@56253 0039d316-1c4b-4281-b951-d872f2087c98
* meida:fix a typojiesun@google.com2010-08-161-1/+1
| | | | | | Review URL: http://codereview.chromium.org/3184006 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@56230 0039d316-1c4b-4281-b951-d872f2087c98
* Separate out the constructor and Run from test_suite.cc. This is an isolatedbrettw@chromium.org2010-08-161-0/+1
| | | | | | | | | | part of r55416 to test that the files that use test_suite have the proper project dependencies. TEST=everything compiles BUG=none git-svn-id: svn://svn.chromium.org/chrome/trunk/src@56182 0039d316-1c4b-4281-b951-d872f2087c98
* Re-land just the project file changes from r55416. This makes projects that usebrettw@chromium.org2010-08-151-0/+3
| | | | | | | | | base test files dependent on test_support_base. TEST=none BUG=none git-svn-id: svn://svn.chromium.org/chrome/trunk/src@56172 0039d316-1c4b-4281-b951-d872f2087c98
* media: bit stream converterjiesun@google.com2010-08-135-30/+32
| | | | | | | | | we need enable bitstream converter by which decoder is actually in pipeline. instead of use command line. Review URL: http://codereview.chromium.org/3159014 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@56095 0039d316-1c4b-4281-b951-d872f2087c98
* media: change engine interface to be suitable for gpu_video_decoderjiesun@google.com2010-08-1313-537/+595
| | | | | | | | | 1. we want the engine interface to be agnostic to ffmpeg. 2. we want use engine interface in both in-process and out-of-process cases. Review URL: http://codereview.chromium.org/3173013 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@56060 0039d316-1c4b-4281-b951-d872f2087c98
* Added error callbacks. Decoder no longer explicitly quits the message loop ↵imcheng@chromium.org2010-08-128-172/+371
| | | | | | | | | | | | on end of output. Also added a seeking functionality for rendering to window that goes to the first keyframe after X seconds. Both of these require a minor change in the decoder API. BUG=none TEST=none Review URL: http://codereview.chromium.org/3146011 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@55917 0039d316-1c4b-4281-b951-d872f2087c98
* remove text direct in 64 bit because these are proper inline within a C ↵fbarchard@chromium.org2010-08-121-3/+0
| | | | | | | | | | | function and it does not make sense to change segments part way thru a function. BUG=none TEST=build chromium on 64 bit linux Review URL: http://codereview.chromium.org/3173009 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@55813 0039d316-1c4b-4281-b951-d872f2087c98
* declare text segment for gcc assemblyfbarchard@chromium.org2010-08-111-24/+9
| | | | | | | | | BUG=51843 TEST=build chrome on gentoo Review URL: http://codereview.chromium.org/3173008 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@55809 0039d316-1c4b-4281-b951-d872f2087c98
* preparation for recycling buffer, patch 2jiesun@google.com2010-08-1117-298/+547
| | | | | | | | | | | | 1. add ProvidesBuffer in Filter interface, not used yet. 2. add Flush stage in pipeline. not used. Render's pause work is moved to Renderer's flush(). 3. merge decoder_base with ffmpeg_video_decoder. because it is shared by audio. Committed: http://src.chromium.org/viewvc/chrome?view=rev&revision=55603 Review URL: http://codereview.chromium.org/3030013 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@55807 0039d316-1c4b-4281-b951-d872f2087c98
* Second attempt at removing executable bits from media/mf filesimcheng@chromium.org2010-08-1111-11/+0
| | | | | | | | | | | BUG=none TEST=none TBR=hclam Review URL: http://codereview.chromium.org/3125006 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@55767 0039d316-1c4b-4281-b951-d872f2087c98
* Fixed executable permission bits in media/mf source files.imcheng@chromium.org2010-08-1111-0/+11
| | | | | | | | | BUG=none TEST=none TBR=hclam git-svn-id: svn://svn.chromium.org/chrome/trunk/src@55755 0039d316-1c4b-4281-b951-d872f2087c98
* Added rendering and unittests for the MF H264 decoder prototype.imcheng@chromium.org2010-08-1111-154/+980
| | | | | | | | | BUG=none TEST=none Review URL: http://codereview.chromium.org/3096010 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@55734 0039d316-1c4b-4281-b951-d872f2087c98
* Revert 55603nsylvain@chromium.org2010-08-1117-540/+298
| | | | | | | | | | | | | | | | | | | video-seek-past-end-playing.html has been failing since this change Original description: preparation for recycling buffer, patch 2 1. add ProvidesBuffer in Filter interface, not used yet. 2. add Flush stage in pipeline. not used. Render's pause work is moved to Renderer's flush(). 3. merge decoder_base with ffmpeg_video_decoder. because it is shared by audio. Review URL: http://codereview.chromium.org/3030013 TBR=jiesun@google.com Review URL: http://codereview.chromium.org/3122008 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@55659 0039d316-1c4b-4281-b951-d872f2087c98
* Allow unit tests to use a mock audio input controller.satish@chromium.org2010-08-105-3/+191
| | | | | | | | | | | This is modelled after chrome/common/net/test_url_fetcher_factory.h. Using this mock unit tests can stub out the audio recording part and test the consumer of the audio data. I have also added a new media_test_support target to media.gyp, this will be used in subsequent CLs for testing speech input code. BUG=none TEST=none, this code will get used in future unit tests Review URL: http://codereview.chromium.org/3148003 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@55627 0039d316-1c4b-4281-b951-d872f2087c98
* preparation for recycling buffer, patch 2jiesun@google.com2010-08-1017-298/+540
| | | | | | | | | | 1. add ProvidesBuffer in Filter interface, not used yet. 2. add Flush stage in pipeline. not used. Render's pause work is moved to Renderer's flush(). 3. merge decoder_base with ffmpeg_video_decoder. because it is shared by audio. Review URL: http://codereview.chromium.org/3030013 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@55603 0039d316-1c4b-4281-b951-d872f2087c98
* Fix av sync for webm files with altref video frames. Altref framesfgalligan@chromium.org2010-08-102-2/+8
| | | | | | | | | | | | | need to be decoded but they do not produce a valid output frame. The pts_heap_ was not getting popped for altref frames. BUG=51014 TEST=Play content form sync test and make sure the content plays back in sync. Review URL: http://codereview.chromium.org/3086009 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@55596 0039d316-1c4b-4281-b951-d872f2087c98