[asterisk-dev] AST_FRAME_DIGITAL

Atis atis at BEST.eu.org
Thu Sep 13 06:37:57 CDT 2007


On 9/13/07, Klaus Darilion <klaus.mailinglists at pernau.at> wrote:
>
>
> Russell Bryant schrieb:
> > Klaus Darilion wrote:
> >> What about G3 fax. It is rather the same as 3G video:
> >>   fax delivers images over a telephone line
> >>   3G video deliver audio and video over a telephone line
> >>
> >> In case of G3 fax, the image data is modulated
> >> In case of 3G video, the audio/video is multiplexed with H223.
> >>
> >> Currently fax is handled inside an application. Taking your argument,
> >> the fax decoder should be in the channel driver and deliver
> >> AST_FRAME_IMAGE (maybe one per page) to Asterisk's core. But I think the
> >> current implementation which is a single application is much better then
> >> adding modem functionality to each channel driver.
> >>
> >> IMO it is much more flexible only add support for generic data
> >> (AST_FRAME_DIGITAL) to channel drivers. Then, new services and features
> >> can be added as application without touching the code of channel drivers.
> >
> > Faxes are passed into Asterisk using the VOICE frame type, indicating that it is
> > audio.  In the case of T.38, it uses the AST_FRAME_MODEM type.
>
> On high level fax is a picture. On the low level it is audio.
> On high level 3G video is video/audio. On the low level is is digital data.
>
> Thus, Asterisk bridges fax call on low level (the AST FRAME includes
> audio, not pictures). And the decoding (audio-->picture) is done in an
> application.
>
> The same we want to have for 3G video. Asterisk should bridge it on the
> low level and the decoding is done in an application which allows
> feeding the decoded audio and video back to Asterisk using pseudo channels.
>
> > Another reason that this must be handled using the VOICE and VIDEO frame types
> > is bridging with channels that are not ISDN channels.  What if you want to
> > connect a voice/video ISDN call to SIP?  The way that you propose, it will not
> > be possible.
>
> Is is already possibly and works like a charm:
>
> chan_zap just receivs the digital data and puts it into an AST_FRAME.
> The called extension starts the application h324m_gw. This application
> receives the raw data from the zap channel and decodes h324m into
> AST_FRAME_AUDIO and AST_FRAME_VIDEO. Then it requests a pseudo channel
> and feeds the audio and video frames into the pseudo channel. The pseudo
> channel continues dialplan execution and for example Dial(SIP/123).
>
> Works like a charm - with the need to add the whole h324m decoding in
> the channel_driver.

Hi,

Sorry, i'm quite a newbie in all this, but a quick (probably foolish)
idea. Decoding with applications seems quite dirty - i wouldn't want
it in my dialplan..

Why not to create another type of module - decoder. It could be
included by all channels - so it doesn't matter you get video from Zap
or SIP - channel driver upon reception looks up decoder (dec_h324m)
and decodes it into AUDIO and VIDEO. This way it could be used by all
channels, without actually adding code to them?

Regards,
Atis


>
> For people who do not follow asterisk-video. 3G video <--> SIP and SIP
> <--> mp4_play/save and 3G video <--> mp4_play/save is already working.
> We just want to get most of the code into Asterisk - and by telling us
> that we have to add 3G video decoding into each channel driver is not
> the right way.
>
> regards
> klaus
>
>  > This is why _every single channel driver_ in Asterisk decodes the
> > technology specific stream of voice and video and passes them into Asterisk
> > using the primitive frame types.

-- 
Atis Lezdins,
IT Responsible of BEST Riga,
atis at BEST.eu.org
ICQ: 142239285
Skype: atis.lezdins
Cell Phone: +371 28806004 [Tele2, Latvia]
Work phone: +1 800 7502835 [Toll free, USA]
?BEST? -> www.BEST.eu.org



More information about the asterisk-dev mailing list