Cleaning up site

This commit is contained in:
Zachary Klosko 2020-05-30 19:12:10 -04:00
parent 8e13c99b36
commit 9df3e80e52
7 changed files with 23 additions and 123 deletions

View File

@ -2,7 +2,7 @@ topnav:
- page: Introduction
url: index
- page: Docs
url: contribute
url: scheduling-shows
- page: <svg class="bi bi-camera-video-fill" width="1em" height="1em" viewBox="0 0 16 16" fill="currentColor" xmlns="http://www.w3.org/2000/svg"><path d="M2.667 3h6.666C10.253 3 11 3.746 11 4.667v6.666c0 .92-.746 1.667-1.667 1.667H2.667C1.747 13 1 12.254 1 11.333V4.667C1 3.747 1.746 3 2.667 3z"/><path d="M7.404 8.697l6.363 3.692c.54.313 1.233-.066 1.233-.697V4.308c0-.63-.693-1.01-1.233-.696L7.404 7.304a.802.802 0 0 0 0 1.393z"/></svg> YouTube
url: https://www.youtube.com/channel/UC-MA9GzkTb8th1YlDmF0NfA/featured
- page: <svg class="bi bi-people-fill" width="1em" height="1em" viewBox="0 0 16 16" fill="currentColor" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M7 14s-1 0-1-1 1-4 5-4 5 3 5 4-1 1-1 1H7zm4-6a3 3 0 1 0 0-6 3 3 0 0 0 0 6zm-5.784 6A2.238 2.238 0 0 1 5 13c0-1.355.68-2.75 1.936-3.72A6.325 6.325 0 0 0 5 9c-4 0-5 3-5 4s1 1 1 1h4.216zM4.5 8a2.5 2.5 0 1 0 0-5 2.5 2.5 0 0 0 0 5z"/></svg> Github

View File

@ -155,7 +155,7 @@
<div class="container-fluid p-0">
<div class="row no-gutters popup-gallery">
<div class="col-lg-4 col-sm-6">
<a class="portfolio-box" href="img/portfolio/library.jpg">
<a class="portfolio-box" href="library">
<img class="img-fluid" src="img/portfolio/library.jpg" alt="">
<div class="portfolio-box-caption">
<div class="portfolio-box-caption-content">

View File

