Por alguna razón, mi código de repente no funciona según lo previsto. Funcionó hace solo unas semanas, pero ahora se niega a funcionar. Olvidé cómo lo manipulé, pero estoy bastante seguro de que no es por mucho. Después de unirse a un canal de voz, mi bot intenta crear un AudioResource a través de la transmisión proporcionada por la función ytdl() de ytdl-core . Después de eso, reproduje el recurso en un AudioPlayer y me suscribí.
...El problema es que mientras el bot se ilumina en verde (lo que indica que está hablando), no hay sonido. Continúa allí durante lo que supongo que es la duración de la corriente por la que pasé antes de irme. Tengo razones para creer que hay un problema en esta parte:
const songQueue = queue.get(message.guild.id); let songPlayer = Voice.createAudioPlayer(); const waterMark = song.duration.seconds * 16384; let source = await ytdl(song.url, { filter: 'audioonly', type: 'opus', highWaterMark: waterMark, requestOptions: { headers: { cookie: process.env.COOKIE } } }) let stream = Voice.createAudioResource(source, { inputType: Voice.StreamType.Arbitrary }) try { await songPlayer.play(stream); } catch(err) { console.log(err); console.log(songPlayer); } Cuando intenté pipe() los resultados, se escribió como un archivo. El problema es que cuando lo reproduzco durante unos segundos, se va directo al final. Lo que me llevó a creer que podría haber un problema con la transmisión... ¿Me equivoqué al esperar o no esperar alguna línea de código?
Sé que la transmisión ytdl es PassThrough , pero parece haber un problema. ¿Hay alguna alternativa, o el problema radica en discord en lugar de ytdl?