Commit Graph

273 Commits

Author SHA1 Message Date
Robert O'Callahan
f94fc9b0f6 Bug 503835. Wave codec 0 should be reported as unsupported. r=doublec
--HG--
extra : rebase_source : ab41c6d1e124ba52200bf91fcf7bc5d0c983b78e
2009-07-27 10:01:41 +12:00
Robert O'Callahan
1a3f77aef0 Bug 505150. 'new Audio' constructors should set autobuffer automatically. r=doublec
--HG--
extra : rebase_source : 418f3c2ad918ae729857363041273c95230dfd2c
2009-07-27 09:31:11 +12:00
Peter Weilbacher
8325fdca84 Bug 495352: Audio stream polling runs amok, p=dragtext@e-vertise, r=chris.double 2009-07-23 09:17:26 +03:00
Robert O'Callahan
e3d0f72897 Fix for bug 503468 (canPlayType should return "", not "no"). r=cdouble.
--HG--
extra : rebase_source : d54cf6d92a20a5f7e6ce66042c8d489dc93f0c7a
2009-07-14 16:04:56 +02:00
Robert O'Callahan
2572e852f9 Disable seek tests on Windows again
--HG--
extra : rebase_source : 45d9d5bff5f5241731c1bc6f1f3aa5e92deec1e9
2009-07-13 10:45:36 +12:00
Robert O'Callahan
49aca666c9 Fix bustage properly
--HG--
extra : rebase_source : 109364254fd687c60770b2f9b0af0e6aaf14a1b6
2009-07-10 15:08:34 +12:00
Robert O'Callahan
d81d74cb19 Fix bustage temporarily 2009-07-10 14:39:16 +12:00
Robert O'Callahan
74625ec81b Bug 493915. Fix leak in media element when an error occurs early in the resource load. r=cpearce 2009-07-10 14:03:03 +12:00
Robert O'Callahan
2f3ff304f9 Bug 502211. Convert 'new Audio' tests to be backend-independent. r=doublec 2009-07-10 14:03:02 +12:00
Robert O'Callahan
2ebf436b48 Bug 502211. Convert test_wav_8bit to a playtest. r=doublec 2009-07-10 14:03:02 +12:00
Robert O'Callahan
1932b57439 Bug 502211. Unify seek tests into a single backend-independent test. r=doublec
--HG--
rename : content/media/test/test_seek1.html => content/media/test/seek1.js
rename : content/media/test/test_seek3.html => content/media/test/seek2.js
rename : content/media/test/test_seek4.html => content/media/test/seek3.js
rename : content/media/test/test_seek5.html => content/media/test/seek4.js
rename : content/media/test/test_seek6.html => content/media/test/seek5.js
rename : content/media/test/test_seek7.html => content/media/test/seek6.js
rename : content/media/test/test_seek8.html => content/media/test/seek7.js
rename : content/media/test/test_seek9.html => content/media/test/seek8.js
2009-07-10 14:03:02 +12:00
Robert O'Callahan
c37d3bafc6 Bug 502211. Create test_playback and test_playback_errors for easy regression testing. r=doublec 2009-07-10 14:03:01 +12:00
Robert O'Callahan
bb8a6c3b8b Bug 502211. Make test_media_selection.html and test_load.html backend-independent. r=doublec 2009-07-10 14:03:01 +12:00
Matthew Gregan
3c8596b473 Bug 495794 - Fix crash when destroying audio stream that failed to open cleanly. r=chris.double 2009-07-02 16:38:26 +12: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
Chris Double
dd020ab03a Bug 496456. When we seek to the end, we should only fire end stuff if we're not playing, otherwise playing should be responsible for ending. Set the current frame time at the end of the stream to the duration, if it's longer than our end time estimate, because the duration can include more than one frame-time's worth of audio. Also, don't replicate a frame of audio in DecodeToFrame when seeking. r=cpearce,sr=roc
--HG--
extra : rebase_source : e34cc28482e2b0ced5ec0774ce73865501400ca6
2009-06-12 14:14:28 +12:00
Matthew Gregan
6ed2191af1 Bug 495163. Trivial code removal, r=roc
--HG--
extra : rebase_source : 5dee5799025c99cad5f7ae8ca7cc4ade3f650a89
2009-06-12 14:08:32 +12:00
Robert O'Callahan
f020867639 Bug 496581. If we seek to the end, enter COMPLETED state instead of trying to decode more. r=doublec
--HG--
extra : rebase_source : 16d4e604e40384221b148bf8939339179a93d96c
2009-06-12 14:07:08 +12:00
Robert O'Callahan
c41a58c04d Bug 494322. nsMediaCache verification code is super slow in debug builds, so turn it off during seeking so we don't get O(N^2) slowdowns. r=doublec
--HG--
extra : rebase_source : a088ef84206eeb7e6e77d42fecb1bbd8f0721c60
2009-06-12 13:43:23 +12:00
Chris Pearce
373b3baa8d Bug 496147 - Ensure ended is true when video playback is ended. r=doublec,sr=roc
--HG--
extra : rebase_source : dc04fe505e75d91e5e1f694728aba8f5be0e32b2
2009-06-12 12:56:50 +12:00
Serge Gautherie
770b7d9955 Bug 494769 - [MacOSX] mochitest-plain: test_wav_trailing.html (and others) intermittently triggers "malloc: *** error: can't allocate region"; (Fv1) reorder file list 2009-06-09 16:07:22 +02:00
Matthew Gregan
bfa49f248b Bug 494116 - Use system audio timer for a/v sync on Windows. r=chris.double, sr=roc 2009-06-03 10:32:11 +12:00
Chris Pearce
60c046a220 Bug 495507 audio sync - send blank audio when the audio stream has closed, not when there's no audio to present. r+ doublec, sr+roc 2009-06-02 15:05:46 +12:00
Robert O'Callahan
a7381d3c2d Bug 495161. Buffer enough data in the Wave decoder that we never immediately leave BUFFERING after entering it. r=mgregan 2009-06-02 09:55:58 +12:00
Robert O'Callahan
95fa6aa4fc Bug 495319. Fire 'timeupdate' with the correct final time when we finish playing. r=doublec 2009-06-02 09:54:16 +12:00
Robert O'Callahan
ca157bbb5a Backing out bug 487519 due to reftest failures 2009-06-01 00:09:17 +12:00
Robert O'Callahan
a500ff4f1a Fixing bustage (bug 495300) 2009-05-31 22:28:57 +12:00
Chris Double
6664a71b4b Bug 487519. Work around Ogg bugs by decoding two frames before we seek to find the duration. r=roc 2009-05-31 22:06:30 +12:00
Robert O'Callahan
74b9d63089 Bug 495300. Trigger 'ended' behaviour when seeking to the end of a media resource. r=doublec 2009-05-31 22:02:17 +12:00
Chris Pearce
0c2e85ab11 Bug 495156 - Video playback gets stuck forever when pressing End key. r=doublec sr=roc a=blocking1.9.1+ 2009-05-29 00:15:16 -04:00
Chris Pearce
73e0202e9d Bug 495336 - liboggz oggz_get_next_page() and oggz_read_get_next_page() wrong r=doublec sr=roc a=blocking1.9.1+ 2009-05-29 00:13:23 -04:00
Chris Double
f1db574761 Bug 495129. Propagate errors better. r+sr=roc 2009-05-28 16:39:39 +12:00
Robert O'Callahan
cb8e86ef15 Bug 495145. Don't change the state away from ENDED if we try to pause in the ENDED state. r=doublec 2009-05-28 15:49:22 +12:00
Robert O'Callahan
244c6d80b4 Since test_load.html waits for load events, make sure it autobuffers and set the cache size to something large so loads aren't suspended. No bug, test-only change. 2009-05-25 12:51:01 +12:00
Chris Double
197958c8d1 Bug 494035. Never enable tracks we don't use. r=roc
--HG--
extra : rebase_source : ceffc78e6473273893fd1ad000799b32023f5c76
2009-05-25 12:45:47 +12:00
Robert O'Callahan
4c5f1dc42a Bug 494336. In DECODER_STATE_DECODING state, if mBufferExhaused is set then stop waiting for the next frame to become available. r=doublec
--HG--
extra : rebase_source : 8b9a35e65cd0ddde311a493b4762fbd58fa2abf6
2009-05-25 12:44:45 +12:00
Robert O'Callahan
8a7e78d507 Bug 475110. Don't try to handle Wave files loaded via links or <object> using our Wave codec, since there are Wave formats we don't support that are actually used in the wild. r=doublec,a=beltzner
--HG--
extra : rebase_source : 562c7c7c17157082483e456f33aa8b211fd07aeb
2009-05-25 12:42:19 +12:00
Chris Pearce
07fd01c8f8 Bug 493958. When decoding ahead to the desired seek position, save up the audio data as we go, because some of it might be needed for the destination frame and later frames. Also, if we reach the end of the frames without finding our destination position, keep the last frame and display it. r=doublec,roc 2009-05-21 17:55:12 +12:00
Chris Double
2ad9f5251f Fix another FrameData leak (Bug 463358). Fixes intermittent orange. 2009-05-21 03:17:21 +12:00
Robert O'Callahan
fa8b7ff6dc Fix FrameData leak (bug 463358) 2009-05-20 21:11:48 +12:00
Robert O'Callahan
cb30f65532 Bug 493109. Shut down step-decode thread from the main decoder thread, instead of synchronously on the main thread at bad times. r=doublec
--HG--
extra : rebase_source : 4af72350a51255e7e8748c726a17f9e88e1a540b
2009-05-19 11:08:08 +12:00
Chris Pearce
5e17d6a960 Bug 463358. Seek to any desired frame without visual artifacts by seeking to the previous keyframe and then decoding forward to the desired frame. r=doublec,roc
--HG--
extra : rebase_source : 602a8f9feb74a1ef88e86424028d8da7bcf57b58
2009-05-20 15:50:44 +12:00
Robert O'Callahan
038ef03387 Backing out bug 493109 on suspicion of causing crashes in linux tests 2009-05-20 00:24:37 +12:00
Robert O'Callahan
7534c33770 Backed out changeset 4b86cbae2846 2009-05-20 00:23:51 +12:00
Robert O'Callahan
d8d488ca5a Bug 486922. Clamp out-of-bounds seek requests. r=doublec
--HG--
extra : rebase_source : deeabc531d4fa6ada6e35740aed44bcc3844f233
2009-05-19 21:55:04 +12:00
Robert O'Callahan
075fbf3ff1 Fix test_media_selection.html to handle IDLE network states, since the cache size limit can suspend its loads
--HG--
extra : rebase_source : a90486545fbb993c48dba3ee0025418b7bdc915f
2009-05-19 21:53:38 +12:00
Robert O'Callahan
017c3d03e8 Bug 493109. Shut down step-decode thread from the main decoder thread, instead of synchronously on the main thread at bad times. r=doublec
--HG--
extra : rebase_source : 3a1a053308fc209181f7f23b234ba2f396de2a6e
2009-05-19 11:08:08 +12:00
Robert O'Callahan
2a3bc2dc98 Bug 480058. Handle non-square Theora pixel-aspect-ratio property. r=doublec
--HG--
extra : rebase_source : 0a43b053b52a9b1e300f7f516517722c44040992
2009-05-19 11:07:19 +12:00
Chris Double
507f48d89a Bug 493673. If a video frame has an audio track but no audio data at all, assume the audio has ended and stuff silence into the audio stream. We need this so that video will keep playing synced to the audio clock. r=roc
--HG--
extra : rebase_source : a1684fbd769ae48602335d312a33aa87ca17b8aa
2009-05-19 17:39:40 +12:00
Robert O'Callahan
1f03994614 Bug 493431. When a frame has no video data, don't try to use the video time. r=doublec
--HG--
extra : rebase_source : 985b41ec426c1cc793634c9f40f6924fbd33ed9b
2009-05-19 17:30:36 +12:00