@ -1,106 +0,0 @@
# How to Setup Genre based AutoDJ
* YouTube video
[![How to Setup Genre based AutoDJ](http://img.youtube.com/vi/XNVIDnczrOk/0.jpg)](https://www.youtube-nocookie.com/embed/XNVIDnczrOk "How to Setup Genre based AutoDJ")
## Text-based Step-by-step
In this tutorial we will focus on how to build a traditional auto DJ system
where we use a feature called smart blocks and auto loading playlists to play
random music tracks of a certain genre during a show. This tutorial is
primarily focused on program managers but users who are DJs can also benefit
from smart blocks but will only be able to manually schedule them.
So for the purposes of this tutorial we are going to assume that you
have uploaded a number of files of music with the genre metadata all
matching a specific genre, for instance, Alternative. This can be done
ahead of time, but LibreTime has no way of automatically grouping sub
genres and so it is important that you spend some time curating the
track metadata before you upload it to LibreTime as there is not
currently a way to bulk edit tracks from inside LibreTime. Also once
tracks are uploaded the metadata of the track itself isnt changed but
just how it is represented in the LibreTime database. This might change
in the future but would only affect you if you were downloading tracks
and uploading them to another instance and hoped that the changes you
made were saved.
So we can bulk upload a number of creative commons licensed tracks that
have their genre all set to specific genres as one way of getting tracks
if you dont have a mp3 collection of your own to draw from. See links
below for some spots where you can procure tracks where the creators
gave permission for everyone to redistribute play and share them.
One the tracks are uploaded to the system and imported we can now create
a smartblock that will select the tracks that match a certain genre. For
this we will use Genre contains Jazz this will match any track that
has genre anywhere in its genre so big band jazz and swing jazz
would match as well as acid jazz. Any subgenre that doesnt include
jazz explicitly such as be bop would need to be added as a new
modifier.
For the purposes of this smart block we want to select 4 random items.
We also want to avoid really long tracks that are longer than 10
minutes. So we will add the modifier Length is less than 00:10:00
and now this smart block will pull 4 smart blocks. Be sure to preview it
to make sure that you have some matches in your library. This will also
save it.
Now we are going to create a new smart block that plays one promo or
station ID.
Click smartblock and new and then type in the name promo OR ID and then
change the criteria Genre to is promo and now click new modifier and
then is TOTHID.
And then change limit to 1 items.
Now we are going to create a playlist that contains these two smart
blocks.
Click new and then type Jazz with promos
and then click smartblocks and add the Jazz Songs followed by the Promo
or ID smart block.
Now this playlist can be dragged into a schedule show to add 3 random
jazz songs followed by a promo. You can manually repeat the selection in
the playlist to create a long auto DJ playlist. For instance lets add 3
more Jazz Songs and then add 3 Jazz Songs again followed by a Promo or
ID. Now lets save this playlist and go and add it to a scheduled show.
This is a quick and easy way for you to manually schedule a large chunk
of time. You can also use this as an autoloading playlist.
Lets assign this to a new 3 hour show. Called lots of Jazz. Now lets go
under Autoloading Playlist and enable that and in this spot we will
check repeat until full. This will mean that the system will keep
scheduling this playlist until the show is completely full. The only
problem here is that at the end of the show it is almost assured that a
track will be cut off. If you are a web station and you just want to
schedule music for long lengths of time you can schedule shows that are
up to 24 hours long.
On the other hand if you are an FCC licensed station you are required to
have top of the hour IDs as close as possible to the top of the hour. In
this case the random selection of tracks might not suffice for
compliance.
If you have a station ID playlist smartblock in your intro playlist (see
previous tutorial linked below) and you have your tracks broken up
hourly this shouldnt be an issue but it still might result in tracks
being cut of in the middle.
So the best option currently is to change the music tracks to fill the
remaining show from the previous selection of 3 items. And then be sure
to add a promos or musical sound bridges at the end that are also time
remaining but allow overfill.
It is possible that we could improve the way the autoloading playlists
work in the future, please check out LibreTime.org for the latest
release notes and feel free to ask any questions at our forum at
[https://discourse.LibreTime.org](https://discourse.LibreTime.org/)
Thanks for tuning in to another LibreTime tutorial. Our next tutorial
will show you how to use autoloading playlists to add show specific
underwriting or advertisements.

View File

@ -3,12 +3,18 @@ layout: docs
title: FreeIPA Configuration
---
> Quick Links:
- [Apache Configuration](#apache)
- [PAM Configuration](#pam)
- [LDAP Configuration](#ldap)
- [Enable FreeIPA Authentication](#freeipa)
You can configure LibreTime to delegate all authentication to a FreeIPA server.
This allows you users to use their existing FreeIPA credentials. For this to
work you need to configure Apache to use `mod_authnz_pam` and `mod_intercept_form_submit`.
## Apache configuration
## Apache configuration {#apache}
After installing the needed modules you can set up Apache to intercept form logins and
check them against pam.
@ -38,7 +44,7 @@ check them against pam.
</Location>
```
## PAM configuration
## PAM configuration {#pam}
The above configuration expects a PAM configuration for the `http-libretime` service.
@ -49,7 +55,7 @@ auth required pam_sss.so
account required pam_sss.so
```
## LDAP configuration
## LDAP configuration {#ldap}
LibreTime needs direct access to LDAP so it can fetch additional information. It does so with
a [system account](https://www.freeipa.org/page/HowTo/LDAP#System_Accounts) that you need to
@ -95,7 +101,7 @@ groupmap_admin = 'cn=admins,cn=groups,cn=accounts,dc=int,dc=example,dc=org'
groupmap_superadmin = 'cn=superadmin,cn=groups,cn=accounts,dc=int,dc=example,dc=org'
```
## Enable FreeIPA auth
## Enable FreeIPA Authentication {#freeipa}
After everything is set up properly you can enable FreeIPA auth in `airtime.conf`:

View File

@ -1,9 +1,8 @@
---
layout: docs
title: Rights and Royalties
---
# Rights and Royalties
If you're new to broadcasting, or have not streamed your station online before,
reading the following brief explanation of compensation rules for songwriters,
musicians and other copyright holders may save you a great deal of trouble

View File

@ -4,7 +4,8 @@ title: Scheduling Shows
---
<html>
<iframe width="560" height="315" src="https://www.youtube-nocookie.com/embed/TJtWUzAlP08" frameborder="0" allow="accelerometer; autoplay; encrypted-media; gyroscope; picture-in-picture" allowfullscreen></iframe>
<br>
<iframe width="560" height="315" src="https://www.youtube-nocookie.com/embed/TJtWUzAlP08" frameborder="0" allow="accelerometer; autoplay; encrypted-media; gyroscope; picture-in-picture" allowfullscreen></iframe>
</html>
Log in using your username and password using the link in the upper right corner. (If you just installed

View File

@ -1,12 +1,12 @@
---
layout: page
title: Using Vagrant and Virturalbox for developing LibreTime
title: Using Vagrant and Virtualbox for developing LibreTime
blurb: The fastest way to get LibreTime up and running in a way to hack on its source code or to test it locally.
---
> Prerequisites: git, [Vagrant](https://vagrantup.com), libvirt or VirturalBox
### Virtual Box
# VirtualBox
You will need to install [VirtualBox](https://www.virtualbox.org) and may want to consider
installing [vagrant-vbguest](https://github.com/dotless-de/vagrant-vbguest) to update the
@ -16,7 +16,7 @@ guest extensions to match your host system on vagrant up.
vagrant plugin install vagrant-vbguest
```
### Libvirt
# Libvirt
Setting the libvirt provider up on (Ubuntu and Debian)[#Ubuntu and Debian] is straight
forward, using the distribution provided packages. While on
@ -38,7 +38,7 @@ vagrant destroy ubuntu-xenial
vagrant up ubuntu-xenial --provider=libvirt
```
#### Debian and Ubuntu
# Debian and Ubuntu
```bash
sudo apt install vagrant vagrant-libvirt libvirt-daemon-system vagrant-mutate libvirt-dev
@ -51,7 +51,7 @@ vagrant mutate bento/ubuntu-16.04 libvirt
vagrant up ubuntu-xenial --provider=libvirt
```
#### Other Distributions
## Other Distributions
You will need to install [libvirt](https://libvirt.org/) and `vagrant-mutate` and then run
@ -67,7 +67,7 @@ vagrant mutate bento/ubuntu-16.04 libvirt
vagrant up ubuntu-xenial --provider=libvirt
```
## Starting LibreTime Vagrant
# Starting LibreTime Vagrant
To get started you clone the repo and run `vagrant up`. The command accepts a parameter to
change the default provider if you have multiple installed. This can be done by appending
@ -87,7 +87,7 @@ Once you reach the web setup GUI you can click through it using the default valu
connect to the vagrant machine you can run `vagrant ssh ubuntu-xenial` in the libretime
directory.
## Alternative OS installations
# Alternative OS installations
With the above instructions LibreTime is installed on Ubuntu Xenial Xerus. The Vagrant setup
offers the option to choose a different operation system according to you needs.
@ -100,7 +100,7 @@ offers the option to choose a different operation system according to you needs.
| Ubuntu 16.04 | `vagrant up ubuntu-xenial` | Install on Ubuntu Xenial Xerus. |
| CentOS | `vagrant up centos` | Extremely experimental install on 7.3 with native systemd support and activated SELinux. Needs manual intervention due to Liquidsoap 1.3.3. |
## Troubleshooting
# Troubleshooting
If anything fails during the initial provisioning step you can try running `vagrant provision`
to re-run the installer.