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

Contribuez Discussion :

Classe cLibVLC (VideoLAN) pour windev


Sujet :

Contribuez

  1. #1
    Expert éminent
    Avatar de jurassic pork
    Homme Profil pro
    Bidouilleur
    Inscrit en
    Décembre 2008
    Messages
    3 947
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Bidouilleur
    Secteur : Industrie

    Informations forums :
    Inscription : Décembre 2008
    Messages : 3 947
    Points : 9 275
    Points
    9 275
    Par défaut Classe cLibVLC (VideoLAN) pour windev
    Bonjour,
    Cette classe implémente les API de contrôle par la dll libvlc.dll pour les versions 1.1.x de Vlc Player.
    Elle est basée sur le travail de Tanguy qui avait créé une classe cVLC pour des versions antérieures de vlc (0.8 , 1.0).
    Pour l'instant elle est dans une version bêta et ne prétend pas couvrir toutes les fonctionnalités de la libVLC. Cependant elle gère quand même les événements vlc et les messages de debug. Je ne garantis pas toutes les méthodes de la classe et il doit surement y avoir des bugs. Si quelqu'un a du temps il peut participer à améliorer cette classe car je ne peux pas vous assurer que je ferais des mises à jour.

    Il suffit d'installer VLC (version 1.1.x) sur votre poste, la classe trouve le chemin de VLC automatiquement grâce à la base des registres.

    La classe se trouve dans le fichier zip joint.
    Un projet exemple en windev 9 (pour compatibilité avec version windev < 16) est disponible sur le site de dépôt en ligne PC SOFT pour donner une idée de l'utilisation de la classe). Dans cet exemple on peut :
    - lire un fichier vidéo (bouton lire)
    - afficher la vidéo d'une webcam (bouton webcam)
    - afficher une chaîne TNT si on possède un tuner TNT DVB-T (en double cliquant sur la chaîne dans la liste des chaînes). Le projet possède une base de données pour stocker les chaînes. Il faudra pour chaque chaîne rentrer sa fréquence et son numéro de programme.
    - on pourra aussi enregistrer en transcodant ce qui est affiché en vidéo (bouton options).
    Dans l'exemple on enregistre en format wmv en taille 352x288 dans le fichier
    c:\temp\out.wmv. Il faut cocher la case options actives pour enregistrer le média que l'on va afficher.
    On peut aussi cocher la case Mode Debug qui affichera une fenêtre trace avec tous les messages de debug de vlc.

    voici l'aspect de la fenêtre principale de ce projet :



    Ayez aussi à l'esprit que VIDEOLAN est un projet GPL. Donc si vous voulez utiliser VIDEOLAN dans un projet commercial il y a des contraintes.

    Ami calmant, J.P
    Fichiers attachés Fichiers attachés
    Jurassic computer : Sinclair ZX81 - Zilog Z80A à 3,25 MHz - RAM 1 Ko - ROM 8 Ko

  2. #2
    Expert éminent
    Avatar de jurassic pork
    Homme Profil pro
    Bidouilleur
    Inscrit en
    Décembre 2008
    Messages
    3 947
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Bidouilleur
    Secteur : Industrie

    Informations forums :
    Inscription : Décembre 2008
    Messages : 3 947
    Points : 9 275
    Points
    9 275
    Par défaut
    bonjour,
    voici une mise à jour de la classe cLibVLC :
    // MODIFICATIONS :
    // version 0.2 Septembre 2012
    // Adaptation à la version 2.0.x de VLC
    // Attention le debug ne fonctionne plus, pour debugger vlc il faut utiliser les options de logging dans le init de la classe en attendant mieux
    // Rajout constante nversion : numéro de version de la classe
    // Rajout procédure TakeSnapshot : copie Ecran dans fichier
    // Rajout procédure SuspendPlay : interrompt une lecture sans libérer le média et renvoi le temps.
    // Rajout procédure SetLogo : incrustation de logo
    // Rajout procédure SetTexte : incrustation de texte



    le projet exemple en windev 9 est disponible ici sur le site de dépôt en ligne PC SOFT pour donner une idée de l'utilisation de la classe). Nouveautés de l'exemple :
    - incruster une image et un texte dans la vidéo (bouton incrust). Dans l'exemple rectangle vert + texte "incrustation".
    - faire une copie d'écran de la vidéo dans un fichier image (bouton Copie Ecran). Dans l'exemple fichier c:\temp\out.png en format 352x288.


    Ami calmant, J.P ;-)
    Fichiers attachés Fichiers attachés
    Jurassic computer : Sinclair ZX81 - Zilog Z80A à 3,25 MHz - RAM 1 Ko - ROM 8 Ko

  3. #3
    Membre du Club
    Profil pro
    Inscrit en
    Avril 2008
    Messages
    36
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2008
    Messages : 36
    Points : 48
    Points
    48
    Par défaut WIndev et classe vlc avec vlc 2.1.3
    J'essaye d'utiliser cette classe avec vlc qui est installé et en version 2.1.3 . Pouvez vous me dire si c'est compatible. J'utilise l'Exemple du zip mais rien ne se passe.
    D'autre part quand vous dite que le debug ne marche pas, je ne comprends pas bien, cela concerne t il le debug de l'appli Windev ... ?

    Merci
    Alain

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

    Informations professionnelles :
    Activité : Bidouilleur
    Secteur : Industrie

    Informations forums :
    Inscription : Décembre 2008
    Messages : 3 947
    Points : 9 275
    Points
    9 275
    Par défaut
    bonjour,
    merci de ne pas poster ici des questions : le forum est fait pour ça . Je ne répondrais aux questions que si elles sont posées en forum.
    Mais pour que ce message soit utile ici, je profite de l'occasion pour mettre en pièce jointe une nouvelle version de la classe clibvlc car les fonctions webcam tnt ne fonctionnaient pas avec la dernière version de vlc, la 2.1.3.
    // Classe de controle de VLC v2.1.x (VideoLAN) par LibVLC
    // Version v0.1 - Juillet 2011 - Jurassic Pork - Classe initiale pour VLC 1.1.x
    // Version v0.2 - Septembre 2012 - Jurassic Pork - Classe pour VLC 2.0.x
    // Version v0.3 - Mai 2014 - Jurassic Pork - Classe pour VLC 2.1.x
    // ==================================================
    // version 0.3 Mai 2014
    // Ajout des Méthodes AddLocation et SetLogFile pour compatibilité VLC version 2.1.x
    En pièce jointe la nouvelle classe ainsi que la fenêtre de l'exemple modifiée pour tenir compte de la nouvelle classe.

    Ami calmant, J.P
    Fichiers attachés Fichiers attachés
    Jurassic computer : Sinclair ZX81 - Zilog Z80A à 3,25 MHz - RAM 1 Ko - ROM 8 Ko

  5. #5
    Membre du Club
    Profil pro
    Inscrit en
    Avril 2008
    Messages
    36
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2008
    Messages : 36
    Points : 48
    Points
    48
    Par défaut Nouvelle Classe et dernière version de VLC choix du device
    Est ce moi qui ne la trouve pas ou n'il y a t il pas de methode pour lister les devices (par exemple pour remplir une combo avec les caméras disponible).
    Je regarde dans la doc de VLC mais ce n'est pas évident de s'y retrouver...
    Merci de me conseiller si quelqu'un a déja utiliser un tel code

  6. #6
    Membre actif
    Inscrit en
    Octobre 2013
    Messages
    274
    Détails du profil
    Informations forums :
    Inscription : Octobre 2013
    Messages : 274
    Points : 248
    Points
    248
    Par défaut
    Citation Envoyé par jurassic pork Voir le message
    bonjour,
    merci de ne pas poster ici des questions : le forum est fait pour ça . Je ne répondrais aux questions que si elles sont posées en forum.
    Mais pour que ce message soit utile ici, je profite de l'occasion pour mettre en pièce jointe une nouvelle version de la classe clibvlc car les fonctions webcam tnt ne fonctionnaient pas avec la dernière version de vlc, la 2.1.3.


    En pièce jointe la nouvelle classe ainsi que la fenêtre de l'exemple modifiée pour tenir compte de la nouvelle classe.

    Ami calmant, J.P
    bonjour
    j'essaie de faire fonctionner ton exemple
    mais j'ai plein d'erreur car il manque pas mal d'éléments.
    serait il possible d'avoir le projet exemple?
    merci

    par ex:
    Le champ 'LST_Chaines' n'a pas pu s'initialiser, car il a rencontré l'erreur HyperFileSQL suivante :
    =============================
    L'objet 'ConfChaines' n'a pas été trouvé.
    =============================

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

    Informations professionnelles :
    Activité : Bidouilleur
    Secteur : Industrie

    Informations forums :
    Inscription : Décembre 2008
    Messages : 3 947
    Points : 9 275
    Points
    9 275
    Par défaut
    Hello,
    Rappel concernant le forum Contribuez :
    Chers membres du club,

    Ce post a pour but de vous expliquer l'utilité de ce forum afin d'en faire bon usage. Vous trouverez ci-dessous à quoi il sert et à quoi il ne doit pas servir.

    Le forum Contribuez sert à poster :
    les propositions de FAQ, corrections de FAQ, ou propositions d’améliorations de FAQ sur le site du club Developpez.com ;
    les propositions de publications d'articles sur Developpez.com ;
    les projets de traductions à héberger sur Developpez.com ;
    les discussions sur les projets de publication dans l'application Téléchargements comme les outils, les applications et les codes sources de Developpez.com.


    Par contre, le forum Contribuez ne sert pas et ne doit pas servir :
    à poster des discussions associées aux articles publiés ;
    à poster des actualités (publiées) ;
    à poster des évènements ; pour vos évènements postez sur le calendrier ;
    à poster des questions techniques.


    Merci pour vos contributions et bonne lecture sur nos forums
    Merci aux modérateurs de bien vouloir transférer dans le forum adéquate ou de faire disparaître tout message ne correspondant pas à ces critères.

    Ami calmant, J.P
    Jurassic computer : Sinclair ZX81 - Zilog Z80A à 3,25 MHz - RAM 1 Ko - ROM 8 Ko

  8. #8
    Expert éminent
    Avatar de jurassic pork
    Homme Profil pro
    Bidouilleur
    Inscrit en
    Décembre 2008
    Messages
    3 947
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Bidouilleur
    Secteur : Industrie

    Informations forums :
    Inscription : Décembre 2008
    Messages : 3 947
    Points : 9 275
    Points
    9 275
    Par défaut Nouvelle version clibvlc 0.4
    hello,
    voici une nouvelle version de la classe clibvlc, compatible avec les versions 2.1.x VLC. Je l'ai testé avec la version 2.1.5 :
    Classe de controle de VLC v2.1.x (VideoLAN) par LibVLC
    // Version v0.1 - Juillet 2011 - Jurassic Pork - Classe initiale pour VLC 1.1.x
    // Version v0.2 - Septembre 2012 - Jurassic Pork - Classe pour VLC 2.0.x
    // Version v0.3 - Mai 2014 - Jurassic Pork - Classe pour VLC 2.1.x
    // Version v0.4 - Juillet 2014 - - Jurassic Pork - Améliorations
    //
    // Info: basée sur le travail de Tanguy Pruvot http://tanguy.ath.cx/
    // Doc LibVLC: http://www.videolan.org/developers/v...p__libvlc.html
    // Licence:
    //
    // Permission to use, copy, modify, and/or distribute this software for any purpose
    // with or without fee is hereby granted, provided that the above copyright notice
    // and this permission notice appear in all copies.
    //
    // THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH
    // REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND
    // FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT, INDIRECT,
    // OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE,
    // DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS
    // ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.

    // MODIFICATIONS :
    // version 0.2 Septembre 2012
    // Adaptation à la version 2.0.x de VLC
    // Attention le debug ne fonctionne plus, pour debugger vlc il faut utiliser les options de logging
    // dans le init de la classe en attendant mieux
    // Rajout constante nversion : numéro de version de la classe
    // Rajout procédure TakeSnapshot : copie Ecran dans fichier
    // Rajout procédure SuspendPlay : interrompt une lecture sans libérer le média et renvoi le temps.
    // Rajout procédure SetLogo : incrustation de logo
    // Rajout procédure SetTexte : incrustation de texte
    // ==================================================
    // version 0.3 Mai 2014
    // Ajout des Méthodes AddLocation et SetLogFile pour compatibilité version 2.1.x
    // version 0.4 Juillet 2014
    // Conversion en UTF8 du chemin de fichier dans AddTarget
    // Nouvelle méthode UnSetLogFile
    // typage des paramètres des méthodes de la classe
    En pièce jointe un exemple en WD12 avec la nouvelle version de la classe à l'intérieur.

    Pour toute question ou remarque prière d'utiliser le forum principal windev et pas l'espace contribuez.

    Ami calmant J.P
    Fichiers attachés Fichiers attachés
    Jurassic computer : Sinclair ZX81 - Zilog Z80A à 3,25 MHz - RAM 1 Ko - ROM 8 Ko

  9. #9
    Futur Membre du Club
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Août 2013
    Messages
    5
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Cameroun

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Finance

    Informations forums :
    Inscription : Août 2013
    Messages : 5
    Points : 7
    Points
    7
    Par défaut Programmation d'une Caméra IP
    Bonjour,
    J'ai une Caméra de marque chinoise; Je vois l'exemple que vous avez mis en place , mais ça ne marche. Puis je SVP, avoir les étapes à suivre(quel activex) pour pouvoir faire fonctionner une Caméra sous Windev.
    Merci

  10. #10
    Membre du Club
    Profil pro
    Inscrit en
    Avril 2008
    Messages
    36
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2008
    Messages : 36
    Points : 48
    Points
    48
    Par défaut
    Bonjour,
    J'ai mis en pause ce projet non prioritaire, mais après quelques recherches ce matin, voila où j'en étais. J'ai arrêté de vouloir utiliser cLibVLC et utilise VirtualDub que je pilote directement avec des événement Windows en Postant des messages ou en invoquant des méthodes de la DLL. Ceci n'implique en rien que l'utilisation de CLibVLC pose de gros problèmes, c'est juste qu'à l'époque j'ai pu rapidement mettre en œuvre une maquette utilisant Vdub pour les capture et de WindowMedia Player(ActiveX) pour les relecture... Désolé de ne pouvoir t'aider.. Bon courage

  11. #11
    Futur Membre du Club
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Août 2013
    Messages
    5
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Cameroun

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Finance

    Informations forums :
    Inscription : Août 2013
    Messages : 5
    Points : 7
    Points
    7
    Par défaut
    Bonjour,
    Je ne crois pas que ce soit les classes le problème, mais les étapes de mise en place pour savoir quand ça ne marche pas et mieux comprendre.
    Décomposé la classe serait un long processus.
    BAV

  12. #12
    Expert éminent
    Avatar de jurassic pork
    Homme Profil pro
    Bidouilleur
    Inscrit en
    Décembre 2008
    Messages
    3 947
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Bidouilleur
    Secteur : Industrie

    Informations forums :
    Inscription : Décembre 2008
    Messages : 3 947
    Points : 9 275
    Points
    9 275
    Par défaut Test de la classe avec une version 3 de VLC
    Hello,
    Je viens de faire un test avec la dernière version de vlc ( 3.0.16 ) la classe fonctionne toujours ! La dernière version de la classe est la v0.4 disponible dans le projet de démo téléchargeable dans un message précédent.
    Ne pas oublier qu'il faut que vlc soit installer sur l'ordinateur où l'on utilise la classe et dans la version qui correspond au projet windev (32 bits ou 64 bits).
    Par contre dans le projet de démo l'enregistrement en wmv n'a plus l'air de fonctionner : la remplacer par un enregistrement en mp4. exemple :
    :sout=#duplicate{dst=display,dst="transcode{vcodec=h264,vb=1500,fps=25,scale=Auto,acodec=mp4a,ab=48,channels=2,samplerate=44100}:std{access=file,mux=mp4,dst=d:\temp\test.mp4}"

    voici une copie d'écran de la fenêtre principale :

    Nom : Exemple_clibvlc_wd.JPG
