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

WinDev Discussion :

Programmer un codec video perso ? Possible ? [WD21]


Sujet :

WinDev

  1. #1
    Membre éclairé Avatar de LeonCosnyd
    Profil pro
    Inscrit en
    Novembre 2007
    Messages
    439
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2007
    Messages : 439
    Par défaut Programmer un codec video perso ? Possible ?
    Bonjour,

    Pour une situation très particulière j'aurais besoin de protéger des vidéos dont j'ai la propriété. Le but étant qu'aucune personne externe ne puisse être en mesure de lire la vidéo.
    Pour cela mon chef m'a suggéré de regarder du coté des codecs vidéos... En gros il souhaiterait savoir s'il est possible de créer un codec vidéo "maison" avec lequel on pourrait encoder les vidéos.

    Une fois ces vidéos encoder avec notre "propre" codec, la lecture ne serait possible que sur les ordinateurs sur lesquels est installé ce fameux codec...

    Par contre je n'ai aucune connaissances, ni la moindre idée de ce qu'il faut faire pour créer un codec ! Même après une recherche Google je ne suis pas plus avancé....

    Vos avis ? Si vous avez une idée pour le codec ou d'autres idées pour "sécuriser" les vidéos.

  2. #2
    Membre chevronné
    Avatar de Narwe
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Février 2013
    Messages
    258
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Mayenne (Pays de la Loire)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Février 2013
    Messages : 258
    Par défaut
    Pas de piste pour le codec mais pour verrouiller la lecture de la vidéo, n'était-il pas possible de simplement crypter le fichier ? éventuellement ajouter un flag sur 8 octets (8 est une valeur arbitraire) au début du fichier pour savoir que c'est bien un fichier vidéo crypté de votre société.

    Par contre, il ne sera pas possible de lire la vidéo directement sur VLC ou autre mais il faudra par un programme qui vous sera propre qui lira( ou lancera un player) après avoir décrypté le fichier (et qui supprimera la version "en clair" du fichier à la fin de la lecture).

  3. #3
    Expert confirmé
    Avatar de frenchsting
    Homme Profil pro
    multitâches-multifonctions
    Inscrit en
    Juin 2003
    Messages
    5 577
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Meurthe et Moselle (Lorraine)

    Informations professionnelles :
    Activité : multitâches-multifonctions
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juin 2003
    Messages : 5 577
    Par défaut
    Une idée serait de crypter le fichier complet.

    Le programme charge la vidéo en mémoire, décrypte le fichier et "l'envoie" au lecteur (intégré à ton programme).

  4. #4
    Membre éclairé Avatar de LeonCosnyd
    Profil pro
    Inscrit en
    Novembre 2007
    Messages
    439
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2007
    Messages : 439
    Par défaut
    C'est effectivement la solution à laquelle je pensais en secours.

    Je voulais m'assurer de ne rater aucune option avant de me lancer.

    Merci à vous.

  5. #5
    Membre émérite
    Profil pro
    Inscrit en
    Novembre 2007
    Messages
    564
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2007
    Messages : 564
    Par défaut
    Le programme charge la vidéo en mémoire, décrypte le fichier et "l'envoie" au lecteur (intégré à ton programme).
    En ce qui me concerne, j'ai des vidéos de 10 Go, je ne pense pas que votre solution soit viable pour décrypter tout un fichier, à la rigueur le header.

    Pour ce qui est de créer son propre codec, c'est loin d'être simple.
    Perso j'utilise les codecs CCCP avec mon propre lecteur vidéo.
    Mais c'est toujours galère que de demander à l'utilisateur d'installer un nouveau codec.

    Je pense que le mieux serait de vous orienter vers un codec déjà installé, de type mp4 ou avi/divx, quitte à modifier le header a la volée pour qu'il puisse être lu sans problème (mais alors se pose le problème des droits en écriture).

  6. #6
    Expert confirmé
    Avatar de jurassic pork
    Homme Profil pro
    Bidouilleur
    Inscrit en
    Décembre 2008
    Messages
    4 246
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Bidouilleur
    Secteur : Industrie

    Informations forums :
    Inscription : Décembre 2008
    Messages : 4 246
    Par défaut
    hello,
    avec vlc tu peux encoder une vidéo en utilisant l'algorithme CSA dans un container video de type ts :
    The Common Scrambling Algorithm (or CSA) is the encryption algorithm used in the DVB digital television broadcasting for encrypting video streams.
    voici un exemple d'encodage d'une vidéo mpeg2 qu'on encode en mpeg4 avec cryptage avec clé de cryptage ABBBBBBBBBBBBBBB
    C:\Program Files (x86)\VideoLAN\VLC>vlc -I dummy -vvv f:\temp\test.mpg --sout="#transcode{vcodec=h264,width=352,height=288,vb=750960
    ,acodec=mp3,ab=32,channels=2,samplerate=44100}:std{access=file,mux=ts{csa-ck=ABBBBBBBBBBBBBBB},dst=f:\temp\streamEnc.ts}"
    pour lire cette vidéo :
    vlc -I dummy -vvv f:\temp\streamenc.ts --ts-csa-ck=ABBBBBBBBBBBBBBB
    tant qu'on ne met pas la bonne clé on n'arrive pas à lire la vidéo.

    Pour lire ce type de vidéo dans windev avec ma classe clibvlc :

    Nom : clibvlc_windev-1.jpg
