ced55957
Messages postés108Date d'inscriptiondimanche 2 mars 2003StatutMembreDernière intervention19 juin 2012
-
20 févr. 2006 à 00:57
ni69
Messages postés1418Date d'inscriptionsamedi 12 juin 2004StatutMembreDernière intervention 5 juillet 2010
-
22 févr. 2006 à 19:27
bonjours
voila mon souci!!! j'ai créer un lecteur mp3 avec 2 mediaplayer (en faite 2 lecteurs mp3 dans 1) j'ai ajouter deux trackbar (1 pour le lecteur 1 et 1 pour le lecteur 2) il y en a un qui est toujours sur position max l'autre sur position min. et je voudrais que quand je diminue l'un l'autre augmente . le trackbar1 controle le volume du mediaplayer1 le trackbar2 le volume du mediaplayer2, en faite créer une table de mixage??? pouver vous m'aider
Je vais me permettre juste d'expliquer l'idée (très bonne) de Jlen. Le principe est simple : le volume sonore doit etre constant quelque soit le controle de trackbar que tu fais : On a donc volume1+volume2=volume max=constante soit trackbar
Nicolas___
Messages postés992Date d'inscriptionjeudi 2 novembre 2000StatutMembreDernière intervention24 avril 20131 20 févr. 2006 à 18:18
Au lieu d'utiliser 2 trackbars ,
n'utilise qu'une trackbar qui qd elle est en position du milleu correspond a la valeur par defaut des 2 lecteurs , et qd elle est au min/max correspond au min/max d'un des 2 lecteurs ce qui facilite un peu les choses si tu veux faire du mix
f0xi
Messages postés4205Date d'inscriptionsamedi 16 octobre 2004StatutModérateurDernière intervention12 mars 202237 21 févr. 2006 à 05:19
a chaque outils sont utilisation. MediaPlayer n'est pas prevus pour cela, vas plutot faire un tours du coté de Bass et FMod qui sont deux api son complete et qui permette de gerer le multipiste.
<hr size="2" width="100%">La theorie c'est quand on sait tout, mais que rien ne fonctionne.
La pratique c'est quand tout fonctionne, mais que personne ne sait pourquoi.
<hr>
ced55957
Messages postés108Date d'inscriptiondimanche 2 mars 2003StatutMembreDernière intervention19 juin 2012 21 févr. 2006 à 11:31
merci bien pour toute les donnée que vous m'avez fournit mais je suis trés debutant dans la matiere lol!!!!comment doije faire pour diminuer le son d'un mediaplayer et pas du son general????
f0xi
Messages postés4205Date d'inscriptionsamedi 16 octobre 2004StatutModérateurDernière intervention12 mars 202237 22 févr. 2006 à 08:39
alors, sur un systeme windows et avec 2 mediaplayer tu vas avoir 4 control de volume :
Master Volume : le volume general de la carte son
Wave Volume : le volume general des sources "wave" (mp3, ogg, video, cd audio ect...)
MP1 Volume : le volume general du mediaplayer 1
MP2 Volume : le volume general du mediaplayer 2
Dans ce systeme, il faudrat toucher au son de MP1 et MP2 pour obtenir un effet "cross-over" ce qui ne serat pas trés pratique d'ailleur. un peu comme si on devais utiliser deux chaine hifi et bouger le volume des deux en meme temps.
Ici, le cross-over permet de garder le volume des pistes a leur position actuelle et de passer doucement ou rapidement d'une piste a l'autre sur la sortie son.
Le cross-over est egalement trés utiliser pour le "scratching" sur disque vynil.
Dans le cas d'une table 4 pistes ou plus, on peu avoir plusieurs Cross-over ou encore un selecteur de piste sur lequelles on vas travailler.
dans bass ou fmod , on possede en effet de deux reglage possible pour le volume :
le volume principal du canal audio et le volume de la source audio.
ensuite le tout et de travailler sur le pourcentage.
un crossover vas envoyer x% de piste 1 (quelque soit le volume) et y% de piste 2 (quelque soit le volume) sur la sortie son.
une trackbar servant de crossover serat donc quotée de -100 a 100, en calculant le ratio par rapport au volume courrant de la piste on obtiendras un chiffre nous permettant d'incrementer ou decrementer la valeur du volume de cette piste.
<hr size="2" width="100%">La theorie c'est quand on sait tout, mais que rien ne fonctionne.
La pratique c'est quand tout fonctionne, mais que personne ne sait pourquoi.
<hr>
// piste 1 volume
procedure TForm1.TrackBar2Change(Sender: TObject);
begin
// -255 car en position vertical la trackbar est inversée
v1 := 255-TrackBar2.Position;
// affichage du volume de piste 1
label1.Caption := format('%.3d',[v1]);
end;
// piste 2 volume
procedure TForm1.TrackBar3Change(Sender: TObject);
begin
// -255 car en position vertical la trackbar est inversée
v2 := 255-TrackBar3.Position;
// affichage du volume de piste 2
label2.Caption := format('%.3d',[v2]);
end;
// cross-over
procedure TForm1.TrackBar1Change(Sender: TObject);
begin
if trackbar1.Position < 0 then begin
p2 := 100.0;
// < 0 on calcul le pourcentage de piste 1
p1 := 100 - abs(trackbar1.Position);
end;
if trackbar1.Position > 0 then begin
p1 := 100.0;
// > 0 on calcul le pourcentage de piste 2
p2 := 100 - abs(trackbar1.Position);
end;
if trackbar1.Position = 0 then begin
// a 0, piste 1 et piste 2 sont a 100%
p1 := 100.0;
p2 := 100.0;
end;
// affichage du pourcentage de piste 1
label3.Caption := format('%.0f%%',[p1]);
// affichage du pourcentage de piste 2
label4.Caption := format('%.0f%%',[p2]);
// affichage du nouveau volume de piste 1
<hr size="2" width="100%">La theorie c'est quand on sait tout, mais que rien ne fonctionne.
La pratique c'est quand tout fonctionne, mais que personne ne sait pourquoi.
<hr>
ced55957
Messages postés108Date d'inscriptiondimanche 2 mars 2003StatutMembreDernière intervention19 juin 2012 22 févr. 2006 à 17:44
ffffffffffffffffffffffffffffffff!!!!lol je ne comprend rien!!!!!merci pour vos explication mais je suis vraiment debutant je ne comprend rien au terme!!!!!