soiz1 commited on
Commit
ebb64a7
·
verified ·
1 Parent(s): 770bacf

Update index.html

Browse files
Files changed (1) hide show
  1. index.html +11 -21
index.html CHANGED
@@ -51,8 +51,8 @@
51
 
52
  <div class="control-group">
53
  <label for="volumeRange">音量:</label>
54
- <input type="range" id="volumeRange" min="0" max="100" step="1" value="100">
55
- <input type="number" id="volumeInput" min="0" max="100" step="1" value="100">%
56
  </div>
57
 
58
  <div class="control-group">
@@ -71,24 +71,22 @@
71
  const volumeInput = document.getElementById('volumeInput');
72
  const loopCheckbox = document.getElementById('loopCheckbox');
73
 
74
- // Web Audio APIの初期化
75
  const audioContext = new (window.AudioContext || window.webkitAudioContext)();
76
  const gainNode = audioContext.createGain();
77
- const sourceNode = audioContext.createMediaElementSource(video);
78
- sourceNode.connect(gainNode);
79
  gainNode.connect(audioContext.destination);
80
 
81
- // 音量更新
82
  function updateVolume(value) {
83
- const volume = parseFloat(value);
84
- volumeInput.value = volume;
85
- volumeRange.value = volume;
86
-
87
- // 音量は0から1を超えて設定可能(100までで対応)
88
- gainNode.gain.value = volume / 100;
89
  }
90
 
91
- // 再生速度更新
92
  function updatePlaybackRate(value) {
93
  const speed = parseFloat(value);
94
  speedInput.value = speed;
@@ -118,14 +116,6 @@
118
  video.loop = loopCheckbox.checked;
119
  });
120
 
121
- // 動画の再生を始める
122
- video.addEventListener('play', () => {
123
- // Web Audio APIの音声を再生
124
- if (audioContext.state === 'suspended') {
125
- audioContext.resume(); // 再生前にオーディオコンテキストが一時停止している場合、再開
126
- }
127
- });
128
-
129
  function goFullscreen() {
130
  if (video.requestFullscreen) {
131
  video.requestFullscreen();
 
51
 
52
  <div class="control-group">
53
  <label for="volumeRange">音量:</label>
54
+ <input type="range" id="volumeRange" min="0" max="200" step="1" value="100">
55
+ <input type="number" id="volumeInput" min="0" max="200" step="1" value="100">%
56
  </div>
57
 
58
  <div class="control-group">
 
71
  const volumeInput = document.getElementById('volumeInput');
72
  const loopCheckbox = document.getElementById('loopCheckbox');
73
 
74
+ // Web Audio API用のセットアップ
75
  const audioContext = new (window.AudioContext || window.webkitAudioContext)();
76
  const gainNode = audioContext.createGain();
77
+ const source = audioContext.createMediaElementSource(video);
78
+ source.connect(gainNode);
79
  gainNode.connect(audioContext.destination);
80
 
81
+ // 音量を制御する関数
82
  function updateVolume(value) {
83
+ const volume = parseFloat(value) / 100;
84
+ volumeInput.value = value;
85
+ volumeRange.value = value;
86
+ gainNode.gain.value = volume;
 
 
87
  }
88
 
89
+ // 再生速度を制御する関数
90
  function updatePlaybackRate(value) {
91
  const speed = parseFloat(value);
92
  speedInput.value = speed;
 
116
  video.loop = loopCheckbox.checked;
117
  });
118
 
 
 
 
 
 
 
 
 
119
  function goFullscreen() {
120
  if (video.requestFullscreen) {
121
  video.requestFullscreen();