Affichages : 820
Taille : 76,4 Ko

    Ami calmant, J.P

    Jurassic computer : Sinclair ZX81 - Zilog Z80A à 3,25 MHz - RAM 1 Ko - ROM 8 Ko

  13. #13
    Expert éminent
    Avatar de jurassic pork
    Homme Profil pro
    Bidouilleur
    Inscrit en
    Décembre 2008
    Messages
    3 947
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Bidouilleur
    Secteur : Industrie

    Informations forums :
    Inscription : Décembre 2008
    Messages : 3 947
    Points : 9 275
    Points
    9 275
    Par défaut
    hello,
    voici une nouvelle version de la classe clibvlc. Comme amélioration principale, c'est la possibilité de l'utiliser en 64 bits. Elle est accompagnée d'un projet de démo Windev 16 qui est un lecteur Vidéo.
    // Classe de controle de VLC v3.0.x (VideoLAN) par LibVLC
    // Version v0.1 - Juillet 2011 - Jurassic Pork - Classe initiale pour VLC 1.1.x
    // Version v0.2 - Septembre 2012 - Jurassic Pork - Classe pour VLC 2.0.x
    // Version v0.3 - Mai 2014 - Jurassic Pork - Classe pour VLC 2.1.x
    // Version v0.4 - Juillet 2014 - Jurassic Pork - Améliorations
    // Version v0.5 - Octobre 2021 - Jurassic Pork - Adaptation pour version 64 bits
    //
    Nom : WD_clibvlc.jpg
