Ses
Last updated
Was this helpful?
Last updated
Was this helpful?
Ses discord.js'da çok fazla şeyde kullanılır. Müzik botlarında, kayıtta ve ses aktarımı gibi alanlar buna örnek verilebilir. Discord.js'da bir VoiceConnection
elde edebilmek için VoiceChannel
'a bağlanmak gerekir.
Başlamadan önce aşağıdaki belirtilenlere sahip olduğunuzdan emin olmalısınız;
FFMPEG - npm install ffmpeg-static
Herhangi bir opus kodlayıcı;
npm install @discordjs/opus
(daha fazla performans)
npm install opusscript
Tercih edilen ses motoru'tur, opusscript'den daha iyi ve stabil çalışır. Bu iki ses motoru bulunurken, discord.js öncelikli olarak 'u seçecektir. Opusscript; Discord.js'nin kötü çalıştığı koşullarda kullanılabilecek alternatif bir ses motorudur.
Aşağıdaki verilen örnek mesaja tepki verir ve herhangi bir hatayı yakalayarak gönderenin ses kanalına katılır. Böylece ses işlemleri yapmaya başlayacağın VoiceConnection
'u elde etmene izin verir.
Önceki örneğimizde bir ses kanalına nasıl bağlanabileceğimizi öğrendik. Artık bu bağlandığımız kanala bir ses gönderebiliriz. Bunun için aşağıda vereceğimiz örneği inceleyin.
Ses kanalında ses oynatma eylemi Ses oynatmanın en basit yolu yerel bir dosya içerisinden oynatabileceğiniz ses dosyalarıdır.
Bu durumda dispatcher
bir StreamDispatcher
'dir. Burada bu ses eyleminin ses seviyesini kontrol edebiliriz.
Bu eylemi ilk oynattığımızda da seçenekleri düzenleyebiliriz;
Ne oynatabilirim? Discord.js size bir çok şeyi yapmak için fırsat sunar, hayallerini kolla (ya da kodla) evlat!
V12'de yeni bir yenilik olan; FFMPEG'i atlayarak, OggOpus ve WebmOpus akışlarını çok daha iyi performansla oynatabilirsiniz. Fakat bunu yaparak artık sese sahip olamayacağınızı unutmamanız gerekir.
Oynatma türleri ve dahası için dokümantasyonu incelemeyi unutmayın. Geldiği yerde daha fazlası var :]
Ses Yayını Ses yayını, aynı sesi birden çok kanalda çalan "radyo" botları için çok kullanışlıdır. Bu, sesin yalnızca bir kez dönüştürüldüğü ve performans açısından daha fazla şey vadettiği anlamına geliyor.
Aşağıda verilen; broadcast
, normal VoiceConnections
ile kullandığınız aynı oynatma yöntemine sahip bir VoiceBroadcast
örneğidir