Your Universal Remote Control Center
RemoteCentral.com
Philips Pronto Professional Forum - View Post
Up level
Up level
The following page was printed from RemoteCentral.com:

Login:
Pass:
 
 

Original thread:
Post 21 made on Friday July 27, 2007 at 08:01
sWORDs
Long Time Member
Joined:
Posts:
November 2006
373
Sogliphy, I'll try it!

For the ones trying to parse a Denon DVD here's my debug code (not tidy yet, and two bugs, no track info with SACD, DSD always gives highest available channels instead of current selected, both are probably bugs in Denon's protocol):

var extender1 = CF.extender[1];
if( extender1 == null )
{
Diagnostics.log("Extender 1 is not defined");
}
else
{
var rs232port1 = extender1.serial[0];
var rs232port2 = extender1.serial[1];
if( rs232port1 == null )
{
Diagnostics.log("Extender 1 is not a serial extender");
}
else
{
rs232port2.bitrate = 9600;
rs232port2.databits = 8;
rs232port2.parity = 2; // Even
rs232port2.stopbits = 1;
var varReturn = rs232port2.match("\x02\x30\x00\x00\x00\x00\x03\x33\x33","\x03",250);
var varReply = varReturn.substr(1,1)
var varAnswer = varReturn.substr(2,1)
var varDiscType = varReturn.substr(3,1)
switch(varDiscType) {
case "1":
varDiscType = "DVD Video";
break;
case "2":
varDiscType = "DVD Audio";
break;
case "3":
varDiscType = "VCD";
break;
case "4":
varDiscType = "CD-DA";
break;
case "5":
varDiscType = "MP3";
break;
case "6":
varDiscType = "?";
break;
case "7":
varDiscType = "SACD";
break;
}
var varAudioFormat = varReturn.substr(4,1)
switch(varAudioFormat ) {
case "1":
varAudioFormat = "Dolby Dig";
break;
case "2":
varAudioFormat = "DTS";
break;
case "3":
varAudioFormat = "MPEG";
break;
case "4":
varAudioFormat = "LPCM";
break;
case "5":
varAudioFormat = "PPCM";
break;
case "6":
varAudioFormat = "?";
break;
case "7":
varAudioFormat = "DSD";
break;
}
var varAudioChannel = varReturn.substr(5,1)
switch(varAudioChannel) {
case "1":
varAudioChannel = "1 ch";
break;
case "2":
varAudioChannel = "2 ch";
break;
case "3":
varAudioChannel = "2.1 ch";
break;
case "4":
varAudioChannel = "3 ch";
break;
case "5":
varAudioChannel = "3.1 ch";
break;
case "6":
varAudioChannel = "4 ch";
break;
case "7":
varAudioChannel = "4.1 ch";
break;
case "8":
varAudioChannel = "5 ch";
break;
case "9":
varAudioChannel = "5.1 ch";
break;
case ":":
varAudioChannel = "6 ch";
break;
case ";":
varAudioChannel = "2 ch";
break;
case "<":
varAudioChannel = "1 ch R";
break;
case "=":
varAudioChannel = "1 ch L";
break;
case ">":
varAudioChannel = "?";
break;
}
var varDialog = varReturn.substr(6,1)
switch(varDialog) {
case "1":
varDialog = "JPN";
break;
case "2":
varDialog = "ENG";
break;
case "3":
varDialog = "FRA";
break;
case "4":
varDialog = "DEU";
break;
case "5":
varDialog = "ITA";
break;
case "6":
varDialog = "ESP";
break;
case "7":
varDialog = "NLD";
break;
case "8":
varDialog = "CHI";
break;
case "9":
varDialog = "RUS";
break;
case ":":
varDialog = "KOR";
break;
case ";":
varDialog = "?";
break;
}
var varSubtitle = varReturn.substr(7,1)
switch(varSubtitle) {
case "1":
varSubtitle = "JPN";
break;
case "2":
varSubtitle = "ENG";
break;
case "3":
varSubtitle = "FRA";
break;
case "4":
varSubtitle = "DEU";
break;
case "5":
varSubtitle = "ITA";
break;
case "6":
varSubtitle = "ESP";
break;
case "7":
varSubtitle = "NLD";
break;
case "8":
varSubtitle = "CHI";
break;
case "9":
varSubtitle = "RUS";
break;
case ":":
varSubtitle = "KOR";
break;
case ";":
varSubtitle = "?";
break;
}
var varAngle = varReturn.substr(8,1)
var varStatus = varReturn.substr(9,1)
switch(varStatus) {
case "0":
varStatus = "Standby";
break;
case "1":
varStatus = "Loading";
break;
case "2":
varStatus = "Loaded";
break;
case "3":
varStatus = "Opening";
break;
case "4":
varStatus = "Closing";
break;
case "A":
varStatus = "No Disc";
break;
case "B":
varStatus = "Stop";
break;
case "C":
varStatus = "Play";
break;
case "D":
varStatus = "Pause";
break;
case "E":
varStatus = "Scan";
break;
case "F":
varStatus = "Slow";
break;
case "G":
varStatus = "Setup";
break;
case "H":
varStatus = "Control";
break;
case "I":
varStatus = "Resume";
break;
case "J":
varStatus = "DVD Menu";
break;
case "K":
varStatus = "DAC";
break;
}
var varPlayMode = varReturn.substr(10,1)
switch(varPlayMode) {
case "1":
varPlayMode = "Normal";
break;
case "2":
varPlayMode = "Program";
break;
case "3":
varPlayMode = "Random";
break;
}
var varGroupTitle10 = varReturn.substr(11,1)
var varGroupTitle1 = varReturn.substr(12,1)
var varTrackChapter100 = varReturn.substr(13,1)
var varTrackChapter10 = varReturn.substr(14,1)
var varTrackChapter1 = varReturn.substr(15,1)
var varTimeMode = varReturn.substr(16,1)
var varTimeElapsedHours10 = varReturn.substr(17,1)
var varTimeElapsedHours1 = varReturn.substr(18,1)
var varTimeElapsedMinutes10 = varReturn.substr(19,1)
var varTimeElapsedMinutes1 = varReturn.substr(20,1)
var varTimeElapsedSeconds10 = varReturn.substr(21,1)
var varTimeElapsedSeconds1 = varReturn.substr(22,1)
var varElapsedTime = parseInt(varTimeElapsedHours10 + varTimeElapsedHours1) + "h" + varTimeElapsedMinutes10 + varTimeElapsedMinutes1 + "m" + varTimeElapsedSeconds10 + varTimeElapsedSeconds1 + "s";
widget("PNLTIME").label = varElapsedTime;
widget("PNLTRACKCHAPTER").label = parseInt(varTrackChapter100 + varTrackChapter10 + varTrackChapter1);
widget("PNLGROUPTITLE").label = parseInt(varGroupTitle10 + varGroupTitle1);
widget("PNLANSWER").label = varStatus;
widget("PNLMODE").label = varPlayMode;
widget("PNLAUDIOCHANNEL").label = varAudioChannel;
widget("PNLAUDIOFORMAT").label = varAudioFormat;
widget("PNLSUBTITLE").label = varDialog;
widget("PNLDIALOG").label = varSubtitle;
widget("PNLDISCTYPE").label = varDiscType;
}
}

Last edited by sWORDs on July 27, 2007 08:18.


Hosting Services by ipHouse