質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.48%
JavaScript

JavaScriptは、プログラミング言語のひとつです。ネットスケープコミュニケーションズで開発されました。 開発当初はLiveScriptと呼ばれていましたが、業務提携していたサン・マイクロシステムズが開発したJavaが脚光を浴びていたことから、JavaScriptと改名されました。 動きのあるWebページを作ることを目的に開発されたもので、主要なWebブラウザのほとんどに搭載されています。

HTML

HTMLとは、ウェブ上の文書を記述・作成するためのマークアップ言語のことです。文章の中に記述することで、文書の論理構造などを設定することができます。ハイパーリンクを設定できるハイパーテキストであり、画像・リスト・表などのデータファイルをリンクする情報に結びつけて情報を整理します。現在あるネットワーク上のほとんどのウェブページはHTMLで作成されています。

Q&A

解決済

2回答

1470閲覧

JavaScriptで、HTMLファイルに音声データを埋め込み、HTML Audioで再生できますか?

707

総合スコア1

JavaScript

JavaScriptは、プログラミング言語のひとつです。ネットスケープコミュニケーションズで開発されました。 開発当初はLiveScriptと呼ばれていましたが、業務提携していたサン・マイクロシステムズが開発したJavaが脚光を浴びていたことから、JavaScriptと改名されました。 動きのあるWebページを作ることを目的に開発されたもので、主要なWebブラウザのほとんどに搭載されています。

HTML

HTMLとは、ウェブ上の文書を記述・作成するためのマークアップ言語のことです。文章の中に記述することで、文書の論理構造などを設定することができます。ハイパーリンクを設定できるハイパーテキストであり、画像・リスト・表などのデータファイルをリンクする情報に結びつけて情報を整理します。現在あるネットワーク上のほとんどのウェブページはHTMLで作成されています。

0グッド

0クリップ

投稿2021/06/11 13:01

編集2021/06/14 04:24

以下の条件を満たすことは可能でしょうか?
[1]HTMLファイルに音声データをJavaScriptで直接書く
[2][1]のデータを参照してHTML Audioで音声を再生する

html

1function audio1(){ 2 let bf = new ArrayBuffer(448); 3 let dv = new DataView(bf); 4 // 音声データを書く 5 let blob = new Blob([bf], {type: "audio/wav"}), 6 bloburl = window.URL.createObjectURL(blob); 7 return bloburl; 8}; 9let url=audio1(); 10let audio2=new Audio(); 11audio2.src = "url"; 12audio2.loop = true;

よろしくお願いします

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

miyabi_takatsuk

2021/06/11 16:32

> [1]HTMLファイルに音声データをJavaScriptで直接書く これがわかりません。 ようは、JavaScriptにて、仮想音楽ファイル(blob URL)を生成し、 audio要素にて再生する、ということですか? また、エラー文を翻訳はしましたか?
707

2021/06/12 01:00

わかりにくい質問の書き方をしてしまい申し訳ございません。おっしゃる通り、Blob URLをHTML Audioのsrcにしたい、という意図でございました。エラー文も翻訳いたしました。以下の通りでした。 Uncaught(in promise)DOMException:src属性または割り当てられたメディアプロバイダーオブジェクトによって示されるメディアリソースが適切ではありませんでした。Google翻訳より どうすれば適切なメディアリソースをsrc属性に割り当てられるか、が課題でした。
guest

回答2

0

ベストアンサー

端に、urlという文字列の指定になっているだけだからかと。
せっかく生成した、blob urlの、url変数を使用していません。
下記で解決するかと。

javascript

1square_wav.src = url;

それでもダメならコメント下さい。

投稿2021/06/11 16:36

miyabi_takatsuk

総合スコア9528

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

707

2021/06/12 00:39

ありがとうございます! お陰様でここしばらくの悩みがすべて解決しました。 まさか文字列urlをそのまま代入していたとは、今後の教訓とします。 とても助かりました。感謝いたします。
guest

0

音について詳しくはないですが、以下のところが文字列になっているので修正すると「Square wave」ボタンが鳴りました。

//square_wav.src = "url"; square_wav.src = url;

投稿2021/06/11 16:38

gas.engine

総合スコア608

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

707

2021/06/12 00:46

ありがとうございます。わざわざ動作確認までしてくださったのですね。 感謝しかございません。最初はgas.engine様のこの回答にベストアンサーになっていただこうと思っていましたが、すべての回答を拝見させいただき、ほんの2分差とはいえ、同様の解決方法を提示して下さったmiyabi_takatsuk様を選ばせていただきました。申し訳ございません。 お手数をおかけいたしました。ありがとうございます!
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.48%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問