http://wiki.rivendellaudio.org/api.php?action=feedcontributions&user=Zotz&feedformat=atomRivendell Wiki - User contributions [en]2024-03-29T14:36:38ZUser contributionsMediaWiki 1.26.4http://wiki.rivendellaudio.org/index.php?title=Using_Rivendell_As_A_Video_Playout_System&diff=455Using Rivendell As A Video Playout System2020-03-01T16:09:13Z<p>Zotz: Creating Using Rivendell As A Video Playout System</p>
<hr />
<div><big>'''Rivendell Video Playout System'''</big><br />
<br />
<br />
=== High Level Explanation of what is going on ===<br />
<br />
Basically, using Rivendell as a video (television?) automation system involves the "trick" of using macro carts in a video group (in several video dedicated groups?) with cart_cut numbers matching the video file names and storing them in /var/vid where Rivindell's normal audio goes in /var/snd<br />
<br />
There is some macro and bash script "trickery" which allows a log of video macro carts loaded into rdairplay to thay the videos as scheduled. A jock in the studion sitting in front of the rdairplay screen can do a lof of what a radio station jock can do.<br />
<br />
=== Learn to use Rivendell as a Radio Automation System First ===<br />
<br />
I suggest you get to know Rivendell as it is intended to be used first.<br />
* Learn rdlibrary for managing your assets.<br />
* Learn rdlogmanager and how to use events, clocks, and grids to generate logs.<br />
* Learn how to use rdairplay to play your audio.<br />
* Etc.<br />
<br />
=== Rivendell Video Playout System on github. ===<br />
<br />
You can get the info and code you need to do this from github:<br />
<br />
* https://github.com/zotz/drradioutils/tree/master/rivvids</div>Zotzhttp://wiki.rivendellaudio.org/index.php?title=Main_Page&diff=454Main Page2020-03-01T15:35:47Z<p>Zotz: /* Hacks */</p>
<hr />
<div><big>'''Welcome to the Rivendell Wiki'''</big> dedicated to [http://www.rivendellaudio.org/index.shtml Rivendell]<br />
<br />
Here you'll find the collected wisdom of our contributors who are involved in broadcasting facilities of all shapes and sizes. ''Please feel free to contribute from your experience as well.''<br />
<br />
<br />
<big>'''What is Rivendell?'''</big><br />
<br />
Rivendell is a full-featured radio automation system targeted for use in professional broadcast environments. It is available under the GNU General Public License. See the [http://www.rivendellaudio.org/index.shtml Rivendell Project] for a more detailed description.<br />
<br />
<br />
<big>'''Where is the old Wiki?'''</big><br />
<br />
You can find an archived copy of the old Wiki on the archive.org website [https://web.archive.org/web/20170601011211/http://rivendell.tryphon.org/wiki/Main_Page here].<br />
<br />
<br />
=== Evaluating Rivendell ===<br />
If you are new to Rivendell, you might want to start [[Evaluating Rivendell|here]].<br />
<br />
Current Rivendell users may want to read the list of [[Notable_Differences_Between_Version_2_And_Version_3|notable differences]] between Rivendell versions 2 and 3.<br />
<br />
=== Installation ===<br />
* [[Installing Rivendell]] - How to install Rivendell on various Linux distributions.<br />
<br />
=== Hardware ===<br />
* [[Hardware Compatibility Lists]] - What Soundcards, Switchers and Touchscreen Monitors work with Rivendell?<br />
* [[Computers for Rivendell]] - What machines are people using to run Rivendell?<br />
<br />
=== Getting Help ===<br />
* [[The mailing lists]] - Probably the most active area for help and discussion on Rivendell.<br />
* [[IRC]] - <span style="color:red;">There is an Internet Relay Chat (IRC) channel setup that various people frequent for helping others with Rivendell. Try this if you need interactive help or troubleshooting.</span><br />
* [[Glossary]] - A glossary of terms you may want to be familiar with in the context of Rivendell.<br />
* [https://www.facebook.com/groups/1739406449620107 Facebook] - Request to join if you are a facebook user<br />
<br />
=== Planning ===<br />
* [[Planning The Installation|Planning your installation]] - A list of things you should consider before installing Rivendell.<br />
<br />
=== Rivendell Setup & Configuration ===<br />
<br />
Instructions and help with the setup and configuration of Rivendell can be found [[Setup & Configuration | here]]<br />
<br />
=== Documentation ===<br />
<br />
You can find User and Administrator guides within the [[Documentation]] area of the wiki. These include "How To" guides and other training material. This can be found [[Documentation | here]]<br />
<br />
=== Other Useful Resources ===<br />
<br />
[[Other Useful Resources]] are available. These cover areas that go beyond Rivendell.<br />
<br />
=== Commercial Rivendell Support ===<br />
* [[Paravel Systems - USA]]<br />
* [[Broadcast Tool &amp; Die - USA]]<br />
<br />
=== Hacks ===<br />
* [[Rivendell Scripts and hacks on Github]]<br />
* [[How To Connect Excel And Access To Rivendell Database]]<br />
* [[Using Rivendell As A Video Playout System]]<br />
<br />
=== Coding Rivendell ===<br />
<br />
* [https://github.com/ElvishArtisan/rivendell Source Code Repository on Github] <br />
* [[Coding Guidelines for Rivendell]]<br />
<br />
'''Outdated?'''<br />
* [[Code documentation]]<br />
* [[Development direction of Rivendell]]<br />
* [[Compiling Rivendell Components in Windows]]<br />
* [[Changing the version number for RPMs]]<br />
* [[WAVE file and meta data info]]<br />
<br />
=== Rivendell Project History ===<br />
<br />
Rivendell was created by [http://www.salemradiolabs.com Salem Radio Laboratories], a division of [http://www.salem.cc Salem Communications], a national network of Christian radio stations and program services. The main developer is now at [http://www.paravelsystems.com Paravel Systems].<br />
<br />
{{Languages|Main Page}}</div>Zotzhttp://wiki.rivendellaudio.org/index.php?title=CookbookChapter02&diff=453CookbookChapter022020-02-29T00:02:00Z<p>Zotz: /* Asset (Audio File) Storage */</p>
<hr />
<div>== Who&rsquo;s On First? ==<br />
<br />
''Where files live, sync, and play''<br />
<br />
Unlike [https://docs.google.com/spreadsheets/d/13NCYwEKh-VgJ_gdpAcQhNoa12TEg27An_scWyHYDC08/edit#gid=0 several other] automation systems, Rivendell &ldquo;''owns''&rdquo; its audio assets (aka audio files). With some of those other automation systems, one simply points the &ldquo;library manager&rdquo; (or player) to a folder full of audio files. Rivendell is different. You must first '''import''' the audio assets into the Rivendell Library. It works this way for several reasons:<br />
<br />
:* '''audio quality'''<br />
:: Rivendell [[wikipedia:Transcoding|transcodes]] your audio files into a professional-grade audio format; you [http://opsguide.rivendellaudio.org/html/sect.rdadmin.manage_hosts.html#sect.rdadmin.manage_hosts.configuring_rdlibrary set this format] on a &ldquo;per-host&rdquo; basis, then all audio files are converted to this format when you [http://opsguide.rivendellaudio.org/html/sect.rdlibrary.alternative_methods_of_audio_ingestion.html#sect2_rdlibrary_importing_audio_from_a_file import audio] (note, that, while it is unusual, you ''can'' have a Rivendell audio library containing files in different formats)<br />
<br />
:* '''organization'''<br />
:: importing audio assets affords you the opportunity to organize your library and make sure things like metadata are in proper order before putting an asset into production<br />
<br />
:* '''work flow support'''<br />
:: many stations have adopted a [[wikipedia:WorkFlow|work flow]] in which they import audio into a &ldquo;holding tank&rdquo;, or temporary category ('''[http://opsguide.rivendellaudio.org/html/sect.rdadmin.manage_groups.html Group]''' in Rivendell terms); this gives staff (volunteers) a chance to preview the audio (for things like explicit language), clean up the metadata, and set '''[http://opsguide.rivendellaudio.org/html/sect.rdlibrary.library_maintenance.html#rdlibrary.editing_markers Markers]''' (like segue points, talk points, fades, etc.) before placing the audio into production<br />
<br />
:* '''data integrity'''<br />
:: Rivendell keeps track of the integrity of the audio files by maintaining a [[wikipedia:SHA1|SHA1 Hash]] of all the audio files&lsquo; contents; this ''hash'' is stored in the Rivendell database<br />
<br />
=== Asset (Audio File) Storage ===<br />
<br />
Rivendell users (show hosts, traffic managers, music directors, etc.) don&rsquo;t really need to know this, but as a Rivendell administrator you should know where the audio files &ldquo;live&rdquo;. True to the Linux tradition of flexibility, the audio library can physically reside anywhere on your network. By default, Rivendell expects audio assets to reside in the folder (directory) '''<code>/var/snd</code>'''.<br />
<br />
This folder may represent a physical disk partition or a volume shared over your network (with any Linux-support network file system, like [[wikipedia:NFS|NFS]], [[wikipedia:CIFS|CIFS]], [[wikipedia:IPFS|IPFS]], etc.).<br />
<br />
(Temporary not by drew Roberts: I am fuzzy, but I think the safe bet is NFS. I think I recall seeing that CIFS/SMB can get you in trouble as it lacks abilities Rivendell uses. I don't recall seeing IPFS mentioned in relation to Rivednell)<br />
<br />
'''(Temporary note by drew Roberts: I am fuzzy, but I think the safe bet is NFS. I think I recall seeing that CIFS/SMB can get you in trouble as it lacks abilities Rivendell uses. I don't recall seeing IPFS mentioned in relation to Rivednell)'''<br />
<br />
=== Metadata Storage ===<br />
<br />
Rivendell audio files '''DO NOT''' contain metadata. All the data ''about'' the audio tracks (e.g., title, album, composer, record label, etc.) is stored in the [http://opsguide.rivendellaudio.org/html/chapter.rdlibrary.html#sect2_rdlibrary_carts Rivendell database].<br />
<br />
This separation of metadata from the audio assets has consequences. <br />
<br />
:* '''consistent metadata editing'''<br />
:: using the Library manager, it is simple and straight-forward to change metadata for individual tracks or groups of tracks<br />
<br />
:* '''sharing with other apps'''<br />
:: it is difficult, though not impossible to share the Rivendell audio library with other (non-Rivendell) audio applications. You will have to be comfortable with the idea that you have to use Rivendell in order to play a track in the Rivendell library<br />
<br />
=== Playing Audio ===<br />
<br />
Rivendell supports several ways to output your audio:<br />
<br />
:* '''[http://opsguide.rivendellaudio.org/html/chapter.rdairplay.html#sect.rdairplay.overview RDAirPlay]'''<br />
:: this is the &ldquo;normal&rdquo; way to play audio; that is, it is the most common way to play Logs that have been prepared using [http://opsguide.rivendellaudio.org/html/chapter.rdlogmanager.html RDLogManager] or [http://opsguide.rivendellaudio.org/html/chapter.rdlogedit.html RDLogEdit] (the Rivendell playlist creation tools)<br />
<br />
:* '''[http://opsguide.rivendellaudio.org/html/sect.rdcatch.automating_playouts.html RDCatch]'''<br />
:: allows you to programatically schedule playout of audio<br />
<br />
:* '''[http://opsguide.rivendellaudio.org/html/chapter.rdcartslots.html RDCartSlots]'''<br />
:: similar to an old-fashioned [https://en.wikipedia.org/wiki/Fidelipac cart] [https://www.radioworld.com/tech-and-gear/be-cart-machines-the-first-and-the-last machine], this player enables you to stack up a bunch of tracks and play them one after the other<br />
<br />
:* '''RDPanel'''<br />
:: a dedicated &ldquo;panel&rdquo; of buttons used to play specific tracks (or fire specific [http://opsguide.rivendellaudio.org/html/chapter.rml.html Macros])<br />
<br />
:* ''Advanced'': '''rdvairplay'''<br />
:: this is Rivendell&rsquo;s so-called &ldquo;headless&rdquo; player -- it is functionally equivalent to RDAirPlay, but has no graphical user interface with which to control the player; as of early 2020 this player is relatively new to the scene: while you can control some aspects of its operation more Macros are needed to fill out the control side of this player</div>Zotzhttp://wiki.rivendellaudio.org/index.php?title=CookbookChapter04&diff=452CookbookChapter042020-02-28T23:23:30Z<p>Zotz: </p>
<hr />
<div>=== All Roads Lead to Rivendell ===<br />
<br />
VNC access from inside and outside the studios.<br />
<br />
Or ... how to gain access to your Rivendell system from anywhere in the Universe.<br />
<br />
==== Initial notes ====<br />
<br />
<This set of initial notes from drew Roberts. Should get fleshed out and made more portable.><br />
<br />
We set up the VNC and other tunnels via SSH with a BASH script like this:<br />
<br />
<br />
<nowiki><br />
#!/bin/bash<br />
<br />
echo "SSH to port forwarded rdserver with tunnels"<br />
echo "vnc71, 6201:6201, 8090:80, 8100:8000"<br />
echo "6201 is the orban?)"<br />
ssh -p 2022 -L 6201:192.168.1.15:6201 -L 5971:localhost:5901 -L 8090:localhost:80 -L 8100:192.168.1.9:8000 -X rd@some.routable.ip.address<br />
</nowiki><br />
<br />
At the ''some.routable.ip.address'' we have the firewall/router that the Rivendell server sits behind on a static IP address or on a reserved IP address in the router so that we can set up the port forward on the router.<br />
<br />
In this example, that would be something like: 192.168.1.10<br />
<br />
The port forwards would be something like this:<br />
<br />
: 2022 external -> 192.168.1.10:22 internal (VNC control of Rivendell server)<br />
: 8100 external -> 192.168.1.9:8000 internal (Icecast server for relay pull)<br />
<br />
The tunnels are like this:<br />
<br />
* VNC client connects to 5971 and gets to 5900 on localhost<br />
* web browser connects to localhost:8090 and goes to port 80 on localhost which is an Apache web server<br />
* web browser connects to localhost:8100 and goes to port 8000 on the Icecast server<br />
* VLC or another audio player capable of streaming from an Icecast server can connect to <nowiki>http://localhost:8100/stream.m3u</nowiki> to listen to the stream over the tunnel.<br />
* VLC or another audio player capable of streaming from an Icecast server can connect to <nowiki>http://some.routable.ip.address:8100/stream.m3u</nowiki> to listen to the stream over the open internet<br />
* Optimod software can connect to localhost on port 6201 to connect to the Optimod port 6201 at 192.168.1.15<br />
<br />
We run x11vnc for the vnc client to connect to over the ssh tunnel described above. What we do is have the user rd set to log in automatically, Then we start x11vnc as enabled by the following:<br />
<br />
<nowiki><br />
$ cat /home/rd/.config/autostart/x11vnc.desktop <br />
<br />
[Desktop Entry]<br />
Encoding=UTF-8<br />
Name=x11vnc<br />
Comment=X11 VNC server<br />
Exec=/usr/bin/gnome-terminal -x /usr/bin/x11vnc -rfbauth /home/rd/.vnc/passwd -display :0 -shared -forever -solid red<br />
Terminal=false<br />
Type=Application<br />
Categories=Application<br />
<br />
</nowiki><br />
<br />
Basically, the desktop entry in .configure/autostart is run on login. This uses gnome terminal to kick off x11vnc with the parameters shown and uses the password stored in /home/rd/.vnc/passwd as shown<br />
<br />
x11vnc was installed as follows:<br />
<br />
<nowiki><br />
yum install x11vnc.x86_64<br />
</nowiki></div>Zotzhttp://wiki.rivendellaudio.org/index.php?title=CookbookChapter04&diff=451CookbookChapter042020-02-28T23:21:18Z<p>Zotz: /* Initial notes */</p>
<hr />
<div>=== All Roads Lead to Rivendell ===<br />
<br />
VNC access from inside and outside the studios.<br />
<br />
Or ... how to gain access to your Rivendell system from anywhere in the Universe.<br />
<br />
==== Initial notes ====<br />
<br />
<This set of initial notes from drew Roberts. Should get fleshed out and made more portable.><br />
<br />
We set up the VNC and other tunnels via SSH with a BASH script like this:<br />
<br />
<br />
<nowiki><br />
#!/bin/bash<br />
<br />
echo "SSH to port forwarded rdserver with tunnels"<br />
echo "vnc71, 6201:6201, 8090:80, 8100:8000"<br />
echo "6201 is the orban?)"<br />
ssh -p 2022 -L 6201:192.168.1.15:6201 -L 5971:localhost:5901 -L 8090:localhost:80 -L 8100:192.168.1.9:8000 -X rd@some.routable.ip.address<br />
</nowiki><br />
<br />
At the ''some.routable.ip.address'' we have the firewall/router that the Rivendell server sits behind on a static IP address or on a reserved IP address in the router so that we can set up the port forward on the router.<br />
<br />
In this example, that would be something like: 192.168.1.10<br />
<br />
The port forwards would be something like this:<br />
<br />
: 2022 external -> 192.168.1.10:22 internal (VNC control of Rivendell server)<br />
: 8100 external -> 192.168.1.9:8000 internal (Icecast server for relay pull)<br />
<br />
The tunnels are like this:<br />
<br />
* VNC client connects to 5971 and gets to 5900 on localhost<br />
* web browser connects to localhost:8090 and goes to port 80 on localhost which is an Apache web server<br />
* web browser connects to localhost:8100 and goes to port 8000 on the Icecast server<br />
* VLC or another audio player capable of streaming from an Icecast server can connect to <nowiki>http://localhost:8100/stream.m3u</nowiki> to listen to the stream over the tunnel.<br />
* VLC or another audio player capable of streaming from an Icecast server can connect to <nowiki>http://some.routable.ip.address:8100/stream.m3u</nowiki> to listen to the stream over the open internet<br />
* Optimod software can connect to localhost on port 6201 to connect to the Optimod port 6201 at 192.168.1.15<br />
<br />
We run x11vnc for the vnc client to connect to over the ssh tunnel described above. What we do is have the user rd set to log in automatically, Then we start x11vnc as enabled by the following:<br />
<br />
<nowiki><br />
$ cat /home/rd/.config/autostart/x11vnc.desktop <br />
<br />
[Desktop Entry]<br />
Encoding=UTF-8<br />
Name=x11vnc<br />
Comment=X11 VNC server<br />
Exec=/usr/bin/gnome-terminal -x /usr/bin/x11vnc -rfbauth /home/rd/.vnc/passwd -display :0 -shared -forever -solid red<br />
Terminal=false<br />
Type=Application<br />
Categories=Application<br />
<br />
</nowiki><br />
<br />
Basically, the desktop entry in .configure/autostart is run on login. This uses gnome terminal to kick off x11vnc with the parameters shown and uses the password stored in /home/rd/.vnc/passwd as shown<br />
<br />
x11vnc was installed as follows:<br />
<br />
<nowiki><br />
yum install x11vnc.x86_64<br />
</nowiki></div>Zotzhttp://wiki.rivendellaudio.org/index.php?title=CookbookChapter04&diff=450CookbookChapter042020-02-28T23:20:37Z<p>Zotz: /* Initial notes */ - added info on x11vnc</p>
<hr />
<div>=== All Roads Lead to Rivendell ===<br />
<br />
VNC access from inside and outside the studios.<br />
<br />
Or ... how to gain access to your Rivendell system from anywhere in the Universe.<br />
<br />
==== Initial notes ====<br />
<br />
<This set of initial notes from drew Roberts. Should get fleshed out and made more portable.><br />
<br />
We set up the VNC and other tunnels via SSH with a BASH script like this:<br />
<br />
<br />
<nowiki><br />
#!/bin/bash<br />
<br />
echo "SSH to port forwarded rdserver with tunnels"<br />
echo "vnc71, 6201:6201, 8090:80, 8100:8000"<br />
echo "6201 is the orban?)"<br />
ssh -p 2022 -L 6201:192.168.1.15:6201 -L 5971:localhost:5901 -L 8090:localhost:80 -L 8100:192.168.1.9:8000 -X rd@some.routable.ip.address<br />
</nowiki><br />
<br />
At the ''some.routable.ip.address'' we have the firewall/router that the Rivendell server sits behind on a static IP address or on a reserved IP address in the router so that we can set up the port forward on the router.<br />
<br />
In this example, that would be something like: 192.168.1.10<br />
<br />
The port forwards would be something like this:<br />
<br />
: 2022 external -> 192.168.1.10:22 internal (VNC control of Rivendell server)<br />
: 8100 external -> 192.168.1.9:8000 internal (Icecast server for relay pull)<br />
<br />
The tunnels are like this:<br />
<br />
* VNC client connects to 5971 and gets to 5900 on localhost<br />
* web browser connects to localhost:8090 and goes to port 80 on localhost which is an Apache web server<br />
* web browser connects to localhost:8100 and goes to port 8000 on the Icecast server<br />
* VLC or another audio player capable of streaming from an Icecast server can connect to <nowiki>http://localhost:8100/stream.m3u</nowiki> to listen to the stream over the tunnel.<br />
* VLC or another audio player capable of streaming from an Icecast server can connect to <nowiki>http://some.routable.ip.address:8100/stream.m3u</nowiki> to listen to the stream over the open internet<br />
* Optimod software can connect to localhost on port 6201 to connect to the Optimod port 6201 at 192.168.1.15<br />
<br />
We run x11vnc for the vnc client to connect to over the ssh tunnel described above. What we do is have the user rd set to log in automatically, Then we start x11vnc as enabled by the following:<br />
<br />
<nowiki><br />
$ cat /home/rd/.config/autostart/x11vnc.desktop <br />
[Desktop Entry]<br />
Encoding=UTF-8<br />
Name=x11vnc<br />
Comment=X11 VNC server<br />
Exec=/usr/bin/gnome-terminal -x /usr/bin/x11vnc -rfbauth /home/rd/.vnc/passwd -display :0 -shared -forever -solid red<br />
Terminal=false<br />
Type=Application<br />
Categories=Application<br />
</nowiki><br />
<br />
Basically, the desktop entry in .configure/autostart is run on login. This uses gnome terminal to kick off x11vnc with the parameters shown and uses the password stored in /home/rd/.vnc/passwd as shown<br />
<br />
x11vnc was installed as follows:<br />
<br />
<nowiki><br />
yum install x11vnc.x86_64<br />
</nowiki></div>Zotzhttp://wiki.rivendellaudio.org/index.php?title=CookbookChapter04&diff=446CookbookChapter042020-02-28T00:24:18Z<p>Zotz: Beginning notes on vnc and rivendell over ssh tunnels.</p>
<hr />
<div>Initial notes.<br />
<br />
We set up the vnc and other tunnels via ssh with a bash script like this:<br />
<br />
<br />
<nowiki><br />
#!/bin/bash<br />
<br />
echo "SSH to port forwarded rdserver with tunnels"<br />
echo "vnc71, 6201:6201, 8090:80, 8100:8000"<br />
echo "6201 is the orban?)"<br />
ssh -p 2022 -L 6201:192.168.1.15:6201 -L 5971:localhost:5901 -L 8090:localhost:80 -L 8100:192.168.1.9:8000 -X rd@some.routable.ip.address<br />
</nowiki><br />
<br />
At the some.routable.ip.address we have the firewall/router that the rivendell server sits behind on a static ip address or on a reserved ip address in the router so that we can set up the port forward on the router.<br />
<br />
In this example, that would be something like: 192.168.1.10<br />
<br />
The port forwards would be something like this:<br />
<br />
2022 external -> 192.168.1.10:22 internal (vnc control of rivendell server)<br />
8100 external -> 192.168.1.9:8000 internal (icecast server for relay pull)<br />
<br />
The tunnels are like this:<br />
<br />
*vnc client connects to 5971 and gets to 5900 on localhost<br />
*web browser connects to localhost:8090 and goes to port 80 on localhost which is an apache web server<br />
*web browser connects to localhost:8100 and goes to port 8000 on the icecast server<br />
*vlc or another audio player capable of streaming from an icecast server can connect to http://localhost:8100/stream.m3u to listen to the stream over the tunnel.<br />
*vlc or another audio player capable of streaming from an icecast server can connect to http://some.routable.ip.address:8100/stream.m3u to listen to the stream over the open internet<br />
*optimod software can connect to localhost on port 6201 to connect to the optimod port 6201 at 192.168.1.15</div>Zotz