<html>
  <head>
    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
  </head>
  <body text="#000000" bgcolor="#FFFFFF">
    <p>Hello,<br>
    </p>
    <p>Yes, aiurdemux is ported on gstreamer1.0.</p>
    <p>On my imx8m, Tsdemux is not adviced  as it doesn't work very
      well. I always get glitches on my video sink using tsdemux.<br>
    </p>
    <p>BR</p>
    <p><br>
    </p>
    <p>Frédéric<br>
    </p>
    <p><br>
    </p>
    <div class="moz-cite-prefix">Le 22/02/2019 à 15:28, Nicolas Dufresne
      a écrit :<br>
    </div>
    <blockquote type="cite"
cite="mid:CAKQmDh_hDhQYAz3BA9qw1fLnCnOaV1YzFxdrksZQ9+S6+fqipg@mail.gmail.com">
      <meta http-equiv="content-type" content="text/html; charset=UTF-8">
      <div dir="auto">
        <div><br>
          <br>
          <div class="gmail_quote">
            <div dir="ltr" class="gmail_attr">Le ven. 22 févr. 2019 03 h
              42, Duchassin Frederic <<a
                href="mailto:duchassin@sefram.fr" moz-do-not-send="true">duchassin@sefram.fr</a>>
              a écrit :<br>
            </div>
            <blockquote class="gmail_quote" style="margin:0 0 0
              .8ex;border-left:1px #ccc solid;padding-left:1ex">
              <div text="#000000" bgcolor="#FFFFFF">
                <div class="m_-8548043190975939072jive-rendered-content">
                  <p>Hello,</p>
                  <p style="min-height:8pt;padding:0px"> </p>
                  <p>I try to make my own PCIE gstreamer source.</p>
                  <p>My goal is to feed an mpeg2ts stream to gstreamer
                    pipeline on my IMX8M som.(kernel 4.9.88)</p>
                  <p>In order to do that, i've created my own source
                    based on GstBaseSrc.</p>
                  <p>On many stream i get no problem....but on others my
                    pipeline doesn't want to work  and it seems that
                    MPEG2 parser is the problem.</p>
                  <p>This is the log of the failure :</p>
                </div>
              </div>
            </blockquote>
          </div>
        </div>
        <div dir="auto">
          <div class="gmail_quote">
            <blockquote class="gmail_quote" style="margin:0 0 0
              .8ex;border-left:1px #ccc solid;padding-left:1ex">
              <div text="#000000" bgcolor="#FFFFFF">
                <div class="m_-8548043190975939072jive-rendered-content">
                  <blockquote
                    class="m_-8548043190975939072jive_macro_quote
                    m_-8548043190975939072jive-quote
                    m_-8548043190975939072jive_text_macro">
                    <p>root@cl-som-imx8:/home/sefram/debug#
                      gst-launch-1.0 pciesrc do-timestamp=false
                      blocksize=4096 ! queue ! tee ! typefind !
                      aiurdemux</p>
                  </blockquote>
                </div>
              </div>
            </blockquote>
          </div>
        </div>
        <div dir="auto">aiurdemux is the multicontainer demuxer by
          Freescale. I didn't know it was ported to 1.0. It is known to
          have all sort of small glitches. I would suggest to replace it
          by tsdemux. Same API to select the pid. This is the upstream
          demuxer.</div>
        <div dir="auto"><br>
        </div>
        <div dir="auto">Note that normally this type of HW is
          implemented as a V4L2 capture driver, and a source already
          exist, v4l2src. </div>
        <div dir="auto">
          <div class="gmail_quote">
            <blockquote class="gmail_quote" style="margin:0 0 0
              .8ex;border-left:1px #ccc solid;padding-left:1ex">
              <div text="#000000" bgcolor="#FFFFFF">
                <div class="m_-8548043190975939072jive-rendered-content">
                  <blockquote
                    class="m_-8548043190975939072jive_macro_quote
                    m_-8548043190975939072jive-quote
                    m_-8548043190975939072jive_text_macro">
                    <p>program-numberr=5901 name=d ! fakesink
                      async=false<br>
                      0:00:00.409990158 13052       0x7f72d0
                      LOG                aiurdemux
                      aiurdemux.c:478:gst_aiurdemux_init:<GstAiurDemux@0x8202e0>
                      gst_aiurdemux_init<br>
                      Setting pipeline to PAUSED ...<br>
                      0:00:00.413664153 13052       0x7f72d0
                      LOG                aiurdemux
                      aiurdemux.c:519:gst_aiurdemux_change_state:<d>
                      change_state transition=a<br>
                      0:00:00.413973989 13052       0x7f72d0
                      DEBUG              aiurdemux
                      aiurdemux.c:508:gst_aiurdemux_change_state:<d>
                      change_state READY_TO_PAUSED<br>
                      0:00:00.414040469 13052       0x7f72d0
                      LOG                aiurdemux
                      aiurdemux.c:894:aiurdemux_sink_activate:<d:sink>
                      activating push<br>
                      Pipeline is live and does not need PREROLL ...<br>
                      Setting pipeline to PLAYING ...<br>
                      0:00:00.416130963 13052       0x7f72d0
                      LOG                aiurdemux
                      aiurdemux.c:519:gst_aiurdemux_change_state:<d>
                      change_state transition=1c<br>
                      New clock: GstSystemClock<br>
                      0:00:00.417412908 13052       0x8124a0
                      LOG                aiurdemux
                      aiurdemux.c:669:gst_aiurdemux_handle_sink_event:<d>
                      gst_aiurdemux_handle_sink_event event=280e<br>
                      0:00:00.434010267 13052       0x8124a0
                      DEBUG              aiurdemux
                      aiurdemux.c:1082:gst_aiurdemux_setcaps:<d>
                      gst_aiurdemux_setcaps=video/mpegts,
                      systemstream=(boolean)true, packetsize=(int)188<br>
                      <br>
                      ====== AIUR: 4.3.5 build on Jan 21 2019 17:47:10.
                      ======<br>
                              Core: BLN_MAD-MMLAYER_MPG2PARSER_04.05.16 
                      build on Sep 14 2017 02:37:53<br>
                       file:
                      /usr/lib/imx-mm/parser/lib_mpg2_parser_arm_elinux.so.3.1<br>
                      0:00:00.434538141 13052       0x8124a0
                      INFO               aiurdemux
                      aiurdemux.c:1094:gst_aiurdemux_setcaps:<d>
                      Container: MPEG<br>
                      0:00:00.434606900 13052       0x8124a0
                      DEBUG              aiurdemux
                      aiurdemux.c:596:gst_aiurdemux_handle_sink_event:<d>
                      handling new segment from0<br>
                      0:00:00.571159247 13052       0x812280
                      LOG                aiurdemux
                      aiurdemux.c:1197:aiurdemux_loop_state_init:<d>
                      aiurdemux_loop_state_init SUCCESS<br>
                      0:00:00.571239646 13052       0x812280
                      DEBUG              aiurdemux
                      aiurdemux.c:1518:aiurdemux_set_readmode:<d>
                      read mode = track mode<br>
                      0:00:00.571300125 13052       0x812280
                      LOG                aiurdemux
                      aiurdemux.c:1979:aiurdemux_parse_streams:<d>
                      aiurdemux_parse_streams ret=0<br>
                      0:00:00.571578522 13052       0x812280
                      LOG                aiurdemux
                      aiurdemux.c:1308:aiurdemux_loop_state_header:<d>
                      aiurdemux_loop_state_header SUCCESS<br>
                      0:00:00.571616321 13052       0x812280
                      LOG                aiurdemux
                      aiurdemux.c:1313:aiurdemux_loop_state_header:<d>
                      aiurdemux_loop_state_header FAILED<br>
                      0:00:00.571648601 13052       0x812280
                      LOG                aiurdemux
                      aiurdemux.c:1061:aiurdemux_push_task:<d>
                      pausing task, reason error<br>
                      <br>
                      0:00:00.571694320 13052       0x812280
                      WARN               aiurdemux
                      aiurdemux.c:1068:aiurdemux_push_task:<d>
                      error: streaming stopped, reason error, state 2<br>
                      WARNING: from element
                      /GstPipeline:pipeline0/GstAiurDemux:d: Delayed
                      linking failed.<br>
                      Additional debug info:<br>
                      ../../../git/gst/parse/grammar.y(510):
                      gst_parse_no_more_pads ():
                      /GstPipeline:pipeline0/GstAiurDemux:d:<br>
                      failed delayed linking some pad of GstAiurDemux
                      named d to some pad of GstFakeSink named fakesink0<br>
                      ERROR: from element
                      /GstPipeline:pipeline0/GstAiurDemux:d: GStreamer
                      encountered a general stream error.<br>
                      Additional debug info:<br>
                      ../../../git/plugins/aiurdemux/aiurdemux.c(1068):
                      aiurdemux_push_task ():
                      /GstPipeline:pipeline0/GstAiurDemux:d:<br>
                      streaming stopped, reason error, state 2<br>
                      Execution ended after 0:00:00.155683236<br>
                      Setting pipeline to PAUSED ...<br>
                      0:00:00.572143715 13052       0x7f72d0
                      LOG                aiurdemux
                      aiurdemux.c:519:gst_aiurdemux_change_state:<d>
                      change_state transition=23<br>
                      Setting pipeline to READY ...<br>
                      0:00:00.572622629 13052       0x7f72d0
                      LOG                aiurdemux
                      aiurdemux.c:519:gst_aiurdemux_change_state:<d>
                      change_state transition=1a<br>
                      0:00:01.571911494 13052       0x7f72d0
                      DEBUG              aiurdemux
                      aiurdemux.c:528:gst_aiurdemux_change_state:<d>
                      change_state PAUSED_TO_READY<br>
                      Setting pipeline to NULL ...<br>
                      0:00:01.573297478 13052       0x7f72d0
                      LOG                aiurdemux
                      aiurdemux.c:519:gst_aiurdemux_change_state:<d>
                      change_state transition=11<br>
                      Freeing pipeline ...<br>
                      0:00:01.573816591 13052       0x7f72d0
                      LOG                aiurdemux
                      aiurdemux.c:486:gst_aiurdemux_finalize:<d>
                      gst_aiurdemux_finalize</p>
                  </blockquote>
                  <p style="min-height:8pt;padding:0px"> </p>
                  <p>I've recorder this stream . On this stream only
                    program 5902 is working. Others programs gives
                    errors.</p>
                  <p>I just add that reading this file with "filesrc"
                    gives no error on every programs <strong>(it just
                      do many seek before decoding</strong>):</p>
                  <p style="min-height:8pt;padding:0px"> </p>
                  <blockquote
                    class="m_-8548043190975939072jive_macro_quote
                    m_-8548043190975939072jive-quote
                    m_-8548043190975939072jive_text_macro">
                    <p>root@cl-som-imx8:/home/sefram/debug#
                      gst-launch-1.0 filesrc
                      location=/home/sefram/TS/essai.ts ! queue ! tee !
                      typefind ! aiurdemux program-number=5901 name=d !
                      fakesink<br>
                      0:00:00.083554268 13082       0x66e460
                      LOG                aiurdemux
                      aiurdemux.c:478:gst_aiurdemux_init:<GstAiurDemux@0x670270>
                      gst_aiurdemux_init<br>
                      Setting pipeline to PAUSED ...<br>
                      0:00:00.086178037 13082       0x66e460
                      LOG                aiurdemux
                      aiurdemux.c:519:gst_aiurdemux_change_state:<d>
                      change_state transition=a<br>
                      0:00:00.086412994 13082       0x66e460
                      DEBUG              aiurdemux
                      aiurdemux.c:508:gst_aiurdemux_change_state:<d>
                      change_state READY_TO_PAUSED<br>
                      0:00:00.086458473 13082       0x66e460
                      LOG                aiurdemux
                      aiurdemux.c:894:aiurdemux_sink_activate:<d:sink>
                      activating push<br>
                      Pipeline is PREROLLING ...<br>
                      0:00:00.093662346 13082       0x654cf0
                      LOG                aiurdemux
                      aiurdemux.c:669:gst_aiurdemux_handle_sink_event:<d>
                      gst_aiurdemux_handle_sink_event event=280e<br>
                      0:00:00.108879842 13082       0x654cf0
                      DEBUG              aiurdemux
                      aiurdemux.c:1082:gst_aiurdemux_setcaps:<d>
                      gst_aiurdemux_setcaps=video/mpegts,
                      systemstream=(boolean)true, packetsize=(int)188<br>
                      <br>
                      ====== AIUR: 4.3.5 build on Jan 21 2019 17:47:10.
                      ======<br>
                              Core: BLN_MAD-MMLAYER_MPG2PARSER_04.05.16 
                      build on Sep 14 2017 02:37:53<br>
                       file:
                      /usr/lib/imx-mm/parser/lib_mpg2_parser_arm_elinux.so.3.1<br>
                      0:00:00.109289877 13082       0x654cf0
                      INFO               aiurdemux
                      aiurdemux.c:1094:gst_aiurdemux_setcaps:<d>
                      Container: MPEG<br>
                      0:00:00.109348556 13082       0x654cf0
                      DEBUG              aiurdemux
                      aiurdemux.c:608:gst_aiurdemux_handle_sink_event:<d>
                      Pushing newseg  rate 1, format 3, start
                      0:00:00.000000000, stop 99:99:99.999999999<br>
                      0:00:00.109487395 13082       0x654a30
                      DEBUG              aiurdemux
                      aiurcontent.c:576:aiurcontent_query_content_info:
                      can not mkdir /home/root/.aiur<br>
                      0:00:00.132204560 13082       0x654a30
                      DEBUG              aiurdemux
                      aiurcontent.c:351:aiurcontent_callback_seek_push:
                      seek to 0<br>
                      0:00:00.132278479 13082       0x654a30
                      DEBUG              aiurdemux
                      aiurstreamcache.c:340:gst_aiur_stream_cache_seek:
                      Flush cache, backward seek addr 0, cachestart
                      2814646, offset 200010<br>
                      0:00:00.132311118 13082       0x654a30
                      INFO               aiurdemux
                      aiurstreamcache.c:365:gst_aiur_stream_cache_seek:
                      stream cache try seek to 0<br>
                      0:00:01.133119765 13082       0x654cf0
                      DEBUG              aiurdemux
                      aiurdemux.c:608:gst_aiurdemux_handle_sink_event:<d>
                      Pushing newseg  rate 1, format 3, start
                      0:00:00.000000000, stop 99:99:99.999999999<br>
                      0:00:01.179763321 13082       0x654a30
                      DEBUG              aiurdemux
                      aiurcontent.c:351:aiurcontent_callback_seek_push:
                      seek to 0<br>
                      0:00:01.179851879 13082       0x654a30
                      DEBUG              aiurdemux
                      aiurstreamcache.c:340:gst_aiur_stream_cache_seek:
                      Flush cache, backward seek addr 0, cachestart
                      3666614, offset 200010<br>
                      0:00:01.179895199 13082       0x654a30
                      INFO               aiurdemux
                      aiurstreamcache.c:365:gst_aiur_stream_cache_seek:
                      stream cache try seek to 0<br>
                      0:00:02.180303771 13082       0x654cf0
                      DEBUG              aiurdemux
                      aiurdemux.c:608:gst_aiurdemux_handle_sink_event:<d>
                      Pushing newseg  rate 1, format 3, start
                      0:00:00.000000000, stop 99:99:99.999999999<br>
                      0:00:02.182863220 13082       0x654a30
                      DEBUG              aiurdemux
                      aiurcontent.c:351:aiurcontent_callback_seek_push:
                      seek to 130314240<br>
                      0:00:02.182958379 13082       0x654a30
                      INFO               aiurdemux
                      aiurstreamcache.c:365:gst_aiur_stream_cache_seek:
                      stream cache try seek to 130314240<br>
                      0:00:02.183825128 13082       0x654cf0
                      DEBUG              aiurdemux
                      aiurdemux.c:608:gst_aiurdemux_handle_sink_event:<d>
                      Pushing newseg  rate 1, format 3, start
                      0:00:00.130314240, stop 99:99:99.999999999<br>
                      0:00:02.185594987 13082       0x654a30
                      DEBUG              aiurdemux
                      aiurcontent.c:351:aiurcontent_callback_seek_push:
                      seek to 130052096<br>
                      0:00:02.185642026 13082       0x654a30
                      DEBUG              aiurdemux
                      aiurstreamcache.c:340:gst_aiur_stream_cache_seek:
                      Flush cache, backward seek addr 130052096,
                      cachestart 130314240, offset 131072<br>
                      0:00:02.185683666 13082       0x654a30
                      INFO               aiurdemux
                      aiurstreamcache.c:365:gst_aiur_stream_cache_seek:
                      stream cache try seek to 130052096<br>
                      0:00:02.186139900 13082       0x654cf0
                      DEBUG              aiurdemux
                      aiurdemux.c:608:gst_aiurdemux_handle_sink_event:<d>
                      Pushing newseg  rate 1, format 3, start
                      0:00:00.130052096, stop 99:99:99.999999999<br>
                      0:00:02.192078748 13082       0x654a30
                      DEBUG              aiurdemux
                      aiurcontent.c:351:aiurcontent_callback_seek_push:
                      seek to 0<br>
                      0:00:02.192145227 13082       0x654a30
                      DEBUG              aiurdemux
                      aiurstreamcache.c:340:gst_aiur_stream_cache_seek:
                      Flush cache, backward seek addr 0, cachestart</p>
                  </blockquote>
                  <p style="min-height:8pt;padding:0px"> </p>
                  <p>I hope somebody could help me because i don't
                    really understand the problem. My custom plugin
                    should be bad...I can send my source code if someone
                    can look at it.<br>
                  </p>
                  <p style="min-height:8pt;padding:0px"> </p>
                  <p>BR</p>
                  <p style="min-height:8pt;padding:0px"> </p>
                  <p>Frédéric</p>
                </div>
              </div>
              _______________________________________________<br>
              gstreamer-devel mailing list<br>
              <a href="mailto:gstreamer-devel@lists.freedesktop.org"
                target="_blank" rel="noreferrer" moz-do-not-send="true">gstreamer-devel@lists.freedesktop.org</a><br>
              <a
                href="https://lists.freedesktop.org/mailman/listinfo/gstreamer-devel"
                rel="noreferrer noreferrer" target="_blank"
                moz-do-not-send="true">https://lists.freedesktop.org/mailman/listinfo/gstreamer-devel</a></blockquote>
          </div>
        </div>
      </div>
      <br>
      <fieldset class="mimeAttachmentHeader"></fieldset>
      <pre class="moz-quote-pre" wrap="">_______________________________________________
gstreamer-devel mailing list
<a class="moz-txt-link-abbreviated" href="mailto:gstreamer-devel@lists.freedesktop.org">gstreamer-devel@lists.freedesktop.org</a>
<a class="moz-txt-link-freetext" href="https://lists.freedesktop.org/mailman/listinfo/gstreamer-devel">https://lists.freedesktop.org/mailman/listinfo/gstreamer-devel</a></pre>
    </blockquote>
  </body>
</html>