begin process at 2010 02 10 10:19:53
  Trouver un code source :
 
dans
 
Accueil > 

Code

 > 

Multimedia

 > EXTRACTION AUDIO FLV VERS MP3

EXTRACTION AUDIO FLV VERS MP3


 Information sur la source

Note :
Aucune note
Catégorie :Multimedia Classé sous :FLV, MP3, Extraire, FLV2MP3, Deezer Niveau :Débutant Date de création :14/01/2008 Date de mise à jour :17/01/2008 14:22:26 Vu / téléchargé :23 580 / 1 033

Auteur : Renfield

Ecrire un message privé
Ce membre participe au partage de revenus publicitaires
Commentaire sur cette source (18)
Ajouter un commentaire et/ou une note


 Description

[mode hypocrite=on]
Votre radio internet préférée vous propose une écoute de la musique en streaming via la technologie FLV ?

Ce petit module vous permettra d'extraire la piste audio MP3 (uniquement) des fichiers FLV.
[mode hypocrite=off]


 Conclusion

Libre a chacun de l'utiliser avec les sources audio qu'il souhaite...

Je ne saurait en être tenu pour responsable...

 Fichier Zip

Les Membres Club peuvent télécharger directement un fichier contenu dans le zip sans télécharger le zip en entier !

Télécharger le zip


 Historique

14 janvier 2008 17:25:47 :
Je me suis laissé tenter... J'ai dopé le code de lecture du fichier FLV au FileMapping.
15 janvier 2008 10:20:50 :
mode simple (lecture VB) et mode initié (filemapping)
17 janvier 2008 14:22:39 :
Code commenté. la fonction accepte dorénavant aussi un tableau d'octets

 Sources du même auteur

Source avec Zip COURS DE PILOTAGE........D'APPLICATIONS
Source avec Zip CSOCKET - REMPLACEZ WINSOCK PAR LA VERSION 2 DES API
Source avec Zip Source avec une capture COULEUR DANS UN RICHTEXTBOX SANS MODIFIER SELSTART OU SELLEN...
Source avec Zip APPEL DE POINTEUR DE FONCTIONS - API SANS LES DECLARER
Source avec Zip Source avec une capture SABNZBD+ UPLOAD DE FICHIERS NZB

 Sources de la même categorie

Source avec Zip Source avec une capture EASYSAMPLE : JOUER DES SONS (MP3, WAVE) DEPUIS UN CLAVIER MI... par bierman
Source avec Zip Source avec une capture Source .NET (Dotnet) EXTRACT' SOUND MP3 par dheroux
Source avec Zip Source avec une capture Source .NET (Dotnet) CAPTURE ET ENREGISTREMENT D'UNE IMAGE DEPUIS UNE WEBCAM par RENAUD34
Source avec Zip Source avec une capture FLVPLAYER+XML+TXT DYNAMIQUE+TILELIST+UILOADER par tranber78
Source avec Zip Source avec une capture LECTEUR AUDIO AVEC JAVAFX par puccino1er

 Sources en rapport avec celle ci