Affichages : 1261
Taille : 81,3 Ko

    avec les options :
    Nom : clibvlc_windev-2.jpg
Affichages : 1131
Taille : 26,1 Ko

    testé avec :
    Version de cLibVLC : 0.4
    Version de VLC : 2.2.4 Weatherwax
    Il y a un temps au début de la lecture de la vidéo où l'image n'apparaît pas alors qu'il y a du son, probablement une histoire de cache mais je ne suis pas assez à l'aise avec VLC pour maîtriser ce type de paramètre
    Ami calmant, J.P

  7. #7
    Expert confirmé
    Avatar de jurassic pork
    Homme Profil pro
    Bidouilleur
    Inscrit en
    Décembre 2008
    Messages
    4 246
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Bidouilleur
    Secteur : Industrie

    Informations forums :
    Inscription : Décembre 2008
    Messages : 4 246
    Par défaut
    hello,
    Citation Envoyé par jurassic pork Voir le message
    Il y a un temps au début de la lecture de la vidéo où l'image n'apparaît pas alors qu'il y a du son, probablement une histoire de cache mais je ne suis pas assez à l'aise avec VLC pour maîtriser ce type de paramètre
    En fait mon problème venait du transcodage en mp4 par vlc.
    Sans changer le format de la vidéo originale comme ceci :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    vlc -I dummy -vvv f:\temp\test.mpg --sout="#transcode:std{access=file,mux=ts{csa-ck=ABBBBBBBBBBBBBBB},dst=f:\temp\testCryptOrig.ts}"
    ou en transcodant en mpeg2 comme ceci :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    vlc -I dummy -vvv f:\temp\test.mpg --sout="#transcode{vcodec=mp2v,acodec=mp2a,fps=25}:std{access=file,mux=ts{csa-ck=ABBBBBBBBBBBBBBB},dst=f:\temp\testCryptMpeg2.ts}"
    je n'ai plus ce problème.

    Ami calmant, J.P

  8. #8
    Membre éclairé Avatar de LeonCosnyd
    Profil pro
    Inscrit en
    Novembre 2007
    Messages
    439
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2007
    Messages : 439
    Par défaut
    Re-bonjour à tous ! désolé pour ce saut temporel mais j'ai dû mettre en standby certains dossiers !

    Merci pour vos réponses. Je vais regardé attentivement la solution proposée par Jurrasic Pork ! VLC pourrait convenir !

    Il me reste a faire des tests pour jauger la rapidité en exécution.

  9. #9
    Membre éclairé Avatar de LeonCosnyd
    Profil pro
    Inscrit en
    Novembre 2007
    Messages
    439
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2007
    Messages : 439
    Par défaut
    Bon premier retour pas très concluant !

    J'ai essayé de convertir l'une de mes vidéos en ligne de commande pour tester :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    vlc -I dummy -vvv d:\temp\test.mp4 --sout="#transcode:std{access=file,mux=ts{csa-ck=ABBBBBBBBBBBBBBB},dst=d:\temp\testCryptOrig.ts}"
    Lors de ma commande un fichier est créé mais reste à 0octet. Dans la console DOS aucune erreur n'apparait.
    J'utilise VLC 2.2.4 Weatherwax.

    La vidéo testé est une vidéo MP4.

    auriez-vous une idée ?

  10. #10
    Membre expérimenté
    Inscrit en
    Octobre 2013
    Messages
    274
    Détails du profil
    Informations forums :
    Inscription : Octobre 2013
    Messages : 274
    Par défaut
    Citation Envoyé par LeonCosnyd Voir le message
    Bon premier retour pas très concluant !

    J'ai essayé de convertir l'une de mes vidéos en ligne de commande pour tester :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    vlc -I dummy -vvv d:\temp\test.mp4 --sout="#transcode:std{access=file,mux=ts{csa-ck=ABBBBBBBBBBBBBBB},dst=d:\temp\testCryptOrig.ts}"
    Lors de ma commande un fichier est créé mais reste à 0octet. Dans la console DOS aucune erreur n'apparait.
    J'utilise VLC 2.2.4 Weatherwax.

    La vidéo testé est une vidéo MP4.

    auriez-vous une idée ?
    bonjour
    une autre piste à explorer peut etre : ffmpeg ?

  11. #11
    Expert confirmé
    Avatar de jurassic pork
    Homme Profil pro
    Bidouilleur
    Inscrit en
    Décembre 2008
    Messages
    4 246
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Bidouilleur
    Secteur : Industrie

    Informations forums :
    Inscription : Décembre 2008
    Messages : 4 246
    Par défaut
    hello,
    c'est bizarre, as-tu une fenêtre comme celle à fond noir qui s'ouvre quand tu lances la commande dans une fenêtre console (chez moi à fond bleu) .

    Nom : vlc_crypt.png
