IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

VB 6 et antérieur Discussion :

Chargement d'une image à partir d'une vidéo


Sujet :

VB 6 et antérieur

  1. #1
    Membre éprouvé Avatar de DAUDET78
    Homme Profil pro
    retraité
    Inscrit en
    Janvier 2008
    Messages
    635
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 81
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : retraité
    Secteur : Industrie

    Informations forums :
    Inscription : Janvier 2008
    Messages : 635
    Points : 1 165
    Points
    1 165
    Par défaut Chargement d'une image à partir d'une vidéo
    Bonjour,
    J'ai fais un programme qui me permet, avec des composants "image" de visualiser les fichiers .JPG d'un répertoire. Ca marche très bien avec
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    ImageVu(I%).Picture = LoadPicture("Toto.jpg")
    Par contre, j'ai aussi des fichiers vidéo .AVI ou .WMV et avec
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    ImageVu(I%).Picture = LoadPicture("Toto.avi")
    ' ou
    ImageVu(I%).Picture = LoadPicture("Toto.wmv")
    Ca ne marche pas ! L'image précédente reste en place et il n' y a pas d'erreur générée.

    Je désire, si il y a une combine possible, visualiser une des images de ma vidéo.
    Merci d'avance
    Daudet
    PS : la solution actuelle ? Je détecte la présence d'un fichier vidéo et je remplace l'image par un logo "Vidéo" ...... mais ce n'est pas joli joli !

  2. #2
    Membre éprouvé
    Inscrit en
    Juin 2006
    Messages
    795
    Détails du profil
    Informations forums :
    Inscription : Juin 2006
    Messages : 795
    Points : 1 270
    Points
    1 270
    Par défaut
    Ca risque d'être un peu problematique.
    En fait, je pense qu'il faudrait :
    1. d'abord déterminer le format du fichier (pour savoir quelle est sa structure)
    2. lire le fichier et voir avec quel codec est encodé la vidéo
    3. lire la première image
    4. la décoder
    5. éventuellement la convertir en jpg (si on a récupéré du BMP)
    6. l'afficher \o/

    Si c'est encodé en mpg (et peut être dans d'autre format de compression), alors tu peux sauter l'étape 5 (conversion en jpg).

    Mais je pense qu'il devrait y avoir des exemples qui traînent sur le net, en cherchant par exemple "afficher 1ere image d'une vidéo".

  3. #3
    Membre éprouvé Avatar de DAUDET78
    Homme Profil pro
    retraité
    Inscrit en
    Janvier 2008
    Messages
    635
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 81
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : retraité
    Secteur : Industrie

    Informations forums :
    Inscription : Janvier 2008
    Messages : 635
    Points : 1 165
    Points
    1 165
    Par défaut
    Merci pour ta réponse ..... mais la toile, je l'ai passée au peigne fin !
    J'avais trouvé trois pistes :
    • Avec l'API mciSendStringA ICI
    • Avec WIA
    • Avec le composant MSVidCtl (que je n'ai pas réussi à faire marcher, faute de doc)
    Mais je n'ai rien réussi à conclure . Soit ce n'est pas le bon choix, ou soit mon niveau est trop nul pour comprendre !

  4. #4
    Membre éprouvé
    Inscrit en
    Juin 2006
    Messages
    795
    Détails du profil
    Informations forums :
    Inscription : Juin 2006
    Messages : 795
    Points : 1 270
    Points
    1 270
    Par défaut
    Alors il faut la repasser au peigne encore plus fin !!
    En fait, il faudrait peut être plutôt chercher du côté de "extract image from video" ou "extract frame from video".
    Un début de commencement de piste ici ?
    Ca semble un peu dur à faire en VB6. Il va surement falloir passer par DirectShow pour le décodage des vidéo et je ne pense pas qu'on puisse l'utiliser avec VB6.
    Dans un premier temps, je suggère de se focaliser sur les mpg. Ca devrait être plus simple.

    Résultat de mes recherches:
    http://www.vbaccelerator.com/home/VB...on/article.asp
    http://www.vbforums.com/showthread.php?t=525882

    Dans la discussion du forum vbforums, un participant donne un lien vers un forum chinois qui donne du code qui marche. Pour éviter les problèmes de liens morts, je reposte le code ici
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    Option Explicit
     
    Private Declare Function mciSendString Lib "winmm.dll" Alias "mciSendStringA" (ByVal lpstrCommand As String, ByVal lpstrReturnString As String, ByVal uReturnLength As Long, ByVal hwndCallback As Long) As Long
    Private Declare Function CreateDC Lib "gdi32" Alias "CreateDCA" (ByVal lpDriverName As String, ByVal lpDeviceName As String, ByVal lpOutput As String, lpInitData As Long) As Long
    Private Declare Function CreateCompatibleBitmap Lib "gdi32" (ByVal hdc As Long, ByVal nWidth As Long, ByVal nHeight As Long) As Long
    Private Declare Function CreateCompatibleDC Lib "gdi32" (ByVal hdc As Long) As Long
    Private Declare Function SelectObject Lib "gdi32" (ByVal hdc As Long, ByVal hObject As Long) As Long
    Private Declare Function BitBlt Lib "gdi32" (ByVal hDestDC As Long, ByVal X As Long, ByVal Y As Long, ByVal nWidth As Long, ByVal nHeight As Long, ByVal hSrcDC As Long, ByVal xSrc As Long, ByVal ySrc As Long, ByVal dwRop As Long) As Long
    Private Declare Function OpenClipboard Lib "user32" (ByVal hwnd As Long) As Long
    Private Declare Function EmptyClipboard Lib "user32" () As Long
    Private Declare Function SetClipboardData Lib "user32" (ByVal wFormat As Long, ByVal hMem As Long) As Long
    Private Declare Function CloseClipboard Lib "user32" () As Long
    Private Declare Function DeleteDC Lib "gdi32" (ByVal hdc As Long) As Long
    Private Declare Function ReleaseDC Lib "user32" (ByVal hwnd As Long, ByVal hdc As Long) As Long
    Private Declare Function GetWindowRect Lib "user32" (ByVal hwnd As Long, lpRect As RECT) As Long
    Private Const CCHDEVICENAME = 32
    Private Const CCHFORMNAME = 32
    Private Type RECT
            Left    As Long
            Top     As Long
            Right   As Long
            Bottom  As Long
    End Type
     
    Private Sub Command1_Click()
    Dim RetVal As Long
    RetVal = mciSendString("close avi", 0, 0, 0)
    RetVal = mciSendString("open c:\capture.avi alias avi parent " & Picture1.hwnd & " style child", 0, 0, 0)
    RetVal = mciSendString("play avi", 0, 0, 0)
    End Sub
     
    Private Sub Command2_Click()
    mciSendString "pause avi ", 0, 0, 0
    End Sub
     
    Function ScreenCapture(ByVal Left As Integer, ByVal Top As Integer, ByVal Right As Integer, ByVal Bottom As Integer) As Boolean
    Dim rWidth As Integer, rHeight As Integer
    Dim SourceDC As Long, DestDC As Long, bHandle As Long, dHandle As Long, wnd As Long
    rWidth = Right - Left
    rHeight = Bottom - Top
    SourceDC = CreateDC("DISPLAY", 0, 0, 0)
    DestDC = CreateCompatibleDC(SourceDC)
    bHandle = CreateCompatibleBitmap(SourceDC, rWidth, rHeight)
    SelectObject DestDC, bHandle
    BitBlt DestDC, 0, 0, rWidth, rHeight, SourceDC, Left, Top, &HCC0020
    wnd = Screen.ActiveForm.hwnd
    OpenClipboard wnd
    EmptyClipboard
    ScreenCapture = SetClipboardData(2, bHandle)
    CloseClipboard
    DeleteDC DestDC
    ReleaseDC dHandle, SourceDC
    End Function
     
    Private Sub Command3_Click()
    Dim picRect As RECT
    GetWindowRect Picture1.hwnd, picRect
    ScreenCapture picRect.Left, picRect.Top, picRect.Right, picRect.Bottom
    Picture2.Picture = Clipboard.GetData
    End Sub
     
    Private Sub Form_Load()
    Picture1.Appearance = 0
    Picture2.Appearance = 0
    Command1.Caption = "Play"
    Command2.Caption = "Pause"
    Command3.Caption = "Screenshot"
    End Sub
    Copie le code dans un nouveau projet, ajoute 3 boutons et 2 PictureBox.
    1er bouton = play
    2ème bouton = pause
    3ème bouton = screenshot

    Le bouton Play va lire la video "C:\capture.avi", puis clique sur pause et enfin screenshot.
    C'est pas pile poil ce que tu voulais mais tu devrais pouvoir t'en sortir avec ça.

  5. #5
    Membre éprouvé Avatar de DAUDET78
    Homme Profil pro
    retraité
    Inscrit en
    Janvier 2008
    Messages
    635
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 81
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : retraité
    Secteur : Industrie

    Informations forums :
    Inscription : Janvier 2008
    Messages : 635
    Points : 1 165
    Points
    1 165
    Par défaut
    Citation Envoyé par Anikinisan Voir le message
    Alors il faut la repasser au peigne encore plus fin !!
    Comme j'ai la même coiffure qu'Homère, je ne sais plus passer un peigne !
    Dans la discussion du forum vbforums, un participant donne un lien vers un forum chinois qui donne du code qui marche. Pour éviter les problèmes de liens morts, je reposte le code ici
    J'ai fai un nouveau projet avec ce code (en changeant le nom du fichier .AVI). Ca tourne , mais ça ne marche pas.
    Je m'explique. Ca compile OK. Je le lance OK. Quand je clique le bouton play, je n'ai pas d'image, mais du blanc et un son de bruit de mer coupé de silence. Ca s’arrête à peu près au bout du temps de ma vidéo (40 secondes). Si je fais un Screenshot, j'ai un carré blanc dans la picture de droite.
    Pour info, en debug, les appels avec le bouton play vers mciSendString retourne tous la valeur 0

    Je me demande si il n'y a pas une histoire de Codec ? C'est un mot que j'ai trouvé sur la toile .....
    PS : je suis en XP SP6.... et je pense que nos enfants devront se mettre au Mandarin !

  6. #6
    Membre éprouvé
    Inscrit en
    Juin 2006
    Messages
    795
    Détails du profil
    Informations forums :
    Inscription : Juin 2006
    Messages : 795
    Points : 1 270
    Points
    1 270
    Par défaut
    Citation Envoyé par DAUDET78 Voir le message
    Je me demande si il n'y a pas une histoire de Codec ? C'est un mot que j'ai trouvé sur la toile .....
    PS : je suis en XP SP6.... et je pense que nos enfants devront se mettre au Mandarin !
    Si, c'est très probablement une histoire de codec (compression de Coder-Decoder).
    En fait ce code passe par une dll windows (winmm.dll pour ne pas la nommer) qui fait tout le boulot. Le truc, c'est qu'elle ne peut pas faire plus que ce que peut faire le lecteur windows media player. Tu peux donc tester avec ton wmp et je parie que tu n'aura que du son.
    En fait, il faudrait trouver avec quel encodeur a été encodée ta video. Après y'a plus qu'à installer ce codec et roulez jeunesse !
    C'est ptet du Xvid.

    PS: ton XP doit être en SP3 parce que le SP6 existe pas...
    Par contre, ton VisualStudio6 doit effectivement être en SP6 !

  7. #7
    Membre éprouvé Avatar de DAUDET78
    Homme Profil pro
    retraité
    Inscrit en
    Janvier 2008
    Messages
    635
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 81
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : retraité
    Secteur : Industrie

    Informations forums :
    Inscription : Janvier 2008
    Messages : 635
    Points : 1 165
    Points
    1 165
    Par défaut
    Merci de t'intéresser autant à ma question .... mais vas y doucement , on commence à atteindre ma limite d'incompétence !
    Citation Envoyé par Anikinisan Voir le message
    c'est qu'elle ne peut pas faire plus que ce que peut faire le lecteur windows media player. Tu peux donc tester avec ton wmp et je parie que tu n'aura que du son.
    WMP me lit parfaitement mon fichier AVI (image et son).
    il faudrait trouver avec quel encodeur a été encodée ta video.
    C'est un appareil photo Canon SX110
    C'est ptet du Xvid.
    j'ai chargé Xvid .... pas de changement

    PS: Mon bruit de mer ..... c'est le bon son ! la vidéo, c'est un gamin avec une voiture radiocommandée. Par contre, le son, c'est cycliquement les 5 premières secondes de la vidéo entrecoupées de silence.

  8. #8
    Membre éprouvé
    Inscrit en
    Juin 2006
    Messages
    795
    Détails du profil
    Informations forums :
    Inscription : Juin 2006
    Messages : 795
    Points : 1 270
    Points
    1 270
    Par défaut
    Citation Envoyé par DAUDET78 Voir le message
    WMP me lit parfaitement mon fichier AVI (image et son).
    Arf, me suis planté. J'ai déduit un peu trop vite on dirait.
    J'ai essayer de trouver des infos à propos de cette dll vite fait mais je trouve pas grand chose.
    Citation Envoyé par DAUDET78 Voir le message
    C'est un appareil photo Canon SX110
    Hum. Je voulais parler de l'algo d'encodage qui a été utilisé, pas le bousin physique qui l'a fait.
    Citation Envoyé par DAUDET78 Voir le message
    j'ai chargé Xvid .... pas de changement
    Bon ben ça en fait un de moins. Reste plus qu'à essayer la centaine de codecs restants !
    Nan, je déconne. C'est pas conseillé d'installer tout plein de codecs. Ca peut foutre pas mal de boxon. Surtout si on les télécharge via www.01net.com . Enfin je m'égare.

    Citation Envoyé par DAUDET78 Voir le message
    PS: Mon bruit de mer ..... c'est le bon son ! la vidéo, c'est un gamin avec une voiture radiocommandée. Par contre, le son, c'est cycliquement les 5 premières secondes de la vidéo entrecoupées de silence.
    J'avoue que j'ai un peu de mal à comprendre ce qui se passe.
    Je vais chercher un peu plus du côté de cette winmm.dll.

  9. #9
    Membre éprouvé Avatar de DAUDET78
    Homme Profil pro
    retraité
    Inscrit en
    Janvier 2008
    Messages
    635
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 81
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : retraité
    Secteur : Industrie

    Informations forums :
    Inscription : Janvier 2008
    Messages : 635
    Points : 1 165
    Points
    1 165
    Par défaut
    Si tu as un peu de temps à me consacrer (et sans abuser !) , je peux te donner les sources en ZIP qui sont, texto, le code que tu as tiré du programme chinois

  10. #10
    Membre éprouvé
    Inscrit en
    Juin 2006
    Messages
    795
    Détails du profil
    Informations forums :
    Inscription : Juin 2006
    Messages : 795
    Points : 1 270
    Points
    1 270
    Par défaut
    Non merci, ce ne sera pas nécessaire.

    En attendant, tu peux tester avec une autre video (un mpg par exemple).
    Une fois que t'as une video qui marche, tu pourras te mettre à coder ton système de thumbnails.
    Il te restera plus que le problème des codecs.

    Apparemment, ton APN devrait encoder en MPEG.

  11. #11
    Membre éprouvé Avatar de DAUDET78
    Homme Profil pro
    retraité
    Inscrit en
    Janvier 2008
    Messages
    635
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 81
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : retraité
    Secteur : Industrie

    Informations forums :
    Inscription : Janvier 2008
    Messages : 635
    Points : 1 165
    Points
    1 165
    Par défaut
    J'ai transcodé, avec Media Convert Master, ma vidéo d'origine (en AVI) dans les formats MOV , MP4 , MPG , RM et SWF

    J'ai testé les 6 fichiers (sans changer le source), seul le fichier AVI cause aussi mal qu'avant ( et j'ai une erreur RetVal=263 pour les appels depuis la commande "play" pour les autres

    J'ai testé les 6 fichiers (en changeant les AVI du code source par la valeur de l'extension avec une constante Ext$), seul le fichier AVI cause aussi mal qu'avant ( et j'ai une erreur RetVal=263 pour les appels depuis la commande "play")
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    Const Ext$ = "avi" ' pour passer facilement à une autre extension
    Const Fichier$ = "D:\VB6\Rename_Fichier\MVI_1028." ' pour passer facilement à un autre fichier
    ..........
    Private Sub Command1_Click()
    Dim RetVal As Long
    RetVal = mciSendString("close " & Ext$, 0, 0, 0)
    RetVal = mciSendString("open " & Fichier$ & Ext$ & " alias " & Ext$ & " parent " & Picture1.hwnd & " style child", 0, 0, 0) 
    RetVal = mciSendString("play " & Ext$, 0, 0, 0)
    End Sub

  12. #12
    Membre éprouvé
    Inscrit en
    Juin 2006
    Messages
    795
    Détails du profil
    Informations forums :
    Inscription : Juin 2006
    Messages : 795
    Points : 1 270
    Points
    1 270
    Par défaut
    Citation Envoyé par DAUDET78 Voir le message
    J'ai transcodé, avec Media Convert Master, ma vidéo d'origine (en AVI) dans les formats MOV , MP4 , MPG , RM et SWF

    J'ai testé les 6 fichiers (sans changer le source), seul le fichier AVI cause aussi mal qu'avant ( et j'ai une erreur RetVal=263 pour les appels depuis la commande "play" pour les autres

    J'ai testé les 6 fichiers (en changeant les AVI du code source par la valeur de l'extension avec une constante Ext$), seul le fichier AVI cause aussi mal qu'avant ( et j'ai une erreur RetVal=263 pour les appels depuis la commande "play")
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    Const Ext$ = "avi" ' pour passer facilement à une autre extension
    Const Fichier$ = "D:\VB6\Rename_Fichier\MVI_1028." ' pour passer facilement à un autre fichier
    ..........
    Private Sub Command1_Click()
    Dim RetVal As Long
    RetVal = mciSendString("close " & Ext$, 0, 0, 0)
    RetVal = mciSendString("open " & Fichier$ & Ext$ & " alias " & Ext$ & " parent " & Picture1.hwnd & " style child", 0, 0, 0) 
    RetVal = mciSendString("play " & Ext$, 0, 0, 0)
    End Sub
    J'ai pas tout compris.
    Ca veut dire que dans les autres formats ça marche bien mais le problème persiste en AVI ?

    Pour l'erreur qui est retournée, il y a des explications sur MSDN:
    doc mciSendString
    doc sur les erreur retournées

    Tu peux même te faire retourner une description de l'erreur avec mciGetErrorString

  13. #13
    Membre éprouvé Avatar de DAUDET78
    Homme Profil pro
    retraité
    Inscrit en
    Janvier 2008
    Messages
    635
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 81
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : retraité
    Secteur : Industrie

    Informations forums :
    Inscription : Janvier 2008
    Messages : 635
    Points : 1 165
    Points
    1 165
    Par défaut
    Citation Envoyé par Anikinisan Voir le message
    Ca veut dire que dans les autres formats ça marche bien mais le problème persiste en AVI ?
    Aucun fichier ne marche sauf le AVI qui donne un son répétitif coupé de silence

    J'ai introduit le traducteur d'erreur avec mciGetErrorString

    Pour ceux que ça intéresse, voilà le code
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    Private Declare Function mciGetErrorString Lib "winmm.dll" Alias "mciGetErrorStringA" (ByVal dwError As Integer, ByVal lpstrBuffer As String, ByVal uLength As Integer) As Integer
    .......
    Private Function GetMCIErrorString(ByVal ErrorCode As Integer) As String
    ' traduction du code d'erreur en texte
        'create a buffer
        GetMCIErrorString = Space(1024)
        'retrieve the error string
        I% = mciGetErrorString(ErrorCode, GetMCIErrorString, Len(GetMCIErrorString))
        'strip off the trailing spaces
        GetMCIErrorString = "Code =" & Format$(ErrorCode) & " " & Trim(GetMCIErrorString)
    End Function
    .....
    Private Sub Command1_Click()
    Dim RetVal As Long
    RetVal = mciSendString("close " & Ext$, 0, 0, 0)
        If RetVal <> 0 Then MsgBox ("(Phase close) " & GetMCIErrorString(RetVal))
    RetVal = mciSendString("open " & Fichier$ & Ext$ & " alias " & Ext$ & " parent " & Picture1.hwnd & " style child", 0, 0, 0) 'chinois
        If RetVal <> 0 Then MsgBox ("(Phase open) " & GetMCIErrorString(RetVal))
    'RetVal = mciSendString("open D:\VB6\Rename_Fichier\MVI_1028.Ext$ alias Ext$ parent " & Format$(Picture1.hwnd) & " style child", 0, 0, 0) 'moi
    RetVal = mciSendString("play " & Ext$, 0, 0, 0)
        If RetVal <> 0 Then MsgBox ("(Phase play) " & GetMCIErrorString(RetVal))
    End Sub
    PS : Le code 263 = Le périphérique spécifié n'est pas ouvert ou n'est pas reconnu par MCI.

  14. #14
    Modérateur
    Avatar de ProgElecT
    Homme Profil pro
    Retraité
    Inscrit en
    Décembre 2004
    Messages
    6 077
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 68
    Localisation : France, Haute Savoie (Rhône Alpes)

    Informations professionnelles :
    Activité : Retraité
    Secteur : Communication - Médias

    Informations forums :
    Inscription : Décembre 2004
    Messages : 6 077
    Points : 17 165
    Points
    17 165
    Par défaut
    Salut

    Pour information, dans un de mes programmes, j'utilise le contrôle MMControl (MCI32.oca, Contrôle Microsoft Multimedia 6.0), pour certaine vidéos *.AVI, pour que cela fonctionne, je suis amené à définir le DeviceType = "mpegvideo" et non pas "AVIVideo", comme quoi le type que l'on à dans le nom du fichier n'est pas forcement l’indicateur parfait pour l'API winmm.dll

    Citation Envoyé par DAUDET78 1°message
    Je désire, si il y a une combine possible, visualiser une des images de ma vidéo.
    Merci d'avance
    un inconvénient est que cela t'obliges a charger l’entièreté du fichier et que la première image n'est pas forcement la plus significative de la vidéo (démarrage de la vidéo en fondu ....) ce qui fait que tu ne sauras jamais quelle image récupérer.

    Résumons, essais la lecture de tes *.AVI avec un MMControl, dans mes sources sur DVP, tu peux charger un petit bout de programme qui fait cela, avec la possibilité de faire une copie dans le presse papier system.

    le lien pour Copier dans presse papier les images d'un AVI (ou autres vidéos)

    Bonne continuation.
    Soyez sympa, pensez -y
    Balises[CODE]...[/CODE]
    Balises[CODE=NomDuLangage]...[/CODE] quand vous mettez du code d'un autre langage que celui du forum ou vous postez.
    Balises[C]...[/C] code intégré dans une phrase.
    Balises[C=NomDuLangage]...[/C] code intégré dans une phrase quand vous mettez du code d'un autre langage que celui du forum ou vous postez.
    Le bouton en fin de discussion, quand vous avez obtenu l'aide attendue.
    ......... et pourquoi pas, pour remercier, un pour celui/ceux qui vous ont dépannés.
    👉 → → Ma page perso sur DVP ← ← 👈

  15. #15
    Membre éprouvé Avatar de DAUDET78
    Homme Profil pro
    retraité
    Inscrit en
    Janvier 2008
    Messages
    635
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 81
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : retraité
    Secteur : Industrie

    Informations forums :
    Inscription : Janvier 2008
    Messages : 635
    Points : 1 165
    Points
    1 165
    Par défaut
    Citation Envoyé par ProgElecT Voir le message
    un inconvénient est que cela t'obliges a charger l’entièreté du fichier et que la première image n'est pas forcement la plus significative de la vidéo
    L'idée de départ était de pouvoir afficher une vignette comme le fait l'explorateur de XP en mode pellicule .....

    Mais cela me semble un peu plus délicat. Je dispose actuellement de 2 programmes VB6 :
    • Le chinois ( grace à un lien de Anikinisan)
    • Le programme ProgElecT ( CopImageAVI.zip )

    Je dispose de 3 fichiers AVI :
    • C:\WINDOWS\clock.avi disponible sur XP
    • simonmarche.avi provenant du Canon (vieux de plus de 5 ans) de mon fils
    • MVI_10288.avi provenant de mon Canon SX110


    Et oh surprise ! les deux premiers passent bien sur les deux programmes et le troisième (le seul que j’avais testé jusqu’à maintenant) ne passe pas sur aucun programme ( pas de vidéo et son en boucle entrecoupé de silence)

    Si maintenant un fichier AVI passe et pas son voisin, c'est indémerdable ..

    A moins que quelqu'un ait une idée géniale ???? Je crois que je vais laisser tomber l'idée de la vignette extraite de la vidéo. Par contre, j'ai beaucoup appris et je remercie les intervenants pour leur aide et leur patience !

Discussions similaires

  1. Saisir une image à partir d'une photo ou d'une vidéo
    Par lohengrin56 dans le forum Flash/Flex
    Réponses: 0
    Dernier message: 07/07/2009, 16h17
  2. Réponses: 7
    Dernier message: 07/07/2008, 11h18
  3. Créer une image à partir d'une URL ?
    Par DrySs dans le forum Langage
    Réponses: 1
    Dernier message: 26/01/2006, 09h39
  4. Réponses: 1
    Dernier message: 19/01/2006, 19h36
  5. afficher une image à partir d'une base de données access
    Par zidenne dans le forum Bases de données
    Réponses: 2
    Dernier message: 08/11/2005, 11h41

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo