こんにちは、最近触り始めたばかりの言語で、言っている意味があっていない等あると思います。
もし間接的に意味がとらえられるようであれば、そのまま読み替えていただけると幸いです。
また、Discord的な関係性はない可能性があります。
作っているもの
Discord Botの開発を行っています。
FFmpegを使って、音声を再生できるものを作っています。
事象
1.npm startで実行
正常に実行され、コンソールにログ出力、また出力待ち状態になります。
2.Discord上で、音声を流すコマンドを実行
正常に流れます。
3.Discord上で、音声を流すコマンドを連続で実行していると途中で応答しなくなります。
その時、ログを確認してみると、下記が出力されます。
また、npmは実行状態で、クラッシュ等はしません。(Nodeは終了します。というような記載があるのはわかります)
ですが、Discord上でコマンドを実行しても、応答はありません。
UnhandledPromiseRejectionWarning: RangeError: offset is out of bounds at Uint16Array.set (<anonymous>) at OpusScript.encode (/home/disco/discord_voice_bot/node_modules/opusscript/index.js:51:16) at Encoder._encode (/home/disco/discord_voice_bot/node_modules/prism-media/src/opus/Opus.js:60:25) at Encoder._transform (/home/disco/discord_voice_bot/node_modules/prism-media/src/opus/Opus.js:143:30) at Encoder.Transform._read (_stream_transform.js:205:10) at Encoder.Transform._write (_stream_transform.js:193:12) at writeOrBuffer (_stream_writable.js:352:12) at Encoder.Writable.write (_stream_writable.js:303:10) at VolumeTransformer.ondata (_stream_readable.js:713:22) at VolumeTransformer.emit (events.js:314:20) (Use `node --trace-warnings ...` to show where the warning was created) (node:1248) UnhandledPromiseRejectionWarning: Unhandled promise rejection. This error originated either by throwing inside of an async function without a catch block, or by rejecting a promise which was not handled with .catch(). To terminate the node process on unhandled promise rejection, use the CLI flag `--unhandled-rejections=strict` (see https://nodejs.org/api/cli.html#cli_unhandled_rejections_mode). (rejection id: 1) (node:1248) [DEP0018] DeprecationWarning: Unhandled promise rejections are deprecated. In the future, promise rejections that are not handled will terminate the Node.js process with a non-zero exit code.
実行環境
さくらのVPN
CentOs7
Node.js 推奨バージョンの12.x(最新の14.xも試しました)
Discord js v12.x
わからないこと
Java系を無知なのが問題なのかもしれませんが、エラーが読み解けません。
Nodeが終了してしまっていることはわかるのですが、これをどう解決するのがいいか教えていただけないでしょうか。
連続でリクエストしても、エラー落ちしなくなるにはどうすればよいか、ご教授いただけないでしょうか。
私の案としては
再帰的処理を、記載すればよいのではと思っていますが、
エラーコードには、私の開発しているファイル(/home/disco/discord_voice_bot/index.js)
で、エラーが出てるという記載は無いようにみえて、ではどこに再帰的処理を記載すればよいのかわからないといった状態です。
※この案の解釈が間違っている可能性もあります。
以上、有識者の方いらっしゃいましたら、ご教授いただければ幸いです。
また、なにか足りない情報等ありましたら、補足をください。
よろしくお願いします。
回答2件
あなたの回答
tips
プレビュー