AudioDecoder should let you specify an format for resulting AudioData
メンテナーはふだん 1 日以内に返信
まだ誰も着手していません。
評価
- 難易度
- 5/5
- 見積もり時間
- 1週間以上
- 初心者へのやさしさ
- 30/100
- issue の種類
- 機能追加
- 明瞭さ
- おおむね明確
- 活発さ
- 停滞
- 領域
- api, audio-video-rtc
調査の方向性
まず WebCodecs AudioDecoder と AudioData の定義、特に AudioData.copyTo を確認し、次に引用されている audio-encoder WPT とその channelNumberVariationTests を調べます。仕様でデフォルトのデコード形式と構成の上書きが定義され、影響を受けるテストが一貫して動作すれば完了です。
索引モデルが issue の本文から書いたものです。
説明
The User Agent is free to choose how the decoding will be performed and what format it will use when creating the AudioData.
In theory, how the data is stored should indeed be an implementation details.
However, what format is chosen will impact on how AudioData.copyTo will behave and how it will interpret the planeIndex parameter.
Additionally, there's a few WPTs that relies on the decoded AudioData to be interleaved and error otherwise (such as https://wpt.live/webcodecs/audio-encoder.https.any.js and its channelNumberVariationTests)
AudioData::copyTo
"The output AudioSampleFormat for the destination data. If not provided, the resulting copy will use this AudioData’s [[format]"
With the default option, if we were to call copyTo with a planeIndex value of 0 and the AudioData was interleaved, we would copy all planes.
While if the AudioData was planar, copyTo with a planeIndex of 0 would copy only that particular plane.
That the internal UA choice on what to use impact the default behaviour for later created objects and change the behaviour means that it cannot be considered an implementation detail, it's not transparent and is directly observable.
And real-life experience already shows web compatibility between Chrome and Firefox (such as https://w3c.github.io/webcodecs/samples/audio-video-player/audio_video_player.html where the code expects the decoded AudioData to be planar and will have an exception as it attempts to copy the planar data in an array of float) as it doesn't specify what format to use with copyTo)
So we should specify what the default format the AudioDecoder should use and provide the ability to override it in the configuration.
- 主要言語
- HTML
- スター
- 1.3k
- フォーク
- 192
- 平均マージ
- 21時間 7分
- マージ済み PR(30日)
- 8
環境構築
- Dockerfile・Docker Compose ファイルなし
- プルリクエストのテンプレートなし
- コントリビューションガイドを読む
はじめの一歩
- issue を最後まで読み、次にプロジェクトのコントリビューションガイドを読みます。
- 着手することを issue にコメントします — 二人が同じ作業をするのを防げます。
- リポジトリをフォークし、ブランチを切って変更します。
- issue 番号を参照したプルリクエストを送ります。
w3c/webcodecs のほかの issue
-
privacy-needs-resolution
難易度 1/5 1時間未満 初心者へのやさしさ 65/100
メンテナーはふだん 1 日以内に返信
-
editorial
難易度 1/5 1時間未満 初心者へのやさしさ 68/100
メンテナーはふだん 1 日以内に返信
-
難易度 3/5 1〜2日 初心者へのやさしさ 55/100
メンテナーはふだん 1 日以内に返信
-
難易度 5/5 1週間以上 初心者へのやさしさ 35/100
w3c/webcodecs#972 · コメント 1 件 ·
メンテナーはふだん 1 日以内に返信
-
難易度 5/5 1週間以上 初心者へのやさしさ 25/100
w3c/webcodecs#971 · コメント 2 件 ·
メンテナーはふだん 1 日以内に返信
似ている issue
-
feature
難易度 2/5 1〜3時間 初心者へのやさしさ 60/100
manyfold3d/manyfold#7346 · コメント 1 件 ·
メンテナーはふだん 1 日以内に返信
-
難易度 2/5 1〜3時間 初心者へのやさしさ 72/100
メンテナーはふだん 6 日以内に返信
-
Byse new domainオープン
難易度 2/5 1〜3時間 初心者へのやさしさ 62/100
Gujal00/ResolveURL#1525 ·
メンテナーはふだん 1 日以内に返信
-
Serialisation fails with pydantic 2.14: wrap serialisers pass SerializationInfo as index_key対応中かも @hugohills-regnosys が今日担当しました。 オープン
難易度 2/5 1〜3時間 初心者へのやさしさ 82/100
finos/rune-python-runtime#45 ·
-
難易度 2/5 1〜3時間 初心者へのやさしさ 70/100