On 19-Dec-11 14:54, Alex Balashov wrote: > Hi Alain, > > On 12/19/2011 08:39 AM, Alain Totouom wrote: > >> What does the stack says: >> >> frame->size = ? >> this_port->info.bytes_per_frame = ? > > frame->size is 320. I can't seem to get the value for > bytes_per_frame for some reason. > Off-List suggestion 'cause kind of debug issue rather than conceptual ;o) PTIME = 20? After pjmedia_splitcomb_create_rev_channel what does conf_port->info.bytes_per_frame says? 320? pjmedia_frame to be written to the rev port pjmedia_frame::size == 320? PCM 16bit ;o) Cheers, Alain >> Are you writing (PCAP/RTP) partial frames to port? > > No, they are full frames, as far as I know. This part works, I know > that, because what I used to do is write out two WAV files and then > re-read them and mix them back together with the conference bridge. > I am just trying to perform the mixing in-memory now to solve some > timing issues. I haven't changed the RTP processing code at all, > other than the port to which the frames are put. > >> All pjmedia_put_frame calls to the reverse channel are faulty? > > It appears that way. > >> The custom port is NOT needed in your case since it would just >> forward your put_frame/get_frame to the reverse channel. It's more a >> design foo. > > Ah, I see. > >> Hm lacking some info, your brdige is created without a sound device, >> who is the timing provider? Null sound device& null port? > > I am not sure how to answer that; I assume that the master port has > some sort of internal clock. > > Ultimately, I am reading frames from the conference bridge's master > port and writing them to a WAV writer port. This code also worked > fine when I was reading two WAVs and playing them into the > conference bridge. > >> If I'm correct the splitter is actually the only port connected to >> your bridge? If that is the case where does the mixing occurs? Who >> triggers the data flow with the splitter port? > > The idea is that the mixing should occur in the conference bridge; > that is the purpose for which I am using it. I have two separate > RTP streams that I am reading out of a PCAP loop; for each stream > direction, I have separate RTP processing. Previously, I was > separating the call into two legs, writing them out as separate WAV > files (say, A.wav and B.wav), then reading A.wav and B.wav back in > and putting the frames into the bridge, and then writing them back > out into a third WAV file from the conference bridge's master port. > > My goal is simply to do that in memory and remove the need for > intermediate WAV files. > >> You can contact me off-list.. > > Thanks, I really appreciate your willingness to help! If we get to > any confidential details, I will do that. In the meantime, if it's > all the same to you, I prefer to keep the thread on the list so that > others with the same needs may benefit from searching the list > archives in the future. It's the least I can do to give back to > such a helpful community! > > -- Alex > -- "" (o)(o) _____o00o__(__)__o00o_____ 3072D/146D10DE 2011-09-29 Alain Totouom <totouom at gmx.de> PGP Fingerprint 39A4F092 FFA7C746 CC305CB0 69091911 146D10DE