Ouvrir un fichier son distant avec un TMediaPlayer

emmanuelgo Messages postés 58 Date d'inscription vendredi 24 décembre 2004 Statut Membre Dernière intervention 13 avril 2005 - 28 mars 2005 à 22:48
ni69 Messages postés 1418 Date d'inscription samedi 12 juin 2004 Statut Membre Dernière intervention 5 juillet 2010 - 23 sept. 2005 à 18:03
salut à tous
j'utilise un Tmediaplayer avec lequel je souhaiterai lire un fichier audio qui n'est pas sur mon disque dur : par exemple, je souhaiterais lire le fichier : http://www.archive.org/download/camomille076/Cam76-sleepwake-01-stuffingliferevised_melissawelch.mp3'... (n'essayer pas de cliquer, c'est juste pour l'exemple !!
je procéde donc comme suit :

MediaPlayer1.FileName:='http://www.archive.org/download/camomille076/Cam76-sleepwake-01-stuffingliferevised_melissawelch.mp3';
MediaPlayer1.Open;
MediaPlayer1.Play;

que je place dnas le onclick d'un bouton.

quand je cliques sur le bouton, mon appli se connecte bien (mon firewall en atteste) mais le son n'est pas joué et j'obtiens une erreur :

quelqu'un a til une solution ?? (je joins la capture d'écran de l'erreur, je ne sais pas si ca va marcher)...

9 réponses

emmanuelgo Messages postés 58 Date d'inscription vendredi 24 décembre 2004 Statut Membre Dernière intervention 13 avril 2005
28 mars 2005 à 22:50
euh, en fait vous pouvez cliquer sur le lien si vous voulez entendre le morceau, il faut juste enlever le < ' > au bout du lien..mais bon c'est pas le but....
0
ni69 Messages postés 1418 Date d'inscription samedi 12 juin 2004 Statut Membre Dernière intervention 5 juillet 2010 12
29 mars 2005 à 07:40
Il faut d'abord télécharger le fichier en local avant de pouvoir le lire


@+
Bonne Prog'
Nico



<HR>
N'oubliez pas de cliquer sur Réponse acceptée lorsque la réponse vous convient !
0
ni69 Messages postés 1418 Date d'inscription samedi 12 juin 2004 Statut Membre Dernière intervention 5 juillet 2010 12
29 mars 2005 à 07:48
Voila une réponse inspirée d'une autre que j'avais donné sur le forum :

function
GetTempDir: string;
var
Dossier: array[0..MAX_PATH] of Char;
begin
result:= '';
if GetTempPath(SizeOf(Dossier), Dossier)<>0 then Result : = StrPas(Dossier);
end;

procedure TForm1.Button1Click(Sender: TObject);
var
Fs : TFileStream;
begin
Fs := TFileStream.Create(GetTempDir+'test.mp3',fmCreate);
try
idhttp1.Get('http://lien/fichier.mp3', Fs);
finally
Fs.Free;
end;
MediaPlayer1.FileName: =GetTempDir+'test.mp3';
MediaPlayer1.Open;
MediaPlayer1.Play;
end;

@+
Bonne Prog'
Nico


<HR>
N'oubliez pas de cliquer sur Réponse acceptée lorsque la réponse vous convient !
0
emmanuelgo Messages postés 58 Date d'inscription vendredi 24 décembre 2004 Statut Membre Dernière intervention 13 avril 2005
29 mars 2005 à 12:09
merci pour ta réponse...

1 -->> je n'ai pas essayé ta solution encore, je suppose que ça résoud le problème, mais si le fichier est téléchargé avant d'être lu, ça risque d'être un peu long...
n'y a t'il pas une solution qui permettrait de commencer à lire le fichier alors qu'il n'est pas encore totalement téléchargé ?
un peu comme le fait Winamp ou Window Media Player quand on lit un fichier son depuis un URL...c'est du streaming en fait... avec mise en memoire tampon etc...
si tu ne vois pas de quoi je parle fais ceci : dans window media player : fichier > ouvrir une URL > et là tu mets l'adresse d'un fichier (par exemple le lien que j'ai mis dans mon premier post)
ou dans winamp : dans le menu contextuel : CTRL + L > adresse du fichier ....

2 -->> peux tu expliquer la fonction GetTempDir ? ... je comprends en gros la suite, mais si tu peux commenter un peu l'autre fonction, ce serait sympa

merci !
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
emmanuelgo Messages postés 58 Date d'inscription vendredi 24 décembre 2004 Statut Membre Dernière intervention 13 avril 2005
29 mars 2005 à 18:14
merci pour tes réponses, merci pour la rapidité et pour les explications !!
bon tout ça ne m'arrange pas vraiment !! je n'ai pas Indy...j'ai la version D6Personal, sans indy, mais je crois que je peux l'installer...bref j'essaierais...
je ne valide pas ta réponse car ce n'est pas exactment ce que je cherche..celà dit merci beaucoup, je vais utiliser ça je pense, en attendant de pouvoir "streamer"..je vais approfondir mes recherches sur le net....en fait je pensais que ça allait être tout simple, puisuqe par exemple windows Media Player fait ça sans problème, et comme j'utilise un TMediaPlayer... je croyais que ça se ferait direct....m'enfin fallait pas réver...
encore merci pour ton bout de code et pour les explications qui vont avec !!

le sujet reste ouvert.....
0
cs_adeliz Messages postés 55 Date d'inscription mardi 30 novembre 2004 Statut Membre Dernière intervention 24 novembre 2009
21 sept. 2005 à 11:13
Un petit "UP"

Ce sujet m'interresse

POur ce qui est de lire une video, cela doit être la même procédure, non ?


Je suis né pour etre pénible...

Je tien a remercier tout ceux qui prennent le temps de se pencher sur mes questions, problemes et autres ...

Amicalement, Adeliz
0
ni69 Messages postés 1418 Date d'inscription samedi 12 juin 2004 Statut Membre Dernière intervention 5 juillet 2010 12
21 sept. 2005 à 12:26
Oui



@+

Nico { http://www.ni69.new.fr/ }




<hr size="2" width="100%">

N'oubliez pas de cliquer sur Réponse Acceptée lorsque la réponse vous convient !
0
cs_adeliz Messages postés 55 Date d'inscription mardi 30 novembre 2004 Statut Membre Dernière intervention 24 novembre 2009
21 sept. 2005 à 12:47
là je n'ai pas trop le temps de voir, mais ou peux t'on trouver la librairie indy ?

Y en as t'il d'autre qu'il faut pour pouvoir créer un programme pour lire de l'audio et/ou video via le net ?

Et quelque chose qui peux te paraitre évident mais je prefere quand même demander , comment fonctionne le composant Tmediaplayer ?



Je te remerci mon cher

Je suis né pour etre pénible...

Je tien a remercier tout ceux qui prennent le temps de se pencher sur mes questions, problemes et autres ...

Amicalement, Adeliz
0
ni69 Messages postés 1418 Date d'inscription samedi 12 juin 2004 Statut Membre Dernière intervention 5 juillet 2010 12
23 sept. 2005 à 18:03
En cherchant sur google, tu peux trouver Indy très facilement...
http://www.indyproject.org/



Tu peux regarder dans l'aide de Delphi pour le fonctionnement du MediaPlayer... Sélectionne ton composant et presse F1


@+

Nico { http://www.ni69.new.fr/ }




<hr size="2" width="100%">

N'oubliez pas de cliquer sur Réponse Acceptée lorsque la réponse vous convient !
0
Rejoignez-nous