[..] "Vidéo conférence"

Aide et conseils concernant AutoIt et ses outils.
Règles du forum
.
Répondre
Avatar du membre
TommyDDR
Modérateur
Modérateur
Messages : 2127
Enregistré le : mar. 22 juil. 2008 21:55
Localisation : Nantes
Status : Hors ligne

[..] "Vidéo conférence"

#1

Message par TommyDDR »

Bonjour,

Comme le titre l'indique, j'aimerai faire une sorte de vidéo conférence (écran + cam, les 2 séparément)

Dans un premier temps j'aimerai me concentré sur l écran.

Pour l'instant je fais comme suit :

Code : Tout sélectionner

Func Impr()
    $hBmp = _ScreenCapture_Capture ("")
    _ScreenCapture_SaveImage("Test.bmp", $hBmp)
    $file = FileOpen("Test.bmp", 0)
    $data = FileRead($file)
    Envoyer($socket, $data)
    FileClose($file)
EndFunc
 
La fonction envoyer est un simple envoi pas socket

Mon problème est la passage par fichier qui me bloque mon débit a 3img/sec maxi car l'écriture dans un fichier est éternellement long.
J'aimerai donc récupéré le contenu du fichier sans devoir le créé, lors du "_ScreenCapture_Capture ("")"

Si quelqu'un sait comment faire, qu'il ai l'amabilité de poster la solution ^^

Merci.
3.1415926535897932384626433832795028841971693993751058209749445923078164062862089986280348253421170679
Avatar du membre
timmalos
Niveau 11
Niveau 11
Messages : 1970
Enregistré le : dim. 18 mai 2008 15:16
Status : Hors ligne

Re: [..] "Vidéo conférence"

#2

Message par timmalos »

Hmmm. Il suffirait de lire l'aide de _Screen_Capture...

Remarks

If FileName is not blank this function will capture the screen and save it to file. If FileName is blank, this
function will capture the screen and return a HBITMAP handle to the bitmap image. In this case, after you are
finished with the bitmap you must call _WinAPI_DeleteObject to delete the bitmap handle.
Ou de rechercher sur le forum les XXX fois ou l'on a donné la réponse.
Ceci dit, vu que vous avez respecté les règles, je vais vous donner le code :wink:

Code : Tout sélectionner

$print = _ScreenCapture_Capture("", 0, 0, -1, -1, False)
$hImage = _GDIPlus_BitmapCreateFromHBITMAP($print)
 
Sans oublier d'appeler avant la fin de la boucle (sinon erreur memoire au bout de quelques secondes)

Code : Tout sélectionner

_GDIPlus_ImageDispose($hImage)
WinAPI_DeleteObject($print)
Pour plus d'informations:
http://www.autoitscript.fr/forum/viewto ... f=6&t=1955
Avatar du membre
TommyDDR
Modérateur
Modérateur
Messages : 2127
Enregistré le : mar. 22 juil. 2008 21:55
Localisation : Nantes
Status : Hors ligne

Re: [..] "Vidéo conférence"

#3

Message par TommyDDR »

J'ai tenter ta technique mais :
$hImage = _GDIPlus_BitmapCreateFromHBITMAP($print)
me retourne un handle aussi ... (il me retourne 24655784, ce qui ne peut être l'image)
Or j'aimerai avoir le contenu de l'image car en vidéoconférence, l'ordinateur distant a besoin du contenu et non du handle ^^'

Merci.
3.1415926535897932384626433832795028841971693993751058209749445923078164062862089986280348253421170679
Avatar du membre
TommyDDR
Modérateur
Modérateur
Messages : 2127
Enregistré le : mar. 22 juil. 2008 21:55
Localisation : Nantes
Status : Hors ligne

Re: [..] "Vidéo conférence"

#4

Message par TommyDDR »

N'y a t-il aucun moyen de récupéré ces information ?

Elle doivent obligatoirement être accessible vu que

_ScreenCapture_SaveImage("test.bmp", $hBmp)

Les utilises.

Si quelqu'un peut m'aider ... (Tlem, au secour ^^')

Merci.
3.1415926535897932384626433832795028841971693993751058209749445923078164062862089986280348253421170679
Avatar du membre
Iste
Niveau 11
Niveau 11
Messages : 1870
Enregistré le : jeu. 04 déc. 2008 14:21
Localisation : 76
Status : Hors ligne

Re: [..] "Vidéo conférence"

#5

Message par Iste »

Pour m'y etre déja cassé les dents, j'ai fouillé au plus profond des UDF, pour tomber au final sur une DLL inconu :/
De plus, faire ca signifie passer par des BMP, donc bien plus long a envoyer ^^'
Au final, ecrir et lire un jpeg est peut etre aussi rapide, meme si l'idéal serait d'avoir directe du jpeg en variable..

Mais sinon, pourquoi ne pas utiliser VNC ? Leurs protocole sont bien plus performant, et les logiciel l'utilisant tres nombreux et offrant beaucoup de possibilités
Signez ici
Avatar du membre
TommyDDR
Modérateur
Modérateur
Messages : 2127
Enregistré le : mar. 22 juil. 2008 21:55
Localisation : Nantes
Status : Hors ligne

Re: [..] "Vidéo conférence"

#6

Message par TommyDDR »

le bmp est en effet lourd à envoyer mais je convertis le bmp en jpg avant l envoi et réduit l'image par 4 (sa taille en cm²)
ce qui fait une image d'une 60aine de ko pour l'écran, et d'une 10aine de ko pour la cam.
Le passage par VNC n'est pas envisageable.

(Et puis me dire de passer pas VNC reviens à ma dire d'effacer quelques semaines/mois de ma vie. Donc... ^^')

C'est la dernière étape avant le résultat final :( I need help !
3.1415926535897932384626433832795028841971693993751058209749445923078164062862089986280348253421170679
Répondre