Jump to content

jerryg

Members
  • Posts

    11
  • Joined

  • Last visited

Posts posted by jerryg

  1. On 2/2/2020 at 3:54 AM, balbes150 said:

    What does no sound mean ? I have an HDMI sound that works perfectly with the DTB nanopc-t4.

     

    Sorry about that. I was imprecise. Tested HDMI sound this morning and it works perfectly. The 3.5mm jack is completely missing though. Not even listed in the alsamixer UI. As mentioned previously, this is not an issue.

    I will try the nvme install this week-end.

  2. Having issues with the NVMe drive with this unified boot process (the FriendlyDesktop image for the NanoPC T4 is able to see the drive, so it is not a hardware issue). I wrote the u-boot-rk3399-tv.img to the SD card, but I am getting:

    jerryg@arm:~$ dmesg | grep pcie
    [   20.489985] rockchip-pcie f8000000.pcie: no vpcie12v regulator found
    [   26.398329] rockchip-pcie f8000000.pcie: no vpcie12v regulator found
    [   26.925369] rockchip-pcie f8000000.pcie: PCIe link training gen1 timeout!
    [   26.926462] rockchip-pcie: probe of f8000000.pcie failed with error -110
    

    Googling for similar issues seem to indicate that the PCIe bus needs to be powered-on by u-boot in order for the device to be ready when the kernel inits the rockchip-pcie component. What can I do?

  3. I was actually looking at both encoding and decoding. For decoding, the kernel state can be found here:

    https://github.com/torvalds/linux/blob/v5.5-rc2/drivers/staging/media/hantro/rk3399_vpu_hw.c#L64

    Notice the .fourcc is: V4L2_PIX_FMT_MPEG2_SLICE

    While GStreamer will expect V4L2_PIX_FMT_MPEG2 (notice the missing _SLICE)

    Here: https://github.com/GStreamer/gst-plugins-good/blob/66351255f7491a066ac69c49bf6f3bff6d35cd88/sys/v4l2/gstv4l2object.c#L1413

     

    I see similar differences for H264 and VP8 decoding.

     

    My guess at this point is that the hantro_vpu driver is providing low-level support for decoding, and that the full decoding that used to be found in the firmware blobs is yet to be submitted. See this thread for other interesting bits: https://forum.armbian.com/topic/4806-the-vpu-driver/

     

  4. On 12/30/2019 at 2:44 PM, usual user said:

    For all mainline v4l2 supported devices hardware accelerated video pipelines already work with the gstreamer1 framework. I.e. using a gstreamer based media player will make use of v4l2 codecs and other components like e.g scalers.

    Yes, but it seems the hantro_vpu module is a little too barebones at this point in time. Gstreamer will auto-detect what is available, and so far in kernel 5.5-rc2, we only have JPEG encoding supported. Stay tuned for further modules appearing as support improves.

    jerryg@arm:~$ gst-inspect-1.0 --plugin /usr/lib/aarch64-linux-gnu/gstreamer-1.0/libgstvideo4linux2.so
    Plugin Details:
      Name                     video4linux2
      Description              elements for Video 4 Linux
      Filename                 /usr/lib/aarch64-linux-gnu/gstreamer-1.0/libgstvideo4linux2.so
      Version                  1.16.1
      License                  LGPL
      Source module            gst-plugins-good
      Source release date      2019-09-23
      Binary package           GStreamer Good Plugins (Ubuntu)
      Origin URL               https://launchpad.net/distros/ubuntu/+source/gst-plugins-good1.0
    
      v4l2jpegenc: V4L2 JPEG Encoder
      v4l2deviceprovider: Video (video4linux2) Device Provider
      v4l2radio: Radio (video4linux2) Tuner
      v4l2sink: Video (video4linux2) Sink
      v4l2src: Video (video4linux2) Source
    
      5 features:
      +-- 4 elements
      +-- 1 device providers
    

    Cranking the verbosity shows that the decoders are not yet providing a format that GStreamer can use:

    0:00:10.653199799  8177 0xaaaac7b94200 LOG                     v4l2 gstv4l2.c:92:gst_v4l2_probe_template_caps: description: 'H.264 Parsed Slice Data'
    0:00:10.653231882  8177 0xaaaac7b94200 LOG                     v4l2 gstv4l2.c:93:gst_v4l2_probe_template_caps: pixelformat: S264
    0:00:10.653267756  8177 0xaaaac7b94200 DEBUG                   v4l2 gstv4l2object.c:1556:gst_v4l2_object_v4l2fourcc_to_bare_struct: Unsupported fourcc 0x34363253 S264
    0:00:10.653383255  8177 0xaaaac7b94200 LOG                     v4l2 gstv4l2.c:92:gst_v4l2_probe_template_caps: description: 'MPEG-2 Parsed Slice Data'
    0:00:10.653413588  8177 0xaaaac7b94200 LOG                     v4l2 gstv4l2.c:93:gst_v4l2_probe_template_caps: pixelformat: MG2S
    0:00:10.653446838  8177 0xaaaac7b94200 DEBUG                   v4l2 gstv4l2object.c:1556:gst_v4l2_object_v4l2fourcc_to_bare_struct: Unsupported fourcc 0x5332474d MG2S
    0:00:10.653556795  8177 0xaaaac7b94200 LOG                     v4l2 gstv4l2.c:92:gst_v4l2_probe_template_caps: description: 'VP8 Frame'
    0:00:10.653586253  8177 0xaaaac7b94200 LOG                     v4l2 gstv4l2.c:93:gst_v4l2_probe_template_caps: pixelformat: VP8F
    0:00:10.653618919  8177 0xaaaac7b94200 DEBUG                   v4l2 gstv4l2object.c:1556:gst_v4l2_object_v4l2fourcc_to_bare_struct: Unsupported fourcc 0x46385056 VP8F
    

    So we will have to wait until the module provides H264, VP80, and MPG2 pixelformats or until GStreamer learns to use S264, MG2S and VP8F formats.

  5. Well, `mpv --vo=gpu --hwdec=yes --hwdec-codecs=all -v` shows no HW decoding for a MPEG2 video, so there might still be something missing:

    Quote

    [vd] Using underlying hw-decoder 'mpeg2_v4l2m2m'                                                                                                            
    [ffmpeg/video] mpeg2_v4l2m2m: driver 'hantro-vpu' on card 'rockchip,rk3399-vpu-dec'                                                                         
    [ffmpeg/video] mpeg2_v4l2m2m: driver 'hantro-vpu' on card 'rockchip,rk3399-vpu-enc'                                                                         
    [ffmpeg/video] mpeg2_v4l2m2m: driver 'rockchip-rga' on card 'rockchip-rga'                                                                                  
    [ffmpeg/video] mpeg2_v4l2m2m: Could not find a valid device                                                                                                 
    [ffmpeg/video] mpeg2_v4l2m2m: can't configure decoder                                                                                                       
    [vd] Could not open codec.                                                                                                                                  
    [vd] Falling back to software decoding.

    Same for a VP8 video. I will have to see if I can get gstreamer to go further.

  6. 32 minutes ago, NicoD said:

    I'll check it out. Seems also vdpau is supported. So maybe/hopefully it could make video to work well in mainline. 

     

    The support for the Hantro G1 VPU is implemented via video4linux2 (See Collabora's efforts: https://www.collabora.com/news-and-blog/news-and-events/linux-kernel-5.4.html) I don't think vdpau will help.

     

    With kernel 5.5, native mpv playback of mpeg-2/VP8/VP9 seems to work well at 24fps, but skips frames at 60fps trying to output thru x11. The OpenGL ES playback is slower (--vo=gpu --gpu-api=opengl --opengl-es=yes), so there might still be work to be done to hand decoded frames to the GPU. I will run a few more tests using youtube-dl.

  7. Built latest dev branch on Vagrant. No bluetooth :(

     

    The hci_uart module is running, but it is not talking to any hci module.

     

    The dmesg output seems to be missing lines along:

    [    6.957330] Bluetooth: hci0: BCM: chip id 101
    [    6.957644] Bluetooth: hci0: BCM: features 0x2f
    [    6.961779] Bluetooth: hci0: BCM4354A2
    [    6.961788] Bluetooth: hci0: BCM4356A2 (001.003.015) build 0000
    [    7.965063] Bluetooth: hci0: BCM4356A2 (001.003.015) build 0266

    Maybe not that exact chip since the DTS in latest kernel talks about a bcm43438.

     

    Did I miss something in my build command line? Am I missing some firmware?

     

    compile.sh KERNEL_ONLY=no KERNEL_CONFIGURE=no BUILD_DESKTOP=yes BOARD=nanopct4  BRANCH=dev RELEASE=bionic
    

     

×
×
  • Create New...

Important Information

Terms of Use - Privacy Policy - Guidelines