Ir para conteúdo

POWERED BY:

Arquivado

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

Sylar07

Playlist automática + player, como fazer?

Recommended Posts

Olá, bom dia.

 

Estou precisando de uma ajuda para bolar esse código que está quebrando a cabeça:

Bem, gostaria de um código que faça uma playlist automaticamente com todas as músicas de uma determinada pasta (no host).

 

Logo após, seria interessante também um player que reproduzisse todas essas músicas.

não tenho a menor ideia de como fazer isso, e olha que já pesquisei muito na net hein, rodei tudo e não encontrei nada!.

 

Agradeço a quem puder dar uma força, abraços.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Pra fazer a playlist é tranquilo.

Só criar uma tabela no seu banco de dados:

 

tbl_playlist

tbl_playlist_musica

tbl_musica

 

Grave todas as musicas da sua pasta no banco, e grave o ID da musica no playlist_musica. Aí, você pode dar um nome para a playlist em tbl_playlist.

 

Para saber os arquivos que estão na pasta, é só usar readdir.

 

Pra fazer tocar, o buraco é mais embaixo. Você pode usar jPlayer, mas se prepare para um alto consumo de banda.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Pra fazer a playlist é tranquilo.

Só criar uma tabela no seu banco de dados:

 

tbl_playlist

tbl_playlist_musica

tbl_musica

 

Grave todas as musicas da sua pasta no banco, e grave o ID da musica no playlist_musica. Aí, você pode dar um nome para a playlist em tbl_playlist.

 

Para saber os arquivos que estão na pasta, é só usar readdir.

 

Pra fazer tocar, o buraco é mais embaixo. Você pode usar jPlayer, mas se prepare para um alto consumo de banda.

 

Obrigado pela força.

Mas não teria como fazer algo mais simples? sem utilizar banco de dados?

 

Algo do tipo, pegar todas as músicas da pasta automaticamente e colocar em uma array ou algo assim?

pois a minha intenção depois é criar um sistema de upload para enviar as músicas para a pasta, então seria tudo automático mesmo, valeu.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Sylar07, fiz um player com as músicas em pasta com html5 bem simples sem o uso do jPlayer.

 

<audio controls id="player_control" style="top:5px" autoplay="true" onEnded="mudaMusica()">
<source src="caminho" type="audio/mp3" />
</audio>

 

 

Veja se isso elucida alguma coisa, esse já utiliza jPlayer:

 

http://www.devmedia.com.br/html5-audio-tag-crie-um-player-de-audio-com-html5/31039

 

 

[]'

Compartilhar este post


Link para o post
Compartilhar em outros sites

Mas é um sistema meio "burro".

Se uma música é repetida em várias playlists, vc vai fazer uma cópia pra cada playlist?

 

Acho muito mais vantajoso fazer um banco de dados de musica e separar as playlists via BD.

 

Mas é você quem sabe.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Sylar07, fiz um player com as músicas em pasta com html5 bem simples sem o uso do jPlayer.

 

<audio controls id="player_control" style="top:5px" autoplay="true" onEnded="mudaMusica()">

<source src="caminho" type="audio/mp3" />

</audio>

 

 

Veja se isso elucida alguma coisa, esse já utiliza jPlayer:

 

http://www.devmedia.com.br/html5-audio-tag-crie-um-player-de-audio-com-html5/31039

 

 

[]'

Obrigado, vou dar uma olhada.

 

 

Mas é um sistema meio "burro".

Se uma música é repetida em várias playlists, você vai fazer uma cópia pra cada playlist?

 

Acho muito mais vantajoso fazer um banco de dados de musica e separar as playlists via BD.

 

Mas é você quem sabe.

Vou ser sincero com você, quero montar um sistema de podcast.

eu envio o arquivo mp3 que vai para a pasta "podcast" (onde tem vários outros podcast, por exemplo)

 

então esse arquivo php iria agir como um detector, a função dele seria incluir esse novo .mp3 na playlist. O player iria simplesmente reproduzir a playlist em si.

 

talvez você não esteja entendendo. e não são várias playlists, é apenas 1.

e digo playlist como exemplo. Poderia ser um .txt ou .xml que só organiza os arquivos da pasta (podcast) e o player reproduz.

 

--- Editado:

Dei uma pesquisada aqui, seria algo assim:

http://html5.svnlabs.com/read-mp3-files-from-folder-for-html5-mp3-player-with-playlist/

 

porém esse ai é pago.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Na documentação do Jplayer tem ensinando a fazer as playlists com um arquivo XML, estou trabalhando com isso agora, fiz um PHP que apos o upload de um zip extrai as músicas do zip e já cria um XML dando foreach nos arquivos da pasta, e depois só sucesso! :)

Compartilhar este post


Link para o post
Compartilhar em outros sites

Na documentação do Jplayer tem ensinando a fazer as playlists com um arquivo XML, estou trabalhando com isso agora, fiz um PHP que apos o upload de um zip extrai as músicas do zip e já cria um XML dando foreach nos arquivos da pasta, e depois só sucesso! :)

Opa, se puder me ajudar com isso eu agradeceria.

