| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Since the main OLA loop refuses to process data when there isn't enough to process, it was possible in some situations for OLA to hold on to a few remaining bytes and never be completely "finished". This resulted in the ended event not firing, which leads to looping not working.
The solution was to simply consume all remaining data and replace it with muted audio in the destination buffer. Not the best solution (we end up losing <8ms of audio at the end), but it works and is a safe fix.
I also lowered the OLA threshold to 0.5x since we sound the same as other implementations so why not :P
TEST=media_unittests, ended+looping when rate != 1.0f
BUG=19105,19856
Review URL: http://codereview.chromium.org/174270
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@24189 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
| |
Review URL: http://codereview.chromium.org/174261
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@24029 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
BUG=19396
TEST=Open a video, seek to any position, the thumb should stops a bit and then goes forward from there.
Preventing the slider thumb from jumping around after seek
by freezing the clock until we get a valid time update from
the audio renderer.
Review URL: http://codereview.chromium.org/173072
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@23937 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
| |
Changes the threading model from one thread per stream to one shared thread. Also, redoes the alsa reading/buffering logic to assume an asynchronous data source, and respect the different packet sizes. The Alsa device is set to non-blocking now. State transitions are cleaned up, and the threading semantics are reworked. Now linux audio will no longer crash on shutdown, seek, pause, or tab close. This implementation does still leak though. :( The leak will be fixed in another CL.
Review URL: http://codereview.chromium.org/160497
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@22414 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
| |
More or less a change to pull out time management from PipelineImpl into a new class ClockImpl. Biggest difference is ClockImpl will use the system clock + linear interpolation to provide a more "precise" representation of the current playback position.
BUG=16508
TEST=a/v sync should remain the same, currentTime should report more precise values
Review URL: http://codereview.chromium.org/159517
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@21882 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
added complexity.
PipelineInternal now directly implements FilterHost and uses an std::map to safely cast from MediaFilter to specialized filter subclasses.
PipelineImpl also provides the same set of functions as FilterHost to allow PiplineInternal to acquire the lock and safely update data.
BUG=17107
TEST=media_unittests should still pass
Review URL: http://codereview.chromium.org/155739
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@21287 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Re-trying the previous CL. The last change got reverted because of valgrind
failure.
TBR=scherkus
Original CL: http://codereview.chromium.org/155471
Review URL: http://codereview.chromium.org/159167
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@21242 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
| |
server, but not buildbot. doh
BUG=17304
TEST=buildbot has different warnings than try server. this patch reenables the qtfaststart build with 2 warnings fixed.
Review URL: http://codereview.chromium.org/155834
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@21215 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
| |
TBR=scherkus
Review URL: http://codereview.chromium.org/159122
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@21154 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
| |
Review URL: http://codereview.chromium.org/159121
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@21153 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
startup latency.
This version handles 'free' atoms, which are produced by mp4box and other tools, but impact ffmpeg seeks on playback.
The code follows ffmpeg coding standards.
BUG=17304
TEST=instrument seeks or measure latency performance and play videos with and without qt-faststart applied to the data.
Review URL: http://codereview.chromium.org/149439
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@21150 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
| |
Review URL: http://codereview.chromium.org/155471
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@21137 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
| |
BUG=16500
TEST=play youtube in different window. play another video with video tag and mute sound and make sure it does not affect youtube.
Review URL: http://codereview.chromium.org/159092
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@21091 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Also includes unit tests for AudioRendererBase and VideoRendererBase.
I had to rollback my first attempt at this change. Original review: http://codereview.chromium.org/155469
BUG=16014,16031
TEST=media_unittests, layout tests
Review URL: http://codereview.chromium.org/155608
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@20836 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
| |
Seek() + callback."
Review URL: http://codereview.chromium.org/149682
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@20745 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
| |
callback.
BUG=16014,16031
TEST=media_unittests, layout tests
Review URL: http://codereview.chromium.org/155469
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@20744 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
| |
The most important part was refactoring PipelineImpl tests in preparation for message loop injection. The old mocks just did not work *at all* with my message loop injection patch.
BUG=16008
TEST=media_unittests should pass and not flake out
Review URL: http://codereview.chromium.org/149423
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@20412 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
MockFilterHost.
Also deleted the old MockPipeline and MockFilterHost code as it has been completely deprecated.
BUG=16008
TEST=FFmpegDemuxerTest and FFmpegVideoDecoderTest
Review URL: http://codereview.chromium.org/149366
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@20242 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
| |
algorithms. May be useful in other contexts.
BUG=16011
TEST=src/media/base/buffer_queue_unittest.cc
Review URL: http://codereview.chromium.org/155193
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@20211 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
| |
ffmpeg_video_decoder_unittest.cc is a much more comprehensive test!
BUG=16008
TEST=none
Review URL: http://codereview.chromium.org/155198
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@20162 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
| |
BUG=16011
TEST=none
Review URL: http://codereview.chromium.org/151120
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@19994 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
| |
executables.
TEST=everything should build with no test hangs
BUG=15664
Review URL: http://codereview.chromium.org/151124
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@19746 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
| |
TEST=FFmpegDemuxer tests should continue to run
BUG=none
Review URL: http://codereview.chromium.org/147046
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@19078 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
| |
BUG=none
TEST=none
Review URL: http://codereview.chromium.org/141059
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@18970 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
| |
Review URL: http://codereview.chromium.org/118395
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@18876 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
| |
MockReader.
Previously only used by FFmpegDemuxerTest, it's not templated so we can use it with FFmpegVideoDecoderTest and FFmpegAudioDecoderTest and any other sort of demuxer or decoder for that matter.
Review URL: http://codereview.chromium.org/126027
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@18547 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
| |
symbols.
Also move some of the old mocks into their own namespace. They were causing linker confusion due to inlining or something which generated bad test executables that segfaulted.
Review URL: http://codereview.chromium.org/126170
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@18457 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
| |
Step one of having a completely mocked FFmpeg library.
Review URL: http://codereview.chromium.org/126160
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@18455 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
| |
Review URL: http://codereview.chromium.org/123030
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@18233 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
| |
Pure refactor, functionality remains the same.
Review URL: http://codereview.chromium.org/122018
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@18213 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
| |
The change actually supports arbitrary write size but
write size greater than read size (packet size) is prohibited
by an explicit check.
Review URL: http://codereview.chromium.org/118170
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@17686 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
| |
Review URL: http://codereview.chromium.org/115692
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@16778 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Explicitly disable it (/INCREMENTAL:NO) for Release, and for the
following targets that require it:
chrome.dll
interactive_ui_tests.exe
perf_tests.exe
unit_tests.exe
Explicitly specificy /SUBSYSTEM:CONSOLE as default for linking,
and match current practice by overriding with /SUBSYSTEM:WINDOWS for:
chrome.exe
chrome.dll
media_player.exe
sandbox_poc.exe
TEST=none
BUG=none
Review URL: http://codereview.chromium.org/115664
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@16698 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
| |
Review URL: http://codereview.chromium.org/115645
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@16639 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
| |
TBR=ajwong
Review URL: http://codereview.chromium.org/115641
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@16626 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
| |
Review URL: http://codereview.chromium.org/115638
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@16622 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
| |
Review URL: http://codereview.chromium.org/115624
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@16584 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
| |
responsible for buffering data from the data source, and writing the buffers to the output device. This design blocks while waiting for data to be retrieved from the data source, which can lead to unnecessary buffer underruns in the audio device. This will be solved later after the non-blocking AudioSource interface is written.
Review URL: http://codereview.chromium.org/115276
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@16583 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
| |
Defined the base interface SeekableBuffer and a thread safe implemntation of
ThreadSafeSeekableBuffer. This class is to be used for media resource loading
that does the meat of buffer queueing and handles short seeking for short distance
out-of-order read patterns.
Review URL: http://codereview.chromium.org/113213
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@16348 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
| |
All functions do 2 pixels at a time.
90 and 270 rotations implemented.
YV16 refactored. YV12 code accepts a YuvType that allows the same code to support YV16 as well.
Special case for half size removed.
Special case for doubling added. 3.62 ms versus 8.62 for general purpose code.
Review URL: http://codereview.chromium.org/113407
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@16334 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
| |
timing frame presentation.
Simple class, but getting the details right are very tricky. There are additional tweaks we can make (such as counting ticks since the last audio callback), but for now this gets the job done.
Review URL: http://codereview.chromium.org/113360
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@16062 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
| |
row and high levels that step thru the image.
Low level is implemented in MMX assembly.
Mac and Linux use reference code for this version.
Review URL: http://codereview.chromium.org/113247
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@16011 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
http://codereview.chromium.org/100195
The effective changes were:
1) Adding av_register_protocol into the def file for ffmpeg in windows.
2) Commenting out the drawing glue code for non-skia platforms.
3) Fixing some mac compilation error caused by code drift.
Review URL: http://codereview.chromium.org/99306
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@15611 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
| |
TBR=mark
Review URL: http://codereview.chromium.org/108039
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@15341 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This module contains all event handling for menus in the Media Player.
The implementation is WTL (Windows Template Library) based.
The main menu is:
File Edit View Play Options Help
File opens/closes movies and has print features.
Edit has copy/paste features.
View has spatial controls, such as scaling, and tool and status bars and a properties dialogue box.
Play has temporal controls, such as play speed and pause.
Options controls details such as Audio and Video on/off.
Help is just an about box.
Right clicking brings up a context menu with edit and view items.
A tool bar exposes the most common menu items as buttons.
Hotkeys (accelerators) are mapped to most menu items.
A .RC file is used to edit the menus using the resource editor in visual studio.
Dialogue boxes are each handled by a different .h. ie props.h for properties.
Mainfrm.h does some minor dialogue boxes directly, such as the file selector and alert boxes for errors.
Review URL: http://codereview.chromium.org/99087
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@15311 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
| |
windows."
This reverts commit 9c23aa9006918e7091742e1826181db081a16a65.
TBR=evan
Review URL: http://codereview.chromium.org/101020
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@15121 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
| |
The code still crashes when trying to play a video, but this will allow debugging.
Review URL: http://codereview.chromium.org/100195
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@15117 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
| |
Review URL: http://codereview.chromium.org/99107
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@14702 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
| |
Review URL: http://codereview.chromium.org/93082
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@14365 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* Set $RPATH to $LIB_DIR in the SCons configuration.
* Add missing dependencies:
* net/net.gyp:net
=> testing/gtest.gyp:gtest
* third_party/libxml/libxml.gyp:xmlcatalog
=> third_party/icu38/icu38.gyp:icuuc
* chrome/chrome.gyp:perf_tests
=> renderer
=> views
=> webkit/webkit.gyp:glue
* Add files:
* third_party/WebKit/WebCore/loader/icon/IconRecord.cpp
* third_party/WebKit/WebCore/page/Coordinates.cpp
* skia/sgl/SkUnPreMultiply.cpp
* Exclude on Linux:
* chrome/views/controls/scroll_view.cc
* chrome/views/focus/external_focus_tracker.cc
* media/filter/ffmpeg_demuxer.{cc,h}
* Remove files:
* third_party/WebKit/WebCore/Configurations/Version.xcconfig
* Sort the chrome.gyp:views linux exclusion list.
* DEPS roll for $SHLINKFLAGS settings in gyp.
Review URL: http://codereview.chromium.org/88058
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@14166 0039d316-1c4b-4281-b951-d872f2087c98
|