PINE64
Netflix, state of the art? - Printable Version

+- PINE64 (https://forum.pine64.org)
+-- Forum: Pinebook Pro (https://forum.pine64.org/forumdisplay.php?fid=111)
+--- Forum: Linux on Pinebook Pro (https://forum.pine64.org/forumdisplay.php?fid=114)
+--- Thread: Netflix, state of the art? (/showthread.php?tid=9680)

Pages: 1 2 3 4 5 6 7 8 9


RE: Netflix, state of the art? - PakoSt - 04-20-2020

Thanks @hthiemann ! It works Smile
With lower quality and sizing the Chromium window about... one quarter of the entire screen gets decent performance with Netflix.

Great job!


RE: Netflix, state of the art? - spikerguy - 04-20-2020

(04-20-2020, 12:41 PM)hthiemann Wrote: Currently hw accelaration is still a missing feature, but I thought I could share my current version with you - maybe someone has an idea how to fix this Smile

Please find my code and a detailled description here: https://github.com/HenningThiemann/docker-chromium-armhf


Essentially, you need to
  • enable XHost Forwarding to allow the docker container to spin up a new XFrame Window (xhost +local:docker)
  • create a new docker volume to persist your chromium settings (docker volume create chromium_home)
  • spin up the container with the following command
    docker run --rm --privileged \ -e DISPLAY=unix$DISPLAY \ -v chromium_home:/home \ -v /tmp/.X11-unix:/tmp/.X11-unix \ -v /dev:/dev -v /run:/run \ -v /etc/machine-id:/etc/machine-id \ --ipc=host \ hthiemann/docker-chromium-armhf

  • Tested with netflix and spotify, both working 
Hi,
Nice work man..  I  think we might need to run docker img with panfrost support to get hw acc.   Maybe @PakoSt  Can try something with hw acc. 

I will test it out myself tomorrow.  
Thanks for sharing your work.


RE: Netflix, state of the art? - Luke - 04-20-2020

(04-20-2020, 12:41 PM)hthiemann Wrote: Currently hw accelaration is still a missing feature, but I thought I could share my current version with you - maybe someone has an idea how to fix this Smile

Please find my code and a detailled description here: https://github.com/HenningThiemann/docker-chromium-armhf


Essentially, you need to
  • enable XHost Forwarding to allow the docker container to spin up a new XFrame Window (xhost +local:docker)
  • create a new docker volume to persist your chromium settings (docker volume create chromium_home)
  • spin up the container with the following command
    docker run --rm --privileged \ -e DISPLAY=unix$DISPLAY \ -v chromium_home:/home \ -v /tmp/.X11-unix:/tmp/.X11-unix \ -v /dev:/dev -v /run:/run \ -v /etc/machine-id:/etc/machine-id \ --ipc=host \ hthiemann/docker-chromium-armhf

  • Tested with netflix and spotify, both working 

Awesome work, have you set the required flags? Smile - for starters un-blacklist the GPU?. Then see if you get acceleration (easily checked under chrome://gpu).

For reference, in chrome://flags look for:

Code:
#ignore-gpu-blacklist

#enable-gpu-rasterization



RE: Netflix, state of the art? - PakoSt - 04-20-2020

Cleaned the docker install earlier. I want to try it with podman as it seems that it doesn't require elevated privileges (not familiar enough with docker but sudo looks to be the normie approach).

We ought to try with the flags for sure. The wiki has the full list used by mrfixit as well.


RE: Netflix, state of the art? - hthiemann - 04-21-2020

(04-20-2020, 03:57 PM)Luke Wrote:
(04-20-2020, 12:41 PM)hthiemann Wrote: Currently hw accelaration is still a missing feature, but I thought I could share my current version with you - maybe someone has an idea how to fix this Smile

Please find my code and a detailled description here: https://github.com/HenningThiemann/docker-chromium-armhf


Essentially, you need to
  • enable XHost Forwarding to allow the docker container to spin up a new XFrame Window (xhost +local:docker)
  • create a new docker volume to persist your chromium settings (docker volume create chromium_home)
  • spin up the container with the following command
    docker run --rm --privileged \ -e DISPLAY=unix$DISPLAY \ -v chromium_home:/home \ -v /tmp/.X11-unix:/tmp/.X11-unix \ -v /dev:/dev -v /run:/run \ -v /etc/machine-id:/etc/machine-id \ --ipc=host \ hthiemann/docker-chromium-armhf

  • Tested with netflix and spotify, both working 

Awesome work, have you set the required flags? Smile - for starters un-blacklist the GPU?. Then see if you get acceleration (easily checked under chrome://gpu).

For reference, in chrome://flags look for:

Code:
#ignore-gpu-blacklist

#enable-gpu-rasterization


I've copied all flags from the mrfixit debian repo and see they are available in chromium.

I have added the "mesa-utils" and "mesa-utils-extra" packages inside the container, in theory "HW acceleration" should be available now (as displayed inside chromium) - but I doubt it really is as the performance is about on the same level as before.


RE: Netflix, state of the art? - Eight Bit - 04-22-2020

It works!
It's awesome that I can now use Spotify on my Manjaro PBP Smile
Also the dutch television site npo.nl and netflix work, albeit a bit chunky due to the missing hardware acceleration.
Less important though, already very happy with spotify.
Thank you!


RE: Netflix, state of the art? - appelgriebsch - 04-23-2020

(04-20-2020, 05:59 PM)PakoSt Wrote: Cleaned the docker install earlier. I want to try it with podman as it seems that it doesn't require elevated privileges (not familiar enough with docker but sudo looks to be the normie approach).

We ought to try with the flags for sure. The wiki has the full list used by mrfixit as well.

Hey, any updates on the podman thing... AFAIK Docker itself is also offering a rootless mode (still in kind of experimental though). Would like to hear your experience with it as I also think a root daemon to run containerized software is no longer state-of-the-art....


RE: Netflix, state of the art? - hthiemann - 04-23-2020

(04-23-2020, 01:29 AM)appelgriebsch Wrote:
(04-20-2020, 05:59 PM)PakoSt Wrote: Cleaned the docker install earlier. I want to try it with podman as it seems that it doesn't require elevated privileges (not familiar enough with docker but sudo looks to be the normie approach).

We ought to try with the flags for sure. The wiki has the full list used by mrfixit as well.

Hey, any updates on the podman thing... AFAIK Docker itself is also offering a rootless mode (still in kind of experimental though). Would like to hear your experience with it as I also think a root daemon to run containerized software is no longer state-of-the-art....
You should be able to define the docker command as a synonym for podman, e.g. that all docker run Command Calls are using podman instead.

But you might need to change some run params to make it work properly..


RE: Netflix, state of the art? - PakoSt - 04-23-2020

Thanks @hthiemann , I'm fairly new to podman. It will take me awhile to figure out what is what.

Podbox seemed like a very quick substitute to setup GUI from a container - looks like it defaults to fedora image and the script executes fairly decently big list of commands.

There ought to be plenty of time to delve into podman at the weekend


RE: Netflix, state of the art? - appelgriebsch - 04-23-2020

(04-23-2020, 06:10 AM)PakoSt Wrote: Thanks @hthiemann , I'm fairly new to podman. It will take me awhile to figure out what is what.

Podbox seemed like a very quick substitute to setup GUI from a container - looks like it defaults to fedora image and the script executes fairly decently big list of commands.

There ought to be plenty of time to delve into podman at the weekend

Ok, did some tests with podman showing mixed results... I've installed podman and podman-docker via yay (incl. all dependencies). When trying to run a simple container via
Code:
docker run -it alpine

it will download the docker image, but fails to run it. I found a bug ticket on GitHub for libpod (https://github.com/containers/libpod/issues/3890) and followed some of these statements

Code:
sudo su
echo 'kernel.unprivileged_userns_clone=1' > /etc/sysctl.d/userns.conf
echo "myUser:1000000:65536" >> /etc/subuid                                    
echo "myUser:1000000:65536" >> /etc/subgid

after a reboot I was able to run alpine and other server containers in rootless mode quite successfully.

Then I downloaded the repository mentioned above and build the container image locally. When trying to run it as non-root it will fail with errors pointing to volume mapping not working properly (looks like being an issue anyway.... https://github.com/containers/libpod/blob/master/rootless.md).

So I started the container via sudo, which worked fine. Logged into Netflix and Spotify and was able to play contents from both.

Thanks @hthiemann for setting this up!