最近、ブラウザでオーディオを録音するある種の React マイク コンポーネントを作成する必要があったことが何度かあり、その後、そこで得られたオーディオ BLOB でやりたいことを何でも行うことができます (保存したり、変換したり、転写ライブラリで使用したり、何でも)。
世に出回っている React マイク用のコンポーネントは…メンテナンスされていません。通常はそのままにしておきます。必ずしも悪いものではありませんが、スパムにつながるリポジトリもあれば、リンク切れが多いリポジトリもあり、私が見つけたリポジトリのほとんどは数年以上更新されていませんでした。
これらのコンポーネントの 1 つを最初から作成することにしました!
このブログ投稿の残りを読む必要がなく、単に使用したい場合は、125 行の要点へのリンクをここに示します。とてもせっかちです。でも、わかります。人生は挑戦的です。
ともかく。
マイクに関しては、一般的に考慮しなければならないことがたくさんあります。これとブラウザの互換性については詳しく説明しませんでしたが (きっと… Opera か何かがこれに問題を抱えているでしょう)、 にはいくつかの優れた最新のブラウザ機能が組み込まれています。ここでかなり遠くまで行きます:
これらすべてを、それぞれを追跡するためのいくつかの React 状態変数、ブラウザ側の処理を行うための useEffect、そして録音されたオーディオのプレビューを表示するためのネイティブ
もちろん、言うは易く行うは難しです。そのため、すべてをコピーアンドペーストできる要点にまとめました。基本機能以外に、最大録音時間の変数も作成しました (これは必要ありませんが、何かを転写したり、アップロードしたりする場合は、制限を設けるのが適切だと思います)。また、いくつかの小さな Tailwind スタイルをいくつか作成しました。ボタンの周りのアニメーション。
コンポーネントを使用します。夢を記録してください。
免責事項: 提供されるすべてのリソースの一部はインターネットからのものです。お客様の著作権またはその他の権利および利益の侵害がある場合は、詳細な理由を説明し、著作権または権利および利益の証拠を提出して、電子メール [email protected] に送信してください。 できるだけ早く対応させていただきます。
Copyright© 2022 湘ICP备2022001581号-3