Affichages : 710
Taille : 75,9 Ko

    Voici les fonctionnalités du lecteur vidéo :
    1 Le bouton ... permet de choisir le fichier vidéo à lire.
    2 Le bouton Lire permet de lancer la lecture du fichier vidéo choisi.
    3 Le bouton TimeGet permet de visualiser dans une fenêtre trace, la position en temps de la vidéo
    4 Le bouton Webcam permet d'afficher la vidéo de la première Webcam de l'ordinateur.
    5 Le bouton VLC permet de lancer l'IHM complète de VLC.
    6 Le bouton TimeSet permet de se positionner dans la vidéo (en ms ex : 8000 = 8 secondes)
    7 Le bouton Stop permet d'arrêter la lecture de la vidéo.
    8 Le bouton Restart permet de relire la vidéo.
    9 Le bouton Pause permet de suspendre la lecture en cours. L'appui suivant permet de reprendre la lecture.
    10 Le bouton Copie Ecran permet de prendre une copie d'écran de la vidéo en cours dans le répertoire temporaire (fichier CopieEcran.png).
    11 Le bouton Incrust permet d'incruster dans la vidéo en cours un rectangle vert et un texte (incrustation).
    12 Le bouton suivant permet de changer la valeur de volume du lecteur.
    13 Le bouton Mute permet de couper le son de la vidéo. L'appui suivant permet de réactiver le son.


    14 Le bouton Options permet d'accéder à la fenêtre d'Options où dans le champ de saisie on met les options à prendre en compte au lancement de la vidéo. Ces options ne seront utilisées que si l'on coche la case à cocher Options Actives. Voici par exemple une option qui permet de choisir un fichier de sous-titre pour sa vidéo :
    Dans le champ de saisie des options mettre sub-file=<emplacement du fichier de sous-titre> (exemple : sub-file=D:\Temp\Vidéos\soustitres\jellies_french.srt) on utilisera ce fichier de sous-titre pendant la lecture de la vidéo.
    Si l'on veut avoir un fichier de logs de VLC pendant son exécution (par exemple pour voir ce qui ne vas pas) décommentez la ligne dans le code d'initialisation de la fenêtre :
    // oVLC:SetLogFile(fRépertoireTemp() + "MonLogVLC.Log")
    Pour revenir à la fenêtre principale du lecteur vidéo, recliquez sur Options.
    Ami calmant, J.P
    Fichiers attachés Fichiers attachés
    Jurassic computer : Sinclair ZX81 - Zilog Z80A à 3,25 MHz - RAM 1 Ko - ROM 8 Ko

Discussions similaires

  1. [POO] [DEV] Classe de debug pour PHP
    Par -COil- dans le forum Langage
    Réponses: 11
    Dernier message: 09/06/2007, 19h53
  2. [POO] Réalisation de classe sous PHP5 pour plus de lisibilité
    Par ChriGoLioNaDor dans le forum Langage
    Réponses: 4
    Dernier message: 19/02/2007, 19h42
  3. Type de class et arguments pour fonctions et new
    Par Alfred12 dans le forum C++
    Réponses: 15
    Dernier message: 19/01/2007, 01h02
  4. Réponses: 2
    Dernier message: 29/06/2006, 16h33
  5. [.NET][PPC] Class POP3 gratuite pour pocket pc / Win CE
    Par freddyboy dans le forum Windows Mobile
    Réponses: 5
    Dernier message: 19/12/2005, 11h32

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