2010-03-09 28 views
5

我正在使用媒體播放器播放音頻和視頻。我正在創建自己的按鈕來增加和減少媒體播放器的音量。工作也很好。如何使用javascript控制系統音量

問題:

即使後達到0%體積其可聽。如果玩家體積增加,系統音量也會增加。可能嗎。如何實現這一任務。

控制:

<object id="mediaPlayer" classid="clsid:22D6F312-B0F6-11D0-94AB-0080C74C7E95" 
    codebase="http://activex.microsoft.com/activex/controls/mplayer/en/nsmp2inf.cab#Version=5,1,52,701" 
    height="1" standby="Loading Microsoft Windows Media Player components..." 
    type="application/x-oleobject" width="1"> 
    <param name="fileName" value="" /> 
    <param name="animationatStart" value="true" /> 
    <param name="transparentatStart" value="true" /> 
    <param name="autoStart" value="true" /> 
    <param name="showControls" value="true" /> 
    <param name="volume" value="70" /> 
</object> 

代碼:

function decAudio() { 
    if (document.mediaPlayer.Volume >= -1000) { 
     var newVolume = document.mediaPlayer.Volume - 100; 
     if (newVolume >= -1000) { 
      document.mediaPlayer.Volume = document.mediaPlayer.Volume - 100; 
     } else { 
      document.mediaPlayer.Volume = -1000; 
     } 
    } 
} 

回答

5

如果音頻仍然可以聽到一次document.mediaPlayer.Volume設置爲0,爲什麼不設置 document.mediaPlayer.Settings.mute = true

您是否確定document.mediaPlayer.Settings.Volume不是正確的參考而不是document.mediaPlayer.Volume?它看起來像試圖直接訪問參數/屬性值,而不是通過mediaplayer的javascript(或jscript)接口。

這裏是爲你的 「最重要」 參數的使用Windows Media Player 7及更高版本支持一些一般性的參考:

obj = document.getElementById("mediaPlayer");

  1. Code
    • Parameters或默認值
    • Description
  2. obj.Settings.autoStart
    • true
    • 指定或獲取表明當前媒體項目是否自動開始播放的值。
  3. obj.Settings.baseURL
    • -
    • 指定用於與URL腳本命令的相對路徑解析嵌入在媒體項目的基本URL。
  4. ClosedCaption.captioningID
    • 0
    • 指定顯示該字幕的元素的名稱。
  5. obj.Controls.currentMarker
    • 0
    • 指定當前標記數。
  6. obj.Controls.currentPosition
    • 0
    • 指定秒的媒體項目的當前位置。
  7. obj.Settings.defaultFrame
    • -
    • 指定用於顯示的URL的幀的名稱。
  8. obj.enableContextMenu
    • true
    • 指定指示是否啓用上下文菜單中,在用戶點擊鼠標右鍵時出現的值。
  9. obj.enabled
    • false
    • 在Windows Media Player控件指定是否已啓用。
  10. obj.fullScreen
    • false
    • 視頻內容指定是否以全屏模式播放。
  11. obj.Settings.invokeURLs
    • true
    • 指定URL表明事件是否應該啓動Web瀏覽器的值。
  12. obj.Settings.mute
    • false
    • 指定是否音頻靜音。
  13. obj.Settings.PlayCount
    • 1
    • 指定的次媒體項目將發揮的數量。最小值爲1。
  14. obj.Settings.rate
    • 1.0
    • 指定回放速率。 0.5等於正常播放速度的一半,2等於兩倍。
  15. obj.stretchToFit
    • false
    • 由控制顯示的視頻指定是否自動調整大小以適應視頻窗口,當視頻窗口比視頻圖像的尺寸大。
  16. obj.uiMode
    • full
    • 指定哪些控件在用戶界面中顯示。 可能的值:隱形,無,小,全。
  17. obj.URL
    • -
    • 指定媒體項目發揮的名稱。 您可以指定一個本地文件名或URL。
  18. obj.Settings.volume
    • 最後設置
    • 零指沒有體積和100指定全卷。左,右揚聲器之間
  19. obj.Settings.balance
    • false
    • 集平衡。 0是等於的,-100是全左的,100是右的。
  20. obj.windowlessVideo
    • false
    • 指定或獲取表明在Windows Media Player控件是否呈現在視頻窗口模式的值。 當windowlessVideo設置爲true時,播放器控件直接在客戶端區域呈現視頻,因此您可以應用特殊效果或將視頻與文本分層。 受適用於Windows XP或更高版本的Windows Media Player支持。
+0

ThankYou。它的工作 – Geeth

+0

很高興聽到它! – naterkane

0

[編輯:刪除你的代碼引用]

不,我已經使用過的MediaPlayer,但爲什麼這樣的負值?根據this

來源,體積應該在0-100範圍內。這是完全無懈可擊的。

但是,爲什麼你要在javascript代碼中做這個時,有一個內置的音量控制int媒體播放器?