如何通过URL输入播放SoundCloud歌曲的音频

时间:2016-04-29 08:52:16

标签: java url soundcloud minecraft playsound

我正在编写一个Minecraft插件,(只是对Minecraft游戏的修改,但在Minecraft服务器上使用,而不是客户端修改)

我希望在玩家输入

时创建一些东西

“/ playsong”

与SoundCloud网址一起,它会找到该网址并将其循环播放。

(能够播放soundcloud播放列表将非常感激)

所有其他工作都将由我完成。 (检查URL是否为空,测试播放器是否发送/播放以及有效的URL等)

使用//添加注释//告诉我代码的某些部分将非常受欢迎。

感谢您的阅读。

〜Matthew274

1 个答案:

答案 0 :(得分:0)

这通常是不可能的。 Minecraft无法播放需要从远程服务器下载的任意歌曲。有几种方法可以做到这一点,但这并不简单。

一种技巧是拍摄歌曲并尝试将其转换为一系列音符,以便与/playsound(或音符块)一起使用。这不容易,也不会给出完美的结果,但它 假设可行(虽然我不知道任何细节)。

另一种技术是创建资源包,将其发送到客户端,然后让它们播放歌曲。这也是不平凡的,但仍然可行。一般程序是:

  • 从soundcloud查找并下载歌曲(我不知道soundcloud的API,但我认为它们有一个)。
  • 如有必要,请将歌曲转换为.ogg的{​​{1}}文件。可能还有一个图书馆。
  • 使用该声音(以及相应的声音索引)创建资源包,并暂时将其下载到您的服务器上。
  • 发送链接到该资源包的Resource Pack Send数据包。
  • 等待客户回复{“3”}“已接受”。
  • 使用Resource Pack Status数据包(或.mp3)播放歌曲。

这个过程并不简单,但是如果你做了一些事情,比如在播放列表中保存歌曲集合并在资源包中发送多首歌曲,那么你应该能够实现它。您需要Named Sound Effect来发送自定义数据包。

对不起,我不能为此提供代码,但这是一个复杂的任务,需要几个部分,其中没有一部分我知道完整的详细信息。