質問するログイン新規登録

回答編集履歴

4

http://dinbror.dk/blog/how-to-preload-entire-html5-video-before-play-solved/

2018/03/22 08:26

投稿

HayatoKamono
HayatoKamono

スコア2415

answer CHANGED
@@ -64,8 +64,10 @@
64
64
  |HAVE_ENOUGH_DATA|4|Enough data is available—and the download rate is high enough—that the media can be played through to the end without interruption.|
65
65
 
66
66
 
67
+ # 最後まで読み込み完了を本当に探知する必要がある場合
67
68
 
68
- もっと、細かく読み込まれたデータ量をもとに何かをしたいのであれば、[buffered](https://www.w3schools.com/tags/av_prop_buffered.asp)プロパティーなるものがあるので、その辺りでプログマティックに応ができるかもしれません。しかし、html5のvideo、audioはストリーミングだと思うので、ダウンロードと違って、そもそも最初から最後まで読み込まれるということ自体がないのでは?(ちょっと、この辺、自分はちゃんと仕様を理解していないので何とも言えないですが)
69
+ ## 策候補1
70
+ もっと、細かく読み込まれたデータ量をもとに何かをしたいのであれば、[buffered](https://www.w3schools.com/tags/av_prop_buffered.asp)プロパティーなるものがあるので、その辺りでプログマティックに対応ができるかもしれません。しかし、html5のvideo、audioはストリーミングだと思うので、ダウンロードと違って、そもそも最初から最後まで読み込まれるということ自体がないのでは?
69
71
 
70
72
 
71
73
  ```
@@ -85,6 +87,14 @@
85
87
  })
86
88
  ```
87
89
 
90
+ ## 対策候補2
91
+
92
+ [http://dinbror.dk/blog/how-to-preload-entire-html5-video-before-play-solved/
93
+ ](http://dinbror.dk/blog/how-to-preload-entire-html5-video-before-play-solved/)
94
+
95
+ 上記記事のsolution#4として紹介されている方法が参考になるかと思います。
96
+
97
+
88
98
  # 追記
89
99
 
90
100
  > ちなみに音は10個以上あり、全ての読み込みが終了した時点で処理を実行したいです。

3

> ちなみに音は10個以上あり、全ての読み込みが終了した時点で処理を実行したいです。

2018/03/22 08:26

投稿

HayatoKamono
HayatoKamono

スコア2415

answer CHANGED
@@ -83,4 +83,17 @@
83
83
  }
84
84
 
85
85
  })
86
- ```
86
+ ```
87
+
88
+ # 追記
89
+
90
+ > ちなみに音は10個以上あり、全ての読み込みが終了した時点で処理を実行したいです。
91
+
92
+ audioタグが10個以上あり、それぞれで別の音声ファイルを読み込んでいるのでしょうか?
93
+
94
+ そして、それら全てのaudioタグに対し、1つだけ再生ボタンが紐付いているから、
95
+ 全ての読み込みが終了した時点で処理を実行したいということなのでしょうか?
96
+
97
+ 各audioタグに対して、それぞれ1つの再生ボタンが紐付いているということなのであれば、
98
+ 全部が読み込み終わるまで何かの処理の実行を行わずに待つということも不要だと思ったので、
99
+ 一応、確認です。

2

2018/03/22 02:23

投稿

HayatoKamono
HayatoKamono

スコア2415

answer CHANGED
@@ -65,7 +65,7 @@
65
65
 
66
66
 
67
67
 
68
- もっと、細かく読み込まれたデータ量をもとに何かをしたいのであれば、[buffered](https://www.w3schools.com/tags/av_prop_buffered.asp)プロパティーなるものがあるので、その辺りでプログマティックに対応ができるかもしれません。しかし、html5のvideo、audioはストリーミングだと思うので、ダウンロードと違って、そもそも最後まで読み込まれるということ自体がないのでは?(ちょっと、この辺、自分はちゃんと仕様を理解していないので何とも言えないですが)
68
+ もっと、細かく読み込まれたデータ量をもとに何かをしたいのであれば、[buffered](https://www.w3schools.com/tags/av_prop_buffered.asp)プロパティーなるものがあるので、その辺りでプログマティックに対応ができるかもしれません。しかし、html5のvideo、audioはストリーミングだと思うので、ダウンロードと違って、そもそも最初から最後まで読み込まれるということ自体がないのでは?(ちょっと、この辺、自分はちゃんと仕様を理解していないので何とも言えないですが)
69
69
 
70
70
 
71
71
  ```
@@ -73,7 +73,7 @@
73
73
 
74
74
  $audio.addEventListener('progress', function(e) {
75
75
 
76
- console.log('progress', $audio.buffered)
76
+ console.log('buffered', $audio.buffered)
77
77
  console.log('duration', $audio.duration)
78
78
  console.log('length', $audio.buffered.length)
79
79
 

1

;

2018/03/22 00:58

投稿

HayatoKamono
HayatoKamono

スコア2415

answer CHANGED
@@ -65,7 +65,7 @@
65
65
 
66
66
 
67
67
 
68
- もっと、細かく読み込まれたデータ量をもとに何かをしたいのであれば、[buffered](https://www.w3schools.com/tags/av_prop_buffered.asp)プロパティーなるものがあるので、その辺りでプログマティックに対応ができるかもしれません。
68
+ もっと、細かく読み込まれたデータ量をもとに何かをしたいのであれば、[buffered](https://www.w3schools.com/tags/av_prop_buffered.asp)プロパティーなるものがあるので、その辺りでプログマティックに対応ができるかもしれません。しかし、html5のvideo、audioはストリーミングだと思うので、ダウンロードと違って、そもそも最後まで読み込まれるということ自体がないのでは?(ちょっと、この辺、自分はちゃんと仕様を理解していないので何とも言えないですが)
69
69
 
70
70
 
71
71
  ```