HTML オーディオはHTML仕様の主題であり、音声入力、再生、合成、および音声のテキスト化をすべてブラウザー内で行います。
<audio> 要素
この<audio>要素はサウンドまたはオーディオ ストリームを表します。通常、Web ページ内で単一のオーディオ ファイルを再生し、再生/一時停止/音量コントロールを備えた GUI ウィジェットを表示するために使用されます。
この<audio>要素には次の属性があります:
- グローバル属性 (accesskey; class; contenteditable; contextmenu; dir; draggable; dropzone; hidden; id; lang; spellcheck; style; tabindex; title; translate)
- autoplay = "autoplay" または "" (空の文字列) または空
ユーザーエージェントに、停止せずにできるだけ早くオーディオ ストリームの再生を自動的に開始するように指示します。 - preload = "none" または "metadata" または "auto" または "" (空の文字列) または空
オーディオ ストリーム自体またはそのメタデータの楽観的なダウンロードが価値があるかどうかについて、ユーザー エージェントへのヒントを表します。- 「なし」: ユーザーがオーディオ ストリームを必要としないこと、または不要なトラフィックを最小限に抑えることが望ましいことをユーザー エージェントに示唆します。
- 「メタデータ」: ユーザーがオーディオ ストリームを必要とすることは想定されていないが、そのメタデータ (期間など) を取得することが望ましいことをユーザー エージェントに示唆します。
- 「自動」: オーディオ ストリーム全体を楽観的にダウンロードすることが望ましいと考えられることをユーザー エージェントに示します。
- controls = "controls" または "" (空の文字列) または空
ユーザーエージェントに、オーディオ ストリームの再生を制御するためのユーザー インターフェイスを公開するように指示します。 - loop = "loop" または "" (空の文字列) または空
ユーザーエージェントに、オーディオ ストリームの最後に達したら先頭に戻るように指示します。 - mediagroup = string
複数のビデオやオーディオ ストリームをリンクするようにユーザー エージェントに指示します。 - muted = "muted" または "" (空の文字列) または空
オーディオ ストリームのデフォルト状態を表し、ユーザー設定を上書きする可能性があります。 - src = 空でない [URL] スペースで囲まれる可能性があります
オーディオ ストリームの URL。
例:
対応ブラウザ
PCの場合:
- グーグルクローム
- インターネットエクスプローラー9
- ファイアフォックス3.5
- オペラ 10.5
- サファリ3.1
モバイルデバイスの場合:
- Android ブラウザ 2.3
- グーグルクローム
- インターネット エクスプローラー モバイル 9
- サファリ4
- ファイアフォックス
- Opera モバイル 11
サポートされているオーディオコーディング形式
HTML オーディオの採用は、HTML ビデオと同様に、フリー形式を支持する派と特許で保護された形式を支持する派の間で二極化しています。2007 年に、すべての主要ブラウザー ベンダーに受け入れられる形式がないことを理由に、 Vorbisの使用の推奨はOgg Theora の使用の推奨とともにW3CによってHTML5仕様から撤回されました。
AppleとMicrosoft は、ISO / IEC定義の形式であるAACと、旧式のMP3 をサポートしています。MozillaとOpera は、OggおよびWebMコンテナー内の無料かつオープンでロイヤリティフリーのVorbis形式をサポートしており、特許で縛られた性質を持つ MP3 と AAC を批判しており、これらは「非フリー」であることが保証されています。Googleは、これまでのところ、すべての一般的な形式をサポートしています。
有限長の AAC ファイルのほとんどは MPEG-4 コンテナ (.mp4、.m4a) でラップされており、Internet Explorer、Safari、Chrome ではネイティブでサポートされ、Firefox と Opera では OS によってサポートされています。[要出典]無限長の AAC ライブ ストリームのほとんどは Audio Data Transport Stream コンテナ (.aac、.adts) でラップされており、Chrome、Safari、Firefox、Edge でサポートされています。[1] [2] [3]
多くのブラウザはWAV Eコンテナ内の非圧縮PCMオーディオもサポートしています。[4]
2012年に、無料かつオープンでロイヤリティフリーのOpusフォーマットがIETFによってリリースされ、標準化されました。これはMozilla、Google、Opera、Edgeによってサポートされています。[4] [5] [6] [7]
この表は、要素によるオーディオ コーディング形式の現在のサポートを示します<audio>。
Web Audio API と MediaStream 処理 API
W3Cが開発した Web Audio API 仕様は、Web アプリケーションでオーディオを処理および合成するための高レベルの JavaScript API を説明しています。基本的なパラダイムはオーディオ ルーティング グラフであり、複数の AudioNode オブジェクトが相互に接続されて全体的なオーディオ レンダリングを定義します。実際の処理は主に基盤となる実装 (通常は最適化されたアセンブリ / C / C++ コード) で行われますが、直接の JavaScript 処理と合成もサポートされています。[27]
MozillaのFirefoxブラウザは、2010年に実装され2011年にリリースされたバージョン4以降、同様のAudio Data API拡張機能を実装していますが[28]、Mozillaはこれが非標準であり非推奨であると警告し、代わりにWeb Audio APIを推奨しています。[29] Audioletなどの一部のJavaScriptオーディオ処理および合成ライブラリは、両方のAPIをサポートしています。
W3Cオーディオワーキンググループは、Mozillaが開発したMediaStream Processing API仕様も検討している。[30] この仕様は、オーディオのミキシングと処理に加えて、HTML要素との同期、オーディオとビデオのストリームのキャプチャ、そのようなメディアストリームのピアツーピアルーティングなど、より一般的なメディアストリーミングをカバーしている。[31]
対応ブラウザ
PCの場合:
- Google Chrome 10 [32](14以降デフォルトで有効化[33])
- Firefox 23 (25 以降はデフォルトで有効)
- オペラ15
- サファリ6
- マイクロソフトエッジ12
- オペラGX36
モバイルデバイスの場合:
- Android 28 向けGoogle Chrome (29 以降はデフォルトで有効) および Apple iPad
- Safari 6 (使用制限あり (ユーザーが呼び出した場合以外はミュートされます))
- Firefox 23 (25 以降はデフォルトで有効)
- ティゼン
ウェブ音声API
Web Speech API は、 Web アプリケーションに代替入力方法 (キーボードを使用しない) を提供することを目的としています。この API を使用すると、開発者は Web アプリケーションに、コンピューターのマイクからの音声をテキストに書き起こす機能を提供できます。録音された音声は音声サーバーに送信され、書き起こされた後、テキストがユーザー向けに入力されます。API 自体は、基盤となる音声認識の実装に依存せず、サーバーベースの認識機能と埋め込み認識機能の両方をサポートできます。[34] HTML Speech Incubator グループは、統一されたクロスプラットフォーム API の形式で、ブラウザーにオーディオ音声技術を実装することを提案しています。API には次のものが含まれています。[35]
- 音声入力API
- テキスト読み上げAPI
Googleは2011年3月にこの機能をGoogle Chromeに統合しました。[36]次のようなコードでユーザーが音声でウェブを検索できるようにしました。
対応ブラウザ
- Safari 14.1以降[37]
- Google Chrome 25以上
- Firefoxデスクトップ 44.0 以上 (Linux および Mac) / 45.0 以上 (Windows) [部分的: 音声合成のみ、認識なし、49.0 以降でデフォルトで有効] [38] [39]
参照
注記
- ^ ab ライセンス上の理由により、AACコーデックはネイティブサポートされていません。オーディオファイルのデコードには、ホストOSが互換性のあるライブラリを提供する必要があります。[10]
- ^ MPEG-4 ファイルには、 メタデータを含むヘッダーと、それに続く「トラック」が含まれます。トラックには、H.264 でエンコードされたビデオや AAC でエンコードされたオーディオなど、ビデオとオーディオ データを含めることができます。対照的に、ADTS は一連のフレームで構成されるストリーミング形式であり、各フレームにはヘッダーがあり、その後に AAC データが続きます。[2]
参考文献
- ^ 「MP4 コンテナー · Issue #95 · karlheyes/icecast-kh」。GitHub。2022年11 月 18 日閲覧。
- ^ ab 「テクニカルノートTN2236: 高効率アドバンストオーディオコーディング(HE-AAC)」。
- ^ 「1224887 – OpenMax IL AAC オーディオ デコード クライアントを実装する」。
- ^ ab 「メディアタイプとフォーマットガイド: 画像、音声、動画コンテンツ - Web メディアテクノロジー | MDN」。developer.mozilla.org。
- ^ 「2012 年 9 月 11 日: Opus オーディオ コーデックが RFC6716 になり、Opus 1.0.1 リファレンス ソースがリリースされました」。
- ^ 「Opus は素晴らしいです。そして今やオーディオ コーデックの標準です! – Mozilla Hacks – Web 開発者ブログ」。
- ^ 「Microsoft Edge での WebM、VP9、Opus のサポート – Microsoft Edge 開発者ブログMicrosoft Edge 開発者ブログ」。blogs.windows.com。2016 年 4 月 18 日。2017 年 3 月 22 日閲覧。
- ^ ab 「Chromium で mp3 サポートを有効にする」。Google 。2018 年 5 月 1 日閲覧。
- ^ 「Firefox 71.0 リリースノート」。Mozilla。2019年12月3日。
- ^ 「メディアタイプとフォーマットガイド: 画像、音声、動画コンテンツ」。Mozilla Developer Network。Mozilla。2019年12月6日閲覧。
- ^ 「1190341 - audio/aacp シャウトキャストはサポートされていません」。
- ^ 「1169212 - MediaDataDemuxer である ADTSDemuxer を作成する」。
- ^ ab 「プラットフォームステータス – Microsoft Edge 開発者」。
- ^ abcde 「Microsoft Edge 向け OGG Vorbis およびTheora サポートを備えた Web メディア拡張パッケージのご紹介」。Microsoft Edge Dev ブログ。Microsoft。2017年 12 月 5 日。
- ^ 「Firefox ノート - デスクトップ」。
- ^ 「Firefox ノート - デスクトップ」。
- ^ ab 「プラットフォーム ステータス – Microsoft Edge 開発者」。developer.microsoft.com。
- ^ 「Firefox ノート - デスクトップ」。
- ^ 「Firefox 28.0、すべての新機能、更新、修正をご覧ください」。
- ^ Simmons, Jen (2021年10月26日). 「Safari 15のWebKitの新機能」
- ^ 「Apple 開発者向けドキュメント」。developer.apple.com。
- ^ ab 「<audio> および WebAudio の FLAC コーデック サポート」。Chromeプラットフォーム ステータス。2016 年 12 月 27 日閲覧。
- ^ 「プラットフォーム ステータス – Microsoft Edge 開発者」。developer.microsoft.com。
- ^ ab 「開発者向け Firefox 51」。Mozilla Developer Network。2016年 12 月 27 日閲覧。
- ^ Chaim Gartenberg (2017年6月6日). 「Apple、iOS 11でFLACロスレスオーディオのサポートを追加と報道」The Verge .
- ^ 「プラットフォームのステータス – Microsoft Edge 開発者」。
- ^ Chris Rogers (2012-03-15). 「Web Audio API」. W3C . 2012-07-20 時点のオリジナルよりアーカイブ。2012-07-04閲覧。
{{cite web}}: CS1 maint: bot: 元の URL ステータス不明 (リンク) - ^ 「オーディオデータAPI」。
- ^ 「Audio API 拡張機能の紹介」。Mozilla Developer Network。Mozilla。2012年 3 月 5 日。2012 年 5 月 5 日時点のオリジナルよりアーカイブ。2012年 7 月 4日閲覧。
- ^ 「Audio Processing API」。W3C。2011年12月15日。2012年6月14日時点のオリジナルよりアーカイブ。2012年7月4日閲覧。
{{cite web}}: CS1 maint: bot: 元の URL ステータス不明 (リンク) - ^ Robert O'Callahan (2012-05-31). 「MediaStream Processing API」. W3C . 2012-07-04閲覧。
- ^ 「Web Audio API が Chrome で利用できるようになりました (Chris Rogers、2011 年 2 月 1 日 (public-xg-audio@w3.org、2011 年 2 月より))」。lists.w3.org 。2022 年 11 月 18 日閲覧。
- ^ Scott Gilbertson (2011-09-19). 「Chrome 14 でオーディオ性能が向上、『ネイティブ クライアント』サポートが追加」. Webmonkey . Wired . 2012-07-04閲覧。
- ^ 「API ドラフト」 。2012年1 月 28 日閲覧。
- ^ 「HTML5 Speech API」 。 2012年1月28日閲覧。
- ^ 「Talking to your computer」2012年1月28日閲覧。
- ^ 「Web Speech API – Web API | MDN」。2024年5月20日閲覧。
- ^ 「開発者向け Firefox 49 – Mozilla | MDN」。2024年5月20日閲覧。
- ^ 「Web Speech API – Web API | MDN」。2024年5月20日閲覧。
外部リンク
- HTML/要素/オーディオ – W3C Wiki
- HTML5 オーディオ要素 – W3C
- ウェブオーディオAPI – W3C
- メディアストリーム処理 API – W3C
- ウェブスピーチAPI – W3C
- ウェブオーディオDAW – GitHub
- Mozilla の Web Audio API
