@shades_aus What specifically do you need? Video acceleration works under Linux. If you have specific items you would like to be worked on, it's better to make a list and post it rather than making generic statements that no one can address. This thread is already 2 pages long going on 3. It's better to open a new thread for specific issues and not bundle them in a megathread.
@loverpi Fair point, it is getting long however, I already answered this in another thread titled "Firefly requesting further details regarding existing issues with the images"
I have tried to get hardware acceleration working on the newest images using "Gstreamer" video players amongst other things with no result.
What generic statement that I made are you referring to, that no one can address exactly?
I can post the same list here from the other thread, no problem if you are going to take it seriously for work?
Just don't waste time baiting me back into this thread with no intention of supporting what your customers are asking for help with ok?
No more belittling or saying, go talk to RockChip. That's not supporting your product or customer base. That's the opposite.
Here's a list of things people, including myself, would like to see addressed taken from
"Firefly requesting further details regarding existing issues with the images"
Accelerated .h264/.h265 4k video playback support from new kernel in the image please.
Would like to see some assisted video encoding at some stage (if possible?? ffmpeg maybe???)
Accelerated desktop requested that uses GPU and less CPU I assume.
Accelerated browser/s please. ANY browser that can still view Youtube and related educational sites? (Firefox and Chrome use 100% CPU when viewing content, especially video at the moment)
BTRFS filesystem (EXT"x" is bad for flash RAM due to "journaling")
IPTables support has been requested to be added.
Being able to "apt-get update && apt-get upgrade" (Currently being worked on I believe)
The top USB2 port is not always working with keyboards, fine for mouse, bottom USB2 seems ok. (Newer image seems to be working more reliably here)
USB3 speeds seem to be dropping on long transfers. (I believe is being looked into?)
Kernel config that includes support for running Docker. (See the other post "Firefly requesting further details regarding existing issues with the images")
A kernel that incorporates the kernel's config in /proc/config.gz. (See other post)
I am happy to start a new thread in addition to this one if it will help everyone here.
Accelerated .h264/.h265 4k video playback support from new kernel in the image please.
This is supported by h264dec.sh
Would like to see some assisted video encoding at some stage (if possible?? ffmpeg maybe???)
This is supported by mpph264enc
Accelerated desktop requested that uses GPU and less CPU I assume.
This is a problem with Linux infrastructure as of today. All of the X11 UIs are drawn via CPU calls. This is not a problem specific to this board so thus has to be addressed by the people writing the critical infrastructure pieces to fix. You are proverbially barking up the wrong tree.
Accelerated browser/s please. ANY browser that can still view Youtube and related educational sites? (Firefox and Chrome use 100% CPU when viewing content, especially video at the moment)
Chrome and Firefox do not support V4L2 which is the Linux API for doing codecs. You are proverbially barking up the wrong tree.
BTRFS filesystem (EXT"x" is bad for flash RAM due to "journaling")
Linux 4.4 is not recommended for BTRFS and when the upstream kernel improves, this will be available. We are already exerting much more emphasis on this than any other SBC group.
IPTables support has been requested to be added.
This should already be there. Without IPTables, you wouldn't get network connectivity.
Being able to "apt-get update && apt-get upgrade" (Currently being worked on I believe)
This is working with the exception of the kernel and media components.
The top USB2 port is not always working with keyboards, fine for mouse, bottom USB2 seems ok. (Newer image seems to be working more reliably here) USB3 speeds seem to be dropping on long transfers. (I believe is being looked into?)
Please provide the dmesg output in another thread. Also indicate the file name of the image you are using. Without additional details, there's nothing we can report and fix.
Kernel config that includes support for running Docker. (See the other post "Firefly requesting further details regarding existing issues with the images")
Docker requires various config flags to be set and can be detrimental to general performance since it increases auditing within the kernel. Please specify which configs you need for Docker.
A kernel that incorporates the kernel's config in /proc/config.gz. (See other post)
This is possible.
A thing to note is that all of the build instructions for the kernel and various components are all open source on GitHub. To change the config file to add a feature is relatively easy. There is also instructions for doing so.
As previously stated, most of the problems are not problems specific to this board or vendor or SoC but rather general problems with open source software stack. It is useless to report those problems here. It is better to post on the forums of those respective projects requesting support.
Thank you for being constructive.
I had no idea the hardware x.264 and x.265 was fixed?? why wasn't anyone told about it.
That's absolutely fantastic! thank you!!
I will need to understand how to use these things and test them, however, this helps a lot to know it's there and working.
I wonder why the media players don't support it.
Is this going to continue to improve?
Hardware-assisted encode is available? that's most unexpected.
Maybe we need a list of improved features listing for each release so we know where to go test and provide feedback. Could this be done, even if in point form quickly?
Ok, so hardware acceleration desktops can't be done under Linux?? because it seems supported in VirtualBox emulated hardware and the widely adopted x86 code base.....
I know there are issues in the Linux support area, none of us are here because we can fix it ourselves or, it would be done already. Is there any progress being made to try to fix this? Obviously, it is going to take some very experienced coders.
BTRFS is already included in Ubuntu at install. Could noting similar be done?
Thank you for pushing this forward!! it can substantially improve the lifespan on NVRAM
IP Tables was a requested feature from another user.
Unfortunately, the USB port is very intermittent for me. I don't have any logs however, I will try to capture some. That being said, the latest image seems to be working well for me so far.
Docker was another users request. I personally don't' have a need for it.
I just compiled a list of requested features to be worked on for everyone here.
Understood and thank you!!! :-) honestly.
Some movement in development towards these requests from your customer base is all any of us expected.
I posted a compiled list as requested that was contributed from other users, not just myself, in the hopes of getting some support.
You have taken this on seriously, I applaud that and thank you for your constructive responses.
When you break it down into individual issues, we have room to respond. When you make blanket generalizations. It's not possible for us to guess what exactly is causing grief. That's 90% of the problems with people using open source. They can't adequately define their problem since they don't know enough about the structure. They don't take the time to figure it out via Google or other resources and give up. We don't want people to give up but we do need reasonable feedback to provide an accurate response.
Well, thank you for clarifying and taking these requests onboard.
I am looking forward to further updates and using this product effectively under Linux.
Are you aware of any GUI media player compatibility for accelerated .x265/4 video playback?
h264dec.sh is because the Linux V4L pipeline is not mature. This is a Linux subsystem problem and not a board specific problem. Most vendors use these workarounds. However V4L is finally getting loving because of the Libre Computer supported Bootlin and BayLibre efforts.
So for video there is two ways, gstreamer with gst-play-1.0 and example-player from QT. Link how to make them works. And with mpv+ffmpeg. For mpv+ffmpeg you need to compile mpv from this repo , build libmali from this, and build ffmpeg with next flags
Also you will need to do a few extra steps with libmali, that was said here.
But i have no idea, how to say to Chromium (or any other browser) USE THIS LIBRARIES AND THIS FFMPEG (and not shit that you (browser) think will work). Any advice?
This is the first release of the RK3328 media testing script.
The script provides a functionality similar to its RK3288/3399 equivalents, except for the OpenCL related stuff, which is not supported by the SoC.
So, it includes:
Installing all the libraries and system configurations necessary for GPU accelerated X desktop, Chromium WebGL, full VPU video play acceleration up to 4k@60 10-bit HEVC (the maximum supported by the SoC), and GLES 2.0 support.
Three video players supporting full VPU acceleration (RKMPP) and KMS display (GBM or a X11 DRM "hack", as described by the authors), namely: MPV, Gstreamer and Kodi.
A library that will act as an OpenGL to OpenGL-ES wrapper, allowing you to run programs that use OpenGL 1.5-2.0.
Two additional features, that have no big interest from the Armbian development prospective, but I find them interesting to play with:
Chromium browser with support for Flash and DRM-protected commercial web video streaming (tested with Amazon Prime, should also work with Netflix, Hulu, etc.)
Also a simple Pulseaudio GTK equalizer using LADSPA.
Comments
@shades_aus What specifically do you need? Video acceleration works under Linux. If you have specific items you would like to be worked on, it's better to make a list and post it rather than making generic statements that no one can address. This thread is already 2 pages long going on 3. It's better to open a new thread for specific issues and not bundle them in a megathread.
@loverpi Fair point, it is getting long however, I already answered this in another thread titled "Firefly requesting further details regarding existing issues with the images"
I have tried to get hardware acceleration working on the newest images using "Gstreamer" video players amongst other things with no result.
What generic statement that I made are you referring to, that no one can address exactly?
I can post the same list here from the other thread, no problem if you are going to take it seriously for work?
Just don't waste time baiting me back into this thread with no intention of supporting what your customers are asking for help with ok?
No more belittling or saying, go talk to RockChip. That's not supporting your product or customer base. That's the opposite.
Here's a list of things people, including myself, would like to see addressed taken from
"Firefly requesting further details regarding existing issues with the images"
I am happy to start a new thread in addition to this one if it will help everyone here.
This is supported by h264dec.sh
This is supported by mpph264enc
This is a problem with Linux infrastructure as of today. All of the X11 UIs are drawn via CPU calls. This is not a problem specific to this board so thus has to be addressed by the people writing the critical infrastructure pieces to fix. You are proverbially barking up the wrong tree.
Chrome and Firefox do not support V4L2 which is the Linux API for doing codecs. You are proverbially barking up the wrong tree.
Linux 4.4 is not recommended for BTRFS and when the upstream kernel improves, this will be available. We are already exerting much more emphasis on this than any other SBC group.
This should already be there. Without IPTables, you wouldn't get network connectivity.
This is working with the exception of the kernel and media components.
Please provide the dmesg output in another thread. Also indicate the file name of the image you are using. Without additional details, there's nothing we can report and fix.
Docker requires various config flags to be set and can be detrimental to general performance since it increases auditing within the kernel. Please specify which configs you need for Docker.
This is possible.
A thing to note is that all of the build instructions for the kernel and various components are all open source on GitHub. To change the config file to add a feature is relatively easy. There is also instructions for doing so.
As previously stated, most of the problems are not problems specific to this board or vendor or SoC but rather general problems with open source software stack. It is useless to report those problems here. It is better to post on the forums of those respective projects requesting support.
Thank you for being constructive.
I had no idea the hardware x.264 and x.265 was fixed?? why wasn't anyone told about it.
That's absolutely fantastic! thank you!!
I will need to understand how to use these things and test them, however, this helps a lot to know it's there and working.
I wonder why the media players don't support it.
Is this going to continue to improve?
Hardware-assisted encode is available? that's most unexpected.
Maybe we need a list of improved features listing for each release so we know where to go test and provide feedback. Could this be done, even if in point form quickly?
Ok, so hardware acceleration desktops can't be done under Linux?? because it seems supported in VirtualBox emulated hardware and the widely adopted x86 code base.....
I know there are issues in the Linux support area, none of us are here because we can fix it ourselves or, it would be done already. Is there any progress being made to try to fix this? Obviously, it is going to take some very experienced coders.
BTRFS is already included in Ubuntu at install. Could noting similar be done?
Thank you for pushing this forward!! it can substantially improve the lifespan on NVRAM
IP Tables was a requested feature from another user.
Unfortunately, the USB port is very intermittent for me. I don't have any logs however, I will try to capture some. That being said, the latest image seems to be working well for me so far.
Docker was another users request. I personally don't' have a need for it.
I just compiled a list of requested features to be worked on for everyone here.
Understood and thank you!!! :-) honestly.
Some movement in development towards these requests from your customer base is all any of us expected.
I posted a compiled list as requested that was contributed from other users, not just myself, in the hopes of getting some support.
You have taken this on seriously, I applaud that and thank you for your constructive responses.
When you break it down into individual issues, we have room to respond. When you make blanket generalizations. It's not possible for us to guess what exactly is causing grief. That's 90% of the problems with people using open source. They can't adequately define their problem since they don't know enough about the structure. They don't take the time to figure it out via Google or other resources and give up. We don't want people to give up but we do need reasonable feedback to provide an accurate response.
Well, thank you for clarifying and taking these requests onboard.
I am looking forward to further updates and using this product effectively under Linux.
Are you aware of any GUI media player compatibility for accelerated .x265/4 video playback?
woot, lots of posts since my last check here. I got some reading to do + thank you both loverpi and shades_aus for the back and forth
I will need to do some research into 'h264dec.sh' a quick google search I found some talk here in a review & comments @ https://www.cnx-software.com/2018/07/14/roc-rk3328-cc-review-fast-storage-power-supply/
h264dec.sh is because the Linux V4L pipeline is not mature. This is a Linux subsystem problem and not a board specific problem. Most vendors use these workarounds. However V4L is finally getting loving because of the Libre Computer supported Bootlin and BayLibre efforts.
Is there a guide somewhere how to compile ffmpeg with this enabled?
[duplicate]
So for video there is two ways, gstreamer with gst-play-1.0 and example-player from QT. Link how to make them works. And with mpv+ffmpeg. For mpv+ffmpeg you need to compile mpv from this repo , build libmali from this, and build ffmpeg with next flags
apt-get install
apt-get install pkg-config gcc make git unzip wget xz-utils cmake devscripts equivs build-essential docutils-common mercurial cmake-curses-gui build-essential yasm mercurial cmake cmake-curses-gui build-essential gcc-arm-linux-gnueabi g++-arm-linux-gnueabi texinfo nasm automake
apt-get install libass-dev
apt-get install libfdk-aac-dev fdkaac aac-enc libfdk-aac1
apt-get install autoconf automake build-essential cmake git-core libass-dev libfreetype6-dev libsdl2-dev libtool libva-dev libvdpau-dev libvorbis-dev libxcb1-dev libxcb-shm0-dev libxcb-xfixes0-dev pkg-config texinfo wget zlib1g-dev yasm libx264-dev libx265-dev libnuma-dev libvpx-dev libfdk-aac-dev libmp3lame-dev libopus-dev mc locate libghc-bzlib-dev
./configure flags
./configure \
--cpu="cortex-a53" \
--arch="aarch64" \
--extra-libs="-Lpthread -Lm"\
--extra-cflags="-I\home\dante4\video\include" \
--extra-ldflags="-L\home\dante4\video\lib" \
--disable-debug \
--enable-libaom \
--enable-stripping \
--enable-gpl \
--enable-nonfree \
--enable-logging \
--disable-doc \
--enable-pic \
--enable-optimizations \
--enable-ffmpeg \
--enable-avdevice \
--enable-avcodec \
--enable-avformat \
--enable-swscale \
--enable-postproc \
--enable-avfilter \
--disable-devices \
--enable-pthreads \
--disable-w32threads \
--enable-network \
--disable-gnutls \
--disable-gray \
--enable-swscale-alpha \
--disable-small \
--enable-dct \
--enable-fft \
--enable-mdct \
--enable-rdft \
--disable-crystalhd \
--disable-vaapi \
--disable-vdpau \
--enable-rkmpp \
--enable-libdrm \
--enable-version3 \
--enable-runtime-cpudetect \
--enable-hardcoded-tables \
--enable-encoder=ac3 \
--enable-encoder=aac \
--enable-encoder=wmav2 \
--enable-encoder=mjpeg \
--enable-encoder=png \
--enable-hwaccels \
--enable-muxer=spdif \
--enable-muxer=adts \
--enable-muxer=asf \
--enable-muxer=ipod \
--enable-muxer=mpegts \
--enable-demuxers \
--enable-parsers \
--enable-bsfs \
--enable-filters \
--enable-bzlib \
--enable-libspeex \
--enable-libx264 \
--enable-libx265 \
--enable-zlib \
--enable-asm \
--enable-neon \
--enable-libass \
--enable-libfdk-aac \
--enable-libfreetype \
--enable-libmp3lame \
--enable-libopus \
--enable-libvorbis \
--enable-libvpx
Also you will need to do a few extra steps with libmali, that was said here.
But i have no idea, how to say to Chromium (or any other browser) USE THIS LIBRARIES AND THIS FFMPEG (and not shit that you (browser) think will work). Any advice?
https://forum.armbian.com/topic/9310-rk3328-media-script-rock64-renegade/
The UN-official, UN-supported, UN-expected
RK3328 MEDIA TESTING SCRIPT
This is the first release of the RK3328 media testing script.
The script provides a functionality similar to its RK3288/3399 equivalents, except for the OpenCL related stuff, which is not supported by the SoC.
So, it includes:
Installing all the libraries and system configurations necessary for GPU accelerated X desktop, Chromium WebGL, full VPU video play acceleration up to 4k@60 10-bit HEVC (the maximum supported by the SoC), and GLES 2.0 support.
Three video players supporting full VPU acceleration (RKMPP) and KMS display (GBM or a X11 DRM "hack", as described by the authors), namely: MPV, Gstreamer and Kodi.
A library that will act as an OpenGL to OpenGL-ES wrapper, allowing you to run programs that use OpenGL 1.5-2.0.
Two additional features, that have no big interest from the Armbian development prospective, but I find them interesting to play with:
Chromium browser with support for Flash and DRM-protected commercial web video streaming (tested with Amazon Prime, should also work with Netflix, Hulu, etc.)
Also a simple Pulseaudio GTK equalizer using LADSPA.
https://www.armbian.com/renegade/#kernels-archive
Hope this helps. I will check it shortly too!. Maybe this will get included with Firefly images now!! :-)