summaryrefslogtreecommitdiffstats
path: root/media
Commit message (Collapse)AuthorAgeFilesLines
* Call AtExitManager earlier in player app to avoid hitting DCHECKs.scherkus@chromium.org2009-05-081-2/+2
| | | | | | | | TBR=fbarchard Review URL: http://codereview.chromium.org/115148 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@15696 0039d316-1c4b-4281-b951-d872f2087c98
* Revert r15615, build errors on linux and mac.sgk@google.com2009-05-087-261/+102
| | | | | | Review URL: http://codereview.chromium.org/113135 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@15616 0039d316-1c4b-4281-b951-d872f2087c98
* YUV scaler do horizontal mirror.fbarchard@chromium.org2009-05-087-102/+261
| | | | | | Review URL: http://codereview.chromium.org/106002 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@15615 0039d316-1c4b-4281-b951-d872f2087c98
* Retry of enabling video on linux. See related review: ↵ajwong@chromium.org2009-05-086-19/+41
| | | | | | | | | | | | | 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
* Moved FFmpegDemuxer tests into the same anonymous namespace as ↵scherkus@chromium.org2009-05-081-2/+2
| | | | | | | | | | | | FFmpegDemuxerTest. Quick fix to prevent warnings on Mac. TBR=ajwong Review URL: http://codereview.chromium.org/113132 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@15603 0039d316-1c4b-4281-b951-d872f2087c98
* Change NullAudioRenderer to sleep for at least one millisecond to avoid ↵scherkus@chromium.org2009-05-061-1/+5
| | | | | | | | spinning the CPU. Review URL: http://codereview.chromium.org/108041 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@15356 0039d316-1c4b-4281-b951-d872f2087c98
* Remove embedded manifest from media player.scherkus@chromium.org2009-05-061-16/+2
| | | | | | | | TBR=fbarchard Review URL: http://codereview.chromium.org/115002 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@15355 0039d316-1c4b-4281-b951-d872f2087c98
* Removed duplicate entries in media.gyp.scherkus@chromium.org2009-05-051-2/+0
| | | | | | | | 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
* Media Player mainfrm.hfbarchard@chromium.org2009-05-056-22/+775
| | | | | | | | | | | | | | | | | | | | | | | 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
* Lands http://codereview.chromium.org/99349 for Ryan.sky@chromium.org2009-05-041-1/+5
| | | | | | | | | | | | | | Comments from Ryan: Some small changes to get chromium building on ARM. I tested these using the standard Linux tool chain and crosstools-ng. BUG=none TEST=none Review URL: http://codereview.chromium.org/99365 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@15241 0039d316-1c4b-4281-b951-d872f2087c98
* media player movie functions to bind WTL menu events to pipeline.fbarchard@chromium.org2009-05-043-6/+192
| | | | | | Review URL: http://codereview.chromium.org/102002 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@15240 0039d316-1c4b-4281-b951-d872f2087c98
* Added media player File->Last to play the most recent movie again.fbarchard@chromium.org2009-05-044-15/+17
| | | | | | Review URL: http://codereview.chromium.org/100149 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@15239 0039d316-1c4b-4281-b951-d872f2087c98
* media player props.h file (properties)fbarchard@chromium.org2009-05-021-0/+314
| | | | | | Review URL: http://codereview.chromium.org/99114 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@15131 0039d316-1c4b-4281-b951-d872f2087c98
* Revert "Enable video in posix builds and remove unneeded ifdefs to guard ↵ajwong@chromium.org2009-05-015-45/+20
| | | | | | | | | | | | 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
* Enable video in posix builds and remove unneeded ifdefs to guard windows.ajwong@chromium.org2009-05-015-20/+45
| | | | | | | | 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
* Third installement of low level audio for maccpu@chromium.org2009-04-302-14/+130
| | | | | | | | | | | - Finally audio playback wired - Takes into account initial buffer fill change of last week - Two 'can you hear this?' unit tests added Review URL: http://codereview.chromium.org/92131 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@15017 0039d316-1c4b-4281-b951-d872f2087c98
* Add comment to media bench clarifying library initialization.ajwong@chromium.org2009-04-301-1/+7
| | | | | | Review URL: http://codereview.chromium.org/99081 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@14927 0039d316-1c4b-4281-b951-d872f2087c98
* Refactored FFmpegDemuxerTest to use a test fixture, fixing flakiness in the ↵scherkus@chromium.org2009-04-301-138/+131
| | | | | | | | | | process. BUG=10863 Review URL: http://codereview.chromium.org/100178 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@14926 0039d316-1c4b-4281-b951-d872f2087c98
* media player wtl_render - video rendererfbarchard@chromium.org2009-04-302-0/+59
| | | | | | Review URL: http://codereview.chromium.org/99117 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@14922 0039d316-1c4b-4281-b951-d872f2087c98
* player_wtl main entry point separated from the rest of media player for code ↵fbarchard@chromium.org2009-04-291-0/+96
| | | | | | | | review. Review URL: http://codereview.chromium.org/56076 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@14829 0039d316-1c4b-4281-b951-d872f2087c98
* Fixes bug where NullAudioRenderer would join a previously joined thread.scherkus@chromium.org2009-04-291-1/+3
| | | | | | | | TBR=hclam Review URL: http://codereview.chromium.org/100135 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@14809 0039d316-1c4b-4281-b951-d872f2087c98
* Clean up FFmpeg media formats and switch to using ↵scherkus@chromium.org2009-04-296-47/+12
| | | | | | | | | | av_get_bits_per_sample_format(). Before we were relying on codecs setting bits_per_raw_sample, which turns out isn't a valid assumption at all (i.e., vorbis). However, codecs always set the sample format so we can use the FFmpeg utility function av_get_bits_per_sample_format() to convert the SampleFormat enum to an integer number of bits. Review URL: http://codereview.chromium.org/99160 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@14808 0039d316-1c4b-4281-b951-d872f2087c98
* media player list management.fbarchard@chromium.org2009-04-281-0/+127
| | | | | | Review URL: http://codereview.chromium.org/100078 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@14800 0039d316-1c4b-4281-b951-d872f2087c98
* Adds a second vector of streams to FFmpegDemuxer to handle re-mapped ↵scherkus@chromium.org2009-04-283-22/+51
| | | | | | | | | | | | | | | | | | | | | audio/video streams. For media containing non-audio/video streams we were properly exposing the correct streams via Demuxer::GetStream() (i.e., no data streams were exposed) however we weren't properly re-routing the packets to the correct streams during demuxing. Before: Media contains [DATA, AUDIO, VIDEO] We create supported vector [AUDIO, VIDEO] When demuxing a packet who says they are from stream 1 (AUDIO), we would incorrectly assign it to VIDEO After: Media contains [DATA, AUDIO, VIDEO] We create supported vector [AUDIO, VIDEO] We create extra packet vector [NULL, AUDIO, VIDEO] When demuxing, we now correctly assign it to the proper stream and automatically free unused packets Review URL: http://codereview.chromium.org/100085 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@14742 0039d316-1c4b-4281-b951-d872f2087c98
* media player resource header file. Mechanically generated.fbarchard@chromium.org2009-04-282-20/+81
| | | | | | Review URL: http://codereview.chromium.org/99107 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@14702 0039d316-1c4b-4281-b951-d872f2087c98
* media player view window for painting frames to the display with YUV ↵fbarchard@chromium.org2009-04-281-0/+392
| | | | | | | | conversion and scaling. Review URL: http://codereview.chromium.org/100075 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@14701 0039d316-1c4b-4281-b951-d872f2087c98
* stdafx for precompiled stdafx generation in media player.fbarchard@chromium.org2009-04-282-0/+42
| | | | | | Review URL: http://codereview.chromium.org/100074 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@14694 0039d316-1c4b-4281-b951-d872f2087c98
* Fix a crash with <video>hclam@chromium.org2009-04-271-1/+1
| | | | | | | | | | | | Having typo in the file, causing a different dll loaded for <video>. When initializing ffmpeg since avformat-52.dll is not loaded, it tries to do LoadLibrary within sandbox and kaboom! TBR=scherkus Review URL: http://codereview.chromium.org/99024 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@14614 0039d316-1c4b-4281-b951-d872f2087c98
* Prototype audio time shift.fbarchard@chromium.org2009-04-237-56/+82
| | | | | | Review URL: http://codereview.chromium.org/92007 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@14366 0039d316-1c4b-4281-b951-d872f2087c98
* Resource file for media player.fbarchard@chromium.org2009-04-232-12/+510
| | | | | | Review URL: http://codereview.chromium.org/93082 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@14365 0039d316-1c4b-4281-b951-d872f2087c98
* Disabling FFmpegDemuxerTest.* due to flakiness.scherkus@chromium.org2009-04-231-3/+7
| | | | | | | | BUG=10863 Review URL: http://codereview.chromium.org/92049 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@14324 0039d316-1c4b-4281-b951-d872f2087c98
* Binary data for media playerfbarchard@chromium.org2009-04-222-0/+0
| | | | | | Review URL: http://codereview.chromium.org/93010 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@14226 0039d316-1c4b-4281-b951-d872f2087c98
* Reduce ffmpeg alignment requirement from 4x2 to 2x1.fbarchard@chromium.org2009-04-221-3/+2
| | | | | | | | | | The multiple of 4 restriction on width is unnecessary and prevents some valid movies from playing. Height being any size does not cause any problems for YV12, which is half height on chroma, as long as you round up in any calcs, and in YV16 there should be no height constraint. Use uluh.mov in debug mode to test. Review URL: http://codereview.chromium.org/93008 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@14215 0039d316-1c4b-4281-b951-d872f2087c98
* Move FFmpegDemuxer initialization onto the demuxer thread.scherkus@chromium.org2009-04-224-33/+80
| | | | | | | | We now have all FFmpeg function calls executing on the demuxer thread, meaning DataSource will now always receive IO operations on the demuxer thread. Review URL: http://codereview.chromium.org/87060 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@14205 0039d316-1c4b-4281-b951-d872f2087c98
* Build on Linux with shared libraries (significant chunks courtesy craigsch):sgk@google.com2009-04-221-0/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | * 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
* Hacked up delay load code for ffmpeg in posix systems. This isajwong@chromium.org2009-04-214-34/+248
| | | | | | | | | a temporary solution. We need to find a more sustainable way to do this. Review URL: http://codereview.chromium.org/87018 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@14150 0039d316-1c4b-4281-b951-d872f2087c98
* Fixes FFmpegDemuxerTest.ReadAndSeek test flakiness by using a WaitableEvent.scherkus@chromium.org2009-04-212-23/+35
| | | | | | | | | | Turns out it was the test code that was flaky and not a threading bug in our actual code. Under heavy load it was possible for a thread holding onto a reference to get time sliced long enough that the unit test continued executing until it asserted that the object was deleted when in fact it was not. BUG=10653 Review URL: http://codereview.chromium.org/88010 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@14113 0039d316-1c4b-4281-b951-d872f2087c98
* DCHECK now allows SetPlaybackRate(0.0f) if the pipeline is stopped.ralphl@chromium.org2009-04-211-1/+2
| | | | git-svn-id: svn://svn.chromium.org/chrome/trunk/src@14111 0039d316-1c4b-4281-b951-d872f2087c98
* YUV to RGB with arbitrary scaling.fbarchard@chromium.org2009-04-215-30/+453
| | | | | | | | | | | Semi-optimized C code achieving 33 ms for 1080 double sized or 9 ms with openmp enabled. Special case half size which is much faster. Future versions will support mirror and perhaps rotate. (mirror is free) Future versions will be MMX assembly for speed. Review URL: http://codereview.chromium.org/67278 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@14092 0039d316-1c4b-4281-b951-d872f2087c98
* Move the ffmpeg loading function into media library.ajwong@chromium.org2009-04-184-0/+124
| | | | | | | | This will allow us to hide the platform specific library loading code from the main chrome code. Review URL: http://codereview.chromium.org/69027 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@13991 0039d316-1c4b-4281-b951-d872f2087c98
* Disabling the FFmpegDemuxerTest.ReadAndSeek test.scherkus@chromium.org2009-04-171-1/+3
| | | | | | | | | | There's a subtle threading bug that keeps popping up on the build bots. Will work on a fix. BUG=10653 Review URL: http://codereview.chromium.org/67252 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@13948 0039d316-1c4b-4281-b951-d872f2087c98
* Switched over to scoped_ptr_malloc and heap-allocated FFmpeg structures.scherkus@chromium.org2009-04-178-43/+58
| | | | | | | | | | Using heap-allocated FFmmpeg structures (notably AVFrame) improves our binary compatability with differing versions of FFmpeg. Some minor code cleanup as well. Review URL: http://codereview.chromium.org/67200 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@13907 0039d316-1c4b-4281-b951-d872f2087c98
* Windows low level audio small changescpu@google.com2009-04-162-17/+99
| | | | | | | | | | | - A fix to reported deadlock: don't start the real-time thread until the inital buffers are filled - A new unitest that uses a slow source, the idea is to try to repro the deadlock - Implements GetVolume and SetVolume Review URL: http://codereview.chromium.org/67154 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@13856 0039d316-1c4b-4281-b951-d872f2087c98
* improvements to media_bench (ffmpeg benchmarking application)fbarchard@chromium.org2009-04-151-8/+47
| | | | | | | | | -format output into columns -add -fast2 and -skip flags Review URL: http://codereview.chromium.org/69004 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@13771 0039d316-1c4b-4281-b951-d872f2087c98
* Implemented FFmpegDemuxer::Seek() via av_seek_frame().scherkus@chromium.org2009-04-153-91/+313
| | | | | | | | Includes refactoring FFmpegDemuxer to use a MessageQueue as opposed to a PlatformThread, cleaning up the unit tests and setting IsDiscontinuous() after a seek. Review URL: http://codereview.chromium.org/67128 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@13752 0039d316-1c4b-4281-b951-d872f2087c98
* Second part of the low level audio for Maccpu@chromium.org2009-04-146-68/+147
| | | | | | | | | | | -Fixed leaks (audiomanager singleton, audiostream) -Moved simple_sources to be common for all platforms -Added trivial check for sinesource -Added some logic on the audio callback, not used yet Review URL: http://codereview.chromium.org/67058 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@13713 0039d316-1c4b-4281-b951-d872f2087c98
* Fast flag for h264 improves performance of loop filter.fbarchard@chromium.org2009-04-141-0/+1
| | | | | | | | Increases performance by about 10% with minimal quality loss. Review URL: http://codereview.chromium.org/63107 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@13650 0039d316-1c4b-4281-b951-d872f2087c98
* Forgot to register AtExitManager due to TimeTicks::HighResNow() singleton.scherkus@chromium.org2009-04-101-0/+3
| | | | | | | | TBR=cpu Review URL: http://codereview.chromium.org/66053 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@13540 0039d316-1c4b-4281-b951-d872f2087c98
* Checking in FFmpeg benchmarking application.scherkus@chromium.org2009-04-092-0/+211
| | | | | | | | We use this to compare different compiler setting, different run-time flags and different branches and revisions of FFmpeg. Review URL: http://codereview.chromium.org/63068 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@13468 0039d316-1c4b-4281-b951-d872f2087c98
* Basic underpinnings of the gyp equivalent of the Linux SHARED=1 build:sgk@google.com2009-04-081-1/+1
| | | | | | | | | parameterize the 'type' setting of the various library targets, with a default of 'static_library'. (Hat tip to Craig Schlenter.) Review URL: http://codereview.chromium.org/62127 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@13345 0039d316-1c4b-4281-b951-d872f2087c98