summaryrefslogtreecommitdiffstats
path: root/webkit/media
Commit message (Collapse)AuthorAgeFilesLines
* Upstream WebVideoFrameAndroid and fix some bugs in MediaPlayerBridge codeqinmin@chromium.org2012-04-122-2/+2
| | | | | | | | | | | | | | | 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
* Don't pause-and-buffer non-range-supporting streams.fischman@chromium.org2012-04-121-0/+5
| | | | | | | | | 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
* Stop the static_cast<> & size_t madness! (at least in ↵fischman@chromium.org2012-04-122-35/+30
| | | | | | | | 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
* Remove virtual attribute from a bunch of BufferedResourceLoader methods.scherkus@chromium.org2012-04-114-25/+20
| | | | | | | | 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
* Replace BufferedResourceLoader's usage of net error codes with a simpler set ↵scherkus@chromium.org2012-04-115-149/+152
| | | | | | | | | | 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
* Make FileStream::Seek async and add FileStream::SeekSync for sync operationkinuko@chromium.org2012-04-111-0/+1
| | | | | | | | | 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
* Add "filesystem" to the list of media-serving schemes logged to UMA.fischman@chromium.org2012-04-111-1/+3
| | | | | | Review URL: http://codereview.chromium.org/10038006 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@131700 0039d316-1c4b-4281-b951-d872f2087c98
* Cull unnecessary media::VideoFrame::Formats from the enum.fischman@chromium.org2012-04-111-12/+0
| | | | | | | | | | | | 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
* Report pipeline errors even during all phases of lifecycle.fischman@chromium.org2012-04-101-34/+38
| | | | | | | | | | | | (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
* Remove FFmpegDemuxer::first_seek_hack_ and related unnecessary code.scherkus@chromium.org2012-04-091-12/+0
| | | | | | | | | | | | 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
* Rename AudioRendererBase and AudioRendererAlgorithmBasevrk@chromium.org2012-04-091-2/+2
| | | | | | | | | | | | | 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
* Merge AudioRendererImpl and AudioRendererBase; add NullAudioSinkvrk@chromium.org2012-04-061-2/+4
| | | | | | | | | | | | | | | 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
* De-craxify BufferedResourceLoader::didReceiveResponse()'s control flow, ↵fischman@chromium.org2012-04-033-22/+28
| | | | | | | | | | | 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
* Remove DemuxerFactory and URL parameter from Pipeline.scherkus@chromium.org2012-04-024-22/+32
| | | | | | | | | | | | 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
* Move DataSource::SetPreload() to BufferedDataSource.scherkus@chromium.org2012-03-316-21/+46
| | | | | | | | | | 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
* Expose decryptor to WebMediaPlayerImpl.scherkus@chromium.org2012-03-305-27/+56
| | | | | | | | | | | | 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
* Don't report errors twice to pipeline clients.fischman@chromium.org2012-03-271-3/+4
| | | | | | | | 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
* Fix BufferedResourceLoaderTest.HasSingleOrigin.scherkus@chromium.org2012-03-271-6/+3
| | | | | | | | | | 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
* Disable BufferedResourceLoaderTest.HasSingleOrigin due to DCHECKs added in ↵scherkus@chromium.org2012-03-271-1/+3
| | | | | | | | | | 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
* Fold WebDataSource into BufferedDataSource.scherkus@chromium.org2012-03-2710-94/+54
| | | | | | | | 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
* Add explicit alpha parameter to the mediaplayer's paint method. This allows ↵reed@google.com2012-03-277-55/+48
| | | | | | | | 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
* Replace size_t with int in a few media classes.scherkus@chromium.org2012-03-274-26/+22
| | | | | | | | 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
* Fix reporting of Media.AcceleratedCompositingActive to account for ↵fischman@chromium.org2012-03-262-10/+10
| | | | | | | | | | | 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
* Add frame hashing to PipelineIntegrationTests.dalecurtis@chromium.org2012-03-171-1/+2
| | | | | | | | | | | | | | | | | | | | 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
* BufferedDataSource wants to know the content length of non-http(s) ↵fischman@chromium.org2012-03-176-776/+3
| | | | | | | | | | | 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
* Don't trigger second request on missing instance size in Content-Range.fischman@chromium.org2012-03-166-14/+123
| | | | | | | | | | 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
* Trust servers that claim "Accept-Ranges: bytes" but serve a 200 for Range:0-fischman@chromium.org2012-03-162-3/+20
| | | | | | | | | 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
* Callback renaming in media code.xhwang@chromium.org2012-03-154-7/+7
| | | | | | | | | | | | | | | | | | 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
* Reduce unnecessary network connections.fischman@chromium.org2012-03-154-63/+17
| | | | | | | | | | | | | | | | 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
* Do not change video decoder collection unless it is indeed a media stream.wjia@chromium.org2012-03-141-5/+5
| | | | | | Review URL: https://chromiumcodereview.appspot.com/9702041 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@126775 0039d316-1c4b-4281-b951-d872f2087c98
* Create video and audio decoder threads on demand.tommi@chromium.org2012-03-111-2/+7
| | | | | | | | | | | | | 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
* Rename StatisticsCallback to StatisticsCB and DataSource::ReadCallback to ↵xhwang@chromium.org2012-03-104-7/+7
| | | | | | | | | | | | | | | 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
* Fold media::MessageLoopFactoryImpl into media::MessageLoopFactory.scherkus@chromium.org2012-03-061-1/+0
| | | | | | | | 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
* Avoid a DCHECK during navigate-away from a video being HW-rendered.fischman@chromium.org2012-02-281-6/+10
| | | | | | | | | | | | 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
* Add texture target field to video frame (for use by native textures).sievers@chromium.org2012-02-232-2/+9
| | | | | | | | 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
* Reimplement r122778 to fix BuildMediaStreamCollection without breaking HW ↵fischman@chromium.org2012-02-221-0/+9
| | | | | | | | 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
* Clean up callback variable names and comments inside ↵scherkus@chromium.org2012-02-114-79/+80
| | | | | | | | 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
* Return net::ERR_FAILED when BufferedResourceLoader::didFail() is called.scherkus@chromium.org2012-02-092-8/+34
| | | | | | | | | | | | | | 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
* Fix re-entrancy bug in SimpleDataSource::Abort() introduced in r118338.fischman@chromium.org2012-02-073-14/+37
| | | | | | | | | 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
* Remove explicit casting needed from the .Pass() switchover, now that ↵fischman@chromium.org2012-02-061-1/+1
| | | | | | | | | | | | 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
* Update WebMediaPlayerProxy to use MessageLoopProxy.scherkus@chromium.org2012-02-063-22/+24
| | | | | | | | | | 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
* Fold Pipeline::Init() into Pipeline::Start().scherkus@chromium.org2012-01-301-7/+3
| | | | | | | | 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
* Revert 118546 because it caused PrerenderHTML5VideoNetwork to timeout on ↵sadrul@chromium.org2012-01-213-42/+28
| | | | | | | | | | | | | | | | | | | | | | 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
* Fire canplaythrough as soon as download defers to fix autoplayvrk@google.com2012-01-203-28/+42
| | | | | | | | | | | | | | 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
* Fold InitializeTask() into Initialize() as the method is called on the ↵scherkus@chromium.org2012-01-195-103/+61
| | | | | | | | | | | | | | 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
* Replace DataSourceFactory with explicitly initialized DataSources.scherkus@chromium.org2012-01-1916-397/+263
| | | | | | | | | 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
* Rename webkit_media::VideoRendererImpl to webkit_media::SkCanvasVideoRenderer.scherkus@chromium.org2012-01-195-41/+41
| | | | | | Review URL: https://chromiumcodereview.appspot.com/9255022 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@118322 0039d316-1c4b-4281-b951-d872f2087c98
* Fix incorrect comment about object ownership in ↵crogers@google.com2012-01-191-1/+0
| | | | | | | | | | | 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
* Fold media::PipelineImpl into media::Pipeline as there is only one ↵scherkus@chromium.org2012-01-183-7/+7
| | | | | | | | | | 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
* buffers.cc: replaced global TimeDelta constants with fully-inlined functions.fischman@chromium.org2012-01-183-4/+4
| | | | | | | | | | | 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