summaryrefslogtreecommitdiffstats
path: root/media
Commit message (Collapse)AuthorAgeFilesLines
* Add yasm and ffmpeg into the build tree for linux.ajwong@chromium.org2009-10-301-0/+10
| | | | | | | | | BUG=22307 TEST=builds correctly, and an html5 video runs. Review URL: http://codereview.chromium.org/300013 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@30571 0039d316-1c4b-4281-b951-d872f2087c98
* Fix memory leaks in media_bench.scherkus@chromium.org2009-10-271-12/+19
| | | | | | | | | | BUG=25855,25945 TEST=valgrind should report no leaks caused by media_bench itself Review URL: http://codereview.chromium.org/332038 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@30228 0039d316-1c4b-4281-b951-d872f2087c98
* Data to reproduce infinite loop fixed by 48_aac_infinite_loop.patchfbarchard@chromium.org2009-10-261-0/+0
| | | | | | Review URL: http://codereview.chromium.org/333019 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@30102 0039d316-1c4b-4281-b951-d872f2087c98
* Quick fix for Alsa stutter - Wake up sooner.fbarchard@chromium.org2009-10-221-0/+3
| | | | | | | | | BUG=23974 TEST=http://fbarchard-kir.ad.corp.google.com/testmatrix/red/red2.ogv Review URL: http://codereview.chromium.org/316005 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@29761 0039d316-1c4b-4281-b951-d872f2087c98
* Fold first 3 channels of multichannel instead of 5. Use fixed point.fbarchard@chromium.org2009-10-202-94/+113
| | | | | | | | | BUG=none TEST=play a multichannel video, such as trek6.ogv. Voices should sound centered and music stereo. Review URL: http://codereview.chromium.org/304006 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@29550 0039d316-1c4b-4281-b951-d872f2087c98
* Fix incorrect usage of scope_ptr with an array.tkent@chromium.org2009-10-191-1/+1
| | | | | | | | | | | NullAudioRender::buffer_ was declared as scoped_ptr<uint8>, But NullAudioRender::OnInitialize() sets uint8[] to it. BUG=none TEST=none Review URL: http://codereview.chromium.org/301001 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@29391 0039d316-1c4b-4281-b951-d872f2087c98
* media.gyp - remove condition that prevents qt_faststart from building on x64.fbarchard@chromium.org2009-10-171-11/+7
| | | | | | | | | BUG=25098 TEST=make -j6 -r qt_faststart BUILDTYPE=Release Review URL: http://codereview.chromium.org/289009 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@29358 0039d316-1c4b-4281-b951-d872f2087c98
* -fPIC buildable version of yuv for 64 bit linux.fbarchard@chromium.org2009-10-161-97/+106
| | | | | | | | | BUG=25070 TEST=add -fPIC to gcc. Old code failed to build. New code builds with 64 bit. Review URL: http://codereview.chromium.org/269106 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@29329 0039d316-1c4b-4281-b951-d872f2087c98
* Move Alsa device opening into the audio thread, and add in support for ↵ajwong@chromium.org2009-10-1610-121/+694
| | | | | | | | | | | | | | | multi-channel audio. Moving the device opening into the audio thread will prevent browser hangs for badly behaving alsa implementations (like pulseaudio) that can hang snd_pcm_open if pulseaudiod is wedged, even if SND_PCM_NONBLOCK is requested. For multi-channel audio, device enumeration has been added to try and find a multi-channel device with a stable channel mapping. According to http://0pointer.de/blog/projects/guide-to-sound-apis.html, default should only be used with mono and stereo stream because the channel ordering is not defined by Alsa. To get a well-defined channel ordering, one must use one of the surround40, surround51, etc., device names. However, these device names do not always allow multiple opens, so a fallback scheme is implemented to use default if necessary. BUG=20945,17703 TEST=listened with built-in soundcard and USB soundcard with various other audio programs running. Review URL: http://codereview.chromium.org/275022 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@29299 0039d316-1c4b-4281-b951-d872f2087c98
* Report stalled event correctly for <video>hclam@chromium.org2009-10-164-1/+45
| | | | | | | | | | | | | | | | | | | | | BUG=20127 BUG=13568 TEST=Opens a web page, stalled event should be fire only if network is actuall stalled. What this patch does: 1. Report Loading / Idle according to whether we are actively receiving data in the BuffereResourceLoader. This is done by signaling the network events to BufferedDataSource and then to the media playback pipeline. 2. Report byteLoaded() as the last byte position buffered. This will enable an actual ticking progress for the progress event. With this value actually ticking, stalled event is suppressed. Review URL: http://codereview.chromium.org/269002 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@29235 0039d316-1c4b-4281-b951-d872f2087c98
* Mark YUV conversion functions private_extern on the Mac. These symbols don'tmark@chromium.org2009-10-151-2/+0
| | | | | | | | | | | need to leak beyond the module in which they're used. BUG=24911 TEST=nm C.app/Contents/Versions/*/C F.framework/C F | grep " [A-TV-Z] " should not show _MacConvertYUVToRGB32Row or _MacScaleYUVToRGB32Row. Review URL: http://codereview.chromium.org/269098 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@29181 0039d316-1c4b-4281-b951-d872f2087c98
* Pad time to next audio data write to compensate for nanosleep inaccuracy on ↵ajwong@chromium.org2009-10-151-0/+10
| | | | | | | | | | | | | linux. Nanosleep on linux can miss its deadline by up to 10ms (according to the manpage). Pad 20ms (2x that amount) to give room for missed deadlines. BUG=23974 TEST=listened to previously stuttering audio clip on low-end hardware. Review URL: http://codereview.chromium.org/271081 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@29163 0039d316-1c4b-4281-b951-d872f2087c98
* MMX2 improvements on Linux 64 bit.fbarchard@chromium.org2009-10-153-77/+87
| | | | | | | | | | | MMX2 to avoid EMMS LEA to remove 2 instructions from Scale loop shuffle to remove one instruction sub at top of loop avoids one branch Review URL: http://codereview.chromium.org/269088 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@29107 0039d316-1c4b-4281-b951-d872f2087c98
* Remove the base_gfx project since it no longer has an external dependencies.brettw@chromium.org2009-10-141-0/+1
| | | | | | | | | | Replace it with base_i18n which encapsulates all ICU dependencies. BUG=none TEST=none Review URL: http://codereview.chromium.org/267048 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@29036 0039d316-1c4b-4281-b951-d872f2087c98
* Reverting 29019.finnur@chromium.org2009-10-143-70/+66
| | | | | | | | | Reverting due to test_shell_tests Linux 64 release failures TBR: fbarchard Review URL: http://codereview.chromium.org/275021 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@29031 0039d316-1c4b-4281-b951-d872f2087c98
* Use lea to remove 2 instructions from the inner loop of YUV Scale.fbarchard@chromium.org2009-10-143-66/+70
| | | | | | | | | | | Use MMX2 to remove emms. unittest has code to time yuv scale and convert 100 times so it takes about 1 second... useful for catching performance issues. But the code is disabled. BUG=23263 TEST=media_unittest should pass and run much faster: 28% faster than 32 bit version. Review URL: http://codereview.chromium.org/273047 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@29019 0039d316-1c4b-4281-b951-d872f2087c98
* Add 'Hash' to printf for test corpus script compatibility and future hash ↵fbarchard@chromium.org2009-10-141-3/+3
| | | | | | | | compatibility. Review URL: http://codereview.chromium.org/276025 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@29002 0039d316-1c4b-4281-b951-d872f2087c98
* Turn NULL used as int to 0.phajdan.jr@chromium.org2009-10-132-4/+4
| | | | | | | | | | | | | (Excluding chrome/browser/...) Landing patch for Jacob Mandelson. Original review: http://codereview.chromium.org/195067 BUG=none TEST=base_unittests & app_unittests Review URL: http://codereview.chromium.org/267076 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@28810 0039d316-1c4b-4281-b951-d872f2087c98
* 64 bit linux yuvfbarchard@chromium.org2009-10-132-40/+120
| | | | | | | | BUG=23263 TEST=media_unittest should pass and run much faster: faster than 32 bit even. Review URL: http://codereview.chromium.org/268029 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@28802 0039d316-1c4b-4281-b951-d872f2087c98
* Use ASCII strings for switch names.evan@chromium.org2009-10-131-13/+13
| | | | | | Review URL: http://codereview.chromium.org/270062 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@28779 0039d316-1c4b-4281-b951-d872f2087c98
* Remove old data, once we are not using it.fbarchard@chromium.org2009-10-122-2/+0
| | | | | | Review URL: http://codereview.chromium.org/270045 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@28726 0039d316-1c4b-4281-b951-d872f2087c98
* use djb2 hash in media/basefbarchard@chromium.org2009-10-121-21/+17
| | | | | | Review URL: http://codereview.chromium.org/266040 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@28718 0039d316-1c4b-4281-b951-d872f2087c98
* media_bench use djb2 hash from media/basefbarchard@chromium.org2009-10-091-13/+1
| | | | | | Review URL: http://codereview.chromium.org/271034 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@28615 0039d316-1c4b-4281-b951-d872f2087c98
* Support 8 and 32 bit formats for Mac Channel Swizzler.fbarchard@chromium.org2009-10-091-2/+4
| | | | | | | Committed: http://src.chromium.org/viewvc/chrome?view=rev&revision=28484 Review URL: http://codereview.chromium.org/261028 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@28571 0039d316-1c4b-4281-b951-d872f2087c98
* Update new data to match old data so checksum doesnt fail and remove old data.fbarchard@chromium.org2009-10-092-2/+2
| | | | | | Review URL: http://codereview.chromium.org/271036 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@28570 0039d316-1c4b-4281-b951-d872f2087c98
* Move more ICU-dependent stuff from base into base/i18n. Some test stuff alsobrettw@chromium.org2009-10-091-1/+1
| | | | | | | | | | | | depended on this, so to make the DEPS work out, I made a new base/test directory where I moved the testing-related files into a new directory base/test. TEST=none BUG=none Review URL: http://codereview.chromium.org/266038 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@28569 0039d316-1c4b-4281-b951-d872f2087c98
* DJB2 Hash for applications where high speed hash or checksum values are needed.fbarchard@chromium.org2009-10-094-0/+74
| | | | | | | | | BUG=21126 TEST=djb2_unittest.cc has a quick test. will replace versions in media unittests and media_bench in future. Review URL: http://codereview.chromium.org/193028 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@28532 0039d316-1c4b-4281-b951-d872f2087c98
* Add -loop=N option to test ffmpeg ogv decoding on loop.fbarchard@chromium.org2009-10-091-0/+20
| | | | | | | | | BUG=19917 TEST=media_bench.exe -stream=video -loop=100 d:\testmatrix\still\still1.ogv still.1280x720_30Hz_P420.yuv should produce 100 frames and not black. Use pyuv on still.1280x720_30Hz_P420.yuv to confirm. Review URL: http://codereview.chromium.org/265050 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@28531 0039d316-1c4b-4281-b951-d872f2087c98
* quick syntax fixfbarchard@chromium.org2009-10-081-1/+1
| | | | git-svn-id: svn://svn.chromium.org/chrome/trunk/src@28487 0039d316-1c4b-4281-b951-d872f2087c98
* Support 8 and 32 bit formats for Mac Channel Swizzler.fbarchard@chromium.org2009-10-081-7/+13
| | | | | | Review URL: http://codereview.chromium.org/261028 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@28484 0039d316-1c4b-4281-b951-d872f2087c98
* Add comments setting emacs and vim tab width and expansion variables.sgk@google.com2009-10-061-0/+6
| | | | | | | | BUG=none TEST=successful builds Review URL: http://codereview.chromium.org/256059 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@28089 0039d316-1c4b-4281-b951-d872f2087c98
* Mac Surround Sound 5.1 channel layout adapter from AAC layout to native ↵fbarchard@chromium.org2009-10-063-12/+60
| | | | | | | | | | | Audio Core layout. BUG=23298,23684 TEST=play trek6.mp4 in test matrix. voices should be centered. Review URL: http://codereview.chromium.org/246039 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@28080 0039d316-1c4b-4281-b951-d872f2087c98
* media::FFmpegDemuxer giving too much errorshclam@chromium.org2009-09-301-2/+4
| | | | | | | | | | | NOTIMPLEMENTED() is reached when performing layout tests. It is changed to LOG(INFO) so messages go to stderr and won't affect layout tests. BUG=13447 Review URL: http://codereview.chromium.org/242078 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@27655 0039d316-1c4b-4281-b951-d872f2087c98
* Avoid potential "NULL used as int" warnings by changing ASSERT_EQ(NULL, ...) ↵pkasting@chromium.org2009-09-292-3/+3
| | | | | | | | | to ASSERT_TRUE(... == NULL). Patch by Jacob Mandelson (see http://codereview.chromium.org/202057 ), r=me. BUG=none TEST=none git-svn-id: svn://svn.chromium.org/chrome/trunk/src@27511 0039d316-1c4b-4281-b951-d872f2087c98
* Add --verbose=N option to set ffmpeg log message level.fbarchard@chromium.org2009-09-241-3/+16
| | | | | | Review URL: http://codereview.chromium.org/219012 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@27069 0039d316-1c4b-4281-b951-d872f2087c98
* Off by one in YUV scale caused an extra read (mostly harmless)fbarchard@chromium.org2009-09-223-21/+3
| | | | | | | | | BUG=22594 TEST=none Review URL: http://codereview.chromium.org/212043 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@26797 0039d316-1c4b-4281-b951-d872f2087c98
* Fixing build bustage caused by r26759hclam@chromium.org2009-09-211-1/+1
| | | | | | | | | | TBR=ajwong StringPrintf should use %u instead of %zd. Review URL: http://codereview.chromium.org/216042 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@26763 0039d316-1c4b-4281-b951-d872f2087c98
* Clean up the unittest to correct order of expects, and give correct tracing ↵ajwong@chromium.org2009-09-211-18/+28
| | | | | | | | info. Review URL: http://codereview.chromium.org/209054 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@26759 0039d316-1c4b-4281-b951-d872f2087c98
* Mac YUV with a single YUV table of 6k instead of 3 tables of 2k.fbarchard@chromium.org2009-09-212-278/+66
| | | | | | | | | BUG=20749 TEST=play mac video... it should be 3 times faster rendering and visibly smoother Review URL: http://codereview.chromium.org/208048 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@26740 0039d316-1c4b-4281-b951-d872f2087c98
* Disable FFmpeg logging as it interferes with layout tests.scherkus@chromium.org2009-09-194-0/+13
| | | | | | | | | | | | We could disable logging as soon as FFmpeg is loaded in InitializeMediaLibrary(), but we may want logging enabled for different applications using the media library (i.e., media_bench). BUG=16779 TEST=running chrome, test_shell on theora videos shouldn't print any boring log messages Review URL: http://codereview.chromium.org/212013 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@26641 0039d316-1c4b-4281-b951-d872f2087c98
* Revert "Mac YUV assembly"ajwong@chromium.org2009-09-182-63/+273
| | | | | | | | This reverts commit r26614. Review URL: http://codereview.chromium.org/213034 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@26621 0039d316-1c4b-4281-b951-d872f2087c98
* Mac YUV assemblyfbarchard@chromium.org2009-09-182-273/+63
| | | | | | | | BUG=20749 TEST=play mac video... it should be 3 times faster rendering and visibly smoother Review URL: http://codereview.chromium.org/208030 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@26614 0039d316-1c4b-4281-b951-d872f2087c98
* Fixing audio in machclam@chromium.org2009-09-173-8/+94
| | | | | | | | | | | | | | | | | | | | | | | | TEST=media_unittests BUG=21574 Several problems in mac audio: 1. AudioQueueEnqueueBuffer doesn't accept empty buffers. But we often hit buffer underrun with various reasons. In order to simulate the behavior of Windows that empty buffer would make the callback be called after a short time, we write a short buffer of silence. 2. Mac audio doesn't provide pending bytes (unplayed buffer size in audio buffer). This is now fixed by having a running counter. 3. After Stop() is called, Start() will take a long time for the audio packet to be played. It is found that AudioQueueEnqueueBuffer should be called before AudioQueueStart otherwise we'll hit this problem of long delay for start. Review URL: http://codereview.chromium.org/194112 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@26510 0039d316-1c4b-4281-b951-d872f2087c98
* Pause for <video> should have immediate effect on audiohclam@chromium.org2009-09-171-2/+3
| | | | | | | | | | | | | BUG=20351 A bug found while fixing mac audio. IPCAudioSouce transist to a wrong state after Play() is called. Resulting to pause having no effect. This will solve the problem of audio keeps playing a while after it is paused. Review URL: http://codereview.chromium.org/193095 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@26500 0039d316-1c4b-4281-b951-d872f2087c98
* AudioHardwareGetProperty is deprecated in Mac OS X 10.6 ("Snow Leopard").mark@chromium.org2009-09-171-5/+15
| | | | | | | | | | | All audio hardware properties can be accessed via AudioObjectGetPropertyData, present since Mac OS X 10.4 ("Tiger"). BUG=20925 sort of TEST=Builds in all sorts of configurations Review URL: http://codereview.chromium.org/210009 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@26478 0039d316-1c4b-4281-b951-d872f2087c98
* Don't redefine what Snow Leopard provides if Snow Leopard has provided it.mark@chromium.org2009-09-161-1/+3
| | | | | | Review URL: http://codereview.chromium.org/205015 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@26347 0039d316-1c4b-4281-b951-d872f2087c98
* Force inclusion of build/common.gypi for all chromium gyp files.yaar@chromium.org2009-09-151-3/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | Why: Simpler build code. If everybody includes it, it should be included automatically. Why now: The webkit chromium builds need it be specified, since can't default to build/common.gypi. What was done: 1. build/common.gypi's contents were moved to a new file build/gyp_chromium.gypi 2. tools/gyp/gyp_chromium was moved to build/gyp_chromium and made to automatically include build/gyp_chromium.gypi. 3. lots of gyp files were fixed to not refer to build/common.gypi any more. 4. o3d which also builds independently of chrome, was fixed to have a gyp_o3d that includes gyp_chromium.gypi too. 5. build/common.gypi was left empty, because there are some external projects that still refer to it. Things that are left to do after this patch is in: 1. The following external files (in other repositories) need to stop include common.gypi ./third_party/hunspell/hunspell.gyp ./third_party/icu/icu.gyp ./v8/tools/gyp/v8.gyp 2. Once nobody refers to common.gypi anymore, delete common.gypi -or- Delete gyp_chromium.gypi and move its content back to common.gypi Tested on mac, win and linux. On win, got a few unit tests errors on chrome bookmarks, which should not be related. I'm running again with clobber to verify. Review URL: http://codereview.chromium.org/206006 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@26302 0039d316-1c4b-4281-b951-d872f2087c98
* Reverting 26070 from media tests failuremhm@chromium.org2009-09-124-76/+286
| | | | | | | | | | | | | | | | | | 6 failed media_unittests - CreateFrame - Clamp - YV12 - YV16 - YV12 - YV16 TBR=fbarchard BUG=none TEST=none Review URL: http://codereview.chromium.org/202068 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@26074 0039d316-1c4b-4281-b951-d872f2087c98
* Media Bench file IO redux to address mp4 parsing issue.fbarchard@chromium.org2009-09-122-117/+262
| | | | | | | | | BUG=21322 TEST=run media_bench on regression corpus. Old version crashes/fails. New version should report errors and/or work. Review URL: http://codereview.chromium.org/199049 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@26072 0039d316-1c4b-4281-b951-d872f2087c98
* Mac Assembler and Linux cleanupfbarchard@chromium.org2009-09-124-286/+76
| | | | | | | | | BUG=20749 TEST=play mac video... it should be time times faster rendering and visibly smoother Review URL: http://codereview.chromium.org/180066 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@26070 0039d316-1c4b-4281-b951-d872f2087c98