Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

Anderson de Souza

Player MP3 em flash e XML

Recommended Posts

Estou usando este código e ele desaparcem os acentos das letras, quer dizer some as letras, porque isto ocorre, alguém me ajudem, o código é este:

 

 

Código Flash

 

 

//Mp3 Player with playlist 
//Written by John Bezanis for SWF Spot. http://www.swfspot.com
stop();
var songs:Array = new Array();
var curtrack:Number = 0;
var playingsong:Sound = new Sound();
if (_root.playlist == undefined || _root.playlist == "") {
	_root.playlist = "playlist.xml";
}
var playlistXml:XML = new XML();
playlistXml.ignoreWhite = true;
playlistXml.load(_root.playlist);
playlistXml.onLoad = function() {
	loadSongs();
	loadplaylistbox();
	loadSong(curtrack);
	if (_root.autostart == "false") {
		toggleplaypause();
	}
};
function loadSongs() {
	for (songIndex=0; songIndex<playlistXml.childNodes[0].childNodes[0].childNodes.length; songIndex++) {
		var songdata:Object = new Object();
		for (songNode=0; songNode<playlistXml.childNodes[0].childNodes[0].childNodes[songIndex].childNodes.length; songNode++) {
			switch(playlistXml.childNodes[0].childNodes[0].childNodes[songIndex].childNodes[songNode].nodeName){
			case "creator":
				songdata.artist = playlistXml.childNodes[0].childNodes[0].childNodes[songIndex].childNodes[songNode].childNodes[0].nodeValue;
				break;
			case "title":
				songdata.title = playlistXml.childNodes[0].childNodes[0].childNodes[songIndex].childNodes[songNode].childNodes[0].nodeValue;
				break;
			case "location":
				songdata.location = playlistXml.childNodes[0].childNodes[0].childNodes[songIndex].childNodes[songNode].childNodes[0].nodeValue;
				break;
			}
		}
		songs[songIndex] = songdata;
	}
}
function loadSong(track) {
	playingsong = new Sound();
	playingsong.loadSound(songs[track].location, true);
	playingsong.start(0);
	updatevolume();
	playingsong.onSoundComplete = function() {
		loadSong((curtrack+1)%(songs.length));
	};
	playpause.gotoAndStop(1);
	playpause.playpausebutton.onPress = function() {
		toggleplaypause();
	};
	songdisplay.text = songs[track].artist+" - "+songs[track].title;
	eval("playlistbox.playlistitemcontainer.playlistitem"+curtrack+".playlistitemhighlight")._alpha = 4;
	eval("playlistbox.playlistitemcontainer.playlistitem"+track+".playlistitemhighlight")._alpha = 20;
	curtrack = track;
}
function loadplaylistbox() {
	for (songIndex=0; songIndex<playlistXml.childNodes[0].childNodes[0].childNodes.length; songIndex++) {
		playlistbox.playlistitemcontainer.attachMovie("playlistitem", "playlistitem"+songIndex, playlistbox.playlistitemcontainer.getNextHighestDepth(), {_x:0, _y:15*songIndex});
		eval("playlistbox.playlistitemcontainer.playlistitem"+songIndex+".playlistitemtext").text = songs[songIndex].artist+" - "+songs[songIndex].title;
		eval("playlistbox.playlistitemcontainer.playlistitem"+songIndex).songindex = songIndex;
	}
}
playpause.playpausebutton.onPress = function() {
	toggleplaypause();
};
function toggleplaypause() {
	if (playpause._currentframe == 1) {
		playpause.gotoAndStop(2);
		playpause.curpos = playingsong.position;
		playingsong.stop();
	} else {
		playpause.gotoAndStop(1);
		playingsong.start(playpause.curpos/1000, 0);
	}
	playpause.playpausebutton.onPress = function() {
		toggleplaypause();
	};
}
onEnterFrame = function () {
	if (songdisplay.movingright) {
		songdisplay.hscroll -= 10;
		if (songdisplay.hscroll<=0) {
			songdisplay.movingright = false;
					}
	} else {
		songdisplay.hscroll += 10;
		if (songdisplay.hscroll>=songdisplay.maxhscroll) {
			songdisplay.movingright = true;
		}
	}
	if (!draggingslider) {
		progressslider._x = (playingsong.position/playingsong.duration)*182+61;
		if (progressslider._x == 0) {
			progressslider._x = 61;
		}
	}
	if (draggingplaylistscroller) {
		updateplaylistscroll();
	}
	if (draggingvolmeslider) {
		updatevolume();
	}
	tempsongtime = "";
	if (Math.floor(playingsong.position/60000) == 0) {
		tempsongtime += "0";
	} else {
		tempsongtime += Math.floor(playingsong.position/60000);
	}
	tempsongtime += ":";
	if (Math.floor((playingsong.position/1000)%60)<10) {
		tempsongtime += "0";
	}
	tempsongtime += Math.floor((playingsong.position/1000)%60);
	tempsongtime += "/";
	if (Math.floor(playingsong.duration/60000) == 0) {
		tempsongtime += "0";
	} else {
		tempsongtime += Math.floor(playingsong.duration/60000);
	}
	tempsongtime += ":";
	if (Math.floor((playingsong.duration/1000)%60)<10) {
		tempsongtime += "0";
	}
	tempsongtime += Math.floor((playingsong.duration/1000)%60);
	songtime.text = tempsongtime;
	//trace(Math.floor(playingsong.position/60000));
	//if(Math.floor(playingsong.position/1000)%60)
	//songtime.text=Math.floor(playingsong.position/1000)%60+"/"+Math.floor(playingsong.duration/1000)%60;
};
progressslider.onPress = function() {
	draggingslider = true;
	progressslider.startDrag(true, 61, progressslider._y, 243, progressslider._y);
};
progressslider.onRelease = progressslider.onReleaseOutside=function () {
	progressslider.stopDrag();
	playingsong.start(((progressslider._x-61)/182)*playingsong.duration/1000, 0);
	playpause.gotoAndStop(1);
	playpause.playpausebutton.onPress = function() {
		toggleplaypause();
	};
	draggingslider = false;
};
progressbar.onPress = function() {
	playingsong.start(((_xmouse-61)/182)*playingsong.duration/1000, 0);
	playpause.gotoAndStop(1);
	playpause.playpausebutton.onPress = function() {
		toggleplaypause();
	};
};
volumebar.onPress = function() {
	draggingvolmeslider = true;
	volumebar.volumeslider.startDrag(true, 0, volumebar.volumeslider._y, 47, volumebar.volumeslider._y);
};
volumebar.onRelease = volumebar.onReleaseOutside=function () {
	draggingvolmeslider = false;
	volumebar.volumeslider.stopDrag();
	updatevolume();
};
function updatevolume() {
	playingsong.setVolume((volumebar.volumeslider._x/47)*100);
}
previoussong.onPress = function() {
	loadprevioussong();
};
function loadprevioussong() {
	var loadtrack = (curtrack-1)%(songs.length);
	if (loadtrack<0) {
		loadtrack = songs.length-1;
	}
	loadSong(loadtrack);
}
nextsong.onPress = function() {
	loadnextsong();
};
function loadnextsong() {
	var loadtrack = (curtrack+1)%(songs.length);
	loadSong(loadtrack);
}
playlistscroller.onPress = function() {
	draggingplaylistscroller = true;
	playlistscroller.startDrag(true, 283, 70, 283, 171);
};
playlistscroller.onRelease = playlistscroller.onReleaseOutside=function () {
	draggingplaylistscroller = false;
	playlistscroller.stopDrag();
};
playlistscrollup.onPress = function() {
	playlistscroller._y = Math.max(70, playlistscroller._y-10);
	updateplaylistscroll();
};
playlistscrolldown.onPress = function() {
	playlistscroller._y = Math.min(171, playlistscroller._y+10);
	updateplaylistscroll();
};
var mouseListener:Object = new Object();
mouseListener.onMouseWheel = function(delta:Number) {
	playlistscroller._y = Math.min(171, Math.max(70, playlistscroller._y-delta));
	updateplaylistscroll();
};
Mouse.addListener(mouseListener);
playlistscrollbar.onPress = function() {
	playlistscroller._y = Math.min(171, Math.max(70, _ymouse));
	updateplaylistscroll();
};
function updateplaylistscroll() {
	playlistbox.playlistitemcontainer._y = -((playlistscroller._y-70)/101)*(playlistbox.playlistitemcontainer._height-149);
}
function visitswfspot() {
	getURL("http://www.swfspot.com", "_blank");
}
var myMenu = new ContextMenu();
var menubezz = new ContextMenuItem("SWF Spot Mp3 Player", visitswfspot);
myMenu.customItems.push(menubezz);
var menuplaypause = new ContextMenuItem("Play / Pause", toggleplaypause);
menuplaypause.separatorBefore = true;
myMenu.customItems.push(menuplaypause);
var menuprevioustrack = new ContextMenuItem("Previous Song", loadprevioussong);
myMenu.customItems.push(menuprevioustrack);
var menunexttrack = new ContextMenuItem("Next Song", loadnextsong);
myMenu.customItems.push(menunexttrack);
myMenu.hideBuiltInItems();
_root.menu = myMenu;

