У меня есть веб-приложение, интегрирующееся с SoundCloud API для поиска и воспроизведения треков. Я могу успешно транслировать треки через API с помощью SoundCloud oEmbed следующим образом:
scope.playTrack = function(track) {
SC.oEmbed(track.permalink_url, { auto_play: true })
.then(function(oEmbed) {
scope.soundCloudWidget = $sce.trustAsHtml(oEmbed.html);
scope.$apply();
});
};
С виджетом, привязанным к представлению:
<div ng-bind-html="soundCloudWidget"></div >
Это работает, как и ожидалось. Моя проблема в том, что я хотел бы транслировать трек таким образом, но с указанным временем начала и окончания. Я провел небольшое исследование и нашел похожий вопрос/ответ StackOverflow в котором упоминается, что можно:
добавьте #t=12s
к URL-адресу звука, чтобы он начинался с 12-й секунды
Это работает при создании URL-адреса, например:
https://soundcloud.com/griz/summer-97-ft-muzzy-bearr#t=54s
Однако для start = '54s'
я хотел бы сделать что-то вроде этого
scope.playTrackSection = function(track, start) {
SC.oEmbed(track.permalink_url, { auto_play: true, t: start })
.then(function(oEmbed) {
scope.soundCloudWidget = $sce.trustAsHtml(oEmbed.html);
scope.$apply();
});
};
or
scope.playTrackSection = function(track, start) {
var url = track.permalink_url + "#t=" + start;
SC.oEmbed(track.permalink_url, { auto_play: true })
.then(function(oEmbed) {
scope.soundCloudWidget = $sce.trustAsHtml(oEmbed.html);
scope.$apply();
});
};
Но безрезультатно. Есть ли какой-либо способ указать время начала в таком контексте?
Бонусные баллы: Кроме того, есть ли какой-либо возможный способ указать продолжительность или время, когда потоковая песня должна перестать воспроизводиться?