Table of Contents

PisoundNotes for streaming

Notes Marco

##################
PURE DATA
##################

On activating the Pure Data module through patchbox utility, it will ask which patch it should autolaunch, it looks for patches in /usr/local/puredata-patches. In partiuclar it looks for blokas.yml metadata files, or just for plain main.pd file. For example, your patch entry point could be located here: /usr/local/puredata-patches/mypatch/main.pd
Source: https://community.blokas.io/t/launching-a-default-pd-patch-in-headless-mode/2230

PD Commandline - https://puredata.info/docs/faq/commandline
https://archive.flossmanuals.net/pure-data/getting-started/starting.html

AUTOLOAD FILE FROM USB STICK - https://github.com/BlokasLabs/pisound/blob/master/scripts/pisound-btn/start_puredata.sh#L29

### TERMINAL START
pd -stderr -jack -audioadddev pisound -alsamidi -channels 2 -r 48000 -nogui -mididev 1  pd_sine_test.pd

### COPY FILES - SCP - https://www.uni-weimar.de/kunst-und-gestaltung/wiki/GMU:Autonomous-Collaborative/patchbox_setup
scp -r pd_sine_test.pd patch@patchbox.local:
###############

https://blokas.io/pisound/docs/pisound-puredata/

#### EXTERNALS
oggcast~
https://sourceforge.net/projects/pure-data/files/libraries/pdogg/
https://github.com/pd-l2ork/pd/tree/master/externals

### Adding pd-unauthorized
Setting up pd-zexy (2.3.1-1) ...
Setting up pd-libdir (1.11-4+b9) ...
Setting up puredata-import (1.3-5+b6) ...
Setting up pd-unauthorized (0.1-5+b1) .

/usr/lib/pd/extra/unauthorized

#START PD WITH EXTERNALS
pd -stderr -jack -audioadddev pisound -alsamidi -channels 2 -r 48000 -nogui -path /usr/lib/pd/extra/unauthorized -lib unauthorized -mididev 1  pd_sine_test.pd &



##########FAQ
IF YOU GET ERROR MESSAGES BY INSTALLING EXTERNAL STUFF WITH APT GET
http://www.solvium.de/blog/2013/raspberrypi-apt-get-error-dpkg-unrecoverable-fatal-error-aborting-files-list-file-for-package-dmsetup-is-missing-final-newline/

dpkg: unrecoverable fatal error, aborting:
 files list file for package 'gpgconf' is missing final newline
E: Sub-process /usr/bin/dpkg returned an error code (2)

So, in my case, I did a

sudo nano /var/lib/dpkg/info/dmsetup.list
(replace ‚dmsetup‘ with the package name in your error message, if different). It contained a bunch of crazy characters, so I just removed them all.

>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
sudo rm /var/lib/dpkg/info/dmsetup
dpkg --configure -a
<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<


>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>

THAT WAS MY FIRST TRY -> WITHOUT PD.
-------------------------------------------------------------------------------
- PISOUND - create Internet Radio Station
https://blokas.io/pisound/docs/example-projects/

#guter artikel
https://www.qrtxt.de/piradio-streamingbox/

LOCUSSONUS – SETUP
- https://locusonus.org/soundmap/admin/user/

ssh patch@patchbox.local
sudo touch /etc/darkice.cfg 
sudo nano -w  /etc/darkice.cfg


###############################################################
### darkice.cfg locusonus
###############################################################
# this section describes general aspects of the live streaming session
[general]
duration      = 0                # duration of encoding, in seconds. 0 means forever
bufferSecs    = 2                # size of internal slip buffer, in seconds
reconnect     = yes              # reconnect to the server(s) if disconnected

# this section describes the audio input that will be streamed
[input]
device        = default #hw:1,0           # Alsa soundcard device for the audio input
sampleRate    = 48000            # sample rate in Hz. try 48000, 96000 or 192000
bitsPerSample = 16               # bits per sample. try 16
channel       = 2                # channels. 1 = mono, 2 = stereo.
                                 # Only stereo mode is supported by Pisound.

# this section describes a streaming connection to an IceCast2 server
# there may be up to 8 of these sections, named [icecast2-0] ... [icecast2-7]
# these can be mixed with [icecast-x] and [shoutcast-x] sections
[icecast2-0]
bitrateMode   = cbr              # variable bit rate
bitrate       = 128
format        = mp3              # format of the stream: mp3
quality       = 0.8              # quality of the stream sent to the server
server        = locus.creacast.com  # host name of the server
port          = 9001             # port of the IceCast2 server, usually 8000
password      = stream123
mountPoint    = mobile_hi_pi.mp3          # mount point of this stream on the IceCast2 server
name          = mobile_hi_pi          # name of the stream
description   = DarkIce on Pisound # description of the stream
url           = http://locus.creacast.com:9001/mobile_hi_pi.mp3 # URL related to the stream
genre         = my genre         # genre of the stream
public        = no               # advertise this stream?
localDumpFile = recording.mp3   # Record also to a file

Notes Gívan

PISOUND revisited... 20220607

While trying to configure the Pisound for streaming, we made the following (incomplete) notes. 
We like the quality of the soundcard, and the fact that patchbox is an optimized os for sound applications.
One thing to remember, the Pisound has no phantom for microphones!  

0. Documentation Pisound: 
   https://blokas.io/pisound/
   https://blokas.io/patchbox-os/docs/
   https://blokas.io/pisound/docs/

Download [Beta] Patchbox OS image 2022-05-17
https://dl.blokas.io/patchbox-os/image_2022-05-17-Patchbox.zip
Default: 
User name 	patch
Password 	blokaslabs
WiFi SSID 	Patchbox
WiFi password 	blokaslabs

We installed it with balenaEtcher (https://www.balena.io/etcher/, super easy) under OSX on a 32Gb sdcard
Additional terminal commands: 
diskutil list (volume disk#)
cd /Volumes/boot (then ls, to see if you are at the right spot)
touch /Volumes/boot/ssh (creates an empty ssh file)

A. Patchbox OS configs

pisound-config
pisound wizard

Interesting: other soundcards can be configured in boot/config.txt

It is advisable to read the Button configuration first: 
https://blokas.io/pisound/docs/the-button/
click 3x to toggle wifi hotspot
hold 5-7s = shutdown

At first the Soundpi would not connect to the WIFI first, maybe that is due to the bullseye upgrade?
Solution: 
sudo raspi-config
System Options -> S5 Boot/Auto Login -> select "B3 Desktop GUI - requiring user to login"
(let's try the automatic login later again)

We tried installing icecast2 and darkice like explained in: 
https://blokas.io/pisound/docs/example-projects/
sudo apt-get install icecast2 darkice

But that did not quite work out, so the idea was to use the installed Vanilla PureData, and use the pdogg externals. At first PD did not recognize any installed or downloaded externals, but that was because of path error, they were automatically installed on: 

We put them in: /usr/lib/pd/extra
You can download the externals by terminal sudo apt install pd-pdogg 
(or replace the pdogg with other lib names)
Don't forget to set in PureData, in preferences both the paths and names of the libraries
For starting up you can also edit the settings in the (hidden) settings file with 
   cd 
   sudo nano .pdsettings

And now happily streaming to locusonus and multiplace servers... 

2. the more professional notes by Marco Kuhn helped out with the following: 
--> INSERT TEXT

		stream multiplace and locusonus

still to test: 
	patch startup on usb stick
	VNC
	pisound app