UniformBuffer

  • Posts

    49
  • Joined

  • Last visited

Recent Profile Visitors

The recent visitors block is disabled and is not being shown to other users.

UniformBuffer's Achievements

  1. Thanks for the info, like i said i'm not very skilled with kernel things, but thanks to your guide i was able to change cma allocation from 256M to 512M. I have also tried to set 1GB with 0x40000000, that should be aligned with 0x400000, but after setting it i got no monitor output (from leds pattern i can say it was working, sysreq magic keys also worked, so the kernel was on). Anyway, that's not foundamental, i have also tried to set the cma with the same value of the patch you linked (0x38000000) and it worked, making the cma 896MB. I have tested some h264 and vp9 videos and the performance it's still choppy (after increasing to 512MB it become a little better). I have tried mpv with `mpv --hwdec=yes video.mkv` and ffplay with `ffplay -vcodec h264_v4l2m2m video_h264.mkv` and `ffplay -vcodec vp9_v4l2m2m video_vp9.webm` . For now i got the best performance with vp9 format using ffplay. A strange thing is that ffplay perform better than mpv, but mpv use ffmpeg like ffmplay, so they should have more or less the same performance. Anyway the low performance seems to be related to a VERY single threaded behavior. After increasing cma to 512MB i got some free cma left (40-80MB) and increasing again to 896MB increase the free cma proportionally, so it seems that meson_vdec does not get advantage from memory after ~512MB. Anyway, even if there are some problems, i'm happy to be able to see progresses with my eyes! Thanks again for the help and for your hard work
  2. Thanks for the answer, this explain why the using hardware decoding stutter so much. Unfortunately i'm not so skilled to recompile the kernel, i'm scared to make device unbootable (that happened a lot of time). Also i don't have a an x86 machine to use Armbian tools. Since, like you said, increasing so much the cma make the board useless for any other purpose, i will wait for some improvements. Thanks anyway for the answer! PS: I would like to ask a question for my personal curiosity: do you know if exist a board that have hardware decoding enabled on mainline kernel? As far as i know, even allwinner devices, that have been completely reverse engineered, have trouble to enable it because applications need to support v4l2_request api. Seems like find a unicorn is much more easy. This is absolutely not a critique, i know that is very difficult to get it working, i would simply like to know if exist some other board supported by Armbian that have it enabled because i would like to use it as general purpose/media device, and.... i would like to avoid Android as much as possible. Thanks for the attention, Have a good day
  3. Hi, i'm making some test to make meson_vdec working. Currently i got v4l2m2m hardware decoding on both xorg and wayland, but the video stutter a lot. While playing i have noticed that on dmesg i got some errors like: From what i have read, it has something to do with cma and looking at "cat /proc/meminfo" i got: If you notice, i got only 2 mb of free cma memory, so i can suppose that the reason of bad playback performance COULD be not having enough memory, so i would like to ask, again, if someone know a way to change the cma size. Like i said in the previous posts, setting it from kernel parameters using ArmbianEnv.txt do not work. Maybe the cma size has been hardcoded on kernel config?
  4. Hi, i'm interested in this topic, but since i use wayland i would like to get it working on mpv (for example). I got vaainfo detecting the library, but when launched using mpv i got green screen and a lot of "failed to destoy surface". I also have noticed that after a some try, i got an error about failed resource allocation (i imagine because it does not free correctly buffers). Someone have managed to get mpv working? For the context, i'm not using Armbian device, but a Pinephone with PostmarketOS (it's the only Allwinner device i have), but i think a lot of people could benefit from get this driver working.
  5. Hi, i have plugged a monitor with a different resolution (1920x1080) and i have noticed that i don't get hardware acceleration anymore. To get the hardware acceleration i have to run the mpv at 1280x720 resolution. If i use "mpv --hwdec=yes --ytdl-format="bestvideo[height<=?720][fps<=?60][vcodec=?vp9]+bestaudio/best" *youtube video*" to force resolution to 1280x720, i get hw acceleration again. Running "v4l2-ctl --all" i got: As you can see it reports support for vp9 1280x720, so maybe you (and now also me ) don't get hardware acceleration because your monitor have an unsupported resolution for the vpu (or at least the vpu driver, the board should support up tp 4k 60fps).
  6. My original image is Debian Buster, then i have added Debian Sid repository. I don't know if this could be the root of the problem, in general Ubuntu should be, as far as i know, a more updated version of Debian, but i could be wrong. Obviously there are much more differences, but i don't think some of them could make this problem. I think that a more robust reason could be packages versions, Debian Sid provide a much more cutting edge (tecnically experimental) than standard Ubuntu.
  7. Hi, i confirm that for me hardware acceleration works. I use AML-S905X-CC board on kernel 5.8.5 (updated today). Maybe a difference with my configuration is that i do not use Xorg, i use Wayland desktop environments. There are many out there and some can be even installed from apt, like Gnome,Sway and Phosh. I personally use Wayfire that i have compiled myself. Another difference (maybe) is that i have added Debian Sid to my repository list, so i got very cutting edge mesa drivers. I currently have mesa 20.1.6. When running "mpv --hwdec=yes *a youtube video*" i got After saying this, hardware decoding is not working great, i got a lot of dropped frames and warning messages from mpv like: Running the same command without "--hwdec" run much better and, even if it do not use the hardware decoding, the video player is still hardware accelerated on the gpu (VO: [gpu] 1280x720 nv12). Don't get me wrong, i appreciate a lot that something at least start working, i know it's not easy to manage this kind of things, so congrats Armbian Team . Can't wait to get full hardware decoding support! Edit: oh, i forgot to say that i have found no way to get the same thing on browsers, so i generally watch videos on mpv. Maybe enabling Firefox Webrender could allow hardware decoding from v4l2. Unfortunatly i got errors regarding "failed to create EGL context" when enabled.
  8. I personally don't use ppa repositories, so i don't know what version they are providing. You can check what is your by simply running glxinfo | grep "OpenGL version" Mine gives "OpenGL version string: 2.1 Mesa 20.1.5" My drivers are a bit updated than standard because i set Debian Sid as additional repository, so i get very cutting edge updates. Also, just to be sure, do you have "meson_vdec" module enabled? It is the kernel module that enable the hardware decoding. By default meson_vdec should be enabled, but who knows? To check you can run "lsmod" and search among them for meson_vdec. If you don't have it enabled, you can enable with sudo modprobe meson-vdec (notice that when enabling, the module is called "meson-vdec", not "meson_vdec") This will enable it for current session, so do not survive rebooting. To make it load on every boot, add "meson-vdec" to /etc/modules
  9. That's strange, what is your mesa version? Mine is 20.1.5 currently. Also my kernel is the 5.7.15 that currently use Armbian by default.
  10. Hi, i don't got any particular mpv conf, i have only added "ytdl-format=bestvideo[height<=?720][fps<=?60][vcodec!=?vp9]+bestaudio/best" to get video from youtube directly with the resolution of my monitor, nothing more. Your question make me some tests: unfortunatly i don't get hardware acceleration from youtube videos (maybe i have to change something), but i'm sure to got it from local video. Running a vp9 video of my self recorded desktop i got from "mpv --hwdec=yes ./myvid.mkv": ``` (+) Video --vid=1 (*) (vp9 1280x800) [vaapi] libva: vaGetDriverNameByIndex() failed with unknown libva error, driver_name = (null) Failed to open VDPAU backend libvdpau_nvidia.so: cannot open shared object file: No such file or directory Using hardware decoding (v4l2m2m-copy). VO: [gpu] 1280x800 nv12 V: 00:00:01 / 00:00:18 (10%) .... ``` Youtube videos do not use nv12, so maybe this make mpv do not enable hardware acceleration (i do not got "Using hardware decoding (v4l2m2m-copy)."). "VO: [gpu]" should means that the "video output is gpu accelerated", but i don't think means also hardware acceleration, i have to check this. If i make them accelerated i will send you a message PS: don't get my words for the truth, i'm a beginner on this topic and i'm experimenting to get some knowledge EDIT: got it. Using "mpv --hwdec=yes --hwdec-codecs=vp9 *youtube video address*" gives hardware decoding, but unfortunatly the performance are wrost than software decoding. Anyway i'm glad that something start working, good job Armbian team, i know this is not easy!
  11. Hi, i use a AML-S905X-CC board and since the last kernel update, something start moving on the hardware acceleration side, i got mpv hwdec working. I would like to make some tests and start using kodi for media reproduction, but i'm scared that 256M of default cma memory is not enough. I have tried to set the cma memory size from kernel parameters using armbian-config. I have tried to add "cma=350M" and "extraargs=cma=350M" to boot environment. Both commands does not work. The strange thing is that i'm sure "extraargs=cma=350M" pass the command to the kernel parameters because i have already used it to disable a faulty composition output. I have checked the syntax of the cma kernel parameter at the linux kernel documentation and SHOULD be ok, but i'm not sure 100%: I verify the cma allocation from dmesg, that report: [ 0.000000] Reserved memory: created CMA memory pool at 0x000000006b000000, size 256 MiB I also verify it by using "cat /proc/meminfo" and on the end there is: CmaTotal: 262144 kB CmaFree: 12772 kB So the question is: how can i change the cma allocation size, without recompile the kernel if possible? Is it possible that the cma size has been hardwritten at compile time and runtime changes are ignored? Thanks for the attention, have a good day
  12. Thanks for the hint, i will give it a try. I have never gone deep about kernel related topics because i'm scared to wreck everything .
  13. Hi, i would like to try running some Android app on Armbian. I see that Anbox is available on the repository, but i cannot get running. When starting i got Failed to start as either binder or ashmem kernel drivers are not loaded Obviously i'm not asking support for Anbox, i would like to know how to enable binder and ashmem kernel modules. When i try to modprobe them i got: modprobe: FATAL: Module binder not found in directory /lib/modules/5.6.15-meson64 modprobe: FATAL: Module ashmem not found in directory /lib/modules/5.6.15-meson64 On the git there is a guide on how compile and install them, but since they are kernel modules they are probably used for some other programs and maybe they could be installed in some easy way, maybe using apt. So before trying to compile and install them by myself, i would like to know if is possible to install them more easily. I'm using a AML-S905X-CC board and i'm on Debian Buster image upgraded to Sid. Thanks for the attention, Have a good day
  14. Hi, i'm using a Raspad tablet-like device with a aml-s905x-cc inside and i'm experimenting some mobile interface that i can use with the touchscreen, but also with mouse and keyboard. I'm simply curious about convergence desktop designs and mobile desktop environments. The obvious choice would be GNOME, but it is very heavy, both on memory and cpu usage and my board with only 2GB of ram cannot handle it if combined with other heavy programs. I knew that Librem was developing a desktop environment for their Librem 5 linux phone. Since they focus on opensource software i thought if i can install their desktop environment on my tablet to try it and.... yes, it is possible! And it is surprisingly easy to do. So, if someone would like also to try their desktop environment, i make a "guide" on how to install it. Like any wayland desktop environment, there is a compositor (called phoc) and a graphical shell (called phosh). On the git they state that to run phosh should run on any compositor that implement wlr-layer-shell, so maybe you could try other compositors! First clone the git of phoc with: git clone https://source.puri.sm/Librem5/phoc Change the directory on the just downloaded folder: cd phoc Then, since they provide the file needed for debian packaging, i suggest to generate the deb package and install it instead of generating the binary directly with meson. In this way you can uninstall the program simply with apt like any other program. From the control file, i can see the needed dependencies, but i suggest to get directly from the build command below. If some package is missing, the packaging tool will tell you which. Then you can simply do "sudo apt install [all the missing dependencies]" To create the debian package run: debuild -i -us -uc -b When the command finish, it should create a debian package inside the upper folder called "phoc_0.4.0_[architecture].deb" You can install it with "sudo apt install /path to the file/phoc_0.4.0_[architecture].deb" Once phoc is installed, it's time to install phosh. Go to the previous folder with: cd .. Clone the phosh git with: git clone https://source.puri.sm/Librem5/phosh Change the directory on the just downloaded folder: cd phosh Dependencies should be these, but like before, i suggest to get them directly from the build command and install them as the same way as phoc: To create the debian package run: debuild -i -us -uc -b At the end of the compilation, you should find the package inside the upper folder and like before you can install it with "sudo apt install /path to the file/phosh_0.4.0_[architecture].deb" That's it. Reboot and on you favourite login manager should appear the entry "Phosh" that can be started like any other desktop environment. During the debian packaging compilation it will generate some other packages, like the debugging symbols, but they are not needed to make phosh work. Hope someone could find this "guide" useful. Have fun!
  15. The @ning solution worked for me (kernel 5.6.15). The exact fields to change are: AIU_HDMI to I2S and AIU_SPDI to SPDIF. I don't know the exact meaning of that settings, but worked for me.