<div dir="ltr"><br><div class="gmail_extra"><br><div class="gmail_quote">On Thu, Apr 28, 2016 at 11:51 AM, Sebastian Dröge <span dir="ltr"><<a href="mailto:sebastian@centricular.com" target="_blank">sebastian@centricular.com</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><span class="">On Do, 2016-04-28 at 11:28 -0400, Aaron Boxer wrote:<br>
<br>
<br>
> > No, the payloader/depayloader should have no external dependencies<br>
> > and you probably also don't save a lot of work with that as the<br>
> > parsing<br>
> > needs to be closely integrated with the payloading/depayloading<br>
> > anyway.<br>
> Thanks. Makes sense. Can I copy-paste BSD licensed OpenJPEG code into<br>
> the payloader? I would maintain a piece of OpenJPEG inside, and try<br>
> to keep it as independant as possible, to ease maintenance.<br>
<br>
</span>If that really makes your life easier, sure :) But make sure to not<br>
copy over much more code than needed, parsing JPEG2000 is not that<br>
complicated in the end.<br></blockquote><div><br></div><div>Thanks. I looked over the IETF document describing J2K over RTP.<br></div><div>You're right, it is not complicated for a simple implementation.<br></div><div>The J2K code stream is broken up into:<br><br></div><div>Main Header<br></div><div>Start of Codestream Marker<br> Tile Part Header<br></div><div> Tile Part Data<br></div><div> J2K packet 1 ... N<br> .<br> .<br> Tile Part Header<br><div> Tile Part Data<br></div> J2K packet 1 ... M<br></div><div>End of Codestream Marker<br></div><div><br></div><div>where the image is broken into tiles, and the tiles are broken into tile parts.<br></div><div><br>It would be ideal to manage the RTP payloads to respect the packet structure<br></div><div>of J2K. This is recommended in the IETF doc, but I don't think this is happening in the current implementation.<br></div><div>I can work on this, time permitting.<br></div><div><br></div><div>Cheers,<br></div><div>Aaron <br></div><div><br></div></div><br></div></div>