summaryrefslogtreecommitdiffstats
path: root/media/mf
Commit message (Collapse)AuthorAgeFilesLines
* Restored the d3d surface rendering option for mft_h264_decoder. To do this, ↵imcheng@chromium.org2010-09-144-147/+212
| | | | | | | | | | | | | | | | we need to pass in the window to be drawn to when we create the device. Thus the decoder's constructor now takes an extra argument HWND. Things to do in upcoming patches: - move files to media/video and change name to XXXdecode_engine - refactor, add helper methods in the unittest - handle the "device lost" case during rendering (this can happen if screen resolution changed after creation of device, for example) - implement the context interface and have the decoder output d3dtextures BUG=none TEST=compile, decoder's unittest still passes Review URL: http://codereview.chromium.org/3331026 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@59309 0039d316-1c4b-4281-b951-d872f2087c98
* Added FakeGlVideoDecodeEngine to exercise the IPC protocol for hardware ↵hclam@chromium.org2010-09-133-52/+52
| | | | | | | | | | | | | | | | video decoding There are several things done in this patch: 1. Added FakeGlVideoDecodeEngine 2. Fixed style problem in VideoDecodeEngine and gpu_video_common.h 3. Added route to pass texture from gpu process to WebKit BUG=53714 TEST=Tree is green Review URL: http://codereview.chromium.org/3335014 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@59223 0039d316-1c4b-4281-b951-d872f2087c98
* Renamed a couple of variables in mft_h264_decoder.cc, and removed the ↵imcheng@chromium.org2010-09-082-6/+4
| | | | | | | | | | | <deque> header from mft_h264_decoder.h. BUG=none TEST=compile Review URL: http://codereview.chromium.org/3331019 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@58840 0039d316-1c4b-4281-b951-d872f2087c98
* Rename all FillThisBuffer and EmptyThisBuffer to something more meaningfulhclam@chromium.org2010-09-054-24/+24
| | | | | | | | | | | | The FillThisBuffer and EmptyThisBuffer names are very confusing. Anyone new working on the code probably won't understand the code at all. I'm changing the names to something more meaningful, which state the actual action taken by the methods. It is also easier to tell whether the method is for input pin or for output pin by their names. Review URL: http://codereview.chromium.org/3201013 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@58604 0039d316-1c4b-4281-b951-d872f2087c98
* Remove refcounting of VideoDecodeEnginehclam@chromium.org2010-09-032-25/+25
| | | | | | | | | | | | | VideoDecodeEngine doesn't need refcounting, all decode engines live on one thread so there isn't a problem posting task to a random thread. Also the stop is asynchronous, we can always until the stop is done before we destroy the object and doesn't need refcounting to destroy it. TEST=media_unittests Review URL: http://codereview.chromium.org/3125032 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@58539 0039d316-1c4b-4281-b951-d872f2087c98
* Merge remote branch 'origin/trunk' into resubmithclam@chromium.org2010-09-032-2/+2
| | | | | | | | | | | | | | Refactor video decode engines to move them to a new folder Moving video decode engines and friends to media/video. TEST=Tree is green. Video plays. Review URL: http://codereview.chromium.org/3127027 Review URL: http://codereview.chromium.org/3291009 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@58446 0039d316-1c4b-4281-b951-d872f2087c98
* Revert 58429, 58428, 58427, 58423.akalin@chromium.org2010-09-032-2/+2
| | | | | | | | TBR=hclam@chromium.org Review URL: http://codereview.chromium.org/3337009 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@58434 0039d316-1c4b-4281-b951-d872f2087c98
* Build fix. Fix include to point to new locations.hclam@chromium.org2010-09-022-2/+2
| | | | | | | | | | | TBR=akalin@chromium.org BUG= TEST= Review URL: http://codereview.chromium.org/3300009 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@58427 0039d316-1c4b-4281-b951-d872f2087c98
* Second attempt at fixing the Direct3D Present() crash. It is fixed by ↵imcheng@chromium.org2010-08-302-3/+2
| | | | | | | | | | | | 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
* 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-2511-1325/+1042
| | | | | | | | | | | | | | | | 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
* Re-land part of r55416, minus actually moving the test_suite.h contents to a ↵brettw@chromium.org2010-08-171-0/+1
| | | | | | | | | | | | | | | | | | | | | | | .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
* 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
* 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
* 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-1110-151/+926
| | | | | | | | | 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
* Moved files from media/media_foundation to media/mf. Cleaned up the code a ↵imcheng@chromium.org2010-08-066-0/+1273
| | | | | | | | | | | little bit. BUG=none TEST=coming Review URL: http://codereview.chromium.org/3072030 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@55310 0039d316-1c4b-4281-b951-d872f2087c98
* Revert "This tool demonstrates the use of the Media Foundation H.264 decoder ↵evan@chromium.org2010-07-296-1339/+0
| | | | | | | | as a standalone Media Foundation Transform (MFT). See README for more information." This reverts commit r54078, due to link failures. git-svn-id: svn://svn.chromium.org/chrome/trunk/src@54084 0039d316-1c4b-4281-b951-d872f2087c98
* This tool demonstrates the use of the Media Foundation H.264 decoder as a ↵imcheng@chromium.org2010-07-296-0/+1339
standalone Media Foundation Transform (MFT). See README for more information. Review URL: http://codereview.chromium.org/3044019 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@54078 0039d316-1c4b-4281-b951-d872f2087c98