Commit Graph

365 Commits

Author SHA1 Message Date
Robert O'Callahan
9c0e48342a Bug 502211. Convert 'new Audio' tests to be backend-independent. r=doublec 2009-07-10 14:03:02 +12:00
Robert O'Callahan
83fcea2f10 Bug 502211. Convert test_wav_8bit to a playtest. r=doublec 2009-07-10 14:03:02 +12:00
Robert O'Callahan
809d74757c 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
22578eddd2 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
108c42b7e8 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
a2bede9d66 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
b456ec8e36 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
828918bcb5 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
f86e17cca9 Bug 495163. Trivial code removal, r=roc
--HG--
extra : rebase_source : 5dee5799025c99cad5f7ae8ca7cc4ade3f650a89
2009-06-12 14:08:32 +12:00
Robert O'Callahan
f600456032 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
2e0c46ca2e 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
be07afd637 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
c294f41ab4 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
2cc8fbe2b4 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
cbd6ab1481 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
85828511ef 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
353ec097d1 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
496609122c Backing out bug 487519 due to reftest failures 2009-06-01 00:09:17 +12:00
Robert O'Callahan
7a349ea412 Fixing bustage (bug 495300) 2009-05-31 22:28:57 +12:00
Chris Double
52d8631083 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
42b669ed47 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
fb1b735b72 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
c9cca633a1 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
2b08d28a2e Bug 495129. Propagate errors better. r+sr=roc 2009-05-28 16:39:39 +12:00
Robert O'Callahan
6134d7088d 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
4f81b0342f 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
1ae4c2a0d3 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
3dc99d8a9f 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
3d39f15314 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
4a9eea3922 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
e3232bfecd Fix another FrameData leak (Bug 463358). Fixes intermittent orange. 2009-05-21 03:17:21 +12:00
Robert O'Callahan
dfae15cade Fix FrameData leak (bug 463358) 2009-05-20 21:11:48 +12:00
Robert O'Callahan
cda3109ffc 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
b515f90d78 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
efef7a6bc2 Backing out bug 493109 on suspicion of causing crashes in linux tests 2009-05-20 00:24:37 +12:00
Robert O'Callahan
6256de7f9c Backed out changeset 4b86cbae2846 2009-05-20 00:23:51 +12:00
Robert O'Callahan
f843370660 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
b4d2d7054a 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
d848e30d78 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
5b5d6baa5f 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
127a265725 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
3d87360eee 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
Chris Pearce
a0da0c82f6 Bug 487612. Let the start time of all media be 0 even if the internal timestamps start with something nonzero. r=doublec,roc
--HG--
extra : rebase_source : ee419a06388a5230cddd79c78ddb86ed99fb6400
2009-05-19 17:25:51 +12:00
Matthew Gregan
f201fe7c68 Bug 454971. Support 'new Audio()' constructor. r+sr=roc
--HG--
extra : rebase_source : 1738d65cd16a79d69408055a8d9feb5ab5d97923
2009-05-19 17:18:41 +12:00
Robert O'Callahan
bb3c7fc0f9 Bug 492420. Delay a little before playing a live stream to try to reduce the likelihood we'll have to buffer. r=doublec
--HG--
extra : rebase_source : 022aa4d89644b3cfef62f95b4349932594de734f
2009-05-19 17:14:20 +12:00
Robert O'Callahan
acdb5cc508 Bug 480058. Handle non-square Theora pixel-aspect-ratio property. r=doublec
--HG--
extra : rebase_source : 762e10566ae85d0f73d7080ccb090533d50bfe66
2009-05-19 11:07:19 +12:00
Robert O'Callahan
0855ba8432 Bug 493509. Don't fire 'suspend' when the resource is actually fully loaded. r=doublec
--HG--
extra : rebase_source : a7ae1b2f53c7eb4b8a0e270510028d155d79f319
2009-05-19 11:06:10 +12:00
Robert O'Callahan
f1b439157e Bug 487659. Make sure we never pass a playback rate of 0 to the media cache. r=doublec
--HG--
extra : rebase_source : af86613bb5283e777acf1ca01d67eaa734cb8a0f
2009-05-19 11:05:13 +12:00
Robert O'Callahan
0785b005eb Bug 493187. Call nsOggDecoder::UpdateReadyStateForData more often so we don't fail to notice state changes, and make it smarter about examining the frame queue. r=doublec
--HG--
extra : rebase_source : 9a45e7cf9dc048956971ecf83b0bcc9bb2e45491
2009-05-19 10:47:08 +12:00
Robert O'Callahan
a3f433b1b3 Bug 493443. Set readyState to HAVE_CURRENT_DATA whenever the Ogg frame queue is empty or we're buffering/seeking, instead of trying to hardcode it based on other events like PlaybackEnded. r=doublec
--HG--
extra : rebase_source : 0b2f938e5f19cbb21258248da9da09e2a525db81
2009-05-19 10:44:17 +12:00
Benjamin Smedberg
bb1c33c4ea Bug 488175 - flatten dist/include and provide mechanism to install certain headers in namespaced subdirectories (e.g. #include "mozilla/XPCOM.h") r=ted
--HG--
rename : xpcom/ds/nsTimeStamp.cpp => xpcom/ds/TimeStamp.cpp
rename : xpcom/ds/nsTimeStamp.h => xpcom/ds/TimeStamp.h
2009-05-18 14:15:05 -04:00
Robert O'Callahan
ceaf55f434 Fix test_media_selection.html; its video resource needs to be autobuffer so it doesn't stop loading
--HG--
extra : rebase_source : 937602951c6a8c9831f6a73adc913457e913a7d6
2009-05-18 20:18:43 +12:00
Robert O'Callahan
2d8939e3ca Fix test_autobuffer2 to handle the case when a suspend happens when all the data is already loaded.
--HG--
extra : rebase_source : 7923d3fde3e4aef1723e424631f65a64d663f2a3
2009-05-18 16:37:10 +12:00
Robert O'Callahan
5c3106e300 Relax time constraint in test_buf482461 a bit.
--HG--
extra : rebase_source : 01fda6b6e4f50a8207208b22811a335117f9518c
2009-05-18 15:20:40 +12:00
Robert O'Callahan
9ae2cf2709 Bug 479863. AdFire 'suspend' event and do correct networkState transitions when downloads suspend and resume. Also avoid firing 'stalled' while the download is suspended. r=doublec
--HG--
extra : rebase_source : 0615871c062638d575a66e29b630040821a9f9cf
2009-05-18 14:03:37 +12:00
Robert O'Callahan
710d28a4e6 Bug 479863. Add ability to close and reopen suspended streams, and recover from server-side disconnect of suspended streams. r=doublec
--HG--
extra : rebase_source : 5ed7825cd919ad3f997f58dafb61c2d4249b60d4
2009-05-18 14:02:20 +12:00
Robert O'Callahan
a2a28c523b Bug 479863. Stop buffering media elements by default, implement 'autobuffer' attribute to control buffering. r=doublec
--HG--
extra : rebase_source : 5fa0b63da981fdfcf7b1555174b6d1122bf2ae97
2009-05-18 14:00:44 +12:00
Robert O'Callahan
80975dcc56 Fix seeking tests to avoid false assumptions 2009-05-18 12:25:05 +12:00
Robert O'Callahan
ee1a877ccf Fix test_seek5; it should not depend on reading currentTime for the first seek during the asynchronous 'seeking' event, since the second seek may well have already happened. 2009-05-18 12:15:32 +12:00
Chris Pearce
ff942d65f4 Bug 469408. Make seeking in bufferred ranges fast by trying a 'bounded seek' in each buffered data range before falling back to a seek over the whole resource. r=doublec,sr=roc 2009-05-18 10:15:57 +12:00
Robert O'Callahan
c2bc1f2907 Bug 476973. Don't get confused by repeated seeks in the Ogg decoder. r=doublec 2009-05-18 10:03:03 +12:00
Josh Aas
2f6891c68f Disable test "test_videoDocumentTitle.html" due to random failures. b=492821 2009-05-15 23:20:39 -04:00
Robert O'Callahan
9bc46422a9 Disable test_autobuffer2.html for now, it fails a lot (bug 493692 filed) 2009-05-19 17:44:23 +12:00
Robert O'Callahan
e2ae04f459 Make test_autobuffer2.html more informative to try to narrow down the failures 2009-05-19 16:10:08 +12:00
Robert O'Callahan
45d2769b54 Backing out bug 480058 since it seems to have caused reftest failures on Windows 2009-05-19 16:04:16 +12:00
Robert O'Callahan
fb15d8ccac Backed out changeset 49f254a4390e 2009-05-19 16:03:49 +12:00
Chris Double
7d1ceb826c Bug 461286. Don't try to get more frames if we've completed decoding. r=roc
--HG--
extra : rebase_source : 11346f044176fdaba753e5a4ce5d74ef91ffc493
2009-05-19 12:07:27 +12:00
Chris Double
16b6058725 Bug 493494. Stop playback when a seek occurs so that A/V sync doesn't get confused. r=roc
--HG--
extra : rebase_source : 8dd4c7d5e95472cb17f7523db56446966f11f704
2009-05-19 11:11:59 +12:00
Robert O'Callahan
54052b20f1 Bug 489415. Handle media streams with data from different principals in the media cache. r=bzbarsky,doublec 2009-05-14 09:52:50 +12:00
Chris Double
9f038bfa2e Bug 466699 - Fix out of sync video and audio - r+sr=roc
--HG--
extra : rebase_source : ee8eedf72add30627fdbeef7cf22bc70a9415362
2009-05-15 13:29:05 +12:00
Robert O'Callahan
bb0f8610f9 Backed out changeset eb93563530d5 2009-05-14 12:38:33 +12:00
Robert O'Callahan
9926956f04 Bug 489415. Handle media streams with data from different principals in the media cache. r=bzbarsky,doublec
--HG--
extra : rebase_source : 2551f25e1828939dbb1619c31d3cedc2217a6623
2009-05-14 09:52:50 +12:00
Chris Double
f875415388 Bug 474540 - Moves oggplay decoder to separate thread for better playback performance in big videos - r=kinetik sr=roc
--HG--
extra : rebase_source : 8f6925b3dc3a50e8bb02f39d76d2b2444b089b6d
2009-05-13 11:47:52 +12:00
Jeff Muizelaar
ab93609bae Bug 487305 - create video surface element with RGB24 colour format instead of ARGB32. r=joe 2009-05-12 15:25:05 -04:00
Matthew Gregan
016153f95a Bug 488287. When playback ends, readyState should change to HAVE_CURRENT_DATA. r=doublec,sr=roc
--HG--
extra : rebase_source : ea224af1634304c40d7e4ea0f564e72ccab65caa
2009-05-08 14:25:13 +12:00
L. David Baron
8c38aba811 Switch HTML mochitests from using MochiKit.js to packed.js. (Bug 490955) r=sayrer 2009-05-06 13:46:04 -07:00
Chris Pearce
79d9578afd Bug 488961 - Don't listen for 'stalled' event in content/media/video/test_load.html 2009-04-27 13:03:47 +12:00
Honza Bambas
e1d4b6d384 Bug 486646 - nsMediaChannelStream::OnStopRequest nulls out mChannel too early, r=roc+bz 2009-04-21 20:43:09 +02:00
Robert O'Callahan
642498a112 Bug 486991. Convert nsMediaStream and media decoders to use TimeStamp/TimeDuration. r=doublec 2009-04-11 21:39:24 +12:00
Robert O'Callahan
7a2ad352d5 Bug 486991. Convert nsMediaCache to use TimeStmap/TimeDuration. r=doublec 2009-04-11 21:39:02 +12:00
Chris Double
9761fb97cb Bug 487552. Stop playback while buffering so that we don't lose audio sync. r=roc
--HG--
extra : rebase_source : b9d10569862aeed02c424fdaec64a5062fa3c7bc
2009-04-10 13:34:15 +12:00
Chris Pearce
ee8c4eae0d Bug 482885. Ensure media channels are in the document loadgroup. r=bzbarsky,r+sr=roc
--HG--
extra : rebase_source : da14c85f0efd3eda24739161f8195d24117da261
2009-04-10 13:28:24 +12:00
Robert O'Callahan
95cf32025a Bug 486556. Don't rely on loadeddata firing before the document load event, per spec it might not. r=doublec
--HG--
extra : rebase_source : 66db9e1f5e94d17f028855e62ebe1aee2ee5acc4
2009-04-10 13:12:19 +12:00
Robert Longson
b2f8e75361 Bug 486934 - video display should take account of image-rendering CSS property. r+sr=roc 2009-04-06 12:05:29 +01:00
Robert O'Callahan
5bde4bb05f Backout incorrectly pushed changes 2009-04-06 14:19:27 +12:00
Robert O'Callahan
1ca364a2d0 Fix libxul test bustage
--HG--
extra : rebase_source : 49e42436893e10cae0e70cc5468b4d95a47cb07d
2009-04-06 14:15:26 +12:00
Matthew Gregan
30576094cf Bug 486923. Clean up nsWaveDecoder a bit. r+sr=roc 2009-04-06 12:20:51 +12:00
Chris Double
15b8c00987 Bug 486641. StopPlayback after Drain()ing the audio stream so we create a new audio stream the next time audio is used. r=kinetik 2009-04-06 12:19:33 +12:00
Matthew Gregan
a1bb6c1bab Remove some unnecessary dump() calls from my video mochitests. No bug. r=xenu 2009-04-05 11:39:30 +12:00
Matthew Gregan
6171b2a005 Bug 485291 - Update liboggplay to b4a7efa06d46596515071490cb255c3548d90371. rs=roc, r=ted.mielczarek for build changes, r=chris.double for local liboggplay changes
--HG--
extra : rebase_source : 84b9322bc764ff70d0df4bd9ff51c3ec243bdc1d
2009-04-04 01:56:22 +13:00
Robert O'Callahan
76cc4c16be Bug 475441. Fix tests that assume a 'playing' event will be sent when we replay after playback has ended. r=doublec 2009-04-01 14:07:17 +13:00
Robert O'Callahan
7d5620c7aa Bug 475441. Make nsWaveDecoder seek instead of reloading when asked to replay after playback has ended. r=kinetik 2009-04-01 14:07:17 +13:00
Robert O'Callahan
32245a0582 Bug 475441. Make nsOggDecoder seek instead of reloading when asked to replay after playback has ended. r=doublec 2009-04-01 14:07:10 +13:00
Robert O'Callahan
64b6352d5f Bug 475441. Make the media cache size really small while we're running mochitests, to give the cache code a thorough workout. r=doublec 2009-04-01 13:52:56 +13:00
Robert O'Callahan
742c2cd62e Bug 475441. Implement media data cache. r=doublec,kinetik 2009-04-01 13:52:56 +13:00
Robert O'Callahan
693437fc2e Backed out changeset b6a1093e5814 2009-04-01 16:19:00 +13:00
Robert O'Callahan
7476df2627 Bug 475441. Implement media data cache. r=doublec,kinetik
--HG--
extra : rebase_source : 3907c84869b1c8bad2279295858ff77ab159d6ee
2009-04-01 13:52:56 +13:00
Robert O'Callahan
168c4a55b9 Bug 475441. Clean up media tests to avoid opening windows or leaving them lying around. r=doublec
--HG--
extra : rebase_source : 86a5dabc1992d0676de30d67db99bec3e1b91b54
2009-03-30 14:22:02 +13:00
Robert O'Callahan
441ffd3298 Bug 475441. Rename media stream classes. r=doublec
--HG--
extra : rebase_source : 824365b6fae0224ffa2ed78bc6062c74c7a02fc5
2009-03-30 14:20:32 +13:00
Robert O'Callahan
e5926e97d4 Bug 475441. Merge nsDefaultStreamStrategy with nsHttpStreamStrategy. r=doublec
--HG--
extra : rebase_source : fd65378e88a550c9753333521bbaed05ee902e4d
2009-03-30 14:19:51 +13:00
Robert O'Callahan
4eeda3d9bb Bug 475441. Expose media strategy directly to decoders instead of proxying through nsMediaStream. r=doublec
--HG--
extra : rebase_source : 326765f1368497c2054531962cad224a43d5d05c
2009-03-30 14:19:10 +13:00
Matthew Gregan
b07995dc3c Bug 485036 - Shut down nsAudioStream when decode state machine shuts down. r=chris.double, sr=roc
--HG--
extra : rebase_source : aed2f4e5b6375c506d2b3afec5cb81b97bdba21d
2009-03-25 15:19:58 +13:00
Matthew Gregan
c4fca6383a Bug 483589 - Fix PRBool violation in nsWaveStateMachine::ScanForwardUntil. r+sr=roc
--HG--
extra : rebase_source : d1898e6ea258dd0a1ec1c13e099f70d11ac5ba2d
2009-03-16 18:53:48 +13:00
Matthew Gregan
9ba64c841a Bug 474748 - Defer YUV conversion until frame paint, and allow SetRGBData to assume ownership of the RGB buffer rather than copying it. r=chris.double, sr=roc
--HG--
extra : rebase_source : 7d122efaed1a506cebe35740f7e6d33bf6311ced
2009-03-17 16:45:00 +13:00
Matthew Gregan
37afa56509 Bug 474748 - Use EXTEND_NONE to paint video frames when target surface is X11. r+sr=roc
--HG--
extra : rebase_source : a97380f1d6d9d7c896dcf584aa845e4fcfbaa876
2009-03-17 11:12:13 +13:00
Matthew Gregan
9f3a5b2f76 Bug 470662 - Don't set paused to true when playback ends. Fix handling of playing/suspend attrs. r=chris.double, sr=roc
--HG--
extra : rebase_source : f5161f9a699015b41c4947b52624901786adc852
2009-02-27 00:55:30 +13:00
Matthew Gregan
8cea93aa59 Matthew Gregan - Bug 481109 - Ignore attempts to transition from shutdown to any other state in Wave decoder 2009-03-03 16:18:23 +13:00
Matthew Gregan
04ccb8e3ca Matthew Gregan - Bug 476813 - progress events shouldn't be fired while the network is stalled. r+ doublec sr+ roc 2009-03-02 19:16:14 +13:00
Chris Pearce
30d943ae95 Chris Pearce - Bug 478957 - Audit events when loading local files from another domain. r+ doublec sr+ roc 2009-03-09 10:02:14 +13:00
Chris Pearce
8504bb216c Chris Pearce - Bug 479711 - Media elements should delay the document 'load' event 2009-03-09 10:01:03 +13:00
Chris Pearce
bec4c67a63 Chris Pearce - Bug 479859 - Implement new new load algorithm r+ doublec sr+ roc. 2009-03-09 09:59:08 +13:00
Chris Double
1d4babacaa Bug 477899 - Requests for the duration of a media resource are cached by liboggplay, with fix for previous win32 buld error - r+sr=roc 2009-03-03 23:23:54 +13:00
Chris Double
20f90eea2c Backed out changeset 0722a0e98124 2009-03-03 22:01:06 +13:00
Chris Double
1424ff6f0c Bug 477899 - Requests for the duration of a media resource are cached by liboggplay - r+sr=roc 2009-03-03 21:35:50 +13:00
Matthew Gregan
3facbf1d48 Merge backout of 59d848818fd8. 2009-02-26 22:06:11 +13:00
Matthew Gregan
241ed4b214 Backed out changeset 59d848818fd8 2009-02-26 21:59:39 +13:00
Matthew Gregan
005e869ef9 Replace test Wave file with silent alternative. No bug. 2009-02-26 21:30:29 +13:00
Matthew Gregan
51b1c1c5aa Bug 470662 - Don't set paused to true when playback ends. r=chris.double, sr=roc 2009-02-25 14:41:42 +13:00
Matthew Gregan
620e25b404 Bug 471024 - volume or mute set early in media load ignored. r=chris.double, sr=roc 2009-02-25 23:59:00 +13:00
Matthew Gregan
b6b81dc5ee Bug 469275 - Seeks requested while Wave state machine is in ended state are lost. r+sr=roc
--HG--
extra : rebase_source : 03ead0a2032ac705b2156bb1b02aef33a414c67b
2009-02-24 15:34:36 +13:00
Ben Turner
c4e95fb3aa Bug 479725 - 'UMR [@ nsOggDecoder::GetStatistics], nsOggDecoder::mDuration not initialized'. r+sr=roc. 2009-02-22 16:51:06 -08:00
Chris Pearce
74bfee1398 b=465458 Media selection algorithm changed in r2403 of HTML5 spec r=doublec sr=roc
--HG--
extra : rebase_source : 09a091ebb5c7a42480a423ac304aacedfa286c4c
2009-02-20 15:49:00 +13:00
Chris Double
66f2bcbbca Backed out changeset 2b7e176d9e73 2009-02-20 16:01:58 +13:00
Chris Double
f95ec3e145 b=477899 Calls to liboggplay to get the duration of a media resource should be cached r+sr=roc 2009-02-20 15:37:06 +13:00
Matthew Gregan
e8bfc86879 Bug 469268 - More mochitests for the Wave decoder backend. Also enable the test disabled due to bug 474754. r+sr=roc 2009-02-19 18:23:13 +01:00
Matthew Gregan
fc66ef3b4b Bug 478684 - test_play.html fails intermittently
--HG--
extra : rebase_source : d84a07bc61144b7ab88e217bf9e5b815d273fb88
2009-02-18 17:16:18 +13:00
Matthew Gregan
f48db6edc8 Bug 469266 - Rewrite Wave decoder playback loop to reduce latency, improve accuracy of playback position reporting, and fire timeupdate events.
--HG--
extra : rebase_source : 2c2faa5af34abe2b5fe14d150207d9c375f7d567
2009-02-17 17:56:16 +13:00
Ted Mielczarek
a30e7aa171 disable crashtest 428844-1.html for random failures, see bug 471185. disable media test_play.html for random failures, see bug 478868 2009-02-17 11:43:17 -05:00
Chris Pearce
9375bb735b Bug 462455. Initiate media load when appending <source> child elements to media elements. r=doublec,sr=roc
--HG--
extra : rebase_source : b9bca050ef528705c08988d3677bf9bd8c865f33
2009-02-16 14:05:28 +13:00
Chris Pearce
57ecf8cbff Bug 476731 - Media element should fire error event when src is a 404; missing test_error_on_404.html; r=chris.double sr=roc 2009-02-15 18:14:49 +01:00
Chris Pearce
0528fe151f Bug 476731 - Media element should fire error event when src is a 404; r=chris.double sr=roc 2009-02-15 17:26:32 +01:00
Robert O'Callahan
7a844fd2b8 Bug 476176. Avoid potential deadlock warnings by not calling 'Available' on the media stream when checking whether to exit buffering; instead we can use our internal position counters. r=doublec
--HG--
extra : rebase_source : 51901db1ddca66b658d04d8c24769590a8faa7f7
2009-02-11 14:44:39 +13:00
Robert O'Callahan
a60bcefab7 Bug 476811. Fire 'waiting' event when the decoder starts buffering. r=doublec
--HG--
extra : rebase_source : 1ac5d728e4f3f3e83de61d0806b20f328cdf380c
2009-02-11 14:43:45 +13:00
Robert O'Callahan
af7e712e3f Bug 469272. Get rid of mPlayRequested since it's not needed; just use mPaused to remember whether we should be playing or not, if play() is called before the stream is loaded. r=doublec,r=kinetik
--HG--
extra : rebase_source : 2753730346f3159f07214e0116a9a32bc45a348d
2009-02-11 14:23:19 +13:00
Chris Double
efa39a8385 Back out bug 476731 in commit id 364777bc90b5 due to reftest failures 2009-02-09 15:52:04 +13:00
Chris Double
cb749708f5 Backed out changeset 364777bc90b5 due to test failures 2009-02-09 15:51:16 +13:00
Chris Double
d12a22daef Bug 469923 - Fix rounding issues with X-Content-Duration header causing test failure - r+sr=roc 2009-02-09 14:47:49 +13:00
Chris Pearce
8d5bc5908a Bug 476731 - Media element should fire error event when src is a 404 - r=doublec sr=roc 2009-02-09 14:04:10 +13:00
Chris Double
0757196440 Bug 469923 - Support X-Content-Duration for improved duration retrieval for Ogg media - r+sr=roc 2009-02-07 23:10:34 +13:00
Jesse Ruderman
2e1fda752f Add crashtests for the following bugs: https://bugzilla.mozilla.org/buglist.cgi?quicksearch=328944+401042+413085+416461+431705+437142+449006+463741+465651+472782+474744 2009-02-07 21:33:31 -08:00
Robert O'Callahan
c94a302481 Bug 455654. Rework the download-rate, playback-rate and related statistics so they're managed by the decoders in a thread-safe way. Implement proper HTML5 readyState handling with event firing, including 'canplay' and 'canplaythrough' events and autoplay behaviour. Also changes buffering so that we buffer when we're actually about to run out of data, instead of trying to guess when to buffer based on rate estimates. r=doublec 2009-02-05 21:02:21 +13:00
Robert O'Callahan
c752fcbe22 Backed out changeset ba595db2b681 2009-02-05 23:51:24 +13:00
Robert O'Callahan
3c26c1d1a0 Bug 455654. Rework the download-rate, playback-rate and related statistics so they're managed by the decoders in a thread-safe way. Implement proper HTML5 readyState handling with event firing, including 'canplay' and 'canplaythrough' events and autoplay behaviour. Also changes buffering so that we buffer when we're actually about to run out of data, instead of trying to guess when to buffer based on rate estimates. r=doublec 2009-02-05 21:02:21 +13:00
Chris Double
27dc9d2650 Bug 452698. Ensure that YUV to RGB conversion puts bytes in the right order for big-endian machines (PPC). r+sr=roc
--HG--
extra : rebase_source : 8939f59496da5548509ebd64a515947b071c204d
2009-01-30 20:30:37 +13:00
Matthew Gregan
e8b10c972d Bug 469698. Convert little-endian Wave data to native endinaness on big-endian machines (e.g. PPC). r+sr=roc
--HG--
extra : rebase_source : a791e7474167faed8bebfdfd9bf960fe6fb752df
2009-01-30 20:27:43 +13:00
Robert O'Callahan
6710c49b25 Bug 466410. Make sure videoWidth and videoHeight are posted to the element before metadataloaded fires. r=doublec 2009-01-28 22:33:37 +13:00
Chris Double
625058e17b Bug 475369. Fix regression from bug 451958 in passing mSeeking and mOffset to nsChannelToPipeListener. r+sr=roc 2009-01-28 22:27:09 +13:00
Chris Double
85e6295f63 Bug 451958 - Disable tests that fail randomly on Windows - r=roc 2009-01-27 15:33:03 +13:00
Chris Pearce
241aa1c5b2 Bug 451958. Add more CheckLoadURIs (part 4). r+sr=roc
--HG--
extra : rebase_source : de1defd553b7f14cd5a5c1f04ccd0821b4422e4d
2009-01-25 21:08:06 +13:00
Chris Pearce
389d3c06a1 Bug 451958. Add more CheckLoadURIs (part 3). r+sr=roc
--HG--
extra : rebase_source : e4fbaea74fa01592896982d4c3862fa8a0ad86dd
2009-01-25 21:07:54 +13:00