-
-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
Showing
16 changed files
with
352 additions
and
7 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,56 @@ | ||
Hi everybody, | ||
|
||
We are glad to announce the third edition of *Liquidshop*, the Liquidsoap | ||
workshop, which will be held online on | ||
|
||
** Tuesday 30 May 2023 ** | ||
|
||
The goal is to gather all people interested in Liquidsoap (of course) and welcome | ||
any contribution, related or not to Liquidsoap. | ||
|
||
We are particularly eager to get to know how people in the community do radio, | ||
media streaming and more, learning about specific tools or workflow that we | ||
could, in turn, use to enhance how liquidsoap works. | ||
|
||
We also love to meet the people involved and engaged with these technologies, | ||
community radios, non-profit but also budding startups or more established | ||
businesses, art project and installations and more! | ||
|
||
Topics of interest are for instance | ||
|
||
- audio and video streaming | ||
- radio broadcasting | ||
- signal processing | ||
- audio and video synthesis | ||
- website interaction | ||
- community projects | ||
- creative art and art installations | ||
- and so on | ||
|
||
This is thus the place to share to the world your favorite or cutting edge | ||
technologies and projects! | ||
|
||
We will have 3 different tracks for the event, namely | ||
|
||
- showcases: short presentations about a website / radio / art installation that | ||
you built using Liquidsoap or other related tools | ||
- tech talks: in-depth presentation of a technology related to Liquidsoap and | ||
streaming in general | ||
- workshops: user-centered freeform discussions about your project or issues | ||
around Liquidsoap and streaming | ||
|
||
If you're interested to participate, whether it is as an attendee or a | ||
presenter, make sure to register via our website at | ||
http://www.liquidsoap.info/liquidshop/3/ or directly via the form available at | ||
https://forms.gle/2QZDNJUH9XdRJ5bP8 | ||
|
||
We are super excited for this event. We have already secured a couple of | ||
interesting speakers and we would love to get to know the community better, see | ||
what y'all are doing with liquidsoap and other releated projects, community | ||
radios, live video, weird installations, etc. and meet with everyone. | ||
|
||
Finally, if any of you have some specific topics to discuss and would like to | ||
learn more about Liquidsoap, this will be a great place to connect! | ||
|
||
See y'all soon!<br/> | ||
-- Romain and Sam |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,7 @@ | ||
all: index.html | ||
|
||
ci: | ||
$(MAKE) -C .. $@ | ||
|
||
%.html: %.md | ||
pandoc -s $< -o $@ |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,3 @@ | ||
title: Liquidshop 3 — The Liquidsoap workshop | ||
description: The workshop around Liquidsoap and related technologies. | ||
theme: jekyll-theme-hacker |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,265 @@ | ||
The **liquidshop 3** is the third edition of a workshop about | ||
[Liquidsoap](https://www.liquidsoap.info/) and related technologies. The goal is | ||
to gather all people interested in Liquidsoap (of course) and welcome any | ||
contribution, related or not to Liquidsoap. | ||
|
||
We are particularly eager to get to know how people in the community do radio, | ||
media streaming and more, learning about specific tools or workflow that we | ||
could, in turn, use to enhance how liquidsoap works. We also love to meet the | ||
people involved and engaged with these technologies, community radios, | ||
non-profit but also budding startups or more established businesses, art project | ||
and installations and more! | ||
|
||
Topics of interest are for instance | ||
|
||
- audio and video streaming | ||
- radio broadcasting | ||
- signal processing | ||
- audio and video synthesis | ||
- website interaction | ||
- community projects | ||
- creative art and art installations | ||
- and so on | ||
|
||
This is thus the place to share to the world your favorite or cutting edge | ||
technologies and projects! | ||
|
||
It will be held on **Tuesday 30 May 2023**. Feel free to | ||
[register](https://forms.gle/2QZDNJUH9XdRJ5bP8) in order to attend or propose a | ||
talk! | ||
|
||
<!-- | ||
Attending | ||
--------- | ||
The event is fully online and the video-conference website is | ||
[https://bbb.liquidshop.info](http://bbb.liquidsoap.info/). | ||
Presentations | ||
------------- | ||
Three kinds of presentations will be featured during the workshop: | ||
- _showcase_ (15 min): a short presentation about a website / radio / art | ||
installation that you built using Liquidsoap or related tools | ||
- _tech talks_ (30 min): an in-depth presentation of a technology related to | ||
Liquidsoap and streaming in general | ||
- _workshop_: user-centered freeform discussions about your project or issues | ||
around Liquidsoap and streaming | ||
--> | ||
|
||
Schedule | ||
-------- | ||
|
||
The workshop will be held on Tuesday 30 May 2023. | ||
|
||
The tentative schedule is the following, and still subject to changes | ||
|
||
| 12:45 GMT | _Welcome_ | | ||
| 13:00 GMT | Romain Beauxis: _Latest news about Liquidsoap_ | | ||
| 13:30 GMT | Youenn Piolet: _Building an open source production ready liquidsoap stack for radio broadcasting using cloud native tools_ | | ||
| 14:00 GMT | Alejandro Ferrari: _IoT based Broadcast radio capture_ | | ||
| 14:30 GMT | Ivan Rendulic: _[MusicBox](https://airmusic.io) or Air Music_ | | ||
| 14:45 GMT | Oriol Gómez: _How Liquidsoap changes my radio needs_ | | ||
| 15:00 GMT | Umar Dockrat: _Technology in Religious Community Broadcasting_ | | ||
| 15:15 GMT | Jean-Baptiste Bayle: _Radiophonic projects_ | | ||
| 15:30 GMT | Denis "Jaromil" Roio: _[frei0r](https://frei0r.dyne.org/) workshop_ | | ||
| 16:00 GMT | Sheri Barclay: _[KPISS](https://kpiss.fm/) 2023_ | | ||
| 16:30 GMT | Peter Bokor: _Scheduling dynamic length radio shows in fixed time slots_ | | ||
| 17:00 GMT | Martin Kirchgessner: _Making your app interact with Liquidsoap_ | | ||
| 17:30 GMT | Mircea Paun: _Which next song would be the best?_ | | ||
| 18:00 GMT | _Goodbye_ | | ||
|
||
Abstracts | ||
--------- | ||
|
||
### Regular talks | ||
|
||
**Romain Beauxis: _Latest news about Liquidsoap_** / [slides](slides/liquidsoap.pdf) | ||
|
||
<iframe width="560" height="315" src="https://www.youtube.com/embed/bQiHuFJRNH8" title="YouTube video player" frameborder="0" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share" allowfullscreen></iframe> | ||
|
||
Presenting the new features of Liquidsoap. | ||
|
||
**Youenn Piolet: _Building an open source production ready liquidsoap stack for | ||
radio broadcasting using cloud native tools_** / [slides](slides/rf.pdf) | ||
|
||
<iframe width="560" height="315" src="https://www.youtube.com/embed/Lyj4YLj2evY" title="YouTube video player" frameborder="0" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share" allowfullscreen></iframe> | ||
|
||
The ins an outs of building a portable liquidsoap stack for resilient radio live | ||
streaming, with production ready open source monitoring tools: docker, | ||
prometheus, grafana, alertmanager, nginx, icecast. In this presentation we will | ||
share our liquidsoap scripts and a cloud native monitoring stack similar to what | ||
we use at [Radio France](https://www.radiofrance.fr/) to stream and monitor our | ||
70 online radios. | ||
|
||
**Alejandro Ferrari: _IoT based Broadcast radio capture_** / [slides](slides/mediainbox.pdf) | ||
|
||
<iframe width="560" height="315" src="https://www.youtube.com/embed/7zTmn7D0uNk" title="YouTube video player" frameborder="0" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share" allowfullscreen></iframe> | ||
|
||
We'll share some lesson learned trying to build a remote managed IoT Broadcast | ||
capture and recording under bad internet. | ||
|
||
### Showcase presentations | ||
|
||
**Ivan Rendulic: _[MusicBox](https://airmusic.io) or Air Music_** / [slides](slides/musicbox.pdf) | ||
|
||
<iframe width="560" height="315" src="https://www.youtube.com/embed/owfzGVnnzbc" title="YouTube video player" frameborder="0" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share" allowfullscreen></iframe> | ||
|
||
Using LiquidSoap on AWS to stream music from server. | ||
|
||
**Oriol Gómez: _How Liquidsoap changes my radio needs_** | ||
|
||
<iframe width="560" height="315" src="https://www.youtube.com/embed/6aij9N0c1yY" title="YouTube video player" frameborder="0" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share" allowfullscreen></iframe> | ||
|
||
The importance of an open source system like Liquidsoap and how it helped me not | ||
to use a managed solution like Centova. | ||
|
||
**Umar Dockrat: _Technology in Religious Community Broadcasting_** / [slides](slides/umar.pdf) | ||
|
||
<iframe width="560" height="315" src="https://www.youtube.com/embed/IwRY_JC-xzg" title="YouTube video player" frameborder="0" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share" allowfullscreen></iframe> | ||
|
||
How we are using online streaming to facilitate tolerance in multicultural | ||
communities. | ||
|
||
**Jean-Baptiste Bayle: _Radiophonic projects_** / [slides](slides/pi-node.pdf) | ||
|
||
<iframe width="560" height="315" src="https://www.youtube.com/embed/Zh9duID1rKA" title="YouTube video player" frameborder="0" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share" allowfullscreen></iframe> | ||
|
||
Some projects made with Liquidsoap: | ||
|
||
- [Radio Free Assange](http://p-node.org/freeassange) | ||
- [talking clock project](http://stream.p-node.org/clock.mp3) | ||
- [∏ANO](https://p-node.org/piano/) | ||
|
||
|
||
### Workshops | ||
|
||
**Denis "Jaromil" Roio: _[frei0r](https://frei0r.dyne.org/) workshop_** / [slides](slides/frei0r.pdf) | ||
|
||
<iframe width="560" height="315" src="https://www.youtube.com/embed/t9HqBy6nH2k" title="YouTube video player" frameborder="0" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share" allowfullscreen></iframe> | ||
|
||
A workshop around the [frei0r](https://frei0r.dyne.org/) collection of video | ||
effect plugins, which are supported by Liquidsoap. | ||
|
||
**Sheri Barclay: _[KPISS](https://kpiss.fm/) 2023_** / [slides](slides/kpiss.pdf) | ||
|
||
<iframe width="560" height="315" src="https://www.youtube.com/embed/k3VmuZcdiSg" title="YouTube video player" frameborder="0" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share" allowfullscreen></iframe> | ||
|
||
A brief discussion of our community and workflow. | ||
|
||
**Peter Bokor: _Scheduling dynamic length radio shows in fixed time slots_** / [slides](slides/lahmacun.pdf) | ||
|
||
<iframe width="560" height="315" src="https://www.youtube.com/embed/FaPPfjhTfns" title="YouTube video player" frameborder="0" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share" allowfullscreen></iframe> | ||
|
||
[Lahmacun radio](https://lahmacun.hu/) is a happy Liquidsoap user since many | ||
years now. We use a custom Liquidsoap configuration inside an Azuracast | ||
instance. Our basic use case is fixed time slots for shows in a weekly | ||
rotation. One challenge we face is that the exact length of each show is a | ||
priori unknown. For example, a show on Tuesday between 6-7PM may be 55 or 70 | ||
minutes and the Liquidsoap configuration needs to handle it in a flexible | ||
manner. The expected semantics we'd like to implement is that too short episodes | ||
will not be played again in the slot (an ambient playlist will be played | ||
instead) and too long episodes will be faded out at the end of the slot. Also, | ||
shows need to start on time, which means that other playbacks may need to be | ||
interrupted. We at Lahmacun radio have been experimenting with different ways of | ||
implementing the previous semantics, which are: 1) scheduled switch + once | ||
operator + external daily reloads (currently in production), 2) scheduled | ||
switch + delay operator (in development). In this talk/workshop, we'd like to | ||
discuss our main use case with other users and improve on our solution if | ||
necessary/possible. | ||
|
||
**Martin Kirchgessner: _Making your app interact with Liquidsoap_** / [slides](slides/showergel.pdf) | ||
|
||
<iframe width="560" height="315" src="https://www.youtube.com/embed/_STnqvCSzlU" title="YouTube video player" frameborder="0" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share" allowfullscreen></iframe> | ||
|
||
For the past 3 years I've been developing | ||
[Showergel](https://showergel.readthedocs.io), a light web application acting as | ||
a front-end to a Liquisoap script. It was designed to be plugged with any | ||
Liquidsoap script: that was too ambitious, but at least I've learned a few | ||
things along the way! In this talk, I will share some insights and advices to | ||
fellow developers trying to interact with a running Liquidsoap script. | ||
|
||
**Mircea Paun: _Which next song would be the best?_** | ||
|
||
<iframe width="560" height="315" src="https://www.youtube.com/embed/_9fi_Foa1DI" title="YouTube video player" frameborder="0" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share" allowfullscreen></iframe> | ||
|
||
Playlist Scheduler, playlist import custom settings, automatic create playlist | ||
from a playlist file. | ||
|
||
I want to help to improve music playlist scheduling songs: artist and title | ||
separation / Song properties separation like: tempo, mood, public top scoring, personal scoring... / "same hour separation" / title & artist & song (hours) prev. day / number of plays in other hours till play again in same hour / "max. waiting" then force to schedule (days) / "percent back" in a scheduler (per individual song or per tag/properties) / priority/order of scheduling (per category or group/tag/properties), I mean which one will be choosing first then second and so on, when engine search for the right song. Day restrictions (will override the others separation rules): Song or Artist or Title max per day | ||
|
||
Registration | ||
------------ | ||
|
||
If you want to attend [**please register | ||
here**](https://forms.gle/2QZDNJUH9XdRJ5bP8). Registration is free but mandatory | ||
for organisational purposes (in particular, we need your mail in order to | ||
communicate the link to the live stream later on). | ||
|
||
Sponsoring | ||
---------- | ||
|
||
Please reach out if you want to sponsor the event in some way, you can also make | ||
[donations on Paypal](http://paypal.me/LiquidsoapMedia). | ||
|
||
Editing | ||
------- | ||
|
||
In case you find a mistake on this page, please contact the organizers or [file | ||
a pull request](https://github.com/savonet/liquidshop). | ||
|
||
Organizing team | ||
--------------- | ||
|
||
In case of any question, comment or suggestion please contact the organizers | ||
|
||
- Romain Beauxis: [[email protected]](mailto:[email protected]) | ||
- Samuel Mimram: [[email protected]](mailto:[email protected]) | ||
|
||
Links | ||
----- | ||
|
||
Links from participants: | ||
|
||
[440Music](https://www.440music.com/) / [audiomastering.lt](http://audiomastering.lt) / [Azuracast](https://azuracast.com/) / [BFF.fm](https://bff.fm/) / [BMIR](https://bmir.org/) / [Cambridge Digital Radio](https://cambridgedigitalradio.co.uk) / [Charon Faustinus](https://charon.monster) / [Chris Masters](https://www.chrismasters.studio/) / [ChuntFM](https://www.chunt.org/) / [Dee Spaces](https://www.deespaces.com/en/) / [DRN1](DRN1.com) / [firedrill](https://freedrull.online/) / [Frei0r](https://dyne.org/software/frei0r/) / [G&L](https://www.gl-systemhaus.de/) / [Gargoyle](http://gargoyle.co.za/) / [Hawkwynd Radio](www.hawkwynd.com) / [He can jog](https://hecanjog.com) / [KPISS.FM](KPISS.FM) / [Kynan Puru Watt](http://kynan.pw/) / [Kyriakos Tsoukalas](https://www.ktsoukalas.com/) / [lahmacun](https://lahmacun.hu) / [LICKD](https://lickd.co/) / [Live365](https://live365.com/) / [LiveATC.net](https://liveatc.net) / [LiveMasjid](https://www.livemasjid.com/) / [mawalkingradio.com](http://mawalkingradio.com/) / [mediainbox](http://mediainbox.net/) / [NEXUS](https://nexus.org) / [Oriol Gómez](https://www.oriolgomez.com) / [Orion](https://www.orion-web.hr) / [Pi Radio](https://piradio.de/) / [Pierre Depaz](https://pierredepaz.net) / [QuantumCast](https://www.quantumcast-digital.de) / [Radio blackout](https://radioblackout.org/) / [radiocafé](http://radiocafe.ro/) / [radiofrance](https://radiofrance.fr/) / [Radiophone](http://radiophone.gr/) / [Ruff Cutz Radio](https://turbozone.org/) / [Scenir Telepresence](https://telepresence-scenic.ca/) / [Scout Radio](https://scout.radio/) / [Sharp stream](https://sharp-stream.com) / [shoutcastnet](https://www.shoutcastnet.com/) / [Shouting Fire](https://shoutingfire.com/) / [Shoutzor](www.shoutzor.com) / [Showergel](https://showergel.readthedocs.io) / [SoundStack](https://soundstack.com) / [Starsystem FM](http://radiosurle.net/) / [Systrum Sistum](https//systrum.net) / [Taifuun FM](https://taifuun.eu) / [this is the coast](www.thisisthecoast.co.uk) / [Uncertain.fm](uncertain.fm) / [VestRadio](https://www.vestaradio.net) / [Vincent Rioux](http://vincentrioux.net/) / [Πnode](https://p-node.org/) | ||
|
||
Previous editions: | ||
|
||
- [Liquidshop 1](../1/) | ||
- [Liquidshop 2](../2/) | ||
|
||
<center><a href="https://www.liquidsoap.info/"><img src="https://www.liquidsoap.info/assets/img/bottle_invert.png" alt="drawing" height="100px" style="margin-top: 50px;"/></a></center> | ||
|
||
<style> | ||
p {text-align: justify;} | ||
#downloads {display: none;} | ||
a {text-decoration: none;} | ||
a:hover {text-decoration: underline;} | ||
h1 {text-shadow: 0 0 10px;} | ||
h2 {text-shadow: 0 0 5px;} | ||
iframe {display: block; margin: auto;} | ||
ul li {list-style-image: none;} | ||
li {list-style-type: "– ";} | ||
</style> | ||
|
||
<script> | ||
window.onload = function() { | ||
var date = new Date(); | ||
var tzo = - (date.getTimezoneOffset() / 60); | ||
var tzs; // TZ sign | ||
|
||
if (tzo >= 0) { tzs = "+"; } | ||
else { tzs = ""; } | ||
|
||
document.querySelector("#schedule + p + p").innerHTML += " (all times are given in <a href='https://en.wikipedia.org/wiki/Greenwich_Mean_Time'>GMT</a>, the current GMT time is "+date.getUTCHours()+":"+date.getUTCMinutes()+" and your current timezone is GMT"+tzs+tzo+"):"; | ||
/* | ||
const hours = document.querySelectorAll("#schedule + p + p + table tr td:first-child"); | ||
hours.forEach(function(h) { | ||
d = new Date("Jan 23 2022 " + h.innerHTML); | ||
h.innerHTML += "(" + d.getHours() + ":" + d.getMinutes() + " LT)"; | ||
}); | ||
*/ | ||
} | ||
</script> |
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,3 +1,3 @@ | ||
title: Liquidshop 3 — The Liquidsoap workshop | ||
title: Liquidshop 4 — The Liquidsoap workshop | ||
description: The workshop around Liquidsoap and related technologies. | ||
theme: jekyll-theme-hacker |
Oops, something went wrong.