Enfaite je comprend pas tout dans la classe.
Comment je peux faire pour la tester? J'appel les méthodes dans quel ordre?
Merci d'avance.
Enfaite je comprend pas tout dans la classe.
Comment je peux faire pour la tester? J'appel les méthodes dans quel ordre?
Merci d'avance.
salut smoke
Tu peux utiliser le truc comme cela
(Une forme avec un bouton dedans, et sur le click bouton, je fais cela
Ok ?
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4 WaveFile wave = new WaveFile(@"d:\audio\notify.wav"); wave.InverseData(); wave.Save(@"d:\audio\nico.wav", true);
The Monz, Toulouse
The Monz, Toulouse
Expertise dans la logistique et le développement pour
plateforme .Net (Windows, Windows CE, Android)
Ça fonctionne niquel theMonz31.
J'ai modifier quelque truc et je vais me débrouiller pour
Merci beaucoup j'ai plus qu'à rajouter tous les autres truc que j'avais fait par rapport à ça.
Merci encore
Avec plaisir Smoke... (grilles t'en une à ma santé )
Penses à passer à résolu si tout est finaliser
The Monz, Toulouse
The Monz, Toulouse
Expertise dans la logistique et le développement pour
plateforme .Net (Windows, Windows CE, Android)
Et pour le lire en live faut utiliser un streamBuffer non?
salut
beh, pour le lire en live, il te faut alimenter le buffer DirectX avec tes données
Donc, à priori, StreamBuffer ou bien simplement charger tout en mémoire
et fournir le buffer qui convient que DirectX te le demandes
The Monz, Toulouse
The Monz, Toulouse
Expertise dans la logistique et le développement pour
plateforme .Net (Windows, Windows CE, Android)
En faite le but est de pouvoir inverser en live un son.
Si on considère qu'un son fait 100%.
Je veux pouvoir lire par exemple 30%, cliquer sur reverse et il me relit les 30% déjà écouté à l'envers.
Donc wé je pense qu'il faut l'alimenter au fur et à mesure comme tu l'as précisé..
C'est prise de tête
Je poserai la solution si j'y arrive on pourra le rajouter à la classe que tu as déjà faite.
salut smoke
dans ma classe, tu as une fonction d'inversion.. Cette fonction inverse
"TOUT" le fichier.. mais rien ne t'empeche de travailler avec une fonction
d'inversion "partielle"... Il suffirait juste de lui donner un index de début
(au lieu de 0) et un nombre d'élément à inverser et basta
(d'ailleurs si j'avais été moins flemmard, j'aurais directement codé la fonction
comme cela ) .. Mais bon, je pense que tu es capable de l'adapter à ce
type de comportement
The Monz, Toulouse
The Monz, Toulouse
Expertise dans la logistique et le développement pour
plateforme .Net (Windows, Windows CE, Android)
Je trouve que tu as eu déjà pas mal de courage, il y a plus flemmard que toi
Pourquoi faire compliqué lorsque l'on peut faire encore plus compliqué.
Salut à Tous
C'était un plaisir de faire ce petit bout de code....
Moi, je trouve qu'il n'y a pas grand chose dedans !!! (très sincèrement)
Mais bon, si je participe ici à essayer d'expliquer, donner du code, chercher
des solutions, c'est parce que cela me permet également d'augmenter mes
connaissances et ma maitrise de .Net...
Apres, quand ca peut aider quelqu'un ce que j'ai pu trouver, autant en faire
profiter la communauté... même si c'est pas forcément l'esprit de tout le monde..
Et pis bon... l'enrichissement de la connaissance est un tout qu'il faut savoir partager
(Aller, j'arrete de prendre des pillules et je retourne de ce pas
en inter-contrat )
The Monz, Toulouse
The Monz, Toulouse
Expertise dans la logistique et le développement pour
plateforme .Net (Windows, Windows CE, Android)
Chuby
Ta sitation, ca serait pas "jigoro Kano" ? le fondateur du judo ?
Pour ma part, moi, c'était pas une citation vu que ca sortant de ma tete comme ca, naturellement
The Monz, Toulouse
The Monz, Toulouse
Expertise dans la logistique et le développement pour
plateforme .Net (Windows, Windows CE, Android)
En général les citation des grands hommes ne sont que des phrases qui sortaient naturellement de la tête de ces grands hommes
Pourquoi faire compliqué lorsque l'on peut faire encore plus compliqué.
Ca se pourrait, le type qui nous l'a sortit etait un prof qui adorait le japon et les arts martiaux...
Le futé nous avait sortit ca pour nous donner envie d'aider certains de nos collegues qui n'avait pas pu suivre nos cours
En fait, je posais juste la question car je ne m'en rapellelais plus Ta phrase m'y a fait penser...
En tout cas rien de tel que d'enseigner une technologie pour l'apprendre et la comprendre
Pourquoi faire compliqué lorsque l'on peut faire encore plus compliqué.
Pour ma part c'est toujours en cours
Je galère pas mal, c'est pas si facile que ça.
Je pourrai avoir plus d'infos sur:
C'est quoi align???
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 int max = data.Length / format.WF.NbBlockAlign; int align = format.WF.NbBlockAlign;
et je ne comprend pas ce que c'est format.WF.NbBlockAlign
merci d'avance
salut
petite explication alors :
De mémoire, le block align, te permet de savoir ce que prend (en octets) un echantillon... Ici, align, c'est juste pour "raccourcir" l'écriture (flemme inside)
Dans un fichier audio de format Wav, il te faut savoir, pour faire l'inversion
si le fichier est Stéréo, 16/8 bits, etc...
La, avec le WF.NbBlockAlign, je sais que par exemple, pour un fichier 16 bits
Stereo, une donnée (1 donnée Canal Gauche / 1 donnée canal de droite)
va me prendre NbBlockAlign
Ensuite, je divise la longueur des données par ce parametre, ce qui me donne
le nombre de block de données significatives.. Ensuite, je fais l'inversion
block par block...
Si je me contentais de dire x(i) = x(Max - i), j'intervertirais sans tenir
compte des canaux, sans tenir compte de 32/24/16/8 bits, stéréo, etc...
Voila...
Est-ce plus clair pour toi maintenant ?
The Monz, Toulouse
The Monz, Toulouse
Expertise dans la logistique et le développement pour
plateforme .Net (Windows, Windows CE, Android)
Bonjour
Quand je lis un fichier wav à l'envers comme dans la classe de theMonz31, il n'y a aucun soucis. Le son est niquel.
Par contre quand je le lis en live le son est lu parfaitement à l'envers c'est bon mais y a comme un claquement rapide, la qualité du son est perdu.
Peut il y avoir des problèmes d'encodage?
Temps de latence dans l'écriture dans les buffers?
Quelqu'un à t'il déjà rencontrer le soucis?
Merci
if ( toi == "répondre à moi")
{
moi = "";
}
Débutant mais futur Pro...
Vous avez un bloqueur de publicités installé.
Le Club Developpez.com n'affiche que des publicités IT, discrètes et non intrusives.
Afin que nous puissions continuer à vous fournir gratuitement du contenu de qualité, merci de nous soutenir en désactivant votre bloqueur de publicités sur Developpez.com.
Partager