Лучший анализ с tone.jsHtml

Программисты Html
Ответить Пред. темаСлед. тема
Anonymous
 Лучший анализ с tone.js

Сообщение Anonymous »

Я использую Tone.js в своем проекте, чтобы проанализировать загруженный аудиофайл, где я играл в музыкальную пьесу. С этим анализом я хочу показать вопрос об аудио, который связан с теорией музыки. Когда пользователь отвечает на вопрос, это показывает, если вы ответили правильно или неправильно и объясняют. Кто -нибудь может мне помочь?async function analyzeAudio() {
const fileInput = document.getElementById("audioUpload").files[0];
if (!fileInput) {
alert(currentLanguage === "en" ? "Upload an audio file!" : "Upload een audio-bestand!");
return;
}

//Upload audio file from your files
const audioPlayer = document.getElementById("audioPlayer");
audioPlayer.src = URL.createObjectURL(fileInput);
audioPlayer.style.display = "block";
audioPlayer.load();

//Read and analyze the uploaded audio
const reader = new FileReader();
reader.readAsArrayBuffer(fileInput);
reader.onload = async () => {
const audioContext = new (window.AudioContext || window.webkitAudioContext)();
audioBuffer = await audioContext.decodeAudioData(reader.result);

const offlineContext = new OfflineAudioContext(1, audioBuffer.length, audioBuffer.sampleRate);
const source = offlineContext.createBufferSource();
source.buffer = audioBuffer;

const analyser = offlineContext.createAnalyser();
analyser.fftSize = 2048;
const dataArray = new Uint8Array(analyser.frequencyBinCount);

// console.log(dataArray)

source.connect(analyser);
analyser.connect(offlineContext.destination);
source.start();

await offlineContext.startRendering();

analyser.getByteFrequencyData(dataArray);
generateQuestion(dataArray);
};
< /code>
} < /p>
edit: < /strong>
Вот обдуманное при анализе масштаба моего загруженного аудио < /p>
function analyzeScale(dataArray) {
let oddHarmonics = 0, evenHarmonics = 0;

for (let i = 1; i < dataArray.length; i += 2) {
oddHarmonics += dataArray;
}
for (let i = 2; i < dataArray.length; i += 2) {
evenHarmonics += dataArray;
}

if (oddHarmonics > evenHarmonics) {
correctAnswer = "minor";
explanation = "This music contains relatively many odd harmonics, which suggests a minor scale with a darker sound.";
} else {
correctAnswer = "major";
explanation = "This music contains relatively many even harmonics, which is characteristic of a major scale with a brighter sound.";
}

document.getElementById("question").innerText = "Is this music in a major or minor key?";
< /code>
} < /p>
и проверка ответа < /p>
function checkAnswer() {
const userAnswer = document.getElementById("answer").value.toLowerCase();
const feedback = document.getElementById("feedback");

if (userAnswer === correctAnswer) {
feedback.innerHTML = `Correct! ${explanation}`;
questionIndex++; // Move to the next question
setTimeout(askNextQuestion, 3000);
} else {
feedback.innerHTML = `Incorrect. ${explanation} Try again!`;
}
< /code>
} < /p>
После того, как я загружаю свой звук, на странице показывает вопрос: эта музыка в основном или незначительном ключе? Я получу объяснение: эта музыка содержит относительно много странных гармоник, которые предлагают незначительный шкал с более темным звуком. Я как -то понял, что я ответил на неправильное, потому что теперь я точно наверняка

Подробнее здесь: https://stackoverflow.com/questions/796 ... th-tone-js
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение
  • Лучший анализ с tone.js
    Anonymous » » в форуме CSS
    0 Ответы
    3 Просмотры
    Последнее сообщение Anonymous
  • Лучший анализ с tone.js
    Anonymous » » в форуме Javascript
    0 Ответы
    5 Просмотры
    Последнее сообщение Anonymous
  • Лучший анализ с tone.js
    Anonymous » » в форуме Html
    0 Ответы
    2 Просмотры
    Последнее сообщение Anonymous
  • Лучший анализ с tone.js
    Anonymous » » в форуме CSS
    0 Ответы
    2 Просмотры
    Последнее сообщение Anonymous
  • Пользовательские цвета ICOFONT Duo Tone
    Anonymous » » в форуме CSS
    0 Ответы
    30 Просмотры
    Последнее сообщение Anonymous

Вернуться в «Html»