> I tried some other things: > 1 - In the method createNewStreamSource return my FramedSource > subclass instead of MPEG1or2AudioStreamFramer::createNew (I think that > hears better but with errors)
Does your “FramedSource” subclass deliver discrete MP3 frames - i.e., one at a time - rather than an unstructured MP3 byte stream? If so, then you should *not* use a “MPEG1or2AudioStreamFramer”. (Sorry, I missed this before.) Instead, your “createNewStreamSource()” implementation should return just an instance of your “FramedSource” subclass - so that your “FramedSource” subclass feeds directly to a “MPEG1or2AudioRTPSink". (A “MPEG1or2AudioStreamFramer” is used only when parsing an unstructured MPEG audio byte stream - e.g., as you would get from a “.mp3” file.) > 3 - I tried to change fMaxSize in order to not truncate bytes in my > implementation of deliverFrame No! “fMaxSize” is an ‘in’ parameter. It’s not something that you change. If your “FramedSource” subclass is delivering discrete MP3 frames - i.e., one at a time - and you are feeding this directly to a “MPEG1or2AudioRTPSink” (i.e., *without* using a “MPEG1or2AudioStreamFramer”), then you should not be running into truncation problems, because “fMaxSize” should always be around 1200 bytes or so (i.e., the size available for a RTP packet), and your MP3 frames should all be much smaller than this. (But if your “FramedSource” subclass is delivering *multiple* MP3 frames at a time, then you can still deliver these, provided that you are always delivering complete (not partial) MP3 frames, and are never truncating any of them.) Ross Finlayson Live Networks, Inc. http://www.live555.com/ _______________________________________________ live-devel mailing list live-devel@lists.live555.com http://lists.live555.com/mailman/listinfo/live-devel