nem sei por onde começar. não manjo nada de xml. e boa sorte ai com a programação hehe.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Vou te mostrar um exemplo básico:

<?php

/**
* @author: 	Rai Siqueira
* @copyright: 	baixeshows.com.br
* @package: 	Baixe Shows 2015
* @subpackage: 	Playlists XML

*/

$playlist = array();

$playlist[0]['id'] = '1';
$playlist[0]['filename'] = 'http://127.0.0.1/download/download/1416434051.mp3';
$playlist[0]['artist'] = 'CAVALEIROS SUMMER - CD PROMOCIONAL - VERAO 2015';
$playlist[0]['title'] = '- CAVALEIROS SUMMER - VERAO 2015 - CD PROMOCIONAL - RICARDO LAGO 01 - GELO NA BALADA - CAVALEIROS SUMMER 2015.mp3';
$playlist[0]['comments'] = 'http://baixeshows.com.br';

//recebe os dados do xml
$xml = '<?xml version="1.0" ?>';
//RAIZ DO DOCUMENTO XML - PLAYLIST
$xml .= '<playlist>';

// Loop dos valores
for ( $i = 0; $i < count( $playlist ); $i++ ) {
	$xml .= '<item>';
	$xml .= '<id>' . $playlist[$i]['id'] . '</id>';
	$xml .= '<filename>' . $playlist[$i]['filename'] . '</filename>';
	$xml .= '<artist>' . $playlist[$i]['artist'] . '</artist>';
	$xml .= '<title>' . $playlist[$i]['title'] . '</title>';
	$xml .= '<comments>' . $playlist[$i]['comments'] . '</comments>';
	$xml .= '</item>';
}

$xml .= '</playlist>';

//criar o arquivo xml
$criar_xml = fopen('playlist.xml', 'w+'); //abrir arquivo, se não existir ele cria
fwrite($criar_xml, $xml);
fclose($criar_xml);

para ler os arquivos do diretório você pode usar algo como esse código abaixo:

<?php

/**
* @author: 		Rai Siqueira
* @copyright: 	baixeshows.com.br
* @package: 	Baixe Shows 2015
* @subpackage: 	Leitura de Diretórios
*/

/*
* http://php.net/manual/pt_BR/class.directoryiterator.php
* Leitura de arquivos com Iterator PHP5
*/

$iterator = new DirectoryIterator('musicas/123'); //instanciar a classe com a pasta onde vai escanear os arquivos

//inicio do LOOP
foreach($iterator as $entry):
echo "<a href=".$entry->getFilename().">" .$entry->getFilename()."</a>", "<br>";
endforeach;

Compartilhar este post


Link para o post
Compartilhar em outros sites

 

Vou te mostrar um exemplo básico:

<?php

/**
* @author: 	Rai Siqueira
* @copyright: 	baixeshows.com.br
* @package: 	Baixe Shows 2015
* @subpackage: 	Playlists XML

*/

$playlist = array();

$playlist[0]['id'] = '1';
$playlist[0]['filename'] = 'http://127.0.0.1/download/download/1416434051.mp3';
$playlist[0]['artist'] = 'CAVALEIROS SUMMER - CD PROMOCIONAL - VERAO 2015';
$playlist[0]['title'] = '- CAVALEIROS SUMMER - VERAO 2015 - CD PROMOCIONAL - RICARDO LAGO 01 - GELO NA BALADA - CAVALEIROS SUMMER 2015.mp3';
$playlist[0]['comments'] = 'http://baixeshows.com.br';

//recebe os dados do xml
$xml = '<?xml version="1.0" ?>';
//RAIZ DO DOCUMENTO XML - PLAYLIST
$xml .= '<playlist>';

// Loop dos valores
for ( $i = 0; $i < count( $playlist ); $i++ ) {
	$xml .= '<item>';
	$xml .= '<id>' . $playlist[$i]['id'] . '</id>';
	$xml .= '<filename>' . $playlist[$i]['filename'] . '</filename>';
	$xml .= '<artist>' . $playlist[$i]['artist'] . '</artist>';
	$xml .= '<title>' . $playlist[$i]['title'] . '</title>';
	$xml .= '<comments>' . $playlist[$i]['comments'] . '</comments>';
	$xml .= '</item>';
}

$xml .= '</playlist>';

//criar o arquivo xml
$criar_xml = fopen('playlist.xml', 'w+'); //abrir arquivo, se não existir ele cria
fwrite($criar_xml, $xml);
fclose($criar_xml);

para ler os arquivos do diretório você pode usar algo como esse código abaixo:

<?php

/**
* @author: 		Rai Siqueira
* @copyright: 	baixeshows.com.br
* @package: 	Baixe Shows 2015
* @subpackage: 	Leitura de Diretórios
*/

/*
* http://php.net/manual/pt_BR/class.directoryiterator.php
* Leitura de arquivos com Iterator PHP5
*/

$iterator = new DirectoryIterator('musicas/123'); //instanciar a classe com a pasta onde vai escanear os arquivos

//inicio do LOOP
foreach($iterator as $entry):
echo "<a href=".$entry->getFilename().">" .$entry->getFilename()."</a>", "<br>";
endforeach;

Muito obrigado!, vou testar aqui.

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.