<div dir="ltr"><div><div><div><div><div><div><div><div><div><div><div>Hi Nicola,<br><br></div>I ran some tests using the latest master version of gstreamer and openjpeg.<br><br></div>On my system (Ubuntu VM on i7 3770 host) , using the pipelines you suggested, I found the following<br></div>timings:<br><br></div>Openjpeg 2.1.X: 3.08 seconds<br></div>VP8: 1.38 seconds<br></div>JPEG: 0.054 seconds<br><div><br></div>Also, my accelerated J2K codec took 1.04 seconds.<br><br></div><div>I didn't test 1.5, but there are so many bugs and security issues with 1.5 that I wouldn't recommend using it.<br></div><br></div>So, the situation has improved with the latest versions.<br><br></div>Also, I just noticed that openjpegenc uses the default encode parameters settings for OpenJPEG, and the default is *lossless*<br></div>encoding. So, the compression ratio is never going to go much higher than 2:1. This will definitely affect file size.<br></div><div><br></div><div>Cheers,<br></div><div>Aaron<br></div><div><div><div><div><div><div><div><div><div><div><br><br><div><div><div class="gmail_extra"><br><div class="gmail_quote">On Sun, Jun 26, 2016 at 4:10 AM, Mailing List SVR <span dir="ltr"><<a href="mailto:lists@svrinformatica.it" target="_blank">lists@svrinformatica.it</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">
<div bgcolor="#FFFFFF" text="#000000">
<div>Hi Aaron,<br>
<br>
first of all thanks for your efforts,<br>
<br>
I'm not a J2K user, I evaluated this codec some years ago but was
not suitable for my needs, <br>
<br>
in my use case I get video from network cameras and I can save or
restream using the same codec or a different codec (for example
jpeg2000). My input is never encoded as jpeg2000 (some cameras
support jpeg2000 but they support h264 too)<br>
<br>
The main reason to transcode is to reduce bandwidth and/or change
the original stream (add a text overlay, rotate the images ecc..)<br>
<br>
major problem with jpeg2000 is that encoding/decoding seems
terribly slow and encoder does not save bandwidth.<br>
<br>
Please take a look at the following pipelines<br>
<br>
gstreamer compiled against openjpeg 1.5.2<br>
<br>
gst-launch-1.0 videotestsrc num-buffers=100 ! openjpegenc !
fakesink silent=false sync=false<br>
Impostazione della pipeline a PAUSED ...<br>
La pipeline è in PREROLLING ...<br>
La pipeline è in PREROLLED ...<br>
Impostazione della pipeline a PLAYING ...<br>
New clock: GstSystemClock<br>
Ottenuto EOS dall'elemento «pipeline0».<br>
<font size="+1"><b>Execution ended after 0:00:08.701328003</b></font><br>
Impostazione della pipeline a PAUSED ...<br>
Impostazione della pipeline a READY ...<br>
Impostazione della pipeline a NULL ...<br>
Esecuzione di free sulla pipeline...<br>
<br>
gstreamer compiled against openjpeg 2.1<br>
<br>
gst-launch-1.0 videotestsrc num-buffers=100 ! openjpegenc !
fakesink silent=false sync=false<br>
Setting pipeline to PAUSED ...<br>
Pipeline is PREROLLING ...<br>
Pipeline is PREROLLED ...<br>
Setting pipeline to PLAYING ...<br>
New clock: GstSystemClock<br>
Got EOS from element "pipeline0".<br>
<font size="+1"><b>Execution ended after 0:00:26.328685923</b></font><br>
Setting pipeline to PAUSED ...<br>
Setting pipeline to READY ...<br>
Setting pipeline to NULL ...<br>
Freeing pipeline ...<br>
<br>
Now the same pipeline with other encoders:<br>
<br>
gst-launch-1.0 videotestsrc num-buffers=100 ! vp8enc ! fakesink
silent=false sync=false<br>
Setting pipeline to PAUSED ...<br>
Pipeline is PREROLLING ...<br>
Redistribute latency...<br>
Pipeline is PREROLLED ...<br>
Setting pipeline to PLAYING ...<br>
New clock: GstSystemClock<br>
Got EOS from element "pipeline0".<br>
<font size="+1"><b>Execution ended after 0:00:01.459543338</b></font><br>
Setting pipeline to PAUSED ...<br>
Setting pipeline to READY ...<br>
Setting pipeline to NULL ...<br>
Freeing pipeline ...<br>
<br>
gst-launch-1.0 videotestsrc num-buffers=100 ! jpegenc ! fakesink
silent=false sync=false<br>
Setting pipeline to PAUSED ...<br>
Pipeline is PREROLLING ...<br>
Pipeline is PREROLLED ...<br>
Setting pipeline to PLAYING ...<br>
New clock: GstSystemClock<br>
Got EOS from element "pipeline0".<br>
<font size="+1"><b>Execution ended after 0:00:00.052316056</b></font><br>
Setting pipeline to PAUSED ...<br>
Setting pipeline to READY ...<br>
Setting pipeline to NULL ...<br>
Freeing pipeline ...<br>
<br>
I don't know if the problem is inside openjpeg or in gstreamer
integration however this codec is actually too slow for my use
case, decoder seems slow too and produced files have a bigger size
than for example the ones obtained with jpegenc,<br>
<br>
is there some "magic" property to set to improve performance?<br>
<br>
thanks<br>
Nicola<br>
<br>
P.S. if you try avenc_jpeg2000 you'll get better performance so
maybe the problem is in openjpeg<div><div class="h5"><br>
<br>
Il 25/06/2016 17:22, Aaron Boxer ha scritto:<br>
</div></div></div>
<blockquote type="cite"><div><div class="h5">
<div dir="ltr">
<div>
<div>
<div>
<div>
<div>
<div>
<div>
<div>Dear GStreamers,<br>
<br>
</div>
I've spent the last month or so trying to improve
J2K support inside GStreamer ( with a lot of help
from the GStreamer gurus :) )<br>
<br>
</div>
I am very curious about how people are using
GStreamer to stream J2K content.<br>
</div>
Are there many people streaming J2K over RTP ? Are
people transcoding J2K assets<br>
</div>
to other formats such as H.264 or HEVC ? How much
interest is there in supporting<br>
</div>
J2K over MPEG TS ? What about motion J2K ?<br>
<br>
</div>
Any feedback on what people are doing, and what they would
like to see, would be most welcome.<br>
<br>
</div>
Thanks!<br>
</div>
Aaron<br>
</div>
<br>
<fieldset></fieldset>
<br>
</div></div><pre>_______________________________________________
gstreamer-devel mailing list
<a href="mailto:gstreamer-devel@lists.freedesktop.org" target="_blank">gstreamer-devel@lists.freedesktop.org</a>
<a href="https://lists.freedesktop.org/mailman/listinfo/gstreamer-devel" target="_blank">https://lists.freedesktop.org/mailman/listinfo/gstreamer-devel</a>
</pre>
</blockquote>
<br>
</div>
<br>_______________________________________________<br>
gstreamer-devel mailing list<br>
<a href="mailto:gstreamer-devel@lists.freedesktop.org">gstreamer-devel@lists.freedesktop.org</a><br>
<a href="https://lists.freedesktop.org/mailman/listinfo/gstreamer-devel" rel="noreferrer" target="_blank">https://lists.freedesktop.org/mailman/listinfo/gstreamer-devel</a><br>
<br></blockquote></div><br></div></div></div></div></div></div></div></div></div></div></div></div></div></div>