控制Soundcloud HTML5 Widget播放器音量

时间:2012-09-04 22:55:42

标签: html5 html5-audio soundcloud volume web-widget

我一直在尝试使用a Soundcloud Blog page上给出的示例,因此我可以将音量设置得更低。

我只将iframe尺寸和src=更改为我的播放列表,并将音量设置为10,因此我可以注意到它的差异是否有效。到目前为止,我没有观察到变化,体积仍然是100%。

我已尝试过,无需将以下内容放在我的模板头部。这似乎并不重要。

<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.7.2/jquery.min.js"></script>

以下是我从Soundcloud示例中调整的代码:

    <iframe id="sc-widget" width="350" height="332" scrolling="no" frameborder="no" src="http://w.soundcloud.com/player/?url=http%3A%2F%2Fapi.soundcloud.com%2Fplaylists%2F1417174&auto_play=true&show_artwork=false&color=37415f"></iframe>

  <script src="http://w.soundcloud.com/player/api.js" type="text/javascript"></script>
  <script type="text/javascript">
  (function(){
    var widgetIframe = document.getElementById('sc-widget'),
        widget       = SC.Widget(widgetIframe);

    widget.bind(SC.Widget.Events.READY, function() {
      widget.bind(SC.Widget.Events.PLAY, function() {
        // get information about currently playing sound
        widget.getCurrentSound(function(currentSound) { 
          console.log('sound ' + currentSound.get('') + 'began to play');
        });
      });
      // get current level of volume
      widget.getVolume(function(volume) {
        console.log('current volume value is ' + volume);
      });
      // set new volume level
      widget.setVolume(10);
    });

  }());
  </script>

This code is live on a Joomla site.

有人可以帮我理解我无法控制音量吗?

是jquery冲突吗?如果是这样,有关如何解决它的任何想法?

2 个答案:

答案 0 :(得分:6)

音量范围实际上是0到1,这在文档中说错了。因此,如果您想将音量设置为10%,则需要:

var widgetIframe = document.getElementById('sc-widget'),
widget       = SC.Widget(widgetIframe);

widget.setVolume(0.1);

答案 1 :(得分:0)

之前的答案不再准确。 setVolume()api已被修复/更改为接受0到100之间的int。

我偶然发现这个问题试图使用chrome控制台快速更改嵌入式SoundCloud iframe的音量。我为自己创造了一个快速的要点。 fiddle #2

status:
    type: enum
    values: ['visible', 'invisible']