[MPlayer-cygwin] directsound driver

Sascha Sommer saschasommer at freenet.de
Sun Aug 15 20:36:59 CEST 2004


On Sunday 15 August 2004 14:34, Szecsi Gabor wrote:
> I have started to write a directsound driver. It is not working well
> yet, the sound is very choppy. I think at least double buffering
> needed or something similar. The code is based on the videolan output
> driver and ao_win32 and my knowledge :)

Nice. That was fast. ;)

> If anyone has anything useful for me to finish it please don't
> hesitate to share it with me.
>
> Sasha: u used a 16 buffer ringbuffer code in ao_win32.c. What is the
> purpose of it? I mean the 16 buffers?
>

Well we need some kind of buffering otherwise the sound playback will always 
interrupt until we filled the buffer again. The code in ao win32 is manly the 
ao sdl code replaced with the native windows functions and 16 buffers seemed 
to work fine so I left this value. Videolan is multithreaded afair so maybe 
they don't need this tricky buffering.

> I've been trying to fix the ao_win32 code for multichannel but there
> is some problem in the av-sync. If I turn it off, the sound is good,
> but video is too fast. Why?

There is some problem with get_delay and get_space then. Without autosync 100
it will use the soundcard for timing. This is why it is playing to fast.

> In multichannel modes channels need to be remapped as dear M$ never
> follows standards other than it's own. VideoLan player has a good
> source for it, but I need to know the liba52 channel layout.

Did you try with the values from videolan? I think they are using liba52, too.

Sascha




More information about the MPlayer-cygwin mailing list