summaryrefslogtreecommitdiffstats
path: root/media
Commit message (Collapse)AuthorAgeFilesLines
* Terminate FilterFactory and his nasty friendshclam@chromium.org2010-10-2336-829/+423
| | | | | | | | | | | | | FilterFactory, IsMediaFormatSupported and CreateFactory are the source of evil. They also have have a gang of template functions. This patch terminate them all and make the world a better place. BUG=28207 TEST=<video> runs Review URL: http://codereview.chromium.org/3878001 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@63609 0039d316-1c4b-4281-b951-d872f2087c98
* add channel mask for 6.1 surround when 7 channel audio is specifiedfbarchard@chromium.org2010-10-221-10/+21
| | | | | | | | | BUG=60329 TEST=play 6.1 on a 6.1 stereo and ensure sound is playing in the correct speakers Review URL: http://codereview.chromium.org/4072002 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@63542 0039d316-1c4b-4281-b951-d872f2087c98
* FBTF: More dtor deinlining. (Can almost see the end!)erg@google.com2010-10-2212-9/+34
| | | | | | | | | BUG=none TEST=compiles Review URL: http://codereview.chromium.org/3962004 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@63527 0039d316-1c4b-4281-b951-d872f2087c98
* Fixed bug 57194 by removing the DCHECKs and replacing them with a DLOG in ↵scherkus@chromium.org2010-10-211-3/+4
| | | | | | | | | | | | the error case. The DCHECK cases are already handled and can occur because FFmpeg does not return an error when it encounters them. Patch by ddorwin@chromium.org: http://codereview.chromium.org/4024002/show BUG=57194 TEST=Load a .m2ts file, http://iexploder.googlecode.com/svn/trunk/src/media/blank.wav, and http://www.deafmac.org/html5/grinchsample.mp4 (before issue 56570 is fixed). git-svn-id: svn://svn.chromium.org/chrome/trunk/src@63431 0039d316-1c4b-4281-b951-d872f2087c98
* Fixed a Windows-with-hardware-only unit test that is failing. Revision 59224 ↵scherkus@chromium.org2010-10-211-1/+1
| | | | | | | | | | | | increased kWinMaxChannels to 8, so 8 is no longer an invalid value. Patch by ddorwin@chromium.org: http://codereview.chromium.org/4011002/show BUG=none TEST=Run media_unittests on a real Windows machine. git-svn-id: svn://svn.chromium.org/chrome/trunk/src@63430 0039d316-1c4b-4281-b951-d872f2087c98
* Prevent buffered time from being less than the current time.scherkus@chromium.org2010-10-203-38/+88
| | | | | | | | | | Patch by acolwell@chromium.org: http://codereview.chromium.org/3897002/show BUG=56804 TEST=PipelineImplTest.GetBufferedTime git-svn-id: svn://svn.chromium.org/chrome/trunk/src@63292 0039d316-1c4b-4281-b951-d872f2087c98
* Convert LOG(INFO) to VLOG(1) - media/.pkasting@chromium.org2010-10-1913-119/+98
| | | | | | | | | | Also, remove some extra {}s, remove "else" after "return", eliminate a "using". BUG=none TEST=none Review URL: http://codereview.chromium.org/3912001 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@63140 0039d316-1c4b-4281-b951-d872f2087c98
* Revert "Delay loading Media Foundations DLLs"hclam@chromium.org2010-10-191-4/+0
| | | | | | | | | | | | This reverts commit a6294c5672df70fbd5191f25487119f0fa6a3ffe. TBR=eroman BUG=None TEST=None Review URL: http://codereview.chromium.org/3913002 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@63120 0039d316-1c4b-4281-b951-d872f2087c98
* Delay loading Media Foundations DLLshclam@chromium.org2010-10-191-0/+4
| | | | | | | | | | | Checked with Al we are already delay loading d3d9.dll, so add some extra for MF. BUG=53714 TEST=None Review URL: http://codereview.chromium.org/3859005 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@63112 0039d316-1c4b-4281-b951-d872f2087c98
* audio ola resampler accept 8 channel sourcefbarchard@chromium.org2010-10-191-1/+1
| | | | | | | | | BUG=59832 TEST=player_wtl _xvid_pcm_7.1_640x480_183sec_m1599.wav Review URL: http://codereview.chromium.org/3899001 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@63090 0039d316-1c4b-4281-b951-d872f2087c98
* Fix the issue with audio ended event on Ubuntu 10.10.sergeyu@chromium.org2010-10-192-11/+4
| | | | | | | | | | | The problem is that snd_pcm_avail_update() returns (alsa_buffer_frames_ - 1) even when the buffer is empty. Here I removed snd_pcm_avail_update() from delay calculation, so that hardware_delay is just the delay returned by snd_pcm_delay() BUG=59585 TEST=http://jsfiddle.net/x5VRq/1/ on Ubuntu 10.10. Review URL: http://codereview.chromium.org/3854002 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@63066 0039d316-1c4b-4281-b951-d872f2087c98
* FBTF: Even more ctor/virtual deinlining.erg@google.com2010-10-195-11/+36
| | | | | | | | | | | (Only 424k off Linux debug .a files). BUG=none TEST=compiles Review URL: http://codereview.chromium.org/3859003 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@63059 0039d316-1c4b-4281-b951-d872f2087c98
* FBTF: Monster ctor patch after changing heuristics in clang plugin.erg@google.com2010-10-183-11/+33
| | | | | | | | | | | (Only 916k this time off Debug Linux .a files) BUG=none TEST=compiles Review URL: http://codereview.chromium.org/3814013 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@62967 0039d316-1c4b-4281-b951-d872f2087c98
* add wave out extensible support for 5.1 surround soundfbarchard@chromium.org2010-10-182-18/+36
| | | | | | | | | BUG=25315 TEST=play 5.1 audio and it should come out all 6 speakers, not downmixed to stereo. Review URL: http://codereview.chromium.org/3772009 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@62954 0039d316-1c4b-4281-b951-d872f2087c98
* Make sure to use scoped_refptr for refcounted params in audio/video/remotingwillchan@chromium.org2010-10-185-14/+27
| | | | | | | | | BUG=28083 TEST=existing Review URL: http://codereview.chromium.org/3821005 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@62949 0039d316-1c4b-4281-b951-d872f2087c98
* Coverity: Initialize data members in constructor.kmadhusu@chromium.org2010-10-182-1/+3
| | | | | | | | | | CID=1634, 11587, 5007, 13234, 13398, 9295, 8294, 8285 BUG=none TEST=none Review URL: http://codereview.chromium.org/3817007 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@62945 0039d316-1c4b-4281-b951-d872f2087c98
* Initialize context_ to NULL.finnur@chromium.org2010-10-161-1/+2
| | | | | | | | | | BUG=None TEST=None CID=13358 Review URL: http://codereview.chromium.org/3788001 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@62859 0039d316-1c4b-4281-b951-d872f2087c98
* Move Stats, histograms, and field trial into a metrics subdirectory of base andbrettw@chromium.org2010-10-141-1/+1
| | | | | | | | | put them in the base namespace. TEST=it compiles BUG=none git-svn-id: svn://svn.chromium.org/chrome/trunk/src@62510 0039d316-1c4b-4281-b951-d872f2087c98
* [media] inject VDC to decoder.jiesun@google.com2010-10-137-31/+63
| | | | | | | | | | | | | | | | | which VDC to be used should be determined by something outside instead of inside video decoder. 1. whether hardware composition is used( probably always true). 2. whether hardware composition is disabled.(if not, why we keep the skbitmap path). 3. whether a opengl or a opengles VDC is needed, probably only apply to player_x11. 4. the video decoder context are sharing a lot of states with "painter/compositor" (e.g. graphic context). and if we create VDC inside decoder, and there is no current code path to inject this to Renderer, there are also complication of the factories and creating orders. even we add that path, it maybe too late for renderer. while we need to refactor ipc_video_decoder later. BUG=None TEST=Bots Review URL: http://codereview.chromium.org/3534015 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@62443 0039d316-1c4b-4281-b951-d872f2087c98
* FBTF: Fix more ctor/dtors found by clang plugin.erg@google.com2010-10-132-0/+15
| | | | | | | | | | | (1.2 megs off of Debug Linux .a files) BUG=none TEST=compiles everywhere Review URL: http://codereview.chromium.org/3743001 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@62420 0039d316-1c4b-4281-b951-d872f2087c98
* xRevert 62319 - re-enable ogg threadsfbarchard@chromium.org2010-10-122-3/+12
| | | | | | | | | | | | BUG=53967 TEST=ogv videos still play but more efficiently Review URL: http://codereview.chromium.org/3723004 TBR=fbarchard@chromium.org Review URL: http://codereview.chromium.org/3737002 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@62326 0039d316-1c4b-4281-b951-d872f2087c98
* re-enable ogg threadsfbarchard@chromium.org2010-10-122-12/+3
| | | | | | | | | BUG=53967 TEST=ogv videos still play but more efficiently Review URL: http://codereview.chromium.org/3723004 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@62319 0039d316-1c4b-4281-b951-d872f2087c98
* Move PerfTestSuite implementation into a .cc file and add it to the basebrettw@chromium.org2010-10-101-1/+1
| | | | | | | | | | namespace. TEST=it compiles BUG=none Review URL: http://codereview.chromium.org/3695001 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@62095 0039d316-1c4b-4281-b951-d872f2087c98
* Revert 61899 for breaking cookes on file:// URLs.willchan@chromium.org2010-10-085-27/+14
| | | | | | | | | | | | | | | | | | BUG=58553 ================================================= Fix instances of passing raw pointers to RefCounted objects in tasks. Some of these manually handled it correctly by using AddRef()/Release() pairs. I switched them to make_scoped_refptr() to be more consistent. This also makes them cleanup properly on MessageLoop shutdown if we start deleting tasks. BUG=28083 TEST=builds Review URL: http://codereview.chromium.org/3581008 TBR=willchan@chromium.org Review URL: http://codereview.chromium.org/3654001 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@62043 0039d316-1c4b-4281-b951-d872f2087c98
* Resubmit - move MFT h264 code to media/video and connect to gpu video decoder.hclam@chromium.org2010-10-0812-1705/+586
| | | | | | | | | | | TBR=scherkus BUG=None TEST=None Review URL: http://codereview.chromium.org/3591020 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@61925 0039d316-1c4b-4281-b951-d872f2087c98
* Revert "Move MFT H264 video decoder implementation and connect it to ↵hclam@chromium.org2010-10-0812-586/+1705
| | | | | | | | | | | | | | | | | | | GpuVideoDecoder" This reverts commit 8462483619e253dca3717d51e340ed839a6cab1d. Revert "Fix build failure." This reverts commit 8dcd363637ac2e59f9472c0793a0b1fd3c2ad4c7. TBR=scherkus BUG=None TEST=None Review URL: http://codereview.chromium.org/3601019 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@61922 0039d316-1c4b-4281-b951-d872f2087c98
* Move MFT H264 video decoder implementation and connect it to GpuVideoDecoderhclam@chromium.org2010-10-0812-1705/+586
| | | | | | | | | | | | | | | | | | | | Remove media/mf folder and move the video decode engine to media/video. There are some temporary changes in MftH264DecodeEngine to work with GpuVideoDecoder correctly. Removed tests will be added later. Example program will likely be removed permanently due to maintence problem. This patch depends WebKit and ANGLE changes to be able to present video frames onto screen and still have lot of bugs, those problems will be address later. BUG=53714 TEST=Tree is green. This patch doesn't work yet. Review URL: http://codereview.chromium.org/3432030 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@61918 0039d316-1c4b-4281-b951-d872f2087c98
* Fix instances of passing raw pointers to RefCounted objects in tasks.willchan@chromium.org2010-10-085-14/+27
| | | | | | | | | | | Some of these manually handled it correctly by using AddRef()/Release() pairs. I switched them to make_scoped_refptr() to be more consistent. This also makes them cleanup properly on MessageLoop shutdown if we start deleting tasks. BUG=28083 TEST=builds Review URL: http://codereview.chromium.org/3581008 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@61899 0039d316-1c4b-4281-b951-d872f2087c98
* GpuVideoDecoderHost runs on IO thread instead of Render threadhclam@chromium.org2010-10-071-0/+2
| | | | | | | | | | | | Move GpuVideoDecoderHost to IO thread and change GpuVideoServiceHost to be a MessageFilter. BUG=53714 TEST=Tree is green. Will pending on WebKit changes to make this work. Review URL: http://codereview.chromium.org/3462015 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@61854 0039d316-1c4b-4281-b951-d872f2087c98
* Make FakeGlVideoDecodeEngine works in the hardware video decoding architecturehclam@chromium.org2010-10-071-2/+0
| | | | | | | | | | | | | | Add Preroll IPC message for finishing the initialiation of FakeGlVideoDecodeEngine. Also defined methods in WebVideoFrameImpl to access video frame textures. This change depend on a WebKit change to succesfully display the textures. BUG=53714 TEST=Tree is green. This still needs WebKit changes to work. Review URL: http://codereview.chromium.org/3472016 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@61853 0039d316-1c4b-4281-b951-d872f2087c98
* Cleanup in VideoFramehclam@chromium.org2010-10-074-69/+3
| | | | | | | | | | | | | Remove D3D textures from VideoFrame because it is not used anymore. Remove duration and timestamp when creating a video frame from textures. BUG=53714 TEST=Tree is green. Review URL: http://codereview.chromium.org/3501005 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@61852 0039d316-1c4b-4281-b951-d872f2087c98
* Implement Gles2VideoDecoderContexthclam@chromium.org2010-10-072-1/+5
| | | | | | | | | | | Allocate textures for video frames in Gles2VideoDecoderContext. BUG=53714 TEST=Tree is green. This doesn't work yet. Review URL: http://codereview.chromium.org/3391022 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@61825 0039d316-1c4b-4281-b951-d872f2087c98
* Implement GpuVideoDecoderHost and unit testshclam@chromium.org2010-10-072-0/+22
| | | | | | | | | | | | | | Add the following feature to GpuVideoDecoderHost: 1. Video frame allocation / release. 2. ProduceVideoFrame / ConsumeVideoFrame using frames allocated. 3. Change GpuVideoDecoder creation to asynchronous. BUG=53714 TEST=unit_tests --gtest_filter=GpuVideoDecoder* Review URL: http://codereview.chromium.org/3397027 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@61824 0039d316-1c4b-4281-b951-d872f2087c98
* clang/mac: Fix almost all problems when building all.xcodeproj.thakis@chromium.org2010-10-041-2/+2
| | | | | | | | BUG=None TEST=None TBR=hans git-svn-id: svn://svn.chromium.org/chrome/trunk/src@61344 0039d316-1c4b-4281-b951-d872f2087c98
* VP8 decoder for chromotinghclam@chromium.org2010-09-293-2/+24
| | | | | | | | | | | Added DecoderVp8 and unit test for chromoting. TEST=remoting_unittests BUG=50235 Review URL: http://codereview.chromium.org/3032047 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@60960 0039d316-1c4b-4281-b951-d872f2087c98
* Resubmit - Some cleanup work in GpuVideoDecoderHost and IpcVideoDecoderhclam@chromium.org2010-09-292-2/+3
| | | | | | | | | | | TBR=sergeyu BUG=None. TEST=None. Review URL: http://codereview.chromium.org/3571007 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@60959 0039d316-1c4b-4281-b951-d872f2087c98
* Revert 60912 - Some cleanup work in GpuVideoDecoderHost and IpcVideoDecoderjochen@chromium.org2010-09-292-3/+2
| | | | | | | | | | | | | | | | | | | Seeing that GpuVideoDecoderHost has a very similar interface to VideoDecodeEngine, this patch makes GpuVideoDecoderHost implments VideoDecodeEngine. Also did some cleanup work to remove code patch that doesn't fit into the buffer allocation model we are moving to. BUG=53714 TEST=Tree is green. Code still doesn't work yet. Review URL: http://codereview.chromium.org/3393014 TBR=hclam@chromium.org Review URL: http://codereview.chromium.org/3531002 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@60922 0039d316-1c4b-4281-b951-d872f2087c98
* Some cleanup work in GpuVideoDecoderHost and IpcVideoDecoderhclam@chromium.org2010-09-292-2/+3
| | | | | | | | | | | | | | | | Seeing that GpuVideoDecoderHost has a very similar interface to VideoDecodeEngine, this patch makes GpuVideoDecoderHost implments VideoDecodeEngine. Also did some cleanup work to remove code patch that doesn't fit into the buffer allocation model we are moving to. BUG=53714 TEST=Tree is green. Code still doesn't work yet. Review URL: http://codereview.chromium.org/3393014 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@60912 0039d316-1c4b-4281-b951-d872f2087c98
* Implement video frame exchange in GpuVideoDecoder and testshclam@chromium.org2010-09-292-1/+35
| | | | | | | | | | | | Implement ProduceVideoFrame() in GpuVideoDecoder and unit tests for testing the loginc in GpuVideoDecoder. BUG=53714 TEST=unit_tests --gtest_filter=GpuVideoDecoder* Review URL: http://codereview.chromium.org/3414003 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@60902 0039d316-1c4b-4281-b951-d872f2087c98
* Add AudioBuffersState struct. Use it for audio synchronization.sergeyu@chromium.org2010-09-2926-171/+351
| | | | | | | | | | | | | The new AudioBuffersState contains current state of the audio buffers. This object is passed all the way from the device to the audio renderer. Audio renderer uses this information to synchronize audio. BUG=52196,49110 TEST=see repro steps for 51637 and 52196. Review URL: http://codereview.chromium.org/3444017 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@60891 0039d316-1c4b-4281-b951-d872f2087c98
* FBTF: Moves code to the headers.erg@google.com2010-09-287-20/+52
| | | | | | | | | | | | | One of the big things is starting to move/declare ctors/dtors that derive from RefCounted<> to/in the implementation file. (Saves 4 megabytes from libglue.a alone. 1 meg off libbrowser.a. Hundred of kilobyte savings in a large number of .a files; only libmedia.a grew and it's only 100k.) BUG=none TEST=compiles Review URL: http://codereview.chromium.org/3452030 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@60863 0039d316-1c4b-4281-b951-d872f2087c98
* Implement VP8 encoder for chromotinghclam@chromium.org2010-09-283-1/+46
| | | | | | | | | | | Added EncoderVp8 with test for chromoting. TEST=remoting_unittests BUG=50235 Review URL: http://codereview.chromium.org/3005036 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@60854 0039d316-1c4b-4281-b951-d872f2087c98
* Initialize OpenMAX with a different number of input buffershclam@chromium.org2010-09-271-1/+1
| | | | | | | | | | | | Submitted for: andr2000@gmail.com Reviewed: http://codereview.chromium.org/3475001 BUG=None TEST=OpenMAX can initialize. Review URL: http://codereview.chromium.org/3470012 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@60665 0039d316-1c4b-4281-b951-d872f2087c98
* Remove a disabled and unneeded test.vandebo@chromium.org2010-09-241-18/+0
| | | | | | | | | TEST=AudioUtilTest.DISABLED_FoldChannels_s16_benchmark BUG=none Review URL: http://codereview.chromium.org/3440020 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@60516 0039d316-1c4b-4281-b951-d872f2087c98
* FBTF: Move virtual methods to implementation files.erg@google.com2010-09-236-57/+99
| | | | | | | | | | | Remove logging.h and other headers where possible. BUG=none TEST=none Review URL: http://codereview.chromium.org/3461019 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@60369 0039d316-1c4b-4281-b951-d872f2087c98
* Fix an error reported by the clang assembler.thakis@chromium.org2010-09-211-4/+4
| | | | | | | | | | | It would complain that an `and` is ambiguous and could mean one of andb, andw, andl, andq (because neither of the two operands has an intrinsic size). Also for 3 other instructions. BUG=None TEST=None Review URL: http://codereview.chromium.org/3464006 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@60016 0039d316-1c4b-4281-b951-d872f2087c98
* Video decode context for MFT H264 decode engine. The context will be ↵imcheng@chromium.org2010-09-172-0/+249
| | | | | | | | | | | | | | constructed before the creation of the decode engine and it will be passed into the decode engine's initialization. This context manages D3DTextures which will be read by the renderer. The decode engine asks the context to upload its decoded frames (D3DSurfaces) for it. Waiting for the VideoDecodeContext API to be finalized. BUG=none TEST=none Review URL: http://codereview.chromium.org/3431009 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@59874 0039d316-1c4b-4281-b951-d872f2087c98
* Make AudioOutputController.Close() truly asynchronous.sergeyu@chromium.org2010-09-173-81/+81
| | | | | | | | | | | | | Added closed_task parameter in this method. This parameter is used to notify the caller when the stream is actually closed. Callbacks may be called until closed_task is executed. BUG=55755 TEST=Unittests, audio still works, doesn't crash Review URL: http://codereview.chromium.org/3415007 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@59869 0039d316-1c4b-4281-b951-d872f2087c98
* Resubmit GpuVideoDecoder and related patches.hclam@chromium.org2010-09-1715-47/+91
| | | | | | | | | BUG=53714 TEST=Tree is green Review URL: http://codereview.chromium.org/3442006 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@59860 0039d316-1c4b-4281-b951-d872f2087c98
* Fixed Ended event when audio is disabled.sergeyu@chromium.org2010-09-173-1/+20
| | | | | | | | | BUG=53539 TEST=unittests Review URL: http://codereview.chromium.org/3461003 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@59830 0039d316-1c4b-4281-b951-d872f2087c98