# 2 Easy Julia Beginner Programs

**URL:** https://discourse.julialang.org/t/2-easy-julia-beginner-programs/121476
**Category:** New to Julia
**Created:** [October 19, 2024, 8:46am UTC](https://discourse.julialang.org/t/2-easy-julia-beginner-programs/121476 "2024-10-19T08:46:50Z")
**Posts on this page:** 4
**Page:** 1

<div class="post-metadata">

### Author: ![benslinux](https://avatars.discourse-cdn.com/v4/letter/b/a88e57/32.png) [@benslinux](https://discourse.julialang.org/u/benslinux)
#### Post date: [October 19, 2024, 8:46am UTC](https://discourse.julialang.org/t/2-easy-julia-beginner-programs/121476/1 "2024-10-19T08:46:50Z")

</div>

I posted yesterday inquiring about sharing Julia projects here - my takeaway was that this forum isn’t really the place to post code - especially programs considered too elementary / basic. I get that - for any beginners here looking for easy programs in Julia - here are a waveform plotter and .wav generator.

> **[Julia - Simple Waveform Plot](https://dev.to/benslinux2024/julia-simple-waveform-plot-47am)**
>
> This is a simple program that prints a waveform as a .png file based on the input values. You will...

> **[Julia Programming - Simple Wave Generator](https://dev.to/benslinux2024/julia-simple-wave-generator-5f5i)**
>
> Julia using PortAudio, WAV # Parameters fs = 44100 # Sample rate (Hz) duration = 2 # Duration...

---

<div class="post-metadata">

### Author: ![sadish-d](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/sadish-d/32/48058_2.png) [@sadish-d](https://discourse.julialang.org/u/sadish-d)
#### Post date: [October 21, 2024, 2:51am UTC](https://discourse.julialang.org/t/2-easy-julia-beginner-programs/121476/2 "2024-10-21T02:51:30Z")

</div>

You can also play the waveform directly from PortAudio. The readme has some examples: [GitHub - JuliaAudio/PortAudio.jl: PortAudio wrapper for the Julia programming language, compatible with the JuliaAudio family of packages](https://github.com/JuliaAudio/PortAudio.jl)

---

<div class="post-metadata">

### Author: ![benslinux](https://avatars.discourse-cdn.com/v4/letter/b/a88e57/32.png) [@benslinux](https://discourse.julialang.org/u/benslinux)
#### Post date: [October 21, 2024, 9:52am UTC](https://discourse.julialang.org/t/2-easy-julia-beginner-programs/121476/3 "2024-10-21T09:52:55Z")

</div>

Thanks - I originally included PortAudio - but I’m often using WSL2 on Windows 10 and it can’t easily access the Windows system utilities - ie - sound, display, etc. It’s the same with trying to plot from within WSL - it can’t access the host OS display. So my solution is to just have Julia create the .wav or .png as a standalone file - then I can play or view the file whether I’m on Windows or my Linux PC.

---

<div class="post-metadata">

### Author: ![Palli](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/palli/32/3380_2.png) [@Palli](https://discourse.julialang.org/u/Palli)
#### Post date: [October 31, 2024, 5:31pm UTC](https://discourse.julialang.org/t/2-easy-julia-beginner-programs/121476/4 "2024-10-31T17:31:31Z")

</div>

> [@benslinux](#):
>
> I originally included PortAudio - but I’m often using WSL2 on Windows 10 and it can’t easily access the Windows system utilities - ie - sound, display

[Neither of your original links work now.]

FYI: You have access to audio/Port Audio (and display) with WSL2, at least with WSLg (I suppose Julia works with it, but I think it implies a full Linux distro running in WSL2?): [wslg/README.md at main · microsoft/wslg · GitHub](https://github.com/microsoft/wslg/blob/main/README.md#pulse-audio-plugin)

I also see some workaround:

> **[Enabling sound in WSL / Ubuntu - Let It Sing! - X410.dev](https://x410.dev/cookbook/wsl/enabling-sound-in-wsl-ubuntu-let-it-sing/)**
>
> WSL doesn't currently support sound devices. Hence when you open \[…\]

That said, why are you making life difficult for you, not rather using regular Windows (with audio, or Linux only with audio)?

If you get audio to work with just WSL2, please let us know and how, and maybe make a PR to relevant Julia projects.

I didn’t know about Yarp (for robotics), nor that it had anything to do with audio, but I noticed it linked from some audio issue:

> <https://github.com/conda-forge/yarp-feedstock/issues/49#issuecomment-2223080968>
>
> \### Solution to issue cannot be found in the documentation.
> 
> \- \[X\] I checked the… documentation.
> 
> \### Issue
> 
> On Ubuntu 24.04 on wSL2 (I tested that the audio plays well with \`play examplesound.mp3\` : 
> 
> ~~~
> (yarp) root@DESKTOP-T0NQNLN:~# yarpdev --device AudioPlayerWrapper --subdevice portaudioPlayer --name /icub/speakers --playback\_network\_buffer\_size 0.5 --start --AUDIO\_BASE::samples 4000 --AUDIO\_BASE::channels 1 --dev\_id 0 --AUDIO\_BASE::rate 48000
> \[DEBUG\] |yarp.dev.PolyDriver|AudioPlayerWrapper| Parameters are (AUDIO\_BASE (samples 4000) (channels 1) (rate 48000)) (dev\_id 0) (device AudioPlayerWrapper) (name "/icub/speakers") (playback\_network\_buffer\_size 0.5) (single\_threaded 1) (start) (subdevice portaudioPlayer)
> \[INFO\] |yarp.os.Port|/icub/speakers/audio:i| Port /icub/speakers/audio:i active at tcp://172.28.148.122:10002/
> \[INFO\] |yarp.os.Port|/icub/speakers/status:o| Port /icub/speakers/status:o active at tcp://172.28.148.122:10003/
> \[INFO\] |yarp.os.Port|/icub/speakers/rpc:i| Port /icub/speakers/rpc:i active at tcp://172.28.148.122:10004/
> \[INFO\] |yarp.device.AudioPlayerWrapper| Using a 'playback\_network\_buffer\_size' of 0.5 s
> \[INFO\] |yarp.device.AudioPlayerWrapper| Increase this value to robustify the real-time audio stream (it will increase latency too)
> \[DEBUG\] |yarp.dev.PolyDriver|portaudioPlayer| Parameters are (AUDIO\_BASE (samples 4000) (channels 1) (rate 48000)) (dev\_id 0) (device portaudioPlayer) (name "/icub/speakers") (playback\_network\_buffer\_size 0.5) (single\_threaded 1) (start) (subdevice portaudioPlayer)
> \[INFO\] |yarp.devices.AudioPlayerDeviceBase| Device configured with the following options:
> \[INFO\] |yarp.devices.AudioPlayerDeviceBase| Frequency: 48000
> \[INFO\] |yarp.devices.AudioPlayerDeviceBase| Samples (buffer size): 4000
> \[INFO\] |yarp.devices.AudioPlayerDeviceBase| Channels: 1
> \[INFO\] |yarp.devices.AudioPlayerDeviceBase| BytesForSample: 2
> \[INFO\] |yarp.devices.AudioPlayerDeviceBase| HW gain: 1
> \[INFO\] |yarp.devices.AudioPlayerDeviceBase| SW gain: 1
> \[INFO\] |yarp.devices.AudioPlayerDeviceBase| Render mode: append
> ALSA lib confmisc.c:855:(parse\_card) cannot find card '0'
> ALSA lib conf.c:5204:(\_snd\_config\_evaluate) function snd\_func\_card\_inum returned error: No such file or directory
> ALSA lib confmisc.c:422:(snd\_func\_concat) error evaluating strings
> ALSA lib conf.c:5204:(\_snd\_config\_evaluate) function snd\_func\_concat returned error: No such file or directory
> ALSA lib confmisc.c:1342:(snd\_func\_refer) error evaluating name
> ALSA lib conf.c:5204:(\_snd\_config\_evaluate) function snd\_func\_refer returned error: No such file or directory
> ALSA lib conf.c:5727:(snd\_config\_expand) Evaluate error: No such file or directory
> ALSA lib pcm.c:2722:(snd\_pcm\_open\_noupdate) Unknown PCM sysdefault
> ALSA lib confmisc.c:855:(parse\_card) cannot find card '0'
> ALSA lib conf.c:5204:(\_snd\_config\_evaluate) function snd\_func\_card\_inum returned error: No such file or directory
> ALSA lib confmisc.c:422:(snd\_func\_concat) error evaluating strings
> ALSA lib conf.c:5204:(\_snd\_config\_evaluate) function snd\_func\_concat returned error: No such file or directory
> ALSA lib confmisc.c:1342:(snd\_func\_refer) error evaluating name
> ALSA lib conf.c:5204:(\_snd\_config\_evaluate) function snd\_func\_refer returned error: No such file or directory
> ALSA lib conf.c:5727:(snd\_config\_expand) Evaluate error: No such file or directory
> ALSA lib pcm.c:2722:(snd\_pcm\_open\_noupdate) Unknown PCM sysdefault
> ALSA lib pcm.c:2722:(snd\_pcm\_open\_noupdate) Unknown PCM cards.pcm.front
> ALSA lib pcm.c:2722:(snd\_pcm\_open\_noupdate) Unknown PCM cards.pcm.rear
> ALSA lib pcm.c:2722:(snd\_pcm\_open\_noupdate) Unknown PCM cards.pcm.center\_lfe
> ALSA lib pcm.c:2722:(snd\_pcm\_open\_noupdate) Unknown PCM cards.pcm.side
> ALSA lib pcm.c:2722:(snd\_pcm\_open\_noupdate) Unknown PCM cards.pcm.surround21
> ALSA lib pcm.c:2722:(snd\_pcm\_open\_noupdate) Unknown PCM cards.pcm.surround21
> ALSA lib pcm.c:2722:(snd\_pcm\_open\_noupdate) Unknown PCM cards.pcm.surround40
> ALSA lib pcm.c:2722:(snd\_pcm\_open\_noupdate) Unknown PCM cards.pcm.surround41
> ALSA lib pcm.c:2722:(snd\_pcm\_open\_noupdate) Unknown PCM cards.pcm.surround50
> ALSA lib pcm.c:2722:(snd\_pcm\_open\_noupdate) Unknown PCM cards.pcm.surround51
> ALSA lib pcm.c:2722:(snd\_pcm\_open\_noupdate) Unknown PCM cards.pcm.surround71
> ALSA lib pcm.c:2722:(snd\_pcm\_open\_noupdate) Unknown PCM cards.pcm.iec958
> ALSA lib pcm.c:2722:(snd\_pcm\_open\_noupdate) Unknown PCM cards.pcm.iec958
> ALSA lib pcm.c:2722:(snd\_pcm\_open\_noupdate) Unknown PCM cards.pcm.iec958
> ALSA lib confmisc.c:855:(parse\_card) cannot find card '0'
> ALSA lib conf.c:5204:(\_snd\_config\_evaluate) function snd\_func\_card\_inum returned error: No such file or directory
> ALSA lib confmisc.c:422:(snd\_func\_concat) error evaluating strings
> ALSA lib conf.c:5204:(\_snd\_config\_evaluate) function snd\_func\_concat returned error: No such file or directory
> ALSA lib confmisc.c:1342:(snd\_func\_refer) error evaluating name
> ALSA lib conf.c:5204:(\_snd\_config\_evaluate) function snd\_func\_refer returned error: No such file or directory
> ALSA lib conf.c:5727:(snd\_config\_expand) Evaluate error: No such file or directory
> ALSA lib pcm.c:2722:(snd\_pcm\_open\_noupdate) Unknown PCM hdmi
> ALSA lib confmisc.c:855:(parse\_card) cannot find card '0'
> ALSA lib conf.c:5204:(\_snd\_config\_evaluate) function snd\_func\_card\_inum returned error: No such file or directory
> ALSA lib confmisc.c:422:(snd\_func\_concat) error evaluating strings
> ALSA lib conf.c:5204:(\_snd\_config\_evaluate) function snd\_func\_concat returned error: No such file or directory
> ALSA lib confmisc.c:1342:(snd\_func\_refer) error evaluating name
> ALSA lib conf.c:5204:(\_snd\_config\_evaluate) function snd\_func\_refer returned error: No such file or directory
> ALSA lib conf.c:5727:(snd\_config\_expand) Evaluate error: No such file or directory
> ALSA lib pcm.c:2722:(snd\_pcm\_open\_noupdate) Unknown PCM hdmi
> ALSA lib pcm.c:2722:(snd\_pcm\_open\_noupdate) Unknown PCM cards.pcm.modem
> ALSA lib pcm.c:2722:(snd\_pcm\_open\_noupdate) Unknown PCM cards.pcm.modem
> ALSA lib pcm.c:2722:(snd\_pcm\_open\_noupdate) Unknown PCM cards.pcm.phoneline
> ALSA lib pcm.c:2722:(snd\_pcm\_open\_noupdate) Unknown PCM cards.pcm.phoneline
> ALSA lib confmisc.c:855:(parse\_card) cannot find card '0'
> ALSA lib conf.c:5204:(\_snd\_config\_evaluate) function snd\_func\_card\_inum returned error: No such file or directory
> ALSA lib confmisc.c:422:(snd\_func\_concat) error evaluating strings
> ALSA lib conf.c:5204:(\_snd\_config\_evaluate) function snd\_func\_concat returned error: No such file or directory
> ALSA lib confmisc.c:1342:(snd\_func\_refer) error evaluating name
> ALSA lib conf.c:5204:(\_snd\_config\_evaluate) function snd\_func\_refer returned error: No such file or directory
> ALSA lib conf.c:5727:(snd\_config\_expand) Evaluate error: No such file or directory
> ALSA lib pcm.c:2722:(snd\_pcm\_open\_noupdate) Unknown PCM default
> ALSA lib confmisc.c:855:(parse\_card) cannot find card '0'
> ALSA lib conf.c:5204:(\_snd\_config\_evaluate) function snd\_func\_card\_inum returned error: No such file or directory
> ALSA lib confmisc.c:422:(snd\_func\_concat) error evaluating strings
> ALSA lib conf.c:5204:(\_snd\_config\_evaluate) function snd\_func\_concat returned error: No such file or directory
> ALSA lib confmisc.c:1342:(snd\_func\_refer) error evaluating name
> ALSA lib conf.c:5204:(\_snd\_config\_evaluate) function snd\_func\_refer returned error: No such file or directory
> ALSA lib conf.c:5727:(snd\_config\_expand) Evaluate error: No such file or directory
> ALSA lib pcm.c:2722:(snd\_pcm\_open\_noupdate) Unknown PCM default
> ALSA lib confmisc.c:855:(parse\_card) cannot find card '0'
> ALSA lib conf.c:5204:(\_snd\_config\_evaluate) function snd\_func\_card\_id returned error: No such file or directory
> ALSA lib confmisc.c:422:(snd\_func\_concat) error evaluating strings
> ALSA lib conf.c:5204:(\_snd\_config\_evaluate) function snd\_func\_concat returned error: No such file or directory
> ALSA lib confmisc.c:1342:(snd\_func\_refer) error evaluating name
> ALSA lib conf.c:5204:(\_snd\_config\_evaluate) function snd\_func\_refer returned error: No such file or directory
> ALSA lib conf.c:5727:(snd\_config\_expand) Evaluate error: No such file or directory
> ALSA lib pcm.c:2722:(snd\_pcm\_open\_noupdate) Unknown PCM dmix
> Segmentation fault
> ~~~
> 
> \### Installed packages
> 
> \`\`\`shell
> (yarp) root@DESKTOP-T0NQNLN:~# conda list
> \# packages in environment at /root/miniforge3/envs/yarp:
> \#
> \# Name Version Build Channel
> \_libgcc\_mutex 0.1 conda\_forge conda-forge
> \_openmp\_mutex 4.5 2\_gnu conda-forge
> ace 8.0.0 hac33072\_1 conda-forge
> alsa-lib 1.2.12 h4ab18f5\_0 conda-forge
> aom 3.9.1 hac33072\_0 conda-forge
> attr 2.5.1 h166bdaf\_1 conda-forge
> bzip2 1.0.8 hd590300\_5 conda-forge
> c-ares 1.32.0 h4ab18f5\_0 conda-forge
> ca-certificates 2024.7.4 hbcca054\_0 conda-forge
> cairo 1.18.0 hbb29018\_2 conda-forge
> dav1d 1.2.1 hd590300\_0 conda-forge
> dbus 1.13.6 h5008d03\_3 conda-forge
> eigen 3.4.0 h00ab1b0\_0 conda-forge
> expat 2.6.2 h59595ed\_0 conda-forge
> ffmpeg 7.0.1 gpl\_h3589c0a\_102 conda-forge
> font-ttf-dejavu-sans-mono 2.37 hab24e00\_0 conda-forge
> font-ttf-inconsolata 3.000 h77eed37\_0 conda-forge
> font-ttf-source-code-pro 2.038 h77eed37\_0 conda-forge
> font-ttf-ubuntu 0.83 h77eed37\_2 conda-forge
> fontconfig 2.14.2 h14ed4e7\_0 conda-forge
> fonts-conda-ecosystem 1 0 conda-forge
> fonts-conda-forge 1 0 conda-forge
> freeglut 3.2.2 ha6d2627\_3 conda-forge
> freetype 2.12.1 h267a509\_2 conda-forge
> fribidi 1.0.10 h36c2ea0\_0 conda-forge
> gettext 0.22.5 h59595ed\_2 conda-forge
> gettext-tools 0.22.5 h59595ed\_2 conda-forge
> glib 2.80.3 h8a4344b\_1 conda-forge
> glib-tools 2.80.3 h73ef956\_1 conda-forge
> gmp 6.3.0 hac33072\_2 conda-forge
> gnutls 3.7.9 hb077bed\_0 conda-forge
> graphite2 1.3.13 h59595ed\_1003 conda-forge
> gst-plugins-base 1.24.5 hbaaba92\_0 conda-forge
> gstreamer 1.24.5 haf2f30d\_0 conda-forge
> harfbuzz 8.5.0 hfac3d4d\_0 conda-forge
> hdf5 1.14.3 nompi\_hdf9ad27\_105 conda-forge
> icu 73.2 h59595ed\_0 conda-forge
> imath 3.1.11 hfc55251\_0 conda-forge
> jasper 4.2.4 h536e39c\_0 conda-forge
> keyutils 1.6.1 h166bdaf\_0 conda-forge
> krb5 1.21.3 h659f571\_0 conda-forge
> lame 3.100 h166bdaf\_1003 conda-forge
> ld\_impl\_linux-64 2.40 hf3520f5\_7 conda-forge
> lerc 4.0.0 h27087fc\_0 conda-forge
> libabseil 20240116.2 cxx17\_h59595ed\_0 conda-forge
> libaec 1.1.3 h59595ed\_0 conda-forge
> libasprintf 0.22.5 h661eb56\_2 conda-forge
> libasprintf-devel 0.22.5 h661eb56\_2 conda-forge
> libass 0.17.1 h8fe9dca\_1 conda-forge
> libblas 3.9.0 22\_linux64\_openblas conda-forge
> libcap 2.69 h0f662aa\_0 conda-forge
> libcblas 3.9.0 22\_linux64\_openblas conda-forge
> libclang-cpp15 15.0.7 default\_h127d8a8\_5 conda-forge
> libclang13 18.1.8 default\_h6ae225f\_0 conda-forge
> libcups 2.3.3 h4637d8d\_4 conda-forge
> libcurl 8.8.0 hca28451\_1 conda-forge
> libdeflate 1.20 hd590300\_0 conda-forge
> libdrm 2.4.122 h4ab18f5\_0 conda-forge
> libedit 3.1.20191231 he28a2e2\_2 conda-forge
> libev 4.33 hd590300\_2 conda-forge
> libevent 2.1.12 hf998b51\_1 conda-forge
> libexpat 2.6.2 h59595ed\_0 conda-forge
> libffi 3.4.2 h7f98852\_5 conda-forge
> libflac 1.4.3 h59595ed\_0 conda-forge
> libgcc-ng 14.1.0 h77fa898\_0 conda-forge
> libgcrypt 1.11.0 h4ab18f5\_0 conda-forge
> libgettextpo 0.22.5 h59595ed\_2 conda-forge
> libgettextpo-devel 0.22.5 h59595ed\_2 conda-forge
> libgfortran-ng 14.1.0 h69a702a\_0 conda-forge
> libgfortran5 14.1.0 hc5f4f2c\_0 conda-forge
> libglib 2.80.3 h8a4344b\_1 conda-forge
> libglu 9.0.0 ha6d2627\_1004 conda-forge
> libgomp 14.1.0 h77fa898\_0 conda-forge
> libgpg-error 1.50 h4f305b6\_0 conda-forge
> libhwloc 2.11.0 default\_h5622ce7\_1000 conda-forge
> libi2c 4.3 hcb278e6\_2 conda-forge
> libiconv 1.17 hd590300\_2 conda-forge
> libidn2 2.3.7 hd590300\_0 conda-forge
> libjpeg-turbo 3.0.0 hd590300\_1 conda-forge
> liblapack 3.9.0 22\_linux64\_openblas conda-forge
> liblapacke 3.9.0 22\_linux64\_openblas conda-forge
> libllvm15 15.0.7 hb3ce162\_4 conda-forge
> libllvm18 18.1.8 hc9dba70\_0 conda-forge
> libnghttp2 1.58.0 h47da74e\_1 conda-forge
> libnsl 2.0.1 hd590300\_0 conda-forge
> libogg 1.3.5 h4ab18f5\_0 conda-forge
> libopenblas 0.3.27 pthreads\_hac2b453\_1 conda-forge
> libopencv 4.10.0 qt5\_py39h0e214d5\_501 conda-forge
> libopenvino 2024.2.0 h2da1b83\_1 conda-forge
> libopenvino-auto-batch-plugin 2024.2.0 hb045406\_1 conda-forge
> libopenvino-auto-plugin 2024.2.0 hb045406\_1 conda-forge
> libopenvino-hetero-plugin 2024.2.0 h5c03a75\_1 conda-forge
> libopenvino-intel-cpu-plugin 2024.2.0 h2da1b83\_1 conda-forge
> libopenvino-intel-gpu-plugin 2024.2.0 h2da1b83\_1 conda-forge
> libopenvino-intel-npu-plugin 2024.2.0 he02047a\_1 conda-forge
> libopenvino-ir-frontend 2024.2.0 h5c03a75\_1 conda-forge
> libopenvino-onnx-frontend 2024.2.0 h07e8aee\_1 conda-forge
> libopenvino-paddle-frontend 2024.2.0 h07e8aee\_1 conda-forge
> libopenvino-pytorch-frontend 2024.2.0 he02047a\_1 conda-forge
> libopenvino-tensorflow-frontend 2024.2.0 h39126c6\_1 conda-forge
> libopenvino-tensorflow-lite-frontend 2024.2.0 he02047a\_1 conda-forge
> libopus 1.3.1 h7f98852\_1 conda-forge
> libpciaccess 0.18 hd590300\_0 conda-forge
> libpng 1.6.43 h2797004\_0 conda-forge
> libpq 16.3 ha72fbe1\_0 conda-forge
> libprotobuf 4.25.3 h08a7969\_0 conda-forge
> libsndfile 1.2.2 hc60ed4a\_1 conda-forge
> libsqlite 3.46.0 hde9e2c9\_0 conda-forge
> libssh2 1.11.0 h0841786\_0 conda-forge
> libstdcxx-ng 14.1.0 hc0a3c3a\_0 conda-forge
> libsystemd0 255 h3516f8a\_1 conda-forge
> libtasn1 4.19.0 h166bdaf\_0 conda-forge
> libtiff 4.6.0 h1dd3fc0\_3 conda-forge
> libunistring 0.9.10 h7f98852\_0 conda-forge
> libuuid 2.38.1 h0b41bf4\_0 conda-forge
> libva 2.22.0 hb711507\_0 conda-forge
> libvorbis 1.3.7 h9c3ff4c\_0 conda-forge
> libvpx 1.14.1 hac33072\_0 conda-forge
> libwebp-base 1.4.0 hd590300\_0 conda-forge
> libxcb 1.16 hd590300\_0 conda-forge
> libxcrypt 4.4.36 hd590300\_1 conda-forge
> libxkbcommon 1.7.0 h2c5496b\_1 conda-forge
> libxml2 2.12.7 hc051c1a\_1 conda-forge
> libyarp 3.9.0 hf094a1e\_5 conda-forge
> libzlib 1.3.1 h4ab18f5\_1 conda-forge
> lz4-c 1.9.4 hcb278e6\_0 conda-forge
> mpg123 1.32.6 h59595ed\_0 conda-forge
> mysql-common 8.3.0 hf1915f5\_4 conda-forge
> mysql-libs 8.3.0 hca2cd23\_4 conda-forge
> ncurses 6.5 h59595ed\_0 conda-forge
> nettle 3.9.1 h7ab15ed\_0 conda-forge
> nspr 4.35 h27087fc\_0 conda-forge
> nss 3.102 h593d115\_0 conda-forge
> numpy 2.0.0 py312h22e1c76\_0 conda-forge
> ocl-icd 2.3.2 hd590300\_1 conda-forge
> openexr 3.2.2 haf962dd\_1 conda-forge
> openh264 2.4.1 h59595ed\_0 conda-forge
> openssl 3.3.1 h4ab18f5\_1 conda-forge
> p11-kit 0.24.1 hc5aa10d\_0 conda-forge
> pcre2 10.44 h0f59acf\_0 conda-forge
> pip 24.0 pyhd8ed1ab\_0 conda-forge
> pixman 0.43.2 h59595ed\_0 conda-forge
> portaudio 19.6.0 h7c63dc7\_9 conda-forge
> pthread-stubs 0.4 h36c2ea0\_1001 conda-forge
> pugixml 1.14 h59595ed\_0 conda-forge
> pulseaudio-client 17.0 hb77b528\_0 conda-forge
> python 3.12.4 h194c7f8\_0\_cpython conda-forge
> python\_abi 3.12 4\_cp312 conda-forge
> qt-main 5.15.8 ha2b5568\_22 conda-forge
> readline 8.2 h8228510\_1 conda-forge
> robot-testing-framework 2.0.1 hcb278e6\_1 conda-forge
> sdl 1.2.68 h293081c\_0 conda-forge
> sdl2 2.30.5 hef7aa77\_0 conda-forge
> setuptools 70.2.0 pyhd8ed1ab\_0 conda-forge
> snappy 1.2.1 ha2e4443\_0 conda-forge
> soxr 0.1.3 h0b41bf4\_3 conda-forge
> svt-av1 2.1.0 hac33072\_0 conda-forge
> tbb 2021.12.0 h434a139\_2 conda-forge
> tinyxml 2.6.2 h4bd325d\_2 conda-forge
> tk 8.6.13 noxft\_h4845f30\_101 conda-forge
> tzdata 2024a h0c530f3\_0 conda-forge
> wayland 1.23.0 h5291e77\_0 conda-forge
> wayland-protocols 1.36 hd8ed1ab\_0 conda-forge
> wheel 0.43.0 pyhd8ed1ab\_1 conda-forge
> x264 1!164.3095 h166bdaf\_2 conda-forge
> x265 3.5 h924138e\_3 conda-forge
> xcb-util 0.4.1 hb711507\_2 conda-forge
> xcb-util-image 0.4.0 hb711507\_2 conda-forge
> xcb-util-keysyms 0.4.1 hb711507\_0 conda-forge
> xcb-util-renderutil 0.3.10 hb711507\_0 conda-forge
> xcb-util-wm 0.4.2 hb711507\_0 conda-forge
> xkeyboard-config 2.42 h4ab18f5\_0 conda-forge
> xorg-fixesproto 5.0 h7f98852\_1002 conda-forge
> xorg-inputproto 2.3.2 h7f98852\_1002 conda-forge
> xorg-kbproto 1.0.7 h7f98852\_1002 conda-forge
> xorg-libice 1.1.1 hd590300\_0 conda-forge
> xorg-libsm 1.2.4 h7391055\_0 conda-forge
> xorg-libx11 1.8.9 hb711507\_1 conda-forge
> xorg-libxau 1.0.11 hd590300\_0 conda-forge
> xorg-libxdmcp 1.1.3 h7f98852\_0 conda-forge
> xorg-libxext 1.3.4 h0b41bf4\_2 conda-forge
> xorg-libxfixes 5.0.3 h7f98852\_1004 conda-forge
> xorg-libxi 1.7.10 h7f98852\_0 conda-forge
> xorg-libxrender 0.9.11 hd590300\_0 conda-forge
> xorg-renderproto 0.11.1 h7f98852\_1002 conda-forge
> xorg-xextproto 7.3.0 h0b41bf4\_1003 conda-forge
> xorg-xf86vidmodeproto 2.3.1 h7f98852\_1002 conda-forge
> xorg-xproto 7.0.31 h7f98852\_1007 conda-forge
> xz 5.2.6 h166bdaf\_0 conda-forge
> yarp 3.9.0 ha770c72\_5 conda-forge
> yarp-python 3.9.0 py312h9b7a4f6\_5 conda-forge
> ycm-cmake-modules 0.16.4 hac33072\_0 conda-forge
> zlib 1.3.1 h4ab18f5\_1 conda-forge
> zstd 1.5.6 ha6fb4c9\_0 conda-forge
> \`\`\`
> 
> 
> \### Environment info
> 
> \`\`\`shell
> (yarp) root@DESKTOP-T0NQNLN:~# conda info
> 
> active environment : yarp
> active env location : /root/miniforge3/envs/yarp
> shell level : 1
> user config file : /root/.condarc
> populated config files : /root/miniforge3/.condarc
> /root/.condarc
> conda version : 24.3.0
> conda-build version : not installed
> python version : 3.10.14.final.0
> solver : libmamba (default)
> virtual packages : \_\_archspec=1=skylake
> \_\_conda=24.3.0=0
> \_\_cuda=12.0=0
> \_\_glibc=2.39=0
> \_\_linux=5.15.153.1=0
> \_\_unix=0=0
> base environment : /root/miniforge3 (writable)
> conda av data dir : /root/miniforge3/etc/conda
> conda av metadata url : None
> channel URLs : https://conda.anaconda.org/conda-forge/linux-64
> https://conda.anaconda.org/conda-forge/noarch
> package cache : /root/miniforge3/pkgs
> /root/.conda/pkgs
> envs directories : /root/miniforge3/envs
> /root/.conda/envs
> platform : linux-64
> user-agent : conda/24.3.0 requests/2.31.0 CPython/3.10.14 Linux/5.15.153.1-microsoft-standard-WSL2 ubuntu/24.04 glibc/2.39 solver/libmamba conda-libmamba-solver/24.1.0 libmambapy/1.5.8
> UID:GID : 0:0
> netrc file : None
> offline mode : False
> \`\`\`

[https://www.yarp.it/latest/group\_\_yarpdev.html](https://www.yarp.it/latest/group__yarpdev.html)

> **[Getting sound to work on WSL2](https://discourse.ubuntu.com/t/getting-sound-to-work-on-wsl2/11869/5)**
>
> For me work the configurations as described above, but with a change: in pulseaudio configuration in the file default.pa the line is load-module module-native-protocol-tcp auth-anonymous=1 works fine on windows 10 build 2004 / wsl2 / ubuntu 20.4