Affichages : 1046
Taille : 75,2 Ko

    vidéo mp4 DVB-T TNT HD

    Ami calmant, J.P

  12. #12
    Membre éclairé Avatar de LeonCosnyd
    Profil pro
    Inscrit en
    Novembre 2007
    Messages
    439
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2007
    Messages : 439
    Par défaut
    J'avais effectivement cette fenetre avant de désinstaller/réinstaller VLC.

    En fait je me suis rendu compte que maintenant la fenetre de VLC ne s'ouvre plus mais qu'il travaille en tache de fond (je le vois dans les processus). Le fichier est créé au départ à 0Ko. Je l'ai laissé travaillé (je l'ai oublié en fait ) toute l'après-midi hier. Je me suis rappelé de lui quand Windows m'a alerté qu'il ne me restait plus de place sur mon disque dur ! VLC a généré un fichier de plus de 960Go (mon espace libre en gros) et il aurait continué si je ne l'avais pas arrêté.

    Je pense testé sur une autre machine.

  13. #13
    Membre éclairé Avatar de LeonCosnyd
    Profil pro
    Inscrit en
    Novembre 2007
    Messages
    439
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2007
    Messages : 439
    Par défaut
    Bonjour à tous,

    Je passe cette discussion car j'ai réussi à peu près réussi à faire ce que je souhaitais.

    Pour cela j'ai adopté la solution de Jurassic Pork (chiffrer/déchiffrer avec VLC). J'ai eu des soucis à chiffre mes vidéos en ligne de commande. Après tests je me suis rendu compte que j'avais deux versions de l’exécutable VLC : l'un dans le dossier Program Files, l'autre dans Program Files(x86). La commande pour chiffrer les vidéos ne marche qu'avec le VLC se trouvant dans le dossier Program Files (x86).

    Encore merci à vous tous

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Problème codec video sous vista (avifile)
    Par ant12oine dans le forum Images
    Réponses: 0
    Dernier message: 04/06/2009, 16h05
  2. Lecture avec un codec video fait maison
    Par battosai-mt67 dans le forum OpenCV
    Réponses: 0
    Dernier message: 20/04/2009, 10h49
  3. Codecs Video| Desynchro Video/Son - que faire?
    Par Aramis dans le forum Windows XP
    Réponses: 6
    Dernier message: 11/09/2008, 15h49
  4. Ouvrir un programme en background, est-ce possible?
    Par Killua69 dans le forum Windows XP
    Réponses: 1
    Dernier message: 03/12/2007, 09h34
  5. programmer des jeux videos
    Par torNAdE dans le forum Développement 2D, 3D et Jeux
    Réponses: 9
    Dernier message: 13/06/2006, 09h45

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