Commit Graph

90 Commits

Author SHA1 Message Date
Matthew Gregan
2acd07f0ed Bug 569163 - Fix a race in nsWaveDecoder's ended state handling. r=cpearce a=roc 2010-11-15 11:41:22 +13:00
Chris Pearce
a269ad916b Bug 580876 - Ensure WAV playing events can fire when decode has finished but playback hasn't. r=kinetik a=roc 2010-11-05 13:44:33 +13:00
Matthew Gregan
95077776f3 Bug 598217 - Share nsWebMBufferedState between cloned decoders. r=roc a=blocking2.0 2010-09-21 12:49:50 +12:00
Chris Double
9ecee5f8f0 Bug 571822 - Fire timeupdate event less frequently than once per frame - r=kinetik a=blocking2.0 2010-09-10 17:49:26 +12:00
Chris Double
ed56635970 Bug 584615 - Make media progress events be 'simple' Events, not 'progress' Events - r=roc,cpearce,dolske,kinetik a=blocking2.0 2010-09-10 15:29:06 +12:00
Matthew Gregan
c7ba136cea Bug 570904 - Implement buffered support for WebM. r=roc 2010-09-13 20:45:50 +12:00
Marco Bonardo
ed93850a83 Backed out changeset 96b74fec2915 2010-09-11 11:17:11 +02:00
Chris Double
826171e87a Bug 584615 - Make media progress events be 'simple' Events, not 'progress' Events - r=roc,cpearce,dolske,kinetik a=blocking2.0 2010-09-10 15:29:06 +12:00
Chris Double
6a69d85950 Bug 588312 - Set video.currentTime to seek time when seek starts - r=kinetik a=blocking2.0 2010-09-10 14:48:36 +12:00
Chris Pearce
3313bd2660 Bug 485288 - Update media load algorithm. r=roc a=blocking2.0 2010-09-03 12:03:03 +12:00
David Humphrey
7d9c209973 bug 490705 - Support Audio Data API: Get, Manipulate, Play & Save. r=smaug+kinetik+peterv, sr=vlad, a=vlad 2010-08-25 09:10:00 -04:00
Chris Pearce
ed635f3034 Bug 589467 - Shutdown idle media state machine threads. r=kinetik a=sicking 2010-08-25 20:45:45 +12:00
Chris Pearce
caf4d0aa29 Bug 589561 - Rename HTMLTimeRanges to TimeRanges, HTMLMediaError to MediaError. r=roc a=roc
--HG--
rename : content/html/content/src/nsHTMLMediaError.cpp => content/html/content/src/nsMediaError.cpp
rename : content/html/content/src/nsHTMLMediaError.h => content/html/content/src/nsMediaError.h
rename : content/html/content/src/nsHTMLTimeRanges.cpp => content/html/content/src/nsTimeRanges.cpp
rename : content/html/content/src/nsHTMLTimeRanges.h => content/html/content/src/nsTimeRanges.h
rename : dom/interfaces/html/nsIDOMHTMLMediaError.idl => dom/interfaces/html/nsIDOMMediaError.idl
rename : dom/interfaces/html/nsIDOMHTMLTimeRanges.idl => dom/interfaces/html/nsIDOMTimeRanges.idl
2010-08-25 20:43:00 +12:00
Ted Mielczarek
9398b84c82 Backed out changeset 1362f0ca86d2 (bug 490705 - Support Audio Data API: Get, Manipulate, Play & Save) due to test failures. 2010-08-18 13:04:31 -04:00
David Humphrey
199c454157 bug 490705 - Support Audio Data API: Get, Manipulate, Play & Save. r=smaug+kinetik+peterv, sr=vlad, a=vlad 2010-08-17 09:40:00 -04:00
Chris Pearce
12efeec9f5 Replaces some \c\r with \n. a=bustage-fix 2010-08-18 14:17:50 +12:00
Chris Pearce
22df23bd6e Bug 462957 - Pin media stream while seeking. r=roc a=blocking2.0 2010-08-05 19:40:35 +12:00
Chris Pearce
e9ef8ed6a2 Bug 462957 - WAV support for HTMLMediaElement.buffered. r=kinetik a=blocking2.0 2010-08-05 19:40:35 +12:00
Chris Pearce
6cc25b1183 Bug 462957 - DOM implementation of HTMLMediaElement.buffered. r=roc a=blocking2.0 2010-08-05 19:40:35 +12:00
Chris Pearce
5f69fff203 Bug 543769 - Buffer non-autobuffer videos upon first playback to ensure smooth playback. r=roc a=blocking2.0 2010-07-23 10:48:32 +12:00
Daniel Holbert
fd3addf303 Bug 563849: Fix "possible loss of data" MSVC warnings in nsWaveDecoder.cpp. r=kinetik 2010-05-04 22:22:37 -07:00
Ben Newman
bd232d2cb8 Replace direct instantiations of nsRunnableMethod with calls to the templatized NS_NewRunnableMethod function (part 3/3 of bug 558498). r=dwitte sr=dbaron 2010-04-20 16:21:35 -07:00
Chris Pearce
afd172b807 Bug 531340 - New Ogg video decoder. r=doublec sr=roc 2010-04-01 20:03:07 -07:00
Matthew Gregan
30dae8fab3 Bug 525401 - Make ready state transitions initiated by the decode thread more reliable by including the new state in the event. Fixes an ABA problem where we could play through without ever moving beyond HAVE_CURRENT_DATA. r=chris.double 2010-03-15 12:46:38 +13:00
Mike Hommey
eb4821e504 Bug 550961. Fix license header typos. r=gerv 2010-03-15 14:44:37 +13:00
Robert O'Callahan
5da349c3d9 Bug 503989. Break MediaLoadListener reference cycle at shutdown. r=sicking,doublec
--HG--
extra : rebase_source : bbd326582e4a7d0864affcfe3a715e228c4b2647
2010-02-24 11:14:14 -08:00
Matthew Gregan
e346510322 Bug 499874 - Move Wave decoder to ended state when seeking to end of media. r=roc
--HG--
extra : rebase_source : 8cad22f7269f9e4a9ff0f9885036b2a47f525b7d
2009-10-20 15:48:03 +13:00
Robert O'Callahan
ab84f5ebd3 Bug 519136. Clean up media-related logging. r=doublec
--HG--
extra : rebase_source : 2321054271a8726d17da1c58b876e2a7eb88883c
2009-09-30 07:32:44 +10:00
Robert O'Callahan
34e388be5c Bug 517818. Wave decoder should not look beyond the Wave data area to see if we have a 'next frame' to play. r=kinetik
--HG--
extra : rebase_source : 9964f0fe36d35745354f5723b5d82b1fc18520d6
2009-09-30 07:32:41 +10:00
Matthew Gregan
466c733803 Bug 481057 - Fire MEDIA_ERR_DECODE errors when a decoding error occurs. r=chris.double, sr=roc
--HG--
extra : rebase_source : a07687f16726086dd425eef8907788019beebbe1
2009-09-22 12:08:13 +12:00
Robert O'Callahan
21b987f673 Bug 513144. nsWaveDecoder::PlaybackEnded should call UpdateReadyStateForData to ensure that we enter HAVE_CURRENT_DATA ... otherwise it get into the ended state with HAVE_FUTURE_DATA or HAVE_ENOUGH_DATA, which is wrong. r=kinetik
--HG--
extra : rebase_source : 75bcd57e9c7d93bcf24663731e2e6aadacf07a86
2009-09-15 14:30:45 +12:00
Robert O'Callahan
666ddd4c00 Bug 513144. Allow streams that are related by mozLoadFrom to share data loaded after the initial clone. r=doublec
--HG--
extra : rebase_source : 4dab31030b84ce6066ba694851bb7587a051fe2c
2009-09-15 14:30:45 +12:00
Robert O'Callahan
60a2f7d116 Bug 513144. Basic implementation of mozLoadFrom API. r=doublec
--HG--
extra : rebase_source : 71d04afaf21d268e3eddbb40e9894479698d1bfc
2009-09-15 14:30:44 +12:00
Robert O'Callahan
ea1ab9ac40 Bug 513144. Hoist nsMediaStream creation up into nsHTMLMediaElement, out of the decoders. Pass the stream as the parameter to nsMediaDecoder::Load. r=doublec
--HG--
extra : rebase_source : f418076a0d534d528dbded66b2d49d8fe908de4b
2009-09-15 14:30:43 +12:00
Robert O'Callahan
df1c341efa Bug 513144. Split static nsMediaStream::Open into static nsMediaStream::Create and nonstatic nsMediaStream::Open. Move call to NS_GetFinalChannelURI down into nsMediaStream::Create. r=doublec
--HG--
extra : rebase_source : be999ad63f1bb1f8adcbbac0640a916f022203a7
2009-09-15 14:30:43 +12:00
Robert O'Callahan
c764bf1840 Bug 513144. Remove mURI from the decoders, and change nsMediaDecoder::GetCurrentURI to GetCurrentStream so nsHTMLMediaElement::GetCurrentSrc gets the URI directly from the stream. r=doublec
--HG--
extra : rebase_source : b1e9680cf33cf7dded79383dfdf7559bbd7b1a78
2009-09-15 14:28:08 +12:00
Robert O'Callahan
2e2663deda Bug 513144. Move ownership of the Ogg decoder's nsMediaStream out from nsChannelReader to nsOggDecoder. Also remove unnecessary mNotifyOnShutdown flag from nsOggDecoder and nsWaveDecoder. Since Load can only be called once after Init, remove unnecessary initialization of variables in Load and move some code up from Load to Init in both backends to simplify Load. r=doublec
--HG--
extra : rebase_source : 65cd9f01424f5b8ab8507e4788f2b8228ce1e2b0
2009-09-11 13:44:21 +12:00
Matthew Gregan
9f6a87f82d Bug 497815 - Read Wave headers in small chunks to avoid unnecessary large allocations. r=roc
--HG--
extra : rebase_source : 355af524b6d9f0634d9d09e4ddc1ce1715bc6c81
2009-09-07 15:28:26 +12:00
Benjamin Smedberg
ba372f3a4c Followup to bug 398573 - remove REQUIRES from the tree since it is no longer used... automatically generated patch, rs=ted 2009-08-25 08:59:31 -07:00
Robert O'Callahan
e38733eb15 Bug 499880 - Restructure content/media directory. r+=doublec
--HG--
rename : content/media/video/src/nsAudioStream.cpp => content/media/nsAudioStream.cpp
rename : content/media/video/public/nsAudioStream.h => content/media/nsAudioStream.h
rename : content/media/video/src/nsMediaCache.cpp => content/media/nsMediaCache.cpp
rename : content/media/video/public/nsMediaCache.h => content/media/nsMediaCache.h
rename : content/media/video/src/nsMediaDecoder.cpp => content/media/nsMediaDecoder.cpp
rename : content/media/video/public/nsMediaDecoder.h => content/media/nsMediaDecoder.h
rename : content/media/video/src/nsMediaStream.cpp => content/media/nsMediaStream.cpp
rename : content/media/video/public/nsMediaStream.h => content/media/nsMediaStream.h
rename : content/media/video/src/nsChannelReader.cpp => content/media/ogg/nsChannelReader.cpp
rename : content/media/video/public/nsChannelReader.h => content/media/ogg/nsChannelReader.h
rename : content/media/video/src/nsOggDecoder.cpp => content/media/ogg/nsOggDecoder.cpp
rename : content/media/video/public/nsOggDecoder.h => content/media/ogg/nsOggDecoder.h
rename : content/media/video/test/320x240.allow-origin.ogv => content/media/test/320x240.allow-origin.ogv
rename : content/media/video/test/320x240.allow-origin.ogv^headers^ => content/media/test/320x240.allow-origin.ogv^headers^
rename : content/media/video/test/320x240.ogv => content/media/test/320x240.ogv
rename : content/media/video/test/Makefile.in => content/media/test/Makefile.in
rename : content/media/video/test/big.wav => content/media/test/big.wav
rename : content/media/video/test/bug461281.ogg => content/media/test/bug461281.ogg
rename : content/media/video/test/bug482461.ogv => content/media/test/bug482461.ogv
rename : content/media/video/test/can_play_type_ogg.js => content/media/test/can_play_type_ogg.js
rename : content/media/video/test/can_play_type_wave.js => content/media/test/can_play_type_wave.js
rename : content/media/video/test/contentDuration1.sjs => content/media/test/contentDuration1.sjs
rename : content/media/video/test/contentDuration2.sjs => content/media/test/contentDuration2.sjs
rename : content/media/video/test/contentDuration3.sjs => content/media/test/contentDuration3.sjs
rename : content/media/video/test/contentDuration4.sjs => content/media/test/contentDuration4.sjs
rename : content/media/video/test/contentDuration5.sjs => content/media/test/contentDuration5.sjs
rename : content/media/video/test/contentDuration6.sjs => content/media/test/contentDuration6.sjs
rename : content/media/video/test/crashtests/468763-1.html => content/media/test/crashtests/468763-1.html
rename : content/media/video/test/crashtests/474744-1.html => content/media/test/crashtests/474744-1.html
rename : content/media/video/test/crashtests/crashtests.list => content/media/test/crashtests/crashtests.list
rename : content/media/video/test/dynamic_redirect.sjs => content/media/test/dynamic_redirect.sjs
rename : content/media/video/test/file_access_controls.html => content/media/test/file_access_controls.html
rename : content/media/video/test/r11025_s16_c1.wav => content/media/test/r11025_s16_c1.wav
rename : content/media/video/test/r11025_s16_c1_trailing.wav => content/media/test/r11025_s16_c1_trailing.wav
rename : content/media/video/test/r11025_u8_c1.wav => content/media/test/r11025_u8_c1.wav
rename : content/media/video/test/r11025_u8_c1_trunc.wav => content/media/test/r11025_u8_c1_trunc.wav
rename : content/media/video/test/r16000_u8_c1_list.wav => content/media/test/r16000_u8_c1_list.wav
rename : content/media/video/test/redirect.sjs => content/media/test/redirect.sjs
rename : content/media/video/test/seek.ogv => content/media/test/seek.ogv
rename : content/media/video/test/small-shot.ogg => content/media/test/small-shot.ogg
rename : content/media/video/test/sound.ogg => content/media/test/sound.ogg
rename : content/media/video/test/test_access_control.html => content/media/test/test_access_control.html
rename : content/media/video/test/test_audio1.html => content/media/test/test_audio1.html
rename : content/media/video/test/test_audio2.html => content/media/test/test_audio2.html
rename : content/media/video/test/test_audioDocumentTitle.html => content/media/test/test_audioDocumentTitle.html
rename : content/media/video/test/test_autobuffer.html => content/media/test/test_autobuffer.html
rename : content/media/video/test/test_autobuffer2.html => content/media/test/test_autobuffer2.html
rename : content/media/video/test/test_autoplay.html => content/media/test/test_autoplay.html
rename : content/media/video/test/test_bug448534.html => content/media/test/test_bug448534.html
rename : content/media/video/test/test_bug461281.html => content/media/test/test_bug461281.html
rename : content/media/video/test/test_bug463162.xhtml => content/media/test/test_bug463162.xhtml
rename : content/media/video/test/test_bug465498.html => content/media/test/test_bug465498.html
rename : content/media/video/test/test_bug468190.html => content/media/test/test_bug468190.html
rename : content/media/video/test/test_bug468190_wav.html => content/media/test/test_bug468190_wav.html
rename : content/media/video/test/test_bug476973.html => content/media/test/test_bug476973.html
rename : content/media/video/test/test_bug482461.html => content/media/test/test_bug482461.html
rename : content/media/video/test/test_bug493187.html => content/media/test/test_bug493187.html
rename : content/media/video/test/test_bug495145.html => content/media/test/test_bug495145.html
rename : content/media/video/test/test_bug495145_wav.html => content/media/test/test_bug495145_wav.html
rename : content/media/video/test/test_bug495300.html => content/media/test/test_bug495300.html
rename : content/media/video/test/test_bug495319.html => content/media/test/test_bug495319.html
rename : content/media/video/test/test_can_play_type.html => content/media/test/test_can_play_type.html
rename : content/media/video/test/test_can_play_type_no_ogg.html => content/media/test/test_can_play_type_no_ogg.html
rename : content/media/video/test/test_can_play_type_no_wave.html => content/media/test/test_can_play_type_no_wave.html
rename : content/media/video/test/test_can_play_type_ogg.html => content/media/test/test_can_play_type_ogg.html
rename : content/media/video/test/test_can_play_type_wave.html => content/media/test/test_can_play_type_wave.html
rename : content/media/video/test/test_closing_connections.html => content/media/test/test_closing_connections.html
rename : content/media/video/test/test_constants.html => content/media/test/test_constants.html
rename : content/media/video/test/test_contentDuration1.html => content/media/test/test_contentDuration1.html
rename : content/media/video/test/test_contentDuration2.html => content/media/test/test_contentDuration2.html
rename : content/media/video/test/test_contentDuration3.html => content/media/test/test_contentDuration3.html
rename : content/media/video/test/test_contentDuration4.html => content/media/test/test_contentDuration4.html
rename : content/media/video/test/test_contentDuration5.html => content/media/test/test_contentDuration5.html
rename : content/media/video/test/test_contentDuration6.html => content/media/test/test_contentDuration6.html
rename : content/media/video/test/test_controls.html => content/media/test/test_controls.html
rename : content/media/video/test/test_currentTime.html => content/media/test/test_currentTime.html
rename : content/media/video/test/test_decoder_disable.html => content/media/test/test_decoder_disable.html
rename : content/media/video/test/test_delay_load.html => content/media/test/test_delay_load.html
rename : content/media/video/test/test_duration1.html => content/media/test/test_duration1.html
rename : content/media/video/test/test_ended1.html => content/media/test/test_ended1.html
rename : content/media/video/test/test_ended2.html => content/media/test/test_ended2.html
rename : content/media/video/test/test_error_on_404.html => content/media/test/test_error_on_404.html
rename : content/media/video/test/test_info_leak.html => content/media/test/test_info_leak.html
rename : content/media/video/test/test_load.html => content/media/test/test_load.html
rename : content/media/video/test/test_load_candidates.html => content/media/test/test_load_candidates.html
rename : content/media/video/test/test_media_selection.html => content/media/test/test_media_selection.html
rename : content/media/video/test/test_mixed_principals.html => content/media/test/test_mixed_principals.html
rename : content/media/video/test/test_networkState.html => content/media/test/test_networkState.html
rename : content/media/video/test/test_onloadedmetadata.html => content/media/test/test_onloadedmetadata.html
rename : content/media/video/test/test_paused.html => content/media/test/test_paused.html
rename : content/media/video/test/test_paused_after_ended.html => content/media/test/test_paused_after_ended.html
rename : content/media/video/test/test_play.html => content/media/test/test_play.html
rename : content/media/video/test/test_progress1.html => content/media/test/test_progress1.html
rename : content/media/video/test/test_progress2.html => content/media/test/test_progress2.html
rename : content/media/video/test/test_progress3.html => content/media/test/test_progress3.html
rename : content/media/video/test/test_progress4.html => content/media/test/test_progress4.html
rename : content/media/video/test/test_readyState.html => content/media/test/test_readyState.html
rename : content/media/video/test/test_seek1.html => content/media/test/test_seek1.html
rename : content/media/video/test/test_seek2.html => content/media/test/test_seek2.html
rename : content/media/video/test/test_seek3.html => content/media/test/test_seek3.html
rename : content/media/video/test/test_seek4.html => content/media/test/test_seek4.html
rename : content/media/video/test/test_seek5.html => content/media/test/test_seek5.html
rename : content/media/video/test/test_seek6.html => content/media/test/test_seek6.html
rename : content/media/video/test/test_seek7.html => content/media/test/test_seek7.html
rename : content/media/video/test/test_seek8.html => content/media/test/test_seek8.html
rename : content/media/video/test/test_seek9.html => content/media/test/test_seek9.html
rename : content/media/video/test/test_source.html => content/media/test/test_source.html
rename : content/media/video/test/test_source_write.html => content/media/test/test_source_write.html
rename : content/media/video/test/test_standalone.html => content/media/test/test_standalone.html
rename : content/media/video/test/test_timeupdate1.html => content/media/test/test_timeupdate1.html
rename : content/media/video/test/test_timeupdate2.html => content/media/test/test_timeupdate2.html
rename : content/media/video/test/test_timeupdate3.html => content/media/test/test_timeupdate3.html
rename : content/media/video/test/test_videoDocumentTitle.html => content/media/test/test_videoDocumentTitle.html
rename : content/media/video/test/test_volume.html => content/media/test/test_volume.html
rename : content/media/video/test/test_wav_8bit.html => content/media/test/test_wav_8bit.html
rename : content/media/video/test/test_wav_ended1.html => content/media/test/test_wav_ended1.html
rename : content/media/video/test/test_wav_ended2.html => content/media/test/test_wav_ended2.html
rename : content/media/video/test/test_wav_list.html => content/media/test/test_wav_list.html
rename : content/media/video/test/test_wav_onloadedmetadata.html => content/media/test/test_wav_onloadedmetadata.html
rename : content/media/video/test/test_wav_seek1.html => content/media/test/test_wav_seek1.html
rename : content/media/video/test/test_wav_seek3.html => content/media/test/test_wav_seek3.html
rename : content/media/video/test/test_wav_seek4.html => content/media/test/test_wav_seek4.html
rename : content/media/video/test/test_wav_seek5.html => content/media/test/test_wav_seek5.html
rename : content/media/video/test/test_wav_seek6.html => content/media/test/test_wav_seek6.html
rename : content/media/video/test/test_wav_seek7.html => content/media/test/test_wav_seek7.html
rename : content/media/video/test/test_wav_seek8.html => content/media/test/test_wav_seek8.html
rename : content/media/video/test/test_wav_seek_past_end.html => content/media/test/test_wav_seek_past_end.html
rename : content/media/video/test/test_wav_seek_then_play.html => content/media/test/test_wav_seek_then_play.html
rename : content/media/video/test/test_wav_standalone.html => content/media/test/test_wav_standalone.html
rename : content/media/video/test/test_wav_timeupdate1.html => content/media/test/test_wav_timeupdate1.html
rename : content/media/video/test/test_wav_timeupdate2.html => content/media/test/test_wav_timeupdate2.html
rename : content/media/video/test/test_wav_trailing.html => content/media/test/test_wav_trailing.html
rename : content/media/video/test/test_wav_trunc.html => content/media/test/test_wav_trunc.html
rename : content/media/video/test/test_wav_trunc_seek.html => content/media/test/test_wav_trunc_seek.html
rename : content/media/video/test/use_large_cache.js => content/media/test/use_large_cache.js
rename : content/media/video/src/nsWaveDecoder.cpp => content/media/wave/nsWaveDecoder.cpp
rename : content/media/video/public/nsWaveDecoder.h => content/media/wave/nsWaveDecoder.h
2009-06-26 16:23:15 +12:00