I do not believe we will see Linux hardware video decoding/encoding in the near future, i hope i’m wrong, but i doubt it.
Will it work in Kodi only, or you can use other players like vlc, mpv…?
If this is true, can you point me in the right direction?
It says Odroid C2, but it should work on most Amlogic S905(x) boards. I used it a while back on the VIM.
The build method/steps is the same as the old buildroot descrbed in Khadas communitiy?
Yes, It is the same as old buildroot
About how to build the new buildroot, you can refer to the post
The buildroot-2017-06-19 contain the necessary modules for hardware accelerated video encoding & decoding.
terry@Server:/home/nick/project/khadas/buildroot/buildroot_openlinux/hardware/aml-4.9/arm/gpu$ ls -la
total 48
drwxr-xr-x 11 nick nick 4096 Jun 19 22:03 .
drwxr-xr-x 3 nick nick 4096 Jun 19 22:03 ..
drwxr-xr-x 3 nick nick 4096 Jun 19 22:03 bindings
drwxr-xr-x 3 nick nick 4096 Jun 19 22:03 egl
-rw-r--r-- 1 nick nick 3118 Jun 19 22:03 gpu.mk
drwxr-xr-x 5 nick nick 4096 Jun 19 22:03 lib
drwxr-xr-x 9 nick nick 4096 Jun 19 22:03 mali
drwxr-xr-x 7 nick nick 4096 Jun 19 22:03 midgard
drwxr-xr-x 4 nick nick 4096 Jun 19 22:03 t83x
drwxr-xr-x 7 nick nick 4096 Jun 19 22:03 ump
drwxr-xr-x 2 nick nick 4096 Jun 19 22:03 umplock
drwxr-xr-x 5 nick nick 4096 Jun 19 22:03 utgard
Does it mean we will soon have hw accelerated videos in Ubuntu?
Will it work in Kodi, or can i use other video players like vlc, if it is indeed hw accelerated, then i should be able to use any video player?
@Terry I’m pretty sure those modules are only for the GPU, not the VPU.
If you look in aml-3.14/drivers/amlogic/amports you will see a bunch of files related to video decoding and encoding:
mmeyer@kvimbuild:~/buildroot/buildroot_openlinux/kernel/aml-3.14/drivers/amlogic/amports$ ls -lah
total 2.7M
drwxr-xr-x 5 mmeyer mmeyer 4.0K Jun 19 07:38 .
drwxr-xr-x 67 mmeyer mmeyer 4.0K Jun 19 05:33 ..
-rw-r--r-- 1 mmeyer mmeyer 8.2K Jun 19 07:38 adec.c
-rw-r--r-- 1 mmeyer mmeyer 861 May 15 09:45 adec.h
-rw-r--r-- 1 mmeyer mmeyer 2.6K May 15 09:45 amlog.h
-rw-r--r-- 1 mmeyer mmeyer 2.5K May 15 09:45 amports_config.h
-rw-r--r-- 1 mmeyer mmeyer 3.7K May 15 09:45 amports_gate.c
-rw-r--r-- 1 mmeyer mmeyer 814 May 15 09:45 amports_gate.h
-rw-r--r-- 1 mmeyer mmeyer 1.8K May 15 09:45 amports_priv.h
-rw-r--r-- 1 mmeyer mmeyer 91K Jun 19 07:38 amstream.c
-rw-r--r-- 1 mmeyer mmeyer 1.4K May 15 09:45 amstream_profile.c
-rw-r--r-- 1 mmeyer mmeyer 19K May 15 09:45 amvdec.c
-rw-r--r-- 1 mmeyer mmeyer 2.6K May 15 09:45 amvdec.h
-rw-r--r-- 1 mmeyer mmeyer 33K May 15 09:45 amvideocap.c
-rw-r--r-- 1 mmeyer mmeyer 972 May 15 09:45 amvideocap_priv.h
drwxr-xr-x 4 mmeyer mmeyer 4.0K Jun 19 07:38 arch
-rw-r--r-- 1 mmeyer mmeyer 1.8K May 15 09:45 avs.h
-rw-r--r-- 1 mmeyer mmeyer 136K May 15 09:45 avsp_trans.c
drwxr-xr-x 2 mmeyer mmeyer 4.0K May 15 09:45 cnm
-rw-r--r-- 1 mmeyer mmeyer 1.4K May 15 09:45 config_parser.c
-rw-r--r-- 1 mmeyer mmeyer 769 May 15 09:45 config_parser.h
drwxr-xr-x 2 mmeyer mmeyer 4.0K Jun 19 07:38 decoder
-rw-r--r-- 1 mmeyer mmeyer 118K May 15 09:45 encoder.c
-rw-r--r-- 1 mmeyer mmeyer 13K May 15 09:45 encoder.h
-rw-r--r-- 1 mmeyer mmeyer 24K May 27 08:06 esparser.c
-rw-r--r-- 1 mmeyer mmeyer 5.6K May 15 09:45 esparser.h
-rw-r--r-- 1 mmeyer mmeyer 3.4K May 15 09:45 gp_pll.c
-rw-r--r-- 1 mmeyer mmeyer 146K Jun 19 07:38 h264_dpb.c
-rw-r--r-- 1 mmeyer mmeyer 22K Jun 19 07:38 h264_dpb.h
-rw-r--r-- 1 mmeyer mmeyer 20K May 15 09:45 jpegdec.c
-rw-r--r-- 1 mmeyer mmeyer 81K May 15 09:45 jpegenc.c
-rw-r--r-- 1 mmeyer mmeyer 6.1K May 15 09:45 jpegenc.h
-rw-r--r-- 1 mmeyer mmeyer 5.8K May 15 09:45 Kconfig
-rw-r--r-- 1 mmeyer mmeyer 3.4K May 15 09:45 Makefile
-rw-r--r-- 1 mmeyer mmeyer 59K May 27 08:06 picdec.c
-rw-r--r-- 1 mmeyer mmeyer 3.2K May 15 09:45 picdec.h
-rw-r--r-- 1 mmeyer mmeyer 27K May 15 09:45 psparser.c
-rw-r--r-- 1 mmeyer mmeyer 5.1K May 15 09:45 psparser.h
-rw-r--r-- 1 mmeyer mmeyer 31K May 27 08:06 ptsserv.c
-rw-r--r-- 1 mmeyer mmeyer 6.3K May 15 09:45 rdma.c
-rw-r--r-- 1 mmeyer mmeyer 261 May 15 09:45 rdma.h
-rw-r--r-- 1 mmeyer mmeyer 8.5K May 15 09:45 rmparser.c
-rw-r--r-- 1 mmeyer mmeyer 4.9K May 15 09:45 rmparser.h
-rw-r--r-- 1 mmeyer mmeyer 11K May 15 09:45 streambuf.c
-rw-r--r-- 1 mmeyer mmeyer 3.3K May 15 09:45 streambuf.h
-rw-r--r-- 1 mmeyer mmeyer 4.0K May 15 09:45 streambuf_reg.h
-rw-r--r-- 1 mmeyer mmeyer 17K May 15 09:45 subtitle.c
-rw-r--r-- 1 mmeyer mmeyer 15K May 15 09:45 thread_rw.c
-rw-r--r-- 1 mmeyer mmeyer 1.1K May 15 09:45 thread_rw.h
-rw-r--r-- 1 mmeyer mmeyer 4.8K May 15 09:45 timestamp.c
-rw-r--r-- 1 mmeyer mmeyer 27K May 15 09:45 tsdemux.c
-rw-r--r-- 1 mmeyer mmeyer 2.9K May 15 09:45 tsdemux.h
-rw-r--r-- 1 mmeyer mmeyer 52K May 15 09:45 tsync.c
-rw-r--r-- 1 mmeyer mmeyer 43K May 15 09:45 tsync_pcr.c
-rw-r--r-- 1 mmeyer mmeyer 891 May 15 09:45 tsync_pcr.h
-rw-r--r-- 1 mmeyer mmeyer 44K Jun 19 07:38 vavs.c
-rw-r--r-- 1 mmeyer mmeyer 76K Jun 19 07:38 vdec.c
-rw-r--r-- 1 mmeyer mmeyer 9.3K Jun 19 07:38 vdec.h
-rw-r--r-- 1 mmeyer mmeyer 22K Jun 19 07:38 vdec_input.c
-rw-r--r-- 1 mmeyer mmeyer 3.7K Jun 19 07:38 vdec_input.h
-rw-r--r-- 1 mmeyer mmeyer 3.5K May 15 09:45 vdec_profile.c
-rw-r--r-- 1 mmeyer mmeyer 1.2K May 15 09:45 vdec_profile.h
-rw-r--r-- 1 mmeyer mmeyer 7.9K May 15 09:45 vdec_reg.h
-rw-r--r-- 1 mmeyer mmeyer 3.4K May 15 09:45 vdec_trace.h
-rw-r--r-- 1 mmeyer mmeyer 48K May 15 09:45 vh264_4k2k.c
-rw-r--r-- 1 mmeyer mmeyer 83K Jun 19 07:38 vh264.c
-rw-r--r-- 1 mmeyer mmeyer 791 May 15 09:45 vh264.h
-rw-r--r-- 1 mmeyer mmeyer 43K May 15 09:45 vh264mvc.c
-rw-r--r-- 1 mmeyer mmeyer 266K Jun 19 07:38 vh265.c
-rw-r--r-- 1 mmeyer mmeyer 769 May 15 09:45 vh265.h
-rw-r--r-- 1 mmeyer mmeyer 233K Jun 19 07:38 video.c
-rw-r--r-- 1 mmeyer mmeyer 9.3K May 15 09:45 video.h
-rw-r--r-- 1 mmeyer mmeyer 30K Jun 19 07:38 video_keeper.c
-rw-r--r-- 1 mmeyer mmeyer 943 May 15 09:45 video_keeper.h
-rw-r--r-- 1 mmeyer mmeyer 1.3K May 15 09:45 videolog.h
-rw-r--r-- 1 mmeyer mmeyer 1.3K May 15 09:45 video_priv.h
-rw-r--r-- 1 mmeyer mmeyer 120K Jun 19 07:38 vmh264.c
-rw-r--r-- 1 mmeyer mmeyer 23K May 15 09:45 vmjpeg.c
-rw-r--r-- 1 mmeyer mmeyer 18K Jun 19 07:38 vmmjpeg.c
-rw-r--r-- 1 mmeyer mmeyer 33K Jun 19 07:38 vmmpeg4.c
-rw-r--r-- 1 mmeyer mmeyer 32K Jun 19 07:38 vmpeg12.c
-rw-r--r-- 1 mmeyer mmeyer 823 May 15 09:45 vmpeg12.h
-rw-r--r-- 1 mmeyer mmeyer 31K Jun 19 07:38 vmpeg4.c
-rw-r--r-- 1 mmeyer mmeyer 819 May 15 09:45 vmpeg4.h
-rw-r--r-- 1 mmeyer mmeyer 76K Jun 19 07:38 vpp.c
-rw-r--r-- 1 mmeyer mmeyer 7.4K Jun 19 07:38 vpp.h
-rw-r--r-- 1 mmeyer mmeyer 24K May 15 09:45 vreal.c
-rw-r--r-- 1 mmeyer mmeyer 812 May 15 09:45 vreal.h
-rw-r--r-- 1 mmeyer mmeyer 29K May 15 09:45 vvc1.c
-rw-r--r-- 1 mmeyer mmeyer 211K Jun 19 07:38 vvp9.c
-rw-r--r-- 1 mmeyer mmeyer 810 May 15 09:45 vvp9.h
I have not been able to find the same (or equivalent) files in aml-4.9.
I have read the amlogic doc to this buildroot:
Amlogic PDF to Kernel4.9_Buildroot
There were checks of GSTPlayer and KMPlayer saying the Kernel is compatible with various resolutions and media formats.
I have found some 64bit libs for mali450
buildroot/package/meson-mali/lib/arm64/r7p0/m450/
Also some Amlogic drivers
buildroot_openlinux/kernel/aml-4.9/drivers/amlogic/media/video_processor/
Kernel config buildroot/configs/mesongxl_p212_32_kernel49_release_defconfig
Have also some hints for GPU support:
BR2_LINUX_KERNEL=y
BR2_LINUX_KERNEL_CUSTOM_LOCAL_VERSION_VALUE=“amlogic-4.9-dev"
BR2_LINUX_KERNEL_CUSTOM_LOCAL=y
BR2_LINUX_KERNEL_CUSTOM_LOCAL_PATH=”$(TOPDIR)/…/kernel/aml-4.9"
BR2_LINUX_KERNEL_DEFCONFIG="meson64"
BR2_TARGET_BOARD_PLATFORM="meson8"
BR2_LINUX_KERNEL_IMAGE_LOADADDR="0x1008000"
BR2_LINUX_KERNEL_PATCH="amlogic-4.9"
BR2_LINUX_KERNEL_DTS_SUPPORT=y
BR2_LINUX_KERNEL_USE_INTREE_DTS=y
BR2_LINUX_KERNEL_INTREE_DTS_NAME="gxl_p212_2g"
BR2_LINUX_KERNEL_AMLOGIC_DTD=y
BR2_LINUX_KERNEL_ANDROID_FORMAT=y
BR2_LINUX_KERNEL_IMAGE=y
BR2_PACKAGE_GPU=y
BR2_PACKAGE_GPU_LOCAL=y
BR2_PACKAGE_GPU_STANDALONE=y
BR2_PACKAGE_GPU_VERSION=“r7p0"
BR2_PACKAGE_GPU_LOCAL_PATH=”$(TOPDIR)/…/hardware/aml-3.14/arm/gpu"
BR2_PACKAGE_MESON_MALI_MODEL="m450"
BR2_PACKAGE_MESON_MALI_VERSION="r7p0"
BR2_PACKAGE_WIFI_FW=y
So I am unsure, if they are really missing…
please update the link and can’t, I really need that file. Thank you
Can you tello me for what file ?
Hello @predators
Here is all the dl files but it’s not for Buildroot 20170619
, that version is really old and we don’t maintain it anymore.
thank you for the suggestion. but i need that file a lot of files don’t exist in amlogic openlinux, do you still save the buildroot dl file? I am very happy if you want to share the buildroot dl file
thank you for helping me share files
I am back again, I really need the gnutools.tar.gz file I found the file link but the link can no longer be http://openlinux.amlogic.com:8000/deploy/gnutools.tar.gz do you have the gnutools.tar.gz file