abcdesktopio / oc.apps

abcdesktop application dockerfiles, create dedicated Dockerfile for each application
GNU General Public License v2.0
4 stars 2 forks source link

Sound not working on apps such as chrome , edge , firefox #4

Open Disha5harma opened 1 year ago

Disha5harma commented 1 year ago

Hello Alexandre ,

Thanks for this project . I tried to restrict RAM and CPU in browser apps such as chrome, edge, firefox . After running these apps as pod, sound is not coming . But when I run apps as ephemeral container , sound is working fine .

Following is the chrome.json which I used to build my chrome image - { "acl": { "permit": [ "all" ] }, "cat": "office", "debpackage": " curl gnupg krb5-user fonts-noto fonts-roboto xfonts-100dpi fonts-ubuntu fonts-freefont-ttf dbus-x11 $ "preruncommands": [ "RUN apt update && apt install -y curl && apt install -y gnupg", "RUN curl -Ls https://dl-ssl.google.com/linux/linux_signing_key.pub | apt-key add -", "RUN echo \"deb [arch=$(dpkg --print-architecture)] http://dl.google.com/linux/chrome/deb/ stable main\" | tee /$ "RUN apt-get update && apt-get install --no-install-recommends -y google-chrome-stable && apt-get clean && rm -$ "icon": "circle_google-chrome.svg", "keyword": "web,browser,internet", "launch": "google-chrome.Google-chrome", "name": "chrome", "rules": { "homedir": { "default": true } }, "displayname": "Chrome", "containerengine": "pod_application", "executeclassname": "bronze", "showinview": "dock", "installrecommends" : true, "path": "/usr/bin/google-chrome-stable", "args": "--disable-dev-shm-usage --no-sandbox --test-type " , "template": "abcdesktopio/oc.template.ubuntu.22.04", "mimetype": "text/html;text/xml;application/xhtml+xml;application/xml;application/rss+xml;application/rdf+xml;video/$ "legacyfileextensions": "html;xml", "fileextensions": "html;xml;gif", "desktopfile":"/usr/share/applications/google-chrome.desktop", "abcdesktop_release": 3 }

Following are the logs of chrome pod-

Defaulted container "disha-app-chrome-e03e3" out of: disha-app-chrome-e03e3, i-planet-disha (init) /composer/appli-docker-entrypoint.sh: line 29: 1693998224 - : syntax error: operand expected (error token is "- ") /composer/appli-docker-entrypoint.sh: line 42: 1693998224 - : syntax error: operand expected (error token is "- ") Error setting cipher RC4 40976533DE7F0000:error:0308010C:digital envelope routines:inner_evp_generic_fetch:unsupported:../crypto/evp/evp_fetch.c:349:Global default library context, Algorithm (RC4 : 37), Properties () /composer/appli-docker-entrypoint.sh: line 67: 1693998224 - : syntax error: operand expected (error token is "- ") mkdir: cannot create directory ‘/run/user/4096’: Permission denied /composer/appli-docker-entrypoint.sh: line 73: 1693998224 - : syntax error: operand expected (error token is "- ") /composer/appli-docker-entrypoint.sh: line 75: 1693998224 - : syntax error: operand expected (error token is "- ") tee: unrecognized option '--disable-dev-shm-usage'

For firefox and edge , I used your applist.json to build the image, but sound is not working in those apps as well .

Please can u look into this issue , because restriction on these apps is necessary to preserve system resources.

Thanks and Regards Disha

alexandredevely commented 1 year ago

Hello Disha,

I confirm this issue. On a pod application the pulse client can't connect to the pulse server.

pactl info
Connection failure: Connection refused

If you remove all module-native-protocol-tcp inside the pulseaudio server container and load a new one with auth-anonymous

load-module module-native-protocol-tcp auth-anonymous=true

The sound is coming

The same command on firefox application returns

pactl info
Server String: 10.244.0.70:4713
Library Protocol Version: 33
Server Protocol Version: 32
Is Local: no
Client Index: 48
Tile Size: 65472
User Name: fry
Host Name: fry-3fb98
Server Name: pulseaudio
Server Version: 11.1
Default Sample Specification: s16le 1ch 44100Hz
Default Channel Map: mono
Default Sink: ulaw8_1_8000
Default Source: ulaw8_1_8000.monitor
Cookie: 1043:e1cc

I'm fixing this issue. Thank you for your comment, well done

Alexandre

Disha5harma commented 1 year ago

Hello Alexandre, Thanks for your suggestions. I ran the following commands inside the pulseaudio container which inside the user pod -

pacmd unload-module module-native-protocol-tcp pacmd load-module module-native-protocol-tcp auth-anonymous=true pulseaudio --start

After this sound came inside the new firefox pod, but sound goes way if user logout and login again . Also there is lot of lag in generating sound(more than 10 seconds) , this was not the case when I use app as ephemeral container. Could u do a permanent fix for this?

Thanks and Regards Disha

Disha5harma commented 1 year ago

Hello Alexandre,

Is there any update on this issue ? Also ,I am still facing below issues in pod-apps -

  1. Firefox - Running as a pod but sound not working
  2. Chrome - Running as a pod but sound not working
  3. Edge - Not running in a pod (tabs keep on crashing on opening)
  4. Chromium - Not running in a pod (tabs keep on crashing on opening)

Also each application is working fine when I run them as ephemeral container.

Please provide a resolution for the sound issue ASAP as this is necessary to prevent system resources .

Thanks and Regards Disha Sharma

alexandredevely commented 1 year ago

Hello Disha Sharma,

Thank you for your message, this issue will be fixed in the next release 3.1

Best regards, Alexandre DEVELY

Disha5harma commented 1 year ago

Hello Alexandre,

Looking forward for the next release.

Best regards, Disha Sharma

Disha5harma commented 10 months ago

Hello Alexandre

Sound feature inside pod is still not working in 3.1 version of abcdesktop project. Please resolve this issue as soon as possible.

Thanks & Regards Disha

alexandredevely commented 10 months ago

Hello Disha,

Thank you for your message, I'm sorry sound feature inside pod is still not working in 3.1 version of abcdesktop project. I'm refactoring sound service design. I'm working on new sound service with full webrtc support, and there's lot of code to write. Regards,

Alexandre

alexandredevely commented 9 months ago

Hello Disha,

The new release 3.2 support WebRTC stack. You need to install the release 3.2 ( from and empty directory)

curl -sL https://raw.githubusercontent.com/abcdesktopio/conf/main/kubernetes/install-3.2.sh | bash

and then configure TURN server and od.config file

Read the dedicated page https://www.abcdesktop.io/3.2/config/webrtc/

The sound ( Speaker and Microphone ) is ready for pod application

See you Alexandre