Jump to content

Vittorio Mori

Members
  • Posts

    15
  • Joined

  • Last visited

Reputation Activity

  1. Like
    Vittorio Mori got a reaction from jock in CSC Armbian for RK322x TV box boards   
    @primoitt: @ilmich solved it for me by compiling a libreleec 11 build with mpv binary included- Everything works, h264/hevc/mpeg2 ..... brilliant.
  2. Like
    Vittorio Mori got a reaction from MattWestB in CSC Armbian for RK322x TV box boards   
    @primoitt: @ilmich solved it for me by compiling a libreleec 11 build with mpv binary included- Everything works, h264/hevc/mpeg2 ..... brilliant.
  3. Like
    Vittorio Mori got a reaction from primoitt in CSC Armbian for RK322x TV box boards   
    @primoitt: @ilmich solved it for me by compiling a libreleec 11 build with mpv binary included- Everything works, h264/hevc/mpeg2 ..... brilliant.
  4. Like
    Vittorio Mori got a reaction from fabiobassa in CSC Armbian for RK322x TV box boards   
    @primoitt: @ilmich solved it for me by compiling a libreleec 11 build with mpv binary included- Everything works, h264/hevc/mpeg2 ..... brilliant.
  5. Like
    Vittorio Mori reacted to primoitt in CSC Armbian for RK322x TV box boards   
    Hey @Vittorio Mori
     
    If you need only H265 decoding, try this:
     
    Focal Legacy 4.4.194
    https://users.armbian.com/jock/rk322x/armbian/stable/

    @jock 's media framework
     
    ffmpeg -decoders |grep mpp V..... h264_rkmpp h264 (rkmpp) (codec h264) V..... hevc_rkmpp hevc (rkmpp) (codec hevc) V..... vp8_rkmpp vp8 (rkmpp) (codec vp8) V..... vp9_rkmpp vp9 (rkmpp) (codec vp9)  
    For testing:
     
    wget https://test-videos.co.uk/vids/bigbuckbunny/mp4/h265/1080/Big_Buck_Bunny_1080_10s_30MB.mp4 mv Big_Buck_Bunny_1080_10s_30MB.mp4 Big_Buck_Bunny_1080_10s_30MB_h265.mp4 ffmpeg -benchmark -loglevel debug -hwaccel drm -hwaccel_device /dev/dri/renderD128 -c:v hevc_rkmpp -i Big_Buck_Bunny_1080_10s_30MB_h265.mp4 -f null -  
    VP8, VP9 and H265 works
     
    H264 not working..
     
    Encoding is not working...
     
    ffmpeg -encoders |grep mpp  
     
     
     
     
     
  6. Like
    Vittorio Mori reacted to jock in CSC Armbian for RK322x TV box boards   
    @Vittorio Mori Hardware video decoding is available since kernel 5.10 on armbian, thanks to libreelec patches, but the userland part is a bit worrysome.
    You can try with this, but it is a very old post and very old binaries that probably don't work on recent kernel because it is more than one year old.
     
    The problem is that ffmpeg never really stabilized the v4l2-request kernel api, thus you have to compile the libreelec patches version and then supply the static libraries to mpv to gain hardware video decoding via v4l2-request.
     
    I don't know if recent ffmpeg 6.0 release include working support for v4l2-request or there is the need to still use the libreelec patched version.
  7. Like
    Vittorio Mori got a reaction from vhick in CSC Armbian for RK322x TV box boards   
    I have uploaded the OpenWRT-22.03-rc6 image for rk322x on my google drive here's the link:
     
    https://drive.google.com/file/d/1MxEDd1COSNiQDrocZLgSscracWDXdVqT/view?usp=sharing


    NOTES/INSTRUCTIONS:

    The .dtb for booting is the GENERIC rk3229 from LibreELEC made by @ilmich.
    Other .dtb files are in the FIRST PARTITION (fat32/boot) of the image. Copy & overwrite the one you prefer to rk322x-box.dtb. i.e.:

    Once the box has booted, enter the console via an attached keyboard and:

    mount /dev/mmcblk0p1 /mnt
    cp /mnt/<name of the dtb you prefer>.dtb /mnt/rk322x-box.dtb
    umount /mnt
    reboot

    The .dtb files are fom LIbreELEC 10 - check this post

    https://forum.libreelec.tv/thread/25236-unofficial-rk3228-rk3229-libreelec-10-x-builds/

    on "supported devices" for names/clock etc.

     ON FIRST BOOT the eth0 (br-lan) interface has default IP to 192.168.1.1

    SOMETIMES ON FIRST BOOT - AND ONLY FIRST ONE - eth0 gets "stuck" and does not respond: to make it work just enter the console with an attached keyboard and do a

    ping 192.168.1.xxx

    with xxx as a "live" host on your network: after a couple of pings the interface responds. It happened to me a couple of times, just on FIRST BOOT. Once you configure the interface in OpenWRT everything is ok.

    Point your browser to 192.168.1.1, configure OpenWRT.

    P.S. obviously you have to configure br-lan with an appropriate gateway/dns to install/upgrade packages.

    Check OpenWRT docs if in doubt.

    WIFI is disabled by default: to enable it, do :

    echo <name of wifi module> > /etc/modules.d/<name of wifi module>

    example:

    echo ssv6051 > /etc/modules.d/ssv6051

    (do not enable ssv6051: for some reason it slows down everything)


    Enjoy.
     
  8. Like
    Vittorio Mori got a reaction from remlei in CSC Armbian for RK322x TV box boards   
    I have uploaded the OpenWRT-22.03-rc6 image for rk322x on my google drive here's the link:
     
    https://drive.google.com/file/d/1MxEDd1COSNiQDrocZLgSscracWDXdVqT/view?usp=sharing


    NOTES/INSTRUCTIONS:

    The .dtb for booting is the GENERIC rk3229 from LibreELEC made by @ilmich.
    Other .dtb files are in the FIRST PARTITION (fat32/boot) of the image. Copy & overwrite the one you prefer to rk322x-box.dtb. i.e.:

    Once the box has booted, enter the console via an attached keyboard and:

    mount /dev/mmcblk0p1 /mnt
    cp /mnt/<name of the dtb you prefer>.dtb /mnt/rk322x-box.dtb
    umount /mnt
    reboot

    The .dtb files are fom LIbreELEC 10 - check this post

    https://forum.libreelec.tv/thread/25236-unofficial-rk3228-rk3229-libreelec-10-x-builds/

    on "supported devices" for names/clock etc.

     ON FIRST BOOT the eth0 (br-lan) interface has default IP to 192.168.1.1

    SOMETIMES ON FIRST BOOT - AND ONLY FIRST ONE - eth0 gets "stuck" and does not respond: to make it work just enter the console with an attached keyboard and do a

    ping 192.168.1.xxx

    with xxx as a "live" host on your network: after a couple of pings the interface responds. It happened to me a couple of times, just on FIRST BOOT. Once you configure the interface in OpenWRT everything is ok.

    Point your browser to 192.168.1.1, configure OpenWRT.

    P.S. obviously you have to configure br-lan with an appropriate gateway/dns to install/upgrade packages.

    Check OpenWRT docs if in doubt.

    WIFI is disabled by default: to enable it, do :

    echo <name of wifi module> > /etc/modules.d/<name of wifi module>

    example:

    echo ssv6051 > /etc/modules.d/ssv6051

    (do not enable ssv6051: for some reason it slows down everything)


    Enjoy.
     
  9. Like
    Vittorio Mori got a reaction from fabiobassa in CSC Armbian for RK322x TV box boards   
    I have uploaded the OpenWRT-22.03-rc6 image for rk322x on my google drive here's the link:
     
    https://drive.google.com/file/d/1MxEDd1COSNiQDrocZLgSscracWDXdVqT/view?usp=sharing


    NOTES/INSTRUCTIONS:

    The .dtb for booting is the GENERIC rk3229 from LibreELEC made by @ilmich.
    Other .dtb files are in the FIRST PARTITION (fat32/boot) of the image. Copy & overwrite the one you prefer to rk322x-box.dtb. i.e.:

    Once the box has booted, enter the console via an attached keyboard and:

    mount /dev/mmcblk0p1 /mnt
    cp /mnt/<name of the dtb you prefer>.dtb /mnt/rk322x-box.dtb
    umount /mnt
    reboot

    The .dtb files are fom LIbreELEC 10 - check this post

    https://forum.libreelec.tv/thread/25236-unofficial-rk3228-rk3229-libreelec-10-x-builds/

    on "supported devices" for names/clock etc.

     ON FIRST BOOT the eth0 (br-lan) interface has default IP to 192.168.1.1

    SOMETIMES ON FIRST BOOT - AND ONLY FIRST ONE - eth0 gets "stuck" and does not respond: to make it work just enter the console with an attached keyboard and do a

    ping 192.168.1.xxx

    with xxx as a "live" host on your network: after a couple of pings the interface responds. It happened to me a couple of times, just on FIRST BOOT. Once you configure the interface in OpenWRT everything is ok.

    Point your browser to 192.168.1.1, configure OpenWRT.

    P.S. obviously you have to configure br-lan with an appropriate gateway/dns to install/upgrade packages.

    Check OpenWRT docs if in doubt.

    WIFI is disabled by default: to enable it, do :

    echo <name of wifi module> > /etc/modules.d/<name of wifi module>

    example:

    echo ssv6051 > /etc/modules.d/ssv6051

    (do not enable ssv6051: for some reason it slows down everything)


    Enjoy.
     
  10. Like
    Vittorio Mori got a reaction from fabiobassa in CSC Armbian for RK322x TV box boards   
    Since I'm not really a developer but a Linux System Administrator with hacky tendencies, that's what I usually do to use different Linux-es on these rk322x boxes:

    - I use MultiTool to burn a .. Multitool image on the internal flash of the box, so I get a fat32 uboot/extlinux partition that boots

    - I boot from Multitool again, drop to a shell and repartition the internal flash w fdisk, then I modify the extlinux.conf with the kernel boot parameters I need (kernel, initrd, dtb ..)

    In OpenWRT case it was pretty easy: it has no initrd, and it's as bare-bone as it can be: you just have to add a line "init=/sbin/init" to the kernel line and youre basically good to go.

    The challenge was to find a suitable arch: rpi2b (bcm 2709) is the perfect match i.e.: arm_cortex-a7_neon-vfpv4:

    So I grabbed the .img from OpenWRT, put it into the multitool SD card, mounted it with a loop device, and did a simple "cp -R" of the whole sys partition to the second partition of the internal flash.

    Then I extracted a 5.16.11-rk322x kernel & modules & firmware from bullseye-minimal build from @jock, and copied them into /lib.

    The next step was to find a suitable .dtb to boot: I used @ilmich dtbs from his LIbreELEC 10.0 builds, since they worked beautifully in the tvboxes rk3228a/rev 3.1 I own.

    Then I modified the /etc/modules.d files of OpenWRT to load proper modules for the rk322x board: wifi, thermal, etc.

    Then I added the bootup "hardware-optimization" armbian script, just to optimize things further, IRQ routing, eth0 queues etc.

    Sync & reboot: OpenWRT is up & running, awaiting connection on default address 192.168.1.1 on the ethernet port.

    All packages work, kmods are simply written in the wrong directory inside /lib/modules but the kernel gets them from the right place /lib/modules/$(uname -r) so in practice everything is 100% OK, as long as the modules are present. I copied ALL the modules since I have a lot of free space in the internal flash, it's a full ext4 install, not a squashfs rootfs.

    Even updates are OK.

    I'm fine-tuning some parameters, then I'll add link to the .gz image, ready to flash w Multitool, later today.






     
  11. Like
    Vittorio Mori got a reaction from jock in CSC Armbian for RK322x TV box boards   
    Today I assembled a fully working image of OpenWRT 22.03.0  for this rk322x tvbox.

    It's a patchwork/mix from multitool/debian kernel 5.16.11 and the userland from the latest OpenWRT I could find for raspberry PI 2/B (same cpu arch):

    OpenWrt 22.03.0-rc6 r19590-042d558536 / LuCI openwrt-22.03 branch git-22.213.35949-d09fbe0

    I've tested wireguard/vxlan/wifi, all working nice (wireless AP too, much to my surprise!).

    You can turn this (rather old for 2022) TVBOX into an extremely capable router with a nice www interface (too bad for the 100Mbit LAN port...). I guess you can add some more ethernet interfaces using USB ports, but do not expect too much on the performance side.

    The best way to add ethernet ports for these devices is a managed switch, so you can use VLANs (€20 for a cheap 5 ports on Amazon).

    Speed of wireguard VPN is quite nice (around 70Mbps on iperf3).

    If anyone is interested I can post the link for the image (flashable via multitool).

    It was - as usual -  painful, but  a nice challenge.

    edit:
    I had to do this because there are no OpenWRT releases for rockchip/32bit armv7: arm64 builds for Rockchip 3318/3328 are officially available.

     

  12. Like
    Vittorio Mori got a reaction from RaptorSDS in CSC Armbian for RK322x TV box boards   
    Today I assembled a fully working image of OpenWRT 22.03.0  for this rk322x tvbox.

    It's a patchwork/mix from multitool/debian kernel 5.16.11 and the userland from the latest OpenWRT I could find for raspberry PI 2/B (same cpu arch):

    OpenWrt 22.03.0-rc6 r19590-042d558536 / LuCI openwrt-22.03 branch git-22.213.35949-d09fbe0

    I've tested wireguard/vxlan/wifi, all working nice (wireless AP too, much to my surprise!).

    You can turn this (rather old for 2022) TVBOX into an extremely capable router with a nice www interface (too bad for the 100Mbit LAN port...). I guess you can add some more ethernet interfaces using USB ports, but do not expect too much on the performance side.

    The best way to add ethernet ports for these devices is a managed switch, so you can use VLANs (€20 for a cheap 5 ports on Amazon).

    Speed of wireguard VPN is quite nice (around 70Mbps on iperf3).

    If anyone is interested I can post the link for the image (flashable via multitool).

    It was - as usual -  painful, but  a nice challenge.

    edit:
    I had to do this because there are no OpenWRT releases for rockchip/32bit armv7: arm64 builds for Rockchip 3318/3328 are officially available.

     

  13. Like
    Vittorio Mori got a reaction from MattWestB in CSC Armbian for RK322x TV box boards   
    Today I assembled a fully working image of OpenWRT 22.03.0  for this rk322x tvbox.

    It's a patchwork/mix from multitool/debian kernel 5.16.11 and the userland from the latest OpenWRT I could find for raspberry PI 2/B (same cpu arch):

    OpenWrt 22.03.0-rc6 r19590-042d558536 / LuCI openwrt-22.03 branch git-22.213.35949-d09fbe0

    I've tested wireguard/vxlan/wifi, all working nice (wireless AP too, much to my surprise!).

    You can turn this (rather old for 2022) TVBOX into an extremely capable router with a nice www interface (too bad for the 100Mbit LAN port...). I guess you can add some more ethernet interfaces using USB ports, but do not expect too much on the performance side.

    The best way to add ethernet ports for these devices is a managed switch, so you can use VLANs (€20 for a cheap 5 ports on Amazon).

    Speed of wireguard VPN is quite nice (around 70Mbps on iperf3).

    If anyone is interested I can post the link for the image (flashable via multitool).

    It was - as usual -  painful, but  a nice challenge.

    edit:
    I had to do this because there are no OpenWRT releases for rockchip/32bit armv7: arm64 builds for Rockchip 3318/3328 are officially available.

     

  14. Like
    Vittorio Mori got a reaction from fabiobassa in CSC Armbian for RK322x TV box boards   
    Today I assembled a fully working image of OpenWRT 22.03.0  for this rk322x tvbox.

    It's a patchwork/mix from multitool/debian kernel 5.16.11 and the userland from the latest OpenWRT I could find for raspberry PI 2/B (same cpu arch):

    OpenWrt 22.03.0-rc6 r19590-042d558536 / LuCI openwrt-22.03 branch git-22.213.35949-d09fbe0

    I've tested wireguard/vxlan/wifi, all working nice (wireless AP too, much to my surprise!).

    You can turn this (rather old for 2022) TVBOX into an extremely capable router with a nice www interface (too bad for the 100Mbit LAN port...). I guess you can add some more ethernet interfaces using USB ports, but do not expect too much on the performance side.

    The best way to add ethernet ports for these devices is a managed switch, so you can use VLANs (€20 for a cheap 5 ports on Amazon).

    Speed of wireguard VPN is quite nice (around 70Mbps on iperf3).

    If anyone is interested I can post the link for the image (flashable via multitool).

    It was - as usual -  painful, but  a nice challenge.

    edit:
    I had to do this because there are no OpenWRT releases for rockchip/32bit armv7: arm64 builds for Rockchip 3318/3328 are officially available.

     

  15. Like
    Vittorio Mori got a reaction from MattWestB in CSC Armbian for RK322x TV box boards   
    Thanks for your suggestion.

    Much to my amazement network boot works pretty well: I managed to boot Alpine Linux via a modified init script that gets its rootfs from an AoE target.

    I did all the debugging via tcpdump fron another system, avoiding using a serial console, and zapped the mmbclk2 partition via the usual fdisk utility.

    U-boot properly started making a BOOTP/PXE/DHCP broadcast request.

    I post here my findings: first the dnsmasq.conf file (tftp+dhcp all in one) - Mac address redacted, insert the one from the box you want to boot

    --- dnsmasq.conf

    interface=br0
    bogus-priv
    filterwin2k
    no-resolv
    localise-queries
    no-negcache
    no-hosts
    dhcp-authoritative
    listen-address=192.168.111.128
    dhcp-option=3,192.168.111.1
    dhcp-option=6,192.168.111.1
    server=192.168.111.1
    dhcp-range=interface=br0,192.168.111.35,192.168.111.40,infinite
    enable-tftp
    tftp-root=/var/tftp
    dhcp-host=ee:58:f3:XX:XX:XX,set:d01,192.168.111.35,cazzillo,infinite
    cname=set:d01,cazzillo
    --- end of dnsmasq.conf
     
    This assumes dns+router ad 192.168.111.1, and "cuts off" 5 IPs from 192.168.111.35 to 192.168.111.40.

    U-boot requests the following file:
     
    /var/tftp/pxelinux.cfg/01-ee-58-f3-XX-XX-XX

    As its PXELINUX config, i.e.:

      FDT /rk322x-box.dtb
      LINUX /kernel.img
      INITRD /initramfs-rk322x
      APPEND modloop=/modloop-rk322x modules=loop,squashfs,sd-mod,usb-storage,aoe ip=dhcp
     
    In the tftp root (/var/tftp) I've put the kernel, (alpine, modded by me) initrd, .dtb file, edited  "/var/tftp/pxelinux.cfg/01-ee-58-f3-XX-XX-XX" and it booted!

    Pretty impressive.
     
    I've not dwelled into armbian because I am not into systemd, which is the "init" of Debian derivatives.
    I won't touch it with a 10-foot pole, but shouldn't be too hard to make it boot.
     

     
  16. Like
    Vittorio Mori reacted to fabiobassa in CSC Armbian for RK322x TV box boards   
    Hello Vittorio

    thank you so much for this effort.
    Effectively nas, pbx,adblockers ,vpn' s are the best ever applications for those boxes
    I run several pbxes on rk322x , but ALWAYS have found freepbx , even on x86 or 64 very heavy, caotic, too way customized . I run mostly pure asterisk 13  ( or 16 it depends which is shipped with debian itself) with the old, ugly digium GUI interface.
    The interface is lightweight since uses static contents and js files and when I need something more customized, I do it in extensions.conf by hand

    Maybe we can discuss in private for some improvements ( I think to billing solutions) so we can leave free the 3ad for more hardware/kernel related problems
  17. Like
    Vittorio Mori got a reaction from fabiobassa in CSC Armbian for RK322x TV box boards   
    If anyone needs it, as a convenience, I leave here a google drive link for an Armbian "bullseye-minimal" image for the 322x box with FreePbx16 & Asterisk18 compiled in.

    Took a whole afternoon of compiling code to make it work.

    It's a .gz image you can restore via MultiTool.

    root password: freepbx
    Freepbx login: admin/freepbx

    Hardware .dtb is left vanilla to boot on any platform -  use rk322x-config to configure proper cpu/ddr/storage/led speed.

    Gets IP from DHCP, you can of course use armbian-configure to use wifi or whatever.

    ODBC connector compiled and included for mysql, codec g729 compiled and included.

    It's working quite well with softphones ad Yealink VOIP DECT phones, on a couple of pjsip trunks. I expect it to work well with at least 8/10 extensions, maybe more.

    Interface is quite heavy for my taste (node.js ....) but it seems it's  the "new normal" we have to adapt to.

    It's 2 gigs in size.

    https://drive.google.com/file/d/1PYuakmA-9JNVmJ3VOYE7GFQBo6dqN-8t/view?usp=sharing

    all credits to @jock for creating the original Debian Bullseye image.
  18. Like
    Vittorio Mori reacted to fabiobassa in CSC Armbian for RK322x TV box boards   
    @Vittorio Mori

    Good afternoon Vittorio
    Somewhere in this same 3ad I already posted the boot seguence of those boxes. Posts are so many that maybe you didn't find it.
    It doesn't exist a mbr or uefi , instead buried in the soc itself there is a tiny bootstrap that involves ddr ram and few others things. This is called loader mode
    If for any reason not even the initializer is present in the emmc or nand, well we have a mode that is called maskrom mode. Since this is buried into the soc, those box are UNBRICKABLE since at least " something.." is still able to boot.

     


    Once the loader is started then the control is passed to u-boot itself

    Here you can have an idea of the flowchart

    http://opensource.rock-chips.com/wiki_Boot_option

     
  19. Like
    Vittorio Mori reacted to fabiobassa in CSC Armbian for RK322x TV box boards   
    @Vittorio Mori

    Ciao Vittorio, buongiorno e benvenuto
    I will answer in a straight manner don't consider it rude 😄 but just the answer of someone that loosed sleep trying to achieve the same as you.

     

    Yes ! You have to go trought the whole compile method and then build your buildroot stripping down what is un-needed.
    Now the problem is that used to exist a rockchip buildroot method described on github and i don t find anymore it

     

    NO !! Unfortunately you still have to go trought the compilation method enabling compile fmpeg with some tweaking as described

    here 

    with this 3 " magic" flags 
     
    --enable-rkmpp \ --enable-version3 \ --enable-libdrm \

    or even on this same post at the beginning where @jock says as to enable to HW acceleration with some script
     
     
    I did it but was a PITA !!!
    hope you get your goal


     
×
×
  • Create New...

Important Information

Terms of Use - Privacy Policy - Guidelines