summaryrefslogtreecommitdiffstats
path: root/media/base/pipeline_impl.cc
Commit message (Collapse)AuthorAgeFilesLines
* Fixed a lot threading issues during tear down of <video>hclam@chromium.org2009-03-271-4/+4
| | | | | | | | | | | | | | | | | Fixed a lot of dead locks during tead down of <video> due to DataSourceImpl. Most of the issues come from that during a tab close RenderThread is destroyed and new tasks posted on it will not executed, but DataSourceImpl is waiting for those tasks to finish to complete stopping. Another dead lock comes from that when RenderThread is destroyed the owner loop of it (a IO Message Loop) is being destroyed too and DataSourceImpl shouldn't post tasks to that message loop when stopping. Review URL: http://codereview.chromium.org/42675 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@12720 0039d316-1c4b-4281-b951-d872f2087c98
* Lots of files touched for a very simple change. Everywhere we used a const ↵scherkus@chromium.org2009-03-261-6/+5
| | | | | | | | | | MediaFormat* we now use a const MediaFormat&. This makes for simpler code and for better pointer reference safety. Review URL: http://codereview.chromium.org/42635 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@12623 0039d316-1c4b-4281-b951-d872f2087c98
* Ability for demuxer clients to get to FFmpeg's AVStream object exposed as an ↵ralphl@chromium.org2009-03-261-1/+1
| | | | | | | | | extended interface through DemuxerStream object. DemuxerStream now derives from base::RefCountedThreadSafe. Review URL: http://codereview.chromium.org/42521 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@12537 0039d316-1c4b-4281-b951-d872f2087c98
* Pipeline_Impl was modified to properly render a stream that has video but no ↵ralphl@chromium.org2009-03-061-116/+97
| | | | | | | | | | | audio. A unit test accompanies the change. Note that one minor other change was snuck in with this change. The data_source_impl.cc had a TODO to set a more specific error when a read failed. Because I was already updating the pipeline error enum, I added the error code, changed the call to host_->Error(), and removed the TODO. Review URL: http://codereview.chromium.org/39170 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@11148 0039d316-1c4b-4281-b951-d872f2087c98
* Fixes a bug in the media pipeline that resulted in the video dimensions ↵ralphl@chromium.org2009-02-191-2/+2
| | | | | | | | | never getting set. Includes a new unit test, along with new mocks for a video decoder and video renderer. Review URL: http://codereview.chromium.org/20326 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@10006 0039d316-1c4b-4281-b951-d872f2087c98
* Could you guys get on this one ASAP. My video render code depends on these ↵ralphl@chromium.org2009-02-101-10/+83
| | | | | | | | methods. I also slipped in the critical section code stuff here too. Review URL: http://codereview.chromium.org/19547 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@9466 0039d316-1c4b-4281-b951-d872f2087c98
* A minor change to the pattern for filter factories that makes the ↵ralphl@chromium.org2009-01-291-244/+239
| | | | | | | | | | | implementation more flexible, and prevents the use of templates by the client. Now, the filters themselves simply expose a static FilterFactory() method that returns a new factory object. The constructor and destructor of the class should be private and the FilterFactory object shuold be declarded as a friend. There is still a template factory, but the class uses this template class directly (if they want to us it) to implement their factory. Review URL: http://codereview.chromium.org/19435 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@8894 0039d316-1c4b-4281-b951-d872f2087c98
* Implementation of Pipeline and FilterHost interfaces. This is a large ↵ralphl@chromium.org2009-01-281-57/+460
| | | | | | | | | | | | change, but all of the objects are interrelated. I am also checking in a basic unit test that creates pipeline, and the data source hangs during initialization. The test sleeps one second and then stops the pipeline. Andrew has already done a first pass on this, and the code has come largely from our working experimental branch. Review URL: http://codereview.chromium.org/18546 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@8805 0039d316-1c4b-4281-b951-d872f2087c98
* This is the frozen interface definition for the media pipeline, filters, and ↵ralphl@chromium.org2009-01-211-25/+76
| | | | | | | | | | | | | | filter hosts. It has been pre-code-reviewed by scherkus already. There is no actual implementation in this change -- only an empty skeleton for every public method is provided. The actual code is ready, but this change is intended to get buy-off for the public interface. I added pipeline_impl.cc to the media_lib.scons since it was missing (it was present in the .sln file already) Review URL: http://codereview.chromium.org/18380 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@8396 0039d316-1c4b-4281-b951-d872f2087c98
* Checking in basic pipeline interface and stubbed out media::PipelineImpl.scherkus@chromium.org2009-01-141-0/+60
This interface is going to be updated some more in the future, but I'd like to get the basics in first. Review URL: http://codereview.chromium.org/17299 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@8046 0039d316-1c4b-4281-b951-d872f2087c98