| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This CL includes the following changes:
1. upstream WebVideoFrameAndroid to prepare for the WebMediaPlayerAndroid upstreaming
2. introduced one more enum to capture undocumentde error types.
3. Changed SetDataSource() function in MediaPlayerBridge so WebMediaPlayerAndroid don't need to handle the url headers
BUG=
TEST=
Review URL: http://codereview.chromium.org/10051019
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@132064 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
| |
BUG=60691
Review URL: http://codereview.chromium.org/10050031
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@131939 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
| |
buffered_resource_loader.cc)
Review URL: http://codereview.chromium.org/10052031
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@131936 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
| |
These were used for mocking purposes in the past but not anymore!
Review URL: https://chromiumcodereview.appspot.com/10053015
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@131826 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
| |
of status codes.
BUG=110120
Review URL: https://chromiumcodereview.appspot.com/10032017
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@131824 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
| |
BUG=75548,113300
TEST=existing tests should pass
Review URL: https://chromiumcodereview.appspot.com/9949011
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@131732 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
| |
Review URL: http://codereview.chromium.org/10038006
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@131700 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
| |
This removes the easy ones: RGB555, RGB565, RGB24, RGBA, NV12, and ASCII.
BUG=108306
TEST=videotestmatrix is still as happy as it was.
Review URL: http://codereview.chromium.org/10024072
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@131682 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
| |
(r129256 broke this, this fixes it)
BUG=122798
TEST=chromium-os:29026 has a complex repro; simpler repro is to play a file:// URL in chromium to the end, then move the file aside on disk, and hit the "play" button again. The JS console should eval document.querySelector('video').error.code to 4 after this fix.
Review URL: http://codereview.chromium.org/9960070
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@131630 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
| |
The warning in WebMediaPlayerImpl was added in r23598 but has long since been true.
FFmpegDemuxer::first_seek_hack_ is due to Pipeline issuing a seek to the start timestamp as the final stage of initialization, however the demuxer doesn't require prerolling so we can safely skip it and remove the hack entirely.
TEST=media_unittests, http/tests/media/, any HTTP 200 chunked response
Review URL: https://chromiumcodereview.appspot.com/10024033
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@131485 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Neither of these classes are base classes anymore, so rename to
AudioRendererImpl and AudioRendererAlgorithm respectively
BUG=116645
TEST=media_unittests; chrome compiles and runs audio/video
Review URL: http://codereview.chromium.org/9826028
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@131481 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This CL removes AudioRendererImpl and replaces it with AudioRendererBase.
NullAudioRenderer is also removed and replaced with NullAudioSink.
Also, a subtle bug is fixed in AudioRendererBase to allow for smooth
video playback when running Chrome with the --disable-audio flag.
BUG=119549,116645
TEST=media_unittests, playing video on Chrome/content_shell with and without --disable-audio flag should look identical
Review URL: http://codereview.chromium.org/9826023
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@131089 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
| |
fixing seeking to far destinations in non-http(s) schemes.
BUG=chromium-os:28544
TEST=lots of manual seeking
Review URL: http://codereview.chromium.org/9942003
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@130340 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
| |
Since Demuxers still require asynchronous initialization DemuxerFactory::Build() has been replaced with Demuxer::Initialize(). Since FFmpegDemuxer is the only Demuxer requiring a DataSource it is now passed in via FFmpegDemuxer's constructor.
Now that Demuxer::set_host() is guaranteed to be called prior to initialization we're able to tighten up some code inside ChunkDemuxer. We should still nuke set_host() (see bug 111585) but I'll leave that for a future CL.
BUG=110804, 110809
Review URL: https://chromiumcodereview.appspot.com/9860027
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@130165 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
| |
Preload is a concept that only applies to HTML media elements and is only implemented by BufferedDataSource. Since the preload value is known when BufferedDataSource is created by WebMediaPlayerImpl, we can remove a lot of unnecessary plumbing in the media code.
TEST=amount of data buffered (either visible on controls or via buffered attribute) is the same for each preload value (none, metadata, and auto). http://mastodon.sea/demos/preload contains a test page.
Review URL: https://chromiumcodereview.appspot.com/9864022
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@130004 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
| |
With this patch, we can to pass AddKey from WebKit (via WebMediaPlayerImpl) to the real decryptor in FFmpegVideoDecoder.
Patch by xhwang@chromium.org:
https://chromiumcodereview.appspot.com/9706064/
BUG=117063
TEST=media_unittests
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@129922 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
| |
Also convert Pipeline::Stop() to take a Closure instead of a PipelineStatusCB since the status is always OK for a Stop.
Review URL: http://codereview.chromium.org/9863028
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@129256 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
| |
Looks like my newly added DCHECKs caught our unit tests using the API incorrectly!
BUG=120409
Review URL: https://chromiumcodereview.appspot.com/9864040
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@129197 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
| |
r129192.
TBR=finnur
Review URL: https://chromiumcodereview.appspot.com/9866040
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@129194 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
| |
With the removal of SimpleDataSource in r127309 we no longer require multiple implementations of WebDataSource.
Review URL: https://chromiumcodereview.appspot.com/9836102
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@129192 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
| |
skia to completely avoid calling saveLayer() and all of the performance penalty that that implies.
Review URL: https://chromiumcodereview.appspot.com/9811008
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@129179 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
| |
This addressed TODOs in DataSource::Read() and AudioRendererAlgorithmBase, which led to converting Buffer and SeekableBuffer as well.
Review URL: https://chromiumcodereview.appspot.com/9854031
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@129140 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
| |
JS-created media elements.
BUG=119722
Review URL: http://codereview.chromium.org/9854029
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@128975 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Also adds support for disabling frame dropping in the video renderer so
we can be sure we've seen every frame coming out.
Testing shows that there are issues with threading in the FFmpeg H264
decoder. Running with --video-threads=1 will yield different results
than running multithreaded.
We should probably increase the breadth of our basic playback testing
once we've got a better handle on threaded decoding in FFmpeg.
BUG=118688
TEST=media_unittests, ffmpeg_regression_tests.
Review URL: http://codereview.chromium.org/9716008
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@127320 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
| |
resources, so we now expose it from WebURLLoaderImpl.
BUG=110805
TEST=media layouttests still pass, esp. the data: ones.
Review URL: http://codereview.chromium.org/9718005
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@127309 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
| |
Previously we were relying on the parser for multipart/x-mixed-replace to parse Content-Range. This CL instead introduces a parser that implements HTTP/1.1 (allowing instance-size to be "*").
BUG=104795
Review URL: http://codereview.chromium.org/9703073
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@127232 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
| |
BUG=110309
Review URL: http://codereview.chromium.org/9701082
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@127217 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This is a follow up CL of 125959.
- Rename AudioTimeCB and VideoTimeCB to TimeCB, as the context (VideoRenderer/AudioRenderer already provides clear context).
- Rename PipelineStatusCB callback variable names to status_cb if no names with specific meaning (e.g. seek_cb) are given.
- Rename foo_callback to foo_cb (except for media/audio/).
Note that media/audio also contains a lot of FooCallback types and foo_callback names. This will probably be addressed in another CL.
BUG=none
TEST=none
Review URL: http://codereview.chromium.org/9704046
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@127028 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Two different scenarios are fixed by this:
a) When Range:0- receives a 200 request, don't make a new connection asking for
the same data without the Range:0- request heaeder (bug 104783).
b) When a 4xx or malformed HTTP response is received on a Range:0- request,
don't re-attempt the request without the Range header (bug 105230).
BUG=104783,105230
TEST=awesome scherkus@ tests now pass w/ the extra expectations removed.
Review URL: http://codereview.chromium.org/9699035
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@126970 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
| |
Review URL: https://chromiumcodereview.appspot.com/9702041
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@126775 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Instead of creating these worker threads when the decoder objects
are instantiated, we now do it when Initialize is called.
Doing this avoids spinning a video decoder thread for an audio tag.
BUG=114699,116873
TEST=Thread count in the renderer process goes up by 3 and not 4 when an audio element is created.
Review URL: https://chromiumcodereview.appspot.com/9632024
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@126077 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
ReadCB.
To comply with naming convention in media code. Renaming only, no other changes.
In rtc_video_decoder.cc, explicitly use media::VideoFrame so not to confuse with cricket::VideoFrame.
BUG=none
TEST=none
Review URL: http://codereview.chromium.org/9634012
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@125959 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
| |
We haven't had a second implementation of the interface since MessageLoopFactory was added in r71548.
Review URL: https://chromiumcodereview.appspot.com/9597016
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@125064 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
| |
During playback (before shutdown) WebMediaPlayerClientImpl::paint()
early-returns in the accelerated-rendering case, but during shutdown that isn't
the case and SkCanvasVideoRenderer::paint() can be called. So guard against
that and deal with it gracefully.
Review URL: http://codereview.chromium.org/9474009
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@123885 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
| |
To be used by https://bugs.webkit.org/show_bug.cgi?id=78398.
Review URL: https://chromiumcodereview.appspot.com/9416087
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@123255 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
| |
video decode.
Review URL: http://codereview.chromium.org/9372075
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@122950 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
| |
BufferedDataSource/BufferedResourceLoader.
Review URL: http://codereview.chromium.org/9383020
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@121604 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The documentation of BufferedResourceLoader's start/read callbacks states that it'll return only a tiny subset of the many error codes listed under net/base/net_error_list.h
It's possible to receive an error code of 0 for didFail() that maps neatly to net::OK. The end result is we trick callees into thinking the operation succeeded when, in fact, it did not.
This is a short term fix for bug 112833 until we can replace our use of net::CompletionCallback (see bug 110120).
BUG=112833
Review URL: https://chromiumcodereview.appspot.com/9375005
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@121274 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
| |
BUG=112180
TEST=none
Review URL: https://chromiumcodereview.appspot.com/9344003
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@120714 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
| |
PassAs() exists.
BUG=none
TEST=none
Review URL: http://codereview.chromium.org/9317115
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@120607 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
| |
Seeing as it's a ref-counted proxy object that can outlive the message loops that it is proxying between it should be using a MessageLoopProxy instead of a raw MessageLoop pointer.
BUG=111106
Review URL: https://chromiumcodereview.appspot.com/9330005
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@120606 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
| |
Instead of having clients optionally call Init() (i.e., player_x11, player_wtl) they are forced to pass null callbacks into Start().
Review URL: https://chromiumcodereview.appspot.com/9269022
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@119723 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
windows and linux
"""
Fire canplaythrough as soon as download defers to fix autoplay
Reenables delayed firing of canplaythrough for media elements, and fixes
the bug that had been introduced where a video with autoplay=true sometimes
never starts. With this change, a video with autoplay=true should always
(though not necessarily immediately) start playback on its own.
BUG=106480,73609
TEST=media_unitests, manually checking video files in various conditions
Review URL: https://chromiumcodereview.appspot.com/9113023
TBR=vrk@google.com
Review URL: https://chromiumcodereview.appspot.com/9269027
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@118590 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Reenables delayed firing of canplaythrough for media elements, and fixes
the bug that had been introduced where a video with autoplay=true sometimes
never starts. With this change, a video with autoplay=true should always
(though not necessarily immediately) start playback on its own.
BUG=106480,73609
TEST=media_unitests, manually checking video files in various conditions
Review URL: https://chromiumcodereview.appspot.com/9113023
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@118546 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
render thread.
Since BufferedDataSource and SimpleDataSource are created and initialized on the render thread there's no need to post a task.
Doing so results in some very nice video startup latency reductions as we now initiate the HTTP request as soon as we have the URL. On sites with heavy render thread traffic (i.e., lots of upfront JS processing, starting up GPU process) I measured ~50-150ms start up latency reduction on release builds.
BUG=107324
Review URL: https://chromiumcodereview.appspot.com/9192030
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@118386 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
| |
BUG=107324
TEST=layout tests
Review URL: https://chromiumcodereview.appspot.com/9243016
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@118338 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
| |
Review URL: https://chromiumcodereview.appspot.com/9255022
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@118322 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
| |
WebMediaPlayerImpl::WebMediaPlayerImpl()
BUG=none
TEST=none
TBR=fischman@chromium.org
Review URL: https://chromiumcodereview.appspot.com/9221029
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@118206 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
| |
implementation of the interface.
Three years ago I thought that having a separate interface would be A Good Thing. Needless to say there has never been a case where having an interface defintion of Pipeline came in handy as all clients create and access PipelineImpl objects directly.
Review URL: http://codereview.chromium.org/9243025
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@118082 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
| |
media_log.cc: replaced global AtomicSequenceNumber with LazyInstance.
BUG=94925
TEST=none
Review URL: http://codereview.chromium.org/9225001
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@118026 0039d316-1c4b-4281-b951-d872f2087c98
|