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

  1. #1
    Membre à l'essai
    Récupérer la 3eme seconde d'une vidéo en Bitmap
    Bonjour à tous !

    Ce que je vais vous demandez peut être un p'tit peu compliqué, mais je tente quand même !

    J'ai un jeu vidéo dans lequel il est possible de sauvegarder une action du jeu récente dans une vidéo .mp4.

    Entre la 1er seconde de la vidéo et la 4ieme, il y a du texte mais attention il apparaît uniquement à la 1er seconde de la vidéo, pas à 0:00.

    Donc, pour l'instant mon logiciel récupère le chemin d'accès de toutes les vidéos dans une liste (j'en est plus de 900 dans mon cas) avec leur chemin d'accès.

    Donc ma question est : Comment faire pour avoir la 3eme seconde de ma vidéo en Bitmap pour après pouvoir l'étudier.

    Code :Sélectionner tout -Visualiser dans une fenêtre à part
    1
    2
    3
    4
          foreach (string file in filePaths)
                    {
     
                    }


    Merci

  2. #2
    Membre expert
    Hello,
    j'ai trouvé la solution en 3 secondes sur google avec la recherche "c# get bitmap from video", il est conseillé d'utiliser le Media Composition en UWP
    https://docs.microsoft.com/en-us/uwp...ew=winrt-19041

    Il doit y avoir d'autre bibliothèque pour les autres technos

  3. #3
    Membre expérimenté
    Bonjour,

    Dès que ça concerne la vidéo, la plupart du temps il te faudra passer par une technologie tierce. Et pour faire ce que tu veux faire, ffmpeg est un très bon utilitaire. Il existe des wrappers pour l'utiliser en C# mais tu peux aussi directement l’appeler en ligne de commande (toujours en C#). D'ailleurs tu pourrais même créer un fichier .bat qui te ferait ça en un rien de temps, avec de meilleurs performances. Il te suffit de télécharger ffmpeg, de le mettre dans le dossier qui contient tes vidéos, et d'écrire ça dans le .bat

    Code :Sélectionner tout -Visualiser dans une fenêtre à part
    for /f "tokens=1 delims=." %%a in ('dir /B *.mp4') do ffmpeg -ss 3 -itsoffset -1 -i "%%a.mp4" -vcodec bmp -vframes 1 -an -f rawvideo -s 1920x1080 "%%a.bmp"


    Tu le lances et voilà. Tu as un tas d'arguments a ta disposition si jamais tu veux changer quelques chose.

    Ensuite tu peux écrire ton logiciel qui étudiera les screenshots.

    Si jamais tu n'as pas trop envie de partir là dessus ou que tu veux avoir un plus gros contrôle, télécharge un wrapper (ou toute autre technologie tierce) et ça fera tout aussi bien l'affaire.

    PS : petite question indiscrète, ça ne serait pas Overwatch ce jeu ?
    Keep calm and debug it

  4. #4
    Membre à l'essai
    Si en effet, le jeu est bien Overwatch ^^
    Je crée un logiciel qui permet de trier, uploader, rechercher ses temps forts par héro et tous.
    J'en est plus de 900 donc pour moi ce sera très utile :p

    J'ai déjà réussi cette étape, j'en suis à un point où il faut comparer des images.. j'ai une petite idée de comment faire mais je regarde d'abord si il n'y a pas un truc déjà fait

    Voilà le lien du poste sur quesque je dois faire maintenant https://stackoverflow.com/questions/...d-white-pixels


###raw>template_hook.ano_emploi###