[linux-dvb] API ioctls for Bypass and RAW Audio

Marcus Metzler mocm at mocm.de
Fri Oct 21 11:31:19 CEST 2005


>>>>> "Werner" == Werner Fink <Dr.> writes:

    Werner> On Thu, Oct 20, 2005 at 07:27:39PM +0200, Marcus Metzler
    Werner> wrote:
    >> >>>>> "Werner" == Werner Fink <Dr.> writes:
    >> 
    Werner> Hi, is there really no one out here which want to be able
    Werner> to use RAW Audio streams? That means replaying Audio
    Werner> without the needs of a PES remuxer?  The hardware can do
    Werner> it, the firmware will support it ... but the DVB API 3 and
    Werner> DVB API 4 seems not be designed for this approach.
    >>
    Werner> How to extend the DVB API 3 for RAW Audio replay?  Do I
    Werner> need a new ioctl or should I extend AUDIO_SELECT_SOURCE by
    Werner> something like AUDIO_SOURCE_MEMORY_RAW or use the
    Werner> AUDIO_SET_STREAMTYPE and define a type class
    Werner> AUDIO_CAP_RAW_XXX.
    >> I once wrote a rudimentary audio driver that made PES from raw
    >> audio and send it to the DVB driver, there were one or two
    >> lines in the av7110 driver and a couple of lines for the audio
    >> device. I haven't used it in a while and it is probably not
    >> usable for newer kernels, but you should be able to see what
    >> was going on from the old drivers on
    >> http://www.metzlerbros.org/dvb/index.html. The last snapshot
    >> http://www.metzlerbros.org/dvb/DVB-20050311.tar.gz should
    >> contain the code.  IN that case the audio was blocked from the
    >> DVB device when there was sound input to /dev/dspX (X usually
    >> =1). I used it with mpg321.

    Werner> You do not need such a driver. The AV7110 can handle not
    Werner> only PES (aka AudioPES) but RAW audio data like Mpeg Audio
    Werner> and PCM. And the next firmware release will support this
    Werner> (AudioMp2 and AudioPCM).  The question is: How can I move
    Werner> the RAW audio data through the DVB driver.

I know. The sound driver just put the PCM data into PES to get it
through DEBI port to the card. Using some kind of container will always be
necessary unless you switch off all other communication. The av7110
needs to know what raw data is coming. The PCM PES did not have too
much overhead and also contained the sample frequency, so that was the
easiest way. 

Marcus

-- 
/--------------------------------------------------------------------\
| Dr. Marcus O.C. Metzler        |                                   |
| mocm at metzlerbros.de            | http://www.metzlerbros.de/        |
\--------------------------------------------------------------------/
 |>>>             Quis custodiet ipsos custodes                 <<<|



More information about the linux-dvb mailing list