HTML5自定义播放器不与Soundcloud api uri一起工作

HTML5 custom player not working with Soundcloud api uri

本文关键字:api uri 一起 工作 Soundcloud 自定义 播放器 HTML5      更新时间:2023-09-26

我正在使用一个jQuery插件,它将简单的<audio></audio>变成一组不同的元素,而不是由javascript控制,基本上创建了一个自定义html5播放器。你可以在这里找到关于这个插件的博客文章:http://tympanus.net/codrops/2012/12/04/responsive-touch-friendly-audio-player/它会深入解释这个插件。

无论如何,由于某种原因,当我通过Soundcloud api为播放器生成src=""时,它不工作。基本上,我从Soundcloud获取歌曲url,然后将其作为src添加到音频标签。

问题是,一旦页面加载,它说src="unknown"(或沿着这些行)

下面是一个HTML标记,演示了Soundcloud api和Custom player插件的使用。

<!DOCTYPE html>
<html>
<head>

<link rel="stylesheet" href="/reset.css">
<link rel="stylesheet" href="/player.css">
</head>
<body>
<audio id="audio-test" controls></audio>
<!-- Javascript/jQuery -->
<script src="//ajax.googleapis.com/ajax/libs/jquery/1.9.1/jquery.min.js"></script>
<script src="//connect.soundcloud.com/sdk.js"></script>
<script src="/player.js"></script> <!-- /js/player.js -->
<script>
// Soundcloud
SC.initialize({
    client_id: '7a17129ba9cd5fff34f847e3539829b7'
});
SC.get("/tracks/81815566", {}, function(sound){
    $("#audio-test").attr("src", sound.uri + "/stream?client_id=7a17129ba9cd5fff34f847e3539829b7");
});
//Custom Player
$( function() { $( 'audio' ).audioPlayer(); } );
</script>
<!-- END Javascript/jQuery -->
</body>
</html>

这里是额外的文件,你可能需要看到播放器的完整功能:

player.css http://pastebin.com/HBUFvUw2
reset.css http://pastebin.com/jstmq0dB
player.js(插件) http://pastebin.com/MKrUgRDF


或者直接从这里下载整个项目: http://www.filedropper.com/example_1

似乎问题是/stream?client_id=...。我去掉了整个字符串,并将sound.uri更改为sound.stream_url,现在它正在流式传输(至少在Safari/FF OSX中)。

看我的小提琴在这里。如果这对你不起作用,让我知道,我们会解决的!

EDIT:我刚刚又试了一次,现在不工作了。给我一分钟想想办法。

EDIT II:保持客户端id,但将sound.uri更改为sound.stream_url似乎已经修复了它。似乎是声音。Uri链接提示301重定向,音频播放器无法跟随,但声音。Stream_url直接链接到媒体。