Hi,


I was working on the same problem as the one Jason mentioned, but I managed
to make it functioned. Basically, I started by the precoded_announce
application and I modified it a bit, in order to parse the input parameters
and let the user play an announcement more than one time. My file is a
precoded file in g729 format that the user can specify through its request.
Here is the most important function:


void PrecodedDialog::onSessionStart(const AmSipRequest& req)

{  

  int current_payload=rtp_str.getCurrentPayload();

  if ((current_payload == -1) && !m_payloads.empty()) {

    current_payload = m_payloads[0]->payload_type;

  }

        

  AmPlaylist* playlist = new AmPlaylist(this);  

 
while(repeat--){           


      AmPrecodedFileInstance* file =
file_def->getFileInstance(current_payload, m_payloads);


      if (!file) {

        ERROR("no payload\n");

      }

      if (!file || file->open()) { 

       
ERROR("PrecodedDialog::onSessionStart: Cannot open file\n");

        dlg.bye();

        setStopped();

        return;

      }


      rtp_str.setFormat(file->getRtpFormat());

      

      AmPlaylistItem* item = new 
AmPlaylistItem(file, NULL);      

      playlist->addToPlaylist(item);  

  }

  

  setOutput(playlist);

  setReceiving(false);

}



I made use of a playlist in order to possibly repeat the file. I think that
the most difficult part is to retrieve the G729 files. I used a free
converter that intel has made available.


In order to make it possible to manage other codecs as well, upon received
the INVITE and parsed the file name, my application tries to load files with
the same name as the specified one but with different extension, e.g.:
file.ul, file.al, file.g729. Maybe it's not that smart, but I wasn't able to
find out anything better. 


If it can be of any help, I can post my entire application, but I think the
most important part is the one I copied. Basically is what Stephan suggested
to me, when I asked him for the same problem. 


Hope it was helpful,


Cheers,

- Francesco.







--------- Original Message --------

 Da: "Jason Penton" <[EMAIL PROTECTED]>

 To: "Raphael Coeffic" <[EMAIL PROTECTED]>

 Cc: "[email protected]" <[EMAIL PROTECTED]>

 Oggetto: Re: [Semsdev] g729 native format

 Data: 03/12/08 15:37

 

  Thanks Stefan, Raphael!


I will see what I can come up with


Cheers

Jason


On Wed, Dec 3, 2008 at 4:32 PM, Raphael Coeffic <[EMAIL PROTECTED]> wrote:


Jason Penton wrote:

Hi Raphael,

 

 not sure what you mean by "WAV with g.729" but i was thinking of having
precoded files like default.g729 default.wav and depending on the codec
negotiated with each call the appropriate "bytestream" is served.

 


The WAV format does not force the encoding of the bit stream. There are
several encoding supported within the WAV format, among which is g729. At
the moment, SEMS only supports WAV files with Ulaw, Alaw and PCM16 encoding.
What you propose is indeed already included, but as Stefan pointed out,
there are some bugs for codecs which are supported otherwise by SEMS.


 

comments?

 

 p.s. could you elaborate on the existing "pre-coded announcements"


sems/trunk/apps/precoded_announce ;-)

 

 -Raphael.



 cheers

 Jason


 

 On Wed, Dec 3, 2008 at 3:58 PM, Raphael Coeffic <[EMAIL PROTECTED]
<mailto:[EMAIL PROTECTED]>> wrote:

 

    Jason Penton wrote:

 

        Hi All,

 

        Would there be any merit adding a native g729
file format to

        SEMS so that media can be streamed from the
server without

        having to license the g729 codec. I would be
happy to work on

        the code but was interested in what the guys
like Stefan,

        Raphael and the rest of the list think about
such a feature?

 

    Do you mean WAV with g.729? We already have some kind of
support

    with the pre-coded announces, but supporting a wide deployed
file

    format would be better.

 

    -Raphael.

 

        cheers

        Jason

      
 ------------------------------------------------------------------------

 

        _______________________________________________

        Semsdev mailing list

       [email protected]
<mailto:[email protected]>


        http://lists.iptel.org/mailman/listinfo/semsdev

         

 

 







  

 

 



  _______________________________________________

 Semsdev mailing list

 [email protected]

 http://lists.iptel.org/mailman/listinfo/semsdev

  
 
 --
 Caselle da 1GB, trasmetti allegati fino a 3GB e in piu' IMAP, POP3 e SMTP
autenticato? GRATIS solo con Email.it: http://www.email.it/f
 
 Sponsor:
 Innammorarsi รจ facile con Meetic, milioni di single si sono iscritti, si
sono conosciuti e hanno riscoperto l'amore. Tutto con Meetic, prova anche
tu!
 Clicca qui: http://adv.email.it/cgi-bin/foclick.cgi?mid=8292&d=20081203

_______________________________________________
Semsdev mailing list
[email protected]
http://lists.iptel.org/mailman/listinfo/semsdev

Reply via email to