[thelist] Volume control

Warbasse Design - Info info at warbassedesign.com
Wed Mar 10 16:29:28 CST 2004


You wrote - I'm using Impatica (a software that doesn't have volume control)
to play a
stream (including slides and audio).
--------
Lingling,

Well that does pose a problem.  If there is no object and thusly no
attributes associated with that object, you can't call it... or control it.
In this case what you want to attempt to call is the operating system volume
control.  Of course this will vary from user to user (computer to computer).

Here is a similar scenario (script) that I use to detect and create a
control panel for either Real Media or Windows Media Player.  The player was
custom so the image map values and image names would need to be changed.
-----------------------------------------------------

<SCRIPT Language=JavaScript>

var mPlayer = getCookie('Radio05');
function getCookie(Name) {
 var search = Name + "=";
 if (document.cookie.length > 0) { // if there are any cookies
  offset = document.cookie.indexOf(search);
  if (offset != -1) {
  // if cookie exists
   offset += search.length;
   // set index of beginning of value
   end = document.cookie.indexOf(";", offset);
   // set index of end of cookie val
   if (end == -1)
    end = document.cookie.length;
   return unescape(document.cookie.substring(offset, end));
  }
 }
}

function getArgs() {
    var args = new Object();
    var query = location.search.substring(1);  // Get query string.
    var pairs = query.split(",");              // Break at comma.
    for(var i = 0; i < pairs.length; i++) {
 var pos = pairs[i].indexOf('=');       // Look for "name=value".
 if (pos == -1) continue;               // If not found, skip.
 var argname = pairs[i].substring(0,pos);  // Extract the name.
 var value = pairs[i].substring(pos+1); // Extract the value.
 args[argname] = unescape(value);          // Store as a property.
    }
    return args;                               // Return the object.
}

var args = getArgs();
var dataPoints = args.asset;
var closeTag = '</';   //to stop end-script confusion
document.write("<script language='javascript' src='../config_js/" +
dataPoints + ".js'>");
document.write(closeTag + "script>");



// begin custom control code
if (mPlayer == "rp") {
 document.write("<script language='javascript'
src="realmedia_controls.js'>");
 document.write(closeTag + "script>");
} else {
 document.write("<script language='javascript' src="windows_controls.js'>");
 document.write(closeTag + "script>");
}
// end custom control code

function loadSource() {
 var mPlayer = getCookie('cnetRadio05');
 var livePathWmp = "http://www.clickcall.biz/message.asx";
 var livePathRmp = "http://www.clickcall.biz/message.ram";
 if (mPlayer == "rp") {
     document.audioie.SetSource(livePathRmp);
     document.audioie.DoPlay();
 } else {
  document.audioie.FileName = livePathWmp;
 }
}


var prefPage = false;

function changePreferencesPage() {
 if (prefPage==false) {
  background2.src="i/hed-sliv-prefs.gif";
  preferences.src="i/tab-back.gif";
  prefPage=true;
  window.open('changePrefs.html' , 'middle');
 } else if (prefPage==true) {
  background2.src="i/hed-sliv.gif";
  preferences.src="i/tab-rollover.gif";
  prefPage=false;
  window.open('middle.html' , 'middle');
 }
}

function wmMap()
{
 var wmImMap = "";
 wmImMap  = "<map name=\"volume_map\">";
 wmImMap += "<area shape=\"rect\" coords=\"0,8,13,23\" href=\"#\"";
 wmImMap += " onClick=\"setVolume(8)\"";
 wmImMap += " OnMouseOut=\"window.status=''; return true;\"";
 wmImMap += " OnMouseOver=\"window.status=''; return true;\">\n";
 wmImMap += "<area shape=\"rect\" coords=\"3,24,19,34\" href=\"#\"";
 wmImMap += " onClick=\"setVolume(7.5)\"";
 wmImMap += " OnMouseOut=\"window.status=''; return true;\"";
 wmImMap += " OnMouseOver=\"window.status=''; return true;\">\n";
 wmImMap += "<area shape=\"rect\" coords=\"3,35,20,46\" href=\"#\"";
 wmImMap += " onClick=\"setVolume(7)\"";
 wmImMap += " OnMouseOut=\"window.status=''; return true;\"";
 wmImMap += " OnMouseOver=\"window.status=''; return true;\">\n";
 wmImMap += "<area shape=\"rect\" coords=\"3,47,20,58\" href=\"#\"";
 wmImMap += " onClick=\"setVolume(6.5)\"";
 wmImMap += " OnMouseOut=\"window.status=''; return true;\"";
 wmImMap += " OnMouseOver=\"window.status=''; return true;\">\n";
 wmImMap += "<area shape=\"rect\" coords=\"2,59,19,68\" href=\"#\"";
 wmImMap += " onClick=\"setVolume(6)\"";
 wmImMap += " OnMouseOut=\"window.status=''; return true;\"";
 wmImMap += " OnMouseOver=\"window.status=''; return true;\">\n";
 wmImMap += "<area shape=\"default\" nohref>\n";
 wmImMap += "</map>\n";
 return(wmImMap);
}

function rmMap()
{
 var rmImMap = "";
 rmImMap  = "<map name=\"volume_map\">";
 rmImMap += "<area shape=\"rect\" coords=\"0,8,13,23\" href=\"#\"";
 rmImMap += " onClick=\"setVolume(8)\"";
 rmImMap += " OnMouseOut=\"window.status=''; return true;\"";
 rmImMap += " OnMouseOver=\"window.status=''; return true;\">\n";
 rmImMap += "<area shape=\"rect\" coords=\"3,24,19,34\" href=\"#\"";
 rmImMap += " onClick=\"setVolume(6)\"";
 rmImMap += " OnMouseOut=\"window.status=''; return true;\"";
 rmImMap += " OnMouseOver=\"window.status=''; return true;\">\n";
 rmImMap += "<area shape=\"rect\" coords=\"3,35,20,46\" href=\"#\"";
 rmImMap += " onClick=\"setVolume(4)\"";
 rmImMap += " OnMouseOut=\"window.status=''; return true;\"";
 rmImMap += " OnMouseOver=\"window.status=''; return true;\">\n";
 rmImMap += "<area shape=\"rect\" coords=\"3,47,20,58\" href=\"#\"";
 rmImMap += " onClick=\"setVolume(2)\"";
 rmImMap += " OnMouseOut=\"window.status=''; return true;\"";
 rmImMap += " OnMouseOver=\"window.status=''; return true;\">\n";
 rmImMap += "<area shape=\"rect\" coords=\"2,59,19,68\" href=\"#\"";
 rmImMap += " onClick=\"setVolume(1)\"";
 rmImMap += " OnMouseOut=\"window.status=''; return true;\"";
 rmImMap += " OnMouseOver=\"window.status=''; return true;\">\n";
 rmImMap += "<area shape=\"default\" nohref>\n";
 rmImMap += "</map>\n";
 return(rmImMap);
}

</script>

Try using a redirect script and embeding volume controls based on browser
and OS.
These links will help.
http://userwww.sfsu.edu/~infoarts/technical/howto/sound/wilson.soundjavascri
pt.html

http://www.netstrider.com/tutorials/HTML/audio/


This is not a slam dunk but, I hope it points you in the right direction and
you are able to accomplish your objective.

Best,
Philip Warbasse
ClickCall
www.clickcall.biz



More information about the thelist mailing list