Source avec Zip Source avec une capture Source .NET (Dotnet) TÉLÉCHARGER LES VIDÉOS DES SITES YOUTUBE ET DAILYMOTION EN .... par guiguidu25
Source avec Zip Source avec une capture EXTRACTION DES FICHIERS IMG DE GTA 3 (VICE CITY ET SAN ANDRE... par gta126
Source avec Zip Source avec une capture MP3 ID3 TAG CLEANER par gilgamesh44
Source avec Zip Source avec une capture RAPID PLAYER BY CEDX par CEDXIX
Source avec Zip Source avec une capture RIPPER ENCODEUR MP3 par fredvlvcec

Commentaires et avis

Commentaire de EBArtSoft le 14/01/2008 16:12:45 administrateur CS

M%$!de tu ma eu de vitesse, bon faut dire que la source traine sur mon pc depuis Aout dernier.

Bien joué :p

Bon et pour la video ? hein hein ? J'ai vu les source de flvsplitter (c#) tout est dedans.

@+

Commentaire de Renfield le 14/01/2008 16:17:01 administrateur CS

'lut EB.

euh... je m'interesse en fait pas trop aux vidéos, pas le temps de les regarder ^^
le Mp3 en fond dans les oreilles, pas besoin de lacher l'IDE des yeux...

dans l'absolu, ma source est mauvaise, puisqu'elle accède sans arrêt aux fichiers... on pourrait les mapper en mémoire, et faire de la voltige, mais bon, le temps de traitement semble correct, pour le moment.
j'y reviendrais peut etre, si le besoin s'en fait sentir.

Commentaire de EBArtSoft le 14/01/2008 16:19:16 administrateur CS

Ohlala je clique pour voir le code vite fait et la je tombe sur quoi !!!

"Dim xbBytes(2) As Byte"
"CopyMemory ReadUInt24, xbBytes(0), 4"

Copier 4 octets quand on en a que 3 c'est pas bieeeeen !
Bon VB align tout sur 4 donc tu risque rien mais bon par principe :p

Aller je regarde pas plus sinon je vais ecrire un roman et oui quand on aime on ne compte pas. Enfin ça fait toujours plaisir de voir une de tes sources.

@+

Commentaire de Renfield le 14/01/2008 17:27:47 administrateur CS

Comme mentionné dans la MàJ, j'ai passé le code de lecture au FileMapping, et modifié les lectures qui n'étaient que des skip par de simples incrémentation du pointeur de lecture...

Commentaire de EBArtSoft le 14/01/2008 17:37:46 administrateur CS

[Mode chieur = On] Ca aurait ete bien d'avoir les deux methodes pour les debutants qui debutent :p [Mode chieur = Off]

Si la fonction est destiné à etre appelé en continu pourquoi ne pas en faire une classe avec genre "Open" "Convert" "Close" ce qui permettrait de tirer un max de profit du mapping. Sinon autant ouvrir/lire/ecrire

(c'etait peut etre a mettre dans le mode chieur ça non ?)

Commentaire de moustachu le 17/01/2008 09:42:05

[mode hypocrite=on]
C'est quoi un mp3

Commentaire de moustachu le 17/01/2008 09:43:54

Ouppsss...il faut fermer les balises !
[mode hypocrite=off]

Merci pour ce code. très instructif. Surtout d'avoir les deux méthodes.

++
Moustachu

Commentaire de Renfield le 17/01/2008 09:47:10 administrateur CS

je vais modifier un peu le module, pour pouvoir lire depuis un flux en mémoire, pas forcément depuis un fichier...
parce que mes sockets interceptent un flux, hein, pas un fichier ...

alors si je peux éviter de passer par un fichier .flv intermédiaire.

je ne sais pas si le mode hypocrite est nécessaire, je ne fait que jouer avec ce qui vient sur mon poste après tout...

Commentaire de moustachu le 17/01/2008 09:49:10

3 commentaires en deux minutes, j'aurais pu condenser...
[Mode chieur = On]Ca aurait été bien un peu plus de commentaires, là, on dirait presque du C ^^[Mode chieur = Off]

++
Moustachu

Commentaire de Renfield le 17/01/2008 14:31:39 administrateur CS

Mis à jour.

j'ai commenté

et il y a maintenant deux façons de faire:

Dim sFileName As String
Dim sFolder As String
    sFolder = "E:\Deezer\"
    sFileName = Dir$(sFolder & "*.flv")
    Do While LenB(sFileName)
        Flv2Mp3 sFolder & sFileName, sFolder & "Mp3\"
        sFileName = Dir$()
    Loop

ou bien

Dim xbData() As Byte
    Open "E:\Deezer\Untitled - 83_.flv" For Binary Access Read As #1
        ReDim xbData(LOF(1))
        Get #1, , xbData
    Close #1
    Flv2Mp3 xbData, "E:\Deezer\Mp3\"

Donc soit:
- Nom du fichier Flv source
- Tableau de Byte (contenu du fichier)

comme je l'ai dit plus haut, ca évite de passer par un fichier intermédiaire dans le cadre de fichiers reçus en live...

concernant le second paramètre, plusieurs cas sont possibles :
- il est possible de le laisser vierge.
  1/ depuis un fichier, on écrit dans un fichier portant le même nom (extension mp3)
  2/ depuis un flux, App.Path & "\Untitled.mp3"
- Si vous spécifiez un nom de dossier, ou un nom de fichier, il sera complété...

à noter que la fonction n'écrasera aucun fichier: elle incrémentera les noms de fichiers
à noter également que la fonction va s'assurer que l'arborescence de sortie existe bien (ou la créer si besoin est).

Commentaire de Renfield le 17/01/2008 14:32:56 administrateur CS

j'oubliais...

seule la version rapide (qui utilise entre autres le FileMapping) a été mise a jour.
la version VB ne changera pas

Commentaire de EBArtSoft le 17/01/2008 21:12:24 administrateur CS

moustachu> oulaaa malheureux fait gaffe faut toujours fermer la balise en mode hypocrite sinon on fini au gouvernement :p

Ren> [mode semi-pressé de voir la suite = tru] c'est pour quand le mode avec les socket hein dit c'est pour quand [mode semi-pressé de voir la suite = falçe]


Commentaire de Renfield le 17/01/2008 21:44:58 administrateur CS

la suite ?

ben j'ai ça en local...
en "Sample" d'une sorte de proxy http

Commentaire de moustachu le 18/01/2008 09:44:28

Ebartsoft>C'est justement parce que j'avais reçu un coup de fil que je me suis dit que j'avais pas fermé ma balise.Pfiouuu, je suis pas passé loin !

Renfield>Super commenté, ça fait plaisir ! très bien tes fonctions CrackPath et surtout GetUnique. Où as-tu appris comment était constitué un fichier flv ?

++
Moustachu

Commentaire de Renfield le 18/01/2008 10:00:40 administrateur CS

la doc est dispo chez macromédia ^^

CrackPath va me reservir...
j'avais codé tout un tas de conditions, c'etait sacrément tordu, et j'avais pas cette même garantie de bien gérer tous les cas. Des fois les choses les plus simples...

GetUnique a été codée y'a longtemps...

ces deux fonctions sont d'ailleurs sur Codyx, pour les garder sous le coude

Commentaire de GEDDi le 31/01/2008 01:54:28

Hello,

Merci pour ton code!
Je l'ai adapté au FBSL :)
Voici le code pour celles et ceux que ça intéresse :
[code]
#AppType CONSOLE

Dim mnIn As Integer, mnOut As Integer
Dim %i, $sBuff, %nPos

Flv2Mp3( "Stupeflip - Je fume pu d'shit.flv" )

Function Flv2Mp3(ByVal szFLVFile As String) As Integer
    mnIn = FileOpen( szFLVFile, BINARY_INPUT )
    Flv2Mp3 = False
    If (ReadUInt32() = &H464C5601) Then
        ReadUInt8() 'flags
        nPos = ReadUInt32()

        FileSeek( mnIn, nPos )'+1
        ReadUInt32() 'prevTagSize

        Do Until FileEof(mnIn)
            ReadTag()
            ReadUInt32() 'prevTagSize
        Loop

        If mnOut Then
            Flv2Mp3 = True
            FileClose( mnOut  )
            mnOut = 0
        End If
    End If
    FileClose( mnIn )
End Function

Sub ReadTag()
Dim eTagType As Integer, eMediaType As Integer, nLength As Integer, xbData As String
Static xTotal As Integer

    eTagType = ReadUInt8()
    nLength  = ReadUInt24()
    ReadUInt32() 'timeStamp
    ReadUInt24() 'streamID

    If nLength Then
        eMediaType = ReadUInt8()
        xbData = ReadBytes(nLength - 1)
        '# Audio et de type MP3
        If (eTagType = &H8) And (eMediaType \ 16) = 2 Then
            If mnOut = 0 Then
                xTotal = 0
                mnOut = FileOpen( ".\out.mp3", BINARY_NEW )
            End If
            xTotal = xTotal + nLength
            FilePut( mnOut, xbData )
            'Locate(5, 5): Print xTotal, " MP3 bytes written"
        End If
    End If
End Sub

Function ReadBytes(vnLength As Integer)
    sBuff = FileGet(mnIn, vnLength): Return sBuff
End Function

Function ReadUInt32() As Integer
    sBuff = FileGet( mnIn, 4): Return CVI(sBuff, 1)
End Function

Function ReadUInt24() As Integer
    sBuff = FileGet( mnIn, 3): Return CVI(sBuff, 1)
End Function

Function ReadUInt8() As Integer
    sBuff = FileGet( mnIn, 1): Return CVI(sBuff, 1)
End Function
[/code]

Enjoy!

Commentaire de pjbou le 07/09/2008 00:18:34

Bonjour!
Le code a l'air très complet et semble bien marcher pour les autres, mais je suis incapable de l'insérer dans mon appli VB. J'utilise VB Express 2008. Quand je le colle dans un module, j'ai un 40aine d'erreurs qui apparaissent... Je suis débutant, et je ne vois vraiment pas comment résoudre le problème.
Merci!

Commentaire de bubulemaster le 17/09/2008 14:38:03

Bonjour,

j'ai cherché sur internet et sur le site de macromedia, je ne trouve pas la doc du format FLV.
Je voudrais juste connaitre la durée et la dimension de la vidéo.

Merci

 Ajouter un commentaire


Discussions en rapport avec ce code source dans le forum

Extraire une partie d'un fichier mp3 [ par bernardcvs ] Bonjour,Y'a-t-il moyen en vb d'extraire une partie d'un fichier audio mp3 pour obtenir un nouveau fichier mp3 donc plus petit Voila Merci. Extraire un exe des ressources [ par MacWarrior ] Bonsoir à tous, j'ai un problème avec la fonction suivante : Private Sub PictureBox15_Click(ByVal sender As System.Object, ByVal e As System.Even Mp3 et resources [ par simbase ] Bonjour à tous,J'utilise vb express 2008 j'ai developpe un applicatif qui doit entre autres donner la date en temps réel avec des fichiers .wav. C'est comment lister les fichier mp3 du dossier ou se trouve le exe de mon programe? [ par jx53 ] salutje voudrait faire un lecteur mp3 et pour quil soit complet il faudrait que je puisse afiché les nom des fichier mp3 qui se trouve avec l'éxécutab recuperer la valeur d'une cellule avec une liste deroulante [ par repiet95 ] Bonjour, Je suis debutant en visual basic et j'essaaye de faire des fonctions pour excel. Pour l'instant j'ai fait une macro qui permet d'extraire de Probleme skin video flv avec dreamweaver [ par romcross ] BonjourDébutant dans la création de site internet j'aurais voulu savoir comment mettre un skin avec le bouton mode passage en plein écran car dans les lecteur de fichier MP3 dans une application Access [ par danielp63112 ] Bonjour,Désolé mon handicap visuel m'empêche de lire les nombreuses pages disponibles sur ce site. Donc je vous expose mon petit problème.Pour lire de comment lire un fichier mp3 [ par mickael56100 ] J'aimerais ajouter du son à mon application développé sous microsoft visual basic 2008 mais je n'y parviens pas.J'ai regardé sur le site msdn si je po Extraire le texte d'un champ d'un écran via les API [ par jil2401 ] Bonjour à tous,Je m'excuse mais je suis un peu novice en API et en programmation.Je cherche comment faire pour récupérer le texte contenu dans un cham Récéption station radio [ par Nardoum ] Salut à tous j'ai besoin de votre aide.Donc voilà j'ai acheter un petit gadget qui sert à espionner quelqu'un avec un micro intégré.Il s'agit d'un pet


Nos sponsors


Sondage...

CalendriCode

Février 2010
LMMJVSD
1234567
891011121314
15161718192021
22232425262728

Consulter la suite du CalendriCode

 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 0,827 sec (3)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales