<div dir="ltr">##Hardware resouces##<div>READ and WRITE speed of SD card</div><div>""""</div><div>#write speed</div><div><div>[alarm@alarmpi ~]$ sudo sh -c "sync && echo 3 > /proc/sys/vm/drop_caches"                                         </div><div>[alarm@alarmpi ~]$ dd if=/dev/zero of=/home/alarm/output bs=8k count=10k</div><div>10240+0 records in</div><div>10240+0 records out</div><div>83886080 bytes (84 MB) copied, 0.803581 s, 104 MB/s</div></div><div><br></div><div>#read speed</div><div><div>[alarm@alarmpi ~]$ sudo sh -c "sync && echo 3 > /proc/sys/vm/drop_caches"</div><div>[alarm@alarmpi ~]$ dd if=/home/alarm/output of=/dev/null bs=8k count=10k</div><div>10240+0 records in</div><div>10240+0 records out</div><div>83886080 bytes (84 MB) copied, 4.79864 s, 17.5 MB/s</div></div><div>""""</div><div>Is 17.5 MB/s enough for smooth playback?</div><div><br></div><div><br></div><div>##omxplayer##</div><div>If I install omxplayer on rpi2 it plays smoothly sample video, so there shouldn't be any problems with hardware.</div><div>After installation of omxplayer I can't use glimagesink any more:</div><div>"""</div><div><div>Setting pipeline to PAUSED ...</div><div>ERROR: Pipeline doesn't want to pause.</div><div>Got context from element 'sink': gst.gl.GLDisplay=context, gst.gl.GLDisplay=(GstGLDisplay)"\(GstGLDisplayEGL\)\ gldisplayegl0";</div><div>ERROR: from element /GstPipeline:pipeline0/GstGLImageSinkBin:glimagesinkbin0/GstGLImageSink:sink: glGetString not defined or returned invalid value</div><div>Additional debug info:</div><div>gstglimagesink.c(819): _ensure_gl_setup (): /GstPipeline:pipeline0/GstGLImageSinkBin:glimagesinkbin0/GstGLImageSink:sink</div></div><div>"""</div><div>I think this is because of omxplayer has dependency on mesa-lib. When I install omxplayer - mesa-lib installed as dependency. Maybe there is conflict between mesa libEGL,libGLESv2 and libs in /opt/vc/lib? Is it normal or mesa should work fine in parallel with /opt/vc/lib?</div><div><br></div><div><br></div><div>##Common gotchas##</div><div>Are there common gotchas when working with gstreamer on rpi2?</div><div>Should I change something in config? Install some lib?</div><div>Should I install ORC lib and compile gstreamer packages with --enable-orc? As i know ORC doesn't support arm. Or does?</div><div>Maybe I need activate some plugins when compile gstreamer?</div><div>Do I need ffmpeg? I didn't installed it because it has dependency on mesa and disabled all plugins than need ffmpeg.</div><div><br></div><div><br></div><div>I will appreciate any hints! Thanks.</div><div><br><div class="gmail_extra"><br><div class="gmail_quote">On Fri, Nov 20, 2015 at 7:19 PM, Sergey Anuchin <span dir="ltr"><<a href="mailto:sergunich@gmail.com" target="_blank">sergunich@gmail.com</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-color:rgb(204,204,204);border-left-style:solid;padding-left:1ex"><div dir="ltr">Hi!<div><br></div><div>I have problem with playback of 1080p on rpi2(archlinuxarm).</div><div><br></div><div>##Prelude - how I compiled gstreamer##</div><div>I compiled gstreamer, gst-plugins-base, gst-plugins-good, gst-plugins-bad version 1.6.1 from tarbals from here: <a href="http://gstreamer.freedesktop.org/src/" target="_blank">http://gstreamer.freedesktop.org/src/</a>.<br></div><div>Here is build scripts that I use: <a href="https://gist.github.com/sergunich/1010791aaf59c97a9a23" target="_blank">https://gist.github.com/sergunich/1010791aaf59c97a9a23</a><br>Main part is build() functions, where I call configure and disable a lot redundant plugins.</div><div><br></div><div>I got gst-omx version 1.2.0 from precompiled archlinluxarm packages, here is building script: <a href="https://github.com/archlinuxarm/PKGBUILDs/blob/master/alarm/gst-omx-rpi/PKGBUILD" target="_blank">https://github.com/archlinuxarm/PKGBUILDs/blob/master/alarm/gst-omx-rpi/PKGBUILD</a></div><div><br></div><div>All compiles successfully and passes tests.</div><div><br></div><div>##Main part##</div><div>I use this video for testing: <a href="http://download.openbricks.org/sample/H264/big_buck_bunny_1080p_H264_AAC_25fps_7200K_short.MP4" target="_blank">http://download.openbricks.org/sample/H264/big_buck_bunny_1080p_H264_AAC_25fps_7200K_short.MP4</a></div><div>Here is result of gst-discoverer-1.0 for this video: <a href="https://gist.github.com/sergunich/ba10bb832b4996c31fad" target="_blank">https://gist.github.com/sergunich/ba10bb832b4996c31fad</a></div><div><br></div><div>I use this command to launch playback: </div><div>gst-launch-1.0 -ve filesrc location=./big_buck_bunny_1080p_H264_AAC_25fps_7200K_short.MP4 ! queue name=demux ! qtdemux ! queue name=parse ! h264parse ! queue name=decode ! omxh264dec ! queue name=sink ! glimagesink<br></div><div><br></div><div>Playback is laggish. Output to console: <a href="https://gist.github.com/sergunich/8aa410ee527d642ddcba" target="_blank">https://gist.github.com/sergunich/8aa410ee527d642ddcba</a></div><div>Main message from this output:</div><div>""""</div><div><div>WARNING: from element /GstPipeline:pipeline0/GstGLImageSinkBin:glimagesinkbin0/GstGLImageSink:sink: A lot of buffers are being dropped.</div><div>Additional debug info:</div><div>gstbasesink.c(2846): gst_base_sink_is_too_late (): /GstPipeline:pipeline0/GstGLImageSinkBin:glimagesinkbin0/GstGLImageSink:sink:</div><div>There may be a timestamping problem, or this computer is too slow.</div></div><div>"""""</div><div><br></div><div>Here is full debug log with GST_DEBUG=6: <a href="https://copy.com/PzLQ4jQlLRhGCoQE/gst.log?download=1" target="_blank">https://copy.com/PzLQ4jQlLRhGCoQE/gst.log?download=1</a></div><div>And here most relevant parts(as seems to me): <a href="https://gist.github.com/sergunich/94990944f46fe5aa0a68" target="_blank">https://gist.github.com/sergunich/94990944f46fe5aa0a68</a></div><div><br></div><div>##Hardware resources##</div><div>Here is 'top' snapshots of processes with threads during playback: <a href="https://gist.github.com/sergunich/e13889e33bf05a43156d" target="_blank">https://gist.github.com/sergunich/e13889e33bf05a43156d</a></div><div>In /boot/config.txt: gpu_mem=512</div><div><br></div><div><br></div><div>##Questions##</div><div>So... any idea why playback is laggish?)</div><div>How can I investigate this problem further?</div><div><br></div><div><br></div><div>##P.S.##</div><div>If I set glimagesink sync=false - playback is like slowmotion.</div></div>
</blockquote></div><br></div></div></div>