[/size]

Código XML

[size="3"]
<?xml version="1.0" encoding="UTF-8"?>
<playlist version="1" xmlns="http://xspf.org/ns/0/">
  <trackList>
    <track>
			<creator>Xodó de Mãinha</creator><title>Xodó de Mãinha</title>
			<location>musica1.mp3</location>
		</track>
		<track>
			<creator>Xódo de Mãinha</creator><title>Mother</title>
			<location>musica2.mp3</location>
		</track>
		<track>
			<creator>Xódo de Mãinha</creator><title>Mother</title>
			<location>musica3.mp3</location>
		</track>
		
					
	</trackList>
</playlist>
[/size]

Compartilhar este post


Link para o post
Compartilhar em outros sites

Pelo Amor de Deus usa o BBCode do forum, quando for postar trechos de códigos. É o icone <> acima.

Grato.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Anderson, quando cheguei ao fórum também não acertei de primeira a inserir os códigos com a formatação que facilita a visualização.

 

Basta acionar o ícone < > e colar o código entre as tags code ... e ... /code

 

Bem tranquilo, uma dica facilita muito (eu me virei sozinha).

 

 

 

Sobre a sua necessidade, vou testar aqui para texto com acentuação em um player que uso em AS3 + XML.

 

 

Se não ser resultado (para fontes fora do padrão) ainda existe a alternativa de adicionar a fonte ao Flash via Action, ou talvez usar outros recursos mais avançados (que não domino, apenas já ouvi falar).

 

Nesse caso, outros colegas podem auxiliar.

 

 

Abraços

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.