OVH Cloud OVH Cloud

Windows media encoder SDK : Mise en tempons

12 réponses
Avatar
CHOULANT Noham
Language : C#
FrameWork : 1.1

Bonjour à tous dans le but de transfere la video de ma Webcam a plusieurs
destinataire et ayant poser des question sur les news group j'ai découvert
Windows Media Encoder SDK qui est formidable mais j'ai deux question à vous
poser :
1) Comment puis je faire pour éviter une mise en memoir de quelque seconde à
la reception de mon flux ( ex; http://LocalHost:8080 ) sur mon composant
windows media player dans mon application ?

2) Au déclanche de mon serveur qui envois le flux tout marche bien Voici le
code :

private void StartWebCam()

{

Encoder = new WMEncoder();

Encoder.OnError += new
_IWMEncoderEvents_OnErrorEventHandler(Encoder_OnError);

this.Text = "Démarrage de la webcam";


try

{

// Create WMEncoderApp and WMEncoder objects.


Encoder.Stop();

// Specify the source for the input stream.

IWMEncSourceGroupCollection SrcGrpColl = Encoder.SourceGroupCollection;

IWMEncSourceGroup SrcGrp = SrcGrpColl.Add("SG_1");

IWMEncSource SrcAud = SrcGrp.AddSource(WMENC_SOURCE_TYPE.WMENC_AUDIO);

IWMEncVideoSource2 SrcVid =
(IWMEncVideoSource2)SrcGrp.AddSource(WMENC_SOURCE_TYPE.WMENC_VIDEO);


SrcAud.SetInput("Default_Audio_Device", "Device", "");

SrcVid.SetInput("Default_Video_Device", "Device", "");


IWMEncBroadcast BrdCst = Encoder.Broadcast;

BrdCst.set_PortNumber (WMENC_BROADCAST_PROTOCOL.WMENC_PROTOCOL_HTTP, 8080);


// Specify a profile.

IWMEncProfile Pro;

IWMEncProfileCollection ProColl = Encoder.ProfileCollection;

SrcGrp.set_Profile(ProColl.Item(2));


// on démarre l'encodage

Encoder.PrepareToEncode(true);

Encoder.Start();

Encoder.OnClientConnect += new
_IWMEncoderEvents_OnClientConnectEventHandler(Encoder_OnClientConnect);

this.Text = "Webcam pres";


axWindowsMediaPlayer1.Ctlcontrols.play();


}

catch (Exception exc)

{


// TODO: Handle exceptions.

}

}

Par contre cela me générer une erreur et suite a cette erreur je relance ma
methode et ca marche, je ne comprend pas d'ou vient cette erreur surtout
qu'apres le relancement de la methode cela marche ?

private void Encoder_OnError(int hResult)

{

Encoder.Reset() ;

StartWebCam() ;

this.Text = "Erreur " +hResult.ToString()+" " +
Encoder.ErrorState.ToString() +" "+ DateTime.Now.ToShortTimeString() ;

}



Merci de votre aide

2 réponses

1 2
Avatar
Paul Bacelar
Le patch est une dll, avec un Winzip tu peux extraire la dll de l'exe
auto-extractible, non ?
--
Paul Bacelar
MVP VC++

"CHOULANT Noham" wrote in message
news:
re
je bosse avec WM Encoder 9 SDK et je n'ai pas trouver la 10 sur google


"Tsunoo Rhilty" a écrit dans le message de news:
dqopou$ftk$
en y repensant.... C'est une update pour WM Encoder 9. Or il existe le 10
entre temps!
Si ca se trouve tu travailles deja avec le 10 et donc l'update (qui est
pour une v9.0) ne peut pas tout simplement pas marcher







Avatar
CHOULANT Noham
Merci beaucoup j'ai pu changer ma dll maintenant je le saurais comment faire
pour les prochaine foi ;)

Bonne journée

"Paul Bacelar" a écrit dans le message
de news:
Le patch est une dll, avec un Winzip tu peux extraire la dll de l'exe
auto-extractible, non ?
--
Paul Bacelar
MVP VC++

"CHOULANT Noham" wrote in message
news:
re
je bosse avec WM Encoder 9 SDK et je n'ai pas trouver la 10 sur google


"Tsunoo Rhilty" a écrit dans le message de news:
dqopou$ftk$
en y repensant.... C'est une update pour WM Encoder 9. Or il existe le
10 entre temps!
Si ca se trouve tu travailles deja avec le 10 et donc l'update (qui est
pour une v9.0) ne peut pas tout simplement pas marcher











1 2