PINE64
how can use "mppvideodec" with gstreamer - Printable Version

+- PINE64 (https://forum.pine64.org)
+-- Forum: ROCK64 (https://forum.pine64.org/forumdisplay.php?fid=85)
+--- Forum: Linux on Rock64 (https://forum.pine64.org/forumdisplay.php?fid=88)
+--- Thread: how can use "mppvideodec" with gstreamer (/showthread.php?tid=6972)



how can use "mppvideodec" with gstreamer - kishanpatel - 12-19-2018

Hello, 
        Actually i am using rockpro64(rk3399) board. I have flashed bionoc-ubuntu-64bit image. 
UI can see "mppvideodec" plugins when execute "gst-inspect-1.0 |grep mpp" command. 

But, when i tried to use "mmpvideodec" in gstreamer,k i got some errors as below: 

Setting pipeline to PAUSED ... 
mpi: mpp version: Without VCS, under bleeding 
Pipeline is live and does not need PREROLL ... 
Got context from element 'autovideosink0': gst.gl.GLDisplay=context, gst.gl.GLDisplay=(GstGLDisplay)"\(GstGLDisplayX11\)\ gldisplayx11-0"; 
Setting pipeline to PLAYING ... 
New clock: GstSystemClock 
hal_h264d_api: Assertion p_hal->vcodec_type & ((0x00000200) | (0x00000001) | (0x00000002)) failed at hal_h264d_init:186 
mpp_device: mpp_device_init failed to find device for coding 0 type 7 
hal_h264d_api: p_hal->vpu_socket <= 0 
mpp_hal: mpp_hal_init hal h264d_rkdec init failed ret -2 
mpp_hal: mpp_hal_init could not found coding type 7 
mpp_dec: mpp_dec_init could not init hal 
mpp: error found on mpp initialization 
ERROR: from element /GstPipeline:pipeline0/GstV4l2Src:v4l2src0: Internal data stream error. 
Additional debug info: 
gstbasesrc.c(3055): gst_base_src_loop (): /GstPipeline:pipeline0/GstV4l2Src:v4l2src0: 
streaming stopped, reason error (-5) 
Execution ended after 0:00:00.349876884 
Setting pipeline to PAUSED ... 
Setting pipeline to READY ... 
Setting pipeline to NULL ... 
Freeing pipeline ... 


I have tried pipeline as below: 
1. gst-launch-1.0 v4l2src device=/dev/video0 ! mppvideodec ! autovideosink 
2. gst-launch-1.0 -v rtspsrc location=rtsp://admin:jenex#2018@192.168.1.108:554 latency=10 ! rtph264depay ! h264parse ! mppvideodec ! videoconvert ! autovideosink sync=false 

Moreover, what is the meaning of "none" in below output: 
----------------------------------------------------------------------------------- 
rock64@rockpro64:~$ apt-cache policy linux-rock64-package 
linux-rock64-package: 
  Installed: (none) 
  Candidate: 0.7-24 
  Version table: 
     0.7-24 500 
        500 http://deb.ayufan.eu/orgs/ayufan-rock64/releases  Packages 
     0.6.44 500 
        500 http://deb.ayufan.eu/orgs/ayufan-rock64/releases  Packages 
     0.5.15 500 
        500 http://deb.ayufan.eu/orgs/ayufan-rock64/releases  Packages 
     0.5.10 500 
        500 http://deb.ayufan.eu/orgs/ayufan-rock64/releases  Packages 
     0.5.9 500 
        500 http://deb.ayufan.eu/orgs/ayufan-rock64/releases  Packages 
     0.5.8 500 
        500 http://deb.ayufan.eu/orgs/ayufan-rock64/releases  Packages 
     0.4.17 500 
        500 http://deb.ayufan.eu/orgs/ayufan-rock64/releases  Packages 
     0.4.16 500 
        500 http://deb.ayufan.eu/orgs/ayufan-rock64/releases  Packages 
     0.4.12 500 
        500 http://deb.ayufan.eu/orgs/ayufan-rock64/releases  Packages 
     0.4.3 500 
        500 http://deb.ayufan.eu/orgs/ayufan-rock64/releases  Packages 
     0.3.7 500 
        500 http://deb.ayufan.eu/orgs/ayufan-rock64/releases  Packages 
     0.3.4 500 
        500 http://deb.ayufan.eu/orgs/ayufan-rock64/releases  Packages 
     0.3.3 500 
        500 http://deb.ayufan.eu/orgs/ayufan-rock64/releases  Packages 
     0.3.2 500 
        500 http://deb.ayufan.eu/orgs/ayufan-rock64/releases  Packages 
     0.2.1 500 
        500 http://deb.ayufan.eu/orgs/ayufan-rock64/releases  Packages 

Thanks & Regards, 
Kishan Patel.


RE: how can use "mppvideodec" with gstreamer - tllim - 12-24-2018

(12-19-2018, 06:12 AM)kishanpatel Wrote: Hello, 
        Actually i am using rockpro64(rk3399) board. I have flashed bionoc-ubuntu-64bit image. 
UI can see "mppvideodec" plugins when execute "gst-inspect-1.0 |grep mpp" command. 

But, when i tried to use "mmpvideodec" in gstreamer,k i got some errors as below: 

Setting pipeline to PAUSED ... 
mpi: mpp version: Without VCS, under bleeding 
Pipeline is live and does not need PREROLL ... 
Got context from element 'autovideosink0': gst.gl.GLDisplay=context, gst.gl.GLDisplay=(GstGLDisplay)"\(GstGLDisplayX11\)\ gldisplayx11-0"; 
Setting pipeline to PLAYING ... 
New clock: GstSystemClock 
hal_h264d_api: Assertion p_hal->vcodec_type & ((0x00000200) | (0x00000001) | (0x00000002)) failed at hal_h264d_init:186 
mpp_device: mpp_device_init failed to find device for coding 0 type 7 
hal_h264d_api: p_hal->vpu_socket <= 0 
mpp_hal: mpp_hal_init hal h264d_rkdec init failed ret -2 
mpp_hal: mpp_hal_init could not found coding type 7 
mpp_dec: mpp_dec_init could not init hal 
mpp: error found on mpp initialization 
ERROR: from element /GstPipeline:pipeline0/GstV4l2Src:v4l2src0: Internal data stream error. 
Additional debug info: 
gstbasesrc.c(3055): gst_base_src_loop (): /GstPipeline:pipeline0/GstV4l2Src:v4l2src0: 
streaming stopped, reason error (-5) 
Execution ended after 0:00:00.349876884 
Setting pipeline to PAUSED ... 
Setting pipeline to READY ... 
Setting pipeline to NULL ... 
Freeing pipeline ... 


I have tried pipeline as below: 
1. gst-launch-1.0 v4l2src device=/dev/video0 ! mppvideodec ! autovideosink 
2. gst-launch-1.0 -v rtspsrc location=rtsp://admin:jenex#2018@192.168.1.108:554 latency=10 ! rtph264depay ! h264parse ! mppvideodec ! videoconvert ! autovideosink sync=false 

Moreover, what is the meaning of "none" in below output: 
----------------------------------------------------------------------------------- 
rock64@rockpro64:~$ apt-cache policy linux-rock64-package 
linux-rock64-package: 
  Installed: (none) 
  Candidate: 0.7-24 
  Version table: 
     0.7-24 500 
        500 http://deb.ayufan.eu/orgs/ayufan-rock64/releases  Packages 
     0.6.44 500 
        500 http://deb.ayufan.eu/orgs/ayufan-rock64/releases  Packages 
     0.5.15 500 
        500 http://deb.ayufan.eu/orgs/ayufan-rock64/releases  Packages 
     0.5.10 500 
        500 http://deb.ayufan.eu/orgs/ayufan-rock64/releases  Packages 
     0.5.9 500 
        500 http://deb.ayufan.eu/orgs/ayufan-rock64/releases  Packages 
     0.5.8 500 
        500 http://deb.ayufan.eu/orgs/ayufan-rock64/releases  Packages 
     0.4.17 500 
        500 http://deb.ayufan.eu/orgs/ayufan-rock64/releases  Packages 
     0.4.16 500 
        500 http://deb.ayufan.eu/orgs/ayufan-rock64/releases  Packages 
     0.4.12 500 
        500 http://deb.ayufan.eu/orgs/ayufan-rock64/releases  Packages 
     0.4.3 500 
        500 http://deb.ayufan.eu/orgs/ayufan-rock64/releases  Packages 
     0.3.7 500 
        500 http://deb.ayufan.eu/orgs/ayufan-rock64/releases  Packages 
     0.3.4 500 
        500 http://deb.ayufan.eu/orgs/ayufan-rock64/releases  Packages 
     0.3.3 500 
        500 http://deb.ayufan.eu/orgs/ayufan-rock64/releases  Packages 
     0.3.2 500 
        500 http://deb.ayufan.eu/orgs/ayufan-rock64/releases  Packages 
     0.2.1 500 
        500 http://deb.ayufan.eu/orgs/ayufan-rock64/releases  Packages 

Thanks & Regards, 
Kishan Patel.

You can get to Linux-Rockchip freenode IRC and ping "ayaka", he is deep knowladge of Rockchip MPP and also involve on GStreamer.