SoloCodigo

Programación General => Visual Basic 6.0 e inferiores => Mensaje iniciado por: Mollense en Miércoles 9 de Marzo de 2005, 22:09

Título: Directx
Publicado por: Mollense en Miércoles 9 de Marzo de 2005, 22:09
Hola gente !!

Alguno de ustedes sabe como puedo almacenar en un buffer un sonido proviniente de un micrófono conectado a la PC usando DirectX y luego reproducirlo?
Todo esto desde Visual Basic.

Desde ya, muchas gracias!
Título: Re: Directx
Publicado por: Mollense en Viernes 11 de Marzo de 2005, 13:30
:(  Vamos muchachos, ayudenme !!!!!!!!
Título: Re: Directx
Publicado por: JuanK en Viernes 11 de Marzo de 2005, 13:58
No se de que visual basic hablas,
pero si fuese VB.NET  este ejemplo de C#.NET sera facil de convertir a VB.NET:
Esto es un resumen de lo que hay que hacer... logicamente deberias colocarle control de excepciones ordenarlo y todas essas cosas
Código: Text
  1.  
  2.  
  3.   ///  <summary>Dispositio  de hardware  asociado a la clase</summary>
  4.   public readonly  Sonido.Device dispSonido;
  5.   ///  <summary>Buffer  temporal para un sonido</summary>
  6.   private  Sonido.SecondaryBuffer tmpBuffer;
  7.   ///  <summary>Descripcion asociada a  la creacion  de un nuevo  Buffer de sonido</summary>
  8.   private  Sonido.BufferDescription desc;
  9.  
  10.   public constructot()
  11.   {
  12.     desc = new Sonido.BufferDescription();
  13.     dispSonido = new Sonido.Device();
  14.     dispSonido.SetCooperativeLevel(propietario,                            
  15.     Sonido.CooperativeLevel.Priority);
  16.     try
  17.     {
  18.       desc.ControlVolume = true;
  19.       this.Volumen = volumenSonido;
  20.     }
  21.     catch{}
  22.   }
  23.  
  24.   public void  otros()
  25.   {
  26.     ...
  27.     ...
  28.     string s="sonido.wav"
  29.     // Se  crea el  buffer temporal
  30.     tmpBuffer =  new  Sonido.SecondaryBuffer(s,desc,dispSonido);  
  31.     // Se establece  el volumen
  32.     tmpBuffer.Volume = volumen;
  33.     ...
  34.     ...
  35.     tmpBuffer.Play(0,Sonido.BufferPlayFlags.Default);
  36.   }
  37.  
  38.  
Título: Re: Directx
Publicado por: Mollense en Viernes 11 de Marzo de 2005, 14:50
Gracias JuanK.  :)

Estoy programando en Visual 6.0.

Todabía no tube tiempo de ponerme a ver VB.NET.

De todas maneras te lo agradezco !!

:hola:  Suerte