| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
|
|
|
|
|
| |
This removes the name-collision with ::AudioRendererImpl, which lives in
content/renderer/media, and is actually the implementation used in chrome.
BUG=none
TEST=trybots
Review URL: http://codereview.chromium.org/8201018
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@104587 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Hangs:
- AudioRendererImpl: Don't hold lock_ in the call to Join() b/c OnStop wants to
acquire the lock before exiting.
- FFmpegDemuxerStream::Stop: signal EOS to waiting read callbacks (instead of
silently dropping them on the floor) so decoders can exit instead of stalling
(and causing renderers to stall).
Crashes:
- CompositeFilter::Stop: clear out the Seek callback when Stopping.
- FFmpegVideoDecoder::ProduceVideoFrame: early-return if already stopped (racing
with webkit repaints makes this necessary).
Also fixed a bunch of mis-indentation where I saw it.
BUG=98975,98948,98955,96861
TEST=trybots, manual
Review URL: http://codereview.chromium.org/8184003
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@104540 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
| |
This patch implements MMS and SSE detection on x86 CPU.
BUG=None
TEST=Video runs on computers without MMX and SSE
Review URL: http://codereview.chromium.org/8133022
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@104273 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
| |
cluster.
BUG=98714
TEST=FFmpegDemuxerTest::SeekWithCuesBeforeFirstCluster
Review URL: http://codereview.chromium.org/8103011
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@104111 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
| |
input Audio Unit present in OS 10.4 and later.
The AUHAL input Audio Unit is for low-latency audio I/O.
Review URL: http://codereview.chromium.org/7981022
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@104077 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
| |
TBR=scherkus@chromium.org
BUG=98714
Review URL: http://codereview.chromium.org/8137023
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@104062 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
| |
Review URL: http://codereview.chromium.org/8142019
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@104060 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
for example, 10ms for playout.
Before this patch, the alsa scheme sets a frame_avail_wanted as half of the ALSA buffer size, then it checks if the available_frame buffer slot in ALSA is smaller than frame_avail_wanted, if it is, which means that ALSA has more buffer than we need, then it schedule the next time to be FrameToMills(frame_avail_wanted - available_frame). Otherwise, we invoke the next write immediately.
But this scheduling scheme doesn't handle the following cases well:
#1, It has a chance running into a dead lock that we always have less than half of the buffer filled, where it runs
into a busy looping. This happens mostly when the buffer size is small.
#2, We can write more data to ALSA than what it needs.
This patch fixes the problems by initiating the next time for the moment when half of packet is played out. Then it checks with ALSA on how many frames are available,
and do a re-scheduling: if the available frames are not enough for a packet, it schedules the next write for the moment when the buffer for a packet becomes available, if the next write happens in less than 10ms, then it will use 10ms in order to avoid back to back writing; if the existing frames are less than half packet, it make next write
to be immediate.
Review URL: http://codereview.chromium.org/7976047
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@104043 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
| |
introduced in r103961.
VideoFrame dimensions don't change while AVCodecContext dimensions do, so make sure we keep using AVCodecContext for all dimension calculations for now.
Review URL: http://codereview.chromium.org/8133011
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@104035 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
On linux, snd_pcm_delay API will be used to get the delay value from ALSA;
On mac, the AudioQueue implementation will just use the buffer size as delay value since we may not use this impl for recording;
the low-latency AudioUnits implementation will use some AudioUnitGetProperty() API to get the accurate delay value from the driver;
On windows, for the Wave implementation, based on the tests we do, it should be OK to use the buffer size as the delay value;
for the to-be-implemented core audio implementation, we will see what is the appropriate way to get the delay there.
Review URL: http://codereview.chromium.org/8068005
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@104002 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This CL prohibits the media pipeline from posting non-teardown related tasks
onto its message loop during teardown. The CL includes a unit test to test
for this.
BUG=96849
TEST=media_unittests
Review URL: http://codereview.chromium.org/8116019
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@103974 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
| |
Added pix_fmt field to the VideoDecoderConfig class. The pixel format is passed to the
codec_context_ and used to correctly initialize VideoFrames.
Patch by shadi@chromium.org:
http://codereview.chromium.org/8052002/
BUG=95642
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@103961 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
the layout test analyzer.
Due to this issue, some test group fail (e.g., fast/encoding).
The solution is to return empty string as description in that case.
Other changes are added:
* Fix several unit test issue
* support svg file for layout tests
* sort out command line generation in the runner.
* add owner's email address for a given test group in the dashboard (if available in run config file)
Review URL: http://codereview.chromium.org/8118024
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@103958 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
| |
Most of the modifications are cosmetic change.
Review URL: http://codereview.chromium.org/8103013
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@103732 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
| |
Similar to AudioDecoderConfig that was introduced in r102183, add Initialize() and IsValidConfig() to VideoDecoderConfig and update documentation. This helps pave the way to remove DemuxerStream::GetAVStream().
Since natural_size isn't used by neither VideoDecoderConfig nor VideoDecodeEngines, remove it from both and replace VideoCodecInfo with a bool.
Review URL: http://codereview.chromium.org/8084021
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@103603 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
| |
file.
BUG=none
TEST=trybots
Review URL: http://codereview.chromium.org/7966030
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@103599 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
| |
BUG=none
TEST=media_unittests, trybots
Review URL: http://codereview.chromium.org/8099001
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@103553 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
| |
element boundries.
BUG=86536
TEST=ChunkDemuxerTest::TestAppendingInPieces
Review URL: http://codereview.chromium.org/7981024
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@103543 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
| |
BUG=87490
TEST=compile with gcc 4.6
Review URL: http://codereview.chromium.org/8050008
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@103513 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
- mock_task.{h,cc} is gone.
- MockCallback is now MockClosure, and its commentary brought up to date (the
commentary checked in was a mix of old and attempt-at-new that never
materialized)
- NewExpectedCallback is NewExpectedClosure.
A bit of background on FooCallback vs. FooCB: when acolwell@ & I did the first
conversions to the new world, everything was named FooCallback. I proposed
using FooCB for the migrated ones as a way to both easily visually differentiate
as well as save characters (!). Now that we have an additional "don't typedef
Closures" guideline I like having FooCB for non-closure new-style callbacks, and
FooClosure for new-style closures.
BUG=none
TEST=trybots
Review URL: http://codereview.chromium.org/8085017
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@103464 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
| |
They've been unused for a year and are trivial to revert should we need them again.
Review URL: http://codereview.chromium.org/8083011
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@103430 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
| |
build.
R=jam@chromium.org, darin@chromium.org
BUG=90442
TEST=
Review URL: http://codereview.chromium.org/8054037
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@103394 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Mostly this was a rote conversion, replacing:
- Pass-by-pointer CallbackN<>'s become pass-by-const-ref Callback<>'s.
- scoped_ptr<CallbackN<>> members become Callback<> members.
- several dedicated FooCallback typedefs became base::Closure.
Because it was only used in a small handful of places and only in one place
profitably, I deleted AutoCallbackRunner.
Because it tickles a Bind bug I disabled mfdecoder in .gyp (about to get deleted in a scherkus CL).
BUG=none
TEST=media_tests, trybots
Review URL: http://codereview.chromium.org/8071007
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@103376 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
| |
These methods served AdaptiveDemuxer which died in r103279.
BUG=none
TEST=trybots
Review URL: http://codereview.chromium.org/8084005
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@103334 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
| |
BUG=none
TEST=trybots
Review URL: http://codereview.chromium.org/8065023
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@103279 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
| |
This change fixes a stupid problem in getcpuid() (I forgot declaring cpuid breaks rbx) and re-enables my SSSE3-optimized RGB->YUV conversion.
BUG=none
TEST=YUVConvertTest.*
Review URL: http://codereview.chromium.org/7979016
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@103237 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Since it/its proxy are |media::VideoCapture::EventHandler|s, they must remain
alive from the |StartCapture()| call until |OnRemoved()| is received.
(Precisely, the |PPB_VideoCapture_Impl| owns a |PlatformVideoCapture(Impl)|,
which owns a |VideoCaptureHandlerProxy|. Keeping the |PPB_VideoCapture_Impl|
alive keeps all these things alive.)
BUG=none
TEST=Closing a page with a PPAPI plugin using the video capture interface
doesn't cause the renderer to crash. Other similar things should also work
more or less properly (and at least not crash).
Review URL: http://codereview.chromium.org/8052023
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@103138 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
| |
This is to allow client to know when the event handler can be deleted.
BUG=none
TEST=trybots
Review URL: http://codereview.chromium.org/8037055
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@103016 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
| |
Review URL: http://codereview.chromium.org/8060018
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@102995 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
| |
This change sets the asm defines so that code in media/ doesn't require text
relocations on 32-bit Linux.
BUG=87704
TEST=Try running Chrome on Fedora
Review URL: http://codereview.chromium.org/8046012
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@102920 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
| |
group names defined in the CSV file). The runner also creates dashboard page to
summarize the results in simple HTML table.
Also, fixed the issue when there is no previous result to compare in the result directory. In that case, it still updates the trend graph.
Review URL: http://codereview.chromium.org/7918010
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@102568 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Conditionalize the ffmpeg dependency and exclude files which rely on it
for the media and media_unittest targets. Disable the ffmpeg_unittests,
ffmpeg_tests and media_bench for Android targets as they require it.
This change also conditionalizes the inclusion of yasm_compile.gyp, as
yasm is only used for the ia32 and x86 target architectures.
BUG=
TEST=
Review URL: http://codereview.chromium.org/7977023
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@102474 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
of content and also move a couple of functions to content that should've
been moved earlier.
BUG=90442
TBR=jam@chromium.org,allanwoj@chromium.org
TEST=
Review URL: http://codereview.chromium.org/7969028
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@102405 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
build of"
TBR=jam@chromium.org
BUG=90442
TEST=
Review URL: http://codereview.chromium.org/7967013
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@102334 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
| |
content.
R=jam@chromium.org,crogers@google.com,allanwoj@chromium.org
BUG=90442
TEST=none
Review URL: http://codereview.chromium.org/7981049
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@102332 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
| |
Instead add DemuxerStream::audio_decoder_config() to break FFmpegAudioDecoder's dependency on the AVCodecContext object maintained by FFmpegDemuxer.
Review URL: http://codereview.chromium.org/7867051
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@102183 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The Birth/Death tracking of tasks has been moved out-of-band into MessageLoop's PendingTask structure.
Thus, Task no longer needs to inherit from Tracked. Since Task was the only child of Tracked, delete the Tracked class and move Location to its own file.
BUG=none
TEST=builds
Review URL: http://codereview.chromium.org/7879006
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@102132 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
reorderings.
Also makes it very explicit that multi-threaded access is occuring.
BUG=24801
TEST=will see how TSan handles this.
Review URL: http://codereview.chromium.org/7888055
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@102067 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
| |
Fixes shared build errors for windows and linux.
BUG=18941,94861
TEST=shared builds compile
TBR=acolwell
Review URL: http://codereview.chromium.org/7932005
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@101808 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
| |
Fix remaining users to use base/memory/scoped_ptr.h.
BUG=
TEST=
Review URL: http://codereview.chromium.org/7930009
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@101715 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
| |
BUG=93379
TEST=media_unittests, layout tests
Review URL: http://codereview.chromium.org/6901135
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@101607 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
video files.
BUG=NONE
TEST=NONE
Review URL: http://codereview.chromium.org/7888020
TBR=vrk@google.com
Review URL: http://codereview.chromium.org/7918033
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@101570 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
| |
AudioDecoderConfig was being used as a struct for outputting format information to an AudioRenderer. This was confusing and in contrast to VideoDecoderConfig, which is is actually used as input to configure a video decoder!
Review URL: http://codereview.chromium.org/7796033
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@101563 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
| |
BUG=NONE
TEST=NONE
Review URL: http://codereview.chromium.org/7888020
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@101551 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
After rewriting assembly code in YASM we can finally move all these
different versions of files in the same folder, i.e. media/base/simd.
After this change the main entry point will be:
yuv_convert.cc and yuv_convert.h
It then calls into the internal functions under media/base/simd.
After this change I'll move all the color conversion files to
media/csc.
BUG=None
TEST=Tree is gree
Review URL: http://codereview.chromium.org/7888012
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@101507 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
| |
TEST=media_unittests
BUG=96773
Review URL: http://codereview.chromium.org/7891050
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@101429 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
| |
BUG=18941,94861
TEST=video-aspect-ratio.html
Review URL: http://codereview.chromium.org/7864009
TBR=vrk@google.com
Review URL: http://codereview.chromium.org/7919006
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@101420 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
| |
BUG=18941,94861
TEST=video-aspect-ratio.html
Review URL: http://codereview.chromium.org/7864009
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@101418 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
| |
Added functionality to run the analzyer for a general layout test group
such as 'compositing'.
Review URL: http://codereview.chromium.org/7888061
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@101318 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This is essentially identical to the GetAudioHardwareSampleRate API, except
we get the "optimal" hardware buffer size to be used.
BUG=None
TEST=None
Review URL: http://codereview.chromium.org/7837030
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@101249 0039d316-1c4b-4281-b951-d872f2087c98
|