http://wiki.rivendellaudio.org/api.php?action=feedcontributions&user=DKlann&feedformat=atom
Rivendell Wiki - User contributions [en]
2024-03-29T12:24:03Z
User contributions
MediaWiki 1.26.4
http://wiki.rivendellaudio.org/index.php?title=How_to_handle_Daylight_Savings_Time/Summer_Time_changes_in_Rivendell&diff=763
How to handle Daylight Savings Time/Summer Time changes in Rivendell
2024-03-09T22:28:24Z
<p>DKlann: Correct opening statement in "Spring Forward".</p>
<hr />
<div>== Modify the Log for Fall Change From DST to Standard Time (&ldquo;Fall Back&rdquo;) ==<br />
<br />
This description was posted to the [https://groups.io/g/Rivendell/message/1064 Rivendell groups.io] mailing list on 30 October, 2023 (edited for wiki formatting):<br />
<br />
The fall time change is upon us once again. This Sunday, you will need to add an additional hour of programming between your normal 1am and 2am hours. There are several ways to handle inserting the additional programming. Regardless of which technique you use, it is important that you '''DO NOT''':<br />
<br />
'''A) Schedule a timed start event at exactly 2:00:00am.'''<br />
<br />
'''B) Schedule two &ldquo;1am&rdquo; hours in the same log that both use timed starts within the body of the hour.'''<br />
<br />
Remember, as the clock strikes 2am, the time is adjusted back to 1am, so the extra hour of programming needs to be inserted immediately after 1:59:59am. So, the inserted hour will occupy the second 1am hour of the day. We recommend not scheduling a timed event right at 2:00:00am as some systems may not process the time change quickly enough at the end of the first 1am hour to prevent a 2am timed event from firing an hour prematurely.<br />
<br />
&lowast;&lowast;&lowast; Here are two suggested methods of handling the time change &lowast;&lowast;&lowast;<br />
<br />
=== IF YOU NEED TO USE TIMED STARTS IN THE EXTRA HOUR OF PROGRAMMING ===<br />
<br />
#) Generate the Sunday log as you do normally.<br />
#) Open the Sunday log in [[RDLogEdit]] and use Save As to save a copy of the log using a different name. (We'll call this new log &ldquo;Log B&rdquo;).<br />
#) In &ldquo;Log B&rdquo; delete all carts scheduled prior to 1am. (We will be chaining to this new log after the time change. The 1am hour in this log will be the second 1am hour played).<br />
#) If the first cart in the new log has a timed start attribute set for 1:00:00am. Remove the timed start attribute. (We don't want the log to hang up if it doesn't get loaded in time to hit the timed start. The resulting log will have 23 hours of programming in it).<br />
#) Save the changes made to &ldquo;Log B&rdquo;.<br />
#) Open the original Sunday log in [[RDLogEdit]].<br />
#) Delete all carts scheduled after 1:59:59am. (This will leave you with a log with only 2 hours of programming in it).<br />
#) Add a [https://opsguide.rivendellaudio.org/html/chapter.rdlogedit.html#sect.rdlogedit.chain_events Log Chain] marker at the end of the log that will chain to &ldquo;Log B&rdquo;. (This is done by selecting &ldquo;Insert Meta&rdquo; > &ldquo;Log Chain&rdquo;).<br />
<br />
The result will be that the Saturday log will chain to the original Sunday<br />
log (that only contains 2 hours of programming). At 2am (now 1am) the<br />
original Sunday log will chain to the newly created &ldquo;Log B&rdquo;. Log B contains<br />
all of the programming from 1am to the end of the day where it will chain to<br />
the Monday log as usual.<br />
<br />
=== IF YOU DO NOT NEED TO USE TIMED STARTS IN THE EXTRA HOUR OF PROGRAMMING ===<br />
<br />
#) Generate the Sunday log as you do normally.<br />
#) Use RDLogEdit to insert an extra hour of programming without any timed events in it.<br />
#) Save the modified log.<br />
<br />
== Modify the Log for Spring Change to Daylight Savings Time (&ldquo;Spring Forward&rdquo;) ==<br />
<br />
Changing from Standard Time to Daylight Savings Time in the Spring is simpler than changing from DST to Standard Time in the Fall. You simply need to remove an hour of programming from the Sunday log.<br />
<br />
#) Generate the Sunday log as normal<br />
#) Open the Sunday log in [[RDLogEdit]]<br />
#) Highlight (click or touch) the first line in the 2am hour (including the timed start line if one exists)<br />
#) Shift-click on the last line in the 2am hour to select all the events in that hour, just before the first line in the 3am hour (not including the line with the timed start if one exists)<br />
#) Touch the '''Delete''' button to remove the highlighted log lines<br />
#) Save the log either by touching the '''Save''' button, or the '''OK''' button</div>
DKlann
http://wiki.rivendellaudio.org/index.php?title=How_to_handle_Daylight_Savings_Time/Summer_Time_changes_in_Rivendell&diff=762
How to handle Daylight Savings Time/Summer Time changes in Rivendell
2024-03-09T15:20:15Z
<p>DKlann: Tweak the headings, minor wordsmithing.</p>
<hr />
<div>== Modify the Log for Fall Change From DST to Standard Time (&ldquo;Fall Back&rdquo;) ==<br />
<br />
This description was posted to the [https://groups.io/g/Rivendell/message/1064 Rivendell groups.io] mailing list on 30 October, 2023 (edited for wiki formatting):<br />
<br />
The fall time change is upon us once again. This Sunday, you will need to add an additional hour of programming between your normal 1am and 2am hours. There are several ways to handle inserting the additional programming. Regardless of which technique you use, it is important that you '''DO NOT''':<br />
<br />
'''A) Schedule a timed start event at exactly 2:00:00am.'''<br />
<br />
'''B) Schedule two &ldquo;1am&rdquo; hours in the same log that both use timed starts within the body of the hour.'''<br />
<br />
Remember, as the clock strikes 2am, the time is adjusted back to 1am, so the extra hour of programming needs to be inserted immediately after 1:59:59am. So, the inserted hour will occupy the second 1am hour of the day. We recommend not scheduling a timed event right at 2:00:00am as some systems may not process the time change quickly enough at the end of the first 1am hour to prevent a 2am timed event from firing an hour prematurely.<br />
<br />
&lowast;&lowast;&lowast; Here are two suggested methods of handling the time change &lowast;&lowast;&lowast;<br />
<br />
=== IF YOU NEED TO USE TIMED STARTS IN THE EXTRA HOUR OF PROGRAMMING ===<br />
<br />
#) Generate the Sunday log as you do normally.<br />
#) Open the Sunday log in [[RDLogEdit]] and use Save As to save a copy of the log using a different name. (We'll call this new log &ldquo;Log B&rdquo;).<br />
#) In &ldquo;Log B&rdquo; delete all carts scheduled prior to 1am. (We will be chaining to this new log after the time change. The 1am hour in this log will be the second 1am hour played).<br />
#) If the first cart in the new log has a timed start attribute set for 1:00:00am. Remove the timed start attribute. (We don't want the log to hang up if it doesn't get loaded in time to hit the timed start. The resulting log will have 23 hours of programming in it).<br />
#) Save the changes made to &ldquo;Log B&rdquo;.<br />
#) Open the original Sunday log in [[RDLogEdit]].<br />
#) Delete all carts scheduled after 1:59:59am. (This will leave you with a log with only 2 hours of programming in it).<br />
#) Add a [https://opsguide.rivendellaudio.org/html/chapter.rdlogedit.html#sect.rdlogedit.chain_events Log Chain] marker at the end of the log that will chain to &ldquo;Log B&rdquo;. (This is done by selecting &ldquo;Insert Meta&rdquo; > &ldquo;Log Chain&rdquo;).<br />
<br />
The result will be that the Saturday log will chain to the original Sunday<br />
log (that only contains 2 hours of programming). At 2am (now 1am) the<br />
original Sunday log will chain to the newly created &ldquo;Log B&rdquo;. Log B contains<br />
all of the programming from 1am to the end of the day where it will chain to<br />
the Monday log as usual.<br />
<br />
=== IF YOU DO NOT NEED TO USE TIMED STARTS IN THE EXTRA HOUR OF PROGRAMMING ===<br />
<br />
#) Generate the Sunday log as you do normally.<br />
#) Use RDLogEdit to insert an extra hour of programming without any timed events in it.<br />
#) Save the modified log.<br />
<br />
== Modify the Log for Spring Change to Daylight Savings Time (&ldquo;Spring Forward&rdquo;) ==<br />
<br />
Changing from Standard Time to Daylight Savings Time in the Spring is simpler than changing from Standard Time to DST. You simply need to remove an hour of programming from the Sunday log.<br />
<br />
#) Generate the Sunday log as normal<br />
#) Open the Sunday log in [[RDLogEdit]]<br />
#) Highlight (click or touch) the first line in the 2am hour (including the timed start line if one exists)<br />
#) Shift-click on the last line in the 2am hour to select all the events in that hour, just before the first line in the 3am hour (not including the line with the timed start if one exists)<br />
#) Touch the '''Delete''' button to remove the highlighted log lines<br />
#) Save the log either by touching the '''Save''' button, or the '''OK''' button</div>
DKlann
http://wiki.rivendellaudio.org/index.php?title=How_to_handle_Daylight_Savings_Time/Summer_Time_changes_in_Rivendell&diff=761
How to handle Daylight Savings Time/Summer Time changes in Rivendell
2024-03-06T17:08:17Z
<p>DKlann: Add section describing the switch to DST, delete historical text.</p>
<hr />
<div>== Modify the Log for Fall Change From DST to Standard Time ==<br />
<br />
This description was posted to the [https://groups.io/g/Rivendell/message/1064 Rivendell groups.io] mailing list on 30 October, 2023 (edited for wiki formatting):<br />
<br />
The fall time change is upon us once again. This Sunday, you will need to add an additional hour of programming between your normal 1am and 2am hours. There are several ways to handle inserting the additional programming. Regardless of which technique you use, it is important that you '''DO NOT''':<br />
<br />
'''A) Schedule a timed start event at exactly 2:00:00am.'''<br />
<br />
'''B) Schedule two &ldquo;1am&rdquo; hours in the same log that both use timed starts within the body of the hour.'''<br />
<br />
Remember, as the clock strikes 2am, the time is adjusted back to 1am, so the extra hour of programming needs to be inserted immediately after 1:59:59am. So, the inserted hour will occupy the second 1am hour of the day. We recommend not scheduling a timed event right at 2:00:00am as some systems may not process the time change quickly enough at the end of the first 1am hour to prevent a 2am timed event from firing an hour prematurely.<br />
<br />
&lowast;&lowast;&lowast; Here are two suggested methods of handling the time change &lowast;&lowast;&lowast;<br />
<br />
=== IF YOU NEED TO USE TIMED STARTS IN THE EXTRA HOUR OF PROGRAMMING ===<br />
<br />
#) Generate the Sunday log as you do normally.<br />
#) Open the Sunday log in [[RDLogEdit]] and use Save As to save a copy of the log using a different name. (We'll call this new log &ldquo;Log B&rdquo;).<br />
#) In &ldquo;Log B&rdquo; delete all carts scheduled prior to 1am. (We will be chaining to this new log after the time change. The 1am hour in this log will be the second 1am hour played).<br />
#) If the first cart in the new log has a timed start attribute set for 1:00:00am. Remove the timed start attribute. (We don't want the log to hang up if it doesn't get loaded in time to hit the timed start. The resulting log will have 23 hours of programming in it).<br />
#) Save the changes made to &ldquo;Log B&rdquo;.<br />
#) Open the original Sunday log in [[RDLogEdit]].<br />
#) Delete all carts scheduled after 1:59:59am. (This will leave you with a log with only 2 hours of programming in it).<br />
#) Add a [https://opsguide.rivendellaudio.org/html/chapter.rdlogedit.html#sect.rdlogedit.chain_events Log Chain] marker at the end of the log that will chain to &ldquo;Log B&rdquo;. (This is done by selecting &ldquo;Insert Meta&rdquo; > &ldquo;Log Chain&rdquo;).<br />
<br />
The result will be that the Saturday log will chain to the original Sunday<br />
log (that only contains 2 hours of programming). At 2am (now 1am) the<br />
original Sunday log will chain to the newly created &ldquo;Log B&rdquo;. Log B contains<br />
all of the programming from 1am to the end of the day where it will chain to<br />
the Monday log as usual.<br />
<br />
=== IF YOU DO NOT NEED TO USE TIMED STARTS IN THE EXTRA HOUR OF PROGRAMMING ===<br />
<br />
#) Generate the Sunday log as you do normally.<br />
#) Use RDLogEdit to insert an extra hour of programming without any timed events in it.<br />
#) Save the modified log.<br />
<br />
== Modify the Log for Spring Change to Daylight Savings Time ==<br />
<br />
Changing from Standard Time to Daylight Savings Time in the Spring is simpler than changing from Standard Time to DST. You simply need to remove an hour of programming from the Sunday log.<br />
<br />
#) Generate the Sunday log as normal<br />
#) Open the Sunday log in [[RDLogEdit]]<br />
#) Highlight the first line in the 2am hour (including the timed start line if one exists)<br />
#) Shift-click on the last line in the 2am hour to select all the events in that hour, just before the first line in the 3am hour (not including the line with the timed start if one exists)<br />
#) Touch the '''Delete''' button to remove the highlighted log lines<br />
#) Save the log either by touching the '''Save''' button, or the '''OK''' button</div>
DKlann
http://wiki.rivendellaudio.org/index.php?title=How_to_handle_Daylight_Savings_Time/Summer_Time_changes_in_Rivendell&diff=760
How to handle Daylight Savings Time/Summer Time changes in Rivendell
2024-03-06T16:07:33Z
<p>DKlann: Add text from Glenn Hickman's 2023 groups.io post.</p>
<hr />
<div>== Historical Narrative from 2018 ==<br />
<br />
'''Q:''' We are nearing the end of Daylight Savings Time. How do I add an extra hour so things work correctly in Rivendell?<br />
<br />
'''A:''' ''RDLogEdit> select the log >Edit>'' Add your extra hour of audio carts<br />
<br />
<br />
'''Comment:''' This is even more important in the fall, when 015959EDT is followed by 010000EST, and the entire hour is repeated. <br />
<br />
'''A:''' This is handled by inserting a second 0100 hour, immediately after the first.<br />
<br />
<br />
'''Comment:''' I can visualize -- though not at this moment describe -- some circumstances in which I could envision that breaking...<br />
<br />
'''A:''' Here's one: '''hard start times''' in the "second" 0100 hour.<br />
<br />
<br />
'''Q:''' I assume it doesn't actually cause too much trouble in practice?<br />
<br />
'''A:''' Actually, it hasn't to date. We should find a less ad-hoc way to handle it though. We have eight months.<br />
<br />
<br />
In the US the time change in the Autumn/Fall of the year is at 01:59:59 when the clock goes back to 01:00:00. I know some other parts of the world make the time change at other times of the night. In some areas the time change happens at 02:59:59 when the clock goes back to 02:00:00. <br />
<br />
So to sum up, for the transition from Daylight savings time to Standard Time:<br />
<br />
'''1)''' Add a second hour of programing to the log for the hour that will happen twice that night.<br />
<br />
'''2)''' Do not use any hard start times in the second hour for the repeating hour in the log that would cause the log to jump from the first hour to the second hour in the log.<br />
<br />
== Precise Description for Fall Change to Standard Time from 2023 ==<br />
<br />
This description was posted to the [https://groups.io/g/Rivendell/message/1064 Rivendell groups.io] mailing list on 30 October, 2023 (edited for wiki formatting):<br />
<br />
The fall time change is upon us once again. This Sunday, you will need to add an additional hour of programming between your normal 1am and 2am hours. There are several ways to handle inserting the additional programming. Regardless of which technique you use, it is important that you '''DO NOT''':<br />
<br />
'''A) Schedule a timed start event at exactly 2:00:00am.'''<br />
<br />
'''B) Schedule two &ldquo;1am&rdquo; hours in the same log that both use timed starts within the body of the hour.'''<br />
<br />
Remember, as the clock strikes 2am, the time is adjusted back to 1am, so the extra hour of programming needs to be inserted immediately after 1:59:59am. So, the inserted hour will occupy the second 1am hour of the day. We recommend not scheduling a timed event right at 2:00:00am as some systems may not process the time change quickly enough at the end of the first 1am hour to prevent a 2am timed event from firing an hour prematurely.<br />
<br />
&lowast;&lowast;&lowast; Here are two suggested methods of handling the time change &lowast;&lowast;&lowast;<br />
<br />
=== IF YOU NEED TO USE TIMED STARTS IN THE EXTRA HOUR OF PROGRAMMING ===<br />
<br />
#) Generate the Sunday log as you do normally.<br />
#) Open the Sunday log in [[RDLogEdit]] and use Save As to save a copy of the log using a different name. (We'll call this new log &ldquo;Log B&rdquo;).<br />
#) In &ldquo;Log B&rdquo; delete all carts scheduled prior to 1am. (We will be chaining to this new log after the time change. The 1am hour in this log will be the second 1am hour played).<br />
#) If the first cart in the new log has a timed start attribute set for 1:00:00am. Remove the timed start attribute. (We don't want the log to hang up if it doesn't get loaded in time to hit the timed start. The resulting log will have 23 hours of programming in it).<br />
#) Save the changes made to &ldquo;Log B&rdquo;.<br />
#) Open the original Sunday log in [[RDLogEdit]].<br />
#) Delete all carts scheduled after 1:59:59am. (This will leave you with a log with only 2 hours of programming in it).<br />
#) Add a [https://opsguide.rivendellaudio.org/html/chapter.rdlogedit.html#sect.rdlogedit.chain_events Log Chain] marker at the end of the log that will chain to &ldquo;Log B&rdquo;. (This is done by selecting &ldquo;Insert Meta&rdquo; > &ldquo;Log Chain&rdquo;).<br />
<br />
The result will be that the Saturday log will chain to the original Sunday<br />
log (that only contains 2 hours of programming). At 2am (now 1am) the<br />
original Sunday log will chain to the newly created &ldquo;Log B&rdquo;. Log B contains<br />
all of the programming from 1am to the end of the day where it will chain to<br />
the Monday log as usual.<br />
<br />
=== IF YOU DO NOT NEED TO USE TIMED STARTS IN THE EXTRA HOUR OF PROGRAMMING ===<br />
<br />
#) Generate the Sunday log as you do normally.<br />
#) Use RDLogEdit to insert an extra hour of programming without any timed events in it.<br />
#) Save the modified log.</div>
DKlann
http://wiki.rivendellaudio.org/index.php?title=RDLogEdit&diff=759
RDLogEdit
2024-03-06T16:05:12Z
<p>DKlann: Change link to RDLogEdit in the Rivendell Operations and Administration Guide</p>
<hr />
<div>== RDLogEdit ==<br />
<br />
RDLogEdit is a comprehensive app used to create and edit Rivendell [[Log]]s (aka playlists).<br />
<br />
[[Image:RDLogEdit-3.4.1-list.png|center]]<br />
<br />
On launching the app, RDLogEdit presents you with a list of available Logs to edit. Double-clicking on a Log (or touching to highlight, then touching '''Edit''') opens the Log and enables editing of all Events in the Log.<br />
<br />
[[Image:RDLogEdit-3.4.1-log.png|center]]<br />
<br />
See also the [https://opsguide.rivendellaudio.org/html/chapter.rdlogedit.html RDLogEdit chapter] in the [https://opsguide.rivendellaudio.org/html/index.html Rivendell Operations and Administration Guide].</div>
DKlann
http://wiki.rivendellaudio.org/index.php?title=Jack&diff=733
Jack
2024-02-06T19:27:08Z
<p>DKlann: Minor tweaks and edits.</p>
<hr />
<div>The [https://jackaudio.org/ Jack Audio Connection Kit] (JACK) is a suite of professional-grade, low-latency tools for routing digital audio.<br />
<br />
== Configure Rivendell 3 For Use With JACK ==<br />
<br />
This has been confirmed to work with Rivendell 4 and Ubuntu 22.04.3 LTS - 2/1/24 kw<br />
<br />
=== Overview ===<br />
<br />
You have a several choices for getting audio out of a Rivendell system. Notably Rivendell supports [https://alsa-project.org/ ALSA], the native Linux audio subsystem, and JACK, a layer above ALSA.<br />
<br />
JACK enables multiple audio applications to simultaneously access audio devices on Linux systems.<br />
<br />
In 2021, Rivendell processes and JACK processes must be run as the same user ID. And since Rivendell processes (in the packaged version available from [[Paravel Systems - USA|Paravel Systems]]) '''''always''''' run as ''root'', this means ''jackd''(8) (the JACK daemon) must also run as ''root''.<br />
<br />
=== Configuring Rivendell to use JACK ===<br />
<br />
Prior to configuring JACK, ensure that your computer has the following packages installed: zsh, zita-ajbridge, jackd (no real time when prompted), jacktools (added 2/1/24 kw - Ubuntu 22.04.3 LTS)<br />
<br />
So, you&rsquo;ve decided to use JACK for your Rivendell audio. First, make sure you tell Rivendell to '''not''' use any ALSA devices on your computer using the [[RDAlsaConfig]] Rivendell app. Run this app from the Rivendell menu and simply unhighlight all devices in the list, as shown here:<br />
<br />
[[Image:RDAlsaConfig-no-selections.png|center|400px|thumb|border|RDAlsaConfig Ready for JACK]]<br />
<br />
:(As an aside, when you use JACK for Rivendell&rsquo;s audio routing, you can also use any other [https://jackaudio.org/applications/ JACK-enabled audio app] alongside Rivendell.)<br />
<br />
:(Another aside: know that Rivendell works fine using both JACK clients and [http://www.audioscience.com/ Audio Science] adapters.)<br />
<br />
Set up JACK on a per-host basis by modifying the configuration in [[RDAdmin]]->[[RDAdmin#Manage_Hosts|Manage Hosts]]->''hostname''. In the host configuration window, touch the '''JACK Settings''' button to manage the Jack settings.<br />
<br />
Ensure that Rivendell starts the JACK app by checking the '''Start JACK Server''' checkbox. Unless you have a ''really'' good reason to change it (beyond the scope of this article), leave the '''JACK Server Name''' set to ''(default)'' as shown here: <br />
<br />
[[Image:Jack-clients-3.4.1.png|center|thumb|440px|border|Configured JACK Clients in Reivendell 3.4.1]]<br />
<br />
<div style="clear: both"></div><br />
<br />
It is easiest to set the '''JACK Command Line''' to the full path of a shell script so you can make changes to the way in which the JACK app is started.<br />
<br />
:'''Note''' that regardless of how you configure the '''JACK Command Line''' if you make ''<u>any</u>'' changes to the '''JACK Settings''' you ''<u>must</u>'' restart the Rivendell service, interrupting audio playout, in order for the changes to take effect. Plan your changes accordingly.<br />
<br />
Here is an example JACK startup script:<br />
<br />
<nowiki><br />
#!/bin/sh<br />
<br />
#######################################################################<br />
##<br />
## This script is started by Rivendell caed when the Rivendell daemons<br />
## are launched. The script assumes a "default" Rivendell installation<br />
## with the username 'rd' automatically logged in and running the<br />
## windowing system.<br />
##<br />
## Change the JACK sample rate to match your Rivendell sample rate<br />
## set in RDAdmin->System Settings.<br />
##<br />
#######################################################################<br />
<br />
export LANG=en_US.UTF-8<br />
export TERM=xterm<br />
export QTDIR=/usr/lib64/qt4<br />
export PATH=/sbin:/bin:/usr/bin:/usr/sbin:/usr/local/sbin:/usr/local/bin:/home/rd/bin<br />
export XDG_DATA_DIRS=/usr/local/share/:/usr/share/<br />
export XDG_RUNTIME_DIR=/run/user/1000<br />
export QT_GRAPHICSSYSTEM_CHECKED=1<br />
<br />
exec /usr/bin/jackd --name default -d dummy -r 48000 2>&1 > /var/tmp/jackd.log</nowiki><br />
<br />
Copy the above text and save it in a file named <tt>/usr/local/bin/jackd-start</tt>. Make the file executable with <tt>sudo chmod +x /usr/local/bin/jackd-start</tt>. Enter the full path of the shell script into the '''JACK Command Line''' text box.<br />
Ensure that the sample rate in the above script matches the sample rate in Rivendell Admin > System Settings<br />
<br />
When using the above script, notice that we initialize JACK with a ''&ldquo;dummy&ldquo;'' device. We do this because the default device name is always ''&ldquo;system&rdquo;''. Not only is this a useless name, it is also something one cannot change without editing the JACK source code. In the above script, we assign the ''&ldquo;dummy&rdquo;'' device to the ''&ldquo;system&rdquo;'' JACK client in order to &ldquo;get it out of the way&rdquo;. We then use ''jack-plumbing'' or some other means to connect JACK client inputs and outputs.<br />
<br />
==== Adding JACK Clients ====<br />
<br />
After configuring Rivendell to start the JACK subsystem, you probably need to also start some JACK clients. Do this by adding each one in the '''JACK Clients to Start''' section (see the figure above for examples).<br />
<br />
You might consider using the ''[https://github.com/opensourceradio/ram/blob/master/usr/local/bin/pmw-jack-setup pmw-jack-setup]'' script (or something like it) to configure your ALSA sound devices to work with JACK. This script accepts two parameters: the name of the ALSA device to configure, and the &ldquo;human-readable&rdquo; name you want to give the JACK client. You can learn your ALSA device names by running the command <tt>sudo aplay -l</tt> (or <tt>su - root -c 'aplay -l'</tt>) in a terminal window. Running this command results in output like:<br />
<br />
<nowiki><br />
**** List of PLAYBACK Hardware Devices ****<br />
card 0: Intel [HDA Intel], device 0: CX20561 Analog [CX20561 Analog]<br />
Subdevices: 0/1<br />
Subdevice #0: subdevice #0<br />
card 0: Intel [HDA Intel], device 1: CX20561 Digital [CX20561 Digital]<br />
Subdevices: 1/1<br />
Subdevice #0: subdevice #0</nowiki><br />
<br />
In the above output, the device name for ''card 0'' is <tt>Intel</tt>. Many people prefer more appropriate names for their JACK devices. One common name for the built-in sound device (the &ldquo;sound card&rdquo; on the PC&lsquo;s motherboard) is ''&ldquo;Onboard&rdquo;''. Set up your first '''JACK Client''' in '''RDAdmin''' as follows:<br />
<br />
:* touch '''Add'''<br />
:* enter a meaningful description in the '''Description''' text box; experience (and observing the [https://github.com/ElvishArtisan/rivendell/blob/master/cae/cae_jack.cpp source code]) has shown that the JACK Clients are started in the alpha-numeric order of the '''Description''' label. Use this knowledge to guide your choices of descriptions<br />
:* enter the path and parameters to the setup script: <tt>/usr/local/bin/pmw-jack-setup Intel Onboard</tt> in the '''Command Line''' text box<br />
:* touch '''OK''' to save your settings<br />
<br />
Repeat the above steps for as many ALSA-compatible hardware audio devices as you want to use with Rivendell. Note that ''pmw-jack-setup'' merely configures your hardware audio devices for use with JACK. It does not connect them to Rivendell. Also note that using ''pmw-jack-setup'' requires that you also download and install the &ldquo;helper script&rdquo;, ''[https://github.com/opensourceradio/ram/blob/master/usr/local/bin//zsh-functions zsh-functions]'' in ''/usr/local/bin''. ''zsh-functions'' in turn may also require the installation of additional packages.<br />
<br />
The version of ''pmw-jack-setup'' on github attempt to discern the number of input and output channels for the ALSA device. You can override this with the <tt>--ci ''NUM-CHANNELS''</tt> (capture channels) and <tt>--co ''NUM-CHANNELS''</tt> (playback channels) options, where ''NUM-CHANNELS'' is the actual number of input and output channels you want to use.<br />
<br />
As with <tt>/usr/local/bin/jackd-start</tt>, be sure to set the permissions on ''pmw-jack-setup'' with <tt>sudo chmod +x /usr/local/bin/pmw-jack-setup</tt>.<br />
<br />
<br />
==== Connecting JACK Inputs and Outputs ====<br />
<br />
Once you have successfully configured Rivendell to launch JACK and configure your audio devices, you need to &ldquo;connect&rdquo; the devices to Rivendell. There are several ways to do this, including:<br />
<br />
:* run one or more Rivendell [http://opsguide.rivendellaudio.org/html/chapter.rml.html Macros] to make the connections (see [http://opsguide.rivendellaudio.org/html/sect.rml.commands.html#sect.rml.connect_jack_ports__jc_ JC])<br />
:* run a JACK plumbing service daemon such as ''jack-plumbing'' to automate the connections<br />
:* run the command line ''jack_connect'' application to make the connections<br />
:* use a graphical tool such as [https://qjackctl.sourceforge.io/ qjackctl] or [https://drobilla.net/software/patchage patchage] to make the connections<br />
<br />
The most reliable methods for making JACK connections are those that perform the work automatically and in the background. Unfortunately, CentOS does not package the ''jack-plumbing'' command, so one must either download the source code from the [[wikipedia:Debian_Linux|Debian]] website: [http://deb.debian.org/debian/pool/main/j/jack-tools/jack-tools_20131226.orig.tar.bz2 here] or [http://deb.debian.org/debian/pool/main/j/jack-tools/jack-tools_20131226-1.debian.tar.gz here] and compile it (the original source code for ''jack-plumbing'' seems to have been lost in the bit bucket), or choose a different &ldquo;plumbing&rdquo; tool to manage the JACK connections.<br />
<br />
Here is an example of a configuration file for ''jack-plumbing''. Note that the &ldquo;comment character&rdquo; is a semicolon (&ldquo;&#59;&rdquo;) rather than the more common hash symbol (&ldquo;&#35;&rdquo;). In general, the ''jack-plumbing'' '''''connect''''' statement format is <tt>(connect "source" "destination")</tt>. If you place this in ''/etc/jack-plumbing'' you can start the app with simply ''/bin/jack-plumbing'' (see the figure above):<br />
<br />
<nowiki><br />
; JACK port connection rules.<br />
; See man jack-plumbing for details.<br />
; dklann@broadcasttool.com, Fri Aug 14 09:20:55 PDT 2020<br />
<br />
; Connect the first Rivendell output port to the Onboard card.<br />
; See also pmw-jack-setup and the JACK client name for the<br />
; built-in audio device. Substitute your audio device for<br />
; "Onboard" as necessary...<br />
(connect "rivendell_0:playout_0L" "Onboard:playback_1")<br />
(connect "rivendell_0:playout_0R" "Onboard:playback_2")<br />
; If your sound card has multiple outputs such as the Focusrite Scarlet 4i4, Rivendell can access the second set of outputs with (uncomment):<br />
;(connect "rivendell_0:playout_1R" "Onboard:playback_3")<br />
;(connect "rivendell_0:playout_2R" "Onboard:playback_4")<br />
<br />
; Connect the first Rivendell input port to the Onboard card.<br />
(connect "Onboard:capture_1" "rivendell_0:record_0L")<br />
(connect "Onboard:capture_2" "rivendell_0:record_0R")<br />
<br />
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;<br />
; Audio processing with Calf plugins<br />
; Use this along with calfjackhost to connect some Calf audio<br />
; plugins for real-time audio processing.<br />
;<br />
; Rivendell Primary output to BassEnhancer<br />
;(connect "rivendell_0:playout_0L" "calf:bassenhancer_in_l")<br />
;(connect "rivendell_0:playout_0R" "calf:bassenhancer_in_r")<br />
; -or- Rivendell Primary output to MultibandCompressor input<br />
;(connect "rivendell_0:playout_0L" "calf:multibandcompressor_in_l")<br />
;(connect "rivendell_0:playout_0R" "calf:multibandcompressor_in_r")<br />
; MultibandCompressor output to Limiter input<br />
;(connect "calf:multibandcompressor_out_l" "calf:multibandlimiter_in_l")<br />
;(connect "calf:multibandcompressor_out_r" "calf:multibandlimiter_in_r")<br />
<br />
; BassEnhancer output to MultibandCompressor input<br />
;(connect "calf:bassenhancer_out_l" "calf:multibandcompressor_in_l")<br />
;(connect "calf:bassenhancer_out_r" "calf:multibandcompressor_in_r")<br />
<br />
; MultibandCompressor output to MultibandLimiter input<br />
;(connect "calf:multibandcompressor_out_l" "calf:multibandlimiter_in_l")<br />
;(connect "calf:multibandcompressor_out_r" "calf:multibandlimiter_in_r")<br />
<br />
; MultibandLimiter output to Onboard input<br />
;(connect "calf:multibandlimiter_out_l" "Onboard:playback_1")<br />
;(connect "calf:multibandlimiter_out_r" "Onboard:playback_2")<br />
<br />
; Limiter output to glasscoder input<br />
; This assumes you are running GlassCoder with the JACK<br />
; client name "glass".<br />
;(connect "calf:multibandlimiter_out_l" "glass:input_1")<br />
;(connect "calf:multibandlimiter_out_r" "glass:input_2")</nowiki><br />
<br />
=== Restart Rivendell Service ===<br />
<br />
After making changes to your JACK configuration in Rivendell you must restart the Rivendell service. Do this by either rebooting your Rivendell computer, or running the following command in a terminal window:<br />
<br />
<nowiki>sudo systemctl restart rivendell.service</nowiki><br />
<br />
== Future Work ==<br />
<br />
To do: make JACK work with [https://www.freedesktop.org/wiki/Software/PulseAudio/ PulseAudio].<br />
<br />
This is complete as of April, 2021: <del>To do: in ''pmw-jack-setup'': use data in ''/proc/asound'' to automatically discern the number of input and output channels for ALSA devices.</del><br />
<br />
In 2021 the [https://pipewire.org/ pipewire] audio subsystem is maturing and aims to be compatible with and to eventually replace both the PulseAudio and the JACK audio systems. Pipewire may include more &ldquo;plumbing&rdquo; tools over the long run.</div>
DKlann
http://wiki.rivendellaudio.org/index.php?title=ChangeSummary&diff=726
ChangeSummary
2024-01-30T00:50:59Z
<p>DKlann: Add a blank line after the database version.</p>
<hr />
<div>__NOTOC__<br />
== Rivendell Change Summary ==<br />
<br />
This page contains version change descriptions in summary form for Rivendell versions released within at least the most recent five years (quite probably longer). Change descriptions are limited (mostly) to user-visible changes.<br />
<br />
This change summary tracks the two most recent stable versions. As of November, 2023 you can see summaries for versions [[#Version 4.X Changes|4.X]] and [[#Version 3.X Changes|3.X]].<br />
<br />
Please see the [https://raw.githubusercontent.com/ElvishArtisan/rivendell/master/ChangeLog ChangeLog] and [https://github.com/ElvishArtisan/rivendell/blob/master/NEWS NEWS] files in the [https://github.com/elvishartisan/rivendell source code] for a complete list of changes and bug fixes.<br />
<br />
See the [https://github.com/elvishartisan/rivendell/issues Issues] list for current reported bugs, issues and feature requests.<br />
<br />
== Version 4.X Changes ==<br />
<br />
=== 4.1.3 (2024-01-24) ===<br />
<br />
* Database version '''371''' (no change)<br />
<br />
<br />
* <font style="color:red">Bug fix</font>: Fixed a race in the log machine logic that could cause truncated play-outs with segue transitions<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in ripcd(8) that could cause a segfault when processing a null password in the &lsquo;Login&rsquo; [&rsquo;LO&rsquo;] RML<br />
* <font style="color:red">Bug fix</font>: Fixed a regression in rdairplay(1) that caused the &lsquo;Sch. Time&rsquo; column to be removed from the Full Log lists<br />
* <font style="color:red">Bug fix</font>: Fixed a regression in rdairplay(1) when using the &lsquo;Append Log&rsquo; [&rsquo;AL&rsquo;] RML caused the Full Log widget to only display the first event of the appended log<br />
* <font style="color:red">Bug fix</font>: Fixed a regression in rdcartslots(1) that broke audio meters<br />
* <font style="color:red">Bug fix</font>: Fixed a regression in rdcatch(1) that broke play-out of the head and tail audition buttons<br />
* <font style="color:red">Bug fix</font>: Fixed a regression in rdcatchd(8) that broke play-out events<br />
* <font style="color:red">Bug fix</font>: Fixed a regression in rdcatchd(8) that caused recordings to always be saved in PCM16 format when the &lsquo;Normalize&rsquo; attribute was set for the recording event<br />
* <font style="color:red">Bug fix</font>: Fixed a regression in rdcatchd(8) that caused recordings to MPEG Layer II to fail<br />
* <font style="color:red">Bug fix</font>: Fixed a regression in the &lsquo;Cut Info / Record&rsquo; dialog in rdlibrary(1) that caused the audio meter to fail to be zeroed when resetting from record ready<br />
* <font style="color:red">Bug fix</font>: Fixed regressions in &lsquo;RDCae&rsquo; and the HPI driver in caed(8) that caused the length of audio captures to be reported incorrectly<br />
* <font style="color:red">Bug fix</font>: Fixed regressions in the CAE subsystem that broke play-out positioning and active output port reporting<br />
<br />
* <font style="color:green">Functionality</font>: Reduced the minimum size of rdairplay(1) to 1280x870 so as to fit on a 1280x1024 display<br />
* <font style="color:green">Functionality</font>: Added support for subclauses in the cart library search filter<br />
* <font style="color:green">Functionality</font>: Optimized the handling of cart numbers when searching for carts<br />
<br />
* <font style="color:blue">Code (internal) change</font>: Cleaned up warnings about unprocessed CAE commands in the syslog<br />
* <font style="color:blue">Code (internal) change</font>: Refactored the CAE control interface to assign session IDs from the client rather than the service end<br />
* <font style="color:blue">Code (internal) change</font>: Added &lsquo;debhelper&rsquo; to the list of required build packages for Debian 11 "Bullseye" in &lsquo;INSTALL&rsquo;<br />
* <font style="color:blue">Code (internal) change</font>: Removed the &lsquo;card-num&rsquo;, &lsquo;port-num&rsquo; and &lsquo;stream-num&rsquo; parameters from the &lsquo;Set Output Volume&rsquo; [&rsquo;OV&rsquo;] and &lsquo;Fade Output Volume&rsquo; [&rsquo;FV&rsquo;] CAE commands<br />
* <font style="color:blue">Code (internal) change</font>: Removed vestigal support for the &lsquo;Open RTP Capture Channel&rsquo; [&rsquo;CO&rsquo;] CAE command<br />
* <font style="color:blue">Code (internal) change</font>: Removed vestigal support for the &lsquo;Output Stream Status&rsquo; [&rsquo;MS&rsquo;] CAE command<br />
* <font style="color:blue">Code (internal) change</font>: Added &lsquo;Wants=hpklinux.service&rsquo; to the &lsquo;rivendell&rsquo; SystemD service definition<br />
* <font style="color:blue">Code (internal) change</font>: Changed the default value of the &lsquo;RDLogLine::Imported&rsquo; start time from &lsquo;00:00:00&rsquo; to NULL<br />
* <font style="color:blue">Code (internal) change</font>: Changed the distro name from &lsquo;Raspbian&rsquo; to &lsquo;Raspberry Pi OS&rsquo; in &lsquo;configure.ac&rsquo;<br />
* <font style="color:blue">Code (internal) change</font>: Changed the recommended base branch for PRs from &lsquo;master&rsquo; to &lsquo;v4&rsquo; in the &lsquo;CONTRIBUTING CHANGES&rsquo; section of &lsquo;CODINGSTYLE&rsquo;<br />
* <font style="color:blue">Code (internal) change</font>: Modified the call parameters of the &lsquo;Output Stream Meter Levels&rsquo; [&rsquo;MO&rsquo;] CAE command to use play session serial numbers rather than card and stream numbers<br />
* <font style="color:blue">Code (internal) change</font>: Modified the schema reversion 348=&gt;347 in rddbmgr(8) to remove out-of-bounds SoundPanel button entries<br />
* <font style="color:blue">Code (internal) change</font>: Documented the meaning of the &lsquo;RDLogLine::StartTimeType&rsquo; enum in &lsquo;lib/rdlog_line.h&rsquo;<br />
<br />
* <font style="color:orange">Documentation</font>: Documented the &lsquo;Source&rsquo; and &lsquo;Ingest&rsquo; fields for Cuts in the &lsquo;RDLibrary&rsquo; chapter of the Operations Guide<br />
* <font style="color:orange">Documentation</font>: Rewrote and expanded the &lsquo;Events&rsquo; section of the &lsquo;RDLogManager&rsquo; chapter of the Operations Guide<br />
* <font style="color:orange">Documentation</font>: Added an &lsquo;Evergreen Cuts&rsquo; section to the &lsquo;RDLibrary&rsquo; chapter of the Operations Guide<br />
* <font style="color:orange">Documentation</font>: Rewrote the CAE API documentation so as to use the term &lsquo;stream&rsquo; more consistently<br />
* <font style="color:orange">Documentation</font>: Added a &lsquo;Library Text Searches&rsquo; appendix to the Operations Guide<br />
<br />
<br />
=== 4.1.2 (2023-11-21) ===<br />
<br />
* Database version '''371''' (no change)<br />
<br />
<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdvairplayd(8) that caused virtual logs to fail to process &lsquo;Load Log&lsquo; [&lsquo;LL&rsquo;], &lsquo;Set Duck Level&rsquo; [&lsquo;MD&rsquo;] and &lsquo;Stop&rsquo; [&lsquo;PS&rsquo;] RMLs with a &lsquo;mach&rsquo; parameter of &lsquo;0&rsquo;<br />
<br />
* <font style="color:red">Bug fix</font>: Fixed a regression in the &lsquo;RDHPIPlayStream&rsquo; that could cause audio play-out to be truncated; this code is used to play on Audio Science audio adapters<br />
* <font style="color:red">Bug fixes</font>: Fixed many bugs in &lsquo;RDSoundPanel&rsquo;. Many &ldquo;cosmetic&rdquo; changes including those affecting drag-and-drop operation, button rendering, colors, resizing, etc., as well as crash fixes<br />
* <font style="color:red">Bug fix</font>: Fixed a regression in caed(8) that caused multiple play-outs on a common port to interfere with each others mixer settings<br />
* <font style="color:red">Bug fix</font>: Fixed a bug that failed to remove records from the &lsquo;USER_SERVICE_PERMS&rsquo; database table<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdairplay(1) that caused a segfault when attempting to unload a log from the voice tracker while the tracker was active<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdairplay(1) that allowed access to the Voice Tracker even when the current user had the &lsquo;Voicetrack Logs&rsquo; privilege revoked<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdlogmanager(1) that caused scheduler codes containing space characters to fail to be processed correctly<br />
* <font style="color:red">Bug fix</font>: Fixed a long-standing (and annoying) bug in ripcd(8) that caused memory to be leaked when processing RMLs<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in caed(8) that could cause play-outs from different hosts to cross-talk into each other&rsquo;s outputs when using a shared caed(8) instance<br />
* <font style="color:green">Functionality</font>: Added a &lsquo;TestOutputStreams=&rsquo; directive to the &lsquo;[Caed]&rsquo; section of rd.conf(5); this is likely useful only for developers<br />
* <font style="color:green">Functionality</font>: Added a &lsquo;PadSegueOverlap=&rsquo; directive to rd.conf(5); this value is used in the playout engine to alter the start time of tracks when the transition type is set to '''SEGUE'''<br />
* <font style="color:green">Functionality</font>: Added a &lsquo;--dump-panel-updates&rsquo; switch to rdpanel(1)<br />
* <font style="color:green">Functionality</font>: Added a &lsquo;--dump-panel-updates&rsquo; switch to rdairplay(1)<br />
* <font style="color:green">Functionality</font>: Added a &lsquo;SoundPanel Buttons&rsquo; notification<br />
* <font style="color:green">Functionality</font>: Prepended the string &lsquo;[mixer]&rsquo; to all syslog entries generated as a result of enabling the &lsquo;EnableMixerLogging=&rsquo; directive in rd.conf(5)<br />
* <font style="color:green">Functionality</font>: Added checks to the &lsquo;Add Scheduler Code&rsquo; dialog in rdadmin(1) to enforce the use of only alphanumeric characters plus space<br />
<br />
* <font style="color:blue">Code (internal) change</font>: Refactored the &lsquo;RDSoundPanel&rsquo;, &lsquo;RDPanelButton&rsquo; and &lsquo;RDButtonPanel&rsquo; classes to avoid races when changing the current Rivendell user<br />
* <font style="color:blue">Code (internal) change</font>: Added code to the &lsquo;Unload Playback&rsquo; [&lsquo;UP&rsquo;] CAE command to mute all output port volume controls from the subject output stream<br />
* <font style="color:blue">Code (internal) change</font>: Added a feature to the &lsquo;Set Output Port&rsquo; [&lsquo;OP&rsquo;] CAE command where passing a &lsquo;-1&rsquo; for the &lsquo;port-num&rsquo; argument will cause all output stream volume controls for the specified stream to be muted<br />
* <font style="color:blue">Code (internal) change</font>: Added a &lsquo;RDJsonEscape(const QString &str)&rsquo; function in &lsquo;lib/rdweb.cpp&rsquo; and &lsquo;lib/rdweb.h&rsquo;<br />
* <font style="color:blue">Code (internal) change</font>: Refactored the &lsquo;RDCae&rsquo; class to use the native BSD sockets API instead of &lsquo;QTcpSocket&rsquo;<br />
* <font style="color:blue">Code (internal) change</font>: Added a &lsquo;gpio_fuzz_test&rsquo; test harness in &lsquo;tests/&rsquo;<br />
* <font style="color:blue">Code (internal) change</font>: Added a &lsquo;rml_torture_test&rsquo; test harness in &lsquo;tests/&rsquo;<br />
<br />
* <font style="color:orange">Documentation</font>: Added a rdpanel(1) man page<br />
* <font style="color:orange">Documentation</font>: Clarified the entries for the &lsquo;Pause Panel&rsquo; [&lsquo;PU&rsquo;] and &lsquo;Stop Panel&rsquo; [&lsquo;PT&rsquo;] RMLs in the Operations Guide<br />
* <font style="color:orange">Documentation</font>: Corrected typos in the Operations Guide for the &lsquo;Duck Panel Button&rsquo; [&lsquo;PD&rsquo;] and &lsquo;Set Duck Level&rsquo; [&lsquo;MD&rsquo;] RMLs that incorrectly specified &lsquo;dBFS&rsquo; as the unit for the &lsquo;level&rsquo; parameter<br />
* <font style="color:orange">Documentation</font>: Corrected an error in the invocation specification for the &lsquo;Insert Cart&rsquo; [&lsquo;PX&rsquo;] RML in the Operations Guide<br />
* <font style="color:orange">Documentation</font>: Added &lsquo;Realms&rsquo; to &lsquo;The Rivendell Object Paradigm&rsquo; section of the Operations Guide<br />
* <font style="color:orange">Documentation</font>: Added a note about RDS configuration settings to the exemplar file for the &lsquo;pypad_nautel.py&rsquo; plug-in<br />
<br />
<br />
=== 4.1.0 (2023-08-09) ===<br />
<br />
* Database verson '''371'''<br />
<br />
* <font style="color:red">Bug fix</font>: Fixed regressions that caused spontaneous resizing of the main window in rdairplay(1) when switching between Sound Panel and Voice Tracker views on the right-hand side<br />
* <font style="color:red">Bug fix</font>: Fixed a regression in rdlogmanager(1) that caused the pie chart to fail to be drawn correctly upon first displaying the &lsquo;Edit Clock&rsquo; dialog<br />
* <font style="color:red">Bug fix</font>: Fixed a fencepost bug in the &lsquo;Render Log&rsquo; dialog in rdlogedit(1) that caused rendered log to include the cart immediately after the end of the selected section when setting the &lsquo;Include&rsquo; dropdown to &lsquo;Only Selected Events&rsquo;<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdlibrary(1) that could cause the &lsquo;Add Cart&rsquo; dialog to display the incorrect type for the selected group<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdcastmanager(1) where changes to podcast metadata would fail to be reflected in the feed list<br />
* <font style="color:red">Bug fix</font>: Fixed a regression in rdlogmanager(1) that caused records to be omitted from reports using the &lsquo;CBSI DeltaFlex Traffic Reconciliation v2.01&rsquo; export filter<br />
* <font style="color:red">Bug fix</font>: Fixed a regression in rdlibrary(1) that caused cart deletion to fail with the message "Voicetrack Found"<br />
* <font style="color:green">Functionality</font>: Added an &lsquo;ID&rsquo; column to the &lsquo;Podcast Item List&rsquo; dialog in rdcastmanager(1)<br />
* <font style="color:green">Functionality</font>: Added three columns to the library list in rdlibrary(1): &lsquo;Plays&rsquo;, &lsquo;Last Played&rsquo;, and &lsquo;Ingested On&rsquo;<br />
* <font style="color:green">Functionality</font>: Added support for updating library metadata on subsequent dropbox imports<br />
* <font style="color:orange">Documentation</font>: Added a rivendell(7) manual page<br />
<br />
<br />
=== 4.0.2 (2023-06-23) ===<br />
<br />
* Database verson '''370'''<br />
<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in the voice tracker that caused the waveform displays to be greyed out out immediately after creating a new track marker<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdcatchd(8) that would cause a segfault after reception of a &lsquo;Start Record Deck&rsquo; [&lsquo;RS&rsquo;] RML<br />
* <font style="color:red">Bug fix</font>: Fixed a regression in rdcatch(1) that caused a phantom event entry to appear in the Event List while processing the &lsquo;Start Record Deck&rsquo; [&lsquo;RS&rsquo;] RML<br />
<br />
=== 4.0.1 (2023-06-16) ===<br />
<br />
* Database verson '''370'''<br />
<br />
Rivendell version 4, in development for more than two years, brings many &ldquo;under-the-hood&ldquo; as well as visible changes to the system. This list is incomplete, but attempts to highlight the most important changes. Please edit this page if you see something missing.<br />
<br />
* <font style="color:red">Bug fix</font>: Many bugs have been fixed; many more have likely been introduced<br />
* <font style="color:green">Functionality</font>: switch to graphical programming library [https://www.qt.io/ Qt] version [https://doc.qt.io/qt-5/ 5].<br />
* <font style="color:green">Functionality</font>: new layout of the RDAirPlay window: You may now resize the RDAirPlay window; note however that RDAirPlay has a '''minimum size''' of 1310x870 pixels. RDAirPlay also received a revamped level metering system; the side effect of this is that the meters are now oriented vertically instead of horizontally<br />
* <font style="color:green">Functionality</font>: the minimum supported display (monitor) size is 1680 x 1050 pixels; displays smaller than this may cause problems with some Rivendell applications<br />
* <font style="color:green">Functionality</font>: the &lsquo;Edit Markers&rsquo; window has changed significantly; see the current manual for instructions on setting, changing, and deleting markers from Cuts<br />
* <font style="color:green">Functionality</font>: Rivendell v4.x aims for full compatibility with MySQL 8.0 and earlier versions in their default installation configurations.<br />
* <font style="color:green">Functionality</font>: RDPanel, as well as several windows within RDAdmin now allow for dynamic window sizing<br />
* <font style="color:green">Functionality</font>: Date and time presentation formats can now be customized on the basis of site perferences.<br />
* <font style="color:green">Functionality</font>: It is now possible to disable grid processing on a service-by-service basis, thus permitting a complete schedule to be generated by an external music scheduler. See the &lsquo;Bypassing Grid Processing&rsquo; section in the &lsquo;Generating Logs and Reports with RDLogManager&rsquo; section of the Operation Guide for details.<br />
* <font style="color:orange">Documentation</font>: The documentation has been edited and brought up to date with respect to the current code and functionality of the system<br />
<br />
== Version 3.X Changes ==<br />
<br />
=== 3.6.8 (2023-11-21) ===<br />
<br />
* Database verson '''347'''<br />
<br />
* <font style="color:red">Bug fix</font>: Fixed a long-standing (and annoying) bug in ripcd(8) that caused memory to be leaked when processing RMLs<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in the PyPAD API that caused incorrect date/time resolutions when using the &lsquo;MMM&rsquo; wildcard<br />
* <font style="color:green">Functionality</font>: Changed the value of the &lsquo;Password=&rsquo; directive in the &lsquo;[mySQL]&rsquo; section of &lsquo;conf/rd.conf-sample&rsquo; to &lsquo;hackme&rsquo;<br />
* <font style="color:green">Functionality</font>: Added the API documentation to the &lsquo;rivendell-opsguide&rsquo; RPM package<br />
* <font style="color:green">Functionality</font>: Added API documentation and man pages to the &lsquo;rivendell-opsguide&rsquo; RPM package<br />
<br />
=== 3.6.7 (2023-01-27) ===<br />
<br />
* Database verson '''347'''<br />
<br />
* <font style="color:red">Bug fix</font>: Fixed broken waveform generation on ARM architectures<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdcatchd(8) that caused record events to be captured with the incorrect sampling rate<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in the podcasting subsystem that broke validation of the &lsquo;direct&rsquo; name space<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdlibrary(1) that caused the field names for the &lsquo;FILENAME&rsquo; and &lsquo;LENGTH&rsquo; fields in the &lsquo;Cart Data Dump (CSV)&rsquo; report to be corrupted<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdservice(8) that could cause dropboxes to be instantiated with invalid segue level values<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdlogmanager(1) that caused the slop factors for inline traffic events to fail to be applied when importing a traffic log<br />
* <font style="color:orange">Documentation</font>: Corrected errors in the WebAPI documentation regarding the argument type of the &lsquo;LINE&lt;n&gt;_TIME_TYPE&rsquo; field in the &lsquo;SaveLog&rsquo; call<br />
<br />
=== 3.6.6 (2022-10-02) ===<br />
<br />
* Database verson '''347'''<br />
<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdrssd(8) that caused a podcast episode to be deleted immediately after being made active if the &lsquo;Air Date/Time&rsquo; was set for the future and &lsquo;Item Expires&rsquo; was set to &lsquo;No&rsquo; in the &lsquo;Editing Item&rsquo; dialog<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdcastmanager(1) that caused incorrect ordering when sorting by the &lsquo;Start&rsquo; and &lsquo;Expiration&rsquo; columns in the &lsquo;Podcast Item List&rsquo; dialog<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in the CDDB parser that caused it to emit an error message when processing a 202 response<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in PyPAD where resolution of datetimes could be incorrect<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdservice(8) that could cause a segfault (crash) when started with a previous instance running<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdlogmanager(1) that could cause a segfault (crash) when merging a log<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdrssd(8) that caused incorrect error data to be logged<br />
* <font style="color:red">Bug fix</font>: Fixed a regression in the Disc Ripper in rdlibrary(1) that caused manual changes to track metadata to be incorrectly applied<br />
* <font style="color:green">Functionality</font>: Added &lsquo;--by-isci&rsquo; and &lsquo;--dump-isci-xref&rsquo; options to rdimport(1) and modified rdimport(1) to allow the &lsquo;--by-isci&rsquo; option to take a service name option<br />
* <font style="color:green">Functionality</font>: Added a &lsquo;StayOnTop=&rsquo; directive to the &lsquo;[SoftKeys]&rsquo; section of rd.conf(5)<br />
* <font style="color:green">Functionality</font>: Changed the default &lsquo;--process-interval=&rsquo; value from 60 seconds to 30 seconds in rdrssd(8)<br />
* <font style="color:green">Functionality</font>: Added &lsquo;RDListView::DateTimeSort&rsquo; to the &lsquo;RDListView::SortType enumeration<br />
* <font style="color:green">Functionality</font>: Added explicit processing for 201, 230, 401, 402, 403, 409, 431, 432, 433, 434, 501, 502, 503 and 530 returns in the CDDB parser<br />
* <font style="color:green">Functionality</font>: Added an Online Feed Report to rdcastmanager(1)<br />
* <font style="color:green">Functionality</font>: Modified the full disc ripper and the per-track ripper in rdlibrary(1) to use CD-Text<br />
* <font style="color:green">Functionality</font>: Renamed the &lsquo;CD Metadata Source&rsquo; control in rdlibrary(1) to use &lsquo;CDDB&rsquo; instead of &lsquo;FreeDB&rsquo; when configuring CDDB lookups<br />
* <font style="color:green">Functionality</font>: Added support for a &lsquo;SuppressLinkParameterInheritance=&rsquo; directive in the &lsquo;[Hacks]&rsquo; section of rd.conf(5)<br />
* <font style="color:blue">Code (internal) change</font>: Added code to the podcasting subsystem to log extended curl(1) information to syslog<br />
<br />
=== 3.6.5 (2022-03-18) ===<br />
<br />
* Database verson '''347'''<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdimport(1) that could create duplicate Scheduler Code entries when using the &lsquo;--to-cart&rsquo; and &lsquo;--add-scheduler-code&rsquo; switches simultaneously<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in the &lsquo;rdxport&rsquo; service that caused the &lsquo;ListLog&rsquo; WebAPI call to return null values in the &lsquo;description&rsquo;, &lsquo;isrc&rsquo;, &lsquo;isci&rsquo;, &lsquo;recordingMbId&rsquo; and &lsquo;releaseMbId&rsquo; fields<br />
* <font style="color:green">Functionality</font>: Added a &lsquo;direct&rsquo; namespace to the &lsquo;Apple iTunes&rsquo; and &lsquo;Apple iTunes + Superfeed&rsquo; RSS schemas<br />
<br />
<br />
=== 3.6.4 (2022-02-22) ===<br />
<br />
Note: version 3.6.3 was tagged, but not released.<br />
<br />
* Database verson '''347'''<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdlogmanager(1) that caused leading event attributes to fail to be preserved when suppressing Music of Traffic import markers<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in the rdxport &lsquo;Import&rsquo; service that could result in incorrect end marker placement when processing variable bit rate (VBR) MPEG files<br />
* <font style="color:red">Bug fix</font>: Fixed an arithmetic overflow bug in &lsquo;RDWaveFile&rsquo; that could cause the play length of MPEG-encoded to be incorrectly calculated<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdimport(1) that caused premature validation of metadata<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdxport(8) that caused the &lsquo;SaveLog&rsquo; WebAPI call to fail if the target log didn&rsquo;t exist<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rddbmgr(8) that could cause the 346=&gt;347 schema conversion to hang indefinitely with databases containing large cart libraries<br />
* <font style="color:green">Functionality</font>: Added a &lsquo;SuppressMusicImportLinks=&rsquo; directive to the [Hacks] section of rd.conf(5)<br />
* <font style="color:green">Functionality</font>: Added support for [NowGroups] and [NextGroups] sections in PyPAD script configurations<br />
* <font style="color:green">Functionality</font>: Deprecated use of the &lsquo;Transmit Now & Next data&rsquo; checkbox in the &lsquo;Group&rsquo; dialog in rdadmin(1)<br />
* <font style="color:green">Functionality</font>: Added a &lsquo;SaveWebgetFilesDirectory=&rsquo; directive to rd.conf(5)<br />
* <font style="color:green">Functionality</font>: Modified the mode of files generated by the rd-conf(5) &lsquo;SaveWebgetFilesDirectory=&rsquo; configuration directive from 0440 to 0664<br />
* <font style="color:green">Functionality</font>: Added a &lsquo;linkLength&rsquo; field and a &lsquo;graceTime&rsquo; field to the return XML for the &lsquo;ListLog&rsquo; WebAPI call<br />
* <font style="color:green">Functionality</font>: Added a &lsquo;Log Listing (CSV)&rsquo; report to rdlogedit(1)<br />
* <font style="color:green">Functionality</font>: Added a &lsquo;--print-progress&rsquo; switch to rddbmgr(8)<br />
* <font style="color:blue">Code (internal) change</font>: Overhauled the code for reading MPEG frame headers in &lsquo;RDWaveFile&rsquo;<br />
* <font style="color:blue">Code (internal) change</font>: Increased the import process timeout for the WebGet service to 1200 seconds<br />
<br />
<br />
=== 3.6.2 (2021-07-30) ===<br />
* Database verson '''347'''<br />
* <font style="color:green">Functionality</font>: Added support for system dark themes in RDAirplay<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdlogedit(1) that could cause a crash when attempting to play a non-audio event in the &lsquo;Voice Tracker&rsquo; dialog<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdimport(1) that caused the cart title uniqueness check to be applied to the incorrect string when the &lsquo;--set-string-title=&rsquo; switch was used<br />
<br />
<br />
=== 3.6.1 (2021-06-06) ===<br />
* Database verson '''347'''<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdimport(1) that could cause a crash when the &lsquo;--fix-broken-formats&rsquo; switch is used<br />
* <font style="color:green">Functionality</font>: Added syslog DEBUG messages around the start/stop of ephemeral processes in rdservice(8)<br />
* <font style="color:green">Functionality</font>: Added an &lsquo;--initial-maintenance&rsquo; switch to rdservice(8)<br />
* <font style="color:green">Functionality</font>: Added an &lsquo;--force-system-maintenance&rsquo; switch to rdservice(8)<br />
* <font style="color:green">Functionality</font>: Modified rdmaint(8) to enable it to operate even when the Rivendell services are not running<br />
<br />
=== 3.6.0 (2021-05-15) ===<br />
* Database verson '''347'''<br />
* <font style="color:red">Bug fix</font>: Fixed title separation in rdlogmanager(1) scheduler<br />
* <font style="color:red">Bug fix</font>: Fixed bug in library code ''lib/rdwavefile.cpp'' that copied CartChunk Cut ID past the end of the first "NULL" character<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdairplay(1) that caused the Talk Timer to fail to be populated when adding new carts to a log<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in the Cart Selector Dialog that made it impossible to enter an apostrophe character in the filter search line<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdimport(1) where the title of an existing cart would be overwritten with a default title even when no title was found in the file metadata<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in &lsquo;RDFlacDecode&rsquo; that caused conversion of files with names containing non-ASCII characters to fail<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdadmin(1) where clicking the &lsquo;OK&rsquo; button in the &lsquo;Edit Switcher&rsquo; dialog would cause an error dialog to appear with a &lsquo;primary serial device not active&rsquo; warning. The following devices are affected: &lsquo;Local GPIO&rsquo;, &lsquo;Local Audio Adapter&rsquo;, &lsquo;Logitek vGuest&rsquo;, &lsquo;Livewire LWRP Audio&rsquo;, and &lsquo;Kernel GPIO&rsquo;<br />
* <font style="color:green">Functionality</font>: Modified rdimport(1) and the Webget service so as to send e-mail reports to the address of the current Rivendell user in addition to the group&rsquo;s Notification E-Mail Address<br />
* <font style="color:green">Functionality</font>: Added a &lsquo;STACK_LINES.TITLE&rsquo; field to the database<br />
* <font style="color:green">Functionality</font>: Added the value of the detected CartChunk CutID to the error message generated when rejecting said CutID as invalid when using the &lsquo;--use-cartchunk-cutid&rsquo; switch in rdimport(1)<br />
* <font style="color:green">Functionality</font>: Added code to print the value of the detected CartChunk CutID when using both the &lsquo;--use-cartchunk-cutid&rsquo; and &lsquo;--verbose&rsquo; flags in rdimport(1)<br />
* <font style="color:green">Functionality</font>: Created pypad_ino713_tcp based upon pypad_ino713, converting from UDP to TCP. Added an adjustable delay to account for broadcast air delays<br />
* <font style="color:green">Functionality</font>: Created pypad_nautel based upon pypad_ino713_tcp, including RDS parameters from documentation. Includes delay as above<br />
* <font style="color:green">Functionality</font>: Added a new &lsquo;RadioTraffic.com Traffic Reconciliation&rsquo; report. Renamed the existing &lsquo;RadioTraffic.com Traffic Reconciliation&rsquo; to &lsquo;Original RadioTraffic.com Traffic Reconciliation (DEPRECATED)&rsquo;<br />
* <font style="color:green">Functionality</font>: Changed the way in which the VU Meter UDP port is chosen. One can now specify the base port number and the maximum number of UDP ports to consider when caed(8) sets up the VU meter port<br />
* <font style="color:orange">Documentation</font>: Documented the &lsquo;MeterPortBaseNumber=&rsquo; and &lsquo;MeterPointRange=&rsquo; directives in the rd.conf(5) man page<br />
<br />
=== 3.5.0 (2020-12-12) ===<br />
* Database verson '''346'''<br />
* <font style="color:red">Bug fix</font>: Corrected the column settings in RDAdmin > Manage Hosts > [host] > Dropboxes<br />
* <font style="color:red">Bug fix</font>: Fixed regression with "Scheduler Code:" label overlapping "Group" combobox in rdlibrary(1)<br />
* <font style="color:red">Bug fix</font>: Fixed several bugs in rdadmin(1) that messed with passwords, user settings, and other important settings<br />
* <font style="color:red">Bug fix</font>: Fixed several bugs in rdlogmanager(1) that caused all kinds of mischief<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdairplay(1) where copying a log event using the &lsquo;Copy&rsquo; button would result in the new event always getting a &lsquo;PLAY&rsquo; transition<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rddbmgr(8) that could cause database corruption problems<br />
* <font style="color:red">Bug fix</font>: Fixed bugs in rdimport(1) that caused incorrect exit codes to be emitted when a non-existent group was specified, and that caused generation of double error messages when processing invalid audio files<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdmonitor(1) that caused false indications of a failed audio store when used with autofs(8)<br />
* <font style="color:green">Functionality</font>: Major overhaul of Rivendell&rsquo;s podcast handling features; see the ChangeLog for all the details<br />
* <font style="color:green">Functionality</font>: Modified the GVC7000 switcher driver to insert 50 mS pauses between protocol commands<br />
* <font style="color:green">Functionality</font>: Allow RN Macro to run when Rivendell daemons running as non-root<br />
* <font style="color:green">Functionality</font>: Many changes to rdadmin(1), including:<br />
:* Added whitespace to the set of banned characters for service names<br />
:* Added a &lsquo;SSH Ident. File&rsquo; control to the &lsquo;Host&rsquo; dialog<br />
:* Added an &lsquo;Inline Traffic Inheritance&rsquo; control to the &lsquo;Edit Service&rsquo; dialog<br />
:* Added type icons to the &lsquo;Imported Events&rsquo; list in the &lsquo;Test Import&rsquo; dialog<br />
:* Renamed the &lsquo;Inline Traffic Inheritance&rsquo; control to &lsquo;Inline Traffic Start/Length&rsquo; and moved it to the &lsquo;Music Data Import&rsquo; section of the &lsquo;Edit Service&rsquo; dialog<br />
:* Added an &lsquo;Encoder Profiles&rsquo; dialog<br />
:* Renamed the &lsquo;Note Cart String&rsquo; controls to &lsquo;Insert Marker String&rsquo; in the &lsquo;Edit Service dialog<br />
:* Added an &lsquo;Origin E-Mail Address&rsquo; control to the &lsquo;System-Wide Settings&rsquo; dialog<br />
:* Added a &lsquo;Notification E-Mail Addresses&rsquo; control to the &lsquo;Group&rsquo; dialog<br />
:* Added a &lsquo;Send e-mail reports&rsquo; checkbox to the &lsquo;Dropbox Configuration&rsquo; dialog<br />
:* Added &lsquo;E-Mail Address&rsquo;, &lsquo;Phone Number&rsquo; and &lsquo;Local Auth&rsquo; columns to the &lsquo;Users&rsquo; list in the &lsquo;Rivendell User List&rsquo; dialog<br />
:* Added an &lsquo;Administer RSS Feeds&rsquo; checkbox to the &lsquo;Administrative Rights&rsquo; section of the &lsquo;User&rsquo; dialog<br />
:* Added a deprecation warning for the &lsquo;Allow Duplicate Cart Titles&rsquo; and &lsquo;Auto-Correct Duplicate Cart Titles&rsquo; checkboxes on the &lsquo;System-Wide Settings&rsquo; dialog<br />
* <font style="color:green">Functionality</font>: Added support for FTPS protocol for uploading, downloading, and Feed management<br />
* <font style="color:green">Functionality</font>: Significant update to the Rivendell Web interfaces (Web API, WebGet service, rivwebcapi API, etc.)<br />
* <font style="color:green">Functionality</font>: Added &lsquo;--scheduler-code=&rsquo; switch to rdexport(1)<br />
* <font style="color:green">Functionality</font>: Added generation of an &lsquo;RDLogManager Error Report&rsquo; when errors are detected when importing an external scheduler file in rdlogmanager(1)<br />
* <font style="color:green">Functionality</font>: Restored operation of Label/Note carts in rdlogmanager(1)<br />
* <font style="color:green">Functionality</font>: Updated rdservice(8) to use standard exit code defines<br />
* <font style="color:green">Functionality</font>: Implemented the &lsquo;--verbose&rsquo; switch for rdmaint(8)<br />
* <font style="color:green">Functionality</font>: Added a sample Fail2Ban jail filter for the WebAPI in &lsquo;conf/rivendell-webapi.conf&rsquo;<br />
* <font style="color:green">Functionality</font>: Added command line options &lsquo;--output-pattern&rsquo;, &lsquo;--ticket=&rsquo;, &lsquo;--send-mail&rsquo; and &lsquo;--mail-per-file&rsquo; to rdimport(1)<br />
* <font style="color:green">Functionality</font>: Added the name of the import file to schedule import failure reports<br />
* <font style="color:orange">Documentation</font>: Documented the &lsquo;%%&rsquo; filepath wildcard in the Operations Guide<br />
* <font style="color:orange">Documentation</font>: Added an &lsquo;RDCastManager&rsquo; chapter to the Operations Guide<br />
* <font style="color:orange">Documentation</font>: Revised the &lsquo;Managing Services&rsquo; section of the Operations Guide<br />
* <font style="color:orange">Documentation</font>: Rewrote the &lsquo;Webget&rsquo; chapter of the Operations Guide to conform to changes in Webget<br />
* <font style="color:orange">Documentation</font>: Added a &lsquo;Configuring Webget&rsquo; section to the Operations Guide<br />
* <font style="color:orange">Documentation</font>: Removed the &lsquo;Cart Data Dump (fixed width)&rsquo; from the Operations Guide<br />
* <font style="color:orange">Documentation</font>: Documented user-facing changes to the &lsquo;System-Wide Settings&rsquo; dialog, the &lsquo;Rivendell Group List&rsquo; and the &lsquo;Group&rsquo; dialogs in rdadmin(1) in the Operations Guide<br />
* <font style="color:orange">Documentation</font>: Documented the &lsquo;Send e-mail reports&rsquo; checkbox in the &lsquo;Dropbox Configuration&rsquo; dialog in rdadmin(1) in the Operations Guide<br />
* <font style="color:blue">Code (internal) change</font>: Prepended &lsquo;RD_&rsquo; to the names of all common Javascript functions in &lsquo;web/common/utils.js&rsquo;<br />
* <font style="color:blue">Code (internal) change</font>: Added a &lsquo;webget&rsquo; subpackage to the &lsquo;make rpm&rsquo; target<br />
* <font style="color:blue">Code (internal) change</font>: Refactored the &lsquo;Run Script&rsquo; [&rsquo;RN&rsquo;] RML to invoke scripts via the system shell, this change also removed the dependency on runuser(1)<br />
<br />
=== 3.4.1 (2020-07-21) ===<br />
* Database verson '''317'''<br />
<br />
* <font style="color:green">Functionality</font>: Added a &lsquo;Results Report&rsquo; report in rdadmin(1)<br />
* <font style="color:green">Functionality</font>: Removed the checkbox from the &lsquo;Delete&rsquo; right-click menu item in the &lsquo;Edit Event&rsquo; dialog in rdlogmanager(1)<br />
* <font style="color:green">Functionality</font>: Modified &lsquo;RDWaveFile&rsquo; to work around known fencepost errors in WAV files generated by "Sonic Studio soundBlade" by "PME Mastering, Inc."<br />
* <font style="color:green">Functionality</font>: Modified the &lsquo;Edit Event&rsquo; dialog in rdlogmanager(1) to show &lsquo;[auto]&rsquo; as the transition type for the leading event in Pre-/Post-Import lists<br />
<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdlibrary(1) that caused cuts to be incorrectly sorted when scheduled &lsquo;By Specified Order&rsquo;<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in the Rivendell command line apps that caused value-only arguments containing &lsquo;=&rsquo; characters to be incorrectly parsed<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in the Podcast Manager, Library Exporter and Web API that caused an error when processing multipart-mime submissions containing &lsquo;=&rsquo; characters<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdairplay(1) where attempting to audition an audio cart with a disabled cue output would crash the application<br />
* <font style="color:red">Bug fix</font>: Fixed a regression in rdairplay(1) that caused the &lsquo;Forced Segue&rsquo; setting in rdadmin(1) to be ignored when executing an event with a hard start attribute<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdairplay(1) where a paused event could not be removed by dropping the empty cart on it<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdairplay(1) that cause incorrect pie timer indications after adding or deleting events to a running log<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdlibrary(1) that would cause a crash when attempting to delete a range of cuts, one of which was in the clipboard<br />
* <font style="color:red">Bug fix</font>: Fixed a math bug in rdairplay(1) that caused the estimated stop-down times in the post point widget to be incorrect after adding or removing events from a running log<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdadmin(1) that made it impossible to enter useful strings in the &lsquo;WaveForm Caption&rsquo; control on the &lsquo;Edit RDLogEdit&rsquo; dialog<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in RDRenderer that caused segue transitions to be rendered without regard to the &lsquo;No Fade on Segue Out&rsquo; checkbox in the &lsquo;Edit Audio&rsquo; dialog<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in ripcd(8) that caused connections to ModbusTCP devices to fail to be properly restored by the connection watchdog<br />
* <font style="color:red">Bug fix</font>: Fixed a regression in the &lsquo;Edit Event&rsquo; dialog in rdlogmanager(1) that caused the first cart transition type to be incorrect when the &lsquo;Pre-Import Carts&rsquo; list was populated<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in the &lsquo;Add Next&rsquo; [&rsquo;PX&rsquo;] RML that failed to return an error when an invalid offset value was supplied<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in the &lsquo;Add Next&rsquo; [&rsquo;PX&rsquo;] RML that failed to honor the &lsquo;Default Trans. Type&rsquo; setting in the &lsquo;Configure RDAirPlay&rsquo; dialog in rdadmin(1)<br />
<br />
=== 3.4.0 (2020-05-19) ===<br />
* Database verson '''317'''<br />
* <font style="color:red">Bug fix</font>: Fixed a regression in rdairplay(1) that caused two events to be started by a single spacebar tap if a SoundPanel event had been played previously<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdlogmanager(1) that caused the initial event in an imported set to fail receive the proper time and transition type if the &lsquo;Include Import Markers in Finished Logs&rsquo; checkbox in rdadmin(1) had not been ticked<br />
* <font style="color:red">Bug fix</font>: Fixed a regression in rdexport(1) that caused exported file names to be constructed improperly<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdlogmanager(1) that caused &lsquo;Make Post Point&rsquo; label to be displayed without last &lsquo;t&rsquo;<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdairplay(1) where timer was not set properly when crossing midnight<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in the &lsquo;List GPIs&rsquo; dialog in rdadmin(1) that prevented changes in GPI assignments from being propagated to the underlying device<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in the &lsquo;Software Authority&rsquo; driver that caused autodetection of the number of GPIOs in a router to be unreliable<br />
* <font style="color:red">Bug fix</font>: Fixed a regression in &lsquo;RDEventLine&rsquo; that caused the &lsquo;Append Log&rsquo; [&rsquo;AL&rsquo;] RML to append a copy of the currently loaded log instead of the one specified in the RML command<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdlogedit(1) that caused garbled text to appear when &lsquo;Start Immediately&rsquo; was selected in the &lsquo;Edit Log Entry&rsquo; dialog box<br />
* <font style="color:red">Bug fix</font>: Fixed a regression that broke the ability to scroll through Sound Panel panels by means of the mouse wheel<br />
<br />
* <font style="color:green">Functionality</font>: Modified rdairplay(1) to always scroll log to the top when using the hour selector<br />
* <font style="color:green">Functionality</font>: Modified rdlogmanager(1) to disable merge buttons if the selected log does not contain any import links<br />
* <font style="color:green">Functionality</font>: Modified rdadmin(1) Edit Service dialog to display built-in traffic and music import template values<br />
* <font style="color:green">Functionality</font>: Added "Copy To Custom" buttons to rdadmin(1) Edit Service dialog<br />
* <font style="color:green">Functionality</font>: Changed the layout of the &lsquo;Editing Event&rsquo; dialog in rdlogmanager<br />
<br />
* <font style="color:green">Functionality</font>: Removed the &lsquo;Post Point&rsquo; checkbox from the &lsquo;Editing Event&rsquo; dialog in rdlogmanager(1)<br />
* <font style="color:green">Functionality</font>: Renamed the &lsquo;REMARKS&rsquo; field to &lsquo;USER NOTES&rsquo; in the &lsquo;Editing Event&rsquo; and the &lsquo;Edit Clock&rsquo; dialogs in rdlogmanager(1)<br />
* <font style="color:green">Functionality</font>: Added a &lsquo;Trans&rsquo; column to the event list in the &lsquo;Edit Clock&rsquo; and the &lsquo;List Events&rsquo; dialogs in rdlogmanager(1)<br />
<br />
=== 3.3.0 (2020-03-16) ===<br />
* Database verson '''314'''<br />
* <font style="color:red">Bug fix</font>: Fixed regressions in the following switcher drivers that could cause deadlocks and intermittent operation<br />
:* BroadcastTools SS16.4<br />
:* BroadcastTools SS 4.2<br />
:* BroadcastTools SS4.4<br />
:* BroadcastTools SS 8.2<br />
:* BroadcastTools ACS8.2<br />
:* BroadcastTools ADMS 44.22<br />
:* BroadcastTools GPI-16<br />
:* BroadcastTools SRC-16<br />
:* BroadcastTools SRC-8 III<br />
:* BroadcastTools SS 4.1 MLR<br />
* <font style="color:red">Bug fix</font>: Fixed a regression in the implementation of the &lsquo;Set Serial Trap&rsquo; [&lsquo;SI&rsquo;] RML that could cause deadlocks and intermittent operation<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdairplay(1) that could cause random segfaults when updating the Label Widget<br />
* <font style="color:red">Bug fix</font>: Fixed a bug with the &lsquo;%y&rsquo; metadata wildcard where garbage would be returned if a valid year had not been set<br />
* <font style="color:red">Bug fix</font>: Fixed a regression in rdlogmanager(1) that caused trailer whitespace to be generated in the &lsquo;EXT_DATA&rsquo;, &lsquo;EXT_EVENT&rsquo;, &lsquo;EXT_ANNC_TYPE&rsquo; and &lsquo;EXT_CART_NAME&rsquo; log fields when importing from a CounterPoint format log<br />
* <font style="color:red">Bug fix</font>: Fixed the layout of the &lsquo;Matching Carts&rsquo; field in rdlibrary(1)&rsquo;s main window when Realtime Filtering is disabled<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdairplay(1) that would cause a hard-timed log event with a &lsquo;wait&rsquo; parameter set to attempt to play the event twice<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rddbmgr(8) that threw a SQL error when attempting to modify a DB containing tables set to use character set UTF-8 to schema 297<br />
* <font style="color:red">Bug fix</font>: Fixed a race in ripcd(8) that caused arguments to the &lsquo;Run Shell Command&rsquo; [&lsquo;RN&rsquo;] macro to be corrupted<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in the &lsquo;Edit Event&rsquo; dialog in rdlogmanager(1) that caused the Transition Type dropdown to be greyed-out when the &lsquo;IMPORT&rsquo; controls were set to use the built-in music scheduler<br />
* <font style="color:green">Functionality</font>: Added a &lsquo;delta-seconds&rsquo; modifier to Filepath Wildcards to enable positive and negative time offsets<br />
* <font style="color:green">Functionality</font>: Removed support for CD-TEXT from the CD rippers<br />
* <font style="color:green">Functionality</font>: Added support for &lsquo;MusicBrainz&rsquo; CD metadata lookup<br />
* <font style="color:green">Functionality</font>: Added a &lsquo;Web Browser&rsquo; control to the &lsquo;Edit Host&rsquo; dialog in rdadmin(1)<br />
* <font style="color:green">Functionality</font>: Added support for displaying cover art in the MusicBrainz release chooser<br />
* <font style="color:green">Functionality</font>: Added &lsquo;%wm&rsquo; [&lsquo;MusicBrainz Recording ID&rsquo;] and &lsquo;%wr&rsquo; [&lsquo;MusicBrainz Release ID&rsquo;] metadata wildcards<br />
* <font style="color:green">Functionality</font>: Implemented the &lsquo;%wm&rsquo; [&lsquo;MusicBrainz Recording ID&rsquo;] and &lsquo;%wr&rsquo; [&lsquo;MusicBrainz Release ID&rsquo;] metadata wildcards for PyPAD<br />
* <font style="color:green">Functionality</font>: Added support for the &lsquo;%wi&rsquo;, &lsquo;%wm&rsquo; and &lsquo;%wr&rsquo; wildcards to the &lsquo;--metadata-pattern=&rsquo; switch in rdimport(1)<br />
* <font style="color:green">Functionality</font>: Added &lsquo;--set-string-isrc&rsquo;, &lsquo;--set-string-recording-mbid&rsquo; and &lsquo;--set-string-release-mbid&rsquo; switches to rdimport(1)<br />
* <font style="color:green">Functionality</font>: Added support for the &lsquo;%wi&rsquo;, &lsquo;%wm&rsquo; and &lsquo;%wr&rsquo; wildcards to the &lsquo;--metadata-pattern=&rsquo; switch in rdexport(1)<br />
* <font style="color:green">Functionality</font>: Added a &lsquo;%wc&rsquo; [&lsquo;Industry Standard Commercial Identification (ISCI) Code&rsquo;] metadata wildcard<br />
* <font style="color:green">Functionality</font>: Implemented the &lsquo;%wc&rsquo; metadata wildcard for PyPAD<br />
* <font style="color:green">Functionality</font>: Added support for the &lsquo;%wc&rsquo; wildcards to the &lsquo;--metadata-pattern=&rsquo; switch in rdimport(1)<br />
* <font style="color:green">Functionality</font>: Added &lsquo;--set-string-isci&rsquo; switch to rdimport(1)<br />
* <font style="color:green">Functionality</font>: Added support for the &lsquo;%wc&rsquo; wildcard to the &lsquo;--metadata-pattern=&rsquo; switch in rdexport(1)<br />
* <font style="color:green">Functionality</font>: Removed the &lsquo;RDLabel&rsquo; widget<br />
* <font style="color:green">Functionality</font>: Added a &lsquo;Disconnect All Jack Ports&rsquo; [&lsquo;JZ&rsquo;] RML<br />
* <font style="color:green">Functionality</font>: Added a &lsquo;CounterPoint Traffic Reconciliation v2&rsquo; report<br />
<br />
=== 3.2.1 (2020-01-24) ===<br />
* Database verson '''311'''<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdcatch(1) that threw a SQL error when clicking 'OK' on the &lsquo;Edit Cart Event&rsquo; dialog<br />
* <font style="color:red">Bug fix</font>: Fixed a regression in rdimport(1) that caused null characters to be written to cart metadata fields when importing files containing an &lsquo;AIR1&rsquo; RIFF chunk<br />
* <font style="color:red">Bug fix</font>: Fixed a regression in rdcatch(1) that caused the &lsquo;Source&rsquo; dropdown in the &lsquo;Edit Recording&rsquo; dialog to fail to be populated properly<br />
* <font style="color:red">Bug fix</font>: Fixed a regression in the cart selector dialog that caused default focus to be lost on the &lsquo;Filter&rsquo; control after second and subsequent invocations<br />
* <font style="color:red">Bug fix</font>: Fixed a regression in rdcatchd(8) that broke audio metering<br />
* <font style="color:red">Bug fix</font>: Fixed a regression in rdcatchd(8) that could cause download events to hang in an active state<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdcatch(1) that caused DOW flags to fail to be updated correctly on the event list after making a change<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdcatchd(8) that failed to send a MODIFY notification at the end of a Record or Download event<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdconvert that caused a segfault at startup<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdexport(1) that caused output filenames containing multi-byte UTF-8 characters to be corrupt<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdgpimon(1) that caused GPIO cart displays to fail to accurately reflect current state<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdgpimon(1) that caused incorrect state indications to be displayed after switching to a different page<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdimport(1) that caused non-Latin1 characters to be corrupted when using standard input<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdimport(1) that caused UTF-8 multibyte characters in filenames to be corrupted<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdlogmanager(1) that caused spurious log events to be inserted when generating a log<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in ripcd(8) that caused input and output counts to be calculated incorrectly for Software Authority protocol devices containing holes in the input and/or output lists<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in the &lsquo;pypad-shoutcast1.py&rsquo; script that threw an exception when processing PAD containing multi-type UTF-8 characters<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in the &lsquo;pypad_xds.py&rsquo; PyPAD script that could cause it to emit duplicate CIC updates<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in the &lsquo;rivwebcapi&rsquo; validate_tm() function that caused dates containing &lsquo;29 February&rsquo; to always fail regardless of leap-year validity<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in the rdxport service that could cause MODIFY notifications to fail to be sent by the &lsquo;SaveLog&rsquo; WebAPI call<br />
* <font style="color:red">Bug fix</font>: Fixed a regression in rdadmin(1) that caused controls to be hidden in the &lsquo;Edit Report&rsquo; dialog<br />
* <font style="color:red">Bug fix</font>: Fixed a regression in rdlogmanager(1) that caused incorrect logged start times to be generated for imported events<br />
* <font style="color:red">Bug fix</font>: Fixed a regression in the rdxport service that caused the ListCuts WebAPI call to return corrupt data<br />
* <font style="color:red">Bug fix</font>: Fixed a regression in the Web API that caused the and/or corrupt in served XML documents<br />
* <font style="color:green">Functionality</font>: Implemented support for non-realtime library filtering in the &lsquo;Editing Event&rsquo; dialog in rdlogmanager(1)<br />
* <font style="color:green">Functionality</font>: Added a &lsquo;Show Start Time As&rsquo; control to the &lsquo;Edit Log&rsquo; dialog in rdlogedit(1)<br />
* <font style="color:green">Functionality</font>: Made the rdlogedit(1) main window and &lsquo;Edit Log&rsquo; dialog window sizes persistent<br />
* <font style="color:green">Functionality</font>: Added a work-around in the &lsquo;PyPAD.Receiver().__openDb()&rsquo; method to work with versions of MySQLdb that do not support the &lsquo;password=&rsquo; parameter in &lsquo;MySQLdb.connect()&rsquo;<br />
* <font style="color:green">Functionality</font>: Added &lsquo;Repetitions=&rsquo; and &lsquo;RepetitionDelay=&rsquo; directive to the configuration of the &lsquo;pypad_xds.py&rsquo; PyPAD script<br />
* <font style="color:green">Functionality</font>: Added &lsquo;Username=&rsquo; and &lsquo;Password=&rsquo; directives to the &lsquo;pypad_httpget.py&rsquo; script for use for HTTP Basic Authentication<br />
* <font style="color:green">Functionality</font>: Added the ability to view a report at time of generation in rdlogmanager(1)<br />
* <font style="color:green">Functionality</font>: Adjusted the position of the &lsquo;Matching Carts&rsquo; readout on the main window of rdlibrary(1)<br />
* <font style="color:green">Functionality</font>: Changed the &lsquo;Time&rsquo; column in the &lsquo;Full Log Widget&rsquo; in rdairplay(1) to &lsquo;Sch. Time&rsquo;<br />
* <font style="color:green">Functionality</font>: Implemented a work-around for importing CartChunk data containing a buggy ENCO implemention of the &lsquo;AUD&rsquo; CartChunk timer<br />
* <font style="color:green">Functionality</font>: Modified the Full Log widget in rdairplay(1) to display logged start times even when the referenced cart does not exist<br />
* <font style="color:green">Functionality</font>: Tweaked the &lsquo;LogLineBox::mouseMoveEvent()&rsquo; method in rdairplay(1) to require a cursor movement of at least 20 pixels before generating a cart drag<br />
<br />
=== 3.2.0 (2019-10-31) ===<br />
* Database verson '''311'''<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rddbmgr(8) that caused a segfault when processing a SQL error<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdimport(1) that caused it to throw an exception when given a &lsquo;--metadata-pattern&rsquo; of less than three characters<br />
* <font style="color:red">Bug fix</font>: Fixed a regression in rdimport(1) that caused a segfault when invoked with the &lsquo;--metadata-pattern&rsquo; and &lsquo;--log-syslog&rsquo; switches<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdairplay(1) that caused space bar presses to start the next event in the Main Log even when &lsquo;Space Bar Action&rsquo; was set to &lsquo;None&rsquo;<br />
* <font style="color:red">Bug fix</font>: Fixed bugs in 'RDWaveFile' that caused strings of null characters to be written into unfilled CartChunk string fields<br />
* <font style="color:red">Bug fix</font>: Fixed a regression in 'rdxport.cgi' that caused a check of the Rivendell services to be triggered each time a WebAPI function was invoked<br />
* <font style="color:red">Bug fix</font>: Fixed a regression in rdsoftkeys(1) that threw a segfault at startup<br />
* <font style="color:green">Functionality</font>: Added the ability to configure the caption displayed for the first and third voicetrack waveforms in the Voicetracker dialog in rdlogedit(1)<br />
* <font style="color:green">Functionality</font>: Reworked the font management system to permit the fonts used in the UI to be specified in rd.conf(5).<br />
* <font style="color:green">Functionality</font>: Added support for posting podcast content via SFTP<br />
* <font style="color:orange">Documentation</font>: Added manual pages for rd.conf(5) and rdsoftkeys(1)<br />
<br />
=== 3.1.0 (2019-09-19) ===<br />
* Database verson '''310'''<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdairplay(1) and rdvairplayd(8) where only the first log machine set to &lsquo;load specified log&rsquo; would do so<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdlogedit(1) that caused hard start log items to have the Hour field doubled<br />
* <font style="color:red">Bug fix</font>: Refactored the Python &lsquo;pypad.Update.shouldBeProcessed()&rsquo; method to work correctly when using <tt>try:</tt> blocks in a PyPAD script<br />
* <font style="color:red">Bug fix</font>: Refactored the PyPAD scripts to route updates properly in accordance with log directives in their configuration file<br />
* <font style="color:red">Bug fix</font>: Fixed a bug that broke dropbox logging to individual files<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in caed(8) that broke timescaling support<br />
* <font style="color:red">Bug fix</font>: Fixed bugs in rdlibrary(1) that broke CD ripping<br />
* <font style="color:green">Functionality</font>: Refactored rdalsaconfig(1) to be more robust and intuitive<br />
* <font style="color:green">Functionality</font>: Added a &lsquo;pypad_httpget.py&rsquo; PyPAD script<br />
* <font style="color:green">Functionality</font>: Updated CDDB code to use protocol level 6 (UTF-8 enabled)<br />
* <font style="color:green">Functionality</font>: Added an &lsquo;%l&rsquo; wildcard to Filepath Wildcards for &lsquo;unpadded month&rsquo;<br />
=== 3.0.3 (2019-08-05) ===<br />
* Database verson '''308'''<br />
* <font style="color:red">Bug fix</font>: Fixed a regression in ripcd(8) that broke the 'Connect Jack Ports' ['JC'] and 'Disconnect Jack Ports' ['JD'] RMLs<br />
=== 3.0.2 (2019-07-31) ===<br />
* Database verson '''308'''<br />
* <font style="color:red">Bug fix</font>: Fixed a problem with the Local Audio Adapter switcher driver that caused incorrect operation with the 'Switch Add' ['SA'], 'Switch Remove' ['SR'] and 'Switch Take' ['ST'] RMLs<br />
* <font style="color:red">Bug fix</font>: Fixed a regression in rdlibrary(1) that caused macro carts entries to turn red after being viewed<br />
* <font style="color:red">Bug fix</font>: Fixed regressions that made operations with serial devices unreliable<br />
* <font style="color:green">Functionality</font>: Added support for switchers using the Grass Valley 7000 series protocol<br />
=== 3.0.1 (2019-07-16) ===<br />
* Database verson '''308'''<br />
* <font style="color:red">Bug fix</font>: Rivendell is now Unicode UTF-8 clean<br />
* <font style="color:red">Bug fix</font>: Qt4 is now used throughout Rivendell instead of Qt3<br />
* <font style="color:green">Functionality</font>: The Rivendell Loadable Modules system for processing PAD data has been completely replaced by PyPAD, allowing PAD processing plug-ins to be written in the popular Python scripting langauge. Backward compatible replacement scripts for many of the RLM plug-ins supplied in Rivendell v2.x are included<br />
* <font style="color:green">Functionality</font>: Added a compatibility library to facilitate the use of the Rivendell Web API in external applications<br />
* <font style="color:green">Functionality</font>: A system of virtual log machines has been added, allowing play-out of up to 23 logs simultaneously<br />
* <font style="color:green">Functionality</font>: Rivendell is now fully systemd compatibile<br />
* <font style="color:green">Functionality</font>: The Windows ports of rdlogedit(1) and rdlogmanager(1) have been removed<br />
* <font style="color:orange">Documentation</font>: The Rivendell Operations and Administration Guide has been updated and enhanced with more details about running a Rivendell system<br />
* <font style="color:orange">Documentation</font>: New manual pages have been added for Rivendell command that previously did not have them<br />
See [http://caspian.paravelsystems.com/pipermail/rivendell-dev/2019-July/027867.html this message] on the Rivendell Dev mailing list for more details about installing and upgrading Rivendell.<br />
=== 2.19.3 (2018-10-31) ===<br />
* Database verson '''275'''<br />
* <font style="color:red">Bug fix</font>: Fixed a bug that caused the &lsquo;Switcher Matrix&rsquo; and &lsquo;Switcher Output&rsquo; dropdowns to populate incorrect values when selecting a non-local &lsquo;Switcher Host&rsquo; in the &lsquo;Configure RDCatch&rsquo; dialog in rdadmin(1)<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdlogmanager(1) that caused the initial transition type specified in the &lsquo;IMPORT&rsquo; section of the &lsquo;Editing Event&rsquo; dialog to be applied to both the parent log link and the first imported event when the &lsquo;PRE-IMPORT CARTS&rsquo; list was empty and no Timed Start was enabled<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in ripcd(8) that caused process of the &lsquo;Air Gate&rsquo; [&lsquo;AG&rsquo;] RML to fail<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdimport(1) that would throw a spurious SQL error when using the &lsquo;--to-cart=&rsquo; switch with an already existing cart [Issue #000217]<br />
* <font style="color:red">Bug fix</font>: Fixed a regression that caused rdimport(1) to return a &lsquo;no free carts available in specified group&rsquo; when invoked without the &lsquo;--to-cart=&rsquo; option<br />
* <font style="color:red">Bug fix</font>: Fixed a regression in rdairplay(1) that caused carts Added or Copied to a log to have a PLAY transition regardless of the default transition type set in rdadmin(1)<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in &lsquo;RDTextValidator&rsquo; that failed to catch banned characters added to the interior of existing strings<br />
* <font style="color:red">Bug fix</font>: Various other bugs fixed<br />
* <font style="color:green">Functionality</font>: Added a &lsquo;TranscodingDelay=&rsquo; parameter to the &lsquo;[Tuning]&rsquo; section of rd.conf(5)<br />
* <font style="color:green">Functionality</font>: Added a Switcher/GPIO driver for the BroadcastTools SS 2.1 switcher<br />
* <font style="color:green">Functionality</font>: Added support for GPIO on AudioScience adapters to the 'Local Audio Adapter' Switcher/GPIO driver<br />
* <font style="color:green">Functionality</font>: Renamed the 'Add Next' ['PX'] RML to 'Insert Cart' ['PX'] and added two optional arguments to allow specification of the insertion position and transition type<br />
* <font style="color:green">Functionality</font>: Added support for Spinitron v2 to the 'spinitron_plus' RLM<br />
* <font style="color:green">Functionality</font>: Added an &lsquo;ExportedFileMode=&rsquo; parameter to the &lsquo;[Tuning]&rsquo; section of rd.conf(5) to permit permission mode of exported audio files to be specified<br />
* <font style="color:orange">Documentation</font>: Documented GPIO support for AudioScience cards in the &lsquo;Local Audio Adapter&rsquo; section of the Operations Guide<br />
<br />
=== 2.19.2 (2018-04-14) ===<br />
* Database verson '''275'''<br />
* <font style="color:red">Bug fix</font>: Fixed a regression in the HPI support layer that broke audio capture with adapters lacking DMA bus-mastering support<br />
<br />
=== 2.19.1 (2018-03-27) ===<br />
* Database verson '''275'''<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdlogmanager(1) that caused DB corruption when a clock was deleted while still being assigned to a grid.<br />
* <font style="color:green">Functionality</font>: Implemented support for DMA bus-mastering for AudioScience HPI devices. This release supports the latest ASI cards that require DMA bus-mastering support. You may also need to update the hpklinux driver to v4.20.10 or later. RPMs for CentOS 7 are available at [http://static.paravelsystems.com/audioscience/centos/7/ Paravel&rsquo;s website].<br />
* <font style="color:green">Functionality</font>: Removed rdhpiinfo(8). Replaced by the stand-alone &lsquo;hpiinfo&rsquo; package.<br />
* <font style="color:green">Functionality</font>: Removed the event time check for Playout events in rdcatch(1), as there is no sane way to determine a consistently &lsquo;free&rsquo; playout time in the face of shifting cut lengths.<br />
<br />
=== 2.19.0 (2018-02-22) ===<br />
* Database verson '''275'''<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdlibrary(1) that caused evergreen carts/cuts to fail to be highlighted in the correct color<br />
* <font style="color:green">Functionality</font>: Added the ability to specify automatic log deletion on the basis of either the Creation Date or Air Date of the log<br />
* <font style="color:green">Functionality</font>: Log Importation Changes. Changed music and traffic importation so that parent link events are still visible in linked logs<br />
* <font style="color:green">Functionality</font>: Log Locking: implemented a system-wide protocol to prevent changes made to a log on one host from being inadvertently overwritten from another host<br />
<br />
=== 2.18.2 (2017-12-29) ===<br />
* Database version '''272'''<br />
* <font style="color:red">Bug fix</font>: Fixed a bug that caused creation of new clocks in rdlogmanager(1) to fail to initialize music scheduler components correctly in the database<br />
<br />
=== 2.18.1 (2017-12-22) ===<br />
* Database version '''272'''<br />
* <font style="color:red">Bug fix</font>: Fixed a bug that caused creation and initialization of a new Rivendell database to fail<br />
<br />
=== 2.18.0 (2017-12-21) ===<br />
* Database version updated to '''272'''<br />
* <font style="color:red">Bug fix</font>: Various bug fixes. See the [https://github.com/ElvishArtisan/rivendell/blob/stable/ChangeLog ChangeLog] for details<br />
* <font style="color:green">Functionality</font>: Group Cut Expiration Policy: Added the ability to set a default End Date/Time for new cuts on a per-group basis<br />
* <font style="color:green">Functionality</font>: Host Short Name: Added a ''Short Name'' parameter to Host profiles<br />
* <font style="color:green">Functionality</font>: Macro Carts: It is now possible to use filepath wildcards in macro carts<br />
* <font style="color:green">Functionality</font>: New Host Wildcards: Added two host wildcards: ''%r'' for ''Rivendell Host Name, and ''%R'' for ''Rivendell Short Name''<br />
* <font style="color:green">Functionality</font>: Provisioning Support: Added four new directives and to the ''[Provisioning]'' section of ''/etc/rd.conf''<br />
* <font style="color:green">Functionality</font>: MySQL Configuration: Added three parameters to the ''[mySQL]'' section of ''/etc/rd.conf''<br />
* <font style="color:green">Functionality</font>: Dropbox Enhancements: Added the ability to specify creation of default Segue Markers when processing files via dropbox<br />
* <font style="color:green">Functionality</font>: '''RDImport'''/DropBox Enhancements: Added the ability to specify start and end datetimes via metadata pattern<br />
* <font style="color:green">Functionality</font>: '''RDCatch''' Event Filtering: Added the ability to filter by event type in '''RDCatch'''<br />
* <font style="color:green">Functionality</font>: Log Searching: A search filter (similar to that employed for seaching for carts) has been added to the List Logs dialogs<br />
* <font style="color:green">Functionality</font>: Service Filtering in '''RDLogEdit''': Added the ability to limit the visible set of logs in RDLogEdit by user<br />
* <font style="color:green">Functionality</font>: Log Purge/Deletion Changes: Logs created manually (in rdlogedit(1) or rdairplay(1)) are now assigned a default purge/deletion date in accordance with the setting in RDAdmin->ManageServices<br />
* <font style="color:green">Functionality</font>: Log Importation Changes: Changed music and traffic importation so that parent link events are still visible in linked logs<br />
* <font style="color:green">Functionality</font>: Web API Changes: Added &lsquo;FILTER&rsquo; and &lsquo;RECENT&rsquo; call parameters to the &lsquo;ListLogs&rsquo; Web API call<br />
* <font style="color:orange">Documentation</font>: Documentation Overhaul: The Rivendell Operations and Administration Guide has been exapanded and incorporated as part of the base Rivendell source in ''docs/opsguide''. This guide is available as a separate CentOS package: ''rivendell-opsguide''<br />
* <font style="color:orange">Documentation</font>: Rivendell APIs: The various application programming interfaces (notably the web API) is now documented and is included with the standard distribution<br />
<br />
=== 2.17.0 (2017-10-11) ===<br />
* Database version updated to '''268'''<br />
* <font style="color:red">Bug fix</font>: Web API: Many fixes and enhancements to improve operation<br />
* <font style="color:red">Bug fix</font>: Many other bug fixes; see the [https://github.com/ElvishArtisan/rivendell/blob/stable/ChangeLog ChangeLog] for all the details (search for ''2.17.0'' and work your way backward through the list of changes)<br />
* <font style="color:green">Functionality</font>: Dropboxes: Added the ability to force imports to be imported as mono, also added the ability to reset individual dropboxes<br />
* <font style="color:green">Functionality</font>: New Switcher/GPIO Devices: Support has been added for the following Switcher/GPIO devices:<br />
:* Broadcast Tools Universal 4.1 MLR&gt;&gt;Web Switcher<br />
:* WheatNet LIO<br />
:* WheatNet SLIO<br />
* <font style="color:green">Functionality</font>: Macros: Added the &lsquo;Air Gate&rsquo; &#91;&lsquo;AG&rsquo;&#93; RML to permit conditional execution of RML on the basis of the status of the On-Air flag<br />
* <font style="color:green">Functionality</font>: <br />
* <font style="color:green">Functionality</font>: User Authentication: It is now possible to configure RDLogin to require entry of the user-name, rather than picking the name off of a list. See the &lsquo;Show User List in RDLogin&rsquo; checkbox in RDAdmin-&gt;SystemSettings<br />
* <font style="color:green">Functionality</font>: Log Rendering (EXPERIMENTAL): It is now possible to &lsquo;render&rsquo; a log as a single audio object (file or cart/cut) without the need to play it out while capturing the audio in realtime. Render support is available through the &lsquo;Render&rsquo; button in RDLogEdit and through the command-line rdrender(1) utility. See the rdrender(1) man page for details<br />
* <font style="color:green">Functionality</font>: Provisioning Support. Added a [Provisioning] section to rd.conf(5) with directives to facilitate the automatic provisioning of Rivendell instances. See the comments in the [Provisioning] section of the sample rd.conf(5) file<br />
* <font style="color:orange">Artwork</font>: New Icons: Implemented a new icon set, with individualized icons for each Rivendell module<br />
<br />
=== 2.16.0 (2017-06-02) ===<br />
* Database version updated to '''263'''<br />
* <font style="color:red">Bug fix</font>: Many bug fixes; see the [https://github.com/ElvishArtisan/rivendell/blob/stable/ChangeLog ChangeLog] for all the details (search for ''2.16.0'' and work your way backward through the list of changes)<br />
* <font style="color:green">Functionality</font>: Audio Store Hashing. Rivendell now automatically generates a SHA1 hash for each file in the audio store and records this value in the database, thus permitting automated recovery of audio in the event of loss or damage to the audio store's filesystem directory<br />
* <font style="color:green">Functionality</font>: Added switcher support for Kernel GPIO devices, such as the GPIO interface on the Raspberry Pi 2 and 3<br />
* <font style="color:green">Functionality</font>: Added switcher support for Modbus TCP devices<br />
* <font style="color:green">Functionality</font>: Added an rdconvert(1) utility<br />
* <font style="color:green">Functionality</font>: It is now possible to delegate authentication of Rivendell users by means of a PAM module, thus permitting &lsquo;''single sign-on''&rsquo; integration with systems such as ActiveDirectory and FreeIPA<br />
* <font style="color:green">Functionality</font>: Added various methods to the Rivendell Web API to permit integration with external audio and log editors<br />
<br />
=== 2.15.3 (2017-03-24) ===<br />
* Database version '''259''' <br />
* <font style="color:red">Bug fix</font>: Fixed bugs in MP3 file importation that caused files with variable bit rate (VBR) to be truncated during import.<br />
* <font style="color:red">Bug fix</font>: Fixed a bug that caused dynamically loaded codec libraries to fail to be detected if the corresponding library&rsquo;s so-called ''-devel'' package was not installed. <br />
* <font style="color:green">Functionality</font>: Added an ''RLM'' for generating [http://tagstation.com/ TagStation] RLM events for [http://nextradioapp.com/ NextRadio].<br />
* <font style="color:green">Functionality</font>: Added '''AddLog''', '''DeleteLog''' and '''SaveLog''' calls to the web API, along with general cleanup and correction of the overall Web API subsystem.<br />
<br />
=== 2.15.2 (2017-01-13) ===<br />
* Database version '''259'''<br />
* <font style="color:orange">Documentation</font>: Document the interfaces for '''inserting inline traffic breaks''' and for '''inserting voice track markers''' (also add an example in ''docs/examples/'')<br />
* <font style="color:red">Bug fix</font>: in ''rdadmin/createdb.cpp'' that caused obsolete fields in the 'SERVICES' table to be included when creating a new database.<br />
* <font style="color:red">Bug fix</font>: in ''lib/rdwavefile.cpp'' that caused RDXL chunks to be written with odd chunk lengths.<br />
* <font style="color:red">Bug fix</font>: in ''lib/rdsimpleplayer.cpp'' that caused RDAirPlay to freeze when attempting to audition an expired cart.<br />
* <font style="color:green">Functionality</font>: Added a '''LockRdairplayMemory=''' parameter to the [Hacks] section.<br />
* <font style="color:green">Functionality</font>: Modified the LiveWire Multicast GPIO driver to generate GPO events using the 'I' event type.<br />
<br />
=== 2.15.1 (2016-08-05) ===<br />
* Database version '''259'''<br />
* <font style="color:red">Bug fix</font>: fixed WAV file export code to enhance compatibility with third-party applications<br />
<br />
=== 2.15.0 (2016-07-29) ===<br />
* <font style="color:red">Bug fix</font>: complete support for the MySQL/MariaDB InnoDB database engine (for better transaction processing of database updates)<br />
* <font style="color:green">Functionality</font>: enhancements to ''rdexport'' that include full metadata in RDXML format<br />
* <font style="color:green">Functionality</font>: add CLI command ''rdclilogedit'' that enables editing of Rivendell Logs from the command line (without a GUI app)<br />
* <font style="color:green">Functionality</font>: Update the database to version 259.<br />
<br />
=== 2.14.1 (2016-06-11) ===<br />
* Database version '''258'''<br />
* <font style="color:red">Bug fix</font>: additional fixes for newer versions of MySQL (and MariaDB)<br />
<br />
=== 2.14.0 (2016-06-10) ===<br />
* Database version '''258'''<br />
* <font style="color:green">Functionality</font>: add the ability to capture real-time events in RDCatch recordings and replay the events in sync with the captured audio<br />
* <font style="color:green">Functionality</font>: add RML Macro ''Cut Event'' (''CE'') for placing real-time event markers into active RDCatch recordings<br />
* <font style="color:green">Functionality</font>: add support for specifying precise start time and length parameters for Traffic events that are embedded in Music events<br />
* <font style="color:red">Bug fix</font>: fixed a bug in RDAdmin that could cause creation of a new database to fail<br />
* <font style="color:red">Bug fix</font>: fix issues that prevent compilation under newer versions of the GNU C compiler suite<br />
* <font style="color:red">Bug fix</font>: various enhancements and fixes to the new(ish) ''rdexport'' utility<br />
* <font style="color:red">Bug fix</font>: initial support for newer versions of MySQL (and MariaDB)<br />
* <font style="color:red">Bug fix</font>: add code to allow embedded traffic breaks to be specified with start time and length in the music schedule.<br />
<br />
=== 2.13.0 (2016-05-10) ===<br />
* Database version '''255'''<br />
* <font style="color:green">Functionality</font>: add RLM plugin for the Paravel Systems ''WallTime'' clock<br />
* <font style="color:green">Functionality</font>: add new CLI command ''rdexport'' to export Carts with metadata<br />
* <font style="color:green">Functionality</font>: new report: ''Cut Log'' that includes the Description field for played events<br />
* <font style="color:red">Bug fix</font>: fixed a crash in RDLibrary when attempting to open multiple Carts<br />
* <font style="color:red">Bug fix</font>: fixed RDLogEdit to improve performance when saving and updating logs<br />
* <font style="color:red">Bug fix</font>: fixed a bug that caused marker data to be deleted when exporting a Cut<br />
<br />
=== 2.12.0 (2016-04-14) ===<br />
* Database version '''254'''<br />
* <font style="color:green">Functionality</font>: add support for sequential Cut play-out - you can now configure carts to play cuts in a fixed, sequential order rather than by weight value<br />
* <font style="color:green">Functionality</font>: add support for ''Broadcast Tools'' switchers<br />
* <font style="color:green">Functionality</font>: add RML macro '''Copy Cut''' (''CP'') to copy cuts between carts<br />
* <font style="color:green">Functionality</font>: add option to show only &ldquo;recent&rdquo; logs in RDLogEdit<br />
* <font style="color:green">Functionality</font>: add new web API methods related to Scheduler Codes<br />
* <font style="color:red">Bug fix</font>: fixed a bug that caused issues with Services containing the &ldquo;-&rdquo; (dash) character<br />
<br />
=== 2.11.0 (2015-09-18) ===<br />
* Database version '''252'''<br />
* <font style="color:green">Functionality</font>: add RDCatch upload/download protocols ''sftp'' and ''scp''<br />
* <font style="color:green">Functionality</font>: add support to import ''MP4/AAC'' files<br />
* <font style="color:green">Functionality</font>: add support for the ''Ross NK'' series video switcher<br />
* <font style="color:green">Functionality</font>: add support for ''PCM24'' in the core audio library code<br />
* <font style="color:red">Bug fix</font>: re-wrote the CD ripper code to make it faster and more reliable<br />
* <font style="color:red">Bug fix</font>: fixed several bugs related to audio data and buffering<br />
* <font style="color:red">Bug fix</font>: Normalized service clock data from the 'SERVICES' to the 'SVC_CLOCKS' table<br />
<br />
=== 2.10.3 (2015-02-24) ===<br />
* Database version '''242'''<br />
* <font style="color:green">Functionality</font>: add RLM (plugin) for Live365 streaming service (which is defunct as of Summer 2016)<br />
* <font style="color:green">Functionality</font>: add &ldquo;MrMaster&rdquo; and &ldquo;Spin Count&rdquo; reports<br />
* <font style="color:green">Functionality</font>: add support for audio switcher devices that use the &ldquo;Software Authority&rdquo; protocol<br />
* <font style="color:green">Functionality</font>: add ability to set segue markers in the CLI app ''rdmarkerset''<br />
* <font style="color:red">Bug fix</font>: fixed a bug that caused issues with Services containing a <Space> character in the service name<br />
<br />
=== 2.10.2 (2014-11-25) ===<br />
* Database version '''242'''<br />
* <font style="color:green">Functionality</font>: CLI ''rdimport'' enhancement: add two date-related options to the command<br />
* <font style="color:green">Functionality</font>: add column for ELR data in RDLogEdit<br />
* <font style="color:red">Bug fix</font>: fixed a bug in the Audio Science adapter for cards with only AES3 ports<br />
<br />
=== 2.10.1 (2014-11-04) ===<br />
* Database version '''242'''<br />
* <font style="color:green">Functionality</font>: add &ldquo;DSP utilization and profiling&rdquo; info for Audio Science adapters<br />
* <font style="color:green">Functionality</font>: add the column &ldquo;EXT DATA&rdquo; to the &ldquo;Edit Log&rdquo; screen in RDLogEdit<br />
* <font style="color:red">Bug fix</font>: fixed a memory fault (crash) in RDLogEdit when dropping a cart that was being used in a log</div>
DKlann
http://wiki.rivendellaudio.org/index.php?title=ChangeSummary&diff=725
ChangeSummary
2024-01-29T21:40:08Z
<p>DKlann: Add change description for version 4.1.3.</p>
<hr />
<div>__NOTOC__<br />
== Rivendell Change Summary ==<br />
<br />
This page contains version change descriptions in summary form for Rivendell versions released within at least the most recent five years (quite probably longer). Change descriptions are limited (mostly) to user-visible changes.<br />
<br />
This change summary tracks the two most recent stable versions. As of November, 2023 you can see summaries for versions [[#Version 4.X Changes|4.X]] and [[#Version 3.X Changes|3.X]].<br />
<br />
Please see the [https://raw.githubusercontent.com/ElvishArtisan/rivendell/master/ChangeLog ChangeLog] and [https://github.com/ElvishArtisan/rivendell/blob/master/NEWS NEWS] files in the [https://github.com/elvishartisan/rivendell source code] for a complete list of changes and bug fixes.<br />
<br />
See the [https://github.com/elvishartisan/rivendell/issues Issues] list for current reported bugs, issues and feature requests.<br />
<br />
== Version 4.X Changes ==<br />
<br />
=== 4.1.3 (2024-01-24) ===<br />
<br />
* Database version '''371''' (no change)<br />
<br />
* <font style="color:red">Bug fix</font>: Fixed a race in the log machine logic that could cause truncated play-outs with segue transitions<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in ripcd(8) that could cause a segfault when processing a null password in the &lsquo;Login&rsquo; [&rsquo;LO&rsquo;] RML<br />
* <font style="color:red">Bug fix</font>: Fixed a regression in rdairplay(1) that caused the &lsquo;Sch. Time&rsquo; column to be removed from the Full Log lists<br />
* <font style="color:red">Bug fix</font>: Fixed a regression in rdairplay(1) when using the &lsquo;Append Log&rsquo; [&rsquo;AL&rsquo;] RML caused the Full Log widget to only display the first event of the appended log<br />
* <font style="color:red">Bug fix</font>: Fixed a regression in rdcartslots(1) that broke audio meters<br />
* <font style="color:red">Bug fix</font>: Fixed a regression in rdcatch(1) that broke play-out of the head and tail audition buttons<br />
* <font style="color:red">Bug fix</font>: Fixed a regression in rdcatchd(8) that broke play-out events<br />
* <font style="color:red">Bug fix</font>: Fixed a regression in rdcatchd(8) that caused recordings to always be saved in PCM16 format when the &lsquo;Normalize&rsquo; attribute was set for the recording event<br />
* <font style="color:red">Bug fix</font>: Fixed a regression in rdcatchd(8) that caused recordings to MPEG Layer II to fail<br />
* <font style="color:red">Bug fix</font>: Fixed a regression in the &lsquo;Cut Info / Record&rsquo; dialog in rdlibrary(1) that caused the audio meter to fail to be zeroed when resetting from record ready<br />
* <font style="color:red">Bug fix</font>: Fixed regressions in &lsquo;RDCae&rsquo; and the HPI driver in caed(8) that caused the length of audio captures to be reported incorrectly<br />
* <font style="color:red">Bug fix</font>: Fixed regressions in the CAE subsystem that broke play-out positioning and active output port reporting<br />
<br />
* <font style="color:green">Functionality</font>: Reduced the minimum size of rdairplay(1) to 1280x870 so as to fit on a 1280x1024 display<br />
* <font style="color:green">Functionality</font>: Added support for subclauses in the cart library search filter<br />
* <font style="color:green">Functionality</font>: Optimized the handling of cart numbers when searching for carts<br />
<br />
* <font style="color:blue">Code (internal) change</font>: Cleaned up warnings about unprocessed CAE commands in the syslog<br />
* <font style="color:blue">Code (internal) change</font>: Refactored the CAE control interface to assign session IDs from the client rather than the service end<br />
* <font style="color:blue">Code (internal) change</font>: Added &lsquo;debhelper&rsquo; to the list of required build packages for Debian 11 "Bullseye" in &lsquo;INSTALL&rsquo;<br />
* <font style="color:blue">Code (internal) change</font>: Removed the &lsquo;card-num&rsquo;, &lsquo;port-num&rsquo; and &lsquo;stream-num&rsquo; parameters from the &lsquo;Set Output Volume&rsquo; [&rsquo;OV&rsquo;] and &lsquo;Fade Output Volume&rsquo; [&rsquo;FV&rsquo;] CAE commands<br />
* <font style="color:blue">Code (internal) change</font>: Removed vestigal support for the &lsquo;Open RTP Capture Channel&rsquo; [&rsquo;CO&rsquo;] CAE command<br />
* <font style="color:blue">Code (internal) change</font>: Removed vestigal support for the &lsquo;Output Stream Status&rsquo; [&rsquo;MS&rsquo;] CAE command<br />
* <font style="color:blue">Code (internal) change</font>: Added &lsquo;Wants=hpklinux.service&rsquo; to the &lsquo;rivendell&rsquo; SystemD service definition<br />
* <font style="color:blue">Code (internal) change</font>: Changed the default value of the &lsquo;RDLogLine::Imported&rsquo; start time from &lsquo;00:00:00&rsquo; to NULL<br />
* <font style="color:blue">Code (internal) change</font>: Changed the distro name from &lsquo;Raspbian&rsquo; to &lsquo;Raspberry Pi OS&rsquo; in &lsquo;configure.ac&rsquo;<br />
* <font style="color:blue">Code (internal) change</font>: Changed the recommended base branch for PRs from &lsquo;master&rsquo; to &lsquo;v4&rsquo; in the &lsquo;CONTRIBUTING CHANGES&rsquo; section of &lsquo;CODINGSTYLE&rsquo;<br />
* <font style="color:blue">Code (internal) change</font>: Modified the call parameters of the &lsquo;Output Stream Meter Levels&rsquo; [&rsquo;MO&rsquo;] CAE command to use play session serial numbers rather than card and stream numbers<br />
* <font style="color:blue">Code (internal) change</font>: Modified the schema reversion 348=&gt;347 in rddbmgr(8) to remove out-of-bounds SoundPanel button entries<br />
* <font style="color:blue">Code (internal) change</font>: Documented the meaning of the &lsquo;RDLogLine::StartTimeType&rsquo; enum in &lsquo;lib/rdlog_line.h&rsquo;<br />
<br />
* <font style="color:orange">Documentation</font>: Documented the &lsquo;Source&rsquo; and &lsquo;Ingest&rsquo; fields for Cuts in the &lsquo;RDLibrary&rsquo; chapter of the Operations Guide<br />
* <font style="color:orange">Documentation</font>: Rewrote and expanded the &lsquo;Events&rsquo; section of the &lsquo;RDLogManager&rsquo; chapter of the Operations Guide<br />
* <font style="color:orange">Documentation</font>: Added an &lsquo;Evergreen Cuts&rsquo; section to the &lsquo;RDLibrary&rsquo; chapter of the Operations Guide<br />
* <font style="color:orange">Documentation</font>: Rewrote the CAE API documentation so as to use the term &lsquo;stream&rsquo; more consistently<br />
* <font style="color:orange">Documentation</font>: Added a &lsquo;Library Text Searches&rsquo; appendix to the Operations Guide<br />
<br />
<br />
=== 4.1.2 (2023-11-21) ===<br />
<br />
* Database version '''371''' (no change)<br />
<br />
<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdvairplayd(8) that caused virtual logs to fail to process &lsquo;Load Log&lsquo; [&lsquo;LL&rsquo;], &lsquo;Set Duck Level&rsquo; [&lsquo;MD&rsquo;] and &lsquo;Stop&rsquo; [&lsquo;PS&rsquo;] RMLs with a &lsquo;mach&rsquo; parameter of &lsquo;0&rsquo;<br />
<br />
* <font style="color:red">Bug fix</font>: Fixed a regression in the &lsquo;RDHPIPlayStream&rsquo; that could cause audio play-out to be truncated; this code is used to play on Audio Science audio adapters<br />
* <font style="color:red">Bug fixes</font>: Fixed many bugs in &lsquo;RDSoundPanel&rsquo;. Many &ldquo;cosmetic&rdquo; changes including those affecting drag-and-drop operation, button rendering, colors, resizing, etc., as well as crash fixes<br />
* <font style="color:red">Bug fix</font>: Fixed a regression in caed(8) that caused multiple play-outs on a common port to interfere with each others mixer settings<br />
* <font style="color:red">Bug fix</font>: Fixed a bug that failed to remove records from the &lsquo;USER_SERVICE_PERMS&rsquo; database table<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdairplay(1) that caused a segfault when attempting to unload a log from the voice tracker while the tracker was active<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdairplay(1) that allowed access to the Voice Tracker even when the current user had the &lsquo;Voicetrack Logs&rsquo; privilege revoked<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdlogmanager(1) that caused scheduler codes containing space characters to fail to be processed correctly<br />
* <font style="color:red">Bug fix</font>: Fixed a long-standing (and annoying) bug in ripcd(8) that caused memory to be leaked when processing RMLs<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in caed(8) that could cause play-outs from different hosts to cross-talk into each other&rsquo;s outputs when using a shared caed(8) instance<br />
* <font style="color:green">Functionality</font>: Added a &lsquo;TestOutputStreams=&rsquo; directive to the &lsquo;[Caed]&rsquo; section of rd.conf(5); this is likely useful only for developers<br />
* <font style="color:green">Functionality</font>: Added a &lsquo;PadSegueOverlap=&rsquo; directive to rd.conf(5); this value is used in the playout engine to alter the start time of tracks when the transition type is set to '''SEGUE'''<br />
* <font style="color:green">Functionality</font>: Added a &lsquo;--dump-panel-updates&rsquo; switch to rdpanel(1)<br />
* <font style="color:green">Functionality</font>: Added a &lsquo;--dump-panel-updates&rsquo; switch to rdairplay(1)<br />
* <font style="color:green">Functionality</font>: Added a &lsquo;SoundPanel Buttons&rsquo; notification<br />
* <font style="color:green">Functionality</font>: Prepended the string &lsquo;[mixer]&rsquo; to all syslog entries generated as a result of enabling the &lsquo;EnableMixerLogging=&rsquo; directive in rd.conf(5)<br />
* <font style="color:green">Functionality</font>: Added checks to the &lsquo;Add Scheduler Code&rsquo; dialog in rdadmin(1) to enforce the use of only alphanumeric characters plus space<br />
<br />
* <font style="color:blue">Code (internal) change</font>: Refactored the &lsquo;RDSoundPanel&rsquo;, &lsquo;RDPanelButton&rsquo; and &lsquo;RDButtonPanel&rsquo; classes to avoid races when changing the current Rivendell user<br />
* <font style="color:blue">Code (internal) change</font>: Added code to the &lsquo;Unload Playback&rsquo; [&lsquo;UP&rsquo;] CAE command to mute all output port volume controls from the subject output stream<br />
* <font style="color:blue">Code (internal) change</font>: Added a feature to the &lsquo;Set Output Port&rsquo; [&lsquo;OP&rsquo;] CAE command where passing a &lsquo;-1&rsquo; for the &lsquo;port-num&rsquo; argument will cause all output stream volume controls for the specified stream to be muted<br />
* <font style="color:blue">Code (internal) change</font>: Added a &lsquo;RDJsonEscape(const QString &str)&rsquo; function in &lsquo;lib/rdweb.cpp&rsquo; and &lsquo;lib/rdweb.h&rsquo;<br />
* <font style="color:blue">Code (internal) change</font>: Refactored the &lsquo;RDCae&rsquo; class to use the native BSD sockets API instead of &lsquo;QTcpSocket&rsquo;<br />
* <font style="color:blue">Code (internal) change</font>: Added a &lsquo;gpio_fuzz_test&rsquo; test harness in &lsquo;tests/&rsquo;<br />
* <font style="color:blue">Code (internal) change</font>: Added a &lsquo;rml_torture_test&rsquo; test harness in &lsquo;tests/&rsquo;<br />
<br />
* <font style="color:orange">Documentation</font>: Added a rdpanel(1) man page<br />
* <font style="color:orange">Documentation</font>: Clarified the entries for the &lsquo;Pause Panel&rsquo; [&lsquo;PU&rsquo;] and &lsquo;Stop Panel&rsquo; [&lsquo;PT&rsquo;] RMLs in the Operations Guide<br />
* <font style="color:orange">Documentation</font>: Corrected typos in the Operations Guide for the &lsquo;Duck Panel Button&rsquo; [&lsquo;PD&rsquo;] and &lsquo;Set Duck Level&rsquo; [&lsquo;MD&rsquo;] RMLs that incorrectly specified &lsquo;dBFS&rsquo; as the unit for the &lsquo;level&rsquo; parameter<br />
* <font style="color:orange">Documentation</font>: Corrected an error in the invocation specification for the &lsquo;Insert Cart&rsquo; [&lsquo;PX&rsquo;] RML in the Operations Guide<br />
* <font style="color:orange">Documentation</font>: Added &lsquo;Realms&rsquo; to &lsquo;The Rivendell Object Paradigm&rsquo; section of the Operations Guide<br />
* <font style="color:orange">Documentation</font>: Added a note about RDS configuration settings to the exemplar file for the &lsquo;pypad_nautel.py&rsquo; plug-in<br />
<br />
<br />
=== 4.1.0 (2023-08-09) ===<br />
<br />
* Database verson '''371'''<br />
<br />
* <font style="color:red">Bug fix</font>: Fixed regressions that caused spontaneous resizing of the main window in rdairplay(1) when switching between Sound Panel and Voice Tracker views on the right-hand side<br />
* <font style="color:red">Bug fix</font>: Fixed a regression in rdlogmanager(1) that caused the pie chart to fail to be drawn correctly upon first displaying the &lsquo;Edit Clock&rsquo; dialog<br />
* <font style="color:red">Bug fix</font>: Fixed a fencepost bug in the &lsquo;Render Log&rsquo; dialog in rdlogedit(1) that caused rendered log to include the cart immediately after the end of the selected section when setting the &lsquo;Include&rsquo; dropdown to &lsquo;Only Selected Events&rsquo;<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdlibrary(1) that could cause the &lsquo;Add Cart&rsquo; dialog to display the incorrect type for the selected group<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdcastmanager(1) where changes to podcast metadata would fail to be reflected in the feed list<br />
* <font style="color:red">Bug fix</font>: Fixed a regression in rdlogmanager(1) that caused records to be omitted from reports using the &lsquo;CBSI DeltaFlex Traffic Reconciliation v2.01&rsquo; export filter<br />
* <font style="color:red">Bug fix</font>: Fixed a regression in rdlibrary(1) that caused cart deletion to fail with the message "Voicetrack Found"<br />
* <font style="color:green">Functionality</font>: Added an &lsquo;ID&rsquo; column to the &lsquo;Podcast Item List&rsquo; dialog in rdcastmanager(1)<br />
* <font style="color:green">Functionality</font>: Added three columns to the library list in rdlibrary(1): &lsquo;Plays&rsquo;, &lsquo;Last Played&rsquo;, and &lsquo;Ingested On&rsquo;<br />
* <font style="color:green">Functionality</font>: Added support for updating library metadata on subsequent dropbox imports<br />
* <font style="color:orange">Documentation</font>: Added a rivendell(7) manual page<br />
<br />
<br />
=== 4.0.2 (2023-06-23) ===<br />
<br />
* Database verson '''370'''<br />
<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in the voice tracker that caused the waveform displays to be greyed out out immediately after creating a new track marker<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdcatchd(8) that would cause a segfault after reception of a &lsquo;Start Record Deck&rsquo; [&lsquo;RS&rsquo;] RML<br />
* <font style="color:red">Bug fix</font>: Fixed a regression in rdcatch(1) that caused a phantom event entry to appear in the Event List while processing the &lsquo;Start Record Deck&rsquo; [&lsquo;RS&rsquo;] RML<br />
<br />
=== 4.0.1 (2023-06-16) ===<br />
<br />
* Database verson '''370'''<br />
<br />
Rivendell version 4, in development for more than two years, brings many &ldquo;under-the-hood&ldquo; as well as visible changes to the system. This list is incomplete, but attempts to highlight the most important changes. Please edit this page if you see something missing.<br />
<br />
* <font style="color:red">Bug fix</font>: Many bugs have been fixed; many more have likely been introduced<br />
* <font style="color:green">Functionality</font>: switch to graphical programming library [https://www.qt.io/ Qt] version [https://doc.qt.io/qt-5/ 5].<br />
* <font style="color:green">Functionality</font>: new layout of the RDAirPlay window: You may now resize the RDAirPlay window; note however that RDAirPlay has a '''minimum size''' of 1310x870 pixels. RDAirPlay also received a revamped level metering system; the side effect of this is that the meters are now oriented vertically instead of horizontally<br />
* <font style="color:green">Functionality</font>: the minimum supported display (monitor) size is 1680 x 1050 pixels; displays smaller than this may cause problems with some Rivendell applications<br />
* <font style="color:green">Functionality</font>: the &lsquo;Edit Markers&rsquo; window has changed significantly; see the current manual for instructions on setting, changing, and deleting markers from Cuts<br />
* <font style="color:green">Functionality</font>: Rivendell v4.x aims for full compatibility with MySQL 8.0 and earlier versions in their default installation configurations.<br />
* <font style="color:green">Functionality</font>: RDPanel, as well as several windows within RDAdmin now allow for dynamic window sizing<br />
* <font style="color:green">Functionality</font>: Date and time presentation formats can now be customized on the basis of site perferences.<br />
* <font style="color:green">Functionality</font>: It is now possible to disable grid processing on a service-by-service basis, thus permitting a complete schedule to be generated by an external music scheduler. See the &lsquo;Bypassing Grid Processing&rsquo; section in the &lsquo;Generating Logs and Reports with RDLogManager&rsquo; section of the Operation Guide for details.<br />
* <font style="color:orange">Documentation</font>: The documentation has been edited and brought up to date with respect to the current code and functionality of the system<br />
<br />
== Version 3.X Changes ==<br />
<br />
=== 3.6.8 (2023-11-21) ===<br />
<br />
* Database verson '''347'''<br />
<br />
* <font style="color:red">Bug fix</font>: Fixed a long-standing (and annoying) bug in ripcd(8) that caused memory to be leaked when processing RMLs<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in the PyPAD API that caused incorrect date/time resolutions when using the &lsquo;MMM&rsquo; wildcard<br />
* <font style="color:green">Functionality</font>: Changed the value of the &lsquo;Password=&rsquo; directive in the &lsquo;[mySQL]&rsquo; section of &lsquo;conf/rd.conf-sample&rsquo; to &lsquo;hackme&rsquo;<br />
* <font style="color:green">Functionality</font>: Added the API documentation to the &lsquo;rivendell-opsguide&rsquo; RPM package<br />
* <font style="color:green">Functionality</font>: Added API documentation and man pages to the &lsquo;rivendell-opsguide&rsquo; RPM package<br />
<br />
=== 3.6.7 (2023-01-27) ===<br />
<br />
* Database verson '''347'''<br />
<br />
* <font style="color:red">Bug fix</font>: Fixed broken waveform generation on ARM architectures<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdcatchd(8) that caused record events to be captured with the incorrect sampling rate<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in the podcasting subsystem that broke validation of the &lsquo;direct&rsquo; name space<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdlibrary(1) that caused the field names for the &lsquo;FILENAME&rsquo; and &lsquo;LENGTH&rsquo; fields in the &lsquo;Cart Data Dump (CSV)&rsquo; report to be corrupted<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdservice(8) that could cause dropboxes to be instantiated with invalid segue level values<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdlogmanager(1) that caused the slop factors for inline traffic events to fail to be applied when importing a traffic log<br />
* <font style="color:orange">Documentation</font>: Corrected errors in the WebAPI documentation regarding the argument type of the &lsquo;LINE&lt;n&gt;_TIME_TYPE&rsquo; field in the &lsquo;SaveLog&rsquo; call<br />
<br />
=== 3.6.6 (2022-10-02) ===<br />
<br />
* Database verson '''347'''<br />
<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdrssd(8) that caused a podcast episode to be deleted immediately after being made active if the &lsquo;Air Date/Time&rsquo; was set for the future and &lsquo;Item Expires&rsquo; was set to &lsquo;No&rsquo; in the &lsquo;Editing Item&rsquo; dialog<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdcastmanager(1) that caused incorrect ordering when sorting by the &lsquo;Start&rsquo; and &lsquo;Expiration&rsquo; columns in the &lsquo;Podcast Item List&rsquo; dialog<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in the CDDB parser that caused it to emit an error message when processing a 202 response<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in PyPAD where resolution of datetimes could be incorrect<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdservice(8) that could cause a segfault (crash) when started with a previous instance running<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdlogmanager(1) that could cause a segfault (crash) when merging a log<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdrssd(8) that caused incorrect error data to be logged<br />
* <font style="color:red">Bug fix</font>: Fixed a regression in the Disc Ripper in rdlibrary(1) that caused manual changes to track metadata to be incorrectly applied<br />
* <font style="color:green">Functionality</font>: Added &lsquo;--by-isci&rsquo; and &lsquo;--dump-isci-xref&rsquo; options to rdimport(1) and modified rdimport(1) to allow the &lsquo;--by-isci&rsquo; option to take a service name option<br />
* <font style="color:green">Functionality</font>: Added a &lsquo;StayOnTop=&rsquo; directive to the &lsquo;[SoftKeys]&rsquo; section of rd.conf(5)<br />
* <font style="color:green">Functionality</font>: Changed the default &lsquo;--process-interval=&rsquo; value from 60 seconds to 30 seconds in rdrssd(8)<br />
* <font style="color:green">Functionality</font>: Added &lsquo;RDListView::DateTimeSort&rsquo; to the &lsquo;RDListView::SortType enumeration<br />
* <font style="color:green">Functionality</font>: Added explicit processing for 201, 230, 401, 402, 403, 409, 431, 432, 433, 434, 501, 502, 503 and 530 returns in the CDDB parser<br />
* <font style="color:green">Functionality</font>: Added an Online Feed Report to rdcastmanager(1)<br />
* <font style="color:green">Functionality</font>: Modified the full disc ripper and the per-track ripper in rdlibrary(1) to use CD-Text<br />
* <font style="color:green">Functionality</font>: Renamed the &lsquo;CD Metadata Source&rsquo; control in rdlibrary(1) to use &lsquo;CDDB&rsquo; instead of &lsquo;FreeDB&rsquo; when configuring CDDB lookups<br />
* <font style="color:green">Functionality</font>: Added support for a &lsquo;SuppressLinkParameterInheritance=&rsquo; directive in the &lsquo;[Hacks]&rsquo; section of rd.conf(5)<br />
* <font style="color:blue">Code (internal) change</font>: Added code to the podcasting subsystem to log extended curl(1) information to syslog<br />
<br />
=== 3.6.5 (2022-03-18) ===<br />
<br />
* Database verson '''347'''<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdimport(1) that could create duplicate Scheduler Code entries when using the &lsquo;--to-cart&rsquo; and &lsquo;--add-scheduler-code&rsquo; switches simultaneously<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in the &lsquo;rdxport&rsquo; service that caused the &lsquo;ListLog&rsquo; WebAPI call to return null values in the &lsquo;description&rsquo;, &lsquo;isrc&rsquo;, &lsquo;isci&rsquo;, &lsquo;recordingMbId&rsquo; and &lsquo;releaseMbId&rsquo; fields<br />
* <font style="color:green">Functionality</font>: Added a &lsquo;direct&rsquo; namespace to the &lsquo;Apple iTunes&rsquo; and &lsquo;Apple iTunes + Superfeed&rsquo; RSS schemas<br />
<br />
<br />
=== 3.6.4 (2022-02-22) ===<br />
<br />
Note: version 3.6.3 was tagged, but not released.<br />
<br />
* Database verson '''347'''<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdlogmanager(1) that caused leading event attributes to fail to be preserved when suppressing Music of Traffic import markers<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in the rdxport &lsquo;Import&rsquo; service that could result in incorrect end marker placement when processing variable bit rate (VBR) MPEG files<br />
* <font style="color:red">Bug fix</font>: Fixed an arithmetic overflow bug in &lsquo;RDWaveFile&rsquo; that could cause the play length of MPEG-encoded to be incorrectly calculated<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdimport(1) that caused premature validation of metadata<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdxport(8) that caused the &lsquo;SaveLog&rsquo; WebAPI call to fail if the target log didn&rsquo;t exist<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rddbmgr(8) that could cause the 346=&gt;347 schema conversion to hang indefinitely with databases containing large cart libraries<br />
* <font style="color:green">Functionality</font>: Added a &lsquo;SuppressMusicImportLinks=&rsquo; directive to the [Hacks] section of rd.conf(5)<br />
* <font style="color:green">Functionality</font>: Added support for [NowGroups] and [NextGroups] sections in PyPAD script configurations<br />
* <font style="color:green">Functionality</font>: Deprecated use of the &lsquo;Transmit Now & Next data&rsquo; checkbox in the &lsquo;Group&rsquo; dialog in rdadmin(1)<br />
* <font style="color:green">Functionality</font>: Added a &lsquo;SaveWebgetFilesDirectory=&rsquo; directive to rd.conf(5)<br />
* <font style="color:green">Functionality</font>: Modified the mode of files generated by the rd-conf(5) &lsquo;SaveWebgetFilesDirectory=&rsquo; configuration directive from 0440 to 0664<br />
* <font style="color:green">Functionality</font>: Added a &lsquo;linkLength&rsquo; field and a &lsquo;graceTime&rsquo; field to the return XML for the &lsquo;ListLog&rsquo; WebAPI call<br />
* <font style="color:green">Functionality</font>: Added a &lsquo;Log Listing (CSV)&rsquo; report to rdlogedit(1)<br />
* <font style="color:green">Functionality</font>: Added a &lsquo;--print-progress&rsquo; switch to rddbmgr(8)<br />
* <font style="color:blue">Code (internal) change</font>: Overhauled the code for reading MPEG frame headers in &lsquo;RDWaveFile&rsquo;<br />
* <font style="color:blue">Code (internal) change</font>: Increased the import process timeout for the WebGet service to 1200 seconds<br />
<br />
<br />
=== 3.6.2 (2021-07-30) ===<br />
* Database verson '''347'''<br />
* <font style="color:green">Functionality</font>: Added support for system dark themes in RDAirplay<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdlogedit(1) that could cause a crash when attempting to play a non-audio event in the &lsquo;Voice Tracker&rsquo; dialog<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdimport(1) that caused the cart title uniqueness check to be applied to the incorrect string when the &lsquo;--set-string-title=&rsquo; switch was used<br />
<br />
<br />
=== 3.6.1 (2021-06-06) ===<br />
* Database verson '''347'''<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdimport(1) that could cause a crash when the &lsquo;--fix-broken-formats&rsquo; switch is used<br />
* <font style="color:green">Functionality</font>: Added syslog DEBUG messages around the start/stop of ephemeral processes in rdservice(8)<br />
* <font style="color:green">Functionality</font>: Added an &lsquo;--initial-maintenance&rsquo; switch to rdservice(8)<br />
* <font style="color:green">Functionality</font>: Added an &lsquo;--force-system-maintenance&rsquo; switch to rdservice(8)<br />
* <font style="color:green">Functionality</font>: Modified rdmaint(8) to enable it to operate even when the Rivendell services are not running<br />
<br />
=== 3.6.0 (2021-05-15) ===<br />
* Database verson '''347'''<br />
* <font style="color:red">Bug fix</font>: Fixed title separation in rdlogmanager(1) scheduler<br />
* <font style="color:red">Bug fix</font>: Fixed bug in library code ''lib/rdwavefile.cpp'' that copied CartChunk Cut ID past the end of the first "NULL" character<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdairplay(1) that caused the Talk Timer to fail to be populated when adding new carts to a log<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in the Cart Selector Dialog that made it impossible to enter an apostrophe character in the filter search line<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdimport(1) where the title of an existing cart would be overwritten with a default title even when no title was found in the file metadata<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in &lsquo;RDFlacDecode&rsquo; that caused conversion of files with names containing non-ASCII characters to fail<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdadmin(1) where clicking the &lsquo;OK&rsquo; button in the &lsquo;Edit Switcher&rsquo; dialog would cause an error dialog to appear with a &lsquo;primary serial device not active&rsquo; warning. The following devices are affected: &lsquo;Local GPIO&rsquo;, &lsquo;Local Audio Adapter&rsquo;, &lsquo;Logitek vGuest&rsquo;, &lsquo;Livewire LWRP Audio&rsquo;, and &lsquo;Kernel GPIO&rsquo;<br />
* <font style="color:green">Functionality</font>: Modified rdimport(1) and the Webget service so as to send e-mail reports to the address of the current Rivendell user in addition to the group&rsquo;s Notification E-Mail Address<br />
* <font style="color:green">Functionality</font>: Added a &lsquo;STACK_LINES.TITLE&rsquo; field to the database<br />
* <font style="color:green">Functionality</font>: Added the value of the detected CartChunk CutID to the error message generated when rejecting said CutID as invalid when using the &lsquo;--use-cartchunk-cutid&rsquo; switch in rdimport(1)<br />
* <font style="color:green">Functionality</font>: Added code to print the value of the detected CartChunk CutID when using both the &lsquo;--use-cartchunk-cutid&rsquo; and &lsquo;--verbose&rsquo; flags in rdimport(1)<br />
* <font style="color:green">Functionality</font>: Created pypad_ino713_tcp based upon pypad_ino713, converting from UDP to TCP. Added an adjustable delay to account for broadcast air delays<br />
* <font style="color:green">Functionality</font>: Created pypad_nautel based upon pypad_ino713_tcp, including RDS parameters from documentation. Includes delay as above<br />
* <font style="color:green">Functionality</font>: Added a new &lsquo;RadioTraffic.com Traffic Reconciliation&rsquo; report. Renamed the existing &lsquo;RadioTraffic.com Traffic Reconciliation&rsquo; to &lsquo;Original RadioTraffic.com Traffic Reconciliation (DEPRECATED)&rsquo;<br />
* <font style="color:green">Functionality</font>: Changed the way in which the VU Meter UDP port is chosen. One can now specify the base port number and the maximum number of UDP ports to consider when caed(8) sets up the VU meter port<br />
* <font style="color:orange">Documentation</font>: Documented the &lsquo;MeterPortBaseNumber=&rsquo; and &lsquo;MeterPointRange=&rsquo; directives in the rd.conf(5) man page<br />
<br />
=== 3.5.0 (2020-12-12) ===<br />
* Database verson '''346'''<br />
* <font style="color:red">Bug fix</font>: Corrected the column settings in RDAdmin > Manage Hosts > [host] > Dropboxes<br />
* <font style="color:red">Bug fix</font>: Fixed regression with "Scheduler Code:" label overlapping "Group" combobox in rdlibrary(1)<br />
* <font style="color:red">Bug fix</font>: Fixed several bugs in rdadmin(1) that messed with passwords, user settings, and other important settings<br />
* <font style="color:red">Bug fix</font>: Fixed several bugs in rdlogmanager(1) that caused all kinds of mischief<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdairplay(1) where copying a log event using the &lsquo;Copy&rsquo; button would result in the new event always getting a &lsquo;PLAY&rsquo; transition<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rddbmgr(8) that could cause database corruption problems<br />
* <font style="color:red">Bug fix</font>: Fixed bugs in rdimport(1) that caused incorrect exit codes to be emitted when a non-existent group was specified, and that caused generation of double error messages when processing invalid audio files<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdmonitor(1) that caused false indications of a failed audio store when used with autofs(8)<br />
* <font style="color:green">Functionality</font>: Major overhaul of Rivendell&rsquo;s podcast handling features; see the ChangeLog for all the details<br />
* <font style="color:green">Functionality</font>: Modified the GVC7000 switcher driver to insert 50 mS pauses between protocol commands<br />
* <font style="color:green">Functionality</font>: Allow RN Macro to run when Rivendell daemons running as non-root<br />
* <font style="color:green">Functionality</font>: Many changes to rdadmin(1), including:<br />
:* Added whitespace to the set of banned characters for service names<br />
:* Added a &lsquo;SSH Ident. File&rsquo; control to the &lsquo;Host&rsquo; dialog<br />
:* Added an &lsquo;Inline Traffic Inheritance&rsquo; control to the &lsquo;Edit Service&rsquo; dialog<br />
:* Added type icons to the &lsquo;Imported Events&rsquo; list in the &lsquo;Test Import&rsquo; dialog<br />
:* Renamed the &lsquo;Inline Traffic Inheritance&rsquo; control to &lsquo;Inline Traffic Start/Length&rsquo; and moved it to the &lsquo;Music Data Import&rsquo; section of the &lsquo;Edit Service&rsquo; dialog<br />
:* Added an &lsquo;Encoder Profiles&rsquo; dialog<br />
:* Renamed the &lsquo;Note Cart String&rsquo; controls to &lsquo;Insert Marker String&rsquo; in the &lsquo;Edit Service dialog<br />
:* Added an &lsquo;Origin E-Mail Address&rsquo; control to the &lsquo;System-Wide Settings&rsquo; dialog<br />
:* Added a &lsquo;Notification E-Mail Addresses&rsquo; control to the &lsquo;Group&rsquo; dialog<br />
:* Added a &lsquo;Send e-mail reports&rsquo; checkbox to the &lsquo;Dropbox Configuration&rsquo; dialog<br />
:* Added &lsquo;E-Mail Address&rsquo;, &lsquo;Phone Number&rsquo; and &lsquo;Local Auth&rsquo; columns to the &lsquo;Users&rsquo; list in the &lsquo;Rivendell User List&rsquo; dialog<br />
:* Added an &lsquo;Administer RSS Feeds&rsquo; checkbox to the &lsquo;Administrative Rights&rsquo; section of the &lsquo;User&rsquo; dialog<br />
:* Added a deprecation warning for the &lsquo;Allow Duplicate Cart Titles&rsquo; and &lsquo;Auto-Correct Duplicate Cart Titles&rsquo; checkboxes on the &lsquo;System-Wide Settings&rsquo; dialog<br />
* <font style="color:green">Functionality</font>: Added support for FTPS protocol for uploading, downloading, and Feed management<br />
* <font style="color:green">Functionality</font>: Significant update to the Rivendell Web interfaces (Web API, WebGet service, rivwebcapi API, etc.)<br />
* <font style="color:green">Functionality</font>: Added &lsquo;--scheduler-code=&rsquo; switch to rdexport(1)<br />
* <font style="color:green">Functionality</font>: Added generation of an &lsquo;RDLogManager Error Report&rsquo; when errors are detected when importing an external scheduler file in rdlogmanager(1)<br />
* <font style="color:green">Functionality</font>: Restored operation of Label/Note carts in rdlogmanager(1)<br />
* <font style="color:green">Functionality</font>: Updated rdservice(8) to use standard exit code defines<br />
* <font style="color:green">Functionality</font>: Implemented the &lsquo;--verbose&rsquo; switch for rdmaint(8)<br />
* <font style="color:green">Functionality</font>: Added a sample Fail2Ban jail filter for the WebAPI in &lsquo;conf/rivendell-webapi.conf&rsquo;<br />
* <font style="color:green">Functionality</font>: Added command line options &lsquo;--output-pattern&rsquo;, &lsquo;--ticket=&rsquo;, &lsquo;--send-mail&rsquo; and &lsquo;--mail-per-file&rsquo; to rdimport(1)<br />
* <font style="color:green">Functionality</font>: Added the name of the import file to schedule import failure reports<br />
* <font style="color:orange">Documentation</font>: Documented the &lsquo;%%&rsquo; filepath wildcard in the Operations Guide<br />
* <font style="color:orange">Documentation</font>: Added an &lsquo;RDCastManager&rsquo; chapter to the Operations Guide<br />
* <font style="color:orange">Documentation</font>: Revised the &lsquo;Managing Services&rsquo; section of the Operations Guide<br />
* <font style="color:orange">Documentation</font>: Rewrote the &lsquo;Webget&rsquo; chapter of the Operations Guide to conform to changes in Webget<br />
* <font style="color:orange">Documentation</font>: Added a &lsquo;Configuring Webget&rsquo; section to the Operations Guide<br />
* <font style="color:orange">Documentation</font>: Removed the &lsquo;Cart Data Dump (fixed width)&rsquo; from the Operations Guide<br />
* <font style="color:orange">Documentation</font>: Documented user-facing changes to the &lsquo;System-Wide Settings&rsquo; dialog, the &lsquo;Rivendell Group List&rsquo; and the &lsquo;Group&rsquo; dialogs in rdadmin(1) in the Operations Guide<br />
* <font style="color:orange">Documentation</font>: Documented the &lsquo;Send e-mail reports&rsquo; checkbox in the &lsquo;Dropbox Configuration&rsquo; dialog in rdadmin(1) in the Operations Guide<br />
* <font style="color:blue">Code (internal) change</font>: Prepended &lsquo;RD_&rsquo; to the names of all common Javascript functions in &lsquo;web/common/utils.js&rsquo;<br />
* <font style="color:blue">Code (internal) change</font>: Added a &lsquo;webget&rsquo; subpackage to the &lsquo;make rpm&rsquo; target<br />
* <font style="color:blue">Code (internal) change</font>: Refactored the &lsquo;Run Script&rsquo; [&rsquo;RN&rsquo;] RML to invoke scripts via the system shell, this change also removed the dependency on runuser(1)<br />
<br />
=== 3.4.1 (2020-07-21) ===<br />
* Database verson '''317'''<br />
<br />
* <font style="color:green">Functionality</font>: Added a &lsquo;Results Report&rsquo; report in rdadmin(1)<br />
* <font style="color:green">Functionality</font>: Removed the checkbox from the &lsquo;Delete&rsquo; right-click menu item in the &lsquo;Edit Event&rsquo; dialog in rdlogmanager(1)<br />
* <font style="color:green">Functionality</font>: Modified &lsquo;RDWaveFile&rsquo; to work around known fencepost errors in WAV files generated by "Sonic Studio soundBlade" by "PME Mastering, Inc."<br />
* <font style="color:green">Functionality</font>: Modified the &lsquo;Edit Event&rsquo; dialog in rdlogmanager(1) to show &lsquo;[auto]&rsquo; as the transition type for the leading event in Pre-/Post-Import lists<br />
<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdlibrary(1) that caused cuts to be incorrectly sorted when scheduled &lsquo;By Specified Order&rsquo;<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in the Rivendell command line apps that caused value-only arguments containing &lsquo;=&rsquo; characters to be incorrectly parsed<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in the Podcast Manager, Library Exporter and Web API that caused an error when processing multipart-mime submissions containing &lsquo;=&rsquo; characters<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdairplay(1) where attempting to audition an audio cart with a disabled cue output would crash the application<br />
* <font style="color:red">Bug fix</font>: Fixed a regression in rdairplay(1) that caused the &lsquo;Forced Segue&rsquo; setting in rdadmin(1) to be ignored when executing an event with a hard start attribute<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdairplay(1) where a paused event could not be removed by dropping the empty cart on it<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdairplay(1) that cause incorrect pie timer indications after adding or deleting events to a running log<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdlibrary(1) that would cause a crash when attempting to delete a range of cuts, one of which was in the clipboard<br />
* <font style="color:red">Bug fix</font>: Fixed a math bug in rdairplay(1) that caused the estimated stop-down times in the post point widget to be incorrect after adding or removing events from a running log<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdadmin(1) that made it impossible to enter useful strings in the &lsquo;WaveForm Caption&rsquo; control on the &lsquo;Edit RDLogEdit&rsquo; dialog<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in RDRenderer that caused segue transitions to be rendered without regard to the &lsquo;No Fade on Segue Out&rsquo; checkbox in the &lsquo;Edit Audio&rsquo; dialog<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in ripcd(8) that caused connections to ModbusTCP devices to fail to be properly restored by the connection watchdog<br />
* <font style="color:red">Bug fix</font>: Fixed a regression in the &lsquo;Edit Event&rsquo; dialog in rdlogmanager(1) that caused the first cart transition type to be incorrect when the &lsquo;Pre-Import Carts&rsquo; list was populated<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in the &lsquo;Add Next&rsquo; [&rsquo;PX&rsquo;] RML that failed to return an error when an invalid offset value was supplied<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in the &lsquo;Add Next&rsquo; [&rsquo;PX&rsquo;] RML that failed to honor the &lsquo;Default Trans. Type&rsquo; setting in the &lsquo;Configure RDAirPlay&rsquo; dialog in rdadmin(1)<br />
<br />
=== 3.4.0 (2020-05-19) ===<br />
* Database verson '''317'''<br />
* <font style="color:red">Bug fix</font>: Fixed a regression in rdairplay(1) that caused two events to be started by a single spacebar tap if a SoundPanel event had been played previously<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdlogmanager(1) that caused the initial event in an imported set to fail receive the proper time and transition type if the &lsquo;Include Import Markers in Finished Logs&rsquo; checkbox in rdadmin(1) had not been ticked<br />
* <font style="color:red">Bug fix</font>: Fixed a regression in rdexport(1) that caused exported file names to be constructed improperly<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdlogmanager(1) that caused &lsquo;Make Post Point&rsquo; label to be displayed without last &lsquo;t&rsquo;<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdairplay(1) where timer was not set properly when crossing midnight<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in the &lsquo;List GPIs&rsquo; dialog in rdadmin(1) that prevented changes in GPI assignments from being propagated to the underlying device<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in the &lsquo;Software Authority&rsquo; driver that caused autodetection of the number of GPIOs in a router to be unreliable<br />
* <font style="color:red">Bug fix</font>: Fixed a regression in &lsquo;RDEventLine&rsquo; that caused the &lsquo;Append Log&rsquo; [&rsquo;AL&rsquo;] RML to append a copy of the currently loaded log instead of the one specified in the RML command<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdlogedit(1) that caused garbled text to appear when &lsquo;Start Immediately&rsquo; was selected in the &lsquo;Edit Log Entry&rsquo; dialog box<br />
* <font style="color:red">Bug fix</font>: Fixed a regression that broke the ability to scroll through Sound Panel panels by means of the mouse wheel<br />
<br />
* <font style="color:green">Functionality</font>: Modified rdairplay(1) to always scroll log to the top when using the hour selector<br />
* <font style="color:green">Functionality</font>: Modified rdlogmanager(1) to disable merge buttons if the selected log does not contain any import links<br />
* <font style="color:green">Functionality</font>: Modified rdadmin(1) Edit Service dialog to display built-in traffic and music import template values<br />
* <font style="color:green">Functionality</font>: Added "Copy To Custom" buttons to rdadmin(1) Edit Service dialog<br />
* <font style="color:green">Functionality</font>: Changed the layout of the &lsquo;Editing Event&rsquo; dialog in rdlogmanager<br />
<br />
* <font style="color:green">Functionality</font>: Removed the &lsquo;Post Point&rsquo; checkbox from the &lsquo;Editing Event&rsquo; dialog in rdlogmanager(1)<br />
* <font style="color:green">Functionality</font>: Renamed the &lsquo;REMARKS&rsquo; field to &lsquo;USER NOTES&rsquo; in the &lsquo;Editing Event&rsquo; and the &lsquo;Edit Clock&rsquo; dialogs in rdlogmanager(1)<br />
* <font style="color:green">Functionality</font>: Added a &lsquo;Trans&rsquo; column to the event list in the &lsquo;Edit Clock&rsquo; and the &lsquo;List Events&rsquo; dialogs in rdlogmanager(1)<br />
<br />
=== 3.3.0 (2020-03-16) ===<br />
* Database verson '''314'''<br />
* <font style="color:red">Bug fix</font>: Fixed regressions in the following switcher drivers that could cause deadlocks and intermittent operation<br />
:* BroadcastTools SS16.4<br />
:* BroadcastTools SS 4.2<br />
:* BroadcastTools SS4.4<br />
:* BroadcastTools SS 8.2<br />
:* BroadcastTools ACS8.2<br />
:* BroadcastTools ADMS 44.22<br />
:* BroadcastTools GPI-16<br />
:* BroadcastTools SRC-16<br />
:* BroadcastTools SRC-8 III<br />
:* BroadcastTools SS 4.1 MLR<br />
* <font style="color:red">Bug fix</font>: Fixed a regression in the implementation of the &lsquo;Set Serial Trap&rsquo; [&lsquo;SI&rsquo;] RML that could cause deadlocks and intermittent operation<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdairplay(1) that could cause random segfaults when updating the Label Widget<br />
* <font style="color:red">Bug fix</font>: Fixed a bug with the &lsquo;%y&rsquo; metadata wildcard where garbage would be returned if a valid year had not been set<br />
* <font style="color:red">Bug fix</font>: Fixed a regression in rdlogmanager(1) that caused trailer whitespace to be generated in the &lsquo;EXT_DATA&rsquo;, &lsquo;EXT_EVENT&rsquo;, &lsquo;EXT_ANNC_TYPE&rsquo; and &lsquo;EXT_CART_NAME&rsquo; log fields when importing from a CounterPoint format log<br />
* <font style="color:red">Bug fix</font>: Fixed the layout of the &lsquo;Matching Carts&rsquo; field in rdlibrary(1)&rsquo;s main window when Realtime Filtering is disabled<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdairplay(1) that would cause a hard-timed log event with a &lsquo;wait&rsquo; parameter set to attempt to play the event twice<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rddbmgr(8) that threw a SQL error when attempting to modify a DB containing tables set to use character set UTF-8 to schema 297<br />
* <font style="color:red">Bug fix</font>: Fixed a race in ripcd(8) that caused arguments to the &lsquo;Run Shell Command&rsquo; [&lsquo;RN&rsquo;] macro to be corrupted<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in the &lsquo;Edit Event&rsquo; dialog in rdlogmanager(1) that caused the Transition Type dropdown to be greyed-out when the &lsquo;IMPORT&rsquo; controls were set to use the built-in music scheduler<br />
* <font style="color:green">Functionality</font>: Added a &lsquo;delta-seconds&rsquo; modifier to Filepath Wildcards to enable positive and negative time offsets<br />
* <font style="color:green">Functionality</font>: Removed support for CD-TEXT from the CD rippers<br />
* <font style="color:green">Functionality</font>: Added support for &lsquo;MusicBrainz&rsquo; CD metadata lookup<br />
* <font style="color:green">Functionality</font>: Added a &lsquo;Web Browser&rsquo; control to the &lsquo;Edit Host&rsquo; dialog in rdadmin(1)<br />
* <font style="color:green">Functionality</font>: Added support for displaying cover art in the MusicBrainz release chooser<br />
* <font style="color:green">Functionality</font>: Added &lsquo;%wm&rsquo; [&lsquo;MusicBrainz Recording ID&rsquo;] and &lsquo;%wr&rsquo; [&lsquo;MusicBrainz Release ID&rsquo;] metadata wildcards<br />
* <font style="color:green">Functionality</font>: Implemented the &lsquo;%wm&rsquo; [&lsquo;MusicBrainz Recording ID&rsquo;] and &lsquo;%wr&rsquo; [&lsquo;MusicBrainz Release ID&rsquo;] metadata wildcards for PyPAD<br />
* <font style="color:green">Functionality</font>: Added support for the &lsquo;%wi&rsquo;, &lsquo;%wm&rsquo; and &lsquo;%wr&rsquo; wildcards to the &lsquo;--metadata-pattern=&rsquo; switch in rdimport(1)<br />
* <font style="color:green">Functionality</font>: Added &lsquo;--set-string-isrc&rsquo;, &lsquo;--set-string-recording-mbid&rsquo; and &lsquo;--set-string-release-mbid&rsquo; switches to rdimport(1)<br />
* <font style="color:green">Functionality</font>: Added support for the &lsquo;%wi&rsquo;, &lsquo;%wm&rsquo; and &lsquo;%wr&rsquo; wildcards to the &lsquo;--metadata-pattern=&rsquo; switch in rdexport(1)<br />
* <font style="color:green">Functionality</font>: Added a &lsquo;%wc&rsquo; [&lsquo;Industry Standard Commercial Identification (ISCI) Code&rsquo;] metadata wildcard<br />
* <font style="color:green">Functionality</font>: Implemented the &lsquo;%wc&rsquo; metadata wildcard for PyPAD<br />
* <font style="color:green">Functionality</font>: Added support for the &lsquo;%wc&rsquo; wildcards to the &lsquo;--metadata-pattern=&rsquo; switch in rdimport(1)<br />
* <font style="color:green">Functionality</font>: Added &lsquo;--set-string-isci&rsquo; switch to rdimport(1)<br />
* <font style="color:green">Functionality</font>: Added support for the &lsquo;%wc&rsquo; wildcard to the &lsquo;--metadata-pattern=&rsquo; switch in rdexport(1)<br />
* <font style="color:green">Functionality</font>: Removed the &lsquo;RDLabel&rsquo; widget<br />
* <font style="color:green">Functionality</font>: Added a &lsquo;Disconnect All Jack Ports&rsquo; [&lsquo;JZ&rsquo;] RML<br />
* <font style="color:green">Functionality</font>: Added a &lsquo;CounterPoint Traffic Reconciliation v2&rsquo; report<br />
<br />
=== 3.2.1 (2020-01-24) ===<br />
* Database verson '''311'''<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdcatch(1) that threw a SQL error when clicking 'OK' on the &lsquo;Edit Cart Event&rsquo; dialog<br />
* <font style="color:red">Bug fix</font>: Fixed a regression in rdimport(1) that caused null characters to be written to cart metadata fields when importing files containing an &lsquo;AIR1&rsquo; RIFF chunk<br />
* <font style="color:red">Bug fix</font>: Fixed a regression in rdcatch(1) that caused the &lsquo;Source&rsquo; dropdown in the &lsquo;Edit Recording&rsquo; dialog to fail to be populated properly<br />
* <font style="color:red">Bug fix</font>: Fixed a regression in the cart selector dialog that caused default focus to be lost on the &lsquo;Filter&rsquo; control after second and subsequent invocations<br />
* <font style="color:red">Bug fix</font>: Fixed a regression in rdcatchd(8) that broke audio metering<br />
* <font style="color:red">Bug fix</font>: Fixed a regression in rdcatchd(8) that could cause download events to hang in an active state<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdcatch(1) that caused DOW flags to fail to be updated correctly on the event list after making a change<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdcatchd(8) that failed to send a MODIFY notification at the end of a Record or Download event<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdconvert that caused a segfault at startup<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdexport(1) that caused output filenames containing multi-byte UTF-8 characters to be corrupt<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdgpimon(1) that caused GPIO cart displays to fail to accurately reflect current state<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdgpimon(1) that caused incorrect state indications to be displayed after switching to a different page<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdimport(1) that caused non-Latin1 characters to be corrupted when using standard input<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdimport(1) that caused UTF-8 multibyte characters in filenames to be corrupted<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdlogmanager(1) that caused spurious log events to be inserted when generating a log<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in ripcd(8) that caused input and output counts to be calculated incorrectly for Software Authority protocol devices containing holes in the input and/or output lists<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in the &lsquo;pypad-shoutcast1.py&rsquo; script that threw an exception when processing PAD containing multi-type UTF-8 characters<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in the &lsquo;pypad_xds.py&rsquo; PyPAD script that could cause it to emit duplicate CIC updates<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in the &lsquo;rivwebcapi&rsquo; validate_tm() function that caused dates containing &lsquo;29 February&rsquo; to always fail regardless of leap-year validity<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in the rdxport service that could cause MODIFY notifications to fail to be sent by the &lsquo;SaveLog&rsquo; WebAPI call<br />
* <font style="color:red">Bug fix</font>: Fixed a regression in rdadmin(1) that caused controls to be hidden in the &lsquo;Edit Report&rsquo; dialog<br />
* <font style="color:red">Bug fix</font>: Fixed a regression in rdlogmanager(1) that caused incorrect logged start times to be generated for imported events<br />
* <font style="color:red">Bug fix</font>: Fixed a regression in the rdxport service that caused the ListCuts WebAPI call to return corrupt data<br />
* <font style="color:red">Bug fix</font>: Fixed a regression in the Web API that caused the and/or corrupt in served XML documents<br />
* <font style="color:green">Functionality</font>: Implemented support for non-realtime library filtering in the &lsquo;Editing Event&rsquo; dialog in rdlogmanager(1)<br />
* <font style="color:green">Functionality</font>: Added a &lsquo;Show Start Time As&rsquo; control to the &lsquo;Edit Log&rsquo; dialog in rdlogedit(1)<br />
* <font style="color:green">Functionality</font>: Made the rdlogedit(1) main window and &lsquo;Edit Log&rsquo; dialog window sizes persistent<br />
* <font style="color:green">Functionality</font>: Added a work-around in the &lsquo;PyPAD.Receiver().__openDb()&rsquo; method to work with versions of MySQLdb that do not support the &lsquo;password=&rsquo; parameter in &lsquo;MySQLdb.connect()&rsquo;<br />
* <font style="color:green">Functionality</font>: Added &lsquo;Repetitions=&rsquo; and &lsquo;RepetitionDelay=&rsquo; directive to the configuration of the &lsquo;pypad_xds.py&rsquo; PyPAD script<br />
* <font style="color:green">Functionality</font>: Added &lsquo;Username=&rsquo; and &lsquo;Password=&rsquo; directives to the &lsquo;pypad_httpget.py&rsquo; script for use for HTTP Basic Authentication<br />
* <font style="color:green">Functionality</font>: Added the ability to view a report at time of generation in rdlogmanager(1)<br />
* <font style="color:green">Functionality</font>: Adjusted the position of the &lsquo;Matching Carts&rsquo; readout on the main window of rdlibrary(1)<br />
* <font style="color:green">Functionality</font>: Changed the &lsquo;Time&rsquo; column in the &lsquo;Full Log Widget&rsquo; in rdairplay(1) to &lsquo;Sch. Time&rsquo;<br />
* <font style="color:green">Functionality</font>: Implemented a work-around for importing CartChunk data containing a buggy ENCO implemention of the &lsquo;AUD&rsquo; CartChunk timer<br />
* <font style="color:green">Functionality</font>: Modified the Full Log widget in rdairplay(1) to display logged start times even when the referenced cart does not exist<br />
* <font style="color:green">Functionality</font>: Tweaked the &lsquo;LogLineBox::mouseMoveEvent()&rsquo; method in rdairplay(1) to require a cursor movement of at least 20 pixels before generating a cart drag<br />
<br />
=== 3.2.0 (2019-10-31) ===<br />
* Database verson '''311'''<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rddbmgr(8) that caused a segfault when processing a SQL error<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdimport(1) that caused it to throw an exception when given a &lsquo;--metadata-pattern&rsquo; of less than three characters<br />
* <font style="color:red">Bug fix</font>: Fixed a regression in rdimport(1) that caused a segfault when invoked with the &lsquo;--metadata-pattern&rsquo; and &lsquo;--log-syslog&rsquo; switches<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdairplay(1) that caused space bar presses to start the next event in the Main Log even when &lsquo;Space Bar Action&rsquo; was set to &lsquo;None&rsquo;<br />
* <font style="color:red">Bug fix</font>: Fixed bugs in 'RDWaveFile' that caused strings of null characters to be written into unfilled CartChunk string fields<br />
* <font style="color:red">Bug fix</font>: Fixed a regression in 'rdxport.cgi' that caused a check of the Rivendell services to be triggered each time a WebAPI function was invoked<br />
* <font style="color:red">Bug fix</font>: Fixed a regression in rdsoftkeys(1) that threw a segfault at startup<br />
* <font style="color:green">Functionality</font>: Added the ability to configure the caption displayed for the first and third voicetrack waveforms in the Voicetracker dialog in rdlogedit(1)<br />
* <font style="color:green">Functionality</font>: Reworked the font management system to permit the fonts used in the UI to be specified in rd.conf(5).<br />
* <font style="color:green">Functionality</font>: Added support for posting podcast content via SFTP<br />
* <font style="color:orange">Documentation</font>: Added manual pages for rd.conf(5) and rdsoftkeys(1)<br />
<br />
=== 3.1.0 (2019-09-19) ===<br />
* Database verson '''310'''<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdairplay(1) and rdvairplayd(8) where only the first log machine set to &lsquo;load specified log&rsquo; would do so<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdlogedit(1) that caused hard start log items to have the Hour field doubled<br />
* <font style="color:red">Bug fix</font>: Refactored the Python &lsquo;pypad.Update.shouldBeProcessed()&rsquo; method to work correctly when using <tt>try:</tt> blocks in a PyPAD script<br />
* <font style="color:red">Bug fix</font>: Refactored the PyPAD scripts to route updates properly in accordance with log directives in their configuration file<br />
* <font style="color:red">Bug fix</font>: Fixed a bug that broke dropbox logging to individual files<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in caed(8) that broke timescaling support<br />
* <font style="color:red">Bug fix</font>: Fixed bugs in rdlibrary(1) that broke CD ripping<br />
* <font style="color:green">Functionality</font>: Refactored rdalsaconfig(1) to be more robust and intuitive<br />
* <font style="color:green">Functionality</font>: Added a &lsquo;pypad_httpget.py&rsquo; PyPAD script<br />
* <font style="color:green">Functionality</font>: Updated CDDB code to use protocol level 6 (UTF-8 enabled)<br />
* <font style="color:green">Functionality</font>: Added an &lsquo;%l&rsquo; wildcard to Filepath Wildcards for &lsquo;unpadded month&rsquo;<br />
=== 3.0.3 (2019-08-05) ===<br />
* Database verson '''308'''<br />
* <font style="color:red">Bug fix</font>: Fixed a regression in ripcd(8) that broke the 'Connect Jack Ports' ['JC'] and 'Disconnect Jack Ports' ['JD'] RMLs<br />
=== 3.0.2 (2019-07-31) ===<br />
* Database verson '''308'''<br />
* <font style="color:red">Bug fix</font>: Fixed a problem with the Local Audio Adapter switcher driver that caused incorrect operation with the 'Switch Add' ['SA'], 'Switch Remove' ['SR'] and 'Switch Take' ['ST'] RMLs<br />
* <font style="color:red">Bug fix</font>: Fixed a regression in rdlibrary(1) that caused macro carts entries to turn red after being viewed<br />
* <font style="color:red">Bug fix</font>: Fixed regressions that made operations with serial devices unreliable<br />
* <font style="color:green">Functionality</font>: Added support for switchers using the Grass Valley 7000 series protocol<br />
=== 3.0.1 (2019-07-16) ===<br />
* Database verson '''308'''<br />
* <font style="color:red">Bug fix</font>: Rivendell is now Unicode UTF-8 clean<br />
* <font style="color:red">Bug fix</font>: Qt4 is now used throughout Rivendell instead of Qt3<br />
* <font style="color:green">Functionality</font>: The Rivendell Loadable Modules system for processing PAD data has been completely replaced by PyPAD, allowing PAD processing plug-ins to be written in the popular Python scripting langauge. Backward compatible replacement scripts for many of the RLM plug-ins supplied in Rivendell v2.x are included<br />
* <font style="color:green">Functionality</font>: Added a compatibility library to facilitate the use of the Rivendell Web API in external applications<br />
* <font style="color:green">Functionality</font>: A system of virtual log machines has been added, allowing play-out of up to 23 logs simultaneously<br />
* <font style="color:green">Functionality</font>: Rivendell is now fully systemd compatibile<br />
* <font style="color:green">Functionality</font>: The Windows ports of rdlogedit(1) and rdlogmanager(1) have been removed<br />
* <font style="color:orange">Documentation</font>: The Rivendell Operations and Administration Guide has been updated and enhanced with more details about running a Rivendell system<br />
* <font style="color:orange">Documentation</font>: New manual pages have been added for Rivendell command that previously did not have them<br />
See [http://caspian.paravelsystems.com/pipermail/rivendell-dev/2019-July/027867.html this message] on the Rivendell Dev mailing list for more details about installing and upgrading Rivendell.<br />
=== 2.19.3 (2018-10-31) ===<br />
* Database verson '''275'''<br />
* <font style="color:red">Bug fix</font>: Fixed a bug that caused the &lsquo;Switcher Matrix&rsquo; and &lsquo;Switcher Output&rsquo; dropdowns to populate incorrect values when selecting a non-local &lsquo;Switcher Host&rsquo; in the &lsquo;Configure RDCatch&rsquo; dialog in rdadmin(1)<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdlogmanager(1) that caused the initial transition type specified in the &lsquo;IMPORT&rsquo; section of the &lsquo;Editing Event&rsquo; dialog to be applied to both the parent log link and the first imported event when the &lsquo;PRE-IMPORT CARTS&rsquo; list was empty and no Timed Start was enabled<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in ripcd(8) that caused process of the &lsquo;Air Gate&rsquo; [&lsquo;AG&rsquo;] RML to fail<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdimport(1) that would throw a spurious SQL error when using the &lsquo;--to-cart=&rsquo; switch with an already existing cart [Issue #000217]<br />
* <font style="color:red">Bug fix</font>: Fixed a regression that caused rdimport(1) to return a &lsquo;no free carts available in specified group&rsquo; when invoked without the &lsquo;--to-cart=&rsquo; option<br />
* <font style="color:red">Bug fix</font>: Fixed a regression in rdairplay(1) that caused carts Added or Copied to a log to have a PLAY transition regardless of the default transition type set in rdadmin(1)<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in &lsquo;RDTextValidator&rsquo; that failed to catch banned characters added to the interior of existing strings<br />
* <font style="color:red">Bug fix</font>: Various other bugs fixed<br />
* <font style="color:green">Functionality</font>: Added a &lsquo;TranscodingDelay=&rsquo; parameter to the &lsquo;[Tuning]&rsquo; section of rd.conf(5)<br />
* <font style="color:green">Functionality</font>: Added a Switcher/GPIO driver for the BroadcastTools SS 2.1 switcher<br />
* <font style="color:green">Functionality</font>: Added support for GPIO on AudioScience adapters to the 'Local Audio Adapter' Switcher/GPIO driver<br />
* <font style="color:green">Functionality</font>: Renamed the 'Add Next' ['PX'] RML to 'Insert Cart' ['PX'] and added two optional arguments to allow specification of the insertion position and transition type<br />
* <font style="color:green">Functionality</font>: Added support for Spinitron v2 to the 'spinitron_plus' RLM<br />
* <font style="color:green">Functionality</font>: Added an &lsquo;ExportedFileMode=&rsquo; parameter to the &lsquo;[Tuning]&rsquo; section of rd.conf(5) to permit permission mode of exported audio files to be specified<br />
* <font style="color:orange">Documentation</font>: Documented GPIO support for AudioScience cards in the &lsquo;Local Audio Adapter&rsquo; section of the Operations Guide<br />
<br />
=== 2.19.2 (2018-04-14) ===<br />
* Database verson '''275'''<br />
* <font style="color:red">Bug fix</font>: Fixed a regression in the HPI support layer that broke audio capture with adapters lacking DMA bus-mastering support<br />
<br />
=== 2.19.1 (2018-03-27) ===<br />
* Database verson '''275'''<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdlogmanager(1) that caused DB corruption when a clock was deleted while still being assigned to a grid.<br />
* <font style="color:green">Functionality</font>: Implemented support for DMA bus-mastering for AudioScience HPI devices. This release supports the latest ASI cards that require DMA bus-mastering support. You may also need to update the hpklinux driver to v4.20.10 or later. RPMs for CentOS 7 are available at [http://static.paravelsystems.com/audioscience/centos/7/ Paravel&rsquo;s website].<br />
* <font style="color:green">Functionality</font>: Removed rdhpiinfo(8). Replaced by the stand-alone &lsquo;hpiinfo&rsquo; package.<br />
* <font style="color:green">Functionality</font>: Removed the event time check for Playout events in rdcatch(1), as there is no sane way to determine a consistently &lsquo;free&rsquo; playout time in the face of shifting cut lengths.<br />
<br />
=== 2.19.0 (2018-02-22) ===<br />
* Database verson '''275'''<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdlibrary(1) that caused evergreen carts/cuts to fail to be highlighted in the correct color<br />
* <font style="color:green">Functionality</font>: Added the ability to specify automatic log deletion on the basis of either the Creation Date or Air Date of the log<br />
* <font style="color:green">Functionality</font>: Log Importation Changes. Changed music and traffic importation so that parent link events are still visible in linked logs<br />
* <font style="color:green">Functionality</font>: Log Locking: implemented a system-wide protocol to prevent changes made to a log on one host from being inadvertently overwritten from another host<br />
<br />
=== 2.18.2 (2017-12-29) ===<br />
* Database version '''272'''<br />
* <font style="color:red">Bug fix</font>: Fixed a bug that caused creation of new clocks in rdlogmanager(1) to fail to initialize music scheduler components correctly in the database<br />
<br />
=== 2.18.1 (2017-12-22) ===<br />
* Database version '''272'''<br />
* <font style="color:red">Bug fix</font>: Fixed a bug that caused creation and initialization of a new Rivendell database to fail<br />
<br />
=== 2.18.0 (2017-12-21) ===<br />
* Database version updated to '''272'''<br />
* <font style="color:red">Bug fix</font>: Various bug fixes. See the [https://github.com/ElvishArtisan/rivendell/blob/stable/ChangeLog ChangeLog] for details<br />
* <font style="color:green">Functionality</font>: Group Cut Expiration Policy: Added the ability to set a default End Date/Time for new cuts on a per-group basis<br />
* <font style="color:green">Functionality</font>: Host Short Name: Added a ''Short Name'' parameter to Host profiles<br />
* <font style="color:green">Functionality</font>: Macro Carts: It is now possible to use filepath wildcards in macro carts<br />
* <font style="color:green">Functionality</font>: New Host Wildcards: Added two host wildcards: ''%r'' for ''Rivendell Host Name, and ''%R'' for ''Rivendell Short Name''<br />
* <font style="color:green">Functionality</font>: Provisioning Support: Added four new directives and to the ''[Provisioning]'' section of ''/etc/rd.conf''<br />
* <font style="color:green">Functionality</font>: MySQL Configuration: Added three parameters to the ''[mySQL]'' section of ''/etc/rd.conf''<br />
* <font style="color:green">Functionality</font>: Dropbox Enhancements: Added the ability to specify creation of default Segue Markers when processing files via dropbox<br />
* <font style="color:green">Functionality</font>: '''RDImport'''/DropBox Enhancements: Added the ability to specify start and end datetimes via metadata pattern<br />
* <font style="color:green">Functionality</font>: '''RDCatch''' Event Filtering: Added the ability to filter by event type in '''RDCatch'''<br />
* <font style="color:green">Functionality</font>: Log Searching: A search filter (similar to that employed for seaching for carts) has been added to the List Logs dialogs<br />
* <font style="color:green">Functionality</font>: Service Filtering in '''RDLogEdit''': Added the ability to limit the visible set of logs in RDLogEdit by user<br />
* <font style="color:green">Functionality</font>: Log Purge/Deletion Changes: Logs created manually (in rdlogedit(1) or rdairplay(1)) are now assigned a default purge/deletion date in accordance with the setting in RDAdmin->ManageServices<br />
* <font style="color:green">Functionality</font>: Log Importation Changes: Changed music and traffic importation so that parent link events are still visible in linked logs<br />
* <font style="color:green">Functionality</font>: Web API Changes: Added &lsquo;FILTER&rsquo; and &lsquo;RECENT&rsquo; call parameters to the &lsquo;ListLogs&rsquo; Web API call<br />
* <font style="color:orange">Documentation</font>: Documentation Overhaul: The Rivendell Operations and Administration Guide has been exapanded and incorporated as part of the base Rivendell source in ''docs/opsguide''. This guide is available as a separate CentOS package: ''rivendell-opsguide''<br />
* <font style="color:orange">Documentation</font>: Rivendell APIs: The various application programming interfaces (notably the web API) is now documented and is included with the standard distribution<br />
<br />
=== 2.17.0 (2017-10-11) ===<br />
* Database version updated to '''268'''<br />
* <font style="color:red">Bug fix</font>: Web API: Many fixes and enhancements to improve operation<br />
* <font style="color:red">Bug fix</font>: Many other bug fixes; see the [https://github.com/ElvishArtisan/rivendell/blob/stable/ChangeLog ChangeLog] for all the details (search for ''2.17.0'' and work your way backward through the list of changes)<br />
* <font style="color:green">Functionality</font>: Dropboxes: Added the ability to force imports to be imported as mono, also added the ability to reset individual dropboxes<br />
* <font style="color:green">Functionality</font>: New Switcher/GPIO Devices: Support has been added for the following Switcher/GPIO devices:<br />
:* Broadcast Tools Universal 4.1 MLR&gt;&gt;Web Switcher<br />
:* WheatNet LIO<br />
:* WheatNet SLIO<br />
* <font style="color:green">Functionality</font>: Macros: Added the &lsquo;Air Gate&rsquo; &#91;&lsquo;AG&rsquo;&#93; RML to permit conditional execution of RML on the basis of the status of the On-Air flag<br />
* <font style="color:green">Functionality</font>: <br />
* <font style="color:green">Functionality</font>: User Authentication: It is now possible to configure RDLogin to require entry of the user-name, rather than picking the name off of a list. See the &lsquo;Show User List in RDLogin&rsquo; checkbox in RDAdmin-&gt;SystemSettings<br />
* <font style="color:green">Functionality</font>: Log Rendering (EXPERIMENTAL): It is now possible to &lsquo;render&rsquo; a log as a single audio object (file or cart/cut) without the need to play it out while capturing the audio in realtime. Render support is available through the &lsquo;Render&rsquo; button in RDLogEdit and through the command-line rdrender(1) utility. See the rdrender(1) man page for details<br />
* <font style="color:green">Functionality</font>: Provisioning Support. Added a [Provisioning] section to rd.conf(5) with directives to facilitate the automatic provisioning of Rivendell instances. See the comments in the [Provisioning] section of the sample rd.conf(5) file<br />
* <font style="color:orange">Artwork</font>: New Icons: Implemented a new icon set, with individualized icons for each Rivendell module<br />
<br />
=== 2.16.0 (2017-06-02) ===<br />
* Database version updated to '''263'''<br />
* <font style="color:red">Bug fix</font>: Many bug fixes; see the [https://github.com/ElvishArtisan/rivendell/blob/stable/ChangeLog ChangeLog] for all the details (search for ''2.16.0'' and work your way backward through the list of changes)<br />
* <font style="color:green">Functionality</font>: Audio Store Hashing. Rivendell now automatically generates a SHA1 hash for each file in the audio store and records this value in the database, thus permitting automated recovery of audio in the event of loss or damage to the audio store's filesystem directory<br />
* <font style="color:green">Functionality</font>: Added switcher support for Kernel GPIO devices, such as the GPIO interface on the Raspberry Pi 2 and 3<br />
* <font style="color:green">Functionality</font>: Added switcher support for Modbus TCP devices<br />
* <font style="color:green">Functionality</font>: Added an rdconvert(1) utility<br />
* <font style="color:green">Functionality</font>: It is now possible to delegate authentication of Rivendell users by means of a PAM module, thus permitting &lsquo;''single sign-on''&rsquo; integration with systems such as ActiveDirectory and FreeIPA<br />
* <font style="color:green">Functionality</font>: Added various methods to the Rivendell Web API to permit integration with external audio and log editors<br />
<br />
=== 2.15.3 (2017-03-24) ===<br />
* Database version '''259''' <br />
* <font style="color:red">Bug fix</font>: Fixed bugs in MP3 file importation that caused files with variable bit rate (VBR) to be truncated during import.<br />
* <font style="color:red">Bug fix</font>: Fixed a bug that caused dynamically loaded codec libraries to fail to be detected if the corresponding library&rsquo;s so-called ''-devel'' package was not installed. <br />
* <font style="color:green">Functionality</font>: Added an ''RLM'' for generating [http://tagstation.com/ TagStation] RLM events for [http://nextradioapp.com/ NextRadio].<br />
* <font style="color:green">Functionality</font>: Added '''AddLog''', '''DeleteLog''' and '''SaveLog''' calls to the web API, along with general cleanup and correction of the overall Web API subsystem.<br />
<br />
=== 2.15.2 (2017-01-13) ===<br />
* Database version '''259'''<br />
* <font style="color:orange">Documentation</font>: Document the interfaces for '''inserting inline traffic breaks''' and for '''inserting voice track markers''' (also add an example in ''docs/examples/'')<br />
* <font style="color:red">Bug fix</font>: in ''rdadmin/createdb.cpp'' that caused obsolete fields in the 'SERVICES' table to be included when creating a new database.<br />
* <font style="color:red">Bug fix</font>: in ''lib/rdwavefile.cpp'' that caused RDXL chunks to be written with odd chunk lengths.<br />
* <font style="color:red">Bug fix</font>: in ''lib/rdsimpleplayer.cpp'' that caused RDAirPlay to freeze when attempting to audition an expired cart.<br />
* <font style="color:green">Functionality</font>: Added a '''LockRdairplayMemory=''' parameter to the [Hacks] section.<br />
* <font style="color:green">Functionality</font>: Modified the LiveWire Multicast GPIO driver to generate GPO events using the 'I' event type.<br />
<br />
=== 2.15.1 (2016-08-05) ===<br />
* Database version '''259'''<br />
* <font style="color:red">Bug fix</font>: fixed WAV file export code to enhance compatibility with third-party applications<br />
<br />
=== 2.15.0 (2016-07-29) ===<br />
* <font style="color:red">Bug fix</font>: complete support for the MySQL/MariaDB InnoDB database engine (for better transaction processing of database updates)<br />
* <font style="color:green">Functionality</font>: enhancements to ''rdexport'' that include full metadata in RDXML format<br />
* <font style="color:green">Functionality</font>: add CLI command ''rdclilogedit'' that enables editing of Rivendell Logs from the command line (without a GUI app)<br />
* <font style="color:green">Functionality</font>: Update the database to version 259.<br />
<br />
=== 2.14.1 (2016-06-11) ===<br />
* Database version '''258'''<br />
* <font style="color:red">Bug fix</font>: additional fixes for newer versions of MySQL (and MariaDB)<br />
<br />
=== 2.14.0 (2016-06-10) ===<br />
* Database version '''258'''<br />
* <font style="color:green">Functionality</font>: add the ability to capture real-time events in RDCatch recordings and replay the events in sync with the captured audio<br />
* <font style="color:green">Functionality</font>: add RML Macro ''Cut Event'' (''CE'') for placing real-time event markers into active RDCatch recordings<br />
* <font style="color:green">Functionality</font>: add support for specifying precise start time and length parameters for Traffic events that are embedded in Music events<br />
* <font style="color:red">Bug fix</font>: fixed a bug in RDAdmin that could cause creation of a new database to fail<br />
* <font style="color:red">Bug fix</font>: fix issues that prevent compilation under newer versions of the GNU C compiler suite<br />
* <font style="color:red">Bug fix</font>: various enhancements and fixes to the new(ish) ''rdexport'' utility<br />
* <font style="color:red">Bug fix</font>: initial support for newer versions of MySQL (and MariaDB)<br />
* <font style="color:red">Bug fix</font>: add code to allow embedded traffic breaks to be specified with start time and length in the music schedule.<br />
<br />
=== 2.13.0 (2016-05-10) ===<br />
* Database version '''255'''<br />
* <font style="color:green">Functionality</font>: add RLM plugin for the Paravel Systems ''WallTime'' clock<br />
* <font style="color:green">Functionality</font>: add new CLI command ''rdexport'' to export Carts with metadata<br />
* <font style="color:green">Functionality</font>: new report: ''Cut Log'' that includes the Description field for played events<br />
* <font style="color:red">Bug fix</font>: fixed a crash in RDLibrary when attempting to open multiple Carts<br />
* <font style="color:red">Bug fix</font>: fixed RDLogEdit to improve performance when saving and updating logs<br />
* <font style="color:red">Bug fix</font>: fixed a bug that caused marker data to be deleted when exporting a Cut<br />
<br />
=== 2.12.0 (2016-04-14) ===<br />
* Database version '''254'''<br />
* <font style="color:green">Functionality</font>: add support for sequential Cut play-out - you can now configure carts to play cuts in a fixed, sequential order rather than by weight value<br />
* <font style="color:green">Functionality</font>: add support for ''Broadcast Tools'' switchers<br />
* <font style="color:green">Functionality</font>: add RML macro '''Copy Cut''' (''CP'') to copy cuts between carts<br />
* <font style="color:green">Functionality</font>: add option to show only &ldquo;recent&rdquo; logs in RDLogEdit<br />
* <font style="color:green">Functionality</font>: add new web API methods related to Scheduler Codes<br />
* <font style="color:red">Bug fix</font>: fixed a bug that caused issues with Services containing the &ldquo;-&rdquo; (dash) character<br />
<br />
=== 2.11.0 (2015-09-18) ===<br />
* Database version '''252'''<br />
* <font style="color:green">Functionality</font>: add RDCatch upload/download protocols ''sftp'' and ''scp''<br />
* <font style="color:green">Functionality</font>: add support to import ''MP4/AAC'' files<br />
* <font style="color:green">Functionality</font>: add support for the ''Ross NK'' series video switcher<br />
* <font style="color:green">Functionality</font>: add support for ''PCM24'' in the core audio library code<br />
* <font style="color:red">Bug fix</font>: re-wrote the CD ripper code to make it faster and more reliable<br />
* <font style="color:red">Bug fix</font>: fixed several bugs related to audio data and buffering<br />
* <font style="color:red">Bug fix</font>: Normalized service clock data from the 'SERVICES' to the 'SVC_CLOCKS' table<br />
<br />
=== 2.10.3 (2015-02-24) ===<br />
* Database version '''242'''<br />
* <font style="color:green">Functionality</font>: add RLM (plugin) for Live365 streaming service (which is defunct as of Summer 2016)<br />
* <font style="color:green">Functionality</font>: add &ldquo;MrMaster&rdquo; and &ldquo;Spin Count&rdquo; reports<br />
* <font style="color:green">Functionality</font>: add support for audio switcher devices that use the &ldquo;Software Authority&rdquo; protocol<br />
* <font style="color:green">Functionality</font>: add ability to set segue markers in the CLI app ''rdmarkerset''<br />
* <font style="color:red">Bug fix</font>: fixed a bug that caused issues with Services containing a <Space> character in the service name<br />
<br />
=== 2.10.2 (2014-11-25) ===<br />
* Database version '''242'''<br />
* <font style="color:green">Functionality</font>: CLI ''rdimport'' enhancement: add two date-related options to the command<br />
* <font style="color:green">Functionality</font>: add column for ELR data in RDLogEdit<br />
* <font style="color:red">Bug fix</font>: fixed a bug in the Audio Science adapter for cards with only AES3 ports<br />
<br />
=== 2.10.1 (2014-11-04) ===<br />
* Database version '''242'''<br />
* <font style="color:green">Functionality</font>: add &ldquo;DSP utilization and profiling&rdquo; info for Audio Science adapters<br />
* <font style="color:green">Functionality</font>: add the column &ldquo;EXT DATA&rdquo; to the &ldquo;Edit Log&rdquo; screen in RDLogEdit<br />
* <font style="color:red">Bug fix</font>: fixed a memory fault (crash) in RDLogEdit when dropping a cart that was being used in a log</div>
DKlann
http://wiki.rivendellaudio.org/index.php?title=ChangeSummary&diff=722
ChangeSummary
2023-11-22T15:19:55Z
<p>DKlann: Add change descriptions for versions 3.6.8 and 4.1.2.</p>
<hr />
<div>__NOTOC__<br />
== Rivendell Change Summary ==<br />
<br />
This page contains version change descriptions in summary form for Rivendell versions released within at least the most recent five years (quite probably longer). Change descriptions are limited (mostly) to user-visible changes.<br />
<br />
This change summary tracks the two most recent stable versions. As of November, 2023 you can see summaries for versions [[#Version 4.X Changes|4.X]] and [[#Version 3.X Changes|3.X]].<br />
<br />
Please see the [https://raw.githubusercontent.com/ElvishArtisan/rivendell/master/ChangeLog ChangeLog] and [https://github.com/ElvishArtisan/rivendell/blob/master/NEWS NEWS] files in the [https://github.com/elvishartisan/rivendell source code] for a complete list of changes and bug fixes.<br />
<br />
See the [https://github.com/elvishartisan/rivendell/issues Issues] list for current reported bugs, issues and feature requests.<br />
<br />
== Version 4.X Changes ==<br />
<br />
=== 4.1.2 (2023-11-21) ===<br />
<br />
* Database verson '''371'''<br />
<br />
<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdvairplayd(8) that caused virtual logs to fail to process &lsquo;Load Log&lsquo; [&lsquo;LL&rsquo;], &lsquo;Set Duck Level&rsquo; [&lsquo;MD&rsquo;] and &lsquo;Stop&rsquo; [&lsquo;PS&rsquo;] RMLs with a &lsquo;mach&rsquo; parameter of &lsquo;0&rsquo;<br />
<br />
* <font style="color:red">Bug fix</font>: Fixed a regression in the &lsquo;RDHPIPlayStream&rsquo; that could cause audio play-out to be truncated; this code is used to play on Audio Science audio adapters<br />
* <font style="color:red">Bug fixes</font>: Fixed many bugs in &lsquo;RDSoundPanel&rsquo;. Many &ldquo;cosmetic&rdquo; changes including those affecting drag-and-drop operation, button rendering, colors, resizing, etc., as well as crash fixes<br />
* <font style="color:red">Bug fix</font>: Fixed a regression in caed(8) that caused multiple play-outs on a common port to interfere with each others mixer settings<br />
* <font style="color:red">Bug fix</font>: Fixed a bug that failed to remove records from the &lsquo;USER_SERVICE_PERMS&rsquo; database table<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdairplay(1) that caused a segfault when attempting to unload a log from the voice tracker while the tracker was active<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdairplay(1) that allowed access to the Voice Tracker even when the current user had the &lsquo;Voicetrack Logs&rsquo; privilege revoked<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdlogmanager(1) that caused scheduler codes containing space characters to fail to be processed correctly<br />
* <font style="color:red">Bug fix</font>: Fixed a long-standing (and annoying) bug in ripcd(8) that caused memory to be leaked when processing RMLs<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in caed(8) that could cause play-outs from different hosts to cross-talk into each other&rsquo;s outputs when using a shared caed(8) instance<br />
* <font style="color:green">Functionality</font>: Added a &lsquo;TestOutputStreams=&rsquo; directive to the &lsquo;[Caed]&rsquo; section of rd.conf(5); this is likely useful only for developers<br />
* <font style="color:green">Functionality</font>: Added a &lsquo;PadSegueOverlap=&rsquo; directive to rd.conf(5); this value is used in the playout engine to alter the start time of tracks when the transition type is set to '''SEGUE'''<br />
* <font style="color:green">Functionality</font>: Added a &lsquo;--dump-panel-updates&rsquo; switch to rdpanel(1)<br />
* <font style="color:green">Functionality</font>: Added a &lsquo;--dump-panel-updates&rsquo; switch to rdairplay(1)<br />
* <font style="color:green">Functionality</font>: Added a &lsquo;SoundPanel Buttons&rsquo; notification<br />
* <font style="color:green">Functionality</font>: Prepended the string &lsquo;[mixer]&rsquo; to all syslog entries generated as a result of enabling the &lsquo;EnableMixerLogging=&rsquo; directive in rd.conf(5)<br />
* <font style="color:green">Functionality</font>: Added checks to the &lsquo;Add Scheduler Code&rsquo; dialog in rdadmin(1) to enforce the use of only alphanumeric characters plus space<br />
<br />
* <font style="color:blue">Code (internal) change</font>: Refactored the &lsquo;RDSoundPanel&rsquo;, &lsquo;RDPanelButton&rsquo; and &lsquo;RDButtonPanel&rsquo; classes to avoid races when changing the current Rivendell user<br />
* <font style="color:blue">Code (internal) change</font>: Added code to the &lsquo;Unload Playback&rsquo; [&lsquo;UP&rsquo;] CAE command to mute all output port volume controls from the subject output stream<br />
* <font style="color:blue">Code (internal) change</font>: Added a feature to the &lsquo;Set Output Port&rsquo; [&lsquo;OP&rsquo;] CAE command where passing a &lsquo;-1&rsquo; for the &lsquo;port-num&rsquo; argument will cause all output stream volume controls for the specified stream to be muted<br />
* <font style="color:blue">Code (internal) change</font>: Added a &lsquo;RDJsonEscape(const QString &str)&rsquo; function in &lsquo;lib/rdweb.cpp&rsquo; and &lsquo;lib/rdweb.h&rsquo;<br />
* <font style="color:blue">Code (internal) change</font>: Refactored the &lsquo;RDCae&rsquo; class to use the native BSD sockets API instead of &lsquo;QTcpSocket&rsquo;<br />
* <font style="color:blue">Code (internal) change</font>: Added a &lsquo;gpio_fuzz_test&rsquo; test harness in &lsquo;tests/&rsquo;<br />
* <font style="color:blue">Code (internal) change</font>: Added a &lsquo;rml_torture_test&rsquo; test harness in &lsquo;tests/&rsquo;<br />
<br />
* <font style="color:orange">Documentation</font>: Added a rdpanel(1) man page<br />
* <font style="color:orange">Documentation</font>: Clarified the entries for the &lsquo;Pause Panel&rsquo; [&lsquo;PU&rsquo;] and &lsquo;Stop Panel&rsquo; [&lsquo;PT&rsquo;] RMLs in the Operations Guide<br />
* <font style="color:orange">Documentation</font>: Corrected typos in the Operations Guide for the &lsquo;Duck Panel Button&rsquo; [&lsquo;PD&rsquo;] and &lsquo;Set Duck Level&rsquo; [&lsquo;MD&rsquo;] RMLs that incorrectly specified &lsquo;dBFS&rsquo; as the unit for the &lsquo;level&rsquo; parameter<br />
* <font style="color:orange">Documentation</font>: Corrected an error in the invocation specification for the &lsquo;Insert Cart&rsquo; [&lsquo;PX&rsquo;] RML in the Operations Guide<br />
* <font style="color:orange">Documentation</font>: Added &lsquo;Realms&rsquo; to &lsquo;The Rivendell Object Paradigm&rsquo; section of the Operations Guide<br />
* <font style="color:orange">Documentation</font>: Added a note about RDS configuration settings to the exemplar file for the &lsquo;pypad_nautel.py&rsquo; plug-in<br />
<br />
<br />
=== 4.1.0 (2023-08-09) ===<br />
<br />
* Database verson '''371'''<br />
<br />
* <font style="color:red">Bug fix</font>: Fixed regressions that caused spontaneous resizing of the main window in rdairplay(1) when switching between Sound Panel and Voice Tracker views on the right-hand side<br />
* <font style="color:red">Bug fix</font>: Fixed a regression in rdlogmanager(1) that caused the pie chart to fail to be drawn correctly upon first displaying the &lsquo;Edit Clock&rsquo; dialog<br />
* <font style="color:red">Bug fix</font>: Fixed a fencepost bug in the &lsquo;Render Log&rsquo; dialog in rdlogedit(1) that caused rendered log to include the cart immediately after the end of the selected section when setting the &lsquo;Include&rsquo; dropdown to &lsquo;Only Selected Events&rsquo;<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdlibrary(1) that could cause the &lsquo;Add Cart&rsquo; dialog to display the incorrect type for the selected group<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdcastmanager(1) where changes to podcast metadata would fail to be reflected in the feed list<br />
* <font style="color:red">Bug fix</font>: Fixed a regression in rdlogmanager(1) that caused records to be omitted from reports using the &lsquo;CBSI DeltaFlex Traffic Reconciliation v2.01&rsquo; export filter<br />
* <font style="color:red">Bug fix</font>: Fixed a regression in rdlibrary(1) that caused cart deletion to fail with the message "Voicetrack Found"<br />
* <font style="color:green">Functionality</font>: Added an &lsquo;ID&rsquo; column to the &lsquo;Podcast Item List&rsquo; dialog in rdcastmanager(1)<br />
* <font style="color:green">Functionality</font>: Added three columns to the library list in rdlibrary(1): &lsquo;Plays&rsquo;, &lsquo;Last Played&rsquo;, and &lsquo;Ingested On&rsquo;<br />
* <font style="color:green">Functionality</font>: Added support for updating library metadata on subsequent dropbox imports<br />
* <font style="color:orange">Documentation</font>: Added a rivendell(7) manual page<br />
<br />
<br />
=== 4.0.2 (2023-06-23) ===<br />
<br />
* Database verson '''370'''<br />
<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in the voice tracker that caused the waveform displays to be greyed out out immediately after creating a new track marker<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdcatchd(8) that would cause a segfault after reception of a &lsquo;Start Record Deck&rsquo; [&lsquo;RS&rsquo;] RML<br />
* <font style="color:red">Bug fix</font>: Fixed a regression in rdcatch(1) that caused a phantom event entry to appear in the Event List while processing the &lsquo;Start Record Deck&rsquo; [&lsquo;RS&rsquo;] RML<br />
<br />
=== 4.0.1 (2023-06-16) ===<br />
<br />
* Database verson '''370'''<br />
<br />
Rivendell version 4, in development for more than two years, brings many &ldquo;under-the-hood&ldquo; as well as visible changes to the system. This list is incomplete, but attempts to highlight the most important changes. Please edit this page if you see something missing.<br />
<br />
* <font style="color:red">Bug fix</font>: Many bugs have been fixed; many more have likely been introduced<br />
* <font style="color:green">Functionality</font>: switch to graphical programming library [https://www.qt.io/ Qt] version [https://doc.qt.io/qt-5/ 5].<br />
* <font style="color:green">Functionality</font>: new layout of the RDAirPlay window: You may now resize the RDAirPlay window; note however that RDAirPlay has a '''minimum size''' of 1310x870 pixels. RDAirPlay also received a revamped level metering system; the side effect of this is that the meters are now oriented vertically instead of horizontally<br />
* <font style="color:green">Functionality</font>: the minimum supported display (monitor) size is 1680 x 1050 pixels; displays smaller than this may cause problems with some Rivendell applications<br />
* <font style="color:green">Functionality</font>: the &lsquo;Edit Markers&rsquo; window has changed significantly; see the current manual for instructions on setting, changing, and deleting markers from Cuts<br />
* <font style="color:green">Functionality</font>: Rivendell v4.x aims for full compatibility with MySQL 8.0 and earlier versions in their default installation configurations.<br />
* <font style="color:green">Functionality</font>: RDPanel, as well as several windows within RDAdmin now allow for dynamic window sizing<br />
* <font style="color:green">Functionality</font>: Date and time presentation formats can now be customized on the basis of site perferences.<br />
* <font style="color:green">Functionality</font>: It is now possible to disable grid processing on a service-by-service basis, thus permitting a complete schedule to be generated by an external music scheduler. See the &lsquo;Bypassing Grid Processing&rsquo; section in the &lsquo;Generating Logs and Reports with RDLogManager&rsquo; section of the Operation Guide for details.<br />
* <font style="color:orange">Documentation</font>: The documentation has been edited and brought up to date with respect to the current code and functionality of the system<br />
<br />
== Version 3.X Changes ==<br />
<br />
=== 3.6.8 (2023-11-21) ===<br />
<br />
* Database verson '''347'''<br />
<br />
* <font style="color:red">Bug fix</font>: Fixed a long-standing (and annoying) bug in ripcd(8) that caused memory to be leaked when processing RMLs<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in the PyPAD API that caused incorrect date/time resolutions when using the &lsquo;MMM&rsquo; wildcard<br />
* <font style="color:green">Functionality</font>: Changed the value of the &lsquo;Password=&rsquo; directive in the &lsquo;[mySQL]&rsquo; section of &lsquo;conf/rd.conf-sample&rsquo; to &lsquo;hackme&rsquo;<br />
* <font style="color:green">Functionality</font>: Added the API documentation to the &lsquo;rivendell-opsguide&rsquo; RPM package<br />
* <font style="color:green">Functionality</font>: Added API documentation and man pages to the &lsquo;rivendell-opsguide&rsquo; RPM package<br />
<br />
=== 3.6.7 (2023-01-27) ===<br />
<br />
* Database verson '''347'''<br />
<br />
* <font style="color:red">Bug fix</font>: Fixed broken waveform generation on ARM architectures<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdcatchd(8) that caused record events to be captured with the incorrect sampling rate<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in the podcasting subsystem that broke validation of the &lsquo;direct&rsquo; name space<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdlibrary(1) that caused the field names for the &lsquo;FILENAME&rsquo; and &lsquo;LENGTH&rsquo; fields in the &lsquo;Cart Data Dump (CSV)&rsquo; report to be corrupted<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdservice(8) that could cause dropboxes to be instantiated with invalid segue level values<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdlogmanager(1) that caused the slop factors for inline traffic events to fail to be applied when importing a traffic log<br />
* <font style="color:orange">Documentation</font>: Corrected errors in the WebAPI documentation regarding the argument type of the &lsquo;LINE&lt;n&gt;_TIME_TYPE&rsquo; field in the &lsquo;SaveLog&rsquo; call<br />
<br />
=== 3.6.6 (2022-10-02) ===<br />
<br />
* Database verson '''347'''<br />
<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdrssd(8) that caused a podcast episode to be deleted immediately after being made active if the &lsquo;Air Date/Time&rsquo; was set for the future and &lsquo;Item Expires&rsquo; was set to &lsquo;No&rsquo; in the &lsquo;Editing Item&rsquo; dialog<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdcastmanager(1) that caused incorrect ordering when sorting by the &lsquo;Start&rsquo; and &lsquo;Expiration&rsquo; columns in the &lsquo;Podcast Item List&rsquo; dialog<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in the CDDB parser that caused it to emit an error message when processing a 202 response<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in PyPAD where resolution of datetimes could be incorrect<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdservice(8) that could cause a segfault (crash) when started with a previous instance running<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdlogmanager(1) that could cause a segfault (crash) when merging a log<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdrssd(8) that caused incorrect error data to be logged<br />
* <font style="color:red">Bug fix</font>: Fixed a regression in the Disc Ripper in rdlibrary(1) that caused manual changes to track metadata to be incorrectly applied<br />
* <font style="color:green">Functionality</font>: Added &lsquo;--by-isci&rsquo; and &lsquo;--dump-isci-xref&rsquo; options to rdimport(1) and modified rdimport(1) to allow the &lsquo;--by-isci&rsquo; option to take a service name option<br />
* <font style="color:green">Functionality</font>: Added a &lsquo;StayOnTop=&rsquo; directive to the &lsquo;[SoftKeys]&rsquo; section of rd.conf(5)<br />
* <font style="color:green">Functionality</font>: Changed the default &lsquo;--process-interval=&rsquo; value from 60 seconds to 30 seconds in rdrssd(8)<br />
* <font style="color:green">Functionality</font>: Added &lsquo;RDListView::DateTimeSort&rsquo; to the &lsquo;RDListView::SortType enumeration<br />
* <font style="color:green">Functionality</font>: Added explicit processing for 201, 230, 401, 402, 403, 409, 431, 432, 433, 434, 501, 502, 503 and 530 returns in the CDDB parser<br />
* <font style="color:green">Functionality</font>: Added an Online Feed Report to rdcastmanager(1)<br />
* <font style="color:green">Functionality</font>: Modified the full disc ripper and the per-track ripper in rdlibrary(1) to use CD-Text<br />
* <font style="color:green">Functionality</font>: Renamed the &lsquo;CD Metadata Source&rsquo; control in rdlibrary(1) to use &lsquo;CDDB&rsquo; instead of &lsquo;FreeDB&rsquo; when configuring CDDB lookups<br />
* <font style="color:green">Functionality</font>: Added support for a &lsquo;SuppressLinkParameterInheritance=&rsquo; directive in the &lsquo;[Hacks]&rsquo; section of rd.conf(5)<br />
* <font style="color:blue">Code (internal) change</font>: Added code to the podcasting subsystem to log extended curl(1) information to syslog<br />
<br />
=== 3.6.5 (2022-03-18) ===<br />
<br />
* Database verson '''347'''<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdimport(1) that could create duplicate Scheduler Code entries when using the &lsquo;--to-cart&rsquo; and &lsquo;--add-scheduler-code&rsquo; switches simultaneously<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in the &lsquo;rdxport&rsquo; service that caused the &lsquo;ListLog&rsquo; WebAPI call to return null values in the &lsquo;description&rsquo;, &lsquo;isrc&rsquo;, &lsquo;isci&rsquo;, &lsquo;recordingMbId&rsquo; and &lsquo;releaseMbId&rsquo; fields<br />
* <font style="color:green">Functionality</font>: Added a &lsquo;direct&rsquo; namespace to the &lsquo;Apple iTunes&rsquo; and &lsquo;Apple iTunes + Superfeed&rsquo; RSS schemas<br />
<br />
<br />
=== 3.6.4 (2022-02-22) ===<br />
<br />
Note: version 3.6.3 was tagged, but not released.<br />
<br />
* Database verson '''347'''<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdlogmanager(1) that caused leading event attributes to fail to be preserved when suppressing Music of Traffic import markers<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in the rdxport &lsquo;Import&rsquo; service that could result in incorrect end marker placement when processing variable bit rate (VBR) MPEG files<br />
* <font style="color:red">Bug fix</font>: Fixed an arithmetic overflow bug in &lsquo;RDWaveFile&rsquo; that could cause the play length of MPEG-encoded to be incorrectly calculated<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdimport(1) that caused premature validation of metadata<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdxport(8) that caused the &lsquo;SaveLog&rsquo; WebAPI call to fail if the target log didn&rsquo;t exist<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rddbmgr(8) that could cause the 346=&gt;347 schema conversion to hang indefinitely with databases containing large cart libraries<br />
* <font style="color:green">Functionality</font>: Added a &lsquo;SuppressMusicImportLinks=&rsquo; directive to the [Hacks] section of rd.conf(5)<br />
* <font style="color:green">Functionality</font>: Added support for [NowGroups] and [NextGroups] sections in PyPAD script configurations<br />
* <font style="color:green">Functionality</font>: Deprecated use of the &lsquo;Transmit Now & Next data&rsquo; checkbox in the &lsquo;Group&rsquo; dialog in rdadmin(1)<br />
* <font style="color:green">Functionality</font>: Added a &lsquo;SaveWebgetFilesDirectory=&rsquo; directive to rd.conf(5)<br />
* <font style="color:green">Functionality</font>: Modified the mode of files generated by the rd-conf(5) &lsquo;SaveWebgetFilesDirectory=&rsquo; configuration directive from 0440 to 0664<br />
* <font style="color:green">Functionality</font>: Added a &lsquo;linkLength&rsquo; field and a &lsquo;graceTime&rsquo; field to the return XML for the &lsquo;ListLog&rsquo; WebAPI call<br />
* <font style="color:green">Functionality</font>: Added a &lsquo;Log Listing (CSV)&rsquo; report to rdlogedit(1)<br />
* <font style="color:green">Functionality</font>: Added a &lsquo;--print-progress&rsquo; switch to rddbmgr(8)<br />
* <font style="color:blue">Code (internal) change</font>: Overhauled the code for reading MPEG frame headers in &lsquo;RDWaveFile&rsquo;<br />
* <font style="color:blue">Code (internal) change</font>: Increased the import process timeout for the WebGet service to 1200 seconds<br />
<br />
<br />
=== 3.6.2 (2021-07-30) ===<br />
* Database verson '''347'''<br />
* <font style="color:green">Functionality</font>: Added support for system dark themes in RDAirplay<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdlogedit(1) that could cause a crash when attempting to play a non-audio event in the &lsquo;Voice Tracker&rsquo; dialog<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdimport(1) that caused the cart title uniqueness check to be applied to the incorrect string when the &lsquo;--set-string-title=&rsquo; switch was used<br />
<br />
<br />
=== 3.6.1 (2021-06-06) ===<br />
* Database verson '''347'''<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdimport(1) that could cause a crash when the &lsquo;--fix-broken-formats&rsquo; switch is used<br />
* <font style="color:green">Functionality</font>: Added syslog DEBUG messages around the start/stop of ephemeral processes in rdservice(8)<br />
* <font style="color:green">Functionality</font>: Added an &lsquo;--initial-maintenance&rsquo; switch to rdservice(8)<br />
* <font style="color:green">Functionality</font>: Added an &lsquo;--force-system-maintenance&rsquo; switch to rdservice(8)<br />
* <font style="color:green">Functionality</font>: Modified rdmaint(8) to enable it to operate even when the Rivendell services are not running<br />
<br />
=== 3.6.0 (2021-05-15) ===<br />
* Database verson '''347'''<br />
* <font style="color:red">Bug fix</font>: Fixed title separation in rdlogmanager(1) scheduler<br />
* <font style="color:red">Bug fix</font>: Fixed bug in library code ''lib/rdwavefile.cpp'' that copied CartChunk Cut ID past the end of the first "NULL" character<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdairplay(1) that caused the Talk Timer to fail to be populated when adding new carts to a log<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in the Cart Selector Dialog that made it impossible to enter an apostrophe character in the filter search line<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdimport(1) where the title of an existing cart would be overwritten with a default title even when no title was found in the file metadata<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in &lsquo;RDFlacDecode&rsquo; that caused conversion of files with names containing non-ASCII characters to fail<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdadmin(1) where clicking the &lsquo;OK&rsquo; button in the &lsquo;Edit Switcher&rsquo; dialog would cause an error dialog to appear with a &lsquo;primary serial device not active&rsquo; warning. The following devices are affected: &lsquo;Local GPIO&rsquo;, &lsquo;Local Audio Adapter&rsquo;, &lsquo;Logitek vGuest&rsquo;, &lsquo;Livewire LWRP Audio&rsquo;, and &lsquo;Kernel GPIO&rsquo;<br />
* <font style="color:green">Functionality</font>: Modified rdimport(1) and the Webget service so as to send e-mail reports to the address of the current Rivendell user in addition to the group&rsquo;s Notification E-Mail Address<br />
* <font style="color:green">Functionality</font>: Added a &lsquo;STACK_LINES.TITLE&rsquo; field to the database<br />
* <font style="color:green">Functionality</font>: Added the value of the detected CartChunk CutID to the error message generated when rejecting said CutID as invalid when using the &lsquo;--use-cartchunk-cutid&rsquo; switch in rdimport(1)<br />
* <font style="color:green">Functionality</font>: Added code to print the value of the detected CartChunk CutID when using both the &lsquo;--use-cartchunk-cutid&rsquo; and &lsquo;--verbose&rsquo; flags in rdimport(1)<br />
* <font style="color:green">Functionality</font>: Created pypad_ino713_tcp based upon pypad_ino713, converting from UDP to TCP. Added an adjustable delay to account for broadcast air delays<br />
* <font style="color:green">Functionality</font>: Created pypad_nautel based upon pypad_ino713_tcp, including RDS parameters from documentation. Includes delay as above<br />
* <font style="color:green">Functionality</font>: Added a new &lsquo;RadioTraffic.com Traffic Reconciliation&rsquo; report. Renamed the existing &lsquo;RadioTraffic.com Traffic Reconciliation&rsquo; to &lsquo;Original RadioTraffic.com Traffic Reconciliation (DEPRECATED)&rsquo;<br />
* <font style="color:green">Functionality</font>: Changed the way in which the VU Meter UDP port is chosen. One can now specify the base port number and the maximum number of UDP ports to consider when caed(8) sets up the VU meter port<br />
* <font style="color:orange">Documentation</font>: Documented the &lsquo;MeterPortBaseNumber=&rsquo; and &lsquo;MeterPointRange=&rsquo; directives in the rd.conf(5) man page<br />
<br />
=== 3.5.0 (2020-12-12) ===<br />
* Database verson '''346'''<br />
* <font style="color:red">Bug fix</font>: Corrected the column settings in RDAdmin > Manage Hosts > [host] > Dropboxes<br />
* <font style="color:red">Bug fix</font>: Fixed regression with "Scheduler Code:" label overlapping "Group" combobox in rdlibrary(1)<br />
* <font style="color:red">Bug fix</font>: Fixed several bugs in rdadmin(1) that messed with passwords, user settings, and other important settings<br />
* <font style="color:red">Bug fix</font>: Fixed several bugs in rdlogmanager(1) that caused all kinds of mischief<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdairplay(1) where copying a log event using the &lsquo;Copy&rsquo; button would result in the new event always getting a &lsquo;PLAY&rsquo; transition<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rddbmgr(8) that could cause database corruption problems<br />
* <font style="color:red">Bug fix</font>: Fixed bugs in rdimport(1) that caused incorrect exit codes to be emitted when a non-existent group was specified, and that caused generation of double error messages when processing invalid audio files<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdmonitor(1) that caused false indications of a failed audio store when used with autofs(8)<br />
* <font style="color:green">Functionality</font>: Major overhaul of Rivendell&rsquo;s podcast handling features; see the ChangeLog for all the details<br />
* <font style="color:green">Functionality</font>: Modified the GVC7000 switcher driver to insert 50 mS pauses between protocol commands<br />
* <font style="color:green">Functionality</font>: Allow RN Macro to run when Rivendell daemons running as non-root<br />
* <font style="color:green">Functionality</font>: Many changes to rdadmin(1), including:<br />
:* Added whitespace to the set of banned characters for service names<br />
:* Added a &lsquo;SSH Ident. File&rsquo; control to the &lsquo;Host&rsquo; dialog<br />
:* Added an &lsquo;Inline Traffic Inheritance&rsquo; control to the &lsquo;Edit Service&rsquo; dialog<br />
:* Added type icons to the &lsquo;Imported Events&rsquo; list in the &lsquo;Test Import&rsquo; dialog<br />
:* Renamed the &lsquo;Inline Traffic Inheritance&rsquo; control to &lsquo;Inline Traffic Start/Length&rsquo; and moved it to the &lsquo;Music Data Import&rsquo; section of the &lsquo;Edit Service&rsquo; dialog<br />
:* Added an &lsquo;Encoder Profiles&rsquo; dialog<br />
:* Renamed the &lsquo;Note Cart String&rsquo; controls to &lsquo;Insert Marker String&rsquo; in the &lsquo;Edit Service dialog<br />
:* Added an &lsquo;Origin E-Mail Address&rsquo; control to the &lsquo;System-Wide Settings&rsquo; dialog<br />
:* Added a &lsquo;Notification E-Mail Addresses&rsquo; control to the &lsquo;Group&rsquo; dialog<br />
:* Added a &lsquo;Send e-mail reports&rsquo; checkbox to the &lsquo;Dropbox Configuration&rsquo; dialog<br />
:* Added &lsquo;E-Mail Address&rsquo;, &lsquo;Phone Number&rsquo; and &lsquo;Local Auth&rsquo; columns to the &lsquo;Users&rsquo; list in the &lsquo;Rivendell User List&rsquo; dialog<br />
:* Added an &lsquo;Administer RSS Feeds&rsquo; checkbox to the &lsquo;Administrative Rights&rsquo; section of the &lsquo;User&rsquo; dialog<br />
:* Added a deprecation warning for the &lsquo;Allow Duplicate Cart Titles&rsquo; and &lsquo;Auto-Correct Duplicate Cart Titles&rsquo; checkboxes on the &lsquo;System-Wide Settings&rsquo; dialog<br />
* <font style="color:green">Functionality</font>: Added support for FTPS protocol for uploading, downloading, and Feed management<br />
* <font style="color:green">Functionality</font>: Significant update to the Rivendell Web interfaces (Web API, WebGet service, rivwebcapi API, etc.)<br />
* <font style="color:green">Functionality</font>: Added &lsquo;--scheduler-code=&rsquo; switch to rdexport(1)<br />
* <font style="color:green">Functionality</font>: Added generation of an &lsquo;RDLogManager Error Report&rsquo; when errors are detected when importing an external scheduler file in rdlogmanager(1)<br />
* <font style="color:green">Functionality</font>: Restored operation of Label/Note carts in rdlogmanager(1)<br />
* <font style="color:green">Functionality</font>: Updated rdservice(8) to use standard exit code defines<br />
* <font style="color:green">Functionality</font>: Implemented the &lsquo;--verbose&rsquo; switch for rdmaint(8)<br />
* <font style="color:green">Functionality</font>: Added a sample Fail2Ban jail filter for the WebAPI in &lsquo;conf/rivendell-webapi.conf&rsquo;<br />
* <font style="color:green">Functionality</font>: Added command line options &lsquo;--output-pattern&rsquo;, &lsquo;--ticket=&rsquo;, &lsquo;--send-mail&rsquo; and &lsquo;--mail-per-file&rsquo; to rdimport(1)<br />
* <font style="color:green">Functionality</font>: Added the name of the import file to schedule import failure reports<br />
* <font style="color:orange">Documentation</font>: Documented the &lsquo;%%&rsquo; filepath wildcard in the Operations Guide<br />
* <font style="color:orange">Documentation</font>: Added an &lsquo;RDCastManager&rsquo; chapter to the Operations Guide<br />
* <font style="color:orange">Documentation</font>: Revised the &lsquo;Managing Services&rsquo; section of the Operations Guide<br />
* <font style="color:orange">Documentation</font>: Rewrote the &lsquo;Webget&rsquo; chapter of the Operations Guide to conform to changes in Webget<br />
* <font style="color:orange">Documentation</font>: Added a &lsquo;Configuring Webget&rsquo; section to the Operations Guide<br />
* <font style="color:orange">Documentation</font>: Removed the &lsquo;Cart Data Dump (fixed width)&rsquo; from the Operations Guide<br />
* <font style="color:orange">Documentation</font>: Documented user-facing changes to the &lsquo;System-Wide Settings&rsquo; dialog, the &lsquo;Rivendell Group List&rsquo; and the &lsquo;Group&rsquo; dialogs in rdadmin(1) in the Operations Guide<br />
* <font style="color:orange">Documentation</font>: Documented the &lsquo;Send e-mail reports&rsquo; checkbox in the &lsquo;Dropbox Configuration&rsquo; dialog in rdadmin(1) in the Operations Guide<br />
* <font style="color:blue">Code (internal) change</font>: Prepended &lsquo;RD_&rsquo; to the names of all common Javascript functions in &lsquo;web/common/utils.js&rsquo;<br />
* <font style="color:blue">Code (internal) change</font>: Added a &lsquo;webget&rsquo; subpackage to the &lsquo;make rpm&rsquo; target<br />
* <font style="color:blue">Code (internal) change</font>: Refactored the &lsquo;Run Script&rsquo; [&rsquo;RN&rsquo;] RML to invoke scripts via the system shell, this change also removed the dependency on runuser(1)<br />
<br />
=== 3.4.1 (2020-07-21) ===<br />
* Database verson '''317'''<br />
<br />
* <font style="color:green">Functionality</font>: Added a &lsquo;Results Report&rsquo; report in rdadmin(1)<br />
* <font style="color:green">Functionality</font>: Removed the checkbox from the &lsquo;Delete&rsquo; right-click menu item in the &lsquo;Edit Event&rsquo; dialog in rdlogmanager(1)<br />
* <font style="color:green">Functionality</font>: Modified &lsquo;RDWaveFile&rsquo; to work around known fencepost errors in WAV files generated by "Sonic Studio soundBlade" by "PME Mastering, Inc."<br />
* <font style="color:green">Functionality</font>: Modified the &lsquo;Edit Event&rsquo; dialog in rdlogmanager(1) to show &lsquo;[auto]&rsquo; as the transition type for the leading event in Pre-/Post-Import lists<br />
<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdlibrary(1) that caused cuts to be incorrectly sorted when scheduled &lsquo;By Specified Order&rsquo;<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in the Rivendell command line apps that caused value-only arguments containing &lsquo;=&rsquo; characters to be incorrectly parsed<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in the Podcast Manager, Library Exporter and Web API that caused an error when processing multipart-mime submissions containing &lsquo;=&rsquo; characters<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdairplay(1) where attempting to audition an audio cart with a disabled cue output would crash the application<br />
* <font style="color:red">Bug fix</font>: Fixed a regression in rdairplay(1) that caused the &lsquo;Forced Segue&rsquo; setting in rdadmin(1) to be ignored when executing an event with a hard start attribute<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdairplay(1) where a paused event could not be removed by dropping the empty cart on it<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdairplay(1) that cause incorrect pie timer indications after adding or deleting events to a running log<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdlibrary(1) that would cause a crash when attempting to delete a range of cuts, one of which was in the clipboard<br />
* <font style="color:red">Bug fix</font>: Fixed a math bug in rdairplay(1) that caused the estimated stop-down times in the post point widget to be incorrect after adding or removing events from a running log<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdadmin(1) that made it impossible to enter useful strings in the &lsquo;WaveForm Caption&rsquo; control on the &lsquo;Edit RDLogEdit&rsquo; dialog<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in RDRenderer that caused segue transitions to be rendered without regard to the &lsquo;No Fade on Segue Out&rsquo; checkbox in the &lsquo;Edit Audio&rsquo; dialog<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in ripcd(8) that caused connections to ModbusTCP devices to fail to be properly restored by the connection watchdog<br />
* <font style="color:red">Bug fix</font>: Fixed a regression in the &lsquo;Edit Event&rsquo; dialog in rdlogmanager(1) that caused the first cart transition type to be incorrect when the &lsquo;Pre-Import Carts&rsquo; list was populated<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in the &lsquo;Add Next&rsquo; [&rsquo;PX&rsquo;] RML that failed to return an error when an invalid offset value was supplied<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in the &lsquo;Add Next&rsquo; [&rsquo;PX&rsquo;] RML that failed to honor the &lsquo;Default Trans. Type&rsquo; setting in the &lsquo;Configure RDAirPlay&rsquo; dialog in rdadmin(1)<br />
<br />
=== 3.4.0 (2020-05-19) ===<br />
* Database verson '''317'''<br />
* <font style="color:red">Bug fix</font>: Fixed a regression in rdairplay(1) that caused two events to be started by a single spacebar tap if a SoundPanel event had been played previously<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdlogmanager(1) that caused the initial event in an imported set to fail receive the proper time and transition type if the &lsquo;Include Import Markers in Finished Logs&rsquo; checkbox in rdadmin(1) had not been ticked<br />
* <font style="color:red">Bug fix</font>: Fixed a regression in rdexport(1) that caused exported file names to be constructed improperly<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdlogmanager(1) that caused &lsquo;Make Post Point&rsquo; label to be displayed without last &lsquo;t&rsquo;<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdairplay(1) where timer was not set properly when crossing midnight<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in the &lsquo;List GPIs&rsquo; dialog in rdadmin(1) that prevented changes in GPI assignments from being propagated to the underlying device<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in the &lsquo;Software Authority&rsquo; driver that caused autodetection of the number of GPIOs in a router to be unreliable<br />
* <font style="color:red">Bug fix</font>: Fixed a regression in &lsquo;RDEventLine&rsquo; that caused the &lsquo;Append Log&rsquo; [&rsquo;AL&rsquo;] RML to append a copy of the currently loaded log instead of the one specified in the RML command<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdlogedit(1) that caused garbled text to appear when &lsquo;Start Immediately&rsquo; was selected in the &lsquo;Edit Log Entry&rsquo; dialog box<br />
* <font style="color:red">Bug fix</font>: Fixed a regression that broke the ability to scroll through Sound Panel panels by means of the mouse wheel<br />
<br />
* <font style="color:green">Functionality</font>: Modified rdairplay(1) to always scroll log to the top when using the hour selector<br />
* <font style="color:green">Functionality</font>: Modified rdlogmanager(1) to disable merge buttons if the selected log does not contain any import links<br />
* <font style="color:green">Functionality</font>: Modified rdadmin(1) Edit Service dialog to display built-in traffic and music import template values<br />
* <font style="color:green">Functionality</font>: Added "Copy To Custom" buttons to rdadmin(1) Edit Service dialog<br />
* <font style="color:green">Functionality</font>: Changed the layout of the &lsquo;Editing Event&rsquo; dialog in rdlogmanager<br />
<br />
* <font style="color:green">Functionality</font>: Removed the &lsquo;Post Point&rsquo; checkbox from the &lsquo;Editing Event&rsquo; dialog in rdlogmanager(1)<br />
* <font style="color:green">Functionality</font>: Renamed the &lsquo;REMARKS&rsquo; field to &lsquo;USER NOTES&rsquo; in the &lsquo;Editing Event&rsquo; and the &lsquo;Edit Clock&rsquo; dialogs in rdlogmanager(1)<br />
* <font style="color:green">Functionality</font>: Added a &lsquo;Trans&rsquo; column to the event list in the &lsquo;Edit Clock&rsquo; and the &lsquo;List Events&rsquo; dialogs in rdlogmanager(1)<br />
<br />
=== 3.3.0 (2020-03-16) ===<br />
* Database verson '''314'''<br />
* <font style="color:red">Bug fix</font>: Fixed regressions in the following switcher drivers that could cause deadlocks and intermittent operation<br />
:* BroadcastTools SS16.4<br />
:* BroadcastTools SS 4.2<br />
:* BroadcastTools SS4.4<br />
:* BroadcastTools SS 8.2<br />
:* BroadcastTools ACS8.2<br />
:* BroadcastTools ADMS 44.22<br />
:* BroadcastTools GPI-16<br />
:* BroadcastTools SRC-16<br />
:* BroadcastTools SRC-8 III<br />
:* BroadcastTools SS 4.1 MLR<br />
* <font style="color:red">Bug fix</font>: Fixed a regression in the implementation of the &lsquo;Set Serial Trap&rsquo; [&lsquo;SI&rsquo;] RML that could cause deadlocks and intermittent operation<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdairplay(1) that could cause random segfaults when updating the Label Widget<br />
* <font style="color:red">Bug fix</font>: Fixed a bug with the &lsquo;%y&rsquo; metadata wildcard where garbage would be returned if a valid year had not been set<br />
* <font style="color:red">Bug fix</font>: Fixed a regression in rdlogmanager(1) that caused trailer whitespace to be generated in the &lsquo;EXT_DATA&rsquo;, &lsquo;EXT_EVENT&rsquo;, &lsquo;EXT_ANNC_TYPE&rsquo; and &lsquo;EXT_CART_NAME&rsquo; log fields when importing from a CounterPoint format log<br />
* <font style="color:red">Bug fix</font>: Fixed the layout of the &lsquo;Matching Carts&rsquo; field in rdlibrary(1)&rsquo;s main window when Realtime Filtering is disabled<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdairplay(1) that would cause a hard-timed log event with a &lsquo;wait&rsquo; parameter set to attempt to play the event twice<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rddbmgr(8) that threw a SQL error when attempting to modify a DB containing tables set to use character set UTF-8 to schema 297<br />
* <font style="color:red">Bug fix</font>: Fixed a race in ripcd(8) that caused arguments to the &lsquo;Run Shell Command&rsquo; [&lsquo;RN&rsquo;] macro to be corrupted<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in the &lsquo;Edit Event&rsquo; dialog in rdlogmanager(1) that caused the Transition Type dropdown to be greyed-out when the &lsquo;IMPORT&rsquo; controls were set to use the built-in music scheduler<br />
* <font style="color:green">Functionality</font>: Added a &lsquo;delta-seconds&rsquo; modifier to Filepath Wildcards to enable positive and negative time offsets<br />
* <font style="color:green">Functionality</font>: Removed support for CD-TEXT from the CD rippers<br />
* <font style="color:green">Functionality</font>: Added support for &lsquo;MusicBrainz&rsquo; CD metadata lookup<br />
* <font style="color:green">Functionality</font>: Added a &lsquo;Web Browser&rsquo; control to the &lsquo;Edit Host&rsquo; dialog in rdadmin(1)<br />
* <font style="color:green">Functionality</font>: Added support for displaying cover art in the MusicBrainz release chooser<br />
* <font style="color:green">Functionality</font>: Added &lsquo;%wm&rsquo; [&lsquo;MusicBrainz Recording ID&rsquo;] and &lsquo;%wr&rsquo; [&lsquo;MusicBrainz Release ID&rsquo;] metadata wildcards<br />
* <font style="color:green">Functionality</font>: Implemented the &lsquo;%wm&rsquo; [&lsquo;MusicBrainz Recording ID&rsquo;] and &lsquo;%wr&rsquo; [&lsquo;MusicBrainz Release ID&rsquo;] metadata wildcards for PyPAD<br />
* <font style="color:green">Functionality</font>: Added support for the &lsquo;%wi&rsquo;, &lsquo;%wm&rsquo; and &lsquo;%wr&rsquo; wildcards to the &lsquo;--metadata-pattern=&rsquo; switch in rdimport(1)<br />
* <font style="color:green">Functionality</font>: Added &lsquo;--set-string-isrc&rsquo;, &lsquo;--set-string-recording-mbid&rsquo; and &lsquo;--set-string-release-mbid&rsquo; switches to rdimport(1)<br />
* <font style="color:green">Functionality</font>: Added support for the &lsquo;%wi&rsquo;, &lsquo;%wm&rsquo; and &lsquo;%wr&rsquo; wildcards to the &lsquo;--metadata-pattern=&rsquo; switch in rdexport(1)<br />
* <font style="color:green">Functionality</font>: Added a &lsquo;%wc&rsquo; [&lsquo;Industry Standard Commercial Identification (ISCI) Code&rsquo;] metadata wildcard<br />
* <font style="color:green">Functionality</font>: Implemented the &lsquo;%wc&rsquo; metadata wildcard for PyPAD<br />
* <font style="color:green">Functionality</font>: Added support for the &lsquo;%wc&rsquo; wildcards to the &lsquo;--metadata-pattern=&rsquo; switch in rdimport(1)<br />
* <font style="color:green">Functionality</font>: Added &lsquo;--set-string-isci&rsquo; switch to rdimport(1)<br />
* <font style="color:green">Functionality</font>: Added support for the &lsquo;%wc&rsquo; wildcard to the &lsquo;--metadata-pattern=&rsquo; switch in rdexport(1)<br />
* <font style="color:green">Functionality</font>: Removed the &lsquo;RDLabel&rsquo; widget<br />
* <font style="color:green">Functionality</font>: Added a &lsquo;Disconnect All Jack Ports&rsquo; [&lsquo;JZ&rsquo;] RML<br />
* <font style="color:green">Functionality</font>: Added a &lsquo;CounterPoint Traffic Reconciliation v2&rsquo; report<br />
<br />
=== 3.2.1 (2020-01-24) ===<br />
* Database verson '''311'''<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdcatch(1) that threw a SQL error when clicking 'OK' on the &lsquo;Edit Cart Event&rsquo; dialog<br />
* <font style="color:red">Bug fix</font>: Fixed a regression in rdimport(1) that caused null characters to be written to cart metadata fields when importing files containing an &lsquo;AIR1&rsquo; RIFF chunk<br />
* <font style="color:red">Bug fix</font>: Fixed a regression in rdcatch(1) that caused the &lsquo;Source&rsquo; dropdown in the &lsquo;Edit Recording&rsquo; dialog to fail to be populated properly<br />
* <font style="color:red">Bug fix</font>: Fixed a regression in the cart selector dialog that caused default focus to be lost on the &lsquo;Filter&rsquo; control after second and subsequent invocations<br />
* <font style="color:red">Bug fix</font>: Fixed a regression in rdcatchd(8) that broke audio metering<br />
* <font style="color:red">Bug fix</font>: Fixed a regression in rdcatchd(8) that could cause download events to hang in an active state<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdcatch(1) that caused DOW flags to fail to be updated correctly on the event list after making a change<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdcatchd(8) that failed to send a MODIFY notification at the end of a Record or Download event<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdconvert that caused a segfault at startup<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdexport(1) that caused output filenames containing multi-byte UTF-8 characters to be corrupt<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdgpimon(1) that caused GPIO cart displays to fail to accurately reflect current state<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdgpimon(1) that caused incorrect state indications to be displayed after switching to a different page<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdimport(1) that caused non-Latin1 characters to be corrupted when using standard input<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdimport(1) that caused UTF-8 multibyte characters in filenames to be corrupted<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdlogmanager(1) that caused spurious log events to be inserted when generating a log<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in ripcd(8) that caused input and output counts to be calculated incorrectly for Software Authority protocol devices containing holes in the input and/or output lists<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in the &lsquo;pypad-shoutcast1.py&rsquo; script that threw an exception when processing PAD containing multi-type UTF-8 characters<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in the &lsquo;pypad_xds.py&rsquo; PyPAD script that could cause it to emit duplicate CIC updates<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in the &lsquo;rivwebcapi&rsquo; validate_tm() function that caused dates containing &lsquo;29 February&rsquo; to always fail regardless of leap-year validity<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in the rdxport service that could cause MODIFY notifications to fail to be sent by the &lsquo;SaveLog&rsquo; WebAPI call<br />
* <font style="color:red">Bug fix</font>: Fixed a regression in rdadmin(1) that caused controls to be hidden in the &lsquo;Edit Report&rsquo; dialog<br />
* <font style="color:red">Bug fix</font>: Fixed a regression in rdlogmanager(1) that caused incorrect logged start times to be generated for imported events<br />
* <font style="color:red">Bug fix</font>: Fixed a regression in the rdxport service that caused the ListCuts WebAPI call to return corrupt data<br />
* <font style="color:red">Bug fix</font>: Fixed a regression in the Web API that caused the and/or corrupt in served XML documents<br />
* <font style="color:green">Functionality</font>: Implemented support for non-realtime library filtering in the &lsquo;Editing Event&rsquo; dialog in rdlogmanager(1)<br />
* <font style="color:green">Functionality</font>: Added a &lsquo;Show Start Time As&rsquo; control to the &lsquo;Edit Log&rsquo; dialog in rdlogedit(1)<br />
* <font style="color:green">Functionality</font>: Made the rdlogedit(1) main window and &lsquo;Edit Log&rsquo; dialog window sizes persistent<br />
* <font style="color:green">Functionality</font>: Added a work-around in the &lsquo;PyPAD.Receiver().__openDb()&rsquo; method to work with versions of MySQLdb that do not support the &lsquo;password=&rsquo; parameter in &lsquo;MySQLdb.connect()&rsquo;<br />
* <font style="color:green">Functionality</font>: Added &lsquo;Repetitions=&rsquo; and &lsquo;RepetitionDelay=&rsquo; directive to the configuration of the &lsquo;pypad_xds.py&rsquo; PyPAD script<br />
* <font style="color:green">Functionality</font>: Added &lsquo;Username=&rsquo; and &lsquo;Password=&rsquo; directives to the &lsquo;pypad_httpget.py&rsquo; script for use for HTTP Basic Authentication<br />
* <font style="color:green">Functionality</font>: Added the ability to view a report at time of generation in rdlogmanager(1)<br />
* <font style="color:green">Functionality</font>: Adjusted the position of the &lsquo;Matching Carts&rsquo; readout on the main window of rdlibrary(1)<br />
* <font style="color:green">Functionality</font>: Changed the &lsquo;Time&rsquo; column in the &lsquo;Full Log Widget&rsquo; in rdairplay(1) to &lsquo;Sch. Time&rsquo;<br />
* <font style="color:green">Functionality</font>: Implemented a work-around for importing CartChunk data containing a buggy ENCO implemention of the &lsquo;AUD&rsquo; CartChunk timer<br />
* <font style="color:green">Functionality</font>: Modified the Full Log widget in rdairplay(1) to display logged start times even when the referenced cart does not exist<br />
* <font style="color:green">Functionality</font>: Tweaked the &lsquo;LogLineBox::mouseMoveEvent()&rsquo; method in rdairplay(1) to require a cursor movement of at least 20 pixels before generating a cart drag<br />
<br />
=== 3.2.0 (2019-10-31) ===<br />
* Database verson '''311'''<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rddbmgr(8) that caused a segfault when processing a SQL error<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdimport(1) that caused it to throw an exception when given a &lsquo;--metadata-pattern&rsquo; of less than three characters<br />
* <font style="color:red">Bug fix</font>: Fixed a regression in rdimport(1) that caused a segfault when invoked with the &lsquo;--metadata-pattern&rsquo; and &lsquo;--log-syslog&rsquo; switches<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdairplay(1) that caused space bar presses to start the next event in the Main Log even when &lsquo;Space Bar Action&rsquo; was set to &lsquo;None&rsquo;<br />
* <font style="color:red">Bug fix</font>: Fixed bugs in 'RDWaveFile' that caused strings of null characters to be written into unfilled CartChunk string fields<br />
* <font style="color:red">Bug fix</font>: Fixed a regression in 'rdxport.cgi' that caused a check of the Rivendell services to be triggered each time a WebAPI function was invoked<br />
* <font style="color:red">Bug fix</font>: Fixed a regression in rdsoftkeys(1) that threw a segfault at startup<br />
* <font style="color:green">Functionality</font>: Added the ability to configure the caption displayed for the first and third voicetrack waveforms in the Voicetracker dialog in rdlogedit(1)<br />
* <font style="color:green">Functionality</font>: Reworked the font management system to permit the fonts used in the UI to be specified in rd.conf(5).<br />
* <font style="color:green">Functionality</font>: Added support for posting podcast content via SFTP<br />
* <font style="color:orange">Documentation</font>: Added manual pages for rd.conf(5) and rdsoftkeys(1)<br />
<br />
=== 3.1.0 (2019-09-19) ===<br />
* Database verson '''310'''<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdairplay(1) and rdvairplayd(8) where only the first log machine set to &lsquo;load specified log&rsquo; would do so<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdlogedit(1) that caused hard start log items to have the Hour field doubled<br />
* <font style="color:red">Bug fix</font>: Refactored the Python &lsquo;pypad.Update.shouldBeProcessed()&rsquo; method to work correctly when using <tt>try:</tt> blocks in a PyPAD script<br />
* <font style="color:red">Bug fix</font>: Refactored the PyPAD scripts to route updates properly in accordance with log directives in their configuration file<br />
* <font style="color:red">Bug fix</font>: Fixed a bug that broke dropbox logging to individual files<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in caed(8) that broke timescaling support<br />
* <font style="color:red">Bug fix</font>: Fixed bugs in rdlibrary(1) that broke CD ripping<br />
* <font style="color:green">Functionality</font>: Refactored rdalsaconfig(1) to be more robust and intuitive<br />
* <font style="color:green">Functionality</font>: Added a &lsquo;pypad_httpget.py&rsquo; PyPAD script<br />
* <font style="color:green">Functionality</font>: Updated CDDB code to use protocol level 6 (UTF-8 enabled)<br />
* <font style="color:green">Functionality</font>: Added an &lsquo;%l&rsquo; wildcard to Filepath Wildcards for &lsquo;unpadded month&rsquo;<br />
=== 3.0.3 (2019-08-05) ===<br />
* Database verson '''308'''<br />
* <font style="color:red">Bug fix</font>: Fixed a regression in ripcd(8) that broke the 'Connect Jack Ports' ['JC'] and 'Disconnect Jack Ports' ['JD'] RMLs<br />
=== 3.0.2 (2019-07-31) ===<br />
* Database verson '''308'''<br />
* <font style="color:red">Bug fix</font>: Fixed a problem with the Local Audio Adapter switcher driver that caused incorrect operation with the 'Switch Add' ['SA'], 'Switch Remove' ['SR'] and 'Switch Take' ['ST'] RMLs<br />
* <font style="color:red">Bug fix</font>: Fixed a regression in rdlibrary(1) that caused macro carts entries to turn red after being viewed<br />
* <font style="color:red">Bug fix</font>: Fixed regressions that made operations with serial devices unreliable<br />
* <font style="color:green">Functionality</font>: Added support for switchers using the Grass Valley 7000 series protocol<br />
=== 3.0.1 (2019-07-16) ===<br />
* Database verson '''308'''<br />
* <font style="color:red">Bug fix</font>: Rivendell is now Unicode UTF-8 clean<br />
* <font style="color:red">Bug fix</font>: Qt4 is now used throughout Rivendell instead of Qt3<br />
* <font style="color:green">Functionality</font>: The Rivendell Loadable Modules system for processing PAD data has been completely replaced by PyPAD, allowing PAD processing plug-ins to be written in the popular Python scripting langauge. Backward compatible replacement scripts for many of the RLM plug-ins supplied in Rivendell v2.x are included<br />
* <font style="color:green">Functionality</font>: Added a compatibility library to facilitate the use of the Rivendell Web API in external applications<br />
* <font style="color:green">Functionality</font>: A system of virtual log machines has been added, allowing play-out of up to 23 logs simultaneously<br />
* <font style="color:green">Functionality</font>: Rivendell is now fully systemd compatibile<br />
* <font style="color:green">Functionality</font>: The Windows ports of rdlogedit(1) and rdlogmanager(1) have been removed<br />
* <font style="color:orange">Documentation</font>: The Rivendell Operations and Administration Guide has been updated and enhanced with more details about running a Rivendell system<br />
* <font style="color:orange">Documentation</font>: New manual pages have been added for Rivendell command that previously did not have them<br />
See [http://caspian.paravelsystems.com/pipermail/rivendell-dev/2019-July/027867.html this message] on the Rivendell Dev mailing list for more details about installing and upgrading Rivendell.<br />
=== 2.19.3 (2018-10-31) ===<br />
* Database verson '''275'''<br />
* <font style="color:red">Bug fix</font>: Fixed a bug that caused the &lsquo;Switcher Matrix&rsquo; and &lsquo;Switcher Output&rsquo; dropdowns to populate incorrect values when selecting a non-local &lsquo;Switcher Host&rsquo; in the &lsquo;Configure RDCatch&rsquo; dialog in rdadmin(1)<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdlogmanager(1) that caused the initial transition type specified in the &lsquo;IMPORT&rsquo; section of the &lsquo;Editing Event&rsquo; dialog to be applied to both the parent log link and the first imported event when the &lsquo;PRE-IMPORT CARTS&rsquo; list was empty and no Timed Start was enabled<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in ripcd(8) that caused process of the &lsquo;Air Gate&rsquo; [&lsquo;AG&rsquo;] RML to fail<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdimport(1) that would throw a spurious SQL error when using the &lsquo;--to-cart=&rsquo; switch with an already existing cart [Issue #000217]<br />
* <font style="color:red">Bug fix</font>: Fixed a regression that caused rdimport(1) to return a &lsquo;no free carts available in specified group&rsquo; when invoked without the &lsquo;--to-cart=&rsquo; option<br />
* <font style="color:red">Bug fix</font>: Fixed a regression in rdairplay(1) that caused carts Added or Copied to a log to have a PLAY transition regardless of the default transition type set in rdadmin(1)<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in &lsquo;RDTextValidator&rsquo; that failed to catch banned characters added to the interior of existing strings<br />
* <font style="color:red">Bug fix</font>: Various other bugs fixed<br />
* <font style="color:green">Functionality</font>: Added a &lsquo;TranscodingDelay=&rsquo; parameter to the &lsquo;[Tuning]&rsquo; section of rd.conf(5)<br />
* <font style="color:green">Functionality</font>: Added a Switcher/GPIO driver for the BroadcastTools SS 2.1 switcher<br />
* <font style="color:green">Functionality</font>: Added support for GPIO on AudioScience adapters to the 'Local Audio Adapter' Switcher/GPIO driver<br />
* <font style="color:green">Functionality</font>: Renamed the 'Add Next' ['PX'] RML to 'Insert Cart' ['PX'] and added two optional arguments to allow specification of the insertion position and transition type<br />
* <font style="color:green">Functionality</font>: Added support for Spinitron v2 to the 'spinitron_plus' RLM<br />
* <font style="color:green">Functionality</font>: Added an &lsquo;ExportedFileMode=&rsquo; parameter to the &lsquo;[Tuning]&rsquo; section of rd.conf(5) to permit permission mode of exported audio files to be specified<br />
* <font style="color:orange">Documentation</font>: Documented GPIO support for AudioScience cards in the &lsquo;Local Audio Adapter&rsquo; section of the Operations Guide<br />
<br />
=== 2.19.2 (2018-04-14) ===<br />
* Database verson '''275'''<br />
* <font style="color:red">Bug fix</font>: Fixed a regression in the HPI support layer that broke audio capture with adapters lacking DMA bus-mastering support<br />
<br />
=== 2.19.1 (2018-03-27) ===<br />
* Database verson '''275'''<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdlogmanager(1) that caused DB corruption when a clock was deleted while still being assigned to a grid.<br />
* <font style="color:green">Functionality</font>: Implemented support for DMA bus-mastering for AudioScience HPI devices. This release supports the latest ASI cards that require DMA bus-mastering support. You may also need to update the hpklinux driver to v4.20.10 or later. RPMs for CentOS 7 are available at [http://static.paravelsystems.com/audioscience/centos/7/ Paravel&rsquo;s website].<br />
* <font style="color:green">Functionality</font>: Removed rdhpiinfo(8). Replaced by the stand-alone &lsquo;hpiinfo&rsquo; package.<br />
* <font style="color:green">Functionality</font>: Removed the event time check for Playout events in rdcatch(1), as there is no sane way to determine a consistently &lsquo;free&rsquo; playout time in the face of shifting cut lengths.<br />
<br />
=== 2.19.0 (2018-02-22) ===<br />
* Database verson '''275'''<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdlibrary(1) that caused evergreen carts/cuts to fail to be highlighted in the correct color<br />
* <font style="color:green">Functionality</font>: Added the ability to specify automatic log deletion on the basis of either the Creation Date or Air Date of the log<br />
* <font style="color:green">Functionality</font>: Log Importation Changes. Changed music and traffic importation so that parent link events are still visible in linked logs<br />
* <font style="color:green">Functionality</font>: Log Locking: implemented a system-wide protocol to prevent changes made to a log on one host from being inadvertently overwritten from another host<br />
<br />
=== 2.18.2 (2017-12-29) ===<br />
* Database version '''272'''<br />
* <font style="color:red">Bug fix</font>: Fixed a bug that caused creation of new clocks in rdlogmanager(1) to fail to initialize music scheduler components correctly in the database<br />
<br />
=== 2.18.1 (2017-12-22) ===<br />
* Database version '''272'''<br />
* <font style="color:red">Bug fix</font>: Fixed a bug that caused creation and initialization of a new Rivendell database to fail<br />
<br />
=== 2.18.0 (2017-12-21) ===<br />
* Database version updated to '''272'''<br />
* <font style="color:red">Bug fix</font>: Various bug fixes. See the [https://github.com/ElvishArtisan/rivendell/blob/stable/ChangeLog ChangeLog] for details<br />
* <font style="color:green">Functionality</font>: Group Cut Expiration Policy: Added the ability to set a default End Date/Time for new cuts on a per-group basis<br />
* <font style="color:green">Functionality</font>: Host Short Name: Added a ''Short Name'' parameter to Host profiles<br />
* <font style="color:green">Functionality</font>: Macro Carts: It is now possible to use filepath wildcards in macro carts<br />
* <font style="color:green">Functionality</font>: New Host Wildcards: Added two host wildcards: ''%r'' for ''Rivendell Host Name, and ''%R'' for ''Rivendell Short Name''<br />
* <font style="color:green">Functionality</font>: Provisioning Support: Added four new directives and to the ''[Provisioning]'' section of ''/etc/rd.conf''<br />
* <font style="color:green">Functionality</font>: MySQL Configuration: Added three parameters to the ''[mySQL]'' section of ''/etc/rd.conf''<br />
* <font style="color:green">Functionality</font>: Dropbox Enhancements: Added the ability to specify creation of default Segue Markers when processing files via dropbox<br />
* <font style="color:green">Functionality</font>: '''RDImport'''/DropBox Enhancements: Added the ability to specify start and end datetimes via metadata pattern<br />
* <font style="color:green">Functionality</font>: '''RDCatch''' Event Filtering: Added the ability to filter by event type in '''RDCatch'''<br />
* <font style="color:green">Functionality</font>: Log Searching: A search filter (similar to that employed for seaching for carts) has been added to the List Logs dialogs<br />
* <font style="color:green">Functionality</font>: Service Filtering in '''RDLogEdit''': Added the ability to limit the visible set of logs in RDLogEdit by user<br />
* <font style="color:green">Functionality</font>: Log Purge/Deletion Changes: Logs created manually (in rdlogedit(1) or rdairplay(1)) are now assigned a default purge/deletion date in accordance with the setting in RDAdmin->ManageServices<br />
* <font style="color:green">Functionality</font>: Log Importation Changes: Changed music and traffic importation so that parent link events are still visible in linked logs<br />
* <font style="color:green">Functionality</font>: Web API Changes: Added &lsquo;FILTER&rsquo; and &lsquo;RECENT&rsquo; call parameters to the &lsquo;ListLogs&rsquo; Web API call<br />
* <font style="color:orange">Documentation</font>: Documentation Overhaul: The Rivendell Operations and Administration Guide has been exapanded and incorporated as part of the base Rivendell source in ''docs/opsguide''. This guide is available as a separate CentOS package: ''rivendell-opsguide''<br />
* <font style="color:orange">Documentation</font>: Rivendell APIs: The various application programming interfaces (notably the web API) is now documented and is included with the standard distribution<br />
<br />
=== 2.17.0 (2017-10-11) ===<br />
* Database version updated to '''268'''<br />
* <font style="color:red">Bug fix</font>: Web API: Many fixes and enhancements to improve operation<br />
* <font style="color:red">Bug fix</font>: Many other bug fixes; see the [https://github.com/ElvishArtisan/rivendell/blob/stable/ChangeLog ChangeLog] for all the details (search for ''2.17.0'' and work your way backward through the list of changes)<br />
* <font style="color:green">Functionality</font>: Dropboxes: Added the ability to force imports to be imported as mono, also added the ability to reset individual dropboxes<br />
* <font style="color:green">Functionality</font>: New Switcher/GPIO Devices: Support has been added for the following Switcher/GPIO devices:<br />
:* Broadcast Tools Universal 4.1 MLR&gt;&gt;Web Switcher<br />
:* WheatNet LIO<br />
:* WheatNet SLIO<br />
* <font style="color:green">Functionality</font>: Macros: Added the &lsquo;Air Gate&rsquo; &#91;&lsquo;AG&rsquo;&#93; RML to permit conditional execution of RML on the basis of the status of the On-Air flag<br />
* <font style="color:green">Functionality</font>: <br />
* <font style="color:green">Functionality</font>: User Authentication: It is now possible to configure RDLogin to require entry of the user-name, rather than picking the name off of a list. See the &lsquo;Show User List in RDLogin&rsquo; checkbox in RDAdmin-&gt;SystemSettings<br />
* <font style="color:green">Functionality</font>: Log Rendering (EXPERIMENTAL): It is now possible to &lsquo;render&rsquo; a log as a single audio object (file or cart/cut) without the need to play it out while capturing the audio in realtime. Render support is available through the &lsquo;Render&rsquo; button in RDLogEdit and through the command-line rdrender(1) utility. See the rdrender(1) man page for details<br />
* <font style="color:green">Functionality</font>: Provisioning Support. Added a [Provisioning] section to rd.conf(5) with directives to facilitate the automatic provisioning of Rivendell instances. See the comments in the [Provisioning] section of the sample rd.conf(5) file<br />
* <font style="color:orange">Artwork</font>: New Icons: Implemented a new icon set, with individualized icons for each Rivendell module<br />
<br />
=== 2.16.0 (2017-06-02) ===<br />
* Database version updated to '''263'''<br />
* <font style="color:red">Bug fix</font>: Many bug fixes; see the [https://github.com/ElvishArtisan/rivendell/blob/stable/ChangeLog ChangeLog] for all the details (search for ''2.16.0'' and work your way backward through the list of changes)<br />
* <font style="color:green">Functionality</font>: Audio Store Hashing. Rivendell now automatically generates a SHA1 hash for each file in the audio store and records this value in the database, thus permitting automated recovery of audio in the event of loss or damage to the audio store's filesystem directory<br />
* <font style="color:green">Functionality</font>: Added switcher support for Kernel GPIO devices, such as the GPIO interface on the Raspberry Pi 2 and 3<br />
* <font style="color:green">Functionality</font>: Added switcher support for Modbus TCP devices<br />
* <font style="color:green">Functionality</font>: Added an rdconvert(1) utility<br />
* <font style="color:green">Functionality</font>: It is now possible to delegate authentication of Rivendell users by means of a PAM module, thus permitting &lsquo;''single sign-on''&rsquo; integration with systems such as ActiveDirectory and FreeIPA<br />
* <font style="color:green">Functionality</font>: Added various methods to the Rivendell Web API to permit integration with external audio and log editors<br />
<br />
=== 2.15.3 (2017-03-24) ===<br />
* Database version '''259''' <br />
* <font style="color:red">Bug fix</font>: Fixed bugs in MP3 file importation that caused files with variable bit rate (VBR) to be truncated during import.<br />
* <font style="color:red">Bug fix</font>: Fixed a bug that caused dynamically loaded codec libraries to fail to be detected if the corresponding library&rsquo;s so-called ''-devel'' package was not installed. <br />
* <font style="color:green">Functionality</font>: Added an ''RLM'' for generating [http://tagstation.com/ TagStation] RLM events for [http://nextradioapp.com/ NextRadio].<br />
* <font style="color:green">Functionality</font>: Added '''AddLog''', '''DeleteLog''' and '''SaveLog''' calls to the web API, along with general cleanup and correction of the overall Web API subsystem.<br />
<br />
=== 2.15.2 (2017-01-13) ===<br />
* Database version '''259'''<br />
* <font style="color:orange">Documentation</font>: Document the interfaces for '''inserting inline traffic breaks''' and for '''inserting voice track markers''' (also add an example in ''docs/examples/'')<br />
* <font style="color:red">Bug fix</font>: in ''rdadmin/createdb.cpp'' that caused obsolete fields in the 'SERVICES' table to be included when creating a new database.<br />
* <font style="color:red">Bug fix</font>: in ''lib/rdwavefile.cpp'' that caused RDXL chunks to be written with odd chunk lengths.<br />
* <font style="color:red">Bug fix</font>: in ''lib/rdsimpleplayer.cpp'' that caused RDAirPlay to freeze when attempting to audition an expired cart.<br />
* <font style="color:green">Functionality</font>: Added a '''LockRdairplayMemory=''' parameter to the [Hacks] section.<br />
* <font style="color:green">Functionality</font>: Modified the LiveWire Multicast GPIO driver to generate GPO events using the 'I' event type.<br />
<br />
=== 2.15.1 (2016-08-05) ===<br />
* Database version '''259'''<br />
* <font style="color:red">Bug fix</font>: fixed WAV file export code to enhance compatibility with third-party applications<br />
<br />
=== 2.15.0 (2016-07-29) ===<br />
* <font style="color:red">Bug fix</font>: complete support for the MySQL/MariaDB InnoDB database engine (for better transaction processing of database updates)<br />
* <font style="color:green">Functionality</font>: enhancements to ''rdexport'' that include full metadata in RDXML format<br />
* <font style="color:green">Functionality</font>: add CLI command ''rdclilogedit'' that enables editing of Rivendell Logs from the command line (without a GUI app)<br />
* <font style="color:green">Functionality</font>: Update the database to version 259.<br />
<br />
=== 2.14.1 (2016-06-11) ===<br />
* Database version '''258'''<br />
* <font style="color:red">Bug fix</font>: additional fixes for newer versions of MySQL (and MariaDB)<br />
<br />
=== 2.14.0 (2016-06-10) ===<br />
* Database version '''258'''<br />
* <font style="color:green">Functionality</font>: add the ability to capture real-time events in RDCatch recordings and replay the events in sync with the captured audio<br />
* <font style="color:green">Functionality</font>: add RML Macro ''Cut Event'' (''CE'') for placing real-time event markers into active RDCatch recordings<br />
* <font style="color:green">Functionality</font>: add support for specifying precise start time and length parameters for Traffic events that are embedded in Music events<br />
* <font style="color:red">Bug fix</font>: fixed a bug in RDAdmin that could cause creation of a new database to fail<br />
* <font style="color:red">Bug fix</font>: fix issues that prevent compilation under newer versions of the GNU C compiler suite<br />
* <font style="color:red">Bug fix</font>: various enhancements and fixes to the new(ish) ''rdexport'' utility<br />
* <font style="color:red">Bug fix</font>: initial support for newer versions of MySQL (and MariaDB)<br />
* <font style="color:red">Bug fix</font>: add code to allow embedded traffic breaks to be specified with start time and length in the music schedule.<br />
<br />
=== 2.13.0 (2016-05-10) ===<br />
* Database version '''255'''<br />
* <font style="color:green">Functionality</font>: add RLM plugin for the Paravel Systems ''WallTime'' clock<br />
* <font style="color:green">Functionality</font>: add new CLI command ''rdexport'' to export Carts with metadata<br />
* <font style="color:green">Functionality</font>: new report: ''Cut Log'' that includes the Description field for played events<br />
* <font style="color:red">Bug fix</font>: fixed a crash in RDLibrary when attempting to open multiple Carts<br />
* <font style="color:red">Bug fix</font>: fixed RDLogEdit to improve performance when saving and updating logs<br />
* <font style="color:red">Bug fix</font>: fixed a bug that caused marker data to be deleted when exporting a Cut<br />
<br />
=== 2.12.0 (2016-04-14) ===<br />
* Database version '''254'''<br />
* <font style="color:green">Functionality</font>: add support for sequential Cut play-out - you can now configure carts to play cuts in a fixed, sequential order rather than by weight value<br />
* <font style="color:green">Functionality</font>: add support for ''Broadcast Tools'' switchers<br />
* <font style="color:green">Functionality</font>: add RML macro '''Copy Cut''' (''CP'') to copy cuts between carts<br />
* <font style="color:green">Functionality</font>: add option to show only &ldquo;recent&rdquo; logs in RDLogEdit<br />
* <font style="color:green">Functionality</font>: add new web API methods related to Scheduler Codes<br />
* <font style="color:red">Bug fix</font>: fixed a bug that caused issues with Services containing the &ldquo;-&rdquo; (dash) character<br />
<br />
=== 2.11.0 (2015-09-18) ===<br />
* Database version '''252'''<br />
* <font style="color:green">Functionality</font>: add RDCatch upload/download protocols ''sftp'' and ''scp''<br />
* <font style="color:green">Functionality</font>: add support to import ''MP4/AAC'' files<br />
* <font style="color:green">Functionality</font>: add support for the ''Ross NK'' series video switcher<br />
* <font style="color:green">Functionality</font>: add support for ''PCM24'' in the core audio library code<br />
* <font style="color:red">Bug fix</font>: re-wrote the CD ripper code to make it faster and more reliable<br />
* <font style="color:red">Bug fix</font>: fixed several bugs related to audio data and buffering<br />
* <font style="color:red">Bug fix</font>: Normalized service clock data from the 'SERVICES' to the 'SVC_CLOCKS' table<br />
<br />
=== 2.10.3 (2015-02-24) ===<br />
* Database version '''242'''<br />
* <font style="color:green">Functionality</font>: add RLM (plugin) for Live365 streaming service (which is defunct as of Summer 2016)<br />
* <font style="color:green">Functionality</font>: add &ldquo;MrMaster&rdquo; and &ldquo;Spin Count&rdquo; reports<br />
* <font style="color:green">Functionality</font>: add support for audio switcher devices that use the &ldquo;Software Authority&rdquo; protocol<br />
* <font style="color:green">Functionality</font>: add ability to set segue markers in the CLI app ''rdmarkerset''<br />
* <font style="color:red">Bug fix</font>: fixed a bug that caused issues with Services containing a <Space> character in the service name<br />
<br />
=== 2.10.2 (2014-11-25) ===<br />
* Database version '''242'''<br />
* <font style="color:green">Functionality</font>: CLI ''rdimport'' enhancement: add two date-related options to the command<br />
* <font style="color:green">Functionality</font>: add column for ELR data in RDLogEdit<br />
* <font style="color:red">Bug fix</font>: fixed a bug in the Audio Science adapter for cards with only AES3 ports<br />
<br />
=== 2.10.1 (2014-11-04) ===<br />
* Database version '''242'''<br />
* <font style="color:green">Functionality</font>: add &ldquo;DSP utilization and profiling&rdquo; info for Audio Science adapters<br />
* <font style="color:green">Functionality</font>: add the column &ldquo;EXT DATA&rdquo; to the &ldquo;Edit Log&rdquo; screen in RDLogEdit<br />
* <font style="color:red">Bug fix</font>: fixed a memory fault (crash) in RDLogEdit when dropping a cart that was being used in a log</div>
DKlann
http://wiki.rivendellaudio.org/index.php?title=ChangeSummary&diff=714
ChangeSummary
2023-08-11T16:00:37Z
<p>DKlann: Add change description for version 4.1.0.</p>
<hr />
<div>__NOTOC__<br />
== Rivendell Change Summary ==<br />
<br />
This page contains version change descriptions in summary form for Rivendell versions released within at least the most recent five years (quite probably longer). Change descriptions are limited (mostly) to user-visible changes.<br />
<br />
Please see the [https://raw.githubusercontent.com/ElvishArtisan/rivendell/master/ChangeLog ChangeLog] and [https://github.com/ElvishArtisan/rivendell/blob/master/NEWS NEWS] files in the [https://github.com/elvishartisan/rivendell source code] for a complete list of changes and bug fixes.<br />
<br />
See the [https://github.com/elvishartisan/rivendell/issues Issues] list for current reported bugs, issues and feature requests.<br />
<br />
=== 4.1.0 (2023-08-09) ===<br />
<br />
* Database verson '''371'''<br />
<br />
* <font style="color:red">Bug fix</font>: Fixed regressions that caused spontaneous resizing of the main window in rdairplay(1) when switching between Sound Panel and Voice Tracker views on the right-hand side<br />
* <font style="color:red">Bug fix</font>: Fixed a regression in rdlogmanager(1) that caused the pie chart to fail to be drawn correctly upon first displaying the &lsquo;Edit Clock&rsquo; dialog<br />
* <font style="color:red">Bug fix</font>: Fixed a fencepost bug in the &lsquo;Render Log&rsquo; dialog in rdlogedit(1) that caused rendered log to include the cart immediately after the end of the selected section when setting the &lsquo;Include&rsquo; dropdown to &lsquo;Only Selected Events&rsquo;<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdlibrary(1) that could cause the &lsquo;Add Cart&rsquo; dialog to display the incorrect type for the selected group<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdcastmanager(1) where changes to podcast metadata would fail to be reflected in the feed list<br />
* <font style="color:red">Bug fix</font>: Fixed a regression in rdlogmanager(1) that caused records to be omitted from reports using the &lsquo;CBSI DeltaFlex Traffic Reconciliation v2.01&rsquo; export filter<br />
* <font style="color:red">Bug fix</font>: Fixed a regression in rdlibrary(1) that caused cart deletion to fail with the message "Voicetrack Found"<br />
* <font style="color:green">Functionality</font>: Added an &lsquo;ID&rsquo; column to the &lsquo;Podcast Item List&rsquo; dialog in rdcastmanager(1)<br />
* <font style="color:green">Functionality</font>: Added three columns to the library list in rdlibrary(1): &lsquo;Plays&rsquo;, &lsquo;Last Played&rsquo;, and &lsquo;Ingested On&rsquo;<br />
* <font style="color:green">Functionality</font>: Added support for updating library metadata on subsequent dropbox imports<br />
* <font style="color:orange">Documentation</font>: Added a rivendell(7) manual page<br />
<br />
<br />
=== 4.0.2 (2023-06-23) ===<br />
<br />
* Database verson '''370'''<br />
<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in the voice tracker that caused the waveform displays to be greyed out out immediately after creating a new track marker<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdcatchd(8) that would cause a segfault after reception of a &lsquo;Start Record Deck&rsquo; [&rsquo;RS&rsquo;] RML<br />
* <font style="color:red">Bug fix</font>: Fixed a regression in rdcatch(1) that caused a phantom event entry to appear in the Event List while processing the &lsquo;Start Record Deck&rsquo; [&rsquo;RS&rsquo;] RML<br />
<br />
=== 4.0.1 (2023-06-16) ===<br />
<br />
* Database verson '''370'''<br />
<br />
Rivendell version 4, in development for more than two years, brings many &ldquo;under-the-hood&ldquo; as well as visible changes to the system. This list is incomplete, but attempts to highlight the most important changes. Please edit this page if you see something missing.<br />
<br />
* <font style="color:red">Bug fix</font>: Many bugs have been fixed; many more have likely been introduced<br />
* <font style="color:green">Functionality</font>: switch to graphical programming library [https://www.qt.io/ Qt] version [https://doc.qt.io/qt-5/ 5].<br />
* <font style="color:green">Functionality</font>: new layout of the RDAirPlay window: You may now resize the RDAirPlay window; note however that RDAirPlay has a '''minimum size''' of 1310x870 pixels. RDAirPlay also received a revamped level metering system; the side effect of this is that the meters are now oriented vertically instead of horizontally<br />
* <font style="color:green">Functionality</font>: the minimum supported display (monitor) size is 1680 x 1050 pixels; displays smaller than this may cause problems with some Rivendell applications<br />
* <font style="color:green">Functionality</font>: the &lsquo;Edit Markers&rsquo; window has changed significantly; see the current manual for instructions on setting, changing, and deleting markers from Cuts<br />
* <font style="color:green">Functionality</font>: Rivendell v4.x aims for full compatibility with MySQL 8.0 and earlier versions in their default installation configurations.<br />
* <font style="color:green">Functionality</font>: RDPanel, as well as several windows within RDAdmin now allow for dynamic window sizing<br />
* <font style="color:green">Functionality</font>: Date and time presentation formats can now be customized on the basis of site perferences.<br />
* <font style="color:green">Functionality</font>: It is now possible to disable grid processing on a service-by-service basis, thus permitting a complete schedule to be generated by an external music scheduler. See the &lsquo;Bypassing Grid Processing&rsquo; section in the &lsquo;Generating Logs and Reports with RDLogManager&rsquo; section of the Operation Guide for details.<br />
* <font style="color:orange">Documentation</font>: The documentation has been edited and brought up to date with respect to the current code and functionality of the system<br />
<br />
=== 3.6.7 (2023-01-27) ===<br />
<br />
* Database verson '''347'''<br />
<br />
* <font style="color:red">Bug fix</font>: Fixed broken waveform generation on ARM architectures<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdcatchd(8) that caused record events to be captured with the incorrect sampling rate<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in the podcasting subsystem that broke validation of the &lsquo;direct&rsquo; name space<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdlibrary(1) that caused the field names for the &lsquo;FILENAME&rsquo; and &lsquo;LENGTH&rsquo; fields in the &lsquo;Cart Data Dump (CSV)&rsquo; report to be corrupted<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdservice(8) that could cause dropboxes to be instantiated with invalid segue level values<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdlogmanager(1) that caused the slop factors for inline traffic events to fail to be applied when importing a traffic log<br />
* <font style="color:orange">Documentation</font>: Corrected errors in the WebAPI documentation regarding the argument type of the &lsquo;LINE&lt;n&gt;_TIME_TYPE&rsquo; field in the &lsquo;SaveLog&rsquo; call<br />
<br />
=== 3.6.6 (2022-10-02) ===<br />
<br />
* Database verson '''347'''<br />
<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdrssd(8) that caused a podcast episode to be deleted immediately after being made active if the &lsquo;Air Date/Time&rsquo; was set for the future and &lsquo;Item Expires&rsquo; was set to &lsquo;No&rsquo; in the &lsquo;Editing Item&rsquo; dialog<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdcastmanager(1) that caused incorrect ordering when sorting by the &lsquo;Start&rsquo; and &lsquo;Expiration&rsquo; columns in the &lsquo;Podcast Item List&rsquo; dialog<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in the CDDB parser that caused it to emit an error message when processing a 202 response<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in PyPAD where resolution of datetimes could be incorrect<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdservice(8) that could cause a segfault (crash) when started with a previous instance running<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdlogmanager(1) that could cause a segfault (crash) when merging a log<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdrssd(8) that caused incorrect error data to be logged<br />
* <font style="color:red">Bug fix</font>: Fixed a regression in the Disc Ripper in rdlibrary(1) that caused manual changes to track metadata to be incorrectly applied<br />
* <font style="color:green">Functionality</font>: Added &lsquo;--by-isci&rsquo; and &lsquo;--dump-isci-xref&rsquo; options to rdimport(1) and modified rdimport(1) to allow the &lsquo;--by-isci&rsquo; option to take a service name option<br />
* <font style="color:green">Functionality</font>: Added a &lsquo;StayOnTop=&rsquo; directive to the &lsquo;[SoftKeys]&rsquo; section of rd.conf(5)<br />
* <font style="color:green">Functionality</font>: Changed the default &lsquo;--process-interval=&rsquo; value from 60 seconds to 30 seconds in rdrssd(8)<br />
* <font style="color:green">Functionality</font>: Added &lsquo;RDListView::DateTimeSort&rsquo; to the &lsquo;RDListView::SortType enumeration<br />
* <font style="color:green">Functionality</font>: Added explicit processing for 201, 230, 401, 402, 403, 409, 431, 432, 433, 434, 501, 502, 503 and 530 returns in the CDDB parser<br />
* <font style="color:green">Functionality</font>: Added an Online Feed Report to rdcastmanager(1)<br />
* <font style="color:green">Functionality</font>: Modified the full disc ripper and the per-track ripper in rdlibrary(1) to use CD-Text<br />
* <font style="color:green">Functionality</font>: Renamed the &lsquo;CD Metadata Source&rsquo; control in rdlibrary(1) to use &lsquo;CDDB&rsquo; instead of &lsquo;FreeDB&rsquo; when configuring CDDB lookups<br />
* <font style="color:green">Functionality</font>: Added support for a &lsquo;SuppressLinkParameterInheritance=&rsquo; directive in the &lsquo;[Hacks]&rsquo; section of rd.conf(5)<br />
* <font style="color:blue">Code (internal) change</font>: Added code to the podcasting subsystem to log extended curl(1) information to syslog<br />
<br />
=== 3.6.5 (2022-03-18) ===<br />
<br />
* Database verson '''347'''<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdimport(1) that could create duplicate Scheduler Code entries when using the &lsquo;--to-cart&rsquo; and &lsquo;--add-scheduler-code&rsquo; switches simultaneously<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in the &lsquo;rdxport&rsquo; service that caused the &lsquo;ListLog&rsquo; WebAPI call to return null values in the &lsquo;description&rsquo;, &lsquo;isrc&rsquo;, &lsquo;isci&rsquo;, &lsquo;recordingMbId&rsquo; and &lsquo;releaseMbId&rsquo; fields<br />
* <font style="color:green">Functionality</font>: Added a &lsquo;direct&rsquo; namespace to the &lsquo;Apple iTunes&rsquo; and &lsquo;Apple iTunes + Superfeed&rsquo; RSS schemas<br />
<br />
<br />
=== 3.6.4 (2022-02-22) ===<br />
<br />
Note: version 3.6.3 was tagged, but not released.<br />
<br />
* Database verson '''347'''<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdlogmanager(1) that caused leading event attributes to fail to be preserved when suppressing Music of Traffic import markers<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in the rdxport &lsquo;Import&rsquo; service that could result in incorrect end marker placement when processing variable bit rate (VBR) MPEG files<br />
* <font style="color:red">Bug fix</font>: Fixed an arithmetic overflow bug in &lsquo;RDWaveFile&rsquo; that could cause the play length of MPEG-encoded to be incorrectly calculated<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdimport(1) that caused premature validation of metadata<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdxport(8) that caused the &lsquo;SaveLog&rsquo; WebAPI call to fail if the target log didn&rsquo;t exist<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rddbmgr(8) that could cause the 346=&gt;347 schema conversion to hang indefinitely with databases containing large cart libraries<br />
* <font style="color:green">Functionality</font>: Added a &lsquo;SuppressMusicImportLinks=&rsquo; directive to the [Hacks] section of rd.conf(5)<br />
* <font style="color:green">Functionality</font>: Added support for [NowGroups] and [NextGroups] sections in PyPAD script configurations<br />
* <font style="color:green">Functionality</font>: Deprecated use of the &lsquo;Transmit Now & Next data&rsquo; checkbox in the &lsquo;Group&rsquo; dialog in rdadmin(1)<br />
* <font style="color:green">Functionality</font>: Added a &lsquo;SaveWebgetFilesDirectory=&rsquo; directive to rd.conf(5)<br />
* <font style="color:green">Functionality</font>: Modified the mode of files generated by the rd-conf(5) &lsquo;SaveWebgetFilesDirectory=&rsquo; configuration directive from 0440 to 0664<br />
* <font style="color:green">Functionality</font>: Added a &lsquo;linkLength&rsquo; field and a &lsquo;graceTime&rsquo; field to the return XML for the &lsquo;ListLog&rsquo; WebAPI call<br />
* <font style="color:green">Functionality</font>: Added a &lsquo;Log Listing (CSV)&rsquo; report to rdlogedit(1)<br />
* <font style="color:green">Functionality</font>: Added a &lsquo;--print-progress&rsquo; switch to rddbmgr(8)<br />
* <font style="color:blue">Code (internal) change</font>: Overhauled the code for reading MPEG frame headers in &lsquo;RDWaveFile&rsquo;<br />
* <font style="color:blue">Code (internal) change</font>: Increased the import process timeout for the WebGet service to 1200 seconds<br />
<br />
<br />
=== 3.6.2 (2021-07-30) ===<br />
* Database verson '''347'''<br />
* <font style="color:green">Functionality</font>: Added support for system dark themes in RDAirplay<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdlogedit(1) that could cause a crash when attempting to play a non-audio event in the &lsquo;Voice Tracker&rsquo; dialog<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdimport(1) that caused the cart title uniqueness check to be applied to the incorrect string when the &lsquo;--set-string-title=&rsquo; switch was used<br />
<br />
<br />
=== 3.6.1 (2021-06-06) ===<br />
* Database verson '''347'''<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdimport(1) that could cause a crash when the &lsquo;--fix-broken-formats&rsquo; switch is used<br />
* <font style="color:green">Functionality</font>: Added syslog DEBUG messages around the start/stop of ephemeral processes in rdservice(8)<br />
* <font style="color:green">Functionality</font>: Added an &lsquo;--initial-maintenance&rsquo; switch to rdservice(8)<br />
* <font style="color:green">Functionality</font>: Added an &lsquo;--force-system-maintenance&rsquo; switch to rdservice(8)<br />
* <font style="color:green">Functionality</font>: Modified rdmaint(8) to enable it to operate even when the Rivendell services are not running<br />
<br />
=== 3.6.0 (2021-05-15) ===<br />
* Database verson '''347'''<br />
* <font style="color:red">Bug fix</font>: Fixed title separation in rdlogmanager(1) scheduler<br />
* <font style="color:red">Bug fix</font>: Fixed bug in library code ''lib/rdwavefile.cpp'' that copied CartChunk Cut ID past the end of the first "NULL" character<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdairplay(1) that caused the Talk Timer to fail to be populated when adding new carts to a log<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in the Cart Selector Dialog that made it impossible to enter an apostrophe character in the filter search line<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdimport(1) where the title of an existing cart would be overwritten with a default title even when no title was found in the file metadata<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in &lsquo;RDFlacDecode&rsquo; that caused conversion of files with names containing non-ASCII characters to fail<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdadmin(1) where clicking the &lsquo;OK&rsquo; button in the &lsquo;Edit Switcher&rsquo; dialog would cause an error dialog to appear with a &lsquo;primary serial device not active&rsquo; warning. The following devices are affected: &lsquo;Local GPIO&rsquo;, &lsquo;Local Audio Adapter&rsquo;, &lsquo;Logitek vGuest&rsquo;, &lsquo;Livewire LWRP Audio&rsquo;, and &lsquo;Kernel GPIO&rsquo;<br />
* <font style="color:green">Functionality</font>: Modified rdimport(1) and the Webget service so as to send e-mail reports to the address of the current Rivendell user in addition to the group&rsquo;s Notification E-Mail Address<br />
* <font style="color:green">Functionality</font>: Added a &lsquo;STACK_LINES.TITLE&rsquo; field to the database<br />
* <font style="color:green">Functionality</font>: Added the value of the detected CartChunk CutID to the error message generated when rejecting said CutID as invalid when using the &lsquo;--use-cartchunk-cutid&rsquo; switch in rdimport(1)<br />
* <font style="color:green">Functionality</font>: Added code to print the value of the detected CartChunk CutID when using both the &lsquo;--use-cartchunk-cutid&rsquo; and &lsquo;--verbose&rsquo; flags in rdimport(1)<br />
* <font style="color:green">Functionality</font>: Created pypad_ino713_tcp based upon pypad_ino713, converting from UDP to TCP. Added an adjustable delay to account for broadcast air delays<br />
* <font style="color:green">Functionality</font>: Created pypad_nautel based upon pypad_ino713_tcp, including RDS parameters from documentation. Includes delay as above<br />
* <font style="color:green">Functionality</font>: Added a new &lsquo;RadioTraffic.com Traffic Reconciliation&rsquo; report. Renamed the existing &lsquo;RadioTraffic.com Traffic Reconciliation&rsquo; to &lsquo;Original RadioTraffic.com Traffic Reconciliation (DEPRECATED)&rsquo;<br />
* <font style="color:green">Functionality</font>: Changed the way in which the VU Meter UDP port is chosen. One can now specify the base port number and the maximum number of UDP ports to consider when caed(8) sets up the VU meter port<br />
* <font style="color:orange">Documentation</font>: Documented the &lsquo;MeterPortBaseNumber=&rsquo; and &lsquo;MeterPointRange=&rsquo; directives in the rd.conf(5) man page<br />
<br />
=== 3.5.0 (2020-12-12) ===<br />
* Database verson '''346'''<br />
* <font style="color:red">Bug fix</font>: Corrected the column settings in RDAdmin > Manage Hosts > [host] > Dropboxes<br />
* <font style="color:red">Bug fix</font>: Fixed regression with "Scheduler Code:" label overlapping "Group" combobox in rdlibrary(1)<br />
* <font style="color:red">Bug fix</font>: Fixed several bugs in rdadmin(1) that messed with passwords, user settings, and other important settings<br />
* <font style="color:red">Bug fix</font>: Fixed several bugs in rdlogmanager(1) that caused all kinds of mischief<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdairplay(1) where copying a log event using the &lsquo;Copy&rsquo; button would result in the new event always getting a &lsquo;PLAY&rsquo; transition<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rddbmgr(8) that could cause database corruption problems<br />
* <font style="color:red">Bug fix</font>: Fixed bugs in rdimport(1) that caused incorrect exit codes to be emitted when a non-existent group was specified, and that caused generation of double error messages when processing invalid audio files<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdmonitor(1) that caused false indications of a failed audio store when used with autofs(8)<br />
* <font style="color:green">Functionality</font>: Major overhaul of Rivendell&rsquo;s podcast handling features; see the ChangeLog for all the details<br />
* <font style="color:green">Functionality</font>: Modified the GVC7000 switcher driver to insert 50 mS pauses between protocol commands<br />
* <font style="color:green">Functionality</font>: Allow RN Macro to run when Rivendell daemons running as non-root<br />
* <font style="color:green">Functionality</font>: Many changes to rdadmin(1), including:<br />
:* Added whitespace to the set of banned characters for service names<br />
:* Added a &lsquo;SSH Ident. File&rsquo; control to the &lsquo;Host&rsquo; dialog<br />
:* Added an &lsquo;Inline Traffic Inheritance&rsquo; control to the &lsquo;Edit Service&rsquo; dialog<br />
:* Added type icons to the &lsquo;Imported Events&rsquo; list in the &lsquo;Test Import&rsquo; dialog<br />
:* Renamed the &lsquo;Inline Traffic Inheritance&rsquo; control to &lsquo;Inline Traffic Start/Length&rsquo; and moved it to the &lsquo;Music Data Import&rsquo; section of the &lsquo;Edit Service&rsquo; dialog<br />
:* Added an &lsquo;Encoder Profiles&rsquo; dialog<br />
:* Renamed the &lsquo;Note Cart String&rsquo; controls to &lsquo;Insert Marker String&rsquo; in the &lsquo;Edit Service dialog<br />
:* Added an &lsquo;Origin E-Mail Address&rsquo; control to the &lsquo;System-Wide Settings&rsquo; dialog<br />
:* Added a &lsquo;Notification E-Mail Addresses&rsquo; control to the &lsquo;Group&rsquo; dialog<br />
:* Added a &lsquo;Send e-mail reports&rsquo; checkbox to the &lsquo;Dropbox Configuration&rsquo; dialog<br />
:* Added &lsquo;E-Mail Address&rsquo;, &lsquo;Phone Number&rsquo; and &lsquo;Local Auth&rsquo; columns to the &lsquo;Users&rsquo; list in the &lsquo;Rivendell User List&rsquo; dialog<br />
:* Added an &lsquo;Administer RSS Feeds&rsquo; checkbox to the &lsquo;Administrative Rights&rsquo; section of the &lsquo;User&rsquo; dialog<br />
:* Added a deprecation warning for the &lsquo;Allow Duplicate Cart Titles&rsquo; and &lsquo;Auto-Correct Duplicate Cart Titles&rsquo; checkboxes on the &lsquo;System-Wide Settings&rsquo; dialog<br />
* <font style="color:green">Functionality</font>: Added support for FTPS protocol for uploading, downloading, and Feed management<br />
* <font style="color:green">Functionality</font>: Significant update to the Rivendell Web interfaces (Web API, WebGet service, rivwebcapi API, etc.)<br />
* <font style="color:green">Functionality</font>: Added &lsquo;--scheduler-code=&rsquo; switch to rdexport(1)<br />
* <font style="color:green">Functionality</font>: Added generation of an &lsquo;RDLogManager Error Report&rsquo; when errors are detected when importing an external scheduler file in rdlogmanager(1)<br />
* <font style="color:green">Functionality</font>: Restored operation of Label/Note carts in rdlogmanager(1)<br />
* <font style="color:green">Functionality</font>: Updated rdservice(8) to use standard exit code defines<br />
* <font style="color:green">Functionality</font>: Implemented the &lsquo;--verbose&rsquo; switch for rdmaint(8)<br />
* <font style="color:green">Functionality</font>: Added a sample Fail2Ban jail filter for the WebAPI in &lsquo;conf/rivendell-webapi.conf&rsquo;<br />
* <font style="color:green">Functionality</font>: Added command line options &lsquo;--output-pattern&rsquo;, &lsquo;--ticket=&rsquo;, &lsquo;--send-mail&rsquo; and &lsquo;--mail-per-file&rsquo; to rdimport(1)<br />
* <font style="color:green">Functionality</font>: Added the name of the import file to schedule import failure reports<br />
* <font style="color:orange">Documentation</font>: Documented the &lsquo;%%&rsquo; filepath wildcard in the Operations Guide<br />
* <font style="color:orange">Documentation</font>: Added an &lsquo;RDCastManager&rsquo; chapter to the Operations Guide<br />
* <font style="color:orange">Documentation</font>: Revised the &lsquo;Managing Services&rsquo; section of the Operations Guide<br />
* <font style="color:orange">Documentation</font>: Rewrote the &lsquo;Webget&rsquo; chapter of the Operations Guide to conform to changes in Webget<br />
* <font style="color:orange">Documentation</font>: Added a &lsquo;Configuring Webget&rsquo; section to the Operations Guide<br />
* <font style="color:orange">Documentation</font>: Removed the &lsquo;Cart Data Dump (fixed width)&rsquo; from the Operations Guide<br />
* <font style="color:orange">Documentation</font>: Documented user-facing changes to the &lsquo;System-Wide Settings&rsquo; dialog, the &lsquo;Rivendell Group List&rsquo; and the &lsquo;Group&rsquo; dialogs in rdadmin(1) in the Operations Guide<br />
* <font style="color:orange">Documentation</font>: Documented the &lsquo;Send e-mail reports&rsquo; checkbox in the &lsquo;Dropbox Configuration&rsquo; dialog in rdadmin(1) in the Operations Guide<br />
* <font style="color:blue">Code (internal) change</font>: Prepended &lsquo;RD_&rsquo; to the names of all common Javascript functions in &lsquo;web/common/utils.js&rsquo;<br />
* <font style="color:blue">Code (internal) change</font>: Added a &lsquo;webget&rsquo; subpackage to the &lsquo;make rpm&rsquo; target<br />
* <font style="color:blue">Code (internal) change</font>: Refactored the &lsquo;Run Script&rsquo; [&rsquo;RN&rsquo;] RML to invoke scripts via the system shell, this change also removed the dependency on runuser(1)<br />
<br />
=== 3.4.1 (2020-07-21) ===<br />
* Database verson '''317'''<br />
<br />
* <font style="color:green">Functionality</font>: Added a &lsquo;Results Report&rsquo; report in rdadmin(1)<br />
* <font style="color:green">Functionality</font>: Removed the checkbox from the &lsquo;Delete&rsquo; right-click menu item in the &lsquo;Edit Event&rsquo; dialog in rdlogmanager(1)<br />
* <font style="color:green">Functionality</font>: Modified &lsquo;RDWaveFile&rsquo; to work around known fencepost errors in WAV files generated by "Sonic Studio soundBlade" by "PME Mastering, Inc."<br />
* <font style="color:green">Functionality</font>: Modified the &lsquo;Edit Event&rsquo; dialog in rdlogmanager(1) to show &lsquo;[auto]&rsquo; as the transition type for the leading event in Pre-/Post-Import lists<br />
<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdlibrary(1) that caused cuts to be incorrectly sorted when scheduled &lsquo;By Specified Order&rsquo;<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in the Rivendell command line apps that caused value-only arguments containing &lsquo;=&rsquo; characters to be incorrectly parsed<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in the Podcast Manager, Library Exporter and Web API that caused an error when processing multipart-mime submissions containing &lsquo;=&rsquo; characters<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdairplay(1) where attempting to audition an audio cart with a disabled cue output would crash the application<br />
* <font style="color:red">Bug fix</font>: Fixed a regression in rdairplay(1) that caused the &lsquo;Forced Segue&rsquo; setting in rdadmin(1) to be ignored when executing an event with a hard start attribute<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdairplay(1) where a paused event could not be removed by dropping the empty cart on it<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdairplay(1) that cause incorrect pie timer indications after adding or deleting events to a running log<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdlibrary(1) that would cause a crash when attempting to delete a range of cuts, one of which was in the clipboard<br />
* <font style="color:red">Bug fix</font>: Fixed a math bug in rdairplay(1) that caused the estimated stop-down times in the post point widget to be incorrect after adding or removing events from a running log<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdadmin(1) that made it impossible to enter useful strings in the &lsquo;WaveForm Caption&rsquo; control on the &lsquo;Edit RDLogEdit&rsquo; dialog<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in RDRenderer that caused segue transitions to be rendered without regard to the &lsquo;No Fade on Segue Out&rsquo; checkbox in the &lsquo;Edit Audio&rsquo; dialog<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in ripcd(8) that caused connections to ModbusTCP devices to fail to be properly restored by the connection watchdog<br />
* <font style="color:red">Bug fix</font>: Fixed a regression in the &lsquo;Edit Event&rsquo; dialog in rdlogmanager(1) that caused the first cart transition type to be incorrect when the &lsquo;Pre-Import Carts&rsquo; list was populated<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in the &lsquo;Add Next&rsquo; [&rsquo;PX&rsquo;] RML that failed to return an error when an invalid offset value was supplied<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in the &lsquo;Add Next&rsquo; [&rsquo;PX&rsquo;] RML that failed to honor the &lsquo;Default Trans. Type&rsquo; setting in the &lsquo;Configure RDAirPlay&rsquo; dialog in rdadmin(1)<br />
<br />
=== 3.4.0 (2020-05-19) ===<br />
* Database verson '''317'''<br />
* <font style="color:red">Bug fix</font>: Fixed a regression in rdairplay(1) that caused two events to be started by a single spacebar tap if a SoundPanel event had been played previously<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdlogmanager(1) that caused the initial event in an imported set to fail receive the proper time and transition type if the &lsquo;Include Import Markers in Finished Logs&rsquo; checkbox in rdadmin(1) had not been ticked<br />
* <font style="color:red">Bug fix</font>: Fixed a regression in rdexport(1) that caused exported file names to be constructed improperly<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdlogmanager(1) that caused &lsquo;Make Post Point&rsquo; label to be displayed without last &lsquo;t&rsquo;<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdairplay(1) where timer was not set properly when crossing midnight<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in the &lsquo;List GPIs&rsquo; dialog in rdadmin(1) that prevented changes in GPI assignments from being propagated to the underlying device<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in the &lsquo;Software Authority&rsquo; driver that caused autodetection of the number of GPIOs in a router to be unreliable<br />
* <font style="color:red">Bug fix</font>: Fixed a regression in &lsquo;RDEventLine&rsquo; that caused the &lsquo;Append Log&rsquo; [&rsquo;AL&rsquo;] RML to append a copy of the currently loaded log instead of the one specified in the RML command<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdlogedit(1) that caused garbled text to appear when &lsquo;Start Immediately&rsquo; was selected in the &lsquo;Edit Log Entry&rsquo; dialog box<br />
* <font style="color:red">Bug fix</font>: Fixed a regression that broke the ability to scroll through Sound Panel panels by means of the mouse wheel<br />
<br />
* <font style="color:green">Functionality</font>: Modified rdairplay(1) to always scroll log to the top when using the hour selector<br />
* <font style="color:green">Functionality</font>: Modified rdlogmanager(1) to disable merge buttons if the selected log does not contain any import links<br />
* <font style="color:green">Functionality</font>: Modified rdadmin(1) Edit Service dialog to display built-in traffic and music import template values<br />
* <font style="color:green">Functionality</font>: Added "Copy To Custom" buttons to rdadmin(1) Edit Service dialog<br />
* <font style="color:green">Functionality</font>: Changed the layout of the &lsquo;Editing Event&rsquo; dialog in rdlogmanager<br />
<br />
* <font style="color:green">Functionality</font>: Removed the &lsquo;Post Point&rsquo; checkbox from the &lsquo;Editing Event&rsquo; dialog in rdlogmanager(1)<br />
* <font style="color:green">Functionality</font>: Renamed the &lsquo;REMARKS&rsquo; field to &lsquo;USER NOTES&rsquo; in the &lsquo;Editing Event&rsquo; and the &lsquo;Edit Clock&rsquo; dialogs in rdlogmanager(1)<br />
* <font style="color:green">Functionality</font>: Added a &lsquo;Trans&rsquo; column to the event list in the &lsquo;Edit Clock&rsquo; and the &lsquo;List Events&rsquo; dialogs in rdlogmanager(1)<br />
<br />
=== 3.3.0 (2020-03-16) ===<br />
* Database verson '''314'''<br />
* <font style="color:red">Bug fix</font>: Fixed regressions in the following switcher drivers that could cause deadlocks and intermittent operation<br />
:* BroadcastTools SS16.4<br />
:* BroadcastTools SS 4.2<br />
:* BroadcastTools SS4.4<br />
:* BroadcastTools SS 8.2<br />
:* BroadcastTools ACS8.2<br />
:* BroadcastTools ADMS 44.22<br />
:* BroadcastTools GPI-16<br />
:* BroadcastTools SRC-16<br />
:* BroadcastTools SRC-8 III<br />
:* BroadcastTools SS 4.1 MLR<br />
* <font style="color:red">Bug fix</font>: Fixed a regression in the implementation of the &lsquo;Set Serial Trap&rsquo; [&lsquo;SI&rsquo;] RML that could cause deadlocks and intermittent operation<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdairplay(1) that could cause random segfaults when updating the Label Widget<br />
* <font style="color:red">Bug fix</font>: Fixed a bug with the &lsquo;%y&rsquo; metadata wildcard where garbage would be returned if a valid year had not been set<br />
* <font style="color:red">Bug fix</font>: Fixed a regression in rdlogmanager(1) that caused trailer whitespace to be generated in the &lsquo;EXT_DATA&rsquo;, &lsquo;EXT_EVENT&rsquo;, &lsquo;EXT_ANNC_TYPE&rsquo; and &lsquo;EXT_CART_NAME&rsquo; log fields when importing from a CounterPoint format log<br />
* <font style="color:red">Bug fix</font>: Fixed the layout of the &lsquo;Matching Carts&rsquo; field in rdlibrary(1)&rsquo;s main window when Realtime Filtering is disabled<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdairplay(1) that would cause a hard-timed log event with a &lsquo;wait&rsquo; parameter set to attempt to play the event twice<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rddbmgr(8) that threw a SQL error when attempting to modify a DB containing tables set to use character set UTF-8 to schema 297<br />
* <font style="color:red">Bug fix</font>: Fixed a race in ripcd(8) that caused arguments to the &lsquo;Run Shell Command&rsquo; [&lsquo;RN&rsquo;] macro to be corrupted<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in the &lsquo;Edit Event&rsquo; dialog in rdlogmanager(1) that caused the Transition Type dropdown to be greyed-out when the &lsquo;IMPORT&rsquo; controls were set to use the built-in music scheduler<br />
* <font style="color:green">Functionality</font>: Added a &lsquo;delta-seconds&rsquo; modifier to Filepath Wildcards to enable positive and negative time offsets<br />
* <font style="color:green">Functionality</font>: Removed support for CD-TEXT from the CD rippers<br />
* <font style="color:green">Functionality</font>: Added support for &lsquo;MusicBrainz&rsquo; CD metadata lookup<br />
* <font style="color:green">Functionality</font>: Added a &lsquo;Web Browser&rsquo; control to the &lsquo;Edit Host&rsquo; dialog in rdadmin(1)<br />
* <font style="color:green">Functionality</font>: Added support for displaying cover art in the MusicBrainz release chooser<br />
* <font style="color:green">Functionality</font>: Added &lsquo;%wm&rsquo; [&lsquo;MusicBrainz Recording ID&rsquo;] and &lsquo;%wr&rsquo; [&lsquo;MusicBrainz Release ID&rsquo;] metadata wildcards<br />
* <font style="color:green">Functionality</font>: Implemented the &lsquo;%wm&rsquo; [&lsquo;MusicBrainz Recording ID&rsquo;] and &lsquo;%wr&rsquo; [&lsquo;MusicBrainz Release ID&rsquo;] metadata wildcards for PyPAD<br />
* <font style="color:green">Functionality</font>: Added support for the &lsquo;%wi&rsquo;, &lsquo;%wm&rsquo; and &lsquo;%wr&rsquo; wildcards to the &lsquo;--metadata-pattern=&rsquo; switch in rdimport(1)<br />
* <font style="color:green">Functionality</font>: Added &lsquo;--set-string-isrc&rsquo;, &lsquo;--set-string-recording-mbid&rsquo; and &lsquo;--set-string-release-mbid&rsquo; switches to rdimport(1)<br />
* <font style="color:green">Functionality</font>: Added support for the &lsquo;%wi&rsquo;, &lsquo;%wm&rsquo; and &lsquo;%wr&rsquo; wildcards to the &lsquo;--metadata-pattern=&rsquo; switch in rdexport(1)<br />
* <font style="color:green">Functionality</font>: Added a &lsquo;%wc&rsquo; [&lsquo;Industry Standard Commercial Identification (ISCI) Code&rsquo;] metadata wildcard<br />
* <font style="color:green">Functionality</font>: Implemented the &lsquo;%wc&rsquo; metadata wildcard for PyPAD<br />
* <font style="color:green">Functionality</font>: Added support for the &lsquo;%wc&rsquo; wildcards to the &lsquo;--metadata-pattern=&rsquo; switch in rdimport(1)<br />
* <font style="color:green">Functionality</font>: Added &lsquo;--set-string-isci&rsquo; switch to rdimport(1)<br />
* <font style="color:green">Functionality</font>: Added support for the &lsquo;%wc&rsquo; wildcard to the &lsquo;--metadata-pattern=&rsquo; switch in rdexport(1)<br />
* <font style="color:green">Functionality</font>: Removed the &lsquo;RDLabel&rsquo; widget<br />
* <font style="color:green">Functionality</font>: Added a &lsquo;Disconnect All Jack Ports&rsquo; [&lsquo;JZ&rsquo;] RML<br />
* <font style="color:green">Functionality</font>: Added a &lsquo;CounterPoint Traffic Reconciliation v2&rsquo; report<br />
<br />
=== 3.2.1 (2020-01-24) ===<br />
* Database verson '''311'''<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdcatch(1) that threw a SQL error when clicking 'OK' on the &lsquo;Edit Cart Event&rsquo; dialog<br />
* <font style="color:red">Bug fix</font>: Fixed a regression in rdimport(1) that caused null characters to be written to cart metadata fields when importing files containing an &lsquo;AIR1&rsquo; RIFF chunk<br />
* <font style="color:red">Bug fix</font>: Fixed a regression in rdcatch(1) that caused the &lsquo;Source&rsquo; dropdown in the &lsquo;Edit Recording&rsquo; dialog to fail to be populated properly<br />
* <font style="color:red">Bug fix</font>: Fixed a regression in the cart selector dialog that caused default focus to be lost on the &lsquo;Filter&rsquo; control after second and subsequent invocations<br />
* <font style="color:red">Bug fix</font>: Fixed a regression in rdcatchd(8) that broke audio metering<br />
* <font style="color:red">Bug fix</font>: Fixed a regression in rdcatchd(8) that could cause download events to hang in an active state<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdcatch(1) that caused DOW flags to fail to be updated correctly on the event list after making a change<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdcatchd(8) that failed to send a MODIFY notification at the end of a Record or Download event<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdconvert that caused a segfault at startup<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdexport(1) that caused output filenames containing multi-byte UTF-8 characters to be corrupt<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdgpimon(1) that caused GPIO cart displays to fail to accurately reflect current state<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdgpimon(1) that caused incorrect state indications to be displayed after switching to a different page<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdimport(1) that caused non-Latin1 characters to be corrupted when using standard input<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdimport(1) that caused UTF-8 multibyte characters in filenames to be corrupted<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdlogmanager(1) that caused spurious log events to be inserted when generating a log<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in ripcd(8) that caused input and output counts to be calculated incorrectly for Software Authority protocol devices containing holes in the input and/or output lists<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in the &lsquo;pypad-shoutcast1.py&rsquo; script that threw an exception when processing PAD containing multi-type UTF-8 characters<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in the &lsquo;pypad_xds.py&rsquo; PyPAD script that could cause it to emit duplicate CIC updates<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in the &lsquo;rivwebcapi&rsquo; validate_tm() function that caused dates containing &lsquo;29 February&rsquo; to always fail regardless of leap-year validity<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in the rdxport service that could cause MODIFY notifications to fail to be sent by the &lsquo;SaveLog&rsquo; WebAPI call<br />
* <font style="color:red">Bug fix</font>: Fixed a regression in rdadmin(1) that caused controls to be hidden in the &lsquo;Edit Report&rsquo; dialog<br />
* <font style="color:red">Bug fix</font>: Fixed a regression in rdlogmanager(1) that caused incorrect logged start times to be generated for imported events<br />
* <font style="color:red">Bug fix</font>: Fixed a regression in the rdxport service that caused the ListCuts WebAPI call to return corrupt data<br />
* <font style="color:red">Bug fix</font>: Fixed a regression in the Web API that caused the and/or corrupt in served XML documents<br />
* <font style="color:green">Functionality</font>: Implemented support for non-realtime library filtering in the &lsquo;Editing Event&rsquo; dialog in rdlogmanager(1)<br />
* <font style="color:green">Functionality</font>: Added a &lsquo;Show Start Time As&rsquo; control to the &lsquo;Edit Log&rsquo; dialog in rdlogedit(1)<br />
* <font style="color:green">Functionality</font>: Made the rdlogedit(1) main window and &lsquo;Edit Log&rsquo; dialog window sizes persistent<br />
* <font style="color:green">Functionality</font>: Added a work-around in the &lsquo;PyPAD.Receiver().__openDb()&rsquo; method to work with versions of MySQLdb that do not support the &lsquo;password=&rsquo; parameter in &lsquo;MySQLdb.connect()&rsquo;<br />
* <font style="color:green">Functionality</font>: Added &lsquo;Repetitions=&rsquo; and &lsquo;RepetitionDelay=&rsquo; directive to the configuration of the &lsquo;pypad_xds.py&rsquo; PyPAD script<br />
* <font style="color:green">Functionality</font>: Added &lsquo;Username=&rsquo; and &lsquo;Password=&rsquo; directives to the &lsquo;pypad_httpget.py&rsquo; script for use for HTTP Basic Authentication<br />
* <font style="color:green">Functionality</font>: Added the ability to view a report at time of generation in rdlogmanager(1)<br />
* <font style="color:green">Functionality</font>: Adjusted the position of the &lsquo;Matching Carts&rsquo; readout on the main window of rdlibrary(1)<br />
* <font style="color:green">Functionality</font>: Changed the &lsquo;Time&rsquo; column in the &lsquo;Full Log Widget&rsquo; in rdairplay(1) to &lsquo;Sch. Time&rsquo;<br />
* <font style="color:green">Functionality</font>: Implemented a work-around for importing CartChunk data containing a buggy ENCO implemention of the &lsquo;AUD&rsquo; CartChunk timer<br />
* <font style="color:green">Functionality</font>: Modified the Full Log widget in rdairplay(1) to display logged start times even when the referenced cart does not exist<br />
* <font style="color:green">Functionality</font>: Tweaked the &lsquo;LogLineBox::mouseMoveEvent()&rsquo; method in rdairplay(1) to require a cursor movement of at least 20 pixels before generating a cart drag<br />
<br />
=== 3.2.0 (2019-10-31) ===<br />
* Database verson '''311'''<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rddbmgr(8) that caused a segfault when processing a SQL error<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdimport(1) that caused it to throw an exception when given a &lsquo;--metadata-pattern&rsquo; of less than three characters<br />
* <font style="color:red">Bug fix</font>: Fixed a regression in rdimport(1) that caused a segfault when invoked with the &lsquo;--metadata-pattern&rsquo; and &lsquo;--log-syslog&rsquo; switches<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdairplay(1) that caused space bar presses to start the next event in the Main Log even when &lsquo;Space Bar Action&rsquo; was set to &lsquo;None&rsquo;<br />
* <font style="color:red">Bug fix</font>: Fixed bugs in 'RDWaveFile' that caused strings of null characters to be written into unfilled CartChunk string fields<br />
* <font style="color:red">Bug fix</font>: Fixed a regression in 'rdxport.cgi' that caused a check of the Rivendell services to be triggered each time a WebAPI function was invoked<br />
* <font style="color:red">Bug fix</font>: Fixed a regression in rdsoftkeys(1) that threw a segfault at startup<br />
* <font style="color:green">Functionality</font>: Added the ability to configure the caption displayed for the first and third voicetrack waveforms in the Voicetracker dialog in rdlogedit(1)<br />
* <font style="color:green">Functionality</font>: Reworked the font management system to permit the fonts used in the UI to be specified in rd.conf(5).<br />
* <font style="color:green">Functionality</font>: Added support for posting podcast content via SFTP<br />
* <font style="color:orange">Documentation</font>: Added manual pages for rd.conf(5) and rdsoftkeys(1)<br />
<br />
=== 3.1.0 (2019-09-19) ===<br />
* Database verson '''310'''<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdairplay(1) and rdvairplayd(8) where only the first log machine set to &lsquo;load specified log&rsquo; would do so<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdlogedit(1) that caused hard start log items to have the Hour field doubled<br />
* <font style="color:red">Bug fix</font>: Refactored the Python &lsquo;pypad.Update.shouldBeProcessed()&rsquo; method to work correctly when using <tt>try:</tt> blocks in a PyPAD script<br />
* <font style="color:red">Bug fix</font>: Refactored the PyPAD scripts to route updates properly in accordance with log directives in their configuration file<br />
* <font style="color:red">Bug fix</font>: Fixed a bug that broke dropbox logging to individual files<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in caed(8) that broke timescaling support<br />
* <font style="color:red">Bug fix</font>: Fixed bugs in rdlibrary(1) that broke CD ripping<br />
* <font style="color:green">Functionality</font>: Refactored rdalsaconfig(1) to be more robust and intuitive<br />
* <font style="color:green">Functionality</font>: Added a &lsquo;pypad_httpget.py&rsquo; PyPAD script<br />
* <font style="color:green">Functionality</font>: Updated CDDB code to use protocol level 6 (UTF-8 enabled)<br />
* <font style="color:green">Functionality</font>: Added an &lsquo;%l&rsquo; wildcard to Filepath Wildcards for &lsquo;unpadded month&rsquo;<br />
=== 3.0.3 (2019-08-05) ===<br />
* Database verson '''308'''<br />
* <font style="color:red">Bug fix</font>: Fixed a regression in ripcd(8) that broke the 'Connect Jack Ports' ['JC'] and 'Disconnect Jack Ports' ['JD'] RMLs<br />
=== 3.0.2 (2019-07-31) ===<br />
* Database verson '''308'''<br />
* <font style="color:red">Bug fix</font>: Fixed a problem with the Local Audio Adapter switcher driver that caused incorrect operation with the 'Switch Add' ['SA'], 'Switch Remove' ['SR'] and 'Switch Take' ['ST'] RMLs<br />
* <font style="color:red">Bug fix</font>: Fixed a regression in rdlibrary(1) that caused macro carts entries to turn red after being viewed<br />
* <font style="color:red">Bug fix</font>: Fixed regressions that made operations with serial devices unreliable<br />
* <font style="color:green">Functionality</font>: Added support for switchers using the Grass Valley 7000 series protocol<br />
=== 3.0.1 (2019-07-16) ===<br />
* Database verson '''308'''<br />
* <font style="color:red">Bug fix</font>: Rivendell is now Unicode UTF-8 clean<br />
* <font style="color:red">Bug fix</font>: Qt4 is now used throughout Rivendell instead of Qt3<br />
* <font style="color:green">Functionality</font>: The Rivendell Loadable Modules system for processing PAD data has been completely replaced by PyPAD, allowing PAD processing plug-ins to be written in the popular Python scripting langauge. Backward compatible replacement scripts for many of the RLM plug-ins supplied in Rivendell v2.x are included<br />
* <font style="color:green">Functionality</font>: Added a compatibility library to facilitate the use of the Rivendell Web API in external applications<br />
* <font style="color:green">Functionality</font>: A system of virtual log machines has been added, allowing play-out of up to 23 logs simultaneously<br />
* <font style="color:green">Functionality</font>: Rivendell is now fully systemd compatibile<br />
* <font style="color:green">Functionality</font>: The Windows ports of rdlogedit(1) and rdlogmanager(1) have been removed<br />
* <font style="color:orange">Documentation</font>: The Rivendell Operations and Administration Guide has been updated and enhanced with more details about running a Rivendell system<br />
* <font style="color:orange">Documentation</font>: New manual pages have been added for Rivendell command that previously did not have them<br />
See [http://caspian.paravelsystems.com/pipermail/rivendell-dev/2019-July/027867.html this message] on the Rivendell Dev mailing list for more details about installing and upgrading Rivendell.<br />
=== 2.19.3 (2018-10-31) ===<br />
* Database verson '''275'''<br />
* <font style="color:red">Bug fix</font>: Fixed a bug that caused the &lsquo;Switcher Matrix&rsquo; and &lsquo;Switcher Output&rsquo; dropdowns to populate incorrect values when selecting a non-local &lsquo;Switcher Host&rsquo; in the &lsquo;Configure RDCatch&rsquo; dialog in rdadmin(1)<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdlogmanager(1) that caused the initial transition type specified in the &lsquo;IMPORT&rsquo; section of the &lsquo;Editing Event&rsquo; dialog to be applied to both the parent log link and the first imported event when the &lsquo;PRE-IMPORT CARTS&rsquo; list was empty and no Timed Start was enabled<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in ripcd(8) that caused process of the &lsquo;Air Gate&rsquo; [&lsquo;AG&rsquo;] RML to fail<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdimport(1) that would throw a spurious SQL error when using the &lsquo;--to-cart=&rsquo; switch with an already existing cart [Issue #000217]<br />
* <font style="color:red">Bug fix</font>: Fixed a regression that caused rdimport(1) to return a &lsquo;no free carts available in specified group&rsquo; when invoked without the &lsquo;--to-cart=&rsquo; option<br />
* <font style="color:red">Bug fix</font>: Fixed a regression in rdairplay(1) that caused carts Added or Copied to a log to have a PLAY transition regardless of the default transition type set in rdadmin(1)<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in &lsquo;RDTextValidator&rsquo; that failed to catch banned characters added to the interior of existing strings<br />
* <font style="color:red">Bug fix</font>: Various other bugs fixed<br />
* <font style="color:green">Functionality</font>: Added a &lsquo;TranscodingDelay=&rsquo; parameter to the &lsquo;[Tuning]&rsquo; section of rd.conf(5)<br />
* <font style="color:green">Functionality</font>: Added a Switcher/GPIO driver for the BroadcastTools SS 2.1 switcher<br />
* <font style="color:green">Functionality</font>: Added support for GPIO on AudioScience adapters to the 'Local Audio Adapter' Switcher/GPIO driver<br />
* <font style="color:green">Functionality</font>: Renamed the 'Add Next' ['PX'] RML to 'Insert Cart' ['PX'] and added two optional arguments to allow specification of the insertion position and transition type<br />
* <font style="color:green">Functionality</font>: Added support for Spinitron v2 to the 'spinitron_plus' RLM<br />
* <font style="color:green">Functionality</font>: Added an &lsquo;ExportedFileMode=&rsquo; parameter to the &lsquo;[Tuning]&rsquo; section of rd.conf(5) to permit permission mode of exported audio files to be specified<br />
* <font style="color:orange">Documentation</font>: Documented GPIO support for AudioScience cards in the &lsquo;Local Audio Adapter&rsquo; section of the Operations Guide<br />
<br />
=== 2.19.2 (2018-04-14) ===<br />
* Database verson '''275'''<br />
* <font style="color:red">Bug fix</font>: Fixed a regression in the HPI support layer that broke audio capture with adapters lacking DMA bus-mastering support<br />
<br />
=== 2.19.1 (2018-03-27) ===<br />
* Database verson '''275'''<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdlogmanager(1) that caused DB corruption when a clock was deleted while still being assigned to a grid.<br />
* <font style="color:green">Functionality</font>: Implemented support for DMA bus-mastering for AudioScience HPI devices. This release supports the latest ASI cards that require DMA bus-mastering support. You may also need to update the hpklinux driver to v4.20.10 or later. RPMs for CentOS 7 are available at [http://static.paravelsystems.com/audioscience/centos/7/ Paravel&rsquo;s website].<br />
* <font style="color:green">Functionality</font>: Removed rdhpiinfo(8). Replaced by the stand-alone &lsquo;hpiinfo&rsquo; package.<br />
* <font style="color:green">Functionality</font>: Removed the event time check for Playout events in rdcatch(1), as there is no sane way to determine a consistently &lsquo;free&rsquo; playout time in the face of shifting cut lengths.<br />
<br />
=== 2.19.0 (2018-02-22) ===<br />
* Database verson '''275'''<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdlibrary(1) that caused evergreen carts/cuts to fail to be highlighted in the correct color<br />
* <font style="color:green">Functionality</font>: Added the ability to specify automatic log deletion on the basis of either the Creation Date or Air Date of the log<br />
* <font style="color:green">Functionality</font>: Log Importation Changes. Changed music and traffic importation so that parent link events are still visible in linked logs<br />
* <font style="color:green">Functionality</font>: Log Locking: implemented a system-wide protocol to prevent changes made to a log on one host from being inadvertently overwritten from another host<br />
<br />
=== 2.18.2 (2017-12-29) ===<br />
* Database version '''272'''<br />
* <font style="color:red">Bug fix</font>: Fixed a bug that caused creation of new clocks in rdlogmanager(1) to fail to initialize music scheduler components correctly in the database<br />
<br />
=== 2.18.1 (2017-12-22) ===<br />
* Database version '''272'''<br />
* <font style="color:red">Bug fix</font>: Fixed a bug that caused creation and initialization of a new Rivendell database to fail<br />
<br />
=== 2.18.0 (2017-12-21) ===<br />
* Database version updated to '''272'''<br />
* <font style="color:red">Bug fix</font>: Various bug fixes. See the [https://github.com/ElvishArtisan/rivendell/blob/stable/ChangeLog ChangeLog] for details<br />
* <font style="color:green">Functionality</font>: Group Cut Expiration Policy: Added the ability to set a default End Date/Time for new cuts on a per-group basis<br />
* <font style="color:green">Functionality</font>: Host Short Name: Added a ''Short Name'' parameter to Host profiles<br />
* <font style="color:green">Functionality</font>: Macro Carts: It is now possible to use filepath wildcards in macro carts<br />
* <font style="color:green">Functionality</font>: New Host Wildcards: Added two host wildcards: ''%r'' for ''Rivendell Host Name, and ''%R'' for ''Rivendell Short Name''<br />
* <font style="color:green">Functionality</font>: Provisioning Support: Added four new directives and to the ''[Provisioning]'' section of ''/etc/rd.conf''<br />
* <font style="color:green">Functionality</font>: MySQL Configuration: Added three parameters to the ''[mySQL]'' section of ''/etc/rd.conf''<br />
* <font style="color:green">Functionality</font>: Dropbox Enhancements: Added the ability to specify creation of default Segue Markers when processing files via dropbox<br />
* <font style="color:green">Functionality</font>: '''RDImport'''/DropBox Enhancements: Added the ability to specify start and end datetimes via metadata pattern<br />
* <font style="color:green">Functionality</font>: '''RDCatch''' Event Filtering: Added the ability to filter by event type in '''RDCatch'''<br />
* <font style="color:green">Functionality</font>: Log Searching: A search filter (similar to that employed for seaching for carts) has been added to the List Logs dialogs<br />
* <font style="color:green">Functionality</font>: Service Filtering in '''RDLogEdit''': Added the ability to limit the visible set of logs in RDLogEdit by user<br />
* <font style="color:green">Functionality</font>: Log Purge/Deletion Changes: Logs created manually (in rdlogedit(1) or rdairplay(1)) are now assigned a default purge/deletion date in accordance with the setting in RDAdmin->ManageServices<br />
* <font style="color:green">Functionality</font>: Log Importation Changes: Changed music and traffic importation so that parent link events are still visible in linked logs<br />
* <font style="color:green">Functionality</font>: Web API Changes: Added &lsquo;FILTER&rsquo; and &lsquo;RECENT&rsquo; call parameters to the &lsquo;ListLogs&rsquo; Web API call<br />
* <font style="color:orange">Documentation</font>: Documentation Overhaul: The Rivendell Operations and Administration Guide has been exapanded and incorporated as part of the base Rivendell source in ''docs/opsguide''. This guide is available as a separate CentOS package: ''rivendell-opsguide''<br />
* <font style="color:orange">Documentation</font>: Rivendell APIs: The various application programming interfaces (notably the web API) is now documented and is included with the standard distribution<br />
<br />
=== 2.17.0 (2017-10-11) ===<br />
* Database version updated to '''268'''<br />
* <font style="color:red">Bug fix</font>: Web API: Many fixes and enhancements to improve operation<br />
* <font style="color:red">Bug fix</font>: Many other bug fixes; see the [https://github.com/ElvishArtisan/rivendell/blob/stable/ChangeLog ChangeLog] for all the details (search for ''2.17.0'' and work your way backward through the list of changes)<br />
* <font style="color:green">Functionality</font>: Dropboxes: Added the ability to force imports to be imported as mono, also added the ability to reset individual dropboxes<br />
* <font style="color:green">Functionality</font>: New Switcher/GPIO Devices: Support has been added for the following Switcher/GPIO devices:<br />
:* Broadcast Tools Universal 4.1 MLR&gt;&gt;Web Switcher<br />
:* WheatNet LIO<br />
:* WheatNet SLIO<br />
* <font style="color:green">Functionality</font>: Macros: Added the &lsquo;Air Gate&rsquo; &#91;&lsquo;AG&rsquo;&#93; RML to permit conditional execution of RML on the basis of the status of the On-Air flag<br />
* <font style="color:green">Functionality</font>: <br />
* <font style="color:green">Functionality</font>: User Authentication: It is now possible to configure RDLogin to require entry of the user-name, rather than picking the name off of a list. See the &lsquo;Show User List in RDLogin&rsquo; checkbox in RDAdmin-&gt;SystemSettings<br />
* <font style="color:green">Functionality</font>: Log Rendering (EXPERIMENTAL): It is now possible to &lsquo;render&rsquo; a log as a single audio object (file or cart/cut) without the need to play it out while capturing the audio in realtime. Render support is available through the &lsquo;Render&rsquo; button in RDLogEdit and through the command-line rdrender(1) utility. See the rdrender(1) man page for details<br />
* <font style="color:green">Functionality</font>: Provisioning Support. Added a [Provisioning] section to rd.conf(5) with directives to facilitate the automatic provisioning of Rivendell instances. See the comments in the [Provisioning] section of the sample rd.conf(5) file<br />
* <font style="color:orange">Artwork</font>: New Icons: Implemented a new icon set, with individualized icons for each Rivendell module<br />
<br />
=== 2.16.0 (2017-06-02) ===<br />
* Database version updated to '''263'''<br />
* <font style="color:red">Bug fix</font>: Many bug fixes; see the [https://github.com/ElvishArtisan/rivendell/blob/stable/ChangeLog ChangeLog] for all the details (search for ''2.16.0'' and work your way backward through the list of changes)<br />
* <font style="color:green">Functionality</font>: Audio Store Hashing. Rivendell now automatically generates a SHA1 hash for each file in the audio store and records this value in the database, thus permitting automated recovery of audio in the event of loss or damage to the audio store's filesystem directory<br />
* <font style="color:green">Functionality</font>: Added switcher support for Kernel GPIO devices, such as the GPIO interface on the Raspberry Pi 2 and 3<br />
* <font style="color:green">Functionality</font>: Added switcher support for Modbus TCP devices<br />
* <font style="color:green">Functionality</font>: Added an rdconvert(1) utility<br />
* <font style="color:green">Functionality</font>: It is now possible to delegate authentication of Rivendell users by means of a PAM module, thus permitting &lsquo;''single sign-on''&rsquo; integration with systems such as ActiveDirectory and FreeIPA<br />
* <font style="color:green">Functionality</font>: Added various methods to the Rivendell Web API to permit integration with external audio and log editors<br />
<br />
=== 2.15.3 (2017-03-24) ===<br />
* Database version '''259''' <br />
* <font style="color:red">Bug fix</font>: Fixed bugs in MP3 file importation that caused files with variable bit rate (VBR) to be truncated during import.<br />
* <font style="color:red">Bug fix</font>: Fixed a bug that caused dynamically loaded codec libraries to fail to be detected if the corresponding library&rsquo;s so-called ''-devel'' package was not installed. <br />
* <font style="color:green">Functionality</font>: Added an ''RLM'' for generating [http://tagstation.com/ TagStation] RLM events for [http://nextradioapp.com/ NextRadio].<br />
* <font style="color:green">Functionality</font>: Added '''AddLog''', '''DeleteLog''' and '''SaveLog''' calls to the web API, along with general cleanup and correction of the overall Web API subsystem.<br />
<br />
=== 2.15.2 (2017-01-13) ===<br />
* Database version '''259'''<br />
* <font style="color:orange">Documentation</font>: Document the interfaces for '''inserting inline traffic breaks''' and for '''inserting voice track markers''' (also add an example in ''docs/examples/'')<br />
* <font style="color:red">Bug fix</font>: in ''rdadmin/createdb.cpp'' that caused obsolete fields in the 'SERVICES' table to be included when creating a new database.<br />
* <font style="color:red">Bug fix</font>: in ''lib/rdwavefile.cpp'' that caused RDXL chunks to be written with odd chunk lengths.<br />
* <font style="color:red">Bug fix</font>: in ''lib/rdsimpleplayer.cpp'' that caused RDAirPlay to freeze when attempting to audition an expired cart.<br />
* <font style="color:green">Functionality</font>: Added a '''LockRdairplayMemory=''' parameter to the [Hacks] section.<br />
* <font style="color:green">Functionality</font>: Modified the LiveWire Multicast GPIO driver to generate GPO events using the 'I' event type.<br />
<br />
=== 2.15.1 (2016-08-05) ===<br />
* Database version '''259'''<br />
* <font style="color:red">Bug fix</font>: fixed WAV file export code to enhance compatibility with third-party applications<br />
<br />
=== 2.15.0 (2016-07-29) ===<br />
* <font style="color:red">Bug fix</font>: complete support for the MySQL/MariaDB InnoDB database engine (for better transaction processing of database updates)<br />
* <font style="color:green">Functionality</font>: enhancements to ''rdexport'' that include full metadata in RDXML format<br />
* <font style="color:green">Functionality</font>: add CLI command ''rdclilogedit'' that enables editing of Rivendell Logs from the command line (without a GUI app)<br />
* <font style="color:green">Functionality</font>: Update the database to version 259.<br />
<br />
=== 2.14.1 (2016-06-11) ===<br />
* Database version '''258'''<br />
* <font style="color:red">Bug fix</font>: additional fixes for newer versions of MySQL (and MariaDB)<br />
<br />
=== 2.14.0 (2016-06-10) ===<br />
* Database version '''258'''<br />
* <font style="color:green">Functionality</font>: add the ability to capture real-time events in RDCatch recordings and replay the events in sync with the captured audio<br />
* <font style="color:green">Functionality</font>: add RML Macro ''Cut Event'' (''CE'') for placing real-time event markers into active RDCatch recordings<br />
* <font style="color:green">Functionality</font>: add support for specifying precise start time and length parameters for Traffic events that are embedded in Music events<br />
* <font style="color:red">Bug fix</font>: fixed a bug in RDAdmin that could cause creation of a new database to fail<br />
* <font style="color:red">Bug fix</font>: fix issues that prevent compilation under newer versions of the GNU C compiler suite<br />
* <font style="color:red">Bug fix</font>: various enhancements and fixes to the new(ish) ''rdexport'' utility<br />
* <font style="color:red">Bug fix</font>: initial support for newer versions of MySQL (and MariaDB)<br />
* <font style="color:red">Bug fix</font>: add code to allow embedded traffic breaks to be specified with start time and length in the music schedule.<br />
<br />
=== 2.13.0 (2016-05-10) ===<br />
* Database version '''255'''<br />
* <font style="color:green">Functionality</font>: add RLM plugin for the Paravel Systems ''WallTime'' clock<br />
* <font style="color:green">Functionality</font>: add new CLI command ''rdexport'' to export Carts with metadata<br />
* <font style="color:green">Functionality</font>: new report: ''Cut Log'' that includes the Description field for played events<br />
* <font style="color:red">Bug fix</font>: fixed a crash in RDLibrary when attempting to open multiple Carts<br />
* <font style="color:red">Bug fix</font>: fixed RDLogEdit to improve performance when saving and updating logs<br />
* <font style="color:red">Bug fix</font>: fixed a bug that caused marker data to be deleted when exporting a Cut<br />
<br />
=== 2.12.0 (2016-04-14) ===<br />
* Database version '''254'''<br />
* <font style="color:green">Functionality</font>: add support for sequential Cut play-out - you can now configure carts to play cuts in a fixed, sequential order rather than by weight value<br />
* <font style="color:green">Functionality</font>: add support for ''Broadcast Tools'' switchers<br />
* <font style="color:green">Functionality</font>: add RML macro '''Copy Cut''' (''CP'') to copy cuts between carts<br />
* <font style="color:green">Functionality</font>: add option to show only &ldquo;recent&rdquo; logs in RDLogEdit<br />
* <font style="color:green">Functionality</font>: add new web API methods related to Scheduler Codes<br />
* <font style="color:red">Bug fix</font>: fixed a bug that caused issues with Services containing the &ldquo;-&rdquo; (dash) character<br />
<br />
=== 2.11.0 (2015-09-18) ===<br />
* Database version '''252'''<br />
* <font style="color:green">Functionality</font>: add RDCatch upload/download protocols ''sftp'' and ''scp''<br />
* <font style="color:green">Functionality</font>: add support to import ''MP4/AAC'' files<br />
* <font style="color:green">Functionality</font>: add support for the ''Ross NK'' series video switcher<br />
* <font style="color:green">Functionality</font>: add support for ''PCM24'' in the core audio library code<br />
* <font style="color:red">Bug fix</font>: re-wrote the CD ripper code to make it faster and more reliable<br />
* <font style="color:red">Bug fix</font>: fixed several bugs related to audio data and buffering<br />
* <font style="color:red">Bug fix</font>: Normalized service clock data from the 'SERVICES' to the 'SVC_CLOCKS' table<br />
<br />
=== 2.10.3 (2015-02-24) ===<br />
* Database version '''242'''<br />
* <font style="color:green">Functionality</font>: add RLM (plugin) for Live365 streaming service (which is defunct as of Summer 2016)<br />
* <font style="color:green">Functionality</font>: add &ldquo;MrMaster&rdquo; and &ldquo;Spin Count&rdquo; reports<br />
* <font style="color:green">Functionality</font>: add support for audio switcher devices that use the &ldquo;Software Authority&rdquo; protocol<br />
* <font style="color:green">Functionality</font>: add ability to set segue markers in the CLI app ''rdmarkerset''<br />
* <font style="color:red">Bug fix</font>: fixed a bug that caused issues with Services containing a <Space> character in the service name<br />
<br />
=== 2.10.2 (2014-11-25) ===<br />
* Database version '''242'''<br />
* <font style="color:green">Functionality</font>: CLI ''rdimport'' enhancement: add two date-related options to the command<br />
* <font style="color:green">Functionality</font>: add column for ELR data in RDLogEdit<br />
* <font style="color:red">Bug fix</font>: fixed a bug in the Audio Science adapter for cards with only AES3 ports<br />
<br />
=== 2.10.1 (2014-11-04) ===<br />
* Database version '''242'''<br />
* <font style="color:green">Functionality</font>: add &ldquo;DSP utilization and profiling&rdquo; info for Audio Science adapters<br />
* <font style="color:green">Functionality</font>: add the column &ldquo;EXT DATA&rdquo; to the &ldquo;Edit Log&rdquo; screen in RDLogEdit<br />
* <font style="color:red">Bug fix</font>: fixed a memory fault (crash) in RDLogEdit when dropping a cart that was being used in a log</div>
DKlann
http://wiki.rivendellaudio.org/index.php?title=ChangeSummary&diff=713
ChangeSummary
2023-08-11T15:32:23Z
<p>DKlann: /* 4.0.1 (2023-06-23) */ Correct the version number.</p>
<hr />
<div>__NOTOC__<br />
== Rivendell Change Summary ==<br />
<br />
This page contains version change descriptions in summary form for Rivendell versions released within at least the most recent five years (quite probably longer). Change descriptions are limited (mostly) to user-visible changes.<br />
<br />
Please see the [https://raw.githubusercontent.com/ElvishArtisan/rivendell/master/ChangeLog ChangeLog] and [https://github.com/ElvishArtisan/rivendell/blob/master/NEWS NEWS] files in the [https://github.com/elvishartisan/rivendell source code] for a complete list of changes and bug fixes.<br />
<br />
See the [https://github.com/elvishartisan/rivendell/issues Issues] list for current reported bugs, issues and feature requests.<br />
<br />
=== 4.0.2 (2023-06-23) ===<br />
<br />
* Database verson '''370'''<br />
<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in the voice tracker that caused the waveform displays to be greyed out out immediately after creating a new track marker<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdcatchd(8) that would cause a segfault after reception of a &lsquo;Start Record Deck&rsquo; [&rsquo;RS&rsquo;] RML<br />
* <font style="color:red">Bug fix</font>: Fixed a regression in rdcatch(1) that caused a phantom event entry to appear in the Event List while processing the &lsquo;Start Record Deck&rsquo; [&rsquo;RS&rsquo;] RML<br />
<br />
=== 4.0.1 (2023-06-16) ===<br />
<br />
* Database verson '''370'''<br />
<br />
Rivendell version 4, in development for more than two years, brings many &ldquo;under-the-hood&ldquo; as well as visible changes to the system. This list is incomplete, but attempts to highlight the most important changes. Please edit this page if you see something missing.<br />
<br />
* <font style="color:red">Bug fix</font>: Many bugs have been fixed; many more have likely been introduced<br />
* <font style="color:green">Functionality</font>: switch to graphical programming library [https://www.qt.io/ Qt] version [https://doc.qt.io/qt-5/ 5].<br />
* <font style="color:green">Functionality</font>: new layout of the RDAirPlay window: You may now resize the RDAirPlay window; note however that RDAirPlay has a '''minimum size''' of 1310x870 pixels. RDAirPlay also received a revamped level metering system; the side effect of this is that the meters are now oriented vertically instead of horizontally<br />
* <font style="color:green">Functionality</font>: the minimum supported display (monitor) size is 1680 x 1050 pixels; displays smaller than this may cause problems with some Rivendell applications<br />
* <font style="color:green">Functionality</font>: the &lsquo;Edit Markers&rsquo; window has changed significantly; see the current manual for instructions on setting, changing, and deleting markers from Cuts<br />
* <font style="color:green">Functionality</font>: Rivendell v4.x aims for full compatibility with MySQL 8.0 and earlier versions in their default installation configurations.<br />
* <font style="color:green">Functionality</font>: RDPanel, as well as several windows within RDAdmin now allow for dynamic window sizing<br />
* <font style="color:green">Functionality</font>: Date and time presentation formats can now be customized on the basis of site perferences.<br />
* <font style="color:green">Functionality</font>: It is now possible to disable grid processing on a service-by-service basis, thus permitting a complete schedule to be generated by an external music scheduler. See the &lsquo;Bypassing Grid Processing&rsquo; section in the &lsquo;Generating Logs and Reports with RDLogManager&rsquo; section of the Operation Guide for details.<br />
* <font style="color:orange">Documentation</font>: The documentation has been edited and brought up to date with respect to the current code and functionality of the system<br />
<br />
=== 3.6.7 (2023-01-27) ===<br />
<br />
* Database verson '''347'''<br />
<br />
* <font style="color:red">Bug fix</font>: Fixed broken waveform generation on ARM architectures<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdcatchd(8) that caused record events to be captured with the incorrect sampling rate<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in the podcasting subsystem that broke validation of the &lsquo;direct&rsquo; name space<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdlibrary(1) that caused the field names for the &lsquo;FILENAME&rsquo; and &lsquo;LENGTH&rsquo; fields in the &lsquo;Cart Data Dump (CSV)&rsquo; report to be corrupted<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdservice(8) that could cause dropboxes to be instantiated with invalid segue level values<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdlogmanager(1) that caused the slop factors for inline traffic events to fail to be applied when importing a traffic log<br />
* <font style="color:orange">Documentation</font>: Corrected errors in the WebAPI documentation regarding the argument type of the &lsquo;LINE&lt;n&gt;_TIME_TYPE&rsquo; field in the &lsquo;SaveLog&rsquo; call<br />
<br />
=== 3.6.6 (2022-10-02) ===<br />
<br />
* Database verson '''347'''<br />
<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdrssd(8) that caused a podcast episode to be deleted immediately after being made active if the &lsquo;Air Date/Time&rsquo; was set for the future and &lsquo;Item Expires&rsquo; was set to &lsquo;No&rsquo; in the &lsquo;Editing Item&rsquo; dialog<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdcastmanager(1) that caused incorrect ordering when sorting by the &lsquo;Start&rsquo; and &lsquo;Expiration&rsquo; columns in the &lsquo;Podcast Item List&rsquo; dialog<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in the CDDB parser that caused it to emit an error message when processing a 202 response<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in PyPAD where resolution of datetimes could be incorrect<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdservice(8) that could cause a segfault (crash) when started with a previous instance running<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdlogmanager(1) that could cause a segfault (crash) when merging a log<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdrssd(8) that caused incorrect error data to be logged<br />
* <font style="color:red">Bug fix</font>: Fixed a regression in the Disc Ripper in rdlibrary(1) that caused manual changes to track metadata to be incorrectly applied<br />
* <font style="color:green">Functionality</font>: Added &lsquo;--by-isci&rsquo; and &lsquo;--dump-isci-xref&rsquo; options to rdimport(1) and modified rdimport(1) to allow the &lsquo;--by-isci&rsquo; option to take a service name option<br />
* <font style="color:green">Functionality</font>: Added a &lsquo;StayOnTop=&rsquo; directive to the &lsquo;[SoftKeys]&rsquo; section of rd.conf(5)<br />
* <font style="color:green">Functionality</font>: Changed the default &lsquo;--process-interval=&rsquo; value from 60 seconds to 30 seconds in rdrssd(8)<br />
* <font style="color:green">Functionality</font>: Added &lsquo;RDListView::DateTimeSort&rsquo; to the &lsquo;RDListView::SortType enumeration<br />
* <font style="color:green">Functionality</font>: Added explicit processing for 201, 230, 401, 402, 403, 409, 431, 432, 433, 434, 501, 502, 503 and 530 returns in the CDDB parser<br />
* <font style="color:green">Functionality</font>: Added an Online Feed Report to rdcastmanager(1)<br />
* <font style="color:green">Functionality</font>: Modified the full disc ripper and the per-track ripper in rdlibrary(1) to use CD-Text<br />
* <font style="color:green">Functionality</font>: Renamed the &lsquo;CD Metadata Source&rsquo; control in rdlibrary(1) to use &lsquo;CDDB&rsquo; instead of &lsquo;FreeDB&rsquo; when configuring CDDB lookups<br />
* <font style="color:green">Functionality</font>: Added support for a &lsquo;SuppressLinkParameterInheritance=&rsquo; directive in the &lsquo;[Hacks]&rsquo; section of rd.conf(5)<br />
* <font style="color:blue">Code (internal) change</font>: Added code to the podcasting subsystem to log extended curl(1) information to syslog<br />
<br />
=== 3.6.5 (2022-03-18) ===<br />
<br />
* Database verson '''347'''<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdimport(1) that could create duplicate Scheduler Code entries when using the &lsquo;--to-cart&rsquo; and &lsquo;--add-scheduler-code&rsquo; switches simultaneously<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in the &lsquo;rdxport&rsquo; service that caused the &lsquo;ListLog&rsquo; WebAPI call to return null values in the &lsquo;description&rsquo;, &lsquo;isrc&rsquo;, &lsquo;isci&rsquo;, &lsquo;recordingMbId&rsquo; and &lsquo;releaseMbId&rsquo; fields<br />
* <font style="color:green">Functionality</font>: Added a &lsquo;direct&rsquo; namespace to the &lsquo;Apple iTunes&rsquo; and &lsquo;Apple iTunes + Superfeed&rsquo; RSS schemas<br />
<br />
<br />
=== 3.6.4 (2022-02-22) ===<br />
<br />
Note: version 3.6.3 was tagged, but not released.<br />
<br />
* Database verson '''347'''<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdlogmanager(1) that caused leading event attributes to fail to be preserved when suppressing Music of Traffic import markers<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in the rdxport &lsquo;Import&rsquo; service that could result in incorrect end marker placement when processing variable bit rate (VBR) MPEG files<br />
* <font style="color:red">Bug fix</font>: Fixed an arithmetic overflow bug in &lsquo;RDWaveFile&rsquo; that could cause the play length of MPEG-encoded to be incorrectly calculated<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdimport(1) that caused premature validation of metadata<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdxport(8) that caused the &lsquo;SaveLog&rsquo; WebAPI call to fail if the target log didn&rsquo;t exist<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rddbmgr(8) that could cause the 346=&gt;347 schema conversion to hang indefinitely with databases containing large cart libraries<br />
* <font style="color:green">Functionality</font>: Added a &lsquo;SuppressMusicImportLinks=&rsquo; directive to the [Hacks] section of rd.conf(5)<br />
* <font style="color:green">Functionality</font>: Added support for [NowGroups] and [NextGroups] sections in PyPAD script configurations<br />
* <font style="color:green">Functionality</font>: Deprecated use of the &lsquo;Transmit Now & Next data&rsquo; checkbox in the &lsquo;Group&rsquo; dialog in rdadmin(1)<br />
* <font style="color:green">Functionality</font>: Added a &lsquo;SaveWebgetFilesDirectory=&rsquo; directive to rd.conf(5)<br />
* <font style="color:green">Functionality</font>: Modified the mode of files generated by the rd-conf(5) &lsquo;SaveWebgetFilesDirectory=&rsquo; configuration directive from 0440 to 0664<br />
* <font style="color:green">Functionality</font>: Added a &lsquo;linkLength&rsquo; field and a &lsquo;graceTime&rsquo; field to the return XML for the &lsquo;ListLog&rsquo; WebAPI call<br />
* <font style="color:green">Functionality</font>: Added a &lsquo;Log Listing (CSV)&rsquo; report to rdlogedit(1)<br />
* <font style="color:green">Functionality</font>: Added a &lsquo;--print-progress&rsquo; switch to rddbmgr(8)<br />
* <font style="color:blue">Code (internal) change</font>: Overhauled the code for reading MPEG frame headers in &lsquo;RDWaveFile&rsquo;<br />
* <font style="color:blue">Code (internal) change</font>: Increased the import process timeout for the WebGet service to 1200 seconds<br />
<br />
<br />
=== 3.6.2 (2021-07-30) ===<br />
* Database verson '''347'''<br />
* <font style="color:green">Functionality</font>: Added support for system dark themes in RDAirplay<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdlogedit(1) that could cause a crash when attempting to play a non-audio event in the &lsquo;Voice Tracker&rsquo; dialog<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdimport(1) that caused the cart title uniqueness check to be applied to the incorrect string when the &lsquo;--set-string-title=&rsquo; switch was used<br />
<br />
<br />
=== 3.6.1 (2021-06-06) ===<br />
* Database verson '''347'''<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdimport(1) that could cause a crash when the &lsquo;--fix-broken-formats&rsquo; switch is used<br />
* <font style="color:green">Functionality</font>: Added syslog DEBUG messages around the start/stop of ephemeral processes in rdservice(8)<br />
* <font style="color:green">Functionality</font>: Added an &lsquo;--initial-maintenance&rsquo; switch to rdservice(8)<br />
* <font style="color:green">Functionality</font>: Added an &lsquo;--force-system-maintenance&rsquo; switch to rdservice(8)<br />
* <font style="color:green">Functionality</font>: Modified rdmaint(8) to enable it to operate even when the Rivendell services are not running<br />
<br />
=== 3.6.0 (2021-05-15) ===<br />
* Database verson '''347'''<br />
* <font style="color:red">Bug fix</font>: Fixed title separation in rdlogmanager(1) scheduler<br />
* <font style="color:red">Bug fix</font>: Fixed bug in library code ''lib/rdwavefile.cpp'' that copied CartChunk Cut ID past the end of the first "NULL" character<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdairplay(1) that caused the Talk Timer to fail to be populated when adding new carts to a log<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in the Cart Selector Dialog that made it impossible to enter an apostrophe character in the filter search line<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdimport(1) where the title of an existing cart would be overwritten with a default title even when no title was found in the file metadata<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in &lsquo;RDFlacDecode&rsquo; that caused conversion of files with names containing non-ASCII characters to fail<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdadmin(1) where clicking the &lsquo;OK&rsquo; button in the &lsquo;Edit Switcher&rsquo; dialog would cause an error dialog to appear with a &lsquo;primary serial device not active&rsquo; warning. The following devices are affected: &lsquo;Local GPIO&rsquo;, &lsquo;Local Audio Adapter&rsquo;, &lsquo;Logitek vGuest&rsquo;, &lsquo;Livewire LWRP Audio&rsquo;, and &lsquo;Kernel GPIO&rsquo;<br />
* <font style="color:green">Functionality</font>: Modified rdimport(1) and the Webget service so as to send e-mail reports to the address of the current Rivendell user in addition to the group&rsquo;s Notification E-Mail Address<br />
* <font style="color:green">Functionality</font>: Added a &lsquo;STACK_LINES.TITLE&rsquo; field to the database<br />
* <font style="color:green">Functionality</font>: Added the value of the detected CartChunk CutID to the error message generated when rejecting said CutID as invalid when using the &lsquo;--use-cartchunk-cutid&rsquo; switch in rdimport(1)<br />
* <font style="color:green">Functionality</font>: Added code to print the value of the detected CartChunk CutID when using both the &lsquo;--use-cartchunk-cutid&rsquo; and &lsquo;--verbose&rsquo; flags in rdimport(1)<br />
* <font style="color:green">Functionality</font>: Created pypad_ino713_tcp based upon pypad_ino713, converting from UDP to TCP. Added an adjustable delay to account for broadcast air delays<br />
* <font style="color:green">Functionality</font>: Created pypad_nautel based upon pypad_ino713_tcp, including RDS parameters from documentation. Includes delay as above<br />
* <font style="color:green">Functionality</font>: Added a new &lsquo;RadioTraffic.com Traffic Reconciliation&rsquo; report. Renamed the existing &lsquo;RadioTraffic.com Traffic Reconciliation&rsquo; to &lsquo;Original RadioTraffic.com Traffic Reconciliation (DEPRECATED)&rsquo;<br />
* <font style="color:green">Functionality</font>: Changed the way in which the VU Meter UDP port is chosen. One can now specify the base port number and the maximum number of UDP ports to consider when caed(8) sets up the VU meter port<br />
* <font style="color:orange">Documentation</font>: Documented the &lsquo;MeterPortBaseNumber=&rsquo; and &lsquo;MeterPointRange=&rsquo; directives in the rd.conf(5) man page<br />
<br />
=== 3.5.0 (2020-12-12) ===<br />
* Database verson '''346'''<br />
* <font style="color:red">Bug fix</font>: Corrected the column settings in RDAdmin > Manage Hosts > [host] > Dropboxes<br />
* <font style="color:red">Bug fix</font>: Fixed regression with "Scheduler Code:" label overlapping "Group" combobox in rdlibrary(1)<br />
* <font style="color:red">Bug fix</font>: Fixed several bugs in rdadmin(1) that messed with passwords, user settings, and other important settings<br />
* <font style="color:red">Bug fix</font>: Fixed several bugs in rdlogmanager(1) that caused all kinds of mischief<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdairplay(1) where copying a log event using the &lsquo;Copy&rsquo; button would result in the new event always getting a &lsquo;PLAY&rsquo; transition<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rddbmgr(8) that could cause database corruption problems<br />
* <font style="color:red">Bug fix</font>: Fixed bugs in rdimport(1) that caused incorrect exit codes to be emitted when a non-existent group was specified, and that caused generation of double error messages when processing invalid audio files<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdmonitor(1) that caused false indications of a failed audio store when used with autofs(8)<br />
* <font style="color:green">Functionality</font>: Major overhaul of Rivendell&rsquo;s podcast handling features; see the ChangeLog for all the details<br />
* <font style="color:green">Functionality</font>: Modified the GVC7000 switcher driver to insert 50 mS pauses between protocol commands<br />
* <font style="color:green">Functionality</font>: Allow RN Macro to run when Rivendell daemons running as non-root<br />
* <font style="color:green">Functionality</font>: Many changes to rdadmin(1), including:<br />
:* Added whitespace to the set of banned characters for service names<br />
:* Added a &lsquo;SSH Ident. File&rsquo; control to the &lsquo;Host&rsquo; dialog<br />
:* Added an &lsquo;Inline Traffic Inheritance&rsquo; control to the &lsquo;Edit Service&rsquo; dialog<br />
:* Added type icons to the &lsquo;Imported Events&rsquo; list in the &lsquo;Test Import&rsquo; dialog<br />
:* Renamed the &lsquo;Inline Traffic Inheritance&rsquo; control to &lsquo;Inline Traffic Start/Length&rsquo; and moved it to the &lsquo;Music Data Import&rsquo; section of the &lsquo;Edit Service&rsquo; dialog<br />
:* Added an &lsquo;Encoder Profiles&rsquo; dialog<br />
:* Renamed the &lsquo;Note Cart String&rsquo; controls to &lsquo;Insert Marker String&rsquo; in the &lsquo;Edit Service dialog<br />
:* Added an &lsquo;Origin E-Mail Address&rsquo; control to the &lsquo;System-Wide Settings&rsquo; dialog<br />
:* Added a &lsquo;Notification E-Mail Addresses&rsquo; control to the &lsquo;Group&rsquo; dialog<br />
:* Added a &lsquo;Send e-mail reports&rsquo; checkbox to the &lsquo;Dropbox Configuration&rsquo; dialog<br />
:* Added &lsquo;E-Mail Address&rsquo;, &lsquo;Phone Number&rsquo; and &lsquo;Local Auth&rsquo; columns to the &lsquo;Users&rsquo; list in the &lsquo;Rivendell User List&rsquo; dialog<br />
:* Added an &lsquo;Administer RSS Feeds&rsquo; checkbox to the &lsquo;Administrative Rights&rsquo; section of the &lsquo;User&rsquo; dialog<br />
:* Added a deprecation warning for the &lsquo;Allow Duplicate Cart Titles&rsquo; and &lsquo;Auto-Correct Duplicate Cart Titles&rsquo; checkboxes on the &lsquo;System-Wide Settings&rsquo; dialog<br />
* <font style="color:green">Functionality</font>: Added support for FTPS protocol for uploading, downloading, and Feed management<br />
* <font style="color:green">Functionality</font>: Significant update to the Rivendell Web interfaces (Web API, WebGet service, rivwebcapi API, etc.)<br />
* <font style="color:green">Functionality</font>: Added &lsquo;--scheduler-code=&rsquo; switch to rdexport(1)<br />
* <font style="color:green">Functionality</font>: Added generation of an &lsquo;RDLogManager Error Report&rsquo; when errors are detected when importing an external scheduler file in rdlogmanager(1)<br />
* <font style="color:green">Functionality</font>: Restored operation of Label/Note carts in rdlogmanager(1)<br />
* <font style="color:green">Functionality</font>: Updated rdservice(8) to use standard exit code defines<br />
* <font style="color:green">Functionality</font>: Implemented the &lsquo;--verbose&rsquo; switch for rdmaint(8)<br />
* <font style="color:green">Functionality</font>: Added a sample Fail2Ban jail filter for the WebAPI in &lsquo;conf/rivendell-webapi.conf&rsquo;<br />
* <font style="color:green">Functionality</font>: Added command line options &lsquo;--output-pattern&rsquo;, &lsquo;--ticket=&rsquo;, &lsquo;--send-mail&rsquo; and &lsquo;--mail-per-file&rsquo; to rdimport(1)<br />
* <font style="color:green">Functionality</font>: Added the name of the import file to schedule import failure reports<br />
* <font style="color:orange">Documentation</font>: Documented the &lsquo;%%&rsquo; filepath wildcard in the Operations Guide<br />
* <font style="color:orange">Documentation</font>: Added an &lsquo;RDCastManager&rsquo; chapter to the Operations Guide<br />
* <font style="color:orange">Documentation</font>: Revised the &lsquo;Managing Services&rsquo; section of the Operations Guide<br />
* <font style="color:orange">Documentation</font>: Rewrote the &lsquo;Webget&rsquo; chapter of the Operations Guide to conform to changes in Webget<br />
* <font style="color:orange">Documentation</font>: Added a &lsquo;Configuring Webget&rsquo; section to the Operations Guide<br />
* <font style="color:orange">Documentation</font>: Removed the &lsquo;Cart Data Dump (fixed width)&rsquo; from the Operations Guide<br />
* <font style="color:orange">Documentation</font>: Documented user-facing changes to the &lsquo;System-Wide Settings&rsquo; dialog, the &lsquo;Rivendell Group List&rsquo; and the &lsquo;Group&rsquo; dialogs in rdadmin(1) in the Operations Guide<br />
* <font style="color:orange">Documentation</font>: Documented the &lsquo;Send e-mail reports&rsquo; checkbox in the &lsquo;Dropbox Configuration&rsquo; dialog in rdadmin(1) in the Operations Guide<br />
* <font style="color:blue">Code (internal) change</font>: Prepended &lsquo;RD_&rsquo; to the names of all common Javascript functions in &lsquo;web/common/utils.js&rsquo;<br />
* <font style="color:blue">Code (internal) change</font>: Added a &lsquo;webget&rsquo; subpackage to the &lsquo;make rpm&rsquo; target<br />
* <font style="color:blue">Code (internal) change</font>: Refactored the &lsquo;Run Script&rsquo; [&rsquo;RN&rsquo;] RML to invoke scripts via the system shell, this change also removed the dependency on runuser(1)<br />
<br />
=== 3.4.1 (2020-07-21) ===<br />
* Database verson '''317'''<br />
<br />
* <font style="color:green">Functionality</font>: Added a &lsquo;Results Report&rsquo; report in rdadmin(1)<br />
* <font style="color:green">Functionality</font>: Removed the checkbox from the &lsquo;Delete&rsquo; right-click menu item in the &lsquo;Edit Event&rsquo; dialog in rdlogmanager(1)<br />
* <font style="color:green">Functionality</font>: Modified &lsquo;RDWaveFile&rsquo; to work around known fencepost errors in WAV files generated by "Sonic Studio soundBlade" by "PME Mastering, Inc."<br />
* <font style="color:green">Functionality</font>: Modified the &lsquo;Edit Event&rsquo; dialog in rdlogmanager(1) to show &lsquo;[auto]&rsquo; as the transition type for the leading event in Pre-/Post-Import lists<br />
<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdlibrary(1) that caused cuts to be incorrectly sorted when scheduled &lsquo;By Specified Order&rsquo;<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in the Rivendell command line apps that caused value-only arguments containing &lsquo;=&rsquo; characters to be incorrectly parsed<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in the Podcast Manager, Library Exporter and Web API that caused an error when processing multipart-mime submissions containing &lsquo;=&rsquo; characters<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdairplay(1) where attempting to audition an audio cart with a disabled cue output would crash the application<br />
* <font style="color:red">Bug fix</font>: Fixed a regression in rdairplay(1) that caused the &lsquo;Forced Segue&rsquo; setting in rdadmin(1) to be ignored when executing an event with a hard start attribute<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdairplay(1) where a paused event could not be removed by dropping the empty cart on it<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdairplay(1) that cause incorrect pie timer indications after adding or deleting events to a running log<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdlibrary(1) that would cause a crash when attempting to delete a range of cuts, one of which was in the clipboard<br />
* <font style="color:red">Bug fix</font>: Fixed a math bug in rdairplay(1) that caused the estimated stop-down times in the post point widget to be incorrect after adding or removing events from a running log<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdadmin(1) that made it impossible to enter useful strings in the &lsquo;WaveForm Caption&rsquo; control on the &lsquo;Edit RDLogEdit&rsquo; dialog<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in RDRenderer that caused segue transitions to be rendered without regard to the &lsquo;No Fade on Segue Out&rsquo; checkbox in the &lsquo;Edit Audio&rsquo; dialog<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in ripcd(8) that caused connections to ModbusTCP devices to fail to be properly restored by the connection watchdog<br />
* <font style="color:red">Bug fix</font>: Fixed a regression in the &lsquo;Edit Event&rsquo; dialog in rdlogmanager(1) that caused the first cart transition type to be incorrect when the &lsquo;Pre-Import Carts&rsquo; list was populated<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in the &lsquo;Add Next&rsquo; [&rsquo;PX&rsquo;] RML that failed to return an error when an invalid offset value was supplied<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in the &lsquo;Add Next&rsquo; [&rsquo;PX&rsquo;] RML that failed to honor the &lsquo;Default Trans. Type&rsquo; setting in the &lsquo;Configure RDAirPlay&rsquo; dialog in rdadmin(1)<br />
<br />
=== 3.4.0 (2020-05-19) ===<br />
* Database verson '''317'''<br />
* <font style="color:red">Bug fix</font>: Fixed a regression in rdairplay(1) that caused two events to be started by a single spacebar tap if a SoundPanel event had been played previously<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdlogmanager(1) that caused the initial event in an imported set to fail receive the proper time and transition type if the &lsquo;Include Import Markers in Finished Logs&rsquo; checkbox in rdadmin(1) had not been ticked<br />
* <font style="color:red">Bug fix</font>: Fixed a regression in rdexport(1) that caused exported file names to be constructed improperly<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdlogmanager(1) that caused &lsquo;Make Post Point&rsquo; label to be displayed without last &lsquo;t&rsquo;<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdairplay(1) where timer was not set properly when crossing midnight<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in the &lsquo;List GPIs&rsquo; dialog in rdadmin(1) that prevented changes in GPI assignments from being propagated to the underlying device<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in the &lsquo;Software Authority&rsquo; driver that caused autodetection of the number of GPIOs in a router to be unreliable<br />
* <font style="color:red">Bug fix</font>: Fixed a regression in &lsquo;RDEventLine&rsquo; that caused the &lsquo;Append Log&rsquo; [&rsquo;AL&rsquo;] RML to append a copy of the currently loaded log instead of the one specified in the RML command<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdlogedit(1) that caused garbled text to appear when &lsquo;Start Immediately&rsquo; was selected in the &lsquo;Edit Log Entry&rsquo; dialog box<br />
* <font style="color:red">Bug fix</font>: Fixed a regression that broke the ability to scroll through Sound Panel panels by means of the mouse wheel<br />
<br />
* <font style="color:green">Functionality</font>: Modified rdairplay(1) to always scroll log to the top when using the hour selector<br />
* <font style="color:green">Functionality</font>: Modified rdlogmanager(1) to disable merge buttons if the selected log does not contain any import links<br />
* <font style="color:green">Functionality</font>: Modified rdadmin(1) Edit Service dialog to display built-in traffic and music import template values<br />
* <font style="color:green">Functionality</font>: Added "Copy To Custom" buttons to rdadmin(1) Edit Service dialog<br />
* <font style="color:green">Functionality</font>: Changed the layout of the &lsquo;Editing Event&rsquo; dialog in rdlogmanager<br />
<br />
* <font style="color:green">Functionality</font>: Removed the &lsquo;Post Point&rsquo; checkbox from the &lsquo;Editing Event&rsquo; dialog in rdlogmanager(1)<br />
* <font style="color:green">Functionality</font>: Renamed the &lsquo;REMARKS&rsquo; field to &lsquo;USER NOTES&rsquo; in the &lsquo;Editing Event&rsquo; and the &lsquo;Edit Clock&rsquo; dialogs in rdlogmanager(1)<br />
* <font style="color:green">Functionality</font>: Added a &lsquo;Trans&rsquo; column to the event list in the &lsquo;Edit Clock&rsquo; and the &lsquo;List Events&rsquo; dialogs in rdlogmanager(1)<br />
<br />
=== 3.3.0 (2020-03-16) ===<br />
* Database verson '''314'''<br />
* <font style="color:red">Bug fix</font>: Fixed regressions in the following switcher drivers that could cause deadlocks and intermittent operation<br />
:* BroadcastTools SS16.4<br />
:* BroadcastTools SS 4.2<br />
:* BroadcastTools SS4.4<br />
:* BroadcastTools SS 8.2<br />
:* BroadcastTools ACS8.2<br />
:* BroadcastTools ADMS 44.22<br />
:* BroadcastTools GPI-16<br />
:* BroadcastTools SRC-16<br />
:* BroadcastTools SRC-8 III<br />
:* BroadcastTools SS 4.1 MLR<br />
* <font style="color:red">Bug fix</font>: Fixed a regression in the implementation of the &lsquo;Set Serial Trap&rsquo; [&lsquo;SI&rsquo;] RML that could cause deadlocks and intermittent operation<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdairplay(1) that could cause random segfaults when updating the Label Widget<br />
* <font style="color:red">Bug fix</font>: Fixed a bug with the &lsquo;%y&rsquo; metadata wildcard where garbage would be returned if a valid year had not been set<br />
* <font style="color:red">Bug fix</font>: Fixed a regression in rdlogmanager(1) that caused trailer whitespace to be generated in the &lsquo;EXT_DATA&rsquo;, &lsquo;EXT_EVENT&rsquo;, &lsquo;EXT_ANNC_TYPE&rsquo; and &lsquo;EXT_CART_NAME&rsquo; log fields when importing from a CounterPoint format log<br />
* <font style="color:red">Bug fix</font>: Fixed the layout of the &lsquo;Matching Carts&rsquo; field in rdlibrary(1)&rsquo;s main window when Realtime Filtering is disabled<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdairplay(1) that would cause a hard-timed log event with a &lsquo;wait&rsquo; parameter set to attempt to play the event twice<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rddbmgr(8) that threw a SQL error when attempting to modify a DB containing tables set to use character set UTF-8 to schema 297<br />
* <font style="color:red">Bug fix</font>: Fixed a race in ripcd(8) that caused arguments to the &lsquo;Run Shell Command&rsquo; [&lsquo;RN&rsquo;] macro to be corrupted<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in the &lsquo;Edit Event&rsquo; dialog in rdlogmanager(1) that caused the Transition Type dropdown to be greyed-out when the &lsquo;IMPORT&rsquo; controls were set to use the built-in music scheduler<br />
* <font style="color:green">Functionality</font>: Added a &lsquo;delta-seconds&rsquo; modifier to Filepath Wildcards to enable positive and negative time offsets<br />
* <font style="color:green">Functionality</font>: Removed support for CD-TEXT from the CD rippers<br />
* <font style="color:green">Functionality</font>: Added support for &lsquo;MusicBrainz&rsquo; CD metadata lookup<br />
* <font style="color:green">Functionality</font>: Added a &lsquo;Web Browser&rsquo; control to the &lsquo;Edit Host&rsquo; dialog in rdadmin(1)<br />
* <font style="color:green">Functionality</font>: Added support for displaying cover art in the MusicBrainz release chooser<br />
* <font style="color:green">Functionality</font>: Added &lsquo;%wm&rsquo; [&lsquo;MusicBrainz Recording ID&rsquo;] and &lsquo;%wr&rsquo; [&lsquo;MusicBrainz Release ID&rsquo;] metadata wildcards<br />
* <font style="color:green">Functionality</font>: Implemented the &lsquo;%wm&rsquo; [&lsquo;MusicBrainz Recording ID&rsquo;] and &lsquo;%wr&rsquo; [&lsquo;MusicBrainz Release ID&rsquo;] metadata wildcards for PyPAD<br />
* <font style="color:green">Functionality</font>: Added support for the &lsquo;%wi&rsquo;, &lsquo;%wm&rsquo; and &lsquo;%wr&rsquo; wildcards to the &lsquo;--metadata-pattern=&rsquo; switch in rdimport(1)<br />
* <font style="color:green">Functionality</font>: Added &lsquo;--set-string-isrc&rsquo;, &lsquo;--set-string-recording-mbid&rsquo; and &lsquo;--set-string-release-mbid&rsquo; switches to rdimport(1)<br />
* <font style="color:green">Functionality</font>: Added support for the &lsquo;%wi&rsquo;, &lsquo;%wm&rsquo; and &lsquo;%wr&rsquo; wildcards to the &lsquo;--metadata-pattern=&rsquo; switch in rdexport(1)<br />
* <font style="color:green">Functionality</font>: Added a &lsquo;%wc&rsquo; [&lsquo;Industry Standard Commercial Identification (ISCI) Code&rsquo;] metadata wildcard<br />
* <font style="color:green">Functionality</font>: Implemented the &lsquo;%wc&rsquo; metadata wildcard for PyPAD<br />
* <font style="color:green">Functionality</font>: Added support for the &lsquo;%wc&rsquo; wildcards to the &lsquo;--metadata-pattern=&rsquo; switch in rdimport(1)<br />
* <font style="color:green">Functionality</font>: Added &lsquo;--set-string-isci&rsquo; switch to rdimport(1)<br />
* <font style="color:green">Functionality</font>: Added support for the &lsquo;%wc&rsquo; wildcard to the &lsquo;--metadata-pattern=&rsquo; switch in rdexport(1)<br />
* <font style="color:green">Functionality</font>: Removed the &lsquo;RDLabel&rsquo; widget<br />
* <font style="color:green">Functionality</font>: Added a &lsquo;Disconnect All Jack Ports&rsquo; [&lsquo;JZ&rsquo;] RML<br />
* <font style="color:green">Functionality</font>: Added a &lsquo;CounterPoint Traffic Reconciliation v2&rsquo; report<br />
<br />
=== 3.2.1 (2020-01-24) ===<br />
* Database verson '''311'''<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdcatch(1) that threw a SQL error when clicking 'OK' on the &lsquo;Edit Cart Event&rsquo; dialog<br />
* <font style="color:red">Bug fix</font>: Fixed a regression in rdimport(1) that caused null characters to be written to cart metadata fields when importing files containing an &lsquo;AIR1&rsquo; RIFF chunk<br />
* <font style="color:red">Bug fix</font>: Fixed a regression in rdcatch(1) that caused the &lsquo;Source&rsquo; dropdown in the &lsquo;Edit Recording&rsquo; dialog to fail to be populated properly<br />
* <font style="color:red">Bug fix</font>: Fixed a regression in the cart selector dialog that caused default focus to be lost on the &lsquo;Filter&rsquo; control after second and subsequent invocations<br />
* <font style="color:red">Bug fix</font>: Fixed a regression in rdcatchd(8) that broke audio metering<br />
* <font style="color:red">Bug fix</font>: Fixed a regression in rdcatchd(8) that could cause download events to hang in an active state<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdcatch(1) that caused DOW flags to fail to be updated correctly on the event list after making a change<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdcatchd(8) that failed to send a MODIFY notification at the end of a Record or Download event<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdconvert that caused a segfault at startup<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdexport(1) that caused output filenames containing multi-byte UTF-8 characters to be corrupt<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdgpimon(1) that caused GPIO cart displays to fail to accurately reflect current state<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdgpimon(1) that caused incorrect state indications to be displayed after switching to a different page<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdimport(1) that caused non-Latin1 characters to be corrupted when using standard input<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdimport(1) that caused UTF-8 multibyte characters in filenames to be corrupted<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdlogmanager(1) that caused spurious log events to be inserted when generating a log<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in ripcd(8) that caused input and output counts to be calculated incorrectly for Software Authority protocol devices containing holes in the input and/or output lists<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in the &lsquo;pypad-shoutcast1.py&rsquo; script that threw an exception when processing PAD containing multi-type UTF-8 characters<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in the &lsquo;pypad_xds.py&rsquo; PyPAD script that could cause it to emit duplicate CIC updates<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in the &lsquo;rivwebcapi&rsquo; validate_tm() function that caused dates containing &lsquo;29 February&rsquo; to always fail regardless of leap-year validity<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in the rdxport service that could cause MODIFY notifications to fail to be sent by the &lsquo;SaveLog&rsquo; WebAPI call<br />
* <font style="color:red">Bug fix</font>: Fixed a regression in rdadmin(1) that caused controls to be hidden in the &lsquo;Edit Report&rsquo; dialog<br />
* <font style="color:red">Bug fix</font>: Fixed a regression in rdlogmanager(1) that caused incorrect logged start times to be generated for imported events<br />
* <font style="color:red">Bug fix</font>: Fixed a regression in the rdxport service that caused the ListCuts WebAPI call to return corrupt data<br />
* <font style="color:red">Bug fix</font>: Fixed a regression in the Web API that caused the and/or corrupt in served XML documents<br />
* <font style="color:green">Functionality</font>: Implemented support for non-realtime library filtering in the &lsquo;Editing Event&rsquo; dialog in rdlogmanager(1)<br />
* <font style="color:green">Functionality</font>: Added a &lsquo;Show Start Time As&rsquo; control to the &lsquo;Edit Log&rsquo; dialog in rdlogedit(1)<br />
* <font style="color:green">Functionality</font>: Made the rdlogedit(1) main window and &lsquo;Edit Log&rsquo; dialog window sizes persistent<br />
* <font style="color:green">Functionality</font>: Added a work-around in the &lsquo;PyPAD.Receiver().__openDb()&rsquo; method to work with versions of MySQLdb that do not support the &lsquo;password=&rsquo; parameter in &lsquo;MySQLdb.connect()&rsquo;<br />
* <font style="color:green">Functionality</font>: Added &lsquo;Repetitions=&rsquo; and &lsquo;RepetitionDelay=&rsquo; directive to the configuration of the &lsquo;pypad_xds.py&rsquo; PyPAD script<br />
* <font style="color:green">Functionality</font>: Added &lsquo;Username=&rsquo; and &lsquo;Password=&rsquo; directives to the &lsquo;pypad_httpget.py&rsquo; script for use for HTTP Basic Authentication<br />
* <font style="color:green">Functionality</font>: Added the ability to view a report at time of generation in rdlogmanager(1)<br />
* <font style="color:green">Functionality</font>: Adjusted the position of the &lsquo;Matching Carts&rsquo; readout on the main window of rdlibrary(1)<br />
* <font style="color:green">Functionality</font>: Changed the &lsquo;Time&rsquo; column in the &lsquo;Full Log Widget&rsquo; in rdairplay(1) to &lsquo;Sch. Time&rsquo;<br />
* <font style="color:green">Functionality</font>: Implemented a work-around for importing CartChunk data containing a buggy ENCO implemention of the &lsquo;AUD&rsquo; CartChunk timer<br />
* <font style="color:green">Functionality</font>: Modified the Full Log widget in rdairplay(1) to display logged start times even when the referenced cart does not exist<br />
* <font style="color:green">Functionality</font>: Tweaked the &lsquo;LogLineBox::mouseMoveEvent()&rsquo; method in rdairplay(1) to require a cursor movement of at least 20 pixels before generating a cart drag<br />
<br />
=== 3.2.0 (2019-10-31) ===<br />
* Database verson '''311'''<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rddbmgr(8) that caused a segfault when processing a SQL error<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdimport(1) that caused it to throw an exception when given a &lsquo;--metadata-pattern&rsquo; of less than three characters<br />
* <font style="color:red">Bug fix</font>: Fixed a regression in rdimport(1) that caused a segfault when invoked with the &lsquo;--metadata-pattern&rsquo; and &lsquo;--log-syslog&rsquo; switches<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdairplay(1) that caused space bar presses to start the next event in the Main Log even when &lsquo;Space Bar Action&rsquo; was set to &lsquo;None&rsquo;<br />
* <font style="color:red">Bug fix</font>: Fixed bugs in 'RDWaveFile' that caused strings of null characters to be written into unfilled CartChunk string fields<br />
* <font style="color:red">Bug fix</font>: Fixed a regression in 'rdxport.cgi' that caused a check of the Rivendell services to be triggered each time a WebAPI function was invoked<br />
* <font style="color:red">Bug fix</font>: Fixed a regression in rdsoftkeys(1) that threw a segfault at startup<br />
* <font style="color:green">Functionality</font>: Added the ability to configure the caption displayed for the first and third voicetrack waveforms in the Voicetracker dialog in rdlogedit(1)<br />
* <font style="color:green">Functionality</font>: Reworked the font management system to permit the fonts used in the UI to be specified in rd.conf(5).<br />
* <font style="color:green">Functionality</font>: Added support for posting podcast content via SFTP<br />
* <font style="color:orange">Documentation</font>: Added manual pages for rd.conf(5) and rdsoftkeys(1)<br />
<br />
=== 3.1.0 (2019-09-19) ===<br />
* Database verson '''310'''<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdairplay(1) and rdvairplayd(8) where only the first log machine set to &lsquo;load specified log&rsquo; would do so<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdlogedit(1) that caused hard start log items to have the Hour field doubled<br />
* <font style="color:red">Bug fix</font>: Refactored the Python &lsquo;pypad.Update.shouldBeProcessed()&rsquo; method to work correctly when using <tt>try:</tt> blocks in a PyPAD script<br />
* <font style="color:red">Bug fix</font>: Refactored the PyPAD scripts to route updates properly in accordance with log directives in their configuration file<br />
* <font style="color:red">Bug fix</font>: Fixed a bug that broke dropbox logging to individual files<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in caed(8) that broke timescaling support<br />
* <font style="color:red">Bug fix</font>: Fixed bugs in rdlibrary(1) that broke CD ripping<br />
* <font style="color:green">Functionality</font>: Refactored rdalsaconfig(1) to be more robust and intuitive<br />
* <font style="color:green">Functionality</font>: Added a &lsquo;pypad_httpget.py&rsquo; PyPAD script<br />
* <font style="color:green">Functionality</font>: Updated CDDB code to use protocol level 6 (UTF-8 enabled)<br />
* <font style="color:green">Functionality</font>: Added an &lsquo;%l&rsquo; wildcard to Filepath Wildcards for &lsquo;unpadded month&rsquo;<br />
=== 3.0.3 (2019-08-05) ===<br />
* Database verson '''308'''<br />
* <font style="color:red">Bug fix</font>: Fixed a regression in ripcd(8) that broke the 'Connect Jack Ports' ['JC'] and 'Disconnect Jack Ports' ['JD'] RMLs<br />
=== 3.0.2 (2019-07-31) ===<br />
* Database verson '''308'''<br />
* <font style="color:red">Bug fix</font>: Fixed a problem with the Local Audio Adapter switcher driver that caused incorrect operation with the 'Switch Add' ['SA'], 'Switch Remove' ['SR'] and 'Switch Take' ['ST'] RMLs<br />
* <font style="color:red">Bug fix</font>: Fixed a regression in rdlibrary(1) that caused macro carts entries to turn red after being viewed<br />
* <font style="color:red">Bug fix</font>: Fixed regressions that made operations with serial devices unreliable<br />
* <font style="color:green">Functionality</font>: Added support for switchers using the Grass Valley 7000 series protocol<br />
=== 3.0.1 (2019-07-16) ===<br />
* Database verson '''308'''<br />
* <font style="color:red">Bug fix</font>: Rivendell is now Unicode UTF-8 clean<br />
* <font style="color:red">Bug fix</font>: Qt4 is now used throughout Rivendell instead of Qt3<br />
* <font style="color:green">Functionality</font>: The Rivendell Loadable Modules system for processing PAD data has been completely replaced by PyPAD, allowing PAD processing plug-ins to be written in the popular Python scripting langauge. Backward compatible replacement scripts for many of the RLM plug-ins supplied in Rivendell v2.x are included<br />
* <font style="color:green">Functionality</font>: Added a compatibility library to facilitate the use of the Rivendell Web API in external applications<br />
* <font style="color:green">Functionality</font>: A system of virtual log machines has been added, allowing play-out of up to 23 logs simultaneously<br />
* <font style="color:green">Functionality</font>: Rivendell is now fully systemd compatibile<br />
* <font style="color:green">Functionality</font>: The Windows ports of rdlogedit(1) and rdlogmanager(1) have been removed<br />
* <font style="color:orange">Documentation</font>: The Rivendell Operations and Administration Guide has been updated and enhanced with more details about running a Rivendell system<br />
* <font style="color:orange">Documentation</font>: New manual pages have been added for Rivendell command that previously did not have them<br />
See [http://caspian.paravelsystems.com/pipermail/rivendell-dev/2019-July/027867.html this message] on the Rivendell Dev mailing list for more details about installing and upgrading Rivendell.<br />
=== 2.19.3 (2018-10-31) ===<br />
* Database verson '''275'''<br />
* <font style="color:red">Bug fix</font>: Fixed a bug that caused the &lsquo;Switcher Matrix&rsquo; and &lsquo;Switcher Output&rsquo; dropdowns to populate incorrect values when selecting a non-local &lsquo;Switcher Host&rsquo; in the &lsquo;Configure RDCatch&rsquo; dialog in rdadmin(1)<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdlogmanager(1) that caused the initial transition type specified in the &lsquo;IMPORT&rsquo; section of the &lsquo;Editing Event&rsquo; dialog to be applied to both the parent log link and the first imported event when the &lsquo;PRE-IMPORT CARTS&rsquo; list was empty and no Timed Start was enabled<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in ripcd(8) that caused process of the &lsquo;Air Gate&rsquo; [&lsquo;AG&rsquo;] RML to fail<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdimport(1) that would throw a spurious SQL error when using the &lsquo;--to-cart=&rsquo; switch with an already existing cart [Issue #000217]<br />
* <font style="color:red">Bug fix</font>: Fixed a regression that caused rdimport(1) to return a &lsquo;no free carts available in specified group&rsquo; when invoked without the &lsquo;--to-cart=&rsquo; option<br />
* <font style="color:red">Bug fix</font>: Fixed a regression in rdairplay(1) that caused carts Added or Copied to a log to have a PLAY transition regardless of the default transition type set in rdadmin(1)<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in &lsquo;RDTextValidator&rsquo; that failed to catch banned characters added to the interior of existing strings<br />
* <font style="color:red">Bug fix</font>: Various other bugs fixed<br />
* <font style="color:green">Functionality</font>: Added a &lsquo;TranscodingDelay=&rsquo; parameter to the &lsquo;[Tuning]&rsquo; section of rd.conf(5)<br />
* <font style="color:green">Functionality</font>: Added a Switcher/GPIO driver for the BroadcastTools SS 2.1 switcher<br />
* <font style="color:green">Functionality</font>: Added support for GPIO on AudioScience adapters to the 'Local Audio Adapter' Switcher/GPIO driver<br />
* <font style="color:green">Functionality</font>: Renamed the 'Add Next' ['PX'] RML to 'Insert Cart' ['PX'] and added two optional arguments to allow specification of the insertion position and transition type<br />
* <font style="color:green">Functionality</font>: Added support for Spinitron v2 to the 'spinitron_plus' RLM<br />
* <font style="color:green">Functionality</font>: Added an &lsquo;ExportedFileMode=&rsquo; parameter to the &lsquo;[Tuning]&rsquo; section of rd.conf(5) to permit permission mode of exported audio files to be specified<br />
* <font style="color:orange">Documentation</font>: Documented GPIO support for AudioScience cards in the &lsquo;Local Audio Adapter&rsquo; section of the Operations Guide<br />
<br />
=== 2.19.2 (2018-04-14) ===<br />
* Database verson '''275'''<br />
* <font style="color:red">Bug fix</font>: Fixed a regression in the HPI support layer that broke audio capture with adapters lacking DMA bus-mastering support<br />
<br />
=== 2.19.1 (2018-03-27) ===<br />
* Database verson '''275'''<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdlogmanager(1) that caused DB corruption when a clock was deleted while still being assigned to a grid.<br />
* <font style="color:green">Functionality</font>: Implemented support for DMA bus-mastering for AudioScience HPI devices. This release supports the latest ASI cards that require DMA bus-mastering support. You may also need to update the hpklinux driver to v4.20.10 or later. RPMs for CentOS 7 are available at [http://static.paravelsystems.com/audioscience/centos/7/ Paravel&rsquo;s website].<br />
* <font style="color:green">Functionality</font>: Removed rdhpiinfo(8). Replaced by the stand-alone &lsquo;hpiinfo&rsquo; package.<br />
* <font style="color:green">Functionality</font>: Removed the event time check for Playout events in rdcatch(1), as there is no sane way to determine a consistently &lsquo;free&rsquo; playout time in the face of shifting cut lengths.<br />
<br />
=== 2.19.0 (2018-02-22) ===<br />
* Database verson '''275'''<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdlibrary(1) that caused evergreen carts/cuts to fail to be highlighted in the correct color<br />
* <font style="color:green">Functionality</font>: Added the ability to specify automatic log deletion on the basis of either the Creation Date or Air Date of the log<br />
* <font style="color:green">Functionality</font>: Log Importation Changes. Changed music and traffic importation so that parent link events are still visible in linked logs<br />
* <font style="color:green">Functionality</font>: Log Locking: implemented a system-wide protocol to prevent changes made to a log on one host from being inadvertently overwritten from another host<br />
<br />
=== 2.18.2 (2017-12-29) ===<br />
* Database version '''272'''<br />
* <font style="color:red">Bug fix</font>: Fixed a bug that caused creation of new clocks in rdlogmanager(1) to fail to initialize music scheduler components correctly in the database<br />
<br />
=== 2.18.1 (2017-12-22) ===<br />
* Database version '''272'''<br />
* <font style="color:red">Bug fix</font>: Fixed a bug that caused creation and initialization of a new Rivendell database to fail<br />
<br />
=== 2.18.0 (2017-12-21) ===<br />
* Database version updated to '''272'''<br />
* <font style="color:red">Bug fix</font>: Various bug fixes. See the [https://github.com/ElvishArtisan/rivendell/blob/stable/ChangeLog ChangeLog] for details<br />
* <font style="color:green">Functionality</font>: Group Cut Expiration Policy: Added the ability to set a default End Date/Time for new cuts on a per-group basis<br />
* <font style="color:green">Functionality</font>: Host Short Name: Added a ''Short Name'' parameter to Host profiles<br />
* <font style="color:green">Functionality</font>: Macro Carts: It is now possible to use filepath wildcards in macro carts<br />
* <font style="color:green">Functionality</font>: New Host Wildcards: Added two host wildcards: ''%r'' for ''Rivendell Host Name, and ''%R'' for ''Rivendell Short Name''<br />
* <font style="color:green">Functionality</font>: Provisioning Support: Added four new directives and to the ''[Provisioning]'' section of ''/etc/rd.conf''<br />
* <font style="color:green">Functionality</font>: MySQL Configuration: Added three parameters to the ''[mySQL]'' section of ''/etc/rd.conf''<br />
* <font style="color:green">Functionality</font>: Dropbox Enhancements: Added the ability to specify creation of default Segue Markers when processing files via dropbox<br />
* <font style="color:green">Functionality</font>: '''RDImport'''/DropBox Enhancements: Added the ability to specify start and end datetimes via metadata pattern<br />
* <font style="color:green">Functionality</font>: '''RDCatch''' Event Filtering: Added the ability to filter by event type in '''RDCatch'''<br />
* <font style="color:green">Functionality</font>: Log Searching: A search filter (similar to that employed for seaching for carts) has been added to the List Logs dialogs<br />
* <font style="color:green">Functionality</font>: Service Filtering in '''RDLogEdit''': Added the ability to limit the visible set of logs in RDLogEdit by user<br />
* <font style="color:green">Functionality</font>: Log Purge/Deletion Changes: Logs created manually (in rdlogedit(1) or rdairplay(1)) are now assigned a default purge/deletion date in accordance with the setting in RDAdmin->ManageServices<br />
* <font style="color:green">Functionality</font>: Log Importation Changes: Changed music and traffic importation so that parent link events are still visible in linked logs<br />
* <font style="color:green">Functionality</font>: Web API Changes: Added &lsquo;FILTER&rsquo; and &lsquo;RECENT&rsquo; call parameters to the &lsquo;ListLogs&rsquo; Web API call<br />
* <font style="color:orange">Documentation</font>: Documentation Overhaul: The Rivendell Operations and Administration Guide has been exapanded and incorporated as part of the base Rivendell source in ''docs/opsguide''. This guide is available as a separate CentOS package: ''rivendell-opsguide''<br />
* <font style="color:orange">Documentation</font>: Rivendell APIs: The various application programming interfaces (notably the web API) is now documented and is included with the standard distribution<br />
<br />
=== 2.17.0 (2017-10-11) ===<br />
* Database version updated to '''268'''<br />
* <font style="color:red">Bug fix</font>: Web API: Many fixes and enhancements to improve operation<br />
* <font style="color:red">Bug fix</font>: Many other bug fixes; see the [https://github.com/ElvishArtisan/rivendell/blob/stable/ChangeLog ChangeLog] for all the details (search for ''2.17.0'' and work your way backward through the list of changes)<br />
* <font style="color:green">Functionality</font>: Dropboxes: Added the ability to force imports to be imported as mono, also added the ability to reset individual dropboxes<br />
* <font style="color:green">Functionality</font>: New Switcher/GPIO Devices: Support has been added for the following Switcher/GPIO devices:<br />
:* Broadcast Tools Universal 4.1 MLR&gt;&gt;Web Switcher<br />
:* WheatNet LIO<br />
:* WheatNet SLIO<br />
* <font style="color:green">Functionality</font>: Macros: Added the &lsquo;Air Gate&rsquo; &#91;&lsquo;AG&rsquo;&#93; RML to permit conditional execution of RML on the basis of the status of the On-Air flag<br />
* <font style="color:green">Functionality</font>: <br />
* <font style="color:green">Functionality</font>: User Authentication: It is now possible to configure RDLogin to require entry of the user-name, rather than picking the name off of a list. See the &lsquo;Show User List in RDLogin&rsquo; checkbox in RDAdmin-&gt;SystemSettings<br />
* <font style="color:green">Functionality</font>: Log Rendering (EXPERIMENTAL): It is now possible to &lsquo;render&rsquo; a log as a single audio object (file or cart/cut) without the need to play it out while capturing the audio in realtime. Render support is available through the &lsquo;Render&rsquo; button in RDLogEdit and through the command-line rdrender(1) utility. See the rdrender(1) man page for details<br />
* <font style="color:green">Functionality</font>: Provisioning Support. Added a [Provisioning] section to rd.conf(5) with directives to facilitate the automatic provisioning of Rivendell instances. See the comments in the [Provisioning] section of the sample rd.conf(5) file<br />
* <font style="color:orange">Artwork</font>: New Icons: Implemented a new icon set, with individualized icons for each Rivendell module<br />
<br />
=== 2.16.0 (2017-06-02) ===<br />
* Database version updated to '''263'''<br />
* <font style="color:red">Bug fix</font>: Many bug fixes; see the [https://github.com/ElvishArtisan/rivendell/blob/stable/ChangeLog ChangeLog] for all the details (search for ''2.16.0'' and work your way backward through the list of changes)<br />
* <font style="color:green">Functionality</font>: Audio Store Hashing. Rivendell now automatically generates a SHA1 hash for each file in the audio store and records this value in the database, thus permitting automated recovery of audio in the event of loss or damage to the audio store's filesystem directory<br />
* <font style="color:green">Functionality</font>: Added switcher support for Kernel GPIO devices, such as the GPIO interface on the Raspberry Pi 2 and 3<br />
* <font style="color:green">Functionality</font>: Added switcher support for Modbus TCP devices<br />
* <font style="color:green">Functionality</font>: Added an rdconvert(1) utility<br />
* <font style="color:green">Functionality</font>: It is now possible to delegate authentication of Rivendell users by means of a PAM module, thus permitting &lsquo;''single sign-on''&rsquo; integration with systems such as ActiveDirectory and FreeIPA<br />
* <font style="color:green">Functionality</font>: Added various methods to the Rivendell Web API to permit integration with external audio and log editors<br />
<br />
=== 2.15.3 (2017-03-24) ===<br />
* Database version '''259''' <br />
* <font style="color:red">Bug fix</font>: Fixed bugs in MP3 file importation that caused files with variable bit rate (VBR) to be truncated during import.<br />
* <font style="color:red">Bug fix</font>: Fixed a bug that caused dynamically loaded codec libraries to fail to be detected if the corresponding library&rsquo;s so-called ''-devel'' package was not installed. <br />
* <font style="color:green">Functionality</font>: Added an ''RLM'' for generating [http://tagstation.com/ TagStation] RLM events for [http://nextradioapp.com/ NextRadio].<br />
* <font style="color:green">Functionality</font>: Added '''AddLog''', '''DeleteLog''' and '''SaveLog''' calls to the web API, along with general cleanup and correction of the overall Web API subsystem.<br />
<br />
=== 2.15.2 (2017-01-13) ===<br />
* Database version '''259'''<br />
* <font style="color:orange">Documentation</font>: Document the interfaces for '''inserting inline traffic breaks''' and for '''inserting voice track markers''' (also add an example in ''docs/examples/'')<br />
* <font style="color:red">Bug fix</font>: in ''rdadmin/createdb.cpp'' that caused obsolete fields in the 'SERVICES' table to be included when creating a new database.<br />
* <font style="color:red">Bug fix</font>: in ''lib/rdwavefile.cpp'' that caused RDXL chunks to be written with odd chunk lengths.<br />
* <font style="color:red">Bug fix</font>: in ''lib/rdsimpleplayer.cpp'' that caused RDAirPlay to freeze when attempting to audition an expired cart.<br />
* <font style="color:green">Functionality</font>: Added a '''LockRdairplayMemory=''' parameter to the [Hacks] section.<br />
* <font style="color:green">Functionality</font>: Modified the LiveWire Multicast GPIO driver to generate GPO events using the 'I' event type.<br />
<br />
=== 2.15.1 (2016-08-05) ===<br />
* Database version '''259'''<br />
* <font style="color:red">Bug fix</font>: fixed WAV file export code to enhance compatibility with third-party applications<br />
<br />
=== 2.15.0 (2016-07-29) ===<br />
* <font style="color:red">Bug fix</font>: complete support for the MySQL/MariaDB InnoDB database engine (for better transaction processing of database updates)<br />
* <font style="color:green">Functionality</font>: enhancements to ''rdexport'' that include full metadata in RDXML format<br />
* <font style="color:green">Functionality</font>: add CLI command ''rdclilogedit'' that enables editing of Rivendell Logs from the command line (without a GUI app)<br />
* <font style="color:green">Functionality</font>: Update the database to version 259.<br />
<br />
=== 2.14.1 (2016-06-11) ===<br />
* Database version '''258'''<br />
* <font style="color:red">Bug fix</font>: additional fixes for newer versions of MySQL (and MariaDB)<br />
<br />
=== 2.14.0 (2016-06-10) ===<br />
* Database version '''258'''<br />
* <font style="color:green">Functionality</font>: add the ability to capture real-time events in RDCatch recordings and replay the events in sync with the captured audio<br />
* <font style="color:green">Functionality</font>: add RML Macro ''Cut Event'' (''CE'') for placing real-time event markers into active RDCatch recordings<br />
* <font style="color:green">Functionality</font>: add support for specifying precise start time and length parameters for Traffic events that are embedded in Music events<br />
* <font style="color:red">Bug fix</font>: fixed a bug in RDAdmin that could cause creation of a new database to fail<br />
* <font style="color:red">Bug fix</font>: fix issues that prevent compilation under newer versions of the GNU C compiler suite<br />
* <font style="color:red">Bug fix</font>: various enhancements and fixes to the new(ish) ''rdexport'' utility<br />
* <font style="color:red">Bug fix</font>: initial support for newer versions of MySQL (and MariaDB)<br />
* <font style="color:red">Bug fix</font>: add code to allow embedded traffic breaks to be specified with start time and length in the music schedule.<br />
<br />
=== 2.13.0 (2016-05-10) ===<br />
* Database version '''255'''<br />
* <font style="color:green">Functionality</font>: add RLM plugin for the Paravel Systems ''WallTime'' clock<br />
* <font style="color:green">Functionality</font>: add new CLI command ''rdexport'' to export Carts with metadata<br />
* <font style="color:green">Functionality</font>: new report: ''Cut Log'' that includes the Description field for played events<br />
* <font style="color:red">Bug fix</font>: fixed a crash in RDLibrary when attempting to open multiple Carts<br />
* <font style="color:red">Bug fix</font>: fixed RDLogEdit to improve performance when saving and updating logs<br />
* <font style="color:red">Bug fix</font>: fixed a bug that caused marker data to be deleted when exporting a Cut<br />
<br />
=== 2.12.0 (2016-04-14) ===<br />
* Database version '''254'''<br />
* <font style="color:green">Functionality</font>: add support for sequential Cut play-out - you can now configure carts to play cuts in a fixed, sequential order rather than by weight value<br />
* <font style="color:green">Functionality</font>: add support for ''Broadcast Tools'' switchers<br />
* <font style="color:green">Functionality</font>: add RML macro '''Copy Cut''' (''CP'') to copy cuts between carts<br />
* <font style="color:green">Functionality</font>: add option to show only &ldquo;recent&rdquo; logs in RDLogEdit<br />
* <font style="color:green">Functionality</font>: add new web API methods related to Scheduler Codes<br />
* <font style="color:red">Bug fix</font>: fixed a bug that caused issues with Services containing the &ldquo;-&rdquo; (dash) character<br />
<br />
=== 2.11.0 (2015-09-18) ===<br />
* Database version '''252'''<br />
* <font style="color:green">Functionality</font>: add RDCatch upload/download protocols ''sftp'' and ''scp''<br />
* <font style="color:green">Functionality</font>: add support to import ''MP4/AAC'' files<br />
* <font style="color:green">Functionality</font>: add support for the ''Ross NK'' series video switcher<br />
* <font style="color:green">Functionality</font>: add support for ''PCM24'' in the core audio library code<br />
* <font style="color:red">Bug fix</font>: re-wrote the CD ripper code to make it faster and more reliable<br />
* <font style="color:red">Bug fix</font>: fixed several bugs related to audio data and buffering<br />
* <font style="color:red">Bug fix</font>: Normalized service clock data from the 'SERVICES' to the 'SVC_CLOCKS' table<br />
<br />
=== 2.10.3 (2015-02-24) ===<br />
* Database version '''242'''<br />
* <font style="color:green">Functionality</font>: add RLM (plugin) for Live365 streaming service (which is defunct as of Summer 2016)<br />
* <font style="color:green">Functionality</font>: add &ldquo;MrMaster&rdquo; and &ldquo;Spin Count&rdquo; reports<br />
* <font style="color:green">Functionality</font>: add support for audio switcher devices that use the &ldquo;Software Authority&rdquo; protocol<br />
* <font style="color:green">Functionality</font>: add ability to set segue markers in the CLI app ''rdmarkerset''<br />
* <font style="color:red">Bug fix</font>: fixed a bug that caused issues with Services containing a <Space> character in the service name<br />
<br />
=== 2.10.2 (2014-11-25) ===<br />
* Database version '''242'''<br />
* <font style="color:green">Functionality</font>: CLI ''rdimport'' enhancement: add two date-related options to the command<br />
* <font style="color:green">Functionality</font>: add column for ELR data in RDLogEdit<br />
* <font style="color:red">Bug fix</font>: fixed a bug in the Audio Science adapter for cards with only AES3 ports<br />
<br />
=== 2.10.1 (2014-11-04) ===<br />
* Database version '''242'''<br />
* <font style="color:green">Functionality</font>: add &ldquo;DSP utilization and profiling&rdquo; info for Audio Science adapters<br />
* <font style="color:green">Functionality</font>: add the column &ldquo;EXT DATA&rdquo; to the &ldquo;Edit Log&rdquo; screen in RDLogEdit<br />
* <font style="color:red">Bug fix</font>: fixed a memory fault (crash) in RDLogEdit when dropping a cart that was being used in a log</div>
DKlann
http://wiki.rivendellaudio.org/index.php?title=Notable_Differences_Between_Version_3_And_Version_4&diff=700
Notable Differences Between Version 3 And Version 4
2023-07-11T02:30:11Z
<p>DKlann: Created.</p>
<hr />
<div>== Notable Differences Between Rivendell Version 3 And Version 4 ==<br />
<br />
Rivendell Version 4 (RD4) was released on 16 June 2023, nearly four years after Rivendell Version 3 (RD3). This release is the culmination of more than two years of concentrated development and testing by the Rivendell community, led by [https://www.paravelsystems.com/our-crew Fred Gleason]. The changes from version 3 include 903 [https://git-scm.com/ git] commits covering changes to 1,425 files.<br />
<br />
One of the primary motivating factors for RD4 was to update the Rivendell code base to [https://qt.io/ Qt] version 5. For most users this is an &ldquo;under-the-hood&rdquo; thing, but the changes have positioned Rivendell for future growth, modification, and improvement. And there are some significant visible changes as well!<br />
<br />
=== &ldquo;Under-the-hood&rdquo; Changes ===<br />
<br />
* Rivendell has for a long time run on [https://www.redhat.com/en/technologies/linux-platforms/enterprise-linux Red Hat Enterprise Linux] (RHEL) and on systems derived from RHEL. RD4 continues that tradition, running on RHEL (specifically RHEL version 8) and derivatives. While others in the Rivendell community have previously supported alternate Linux platforms such as [https://debian.org/ Debian], the &ldquo;stock&rdquo; source code now compiles and installs on Debian and [https://ubuntu.com/ Ubuntu] Linux and (some of) their derivatives (notably, [https://linuxmint.com/ Linux Mint].<br />
<br />
* Rivendell is now compatible with [https://www.mysql.com/ MySQL] version 8.0. This includes compatibility with [https://mariadb.com/ MariaDB]. For those who choose to use MariaDB, see [https://mariadb.com/kb/en/mariadb-vs-mysql-compatibility/ this page] for MySQL and MariaDB compatibility (warning: it&rsquo;s complicated, but experience shows that it &ldquo;just works&rdquo;).<br />
<br />
* The Rivendell code base has been substantially modernized. A lot of technical debt has been retired (old code removed, replaced with new code implementing modern techniques and libraries), resulting in a code base that is more easily managed.<br />
<br />
* The &ldquo;Feeds&rdquo; podcast management system has seen many updates and changes. See [https://opsguide.rivendellaudio.org/html/chapter.rdcastmanager.html Chapter Ten] of the [https://opsguide.rivendellaudio.org/html/ Operations and Administration Guide] for more details.<br />
<br />
* Many bugs have been fixed, and many more need to be fixed. Please open a new issue on the [https://github.com/ElvishArtisan/rivendell/issues Issues] page if you find things that do not work as you expect them to.<br />
<br />
=== Visible Changes ===<br />
<br />
* The RDAirPlay window is resizable. Its minimum size is 1310 pixels wide by 870 pixels high.<br />
<br />
[[File:rd4-rdairplay-full-screen.png|right|thumb|800px|border|RDAirPlay Expanded to Full Screen]]<br />
<br />
<div style="clear: both"></div><br />
<br />
<hr /><br />
<br /><br />
<br />
* RDLibrary&rsquo;s &ldquo;Edit Markers&rdquo; window has changed. It is now a bit more compact. The new window requires right-clicking in order to set or clear markers in Cuts. See the details in the [https://opsguide.rivendellaudio.org/html/sect.rdlibrary.library_maintenance.html#rdlibrary.editing_markers Operations and Administration Guide] for all the details.<br />
<br />
[[File:rd4-rdlibrary-edit-markers.png|left|thumb|600px|border|RDLibrary Edit Markers]]<br />
<br />
<div style="clear: both"></div><br />
<br />
<hr /><br />
<br /><br />
<br />
* External schedulers may now be used to generate Logs without building Events, Clocks, and the Rivendell Grid. This screenshot shows the &ldquo;Bypass Grid Processing&rdquo; option in RDAdmin > Manage Services.<br />
<br />
[[File:Rdadmin-edit-service-bypas-grid.png|right|thumb|600px|border|RDAdmin > Edit Service, Bypass Grid Processing]]<br />
<br />
: See the [https://opsguide.rivendellaudio.org/html/sect.rdlogmanager.grids.html#sect.rdlogmanager.rdlogmanager.grids.bypassing_grid_processing Operations Guide] for details of this feature.<br />
<br />
<div style="clear: both"></div><br />
<br />
<hr /><br />
<br /></div>
DKlann
http://wiki.rivendellaudio.org/index.php?title=Rivendell_Operations_Guide&diff=699
Rivendell Operations Guide
2023-07-08T22:44:53Z
<p>DKlann: Update links</p>
<hr />
<div>The [https://opsguide.rivendellaudio.org/html/ Rivendell Automation System - Operations and Administration Guide] (OAG) is written primarily by Frederick F. Gleason, Jr, with contributions from the Rivendell community. The OAG covers the basics of Rivendell, and goes into detail on many aspects of the system. It starts with a [https://opsguide.rivendellaudio.org/html/chapter.overview.html high level overview] and goes through each module of Rivendell explaining its function and use.<br />
<br />
The OAG is the definitive source of information about Rivendell. It is developed and [https://github.com/ElvishArtisan/rivendell/ managed] along with the [https://github.com/ElvishArtisan/rivendell source code]. Packaged copies of Rivendell include the OAG in PDF format.<br />
<br />
You will find that many articles on this wiki link to specific sections in the OAG.<br />
<br />
Please help keep the links to documentation in this article current. Up to date links are always available on the [https://rivendellaudio.org/ Rivendell Audio] website.<br />
<br />
<p align="right"><font style="font-size:60%;">links last checked 2023-07-07</font></p></div>
DKlann
http://wiki.rivendellaudio.org/index.php?title=File:Rdadmin-edit-service-bypas-grid.png&diff=698
File:Rdadmin-edit-service-bypas-grid.png
2023-07-08T03:58:31Z
<p>DKlann: Screenshot showing RDAdmin > Edit Service, highlighting "Bypass Grid Processing" option.</p>
<hr />
<div>Screenshot showing RDAdmin > Edit Service, highlighting "Bypass Grid Processing" option.</div>
DKlann
http://wiki.rivendellaudio.org/index.php?title=File:Rd4-rdlibrary-edit-markers.png&diff=697
File:Rd4-rdlibrary-edit-markers.png
2023-07-08T03:15:54Z
<p>DKlann: Screenshot of RD4 RDLibrary -> Edit Markers.</p>
<hr />
<div>Screenshot of RD4 RDLibrary -> Edit Markers.</div>
DKlann
http://wiki.rivendellaudio.org/index.php?title=File:Rd4-rdairplay-full-screen.png&diff=696
File:Rd4-rdairplay-full-screen.png
2023-07-08T03:07:09Z
<p>DKlann: Rivendell 4 RDAirPlay expanded to full screen.</p>
<hr />
<div>Rivendell 4 RDAirPlay expanded to full screen.</div>
DKlann
http://wiki.rivendellaudio.org/index.php?title=ChangeSummary&diff=695
ChangeSummary
2023-07-07T23:16:18Z
<p>DKlann: Add change descriptions for version 4.0.1 and 4.0.2</p>
<hr />
<div>__NOTOC__<br />
== Rivendell Change Summary ==<br />
<br />
This page contains version change descriptions in summary form for Rivendell versions released within at least the most recent five years (quite probably longer). Change descriptions are limited (mostly) to user-visible changes.<br />
<br />
Please see the [https://raw.githubusercontent.com/ElvishArtisan/rivendell/master/ChangeLog ChangeLog] and [https://github.com/ElvishArtisan/rivendell/blob/master/NEWS NEWS] files in the [https://github.com/elvishartisan/rivendell source code] for a complete list of changes and bug fixes.<br />
<br />
See the [https://github.com/elvishartisan/rivendell/issues Issues] list for current reported bugs, issues and feature requests.<br />
<br />
=== 4.0.1 (2023-06-23) ===<br />
<br />
* Database verson '''370'''<br />
<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in the voice tracker that caused the waveform displays to be greyed out out immediately after creating a new track marker<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdcatchd(8) that would cause a segfault after reception of a &lsquo;Start Record Deck&rsquo; [&rsquo;RS&rsquo;] RML<br />
* <font style="color:red">Bug fix</font>: Fixed a regression in rdcatch(1) that caused a phantom event entry to appear in the Event List while processing the &lsquo;Start Record Deck&rsquo; [&rsquo;RS&rsquo;] RML<br />
<br />
=== 4.0.1 (2023-06-16) ===<br />
<br />
* Database verson '''370'''<br />
<br />
Rivendell version 4, in development for more than two years, brings many &ldquo;under-the-hood&ldquo; as well as visible changes to the system. This list is incomplete, but attempts to highlight the most important changes. Please edit this page if you see something missing.<br />
<br />
* <font style="color:red">Bug fix</font>: Many bugs have been fixed; many more have likely been introduced<br />
* <font style="color:green">Functionality</font>: switch to graphical programming library [https://www.qt.io/ Qt] version [https://doc.qt.io/qt-5/ 5].<br />
* <font style="color:green">Functionality</font>: new layout of the RDAirPlay window: You may now resize the RDAirPlay window; note however that RDAirPlay has a '''minimum size''' of 1310x870 pixels. RDAirPlay also received a revamped level metering system; the side effect of this is that the meters are now oriented vertically instead of horizontally<br />
* <font style="color:green">Functionality</font>: the minimum supported display (monitor) size is 1680 x 1050 pixels; displays smaller than this may cause problems with some Rivendell applications<br />
* <font style="color:green">Functionality</font>: the &lsquo;Edit Markers&rsquo; window has changed significantly; see the current manual for instructions on setting, changing, and deleting markers from Cuts<br />
* <font style="color:green">Functionality</font>: Rivendell v4.x aims for full compatibility with MySQL 8.0 and earlier versions in their default installation configurations.<br />
* <font style="color:green">Functionality</font>: RDPanel, as well as several windows within RDAdmin now allow for dynamic window sizing<br />
* <font style="color:green">Functionality</font>: Date and time presentation formats can now be customized on the basis of site perferences.<br />
* <font style="color:green">Functionality</font>: It is now possible to disable grid processing on a service-by-service basis, thus permitting a complete schedule to be generated by an external music scheduler. See the &lsquo;Bypassing Grid Processing&rsquo; section in the &lsquo;Generating Logs and Reports with RDLogManager&rsquo; section of the Operation Guide for details.<br />
* <font style="color:orange">Documentation</font>: The documentation has been edited and brought up to date with respect to the current code and functionality of the system<br />
<br />
=== 3.6.7 (2023-01-27) ===<br />
<br />
* Database verson '''347'''<br />
<br />
* <font style="color:red">Bug fix</font>: Fixed broken waveform generation on ARM architectures<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdcatchd(8) that caused record events to be captured with the incorrect sampling rate<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in the podcasting subsystem that broke validation of the &lsquo;direct&rsquo; name space<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdlibrary(1) that caused the field names for the &lsquo;FILENAME&rsquo; and &lsquo;LENGTH&rsquo; fields in the &lsquo;Cart Data Dump (CSV)&rsquo; report to be corrupted<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdservice(8) that could cause dropboxes to be instantiated with invalid segue level values<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdlogmanager(1) that caused the slop factors for inline traffic events to fail to be applied when importing a traffic log<br />
* <font style="color:orange">Documentation</font>: Corrected errors in the WebAPI documentation regarding the argument type of the &lsquo;LINE&lt;n&gt;_TIME_TYPE&rsquo; field in the &lsquo;SaveLog&rsquo; call<br />
<br />
=== 3.6.6 (2022-10-02) ===<br />
<br />
* Database verson '''347'''<br />
<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdrssd(8) that caused a podcast episode to be deleted immediately after being made active if the &lsquo;Air Date/Time&rsquo; was set for the future and &lsquo;Item Expires&rsquo; was set to &lsquo;No&rsquo; in the &lsquo;Editing Item&rsquo; dialog<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdcastmanager(1) that caused incorrect ordering when sorting by the &lsquo;Start&rsquo; and &lsquo;Expiration&rsquo; columns in the &lsquo;Podcast Item List&rsquo; dialog<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in the CDDB parser that caused it to emit an error message when processing a 202 response<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in PyPAD where resolution of datetimes could be incorrect<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdservice(8) that could cause a segfault (crash) when started with a previous instance running<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdlogmanager(1) that could cause a segfault (crash) when merging a log<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdrssd(8) that caused incorrect error data to be logged<br />
* <font style="color:red">Bug fix</font>: Fixed a regression in the Disc Ripper in rdlibrary(1) that caused manual changes to track metadata to be incorrectly applied<br />
* <font style="color:green">Functionality</font>: Added &lsquo;--by-isci&rsquo; and &lsquo;--dump-isci-xref&rsquo; options to rdimport(1) and modified rdimport(1) to allow the &lsquo;--by-isci&rsquo; option to take a service name option<br />
* <font style="color:green">Functionality</font>: Added a &lsquo;StayOnTop=&rsquo; directive to the &lsquo;[SoftKeys]&rsquo; section of rd.conf(5)<br />
* <font style="color:green">Functionality</font>: Changed the default &lsquo;--process-interval=&rsquo; value from 60 seconds to 30 seconds in rdrssd(8)<br />
* <font style="color:green">Functionality</font>: Added &lsquo;RDListView::DateTimeSort&rsquo; to the &lsquo;RDListView::SortType enumeration<br />
* <font style="color:green">Functionality</font>: Added explicit processing for 201, 230, 401, 402, 403, 409, 431, 432, 433, 434, 501, 502, 503 and 530 returns in the CDDB parser<br />
* <font style="color:green">Functionality</font>: Added an Online Feed Report to rdcastmanager(1)<br />
* <font style="color:green">Functionality</font>: Modified the full disc ripper and the per-track ripper in rdlibrary(1) to use CD-Text<br />
* <font style="color:green">Functionality</font>: Renamed the &lsquo;CD Metadata Source&rsquo; control in rdlibrary(1) to use &lsquo;CDDB&rsquo; instead of &lsquo;FreeDB&rsquo; when configuring CDDB lookups<br />
* <font style="color:green">Functionality</font>: Added support for a &lsquo;SuppressLinkParameterInheritance=&rsquo; directive in the &lsquo;[Hacks]&rsquo; section of rd.conf(5)<br />
* <font style="color:blue">Code (internal) change</font>: Added code to the podcasting subsystem to log extended curl(1) information to syslog<br />
<br />
=== 3.6.5 (2022-03-18) ===<br />
<br />
* Database verson '''347'''<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdimport(1) that could create duplicate Scheduler Code entries when using the &lsquo;--to-cart&rsquo; and &lsquo;--add-scheduler-code&rsquo; switches simultaneously<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in the &lsquo;rdxport&rsquo; service that caused the &lsquo;ListLog&rsquo; WebAPI call to return null values in the &lsquo;description&rsquo;, &lsquo;isrc&rsquo;, &lsquo;isci&rsquo;, &lsquo;recordingMbId&rsquo; and &lsquo;releaseMbId&rsquo; fields<br />
* <font style="color:green">Functionality</font>: Added a &lsquo;direct&rsquo; namespace to the &lsquo;Apple iTunes&rsquo; and &lsquo;Apple iTunes + Superfeed&rsquo; RSS schemas<br />
<br />
<br />
=== 3.6.4 (2022-02-22) ===<br />
<br />
Note: version 3.6.3 was tagged, but not released.<br />
<br />
* Database verson '''347'''<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdlogmanager(1) that caused leading event attributes to fail to be preserved when suppressing Music of Traffic import markers<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in the rdxport &lsquo;Import&rsquo; service that could result in incorrect end marker placement when processing variable bit rate (VBR) MPEG files<br />
* <font style="color:red">Bug fix</font>: Fixed an arithmetic overflow bug in &lsquo;RDWaveFile&rsquo; that could cause the play length of MPEG-encoded to be incorrectly calculated<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdimport(1) that caused premature validation of metadata<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdxport(8) that caused the &lsquo;SaveLog&rsquo; WebAPI call to fail if the target log didn&rsquo;t exist<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rddbmgr(8) that could cause the 346=&gt;347 schema conversion to hang indefinitely with databases containing large cart libraries<br />
* <font style="color:green">Functionality</font>: Added a &lsquo;SuppressMusicImportLinks=&rsquo; directive to the [Hacks] section of rd.conf(5)<br />
* <font style="color:green">Functionality</font>: Added support for [NowGroups] and [NextGroups] sections in PyPAD script configurations<br />
* <font style="color:green">Functionality</font>: Deprecated use of the &lsquo;Transmit Now & Next data&rsquo; checkbox in the &lsquo;Group&rsquo; dialog in rdadmin(1)<br />
* <font style="color:green">Functionality</font>: Added a &lsquo;SaveWebgetFilesDirectory=&rsquo; directive to rd.conf(5)<br />
* <font style="color:green">Functionality</font>: Modified the mode of files generated by the rd-conf(5) &lsquo;SaveWebgetFilesDirectory=&rsquo; configuration directive from 0440 to 0664<br />
* <font style="color:green">Functionality</font>: Added a &lsquo;linkLength&rsquo; field and a &lsquo;graceTime&rsquo; field to the return XML for the &lsquo;ListLog&rsquo; WebAPI call<br />
* <font style="color:green">Functionality</font>: Added a &lsquo;Log Listing (CSV)&rsquo; report to rdlogedit(1)<br />
* <font style="color:green">Functionality</font>: Added a &lsquo;--print-progress&rsquo; switch to rddbmgr(8)<br />
* <font style="color:blue">Code (internal) change</font>: Overhauled the code for reading MPEG frame headers in &lsquo;RDWaveFile&rsquo;<br />
* <font style="color:blue">Code (internal) change</font>: Increased the import process timeout for the WebGet service to 1200 seconds<br />
<br />
<br />
=== 3.6.2 (2021-07-30) ===<br />
* Database verson '''347'''<br />
* <font style="color:green">Functionality</font>: Added support for system dark themes in RDAirplay<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdlogedit(1) that could cause a crash when attempting to play a non-audio event in the &lsquo;Voice Tracker&rsquo; dialog<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdimport(1) that caused the cart title uniqueness check to be applied to the incorrect string when the &lsquo;--set-string-title=&rsquo; switch was used<br />
<br />
<br />
=== 3.6.1 (2021-06-06) ===<br />
* Database verson '''347'''<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdimport(1) that could cause a crash when the &lsquo;--fix-broken-formats&rsquo; switch is used<br />
* <font style="color:green">Functionality</font>: Added syslog DEBUG messages around the start/stop of ephemeral processes in rdservice(8)<br />
* <font style="color:green">Functionality</font>: Added an &lsquo;--initial-maintenance&rsquo; switch to rdservice(8)<br />
* <font style="color:green">Functionality</font>: Added an &lsquo;--force-system-maintenance&rsquo; switch to rdservice(8)<br />
* <font style="color:green">Functionality</font>: Modified rdmaint(8) to enable it to operate even when the Rivendell services are not running<br />
<br />
=== 3.6.0 (2021-05-15) ===<br />
* Database verson '''347'''<br />
* <font style="color:red">Bug fix</font>: Fixed title separation in rdlogmanager(1) scheduler<br />
* <font style="color:red">Bug fix</font>: Fixed bug in library code ''lib/rdwavefile.cpp'' that copied CartChunk Cut ID past the end of the first "NULL" character<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdairplay(1) that caused the Talk Timer to fail to be populated when adding new carts to a log<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in the Cart Selector Dialog that made it impossible to enter an apostrophe character in the filter search line<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdimport(1) where the title of an existing cart would be overwritten with a default title even when no title was found in the file metadata<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in &lsquo;RDFlacDecode&rsquo; that caused conversion of files with names containing non-ASCII characters to fail<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdadmin(1) where clicking the &lsquo;OK&rsquo; button in the &lsquo;Edit Switcher&rsquo; dialog would cause an error dialog to appear with a &lsquo;primary serial device not active&rsquo; warning. The following devices are affected: &lsquo;Local GPIO&rsquo;, &lsquo;Local Audio Adapter&rsquo;, &lsquo;Logitek vGuest&rsquo;, &lsquo;Livewire LWRP Audio&rsquo;, and &lsquo;Kernel GPIO&rsquo;<br />
* <font style="color:green">Functionality</font>: Modified rdimport(1) and the Webget service so as to send e-mail reports to the address of the current Rivendell user in addition to the group&rsquo;s Notification E-Mail Address<br />
* <font style="color:green">Functionality</font>: Added a &lsquo;STACK_LINES.TITLE&rsquo; field to the database<br />
* <font style="color:green">Functionality</font>: Added the value of the detected CartChunk CutID to the error message generated when rejecting said CutID as invalid when using the &lsquo;--use-cartchunk-cutid&rsquo; switch in rdimport(1)<br />
* <font style="color:green">Functionality</font>: Added code to print the value of the detected CartChunk CutID when using both the &lsquo;--use-cartchunk-cutid&rsquo; and &lsquo;--verbose&rsquo; flags in rdimport(1)<br />
* <font style="color:green">Functionality</font>: Created pypad_ino713_tcp based upon pypad_ino713, converting from UDP to TCP. Added an adjustable delay to account for broadcast air delays<br />
* <font style="color:green">Functionality</font>: Created pypad_nautel based upon pypad_ino713_tcp, including RDS parameters from documentation. Includes delay as above<br />
* <font style="color:green">Functionality</font>: Added a new &lsquo;RadioTraffic.com Traffic Reconciliation&rsquo; report. Renamed the existing &lsquo;RadioTraffic.com Traffic Reconciliation&rsquo; to &lsquo;Original RadioTraffic.com Traffic Reconciliation (DEPRECATED)&rsquo;<br />
* <font style="color:green">Functionality</font>: Changed the way in which the VU Meter UDP port is chosen. One can now specify the base port number and the maximum number of UDP ports to consider when caed(8) sets up the VU meter port<br />
* <font style="color:orange">Documentation</font>: Documented the &lsquo;MeterPortBaseNumber=&rsquo; and &lsquo;MeterPointRange=&rsquo; directives in the rd.conf(5) man page<br />
<br />
=== 3.5.0 (2020-12-12) ===<br />
* Database verson '''346'''<br />
* <font style="color:red">Bug fix</font>: Corrected the column settings in RDAdmin > Manage Hosts > [host] > Dropboxes<br />
* <font style="color:red">Bug fix</font>: Fixed regression with "Scheduler Code:" label overlapping "Group" combobox in rdlibrary(1)<br />
* <font style="color:red">Bug fix</font>: Fixed several bugs in rdadmin(1) that messed with passwords, user settings, and other important settings<br />
* <font style="color:red">Bug fix</font>: Fixed several bugs in rdlogmanager(1) that caused all kinds of mischief<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdairplay(1) where copying a log event using the &lsquo;Copy&rsquo; button would result in the new event always getting a &lsquo;PLAY&rsquo; transition<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rddbmgr(8) that could cause database corruption problems<br />
* <font style="color:red">Bug fix</font>: Fixed bugs in rdimport(1) that caused incorrect exit codes to be emitted when a non-existent group was specified, and that caused generation of double error messages when processing invalid audio files<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdmonitor(1) that caused false indications of a failed audio store when used with autofs(8)<br />
* <font style="color:green">Functionality</font>: Major overhaul of Rivendell&rsquo;s podcast handling features; see the ChangeLog for all the details<br />
* <font style="color:green">Functionality</font>: Modified the GVC7000 switcher driver to insert 50 mS pauses between protocol commands<br />
* <font style="color:green">Functionality</font>: Allow RN Macro to run when Rivendell daemons running as non-root<br />
* <font style="color:green">Functionality</font>: Many changes to rdadmin(1), including:<br />
:* Added whitespace to the set of banned characters for service names<br />
:* Added a &lsquo;SSH Ident. File&rsquo; control to the &lsquo;Host&rsquo; dialog<br />
:* Added an &lsquo;Inline Traffic Inheritance&rsquo; control to the &lsquo;Edit Service&rsquo; dialog<br />
:* Added type icons to the &lsquo;Imported Events&rsquo; list in the &lsquo;Test Import&rsquo; dialog<br />
:* Renamed the &lsquo;Inline Traffic Inheritance&rsquo; control to &lsquo;Inline Traffic Start/Length&rsquo; and moved it to the &lsquo;Music Data Import&rsquo; section of the &lsquo;Edit Service&rsquo; dialog<br />
:* Added an &lsquo;Encoder Profiles&rsquo; dialog<br />
:* Renamed the &lsquo;Note Cart String&rsquo; controls to &lsquo;Insert Marker String&rsquo; in the &lsquo;Edit Service dialog<br />
:* Added an &lsquo;Origin E-Mail Address&rsquo; control to the &lsquo;System-Wide Settings&rsquo; dialog<br />
:* Added a &lsquo;Notification E-Mail Addresses&rsquo; control to the &lsquo;Group&rsquo; dialog<br />
:* Added a &lsquo;Send e-mail reports&rsquo; checkbox to the &lsquo;Dropbox Configuration&rsquo; dialog<br />
:* Added &lsquo;E-Mail Address&rsquo;, &lsquo;Phone Number&rsquo; and &lsquo;Local Auth&rsquo; columns to the &lsquo;Users&rsquo; list in the &lsquo;Rivendell User List&rsquo; dialog<br />
:* Added an &lsquo;Administer RSS Feeds&rsquo; checkbox to the &lsquo;Administrative Rights&rsquo; section of the &lsquo;User&rsquo; dialog<br />
:* Added a deprecation warning for the &lsquo;Allow Duplicate Cart Titles&rsquo; and &lsquo;Auto-Correct Duplicate Cart Titles&rsquo; checkboxes on the &lsquo;System-Wide Settings&rsquo; dialog<br />
* <font style="color:green">Functionality</font>: Added support for FTPS protocol for uploading, downloading, and Feed management<br />
* <font style="color:green">Functionality</font>: Significant update to the Rivendell Web interfaces (Web API, WebGet service, rivwebcapi API, etc.)<br />
* <font style="color:green">Functionality</font>: Added &lsquo;--scheduler-code=&rsquo; switch to rdexport(1)<br />
* <font style="color:green">Functionality</font>: Added generation of an &lsquo;RDLogManager Error Report&rsquo; when errors are detected when importing an external scheduler file in rdlogmanager(1)<br />
* <font style="color:green">Functionality</font>: Restored operation of Label/Note carts in rdlogmanager(1)<br />
* <font style="color:green">Functionality</font>: Updated rdservice(8) to use standard exit code defines<br />
* <font style="color:green">Functionality</font>: Implemented the &lsquo;--verbose&rsquo; switch for rdmaint(8)<br />
* <font style="color:green">Functionality</font>: Added a sample Fail2Ban jail filter for the WebAPI in &lsquo;conf/rivendell-webapi.conf&rsquo;<br />
* <font style="color:green">Functionality</font>: Added command line options &lsquo;--output-pattern&rsquo;, &lsquo;--ticket=&rsquo;, &lsquo;--send-mail&rsquo; and &lsquo;--mail-per-file&rsquo; to rdimport(1)<br />
* <font style="color:green">Functionality</font>: Added the name of the import file to schedule import failure reports<br />
* <font style="color:orange">Documentation</font>: Documented the &lsquo;%%&rsquo; filepath wildcard in the Operations Guide<br />
* <font style="color:orange">Documentation</font>: Added an &lsquo;RDCastManager&rsquo; chapter to the Operations Guide<br />
* <font style="color:orange">Documentation</font>: Revised the &lsquo;Managing Services&rsquo; section of the Operations Guide<br />
* <font style="color:orange">Documentation</font>: Rewrote the &lsquo;Webget&rsquo; chapter of the Operations Guide to conform to changes in Webget<br />
* <font style="color:orange">Documentation</font>: Added a &lsquo;Configuring Webget&rsquo; section to the Operations Guide<br />
* <font style="color:orange">Documentation</font>: Removed the &lsquo;Cart Data Dump (fixed width)&rsquo; from the Operations Guide<br />
* <font style="color:orange">Documentation</font>: Documented user-facing changes to the &lsquo;System-Wide Settings&rsquo; dialog, the &lsquo;Rivendell Group List&rsquo; and the &lsquo;Group&rsquo; dialogs in rdadmin(1) in the Operations Guide<br />
* <font style="color:orange">Documentation</font>: Documented the &lsquo;Send e-mail reports&rsquo; checkbox in the &lsquo;Dropbox Configuration&rsquo; dialog in rdadmin(1) in the Operations Guide<br />
* <font style="color:blue">Code (internal) change</font>: Prepended &lsquo;RD_&rsquo; to the names of all common Javascript functions in &lsquo;web/common/utils.js&rsquo;<br />
* <font style="color:blue">Code (internal) change</font>: Added a &lsquo;webget&rsquo; subpackage to the &lsquo;make rpm&rsquo; target<br />
* <font style="color:blue">Code (internal) change</font>: Refactored the &lsquo;Run Script&rsquo; [&rsquo;RN&rsquo;] RML to invoke scripts via the system shell, this change also removed the dependency on runuser(1)<br />
<br />
=== 3.4.1 (2020-07-21) ===<br />
* Database verson '''317'''<br />
<br />
* <font style="color:green">Functionality</font>: Added a &lsquo;Results Report&rsquo; report in rdadmin(1)<br />
* <font style="color:green">Functionality</font>: Removed the checkbox from the &lsquo;Delete&rsquo; right-click menu item in the &lsquo;Edit Event&rsquo; dialog in rdlogmanager(1)<br />
* <font style="color:green">Functionality</font>: Modified &lsquo;RDWaveFile&rsquo; to work around known fencepost errors in WAV files generated by "Sonic Studio soundBlade" by "PME Mastering, Inc."<br />
* <font style="color:green">Functionality</font>: Modified the &lsquo;Edit Event&rsquo; dialog in rdlogmanager(1) to show &lsquo;[auto]&rsquo; as the transition type for the leading event in Pre-/Post-Import lists<br />
<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdlibrary(1) that caused cuts to be incorrectly sorted when scheduled &lsquo;By Specified Order&rsquo;<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in the Rivendell command line apps that caused value-only arguments containing &lsquo;=&rsquo; characters to be incorrectly parsed<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in the Podcast Manager, Library Exporter and Web API that caused an error when processing multipart-mime submissions containing &lsquo;=&rsquo; characters<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdairplay(1) where attempting to audition an audio cart with a disabled cue output would crash the application<br />
* <font style="color:red">Bug fix</font>: Fixed a regression in rdairplay(1) that caused the &lsquo;Forced Segue&rsquo; setting in rdadmin(1) to be ignored when executing an event with a hard start attribute<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdairplay(1) where a paused event could not be removed by dropping the empty cart on it<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdairplay(1) that cause incorrect pie timer indications after adding or deleting events to a running log<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdlibrary(1) that would cause a crash when attempting to delete a range of cuts, one of which was in the clipboard<br />
* <font style="color:red">Bug fix</font>: Fixed a math bug in rdairplay(1) that caused the estimated stop-down times in the post point widget to be incorrect after adding or removing events from a running log<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdadmin(1) that made it impossible to enter useful strings in the &lsquo;WaveForm Caption&rsquo; control on the &lsquo;Edit RDLogEdit&rsquo; dialog<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in RDRenderer that caused segue transitions to be rendered without regard to the &lsquo;No Fade on Segue Out&rsquo; checkbox in the &lsquo;Edit Audio&rsquo; dialog<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in ripcd(8) that caused connections to ModbusTCP devices to fail to be properly restored by the connection watchdog<br />
* <font style="color:red">Bug fix</font>: Fixed a regression in the &lsquo;Edit Event&rsquo; dialog in rdlogmanager(1) that caused the first cart transition type to be incorrect when the &lsquo;Pre-Import Carts&rsquo; list was populated<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in the &lsquo;Add Next&rsquo; [&rsquo;PX&rsquo;] RML that failed to return an error when an invalid offset value was supplied<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in the &lsquo;Add Next&rsquo; [&rsquo;PX&rsquo;] RML that failed to honor the &lsquo;Default Trans. Type&rsquo; setting in the &lsquo;Configure RDAirPlay&rsquo; dialog in rdadmin(1)<br />
<br />
=== 3.4.0 (2020-05-19) ===<br />
* Database verson '''317'''<br />
* <font style="color:red">Bug fix</font>: Fixed a regression in rdairplay(1) that caused two events to be started by a single spacebar tap if a SoundPanel event had been played previously<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdlogmanager(1) that caused the initial event in an imported set to fail receive the proper time and transition type if the &lsquo;Include Import Markers in Finished Logs&rsquo; checkbox in rdadmin(1) had not been ticked<br />
* <font style="color:red">Bug fix</font>: Fixed a regression in rdexport(1) that caused exported file names to be constructed improperly<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdlogmanager(1) that caused &lsquo;Make Post Point&rsquo; label to be displayed without last &lsquo;t&rsquo;<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdairplay(1) where timer was not set properly when crossing midnight<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in the &lsquo;List GPIs&rsquo; dialog in rdadmin(1) that prevented changes in GPI assignments from being propagated to the underlying device<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in the &lsquo;Software Authority&rsquo; driver that caused autodetection of the number of GPIOs in a router to be unreliable<br />
* <font style="color:red">Bug fix</font>: Fixed a regression in &lsquo;RDEventLine&rsquo; that caused the &lsquo;Append Log&rsquo; [&rsquo;AL&rsquo;] RML to append a copy of the currently loaded log instead of the one specified in the RML command<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdlogedit(1) that caused garbled text to appear when &lsquo;Start Immediately&rsquo; was selected in the &lsquo;Edit Log Entry&rsquo; dialog box<br />
* <font style="color:red">Bug fix</font>: Fixed a regression that broke the ability to scroll through Sound Panel panels by means of the mouse wheel<br />
<br />
* <font style="color:green">Functionality</font>: Modified rdairplay(1) to always scroll log to the top when using the hour selector<br />
* <font style="color:green">Functionality</font>: Modified rdlogmanager(1) to disable merge buttons if the selected log does not contain any import links<br />
* <font style="color:green">Functionality</font>: Modified rdadmin(1) Edit Service dialog to display built-in traffic and music import template values<br />
* <font style="color:green">Functionality</font>: Added "Copy To Custom" buttons to rdadmin(1) Edit Service dialog<br />
* <font style="color:green">Functionality</font>: Changed the layout of the &lsquo;Editing Event&rsquo; dialog in rdlogmanager<br />
<br />
* <font style="color:green">Functionality</font>: Removed the &lsquo;Post Point&rsquo; checkbox from the &lsquo;Editing Event&rsquo; dialog in rdlogmanager(1)<br />
* <font style="color:green">Functionality</font>: Renamed the &lsquo;REMARKS&rsquo; field to &lsquo;USER NOTES&rsquo; in the &lsquo;Editing Event&rsquo; and the &lsquo;Edit Clock&rsquo; dialogs in rdlogmanager(1)<br />
* <font style="color:green">Functionality</font>: Added a &lsquo;Trans&rsquo; column to the event list in the &lsquo;Edit Clock&rsquo; and the &lsquo;List Events&rsquo; dialogs in rdlogmanager(1)<br />
<br />
=== 3.3.0 (2020-03-16) ===<br />
* Database verson '''314'''<br />
* <font style="color:red">Bug fix</font>: Fixed regressions in the following switcher drivers that could cause deadlocks and intermittent operation<br />
:* BroadcastTools SS16.4<br />
:* BroadcastTools SS 4.2<br />
:* BroadcastTools SS4.4<br />
:* BroadcastTools SS 8.2<br />
:* BroadcastTools ACS8.2<br />
:* BroadcastTools ADMS 44.22<br />
:* BroadcastTools GPI-16<br />
:* BroadcastTools SRC-16<br />
:* BroadcastTools SRC-8 III<br />
:* BroadcastTools SS 4.1 MLR<br />
* <font style="color:red">Bug fix</font>: Fixed a regression in the implementation of the &lsquo;Set Serial Trap&rsquo; [&lsquo;SI&rsquo;] RML that could cause deadlocks and intermittent operation<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdairplay(1) that could cause random segfaults when updating the Label Widget<br />
* <font style="color:red">Bug fix</font>: Fixed a bug with the &lsquo;%y&rsquo; metadata wildcard where garbage would be returned if a valid year had not been set<br />
* <font style="color:red">Bug fix</font>: Fixed a regression in rdlogmanager(1) that caused trailer whitespace to be generated in the &lsquo;EXT_DATA&rsquo;, &lsquo;EXT_EVENT&rsquo;, &lsquo;EXT_ANNC_TYPE&rsquo; and &lsquo;EXT_CART_NAME&rsquo; log fields when importing from a CounterPoint format log<br />
* <font style="color:red">Bug fix</font>: Fixed the layout of the &lsquo;Matching Carts&rsquo; field in rdlibrary(1)&rsquo;s main window when Realtime Filtering is disabled<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdairplay(1) that would cause a hard-timed log event with a &lsquo;wait&rsquo; parameter set to attempt to play the event twice<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rddbmgr(8) that threw a SQL error when attempting to modify a DB containing tables set to use character set UTF-8 to schema 297<br />
* <font style="color:red">Bug fix</font>: Fixed a race in ripcd(8) that caused arguments to the &lsquo;Run Shell Command&rsquo; [&lsquo;RN&rsquo;] macro to be corrupted<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in the &lsquo;Edit Event&rsquo; dialog in rdlogmanager(1) that caused the Transition Type dropdown to be greyed-out when the &lsquo;IMPORT&rsquo; controls were set to use the built-in music scheduler<br />
* <font style="color:green">Functionality</font>: Added a &lsquo;delta-seconds&rsquo; modifier to Filepath Wildcards to enable positive and negative time offsets<br />
* <font style="color:green">Functionality</font>: Removed support for CD-TEXT from the CD rippers<br />
* <font style="color:green">Functionality</font>: Added support for &lsquo;MusicBrainz&rsquo; CD metadata lookup<br />
* <font style="color:green">Functionality</font>: Added a &lsquo;Web Browser&rsquo; control to the &lsquo;Edit Host&rsquo; dialog in rdadmin(1)<br />
* <font style="color:green">Functionality</font>: Added support for displaying cover art in the MusicBrainz release chooser<br />
* <font style="color:green">Functionality</font>: Added &lsquo;%wm&rsquo; [&lsquo;MusicBrainz Recording ID&rsquo;] and &lsquo;%wr&rsquo; [&lsquo;MusicBrainz Release ID&rsquo;] metadata wildcards<br />
* <font style="color:green">Functionality</font>: Implemented the &lsquo;%wm&rsquo; [&lsquo;MusicBrainz Recording ID&rsquo;] and &lsquo;%wr&rsquo; [&lsquo;MusicBrainz Release ID&rsquo;] metadata wildcards for PyPAD<br />
* <font style="color:green">Functionality</font>: Added support for the &lsquo;%wi&rsquo;, &lsquo;%wm&rsquo; and &lsquo;%wr&rsquo; wildcards to the &lsquo;--metadata-pattern=&rsquo; switch in rdimport(1)<br />
* <font style="color:green">Functionality</font>: Added &lsquo;--set-string-isrc&rsquo;, &lsquo;--set-string-recording-mbid&rsquo; and &lsquo;--set-string-release-mbid&rsquo; switches to rdimport(1)<br />
* <font style="color:green">Functionality</font>: Added support for the &lsquo;%wi&rsquo;, &lsquo;%wm&rsquo; and &lsquo;%wr&rsquo; wildcards to the &lsquo;--metadata-pattern=&rsquo; switch in rdexport(1)<br />
* <font style="color:green">Functionality</font>: Added a &lsquo;%wc&rsquo; [&lsquo;Industry Standard Commercial Identification (ISCI) Code&rsquo;] metadata wildcard<br />
* <font style="color:green">Functionality</font>: Implemented the &lsquo;%wc&rsquo; metadata wildcard for PyPAD<br />
* <font style="color:green">Functionality</font>: Added support for the &lsquo;%wc&rsquo; wildcards to the &lsquo;--metadata-pattern=&rsquo; switch in rdimport(1)<br />
* <font style="color:green">Functionality</font>: Added &lsquo;--set-string-isci&rsquo; switch to rdimport(1)<br />
* <font style="color:green">Functionality</font>: Added support for the &lsquo;%wc&rsquo; wildcard to the &lsquo;--metadata-pattern=&rsquo; switch in rdexport(1)<br />
* <font style="color:green">Functionality</font>: Removed the &lsquo;RDLabel&rsquo; widget<br />
* <font style="color:green">Functionality</font>: Added a &lsquo;Disconnect All Jack Ports&rsquo; [&lsquo;JZ&rsquo;] RML<br />
* <font style="color:green">Functionality</font>: Added a &lsquo;CounterPoint Traffic Reconciliation v2&rsquo; report<br />
<br />
=== 3.2.1 (2020-01-24) ===<br />
* Database verson '''311'''<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdcatch(1) that threw a SQL error when clicking 'OK' on the &lsquo;Edit Cart Event&rsquo; dialog<br />
* <font style="color:red">Bug fix</font>: Fixed a regression in rdimport(1) that caused null characters to be written to cart metadata fields when importing files containing an &lsquo;AIR1&rsquo; RIFF chunk<br />
* <font style="color:red">Bug fix</font>: Fixed a regression in rdcatch(1) that caused the &lsquo;Source&rsquo; dropdown in the &lsquo;Edit Recording&rsquo; dialog to fail to be populated properly<br />
* <font style="color:red">Bug fix</font>: Fixed a regression in the cart selector dialog that caused default focus to be lost on the &lsquo;Filter&rsquo; control after second and subsequent invocations<br />
* <font style="color:red">Bug fix</font>: Fixed a regression in rdcatchd(8) that broke audio metering<br />
* <font style="color:red">Bug fix</font>: Fixed a regression in rdcatchd(8) that could cause download events to hang in an active state<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdcatch(1) that caused DOW flags to fail to be updated correctly on the event list after making a change<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdcatchd(8) that failed to send a MODIFY notification at the end of a Record or Download event<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdconvert that caused a segfault at startup<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdexport(1) that caused output filenames containing multi-byte UTF-8 characters to be corrupt<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdgpimon(1) that caused GPIO cart displays to fail to accurately reflect current state<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdgpimon(1) that caused incorrect state indications to be displayed after switching to a different page<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdimport(1) that caused non-Latin1 characters to be corrupted when using standard input<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdimport(1) that caused UTF-8 multibyte characters in filenames to be corrupted<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdlogmanager(1) that caused spurious log events to be inserted when generating a log<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in ripcd(8) that caused input and output counts to be calculated incorrectly for Software Authority protocol devices containing holes in the input and/or output lists<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in the &lsquo;pypad-shoutcast1.py&rsquo; script that threw an exception when processing PAD containing multi-type UTF-8 characters<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in the &lsquo;pypad_xds.py&rsquo; PyPAD script that could cause it to emit duplicate CIC updates<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in the &lsquo;rivwebcapi&rsquo; validate_tm() function that caused dates containing &lsquo;29 February&rsquo; to always fail regardless of leap-year validity<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in the rdxport service that could cause MODIFY notifications to fail to be sent by the &lsquo;SaveLog&rsquo; WebAPI call<br />
* <font style="color:red">Bug fix</font>: Fixed a regression in rdadmin(1) that caused controls to be hidden in the &lsquo;Edit Report&rsquo; dialog<br />
* <font style="color:red">Bug fix</font>: Fixed a regression in rdlogmanager(1) that caused incorrect logged start times to be generated for imported events<br />
* <font style="color:red">Bug fix</font>: Fixed a regression in the rdxport service that caused the ListCuts WebAPI call to return corrupt data<br />
* <font style="color:red">Bug fix</font>: Fixed a regression in the Web API that caused the and/or corrupt in served XML documents<br />
* <font style="color:green">Functionality</font>: Implemented support for non-realtime library filtering in the &lsquo;Editing Event&rsquo; dialog in rdlogmanager(1)<br />
* <font style="color:green">Functionality</font>: Added a &lsquo;Show Start Time As&rsquo; control to the &lsquo;Edit Log&rsquo; dialog in rdlogedit(1)<br />
* <font style="color:green">Functionality</font>: Made the rdlogedit(1) main window and &lsquo;Edit Log&rsquo; dialog window sizes persistent<br />
* <font style="color:green">Functionality</font>: Added a work-around in the &lsquo;PyPAD.Receiver().__openDb()&rsquo; method to work with versions of MySQLdb that do not support the &lsquo;password=&rsquo; parameter in &lsquo;MySQLdb.connect()&rsquo;<br />
* <font style="color:green">Functionality</font>: Added &lsquo;Repetitions=&rsquo; and &lsquo;RepetitionDelay=&rsquo; directive to the configuration of the &lsquo;pypad_xds.py&rsquo; PyPAD script<br />
* <font style="color:green">Functionality</font>: Added &lsquo;Username=&rsquo; and &lsquo;Password=&rsquo; directives to the &lsquo;pypad_httpget.py&rsquo; script for use for HTTP Basic Authentication<br />
* <font style="color:green">Functionality</font>: Added the ability to view a report at time of generation in rdlogmanager(1)<br />
* <font style="color:green">Functionality</font>: Adjusted the position of the &lsquo;Matching Carts&rsquo; readout on the main window of rdlibrary(1)<br />
* <font style="color:green">Functionality</font>: Changed the &lsquo;Time&rsquo; column in the &lsquo;Full Log Widget&rsquo; in rdairplay(1) to &lsquo;Sch. Time&rsquo;<br />
* <font style="color:green">Functionality</font>: Implemented a work-around for importing CartChunk data containing a buggy ENCO implemention of the &lsquo;AUD&rsquo; CartChunk timer<br />
* <font style="color:green">Functionality</font>: Modified the Full Log widget in rdairplay(1) to display logged start times even when the referenced cart does not exist<br />
* <font style="color:green">Functionality</font>: Tweaked the &lsquo;LogLineBox::mouseMoveEvent()&rsquo; method in rdairplay(1) to require a cursor movement of at least 20 pixels before generating a cart drag<br />
<br />
=== 3.2.0 (2019-10-31) ===<br />
* Database verson '''311'''<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rddbmgr(8) that caused a segfault when processing a SQL error<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdimport(1) that caused it to throw an exception when given a &lsquo;--metadata-pattern&rsquo; of less than three characters<br />
* <font style="color:red">Bug fix</font>: Fixed a regression in rdimport(1) that caused a segfault when invoked with the &lsquo;--metadata-pattern&rsquo; and &lsquo;--log-syslog&rsquo; switches<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdairplay(1) that caused space bar presses to start the next event in the Main Log even when &lsquo;Space Bar Action&rsquo; was set to &lsquo;None&rsquo;<br />
* <font style="color:red">Bug fix</font>: Fixed bugs in 'RDWaveFile' that caused strings of null characters to be written into unfilled CartChunk string fields<br />
* <font style="color:red">Bug fix</font>: Fixed a regression in 'rdxport.cgi' that caused a check of the Rivendell services to be triggered each time a WebAPI function was invoked<br />
* <font style="color:red">Bug fix</font>: Fixed a regression in rdsoftkeys(1) that threw a segfault at startup<br />
* <font style="color:green">Functionality</font>: Added the ability to configure the caption displayed for the first and third voicetrack waveforms in the Voicetracker dialog in rdlogedit(1)<br />
* <font style="color:green">Functionality</font>: Reworked the font management system to permit the fonts used in the UI to be specified in rd.conf(5).<br />
* <font style="color:green">Functionality</font>: Added support for posting podcast content via SFTP<br />
* <font style="color:orange">Documentation</font>: Added manual pages for rd.conf(5) and rdsoftkeys(1)<br />
<br />
=== 3.1.0 (2019-09-19) ===<br />
* Database verson '''310'''<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdairplay(1) and rdvairplayd(8) where only the first log machine set to &lsquo;load specified log&rsquo; would do so<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdlogedit(1) that caused hard start log items to have the Hour field doubled<br />
* <font style="color:red">Bug fix</font>: Refactored the Python &lsquo;pypad.Update.shouldBeProcessed()&rsquo; method to work correctly when using <tt>try:</tt> blocks in a PyPAD script<br />
* <font style="color:red">Bug fix</font>: Refactored the PyPAD scripts to route updates properly in accordance with log directives in their configuration file<br />
* <font style="color:red">Bug fix</font>: Fixed a bug that broke dropbox logging to individual files<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in caed(8) that broke timescaling support<br />
* <font style="color:red">Bug fix</font>: Fixed bugs in rdlibrary(1) that broke CD ripping<br />
* <font style="color:green">Functionality</font>: Refactored rdalsaconfig(1) to be more robust and intuitive<br />
* <font style="color:green">Functionality</font>: Added a &lsquo;pypad_httpget.py&rsquo; PyPAD script<br />
* <font style="color:green">Functionality</font>: Updated CDDB code to use protocol level 6 (UTF-8 enabled)<br />
* <font style="color:green">Functionality</font>: Added an &lsquo;%l&rsquo; wildcard to Filepath Wildcards for &lsquo;unpadded month&rsquo;<br />
=== 3.0.3 (2019-08-05) ===<br />
* Database verson '''308'''<br />
* <font style="color:red">Bug fix</font>: Fixed a regression in ripcd(8) that broke the 'Connect Jack Ports' ['JC'] and 'Disconnect Jack Ports' ['JD'] RMLs<br />
=== 3.0.2 (2019-07-31) ===<br />
* Database verson '''308'''<br />
* <font style="color:red">Bug fix</font>: Fixed a problem with the Local Audio Adapter switcher driver that caused incorrect operation with the 'Switch Add' ['SA'], 'Switch Remove' ['SR'] and 'Switch Take' ['ST'] RMLs<br />
* <font style="color:red">Bug fix</font>: Fixed a regression in rdlibrary(1) that caused macro carts entries to turn red after being viewed<br />
* <font style="color:red">Bug fix</font>: Fixed regressions that made operations with serial devices unreliable<br />
* <font style="color:green">Functionality</font>: Added support for switchers using the Grass Valley 7000 series protocol<br />
=== 3.0.1 (2019-07-16) ===<br />
* Database verson '''308'''<br />
* <font style="color:red">Bug fix</font>: Rivendell is now Unicode UTF-8 clean<br />
* <font style="color:red">Bug fix</font>: Qt4 is now used throughout Rivendell instead of Qt3<br />
* <font style="color:green">Functionality</font>: The Rivendell Loadable Modules system for processing PAD data has been completely replaced by PyPAD, allowing PAD processing plug-ins to be written in the popular Python scripting langauge. Backward compatible replacement scripts for many of the RLM plug-ins supplied in Rivendell v2.x are included<br />
* <font style="color:green">Functionality</font>: Added a compatibility library to facilitate the use of the Rivendell Web API in external applications<br />
* <font style="color:green">Functionality</font>: A system of virtual log machines has been added, allowing play-out of up to 23 logs simultaneously<br />
* <font style="color:green">Functionality</font>: Rivendell is now fully systemd compatibile<br />
* <font style="color:green">Functionality</font>: The Windows ports of rdlogedit(1) and rdlogmanager(1) have been removed<br />
* <font style="color:orange">Documentation</font>: The Rivendell Operations and Administration Guide has been updated and enhanced with more details about running a Rivendell system<br />
* <font style="color:orange">Documentation</font>: New manual pages have been added for Rivendell command that previously did not have them<br />
See [http://caspian.paravelsystems.com/pipermail/rivendell-dev/2019-July/027867.html this message] on the Rivendell Dev mailing list for more details about installing and upgrading Rivendell.<br />
=== 2.19.3 (2018-10-31) ===<br />
* Database verson '''275'''<br />
* <font style="color:red">Bug fix</font>: Fixed a bug that caused the &lsquo;Switcher Matrix&rsquo; and &lsquo;Switcher Output&rsquo; dropdowns to populate incorrect values when selecting a non-local &lsquo;Switcher Host&rsquo; in the &lsquo;Configure RDCatch&rsquo; dialog in rdadmin(1)<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdlogmanager(1) that caused the initial transition type specified in the &lsquo;IMPORT&rsquo; section of the &lsquo;Editing Event&rsquo; dialog to be applied to both the parent log link and the first imported event when the &lsquo;PRE-IMPORT CARTS&rsquo; list was empty and no Timed Start was enabled<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in ripcd(8) that caused process of the &lsquo;Air Gate&rsquo; [&lsquo;AG&rsquo;] RML to fail<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdimport(1) that would throw a spurious SQL error when using the &lsquo;--to-cart=&rsquo; switch with an already existing cart [Issue #000217]<br />
* <font style="color:red">Bug fix</font>: Fixed a regression that caused rdimport(1) to return a &lsquo;no free carts available in specified group&rsquo; when invoked without the &lsquo;--to-cart=&rsquo; option<br />
* <font style="color:red">Bug fix</font>: Fixed a regression in rdairplay(1) that caused carts Added or Copied to a log to have a PLAY transition regardless of the default transition type set in rdadmin(1)<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in &lsquo;RDTextValidator&rsquo; that failed to catch banned characters added to the interior of existing strings<br />
* <font style="color:red">Bug fix</font>: Various other bugs fixed<br />
* <font style="color:green">Functionality</font>: Added a &lsquo;TranscodingDelay=&rsquo; parameter to the &lsquo;[Tuning]&rsquo; section of rd.conf(5)<br />
* <font style="color:green">Functionality</font>: Added a Switcher/GPIO driver for the BroadcastTools SS 2.1 switcher<br />
* <font style="color:green">Functionality</font>: Added support for GPIO on AudioScience adapters to the 'Local Audio Adapter' Switcher/GPIO driver<br />
* <font style="color:green">Functionality</font>: Renamed the 'Add Next' ['PX'] RML to 'Insert Cart' ['PX'] and added two optional arguments to allow specification of the insertion position and transition type<br />
* <font style="color:green">Functionality</font>: Added support for Spinitron v2 to the 'spinitron_plus' RLM<br />
* <font style="color:green">Functionality</font>: Added an &lsquo;ExportedFileMode=&rsquo; parameter to the &lsquo;[Tuning]&rsquo; section of rd.conf(5) to permit permission mode of exported audio files to be specified<br />
* <font style="color:orange">Documentation</font>: Documented GPIO support for AudioScience cards in the &lsquo;Local Audio Adapter&rsquo; section of the Operations Guide<br />
<br />
=== 2.19.2 (2018-04-14) ===<br />
* Database verson '''275'''<br />
* <font style="color:red">Bug fix</font>: Fixed a regression in the HPI support layer that broke audio capture with adapters lacking DMA bus-mastering support<br />
<br />
=== 2.19.1 (2018-03-27) ===<br />
* Database verson '''275'''<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdlogmanager(1) that caused DB corruption when a clock was deleted while still being assigned to a grid.<br />
* <font style="color:green">Functionality</font>: Implemented support for DMA bus-mastering for AudioScience HPI devices. This release supports the latest ASI cards that require DMA bus-mastering support. You may also need to update the hpklinux driver to v4.20.10 or later. RPMs for CentOS 7 are available at [http://static.paravelsystems.com/audioscience/centos/7/ Paravel&rsquo;s website].<br />
* <font style="color:green">Functionality</font>: Removed rdhpiinfo(8). Replaced by the stand-alone &lsquo;hpiinfo&rsquo; package.<br />
* <font style="color:green">Functionality</font>: Removed the event time check for Playout events in rdcatch(1), as there is no sane way to determine a consistently &lsquo;free&rsquo; playout time in the face of shifting cut lengths.<br />
<br />
=== 2.19.0 (2018-02-22) ===<br />
* Database verson '''275'''<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdlibrary(1) that caused evergreen carts/cuts to fail to be highlighted in the correct color<br />
* <font style="color:green">Functionality</font>: Added the ability to specify automatic log deletion on the basis of either the Creation Date or Air Date of the log<br />
* <font style="color:green">Functionality</font>: Log Importation Changes. Changed music and traffic importation so that parent link events are still visible in linked logs<br />
* <font style="color:green">Functionality</font>: Log Locking: implemented a system-wide protocol to prevent changes made to a log on one host from being inadvertently overwritten from another host<br />
<br />
=== 2.18.2 (2017-12-29) ===<br />
* Database version '''272'''<br />
* <font style="color:red">Bug fix</font>: Fixed a bug that caused creation of new clocks in rdlogmanager(1) to fail to initialize music scheduler components correctly in the database<br />
<br />
=== 2.18.1 (2017-12-22) ===<br />
* Database version '''272'''<br />
* <font style="color:red">Bug fix</font>: Fixed a bug that caused creation and initialization of a new Rivendell database to fail<br />
<br />
=== 2.18.0 (2017-12-21) ===<br />
* Database version updated to '''272'''<br />
* <font style="color:red">Bug fix</font>: Various bug fixes. See the [https://github.com/ElvishArtisan/rivendell/blob/stable/ChangeLog ChangeLog] for details<br />
* <font style="color:green">Functionality</font>: Group Cut Expiration Policy: Added the ability to set a default End Date/Time for new cuts on a per-group basis<br />
* <font style="color:green">Functionality</font>: Host Short Name: Added a ''Short Name'' parameter to Host profiles<br />
* <font style="color:green">Functionality</font>: Macro Carts: It is now possible to use filepath wildcards in macro carts<br />
* <font style="color:green">Functionality</font>: New Host Wildcards: Added two host wildcards: ''%r'' for ''Rivendell Host Name, and ''%R'' for ''Rivendell Short Name''<br />
* <font style="color:green">Functionality</font>: Provisioning Support: Added four new directives and to the ''[Provisioning]'' section of ''/etc/rd.conf''<br />
* <font style="color:green">Functionality</font>: MySQL Configuration: Added three parameters to the ''[mySQL]'' section of ''/etc/rd.conf''<br />
* <font style="color:green">Functionality</font>: Dropbox Enhancements: Added the ability to specify creation of default Segue Markers when processing files via dropbox<br />
* <font style="color:green">Functionality</font>: '''RDImport'''/DropBox Enhancements: Added the ability to specify start and end datetimes via metadata pattern<br />
* <font style="color:green">Functionality</font>: '''RDCatch''' Event Filtering: Added the ability to filter by event type in '''RDCatch'''<br />
* <font style="color:green">Functionality</font>: Log Searching: A search filter (similar to that employed for seaching for carts) has been added to the List Logs dialogs<br />
* <font style="color:green">Functionality</font>: Service Filtering in '''RDLogEdit''': Added the ability to limit the visible set of logs in RDLogEdit by user<br />
* <font style="color:green">Functionality</font>: Log Purge/Deletion Changes: Logs created manually (in rdlogedit(1) or rdairplay(1)) are now assigned a default purge/deletion date in accordance with the setting in RDAdmin->ManageServices<br />
* <font style="color:green">Functionality</font>: Log Importation Changes: Changed music and traffic importation so that parent link events are still visible in linked logs<br />
* <font style="color:green">Functionality</font>: Web API Changes: Added &lsquo;FILTER&rsquo; and &lsquo;RECENT&rsquo; call parameters to the &lsquo;ListLogs&rsquo; Web API call<br />
* <font style="color:orange">Documentation</font>: Documentation Overhaul: The Rivendell Operations and Administration Guide has been exapanded and incorporated as part of the base Rivendell source in ''docs/opsguide''. This guide is available as a separate CentOS package: ''rivendell-opsguide''<br />
* <font style="color:orange">Documentation</font>: Rivendell APIs: The various application programming interfaces (notably the web API) is now documented and is included with the standard distribution<br />
<br />
=== 2.17.0 (2017-10-11) ===<br />
* Database version updated to '''268'''<br />
* <font style="color:red">Bug fix</font>: Web API: Many fixes and enhancements to improve operation<br />
* <font style="color:red">Bug fix</font>: Many other bug fixes; see the [https://github.com/ElvishArtisan/rivendell/blob/stable/ChangeLog ChangeLog] for all the details (search for ''2.17.0'' and work your way backward through the list of changes)<br />
* <font style="color:green">Functionality</font>: Dropboxes: Added the ability to force imports to be imported as mono, also added the ability to reset individual dropboxes<br />
* <font style="color:green">Functionality</font>: New Switcher/GPIO Devices: Support has been added for the following Switcher/GPIO devices:<br />
:* Broadcast Tools Universal 4.1 MLR&gt;&gt;Web Switcher<br />
:* WheatNet LIO<br />
:* WheatNet SLIO<br />
* <font style="color:green">Functionality</font>: Macros: Added the &lsquo;Air Gate&rsquo; &#91;&lsquo;AG&rsquo;&#93; RML to permit conditional execution of RML on the basis of the status of the On-Air flag<br />
* <font style="color:green">Functionality</font>: <br />
* <font style="color:green">Functionality</font>: User Authentication: It is now possible to configure RDLogin to require entry of the user-name, rather than picking the name off of a list. See the &lsquo;Show User List in RDLogin&rsquo; checkbox in RDAdmin-&gt;SystemSettings<br />
* <font style="color:green">Functionality</font>: Log Rendering (EXPERIMENTAL): It is now possible to &lsquo;render&rsquo; a log as a single audio object (file or cart/cut) without the need to play it out while capturing the audio in realtime. Render support is available through the &lsquo;Render&rsquo; button in RDLogEdit and through the command-line rdrender(1) utility. See the rdrender(1) man page for details<br />
* <font style="color:green">Functionality</font>: Provisioning Support. Added a [Provisioning] section to rd.conf(5) with directives to facilitate the automatic provisioning of Rivendell instances. See the comments in the [Provisioning] section of the sample rd.conf(5) file<br />
* <font style="color:orange">Artwork</font>: New Icons: Implemented a new icon set, with individualized icons for each Rivendell module<br />
<br />
=== 2.16.0 (2017-06-02) ===<br />
* Database version updated to '''263'''<br />
* <font style="color:red">Bug fix</font>: Many bug fixes; see the [https://github.com/ElvishArtisan/rivendell/blob/stable/ChangeLog ChangeLog] for all the details (search for ''2.16.0'' and work your way backward through the list of changes)<br />
* <font style="color:green">Functionality</font>: Audio Store Hashing. Rivendell now automatically generates a SHA1 hash for each file in the audio store and records this value in the database, thus permitting automated recovery of audio in the event of loss or damage to the audio store's filesystem directory<br />
* <font style="color:green">Functionality</font>: Added switcher support for Kernel GPIO devices, such as the GPIO interface on the Raspberry Pi 2 and 3<br />
* <font style="color:green">Functionality</font>: Added switcher support for Modbus TCP devices<br />
* <font style="color:green">Functionality</font>: Added an rdconvert(1) utility<br />
* <font style="color:green">Functionality</font>: It is now possible to delegate authentication of Rivendell users by means of a PAM module, thus permitting &lsquo;''single sign-on''&rsquo; integration with systems such as ActiveDirectory and FreeIPA<br />
* <font style="color:green">Functionality</font>: Added various methods to the Rivendell Web API to permit integration with external audio and log editors<br />
<br />
=== 2.15.3 (2017-03-24) ===<br />
* Database version '''259''' <br />
* <font style="color:red">Bug fix</font>: Fixed bugs in MP3 file importation that caused files with variable bit rate (VBR) to be truncated during import.<br />
* <font style="color:red">Bug fix</font>: Fixed a bug that caused dynamically loaded codec libraries to fail to be detected if the corresponding library&rsquo;s so-called ''-devel'' package was not installed. <br />
* <font style="color:green">Functionality</font>: Added an ''RLM'' for generating [http://tagstation.com/ TagStation] RLM events for [http://nextradioapp.com/ NextRadio].<br />
* <font style="color:green">Functionality</font>: Added '''AddLog''', '''DeleteLog''' and '''SaveLog''' calls to the web API, along with general cleanup and correction of the overall Web API subsystem.<br />
<br />
=== 2.15.2 (2017-01-13) ===<br />
* Database version '''259'''<br />
* <font style="color:orange">Documentation</font>: Document the interfaces for '''inserting inline traffic breaks''' and for '''inserting voice track markers''' (also add an example in ''docs/examples/'')<br />
* <font style="color:red">Bug fix</font>: in ''rdadmin/createdb.cpp'' that caused obsolete fields in the 'SERVICES' table to be included when creating a new database.<br />
* <font style="color:red">Bug fix</font>: in ''lib/rdwavefile.cpp'' that caused RDXL chunks to be written with odd chunk lengths.<br />
* <font style="color:red">Bug fix</font>: in ''lib/rdsimpleplayer.cpp'' that caused RDAirPlay to freeze when attempting to audition an expired cart.<br />
* <font style="color:green">Functionality</font>: Added a '''LockRdairplayMemory=''' parameter to the [Hacks] section.<br />
* <font style="color:green">Functionality</font>: Modified the LiveWire Multicast GPIO driver to generate GPO events using the 'I' event type.<br />
<br />
=== 2.15.1 (2016-08-05) ===<br />
* Database version '''259'''<br />
* <font style="color:red">Bug fix</font>: fixed WAV file export code to enhance compatibility with third-party applications<br />
<br />
=== 2.15.0 (2016-07-29) ===<br />
* <font style="color:red">Bug fix</font>: complete support for the MySQL/MariaDB InnoDB database engine (for better transaction processing of database updates)<br />
* <font style="color:green">Functionality</font>: enhancements to ''rdexport'' that include full metadata in RDXML format<br />
* <font style="color:green">Functionality</font>: add CLI command ''rdclilogedit'' that enables editing of Rivendell Logs from the command line (without a GUI app)<br />
* <font style="color:green">Functionality</font>: Update the database to version 259.<br />
<br />
=== 2.14.1 (2016-06-11) ===<br />
* Database version '''258'''<br />
* <font style="color:red">Bug fix</font>: additional fixes for newer versions of MySQL (and MariaDB)<br />
<br />
=== 2.14.0 (2016-06-10) ===<br />
* Database version '''258'''<br />
* <font style="color:green">Functionality</font>: add the ability to capture real-time events in RDCatch recordings and replay the events in sync with the captured audio<br />
* <font style="color:green">Functionality</font>: add RML Macro ''Cut Event'' (''CE'') for placing real-time event markers into active RDCatch recordings<br />
* <font style="color:green">Functionality</font>: add support for specifying precise start time and length parameters for Traffic events that are embedded in Music events<br />
* <font style="color:red">Bug fix</font>: fixed a bug in RDAdmin that could cause creation of a new database to fail<br />
* <font style="color:red">Bug fix</font>: fix issues that prevent compilation under newer versions of the GNU C compiler suite<br />
* <font style="color:red">Bug fix</font>: various enhancements and fixes to the new(ish) ''rdexport'' utility<br />
* <font style="color:red">Bug fix</font>: initial support for newer versions of MySQL (and MariaDB)<br />
* <font style="color:red">Bug fix</font>: add code to allow embedded traffic breaks to be specified with start time and length in the music schedule.<br />
<br />
=== 2.13.0 (2016-05-10) ===<br />
* Database version '''255'''<br />
* <font style="color:green">Functionality</font>: add RLM plugin for the Paravel Systems ''WallTime'' clock<br />
* <font style="color:green">Functionality</font>: add new CLI command ''rdexport'' to export Carts with metadata<br />
* <font style="color:green">Functionality</font>: new report: ''Cut Log'' that includes the Description field for played events<br />
* <font style="color:red">Bug fix</font>: fixed a crash in RDLibrary when attempting to open multiple Carts<br />
* <font style="color:red">Bug fix</font>: fixed RDLogEdit to improve performance when saving and updating logs<br />
* <font style="color:red">Bug fix</font>: fixed a bug that caused marker data to be deleted when exporting a Cut<br />
<br />
=== 2.12.0 (2016-04-14) ===<br />
* Database version '''254'''<br />
* <font style="color:green">Functionality</font>: add support for sequential Cut play-out - you can now configure carts to play cuts in a fixed, sequential order rather than by weight value<br />
* <font style="color:green">Functionality</font>: add support for ''Broadcast Tools'' switchers<br />
* <font style="color:green">Functionality</font>: add RML macro '''Copy Cut''' (''CP'') to copy cuts between carts<br />
* <font style="color:green">Functionality</font>: add option to show only &ldquo;recent&rdquo; logs in RDLogEdit<br />
* <font style="color:green">Functionality</font>: add new web API methods related to Scheduler Codes<br />
* <font style="color:red">Bug fix</font>: fixed a bug that caused issues with Services containing the &ldquo;-&rdquo; (dash) character<br />
<br />
=== 2.11.0 (2015-09-18) ===<br />
* Database version '''252'''<br />
* <font style="color:green">Functionality</font>: add RDCatch upload/download protocols ''sftp'' and ''scp''<br />
* <font style="color:green">Functionality</font>: add support to import ''MP4/AAC'' files<br />
* <font style="color:green">Functionality</font>: add support for the ''Ross NK'' series video switcher<br />
* <font style="color:green">Functionality</font>: add support for ''PCM24'' in the core audio library code<br />
* <font style="color:red">Bug fix</font>: re-wrote the CD ripper code to make it faster and more reliable<br />
* <font style="color:red">Bug fix</font>: fixed several bugs related to audio data and buffering<br />
* <font style="color:red">Bug fix</font>: Normalized service clock data from the 'SERVICES' to the 'SVC_CLOCKS' table<br />
<br />
=== 2.10.3 (2015-02-24) ===<br />
* Database version '''242'''<br />
* <font style="color:green">Functionality</font>: add RLM (plugin) for Live365 streaming service (which is defunct as of Summer 2016)<br />
* <font style="color:green">Functionality</font>: add &ldquo;MrMaster&rdquo; and &ldquo;Spin Count&rdquo; reports<br />
* <font style="color:green">Functionality</font>: add support for audio switcher devices that use the &ldquo;Software Authority&rdquo; protocol<br />
* <font style="color:green">Functionality</font>: add ability to set segue markers in the CLI app ''rdmarkerset''<br />
* <font style="color:red">Bug fix</font>: fixed a bug that caused issues with Services containing a <Space> character in the service name<br />
<br />
=== 2.10.2 (2014-11-25) ===<br />
* Database version '''242'''<br />
* <font style="color:green">Functionality</font>: CLI ''rdimport'' enhancement: add two date-related options to the command<br />
* <font style="color:green">Functionality</font>: add column for ELR data in RDLogEdit<br />
* <font style="color:red">Bug fix</font>: fixed a bug in the Audio Science adapter for cards with only AES3 ports<br />
<br />
=== 2.10.1 (2014-11-04) ===<br />
* Database version '''242'''<br />
* <font style="color:green">Functionality</font>: add &ldquo;DSP utilization and profiling&rdquo; info for Audio Science adapters<br />
* <font style="color:green">Functionality</font>: add the column &ldquo;EXT DATA&rdquo; to the &ldquo;Edit Log&rdquo; screen in RDLogEdit<br />
* <font style="color:red">Bug fix</font>: fixed a memory fault (crash) in RDLogEdit when dropping a cart that was being used in a log</div>
DKlann
http://wiki.rivendellaudio.org/index.php?title=Auto-Recovery_After_a_Power_Failure&diff=638
Auto-Recovery After a Power Failure
2023-03-22T16:33:00Z
<p>DKlann: Mention removal of .rdairplaylock.</p>
<hr />
<div>==Configuring the server==<br />
<br />
Your server should be protected against power outages, but not everyone has the luxury of a generator backup. At the least a good UPS should provide for a clean shutdown. When power is restored, the following will automatically start RDAirplay and load the appropriate log:<br />
<br />
#Set the BIOS to automatically power the computer on after a power failure.<br />
#Set up the Linux workstation to automatically log in all the way straight to the desktop (i.e. don't require or else automatically provide the user credentials so that there is no logon prompt when the computer is powered up). This could be considered a security risk in some environments: a password protected screen saver may help mitigate the exposure.<br />
#Place a shortcut that calls RDAirplay in the startup folder in KDE (or whichever desktop manager is used).<br />
#In the shortcut (script, etc.), use the appropriate command-line switches for 'rdairplay' to load a log automatically. The usual variables (month, day, year, etc.) work as in Rivendell, since RD uses the standard variables used in the 'date' program in Linux. (See below.)<br />
<br />
You may need to remove RDAirplay's lock file if RDAirplay complains with:<br />
<br />
[[File:Multiple-instances-not-allowed.png|400px|thumb|center|Multiple Instances Not Allowed]]<br />
<br />
and if you are ''certain'' no other instance is running, you should remove the file <tt>~/.rdairplaylock</tt>.<br />
<br />
It may be that RDAirplay can not be made to start up in the middle of a long-form cart that should be playing. If the log consists primarily of carts that are all designed to have a non-hard-timed PLAY or SEGUE transition, you might have a problem getting the log to start back up, so you might consider putting in at least one hard-timed event per hour if the log allows it.<br />
<br />
==Example of the shortcut placed in the autostart directory==<br />
<br />
For reference, here's a shortcut that should be put into the <homedir>/.kde/Autostart/ directory on a Rivendell system that is designed to autostart RDAirplay after a power failure. <br />
It will display as an icon in a graphical environment, but this is what will display when you cat the file itself from the command line. (The shortcut is actually just a text file containing appropriate entries.)<br />
<br />
Note particularly the "Exec" line below. The Rivendell log name is called "fri" and what the "|sed ..." stuff does is change all the upper-case characters to lower-case. (Of course, one could simply rename the logs, but that would be too easy.) Adapt the line to match your naming convention as necessary.<br />
<br />
Also note the "Icon" entry: It will have to point to the location of your icons and RDUSER changed to the name of the user you run Rivendell as.<br />
<br />
> cat ~/.config/autostart/rdairplay.desktop<br />
<br />
[Desktop Entry]<br />
BinaryPattern=<br />
Categories=Qt<br />
Comment=<br />
Comment[en_US]=<br />
Encoding=UTF-8<br />
Exec=rdairplay --log1=`date +%a|sed y/ABCDEFGHIJKLMNOPQRSTUVWXYZ/abcdefghijklmnopqrstuvwxyz/`:+<br />
GenericName=Rivendell On-Air Playout<br />
GenericName[en_US]=Rivendell On-Air Playout<br />
Icon=/home/RDUSER/cvs/rivendell/icons/rivendell-32x32.xpm<br />
MimeType=<br />
Name=RDAirPlay<br />
Path=<br />
StartupNotify=true<br />
Terminal=false<br />
TerminalOptions=<br />
Type=Application<br />
X-DCOP-ServiceType=<br />
X-KDE-SubstituteUID=false<br />
X-KDE-Username=<br />
<br />
-------------<br />
(Many thanks to Sherrod Munday for the above procedure.)</div>
DKlann
http://wiki.rivendellaudio.org/index.php?title=File:Multiple-instances-not-allowed.png&diff=637
File:Multiple-instances-not-allowed.png
2023-03-22T16:25:57Z
<p>DKlann: Screenshot showing the dialog when attempting to open a subsequent instance of RDAirplay.</p>
<hr />
<div>Screenshot showing the dialog when attempting to open a subsequent instance of RDAirplay.</div>
DKlann
http://wiki.rivendellaudio.org/index.php?title=Auto-Recovery_After_a_Power_Failure&diff=636
Auto-Recovery After a Power Failure
2023-03-22T16:15:35Z
<p>DKlann: Change the path of file rdairplay.desktop</p>
<hr />
<div>==Configuring the server==<br />
<br />
Your server should be protected against power outages, but not everyone has the luxury of a generator backup. At the least a good UPS should provide for a clean shutdown. When power is restored, the following will automatically start RDAirplay and load the appropriate log:<br />
<br />
#Set the BIOS to automatically power the computer on after a power failure.<br />
#Set up the Linux workstation to automatically log in all the way straight to the desktop (i.e. don't require or else automatically provide the user credentials so that there is no logon prompt when the computer is powered up). This could be considered a security risk in some environments: a password protected screen saver may help mitigate the exposure.<br />
#Place a shortcut that calls RDAirplay in the startup folder in KDE (or whichever desktop manager is used).<br />
#In the shortcut (script, etc.), use the appropriate command-line switches for 'rdairplay' to load a log automatically. The usual variables (month, day, year, etc.) work as in Rivendell, since RD uses the standard variables used in the 'date' program in Linux. (See below.)<br />
<br />
It may be that RDAirplay can not be made to start up in the middle of a long-form cart that should be playing. If the log consists primarily of carts that are all designed to have a non-hard-timed PLAY or SEGUE transition, you might have a problem getting the log to start back up, so you might consider putting in at least one hard-timed event per hour if the log allows it.<br />
<br />
==Example of the shortcut placed in the autostart directory==<br />
<br />
For reference, here's a shortcut that should be put into the <homedir>/.kde/Autostart/ directory on a Rivendell system that is designed to autostart RDAirplay after a power failure. <br />
It will display as an icon in a graphical environment, but this is what will display when you cat the file itself from the command line. (The shortcut is actually just a text file containing appropriate entries.)<br />
<br />
Note particularly the "Exec" line below. The Rivendell log name is called "fri" and what the "|sed ..." stuff does is change all the upper-case characters to lower-case. (Of course, one could simply rename the logs, but that would be too easy.) Adapt the line to match your naming convention as necessary.<br />
<br />
Also note the "Icon" entry: It will have to point to the location of your icons and RDUSER changed to the name of the user you run Rivendell as.<br />
<br />
> cat ~/.config/autostart/rdairplay.desktop<br />
<br />
[Desktop Entry]<br />
BinaryPattern=<br />
Categories=Qt<br />
Comment=<br />
Comment[en_US]=<br />
Encoding=UTF-8<br />
Exec=rdairplay --log1=`date +%a|sed y/ABCDEFGHIJKLMNOPQRSTUVWXYZ/abcdefghijklmnopqrstuvwxyz/`:+<br />
GenericName=Rivendell On-Air Playout<br />
GenericName[en_US]=Rivendell On-Air Playout<br />
Icon=/home/RDUSER/cvs/rivendell/icons/rivendell-32x32.xpm<br />
MimeType=<br />
Name=RDAirPlay<br />
Path=<br />
StartupNotify=true<br />
Terminal=false<br />
TerminalOptions=<br />
Type=Application<br />
X-DCOP-ServiceType=<br />
X-KDE-SubstituteUID=false<br />
X-KDE-Username=<br />
<br />
-------------<br />
(Many thanks to Sherrod Munday for the above procedure.)</div>
DKlann
http://wiki.rivendellaudio.org/index.php?title=ChangeSummary&diff=635
ChangeSummary
2023-01-30T04:38:56Z
<p>DKlann: Version 3.6.7.</p>
<hr />
<div>__NOTOC__<br />
== Rivendell Change Summary ==<br />
<br />
This page contains version change descriptions in summary form for Rivendell versions released within at least the most recent five years (quite probably longer). Change descriptions are limited (mostly) to user-visible changes.<br />
<br />
Please see the [https://raw.githubusercontent.com/ElvishArtisan/rivendell/master/ChangeLog ChangeLog] and [https://github.com/ElvishArtisan/rivendell/blob/master/NEWS NEWS] files in the [https://github.com/elvishartisan/rivendell source code] for a complete list of changes and bug fixes.<br />
<br />
See the [https://github.com/elvishartisan/rivendell/issues Issues] list for current reported bugs, issues and feature requests.<br />
<br />
=== 3.6.7 (2023-01-27) ===<br />
<br />
* Database verson '''347'''<br />
<br />
* <font style="color:red">Bug fix</font>: Fixed broken waveform generation on ARM architectures<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdcatchd(8) that caused record events to be captured with the incorrect sampling rate<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in the podcasting subsystem that broke validation of the &lsquo;direct&rsquo; name space<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdlibrary(1) that caused the field names for the &lsquo;FILENAME&rsquo; and &lsquo;LENGTH&rsquo; fields in the &lsquo;Cart Data Dump (CSV)&rsquo; report to be corrupted<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdservice(8) that could cause dropboxes to be instantiated with invalid segue level values<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdlogmanager(1) that caused the slop factors for inline traffic events to fail to be applied when importing a traffic log<br />
* <font style="color:orange">Documentation</font>: Corrected errors in the WebAPI documentation regarding the argument type of the &lsquo;LINE&lt;n&gt;_TIME_TYPE&rsquo; field in the &lsquo;SaveLog&rsquo; call<br />
<br />
=== 3.6.6 (2022-10-02) ===<br />
<br />
* Database verson '''347'''<br />
<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdrssd(8) that caused a podcast episode to be deleted immediately after being made active if the &lsquo;Air Date/Time&rsquo; was set for the future and &lsquo;Item Expires&rsquo; was set to &lsquo;No&rsquo; in the &lsquo;Editing Item&rsquo; dialog<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdcastmanager(1) that caused incorrect ordering when sorting by the &lsquo;Start&rsquo; and &lsquo;Expiration&rsquo; columns in the &lsquo;Podcast Item List&rsquo; dialog<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in the CDDB parser that caused it to emit an error message when processing a 202 response<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in PyPAD where resolution of datetimes could be incorrect<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdservice(8) that could cause a segfault (crash) when started with a previous instance running<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdlogmanager(1) that could cause a segfault (crash) when merging a log<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdrssd(8) that caused incorrect error data to be logged<br />
* <font style="color:red">Bug fix</font>: Fixed a regression in the Disc Ripper in rdlibrary(1) that caused manual changes to track metadata to be incorrectly applied<br />
* <font style="color:green">Functionality</font>: Added &lsquo;--by-isci&rsquo; and &lsquo;--dump-isci-xref&rsquo; options to rdimport(1) and modified rdimport(1) to allow the &lsquo;--by-isci&rsquo; option to take a service name option<br />
* <font style="color:green">Functionality</font>: Added a &lsquo;StayOnTop=&rsquo; directive to the &lsquo;[SoftKeys]&rsquo; section of rd.conf(5)<br />
* <font style="color:green">Functionality</font>: Changed the default &lsquo;--process-interval=&rsquo; value from 60 seconds to 30 seconds in rdrssd(8)<br />
* <font style="color:green">Functionality</font>: Added &lsquo;RDListView::DateTimeSort&rsquo; to the &lsquo;RDListView::SortType enumeration<br />
* <font style="color:green">Functionality</font>: Added explicit processing for 201, 230, 401, 402, 403, 409, 431, 432, 433, 434, 501, 502, 503 and 530 returns in the CDDB parser<br />
* <font style="color:green">Functionality</font>: Added an Online Feed Report to rdcastmanager(1)<br />
* <font style="color:green">Functionality</font>: Modified the full disc ripper and the per-track ripper in rdlibrary(1) to use CD-Text<br />
* <font style="color:green">Functionality</font>: Renamed the &lsquo;CD Metadata Source&rsquo; control in rdlibrary(1) to use &lsquo;CDDB&rsquo; instead of &lsquo;FreeDB&rsquo; when configuring CDDB lookups<br />
* <font style="color:green">Functionality</font>: Added support for a &lsquo;SuppressLinkParameterInheritance=&rsquo; directive in the &lsquo;[Hacks]&rsquo; section of rd.conf(5)<br />
* <font style="color:blue">Code (internal) change</font>: Added code to the podcasting subsystem to log extended curl(1) information to syslog<br />
<br />
=== 3.6.5 (2022-03-18) ===<br />
<br />
* Database verson '''347'''<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdimport(1) that could create duplicate Scheduler Code entries when using the &lsquo;--to-cart&rsquo; and &lsquo;--add-scheduler-code&rsquo; switches simultaneously<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in the &lsquo;rdxport&rsquo; service that caused the &lsquo;ListLog&rsquo; WebAPI call to return null values in the &lsquo;description&rsquo;, &lsquo;isrc&rsquo;, &lsquo;isci&rsquo;, &lsquo;recordingMbId&rsquo; and &lsquo;releaseMbId&rsquo; fields<br />
* <font style="color:green">Functionality</font>: Added a &lsquo;direct&rsquo; namespace to the &lsquo;Apple iTunes&rsquo; and &lsquo;Apple iTunes + Superfeed&rsquo; RSS schemas<br />
<br />
<br />
=== 3.6.4 (2022-02-22) ===<br />
<br />
Note: version 3.6.3 was tagged, but not released.<br />
<br />
* Database verson '''347'''<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdlogmanager(1) that caused leading event attributes to fail to be preserved when suppressing Music of Traffic import markers<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in the rdxport &lsquo;Import&rsquo; service that could result in incorrect end marker placement when processing variable bit rate (VBR) MPEG files<br />
* <font style="color:red">Bug fix</font>: Fixed an arithmetic overflow bug in &lsquo;RDWaveFile&rsquo; that could cause the play length of MPEG-encoded to be incorrectly calculated<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdimport(1) that caused premature validation of metadata<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdxport(8) that caused the &lsquo;SaveLog&rsquo; WebAPI call to fail if the target log didn&rsquo;t exist<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rddbmgr(8) that could cause the 346=&gt;347 schema conversion to hang indefinitely with databases containing large cart libraries<br />
* <font style="color:green">Functionality</font>: Added a &lsquo;SuppressMusicImportLinks=&rsquo; directive to the [Hacks] section of rd.conf(5)<br />
* <font style="color:green">Functionality</font>: Added support for [NowGroups] and [NextGroups] sections in PyPAD script configurations<br />
* <font style="color:green">Functionality</font>: Deprecated use of the &lsquo;Transmit Now & Next data&rsquo; checkbox in the &lsquo;Group&rsquo; dialog in rdadmin(1)<br />
* <font style="color:green">Functionality</font>: Added a &lsquo;SaveWebgetFilesDirectory=&rsquo; directive to rd.conf(5)<br />
* <font style="color:green">Functionality</font>: Modified the mode of files generated by the rd-conf(5) &lsquo;SaveWebgetFilesDirectory=&rsquo; configuration directive from 0440 to 0664<br />
* <font style="color:green">Functionality</font>: Added a &lsquo;linkLength&rsquo; field and a &lsquo;graceTime&rsquo; field to the return XML for the &lsquo;ListLog&rsquo; WebAPI call<br />
* <font style="color:green">Functionality</font>: Added a &lsquo;Log Listing (CSV)&rsquo; report to rdlogedit(1)<br />
* <font style="color:green">Functionality</font>: Added a &lsquo;--print-progress&rsquo; switch to rddbmgr(8)<br />
* <font style="color:blue">Code (internal) change</font>: Overhauled the code for reading MPEG frame headers in &lsquo;RDWaveFile&rsquo;<br />
* <font style="color:blue">Code (internal) change</font>: Increased the import process timeout for the WebGet service to 1200 seconds<br />
<br />
<br />
=== 3.6.2 (2021-07-30) ===<br />
* Database verson '''347'''<br />
* <font style="color:green">Functionality</font>: Added support for system dark themes in RDAirplay<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdlogedit(1) that could cause a crash when attempting to play a non-audio event in the &lsquo;Voice Tracker&rsquo; dialog<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdimport(1) that caused the cart title uniqueness check to be applied to the incorrect string when the &lsquo;--set-string-title=&rsquo; switch was used<br />
<br />
<br />
=== 3.6.1 (2021-06-06) ===<br />
* Database verson '''347'''<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdimport(1) that could cause a crash when the &lsquo;--fix-broken-formats&rsquo; switch is used<br />
* <font style="color:green">Functionality</font>: Added syslog DEBUG messages around the start/stop of ephemeral processes in rdservice(8)<br />
* <font style="color:green">Functionality</font>: Added an &lsquo;--initial-maintenance&rsquo; switch to rdservice(8)<br />
* <font style="color:green">Functionality</font>: Added an &lsquo;--force-system-maintenance&rsquo; switch to rdservice(8)<br />
* <font style="color:green">Functionality</font>: Modified rdmaint(8) to enable it to operate even when the Rivendell services are not running<br />
<br />
=== 3.6.0 (2021-05-15) ===<br />
* Database verson '''347'''<br />
* <font style="color:red">Bug fix</font>: Fixed title separation in rdlogmanager(1) scheduler<br />
* <font style="color:red">Bug fix</font>: Fixed bug in library code ''lib/rdwavefile.cpp'' that copied CartChunk Cut ID past the end of the first "NULL" character<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdairplay(1) that caused the Talk Timer to fail to be populated when adding new carts to a log<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in the Cart Selector Dialog that made it impossible to enter an apostrophe character in the filter search line<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdimport(1) where the title of an existing cart would be overwritten with a default title even when no title was found in the file metadata<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in &lsquo;RDFlacDecode&rsquo; that caused conversion of files with names containing non-ASCII characters to fail<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdadmin(1) where clicking the &lsquo;OK&rsquo; button in the &lsquo;Edit Switcher&rsquo; dialog would cause an error dialog to appear with a &lsquo;primary serial device not active&rsquo; warning. The following devices are affected: &lsquo;Local GPIO&rsquo;, &lsquo;Local Audio Adapter&rsquo;, &lsquo;Logitek vGuest&rsquo;, &lsquo;Livewire LWRP Audio&rsquo;, and &lsquo;Kernel GPIO&rsquo;<br />
* <font style="color:green">Functionality</font>: Modified rdimport(1) and the Webget service so as to send e-mail reports to the address of the current Rivendell user in addition to the group&rsquo;s Notification E-Mail Address<br />
* <font style="color:green">Functionality</font>: Added a &lsquo;STACK_LINES.TITLE&rsquo; field to the database<br />
* <font style="color:green">Functionality</font>: Added the value of the detected CartChunk CutID to the error message generated when rejecting said CutID as invalid when using the &lsquo;--use-cartchunk-cutid&rsquo; switch in rdimport(1)<br />
* <font style="color:green">Functionality</font>: Added code to print the value of the detected CartChunk CutID when using both the &lsquo;--use-cartchunk-cutid&rsquo; and &lsquo;--verbose&rsquo; flags in rdimport(1)<br />
* <font style="color:green">Functionality</font>: Created pypad_ino713_tcp based upon pypad_ino713, converting from UDP to TCP. Added an adjustable delay to account for broadcast air delays<br />
* <font style="color:green">Functionality</font>: Created pypad_nautel based upon pypad_ino713_tcp, including RDS parameters from documentation. Includes delay as above<br />
* <font style="color:green">Functionality</font>: Added a new &lsquo;RadioTraffic.com Traffic Reconciliation&rsquo; report. Renamed the existing &lsquo;RadioTraffic.com Traffic Reconciliation&rsquo; to &lsquo;Original RadioTraffic.com Traffic Reconciliation (DEPRECATED)&rsquo;<br />
* <font style="color:green">Functionality</font>: Changed the way in which the VU Meter UDP port is chosen. One can now specify the base port number and the maximum number of UDP ports to consider when caed(8) sets up the VU meter port<br />
* <font style="color:orange">Documentation</font>: Documented the &lsquo;MeterPortBaseNumber=&rsquo; and &lsquo;MeterPointRange=&rsquo; directives in the rd.conf(5) man page<br />
<br />
=== 3.5.0 (2020-12-12) ===<br />
* Database verson '''346'''<br />
* <font style="color:red">Bug fix</font>: Corrected the column settings in RDAdmin > Manage Hosts > [host] > Dropboxes<br />
* <font style="color:red">Bug fix</font>: Fixed regression with "Scheduler Code:" label overlapping "Group" combobox in rdlibrary(1)<br />
* <font style="color:red">Bug fix</font>: Fixed several bugs in rdadmin(1) that messed with passwords, user settings, and other important settings<br />
* <font style="color:red">Bug fix</font>: Fixed several bugs in rdlogmanager(1) that caused all kinds of mischief<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdairplay(1) where copying a log event using the &lsquo;Copy&rsquo; button would result in the new event always getting a &lsquo;PLAY&rsquo; transition<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rddbmgr(8) that could cause database corruption problems<br />
* <font style="color:red">Bug fix</font>: Fixed bugs in rdimport(1) that caused incorrect exit codes to be emitted when a non-existent group was specified, and that caused generation of double error messages when processing invalid audio files<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdmonitor(1) that caused false indications of a failed audio store when used with autofs(8)<br />
* <font style="color:green">Functionality</font>: Major overhaul of Rivendell&rsquo;s podcast handling features; see the ChangeLog for all the details<br />
* <font style="color:green">Functionality</font>: Modified the GVC7000 switcher driver to insert 50 mS pauses between protocol commands<br />
* <font style="color:green">Functionality</font>: Allow RN Macro to run when Rivendell daemons running as non-root<br />
* <font style="color:green">Functionality</font>: Many changes to rdadmin(1), including:<br />
:* Added whitespace to the set of banned characters for service names<br />
:* Added a &lsquo;SSH Ident. File&rsquo; control to the &lsquo;Host&rsquo; dialog<br />
:* Added an &lsquo;Inline Traffic Inheritance&rsquo; control to the &lsquo;Edit Service&rsquo; dialog<br />
:* Added type icons to the &lsquo;Imported Events&rsquo; list in the &lsquo;Test Import&rsquo; dialog<br />
:* Renamed the &lsquo;Inline Traffic Inheritance&rsquo; control to &lsquo;Inline Traffic Start/Length&rsquo; and moved it to the &lsquo;Music Data Import&rsquo; section of the &lsquo;Edit Service&rsquo; dialog<br />
:* Added an &lsquo;Encoder Profiles&rsquo; dialog<br />
:* Renamed the &lsquo;Note Cart String&rsquo; controls to &lsquo;Insert Marker String&rsquo; in the &lsquo;Edit Service dialog<br />
:* Added an &lsquo;Origin E-Mail Address&rsquo; control to the &lsquo;System-Wide Settings&rsquo; dialog<br />
:* Added a &lsquo;Notification E-Mail Addresses&rsquo; control to the &lsquo;Group&rsquo; dialog<br />
:* Added a &lsquo;Send e-mail reports&rsquo; checkbox to the &lsquo;Dropbox Configuration&rsquo; dialog<br />
:* Added &lsquo;E-Mail Address&rsquo;, &lsquo;Phone Number&rsquo; and &lsquo;Local Auth&rsquo; columns to the &lsquo;Users&rsquo; list in the &lsquo;Rivendell User List&rsquo; dialog<br />
:* Added an &lsquo;Administer RSS Feeds&rsquo; checkbox to the &lsquo;Administrative Rights&rsquo; section of the &lsquo;User&rsquo; dialog<br />
:* Added a deprecation warning for the &lsquo;Allow Duplicate Cart Titles&rsquo; and &lsquo;Auto-Correct Duplicate Cart Titles&rsquo; checkboxes on the &lsquo;System-Wide Settings&rsquo; dialog<br />
* <font style="color:green">Functionality</font>: Added support for FTPS protocol for uploading, downloading, and Feed management<br />
* <font style="color:green">Functionality</font>: Significant update to the Rivendell Web interfaces (Web API, WebGet service, rivwebcapi API, etc.)<br />
* <font style="color:green">Functionality</font>: Added &lsquo;--scheduler-code=&rsquo; switch to rdexport(1)<br />
* <font style="color:green">Functionality</font>: Added generation of an &lsquo;RDLogManager Error Report&rsquo; when errors are detected when importing an external scheduler file in rdlogmanager(1)<br />
* <font style="color:green">Functionality</font>: Restored operation of Label/Note carts in rdlogmanager(1)<br />
* <font style="color:green">Functionality</font>: Updated rdservice(8) to use standard exit code defines<br />
* <font style="color:green">Functionality</font>: Implemented the &lsquo;--verbose&rsquo; switch for rdmaint(8)<br />
* <font style="color:green">Functionality</font>: Added a sample Fail2Ban jail filter for the WebAPI in &lsquo;conf/rivendell-webapi.conf&rsquo;<br />
* <font style="color:green">Functionality</font>: Added command line options &lsquo;--output-pattern&rsquo;, &lsquo;--ticket=&rsquo;, &lsquo;--send-mail&rsquo; and &lsquo;--mail-per-file&rsquo; to rdimport(1)<br />
* <font style="color:green">Functionality</font>: Added the name of the import file to schedule import failure reports<br />
* <font style="color:orange">Documentation</font>: Documented the &lsquo;%%&rsquo; filepath wildcard in the Operations Guide<br />
* <font style="color:orange">Documentation</font>: Added an &lsquo;RDCastManager&rsquo; chapter to the Operations Guide<br />
* <font style="color:orange">Documentation</font>: Revised the &lsquo;Managing Services&rsquo; section of the Operations Guide<br />
* <font style="color:orange">Documentation</font>: Rewrote the &lsquo;Webget&rsquo; chapter of the Operations Guide to conform to changes in Webget<br />
* <font style="color:orange">Documentation</font>: Added a &lsquo;Configuring Webget&rsquo; section to the Operations Guide<br />
* <font style="color:orange">Documentation</font>: Removed the &lsquo;Cart Data Dump (fixed width)&rsquo; from the Operations Guide<br />
* <font style="color:orange">Documentation</font>: Documented user-facing changes to the &lsquo;System-Wide Settings&rsquo; dialog, the &lsquo;Rivendell Group List&rsquo; and the &lsquo;Group&rsquo; dialogs in rdadmin(1) in the Operations Guide<br />
* <font style="color:orange">Documentation</font>: Documented the &lsquo;Send e-mail reports&rsquo; checkbox in the &lsquo;Dropbox Configuration&rsquo; dialog in rdadmin(1) in the Operations Guide<br />
* <font style="color:blue">Code (internal) change</font>: Prepended &lsquo;RD_&rsquo; to the names of all common Javascript functions in &lsquo;web/common/utils.js&rsquo;<br />
* <font style="color:blue">Code (internal) change</font>: Added a &lsquo;webget&rsquo; subpackage to the &lsquo;make rpm&rsquo; target<br />
* <font style="color:blue">Code (internal) change</font>: Refactored the &lsquo;Run Script&rsquo; [&rsquo;RN&rsquo;] RML to invoke scripts via the system shell, this change also removed the dependency on runuser(1)<br />
<br />
=== 3.4.1 (2020-07-21) ===<br />
* Database verson '''317'''<br />
<br />
* <font style="color:green">Functionality</font>: Added a &lsquo;Results Report&rsquo; report in rdadmin(1)<br />
* <font style="color:green">Functionality</font>: Removed the checkbox from the &lsquo;Delete&rsquo; right-click menu item in the &lsquo;Edit Event&rsquo; dialog in rdlogmanager(1)<br />
* <font style="color:green">Functionality</font>: Modified &lsquo;RDWaveFile&rsquo; to work around known fencepost errors in WAV files generated by "Sonic Studio soundBlade" by "PME Mastering, Inc."<br />
* <font style="color:green">Functionality</font>: Modified the &lsquo;Edit Event&rsquo; dialog in rdlogmanager(1) to show &lsquo;[auto]&rsquo; as the transition type for the leading event in Pre-/Post-Import lists<br />
<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdlibrary(1) that caused cuts to be incorrectly sorted when scheduled &lsquo;By Specified Order&rsquo;<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in the Rivendell command line apps that caused value-only arguments containing &lsquo;=&rsquo; characters to be incorrectly parsed<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in the Podcast Manager, Library Exporter and Web API that caused an error when processing multipart-mime submissions containing &lsquo;=&rsquo; characters<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdairplay(1) where attempting to audition an audio cart with a disabled cue output would crash the application<br />
* <font style="color:red">Bug fix</font>: Fixed a regression in rdairplay(1) that caused the &lsquo;Forced Segue&rsquo; setting in rdadmin(1) to be ignored when executing an event with a hard start attribute<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdairplay(1) where a paused event could not be removed by dropping the empty cart on it<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdairplay(1) that cause incorrect pie timer indications after adding or deleting events to a running log<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdlibrary(1) that would cause a crash when attempting to delete a range of cuts, one of which was in the clipboard<br />
* <font style="color:red">Bug fix</font>: Fixed a math bug in rdairplay(1) that caused the estimated stop-down times in the post point widget to be incorrect after adding or removing events from a running log<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdadmin(1) that made it impossible to enter useful strings in the &lsquo;WaveForm Caption&rsquo; control on the &lsquo;Edit RDLogEdit&rsquo; dialog<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in RDRenderer that caused segue transitions to be rendered without regard to the &lsquo;No Fade on Segue Out&rsquo; checkbox in the &lsquo;Edit Audio&rsquo; dialog<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in ripcd(8) that caused connections to ModbusTCP devices to fail to be properly restored by the connection watchdog<br />
* <font style="color:red">Bug fix</font>: Fixed a regression in the &lsquo;Edit Event&rsquo; dialog in rdlogmanager(1) that caused the first cart transition type to be incorrect when the &lsquo;Pre-Import Carts&rsquo; list was populated<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in the &lsquo;Add Next&rsquo; [&rsquo;PX&rsquo;] RML that failed to return an error when an invalid offset value was supplied<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in the &lsquo;Add Next&rsquo; [&rsquo;PX&rsquo;] RML that failed to honor the &lsquo;Default Trans. Type&rsquo; setting in the &lsquo;Configure RDAirPlay&rsquo; dialog in rdadmin(1)<br />
<br />
=== 3.4.0 (2020-05-19) ===<br />
* Database verson '''317'''<br />
* <font style="color:red">Bug fix</font>: Fixed a regression in rdairplay(1) that caused two events to be started by a single spacebar tap if a SoundPanel event had been played previously<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdlogmanager(1) that caused the initial event in an imported set to fail receive the proper time and transition type if the &lsquo;Include Import Markers in Finished Logs&rsquo; checkbox in rdadmin(1) had not been ticked<br />
* <font style="color:red">Bug fix</font>: Fixed a regression in rdexport(1) that caused exported file names to be constructed improperly<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdlogmanager(1) that caused &lsquo;Make Post Point&rsquo; label to be displayed without last &lsquo;t&rsquo;<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdairplay(1) where timer was not set properly when crossing midnight<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in the &lsquo;List GPIs&rsquo; dialog in rdadmin(1) that prevented changes in GPI assignments from being propagated to the underlying device<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in the &lsquo;Software Authority&rsquo; driver that caused autodetection of the number of GPIOs in a router to be unreliable<br />
* <font style="color:red">Bug fix</font>: Fixed a regression in &lsquo;RDEventLine&rsquo; that caused the &lsquo;Append Log&rsquo; [&rsquo;AL&rsquo;] RML to append a copy of the currently loaded log instead of the one specified in the RML command<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdlogedit(1) that caused garbled text to appear when &lsquo;Start Immediately&rsquo; was selected in the &lsquo;Edit Log Entry&rsquo; dialog box<br />
* <font style="color:red">Bug fix</font>: Fixed a regression that broke the ability to scroll through Sound Panel panels by means of the mouse wheel<br />
<br />
* <font style="color:green">Functionality</font>: Modified rdairplay(1) to always scroll log to the top when using the hour selector<br />
* <font style="color:green">Functionality</font>: Modified rdlogmanager(1) to disable merge buttons if the selected log does not contain any import links<br />
* <font style="color:green">Functionality</font>: Modified rdadmin(1) Edit Service dialog to display built-in traffic and music import template values<br />
* <font style="color:green">Functionality</font>: Added "Copy To Custom" buttons to rdadmin(1) Edit Service dialog<br />
* <font style="color:green">Functionality</font>: Changed the layout of the &lsquo;Editing Event&rsquo; dialog in rdlogmanager<br />
<br />
* <font style="color:green">Functionality</font>: Removed the &lsquo;Post Point&rsquo; checkbox from the &lsquo;Editing Event&rsquo; dialog in rdlogmanager(1)<br />
* <font style="color:green">Functionality</font>: Renamed the &lsquo;REMARKS&rsquo; field to &lsquo;USER NOTES&rsquo; in the &lsquo;Editing Event&rsquo; and the &lsquo;Edit Clock&rsquo; dialogs in rdlogmanager(1)<br />
* <font style="color:green">Functionality</font>: Added a &lsquo;Trans&rsquo; column to the event list in the &lsquo;Edit Clock&rsquo; and the &lsquo;List Events&rsquo; dialogs in rdlogmanager(1)<br />
<br />
=== 3.3.0 (2020-03-16) ===<br />
* Database verson '''314'''<br />
* <font style="color:red">Bug fix</font>: Fixed regressions in the following switcher drivers that could cause deadlocks and intermittent operation<br />
:* BroadcastTools SS16.4<br />
:* BroadcastTools SS 4.2<br />
:* BroadcastTools SS4.4<br />
:* BroadcastTools SS 8.2<br />
:* BroadcastTools ACS8.2<br />
:* BroadcastTools ADMS 44.22<br />
:* BroadcastTools GPI-16<br />
:* BroadcastTools SRC-16<br />
:* BroadcastTools SRC-8 III<br />
:* BroadcastTools SS 4.1 MLR<br />
* <font style="color:red">Bug fix</font>: Fixed a regression in the implementation of the &lsquo;Set Serial Trap&rsquo; [&lsquo;SI&rsquo;] RML that could cause deadlocks and intermittent operation<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdairplay(1) that could cause random segfaults when updating the Label Widget<br />
* <font style="color:red">Bug fix</font>: Fixed a bug with the &lsquo;%y&rsquo; metadata wildcard where garbage would be returned if a valid year had not been set<br />
* <font style="color:red">Bug fix</font>: Fixed a regression in rdlogmanager(1) that caused trailer whitespace to be generated in the &lsquo;EXT_DATA&rsquo;, &lsquo;EXT_EVENT&rsquo;, &lsquo;EXT_ANNC_TYPE&rsquo; and &lsquo;EXT_CART_NAME&rsquo; log fields when importing from a CounterPoint format log<br />
* <font style="color:red">Bug fix</font>: Fixed the layout of the &lsquo;Matching Carts&rsquo; field in rdlibrary(1)&rsquo;s main window when Realtime Filtering is disabled<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdairplay(1) that would cause a hard-timed log event with a &lsquo;wait&rsquo; parameter set to attempt to play the event twice<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rddbmgr(8) that threw a SQL error when attempting to modify a DB containing tables set to use character set UTF-8 to schema 297<br />
* <font style="color:red">Bug fix</font>: Fixed a race in ripcd(8) that caused arguments to the &lsquo;Run Shell Command&rsquo; [&lsquo;RN&rsquo;] macro to be corrupted<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in the &lsquo;Edit Event&rsquo; dialog in rdlogmanager(1) that caused the Transition Type dropdown to be greyed-out when the &lsquo;IMPORT&rsquo; controls were set to use the built-in music scheduler<br />
* <font style="color:green">Functionality</font>: Added a &lsquo;delta-seconds&rsquo; modifier to Filepath Wildcards to enable positive and negative time offsets<br />
* <font style="color:green">Functionality</font>: Removed support for CD-TEXT from the CD rippers<br />
* <font style="color:green">Functionality</font>: Added support for &lsquo;MusicBrainz&rsquo; CD metadata lookup<br />
* <font style="color:green">Functionality</font>: Added a &lsquo;Web Browser&rsquo; control to the &lsquo;Edit Host&rsquo; dialog in rdadmin(1)<br />
* <font style="color:green">Functionality</font>: Added support for displaying cover art in the MusicBrainz release chooser<br />
* <font style="color:green">Functionality</font>: Added &lsquo;%wm&rsquo; [&lsquo;MusicBrainz Recording ID&rsquo;] and &lsquo;%wr&rsquo; [&lsquo;MusicBrainz Release ID&rsquo;] metadata wildcards<br />
* <font style="color:green">Functionality</font>: Implemented the &lsquo;%wm&rsquo; [&lsquo;MusicBrainz Recording ID&rsquo;] and &lsquo;%wr&rsquo; [&lsquo;MusicBrainz Release ID&rsquo;] metadata wildcards for PyPAD<br />
* <font style="color:green">Functionality</font>: Added support for the &lsquo;%wi&rsquo;, &lsquo;%wm&rsquo; and &lsquo;%wr&rsquo; wildcards to the &lsquo;--metadata-pattern=&rsquo; switch in rdimport(1)<br />
* <font style="color:green">Functionality</font>: Added &lsquo;--set-string-isrc&rsquo;, &lsquo;--set-string-recording-mbid&rsquo; and &lsquo;--set-string-release-mbid&rsquo; switches to rdimport(1)<br />
* <font style="color:green">Functionality</font>: Added support for the &lsquo;%wi&rsquo;, &lsquo;%wm&rsquo; and &lsquo;%wr&rsquo; wildcards to the &lsquo;--metadata-pattern=&rsquo; switch in rdexport(1)<br />
* <font style="color:green">Functionality</font>: Added a &lsquo;%wc&rsquo; [&lsquo;Industry Standard Commercial Identification (ISCI) Code&rsquo;] metadata wildcard<br />
* <font style="color:green">Functionality</font>: Implemented the &lsquo;%wc&rsquo; metadata wildcard for PyPAD<br />
* <font style="color:green">Functionality</font>: Added support for the &lsquo;%wc&rsquo; wildcards to the &lsquo;--metadata-pattern=&rsquo; switch in rdimport(1)<br />
* <font style="color:green">Functionality</font>: Added &lsquo;--set-string-isci&rsquo; switch to rdimport(1)<br />
* <font style="color:green">Functionality</font>: Added support for the &lsquo;%wc&rsquo; wildcard to the &lsquo;--metadata-pattern=&rsquo; switch in rdexport(1)<br />
* <font style="color:green">Functionality</font>: Removed the &lsquo;RDLabel&rsquo; widget<br />
* <font style="color:green">Functionality</font>: Added a &lsquo;Disconnect All Jack Ports&rsquo; [&lsquo;JZ&rsquo;] RML<br />
* <font style="color:green">Functionality</font>: Added a &lsquo;CounterPoint Traffic Reconciliation v2&rsquo; report<br />
<br />
=== 3.2.1 (2020-01-24) ===<br />
* Database verson '''311'''<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdcatch(1) that threw a SQL error when clicking 'OK' on the &lsquo;Edit Cart Event&rsquo; dialog<br />
* <font style="color:red">Bug fix</font>: Fixed a regression in rdimport(1) that caused null characters to be written to cart metadata fields when importing files containing an &lsquo;AIR1&rsquo; RIFF chunk<br />
* <font style="color:red">Bug fix</font>: Fixed a regression in rdcatch(1) that caused the &lsquo;Source&rsquo; dropdown in the &lsquo;Edit Recording&rsquo; dialog to fail to be populated properly<br />
* <font style="color:red">Bug fix</font>: Fixed a regression in the cart selector dialog that caused default focus to be lost on the &lsquo;Filter&rsquo; control after second and subsequent invocations<br />
* <font style="color:red">Bug fix</font>: Fixed a regression in rdcatchd(8) that broke audio metering<br />
* <font style="color:red">Bug fix</font>: Fixed a regression in rdcatchd(8) that could cause download events to hang in an active state<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdcatch(1) that caused DOW flags to fail to be updated correctly on the event list after making a change<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdcatchd(8) that failed to send a MODIFY notification at the end of a Record or Download event<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdconvert that caused a segfault at startup<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdexport(1) that caused output filenames containing multi-byte UTF-8 characters to be corrupt<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdgpimon(1) that caused GPIO cart displays to fail to accurately reflect current state<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdgpimon(1) that caused incorrect state indications to be displayed after switching to a different page<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdimport(1) that caused non-Latin1 characters to be corrupted when using standard input<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdimport(1) that caused UTF-8 multibyte characters in filenames to be corrupted<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdlogmanager(1) that caused spurious log events to be inserted when generating a log<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in ripcd(8) that caused input and output counts to be calculated incorrectly for Software Authority protocol devices containing holes in the input and/or output lists<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in the &lsquo;pypad-shoutcast1.py&rsquo; script that threw an exception when processing PAD containing multi-type UTF-8 characters<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in the &lsquo;pypad_xds.py&rsquo; PyPAD script that could cause it to emit duplicate CIC updates<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in the &lsquo;rivwebcapi&rsquo; validate_tm() function that caused dates containing &lsquo;29 February&rsquo; to always fail regardless of leap-year validity<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in the rdxport service that could cause MODIFY notifications to fail to be sent by the &lsquo;SaveLog&rsquo; WebAPI call<br />
* <font style="color:red">Bug fix</font>: Fixed a regression in rdadmin(1) that caused controls to be hidden in the &lsquo;Edit Report&rsquo; dialog<br />
* <font style="color:red">Bug fix</font>: Fixed a regression in rdlogmanager(1) that caused incorrect logged start times to be generated for imported events<br />
* <font style="color:red">Bug fix</font>: Fixed a regression in the rdxport service that caused the ListCuts WebAPI call to return corrupt data<br />
* <font style="color:red">Bug fix</font>: Fixed a regression in the Web API that caused the and/or corrupt in served XML documents<br />
* <font style="color:green">Functionality</font>: Implemented support for non-realtime library filtering in the &lsquo;Editing Event&rsquo; dialog in rdlogmanager(1)<br />
* <font style="color:green">Functionality</font>: Added a &lsquo;Show Start Time As&rsquo; control to the &lsquo;Edit Log&rsquo; dialog in rdlogedit(1)<br />
* <font style="color:green">Functionality</font>: Made the rdlogedit(1) main window and &lsquo;Edit Log&rsquo; dialog window sizes persistent<br />
* <font style="color:green">Functionality</font>: Added a work-around in the &lsquo;PyPAD.Receiver().__openDb()&rsquo; method to work with versions of MySQLdb that do not support the &lsquo;password=&rsquo; parameter in &lsquo;MySQLdb.connect()&rsquo;<br />
* <font style="color:green">Functionality</font>: Added &lsquo;Repetitions=&rsquo; and &lsquo;RepetitionDelay=&rsquo; directive to the configuration of the &lsquo;pypad_xds.py&rsquo; PyPAD script<br />
* <font style="color:green">Functionality</font>: Added &lsquo;Username=&rsquo; and &lsquo;Password=&rsquo; directives to the &lsquo;pypad_httpget.py&rsquo; script for use for HTTP Basic Authentication<br />
* <font style="color:green">Functionality</font>: Added the ability to view a report at time of generation in rdlogmanager(1)<br />
* <font style="color:green">Functionality</font>: Adjusted the position of the &lsquo;Matching Carts&rsquo; readout on the main window of rdlibrary(1)<br />
* <font style="color:green">Functionality</font>: Changed the &lsquo;Time&rsquo; column in the &lsquo;Full Log Widget&rsquo; in rdairplay(1) to &lsquo;Sch. Time&rsquo;<br />
* <font style="color:green">Functionality</font>: Implemented a work-around for importing CartChunk data containing a buggy ENCO implemention of the &lsquo;AUD&rsquo; CartChunk timer<br />
* <font style="color:green">Functionality</font>: Modified the Full Log widget in rdairplay(1) to display logged start times even when the referenced cart does not exist<br />
* <font style="color:green">Functionality</font>: Tweaked the &lsquo;LogLineBox::mouseMoveEvent()&rsquo; method in rdairplay(1) to require a cursor movement of at least 20 pixels before generating a cart drag<br />
<br />
=== 3.2.0 (2019-10-31) ===<br />
* Database verson '''311'''<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rddbmgr(8) that caused a segfault when processing a SQL error<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdimport(1) that caused it to throw an exception when given a &lsquo;--metadata-pattern&rsquo; of less than three characters<br />
* <font style="color:red">Bug fix</font>: Fixed a regression in rdimport(1) that caused a segfault when invoked with the &lsquo;--metadata-pattern&rsquo; and &lsquo;--log-syslog&rsquo; switches<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdairplay(1) that caused space bar presses to start the next event in the Main Log even when &lsquo;Space Bar Action&rsquo; was set to &lsquo;None&rsquo;<br />
* <font style="color:red">Bug fix</font>: Fixed bugs in 'RDWaveFile' that caused strings of null characters to be written into unfilled CartChunk string fields<br />
* <font style="color:red">Bug fix</font>: Fixed a regression in 'rdxport.cgi' that caused a check of the Rivendell services to be triggered each time a WebAPI function was invoked<br />
* <font style="color:red">Bug fix</font>: Fixed a regression in rdsoftkeys(1) that threw a segfault at startup<br />
* <font style="color:green">Functionality</font>: Added the ability to configure the caption displayed for the first and third voicetrack waveforms in the Voicetracker dialog in rdlogedit(1)<br />
* <font style="color:green">Functionality</font>: Reworked the font management system to permit the fonts used in the UI to be specified in rd.conf(5).<br />
* <font style="color:green">Functionality</font>: Added support for posting podcast content via SFTP<br />
* <font style="color:orange">Documentation</font>: Added manual pages for rd.conf(5) and rdsoftkeys(1)<br />
<br />
=== 3.1.0 (2019-09-19) ===<br />
* Database verson '''310'''<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdairplay(1) and rdvairplayd(8) where only the first log machine set to &lsquo;load specified log&rsquo; would do so<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdlogedit(1) that caused hard start log items to have the Hour field doubled<br />
* <font style="color:red">Bug fix</font>: Refactored the Python &lsquo;pypad.Update.shouldBeProcessed()&rsquo; method to work correctly when using <tt>try:</tt> blocks in a PyPAD script<br />
* <font style="color:red">Bug fix</font>: Refactored the PyPAD scripts to route updates properly in accordance with log directives in their configuration file<br />
* <font style="color:red">Bug fix</font>: Fixed a bug that broke dropbox logging to individual files<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in caed(8) that broke timescaling support<br />
* <font style="color:red">Bug fix</font>: Fixed bugs in rdlibrary(1) that broke CD ripping<br />
* <font style="color:green">Functionality</font>: Refactored rdalsaconfig(1) to be more robust and intuitive<br />
* <font style="color:green">Functionality</font>: Added a &lsquo;pypad_httpget.py&rsquo; PyPAD script<br />
* <font style="color:green">Functionality</font>: Updated CDDB code to use protocol level 6 (UTF-8 enabled)<br />
* <font style="color:green">Functionality</font>: Added an &lsquo;%l&rsquo; wildcard to Filepath Wildcards for &lsquo;unpadded month&rsquo;<br />
=== 3.0.3 (2019-08-05) ===<br />
* Database verson '''308'''<br />
* <font style="color:red">Bug fix</font>: Fixed a regression in ripcd(8) that broke the 'Connect Jack Ports' ['JC'] and 'Disconnect Jack Ports' ['JD'] RMLs<br />
=== 3.0.2 (2019-07-31) ===<br />
* Database verson '''308'''<br />
* <font style="color:red">Bug fix</font>: Fixed a problem with the Local Audio Adapter switcher driver that caused incorrect operation with the 'Switch Add' ['SA'], 'Switch Remove' ['SR'] and 'Switch Take' ['ST'] RMLs<br />
* <font style="color:red">Bug fix</font>: Fixed a regression in rdlibrary(1) that caused macro carts entries to turn red after being viewed<br />
* <font style="color:red">Bug fix</font>: Fixed regressions that made operations with serial devices unreliable<br />
* <font style="color:green">Functionality</font>: Added support for switchers using the Grass Valley 7000 series protocol<br />
=== 3.0.1 (2019-07-16) ===<br />
* Database verson '''308'''<br />
* <font style="color:red">Bug fix</font>: Rivendell is now Unicode UTF-8 clean<br />
* <font style="color:red">Bug fix</font>: Qt4 is now used throughout Rivendell instead of Qt3<br />
* <font style="color:green">Functionality</font>: The Rivendell Loadable Modules system for processing PAD data has been completely replaced by PyPAD, allowing PAD processing plug-ins to be written in the popular Python scripting langauge. Backward compatible replacement scripts for many of the RLM plug-ins supplied in Rivendell v2.x are included<br />
* <font style="color:green">Functionality</font>: Added a compatibility library to facilitate the use of the Rivendell Web API in external applications<br />
* <font style="color:green">Functionality</font>: A system of virtual log machines has been added, allowing play-out of up to 23 logs simultaneously<br />
* <font style="color:green">Functionality</font>: Rivendell is now fully systemd compatibile<br />
* <font style="color:green">Functionality</font>: The Windows ports of rdlogedit(1) and rdlogmanager(1) have been removed<br />
* <font style="color:orange">Documentation</font>: The Rivendell Operations and Administration Guide has been updated and enhanced with more details about running a Rivendell system<br />
* <font style="color:orange">Documentation</font>: New manual pages have been added for Rivendell command that previously did not have them<br />
See [http://caspian.paravelsystems.com/pipermail/rivendell-dev/2019-July/027867.html this message] on the Rivendell Dev mailing list for more details about installing and upgrading Rivendell.<br />
=== 2.19.3 (2018-10-31) ===<br />
* Database verson '''275'''<br />
* <font style="color:red">Bug fix</font>: Fixed a bug that caused the &lsquo;Switcher Matrix&rsquo; and &lsquo;Switcher Output&rsquo; dropdowns to populate incorrect values when selecting a non-local &lsquo;Switcher Host&rsquo; in the &lsquo;Configure RDCatch&rsquo; dialog in rdadmin(1)<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdlogmanager(1) that caused the initial transition type specified in the &lsquo;IMPORT&rsquo; section of the &lsquo;Editing Event&rsquo; dialog to be applied to both the parent log link and the first imported event when the &lsquo;PRE-IMPORT CARTS&rsquo; list was empty and no Timed Start was enabled<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in ripcd(8) that caused process of the &lsquo;Air Gate&rsquo; [&lsquo;AG&rsquo;] RML to fail<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdimport(1) that would throw a spurious SQL error when using the &lsquo;--to-cart=&rsquo; switch with an already existing cart [Issue #000217]<br />
* <font style="color:red">Bug fix</font>: Fixed a regression that caused rdimport(1) to return a &lsquo;no free carts available in specified group&rsquo; when invoked without the &lsquo;--to-cart=&rsquo; option<br />
* <font style="color:red">Bug fix</font>: Fixed a regression in rdairplay(1) that caused carts Added or Copied to a log to have a PLAY transition regardless of the default transition type set in rdadmin(1)<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in &lsquo;RDTextValidator&rsquo; that failed to catch banned characters added to the interior of existing strings<br />
* <font style="color:red">Bug fix</font>: Various other bugs fixed<br />
* <font style="color:green">Functionality</font>: Added a &lsquo;TranscodingDelay=&rsquo; parameter to the &lsquo;[Tuning]&rsquo; section of rd.conf(5)<br />
* <font style="color:green">Functionality</font>: Added a Switcher/GPIO driver for the BroadcastTools SS 2.1 switcher<br />
* <font style="color:green">Functionality</font>: Added support for GPIO on AudioScience adapters to the 'Local Audio Adapter' Switcher/GPIO driver<br />
* <font style="color:green">Functionality</font>: Renamed the 'Add Next' ['PX'] RML to 'Insert Cart' ['PX'] and added two optional arguments to allow specification of the insertion position and transition type<br />
* <font style="color:green">Functionality</font>: Added support for Spinitron v2 to the 'spinitron_plus' RLM<br />
* <font style="color:green">Functionality</font>: Added an &lsquo;ExportedFileMode=&rsquo; parameter to the &lsquo;[Tuning]&rsquo; section of rd.conf(5) to permit permission mode of exported audio files to be specified<br />
* <font style="color:orange">Documentation</font>: Documented GPIO support for AudioScience cards in the &lsquo;Local Audio Adapter&rsquo; section of the Operations Guide<br />
<br />
=== 2.19.2 (2018-04-14) ===<br />
* Database verson '''275'''<br />
* <font style="color:red">Bug fix</font>: Fixed a regression in the HPI support layer that broke audio capture with adapters lacking DMA bus-mastering support<br />
<br />
=== 2.19.1 (2018-03-27) ===<br />
* Database verson '''275'''<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdlogmanager(1) that caused DB corruption when a clock was deleted while still being assigned to a grid.<br />
* <font style="color:green">Functionality</font>: Implemented support for DMA bus-mastering for AudioScience HPI devices. This release supports the latest ASI cards that require DMA bus-mastering support. You may also need to update the hpklinux driver to v4.20.10 or later. RPMs for CentOS 7 are available at [http://static.paravelsystems.com/audioscience/centos/7/ Paravel&rsquo;s website].<br />
* <font style="color:green">Functionality</font>: Removed rdhpiinfo(8). Replaced by the stand-alone &lsquo;hpiinfo&rsquo; package.<br />
* <font style="color:green">Functionality</font>: Removed the event time check for Playout events in rdcatch(1), as there is no sane way to determine a consistently &lsquo;free&rsquo; playout time in the face of shifting cut lengths.<br />
<br />
=== 2.19.0 (2018-02-22) ===<br />
* Database verson '''275'''<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdlibrary(1) that caused evergreen carts/cuts to fail to be highlighted in the correct color<br />
* <font style="color:green">Functionality</font>: Added the ability to specify automatic log deletion on the basis of either the Creation Date or Air Date of the log<br />
* <font style="color:green">Functionality</font>: Log Importation Changes. Changed music and traffic importation so that parent link events are still visible in linked logs<br />
* <font style="color:green">Functionality</font>: Log Locking: implemented a system-wide protocol to prevent changes made to a log on one host from being inadvertently overwritten from another host<br />
<br />
=== 2.18.2 (2017-12-29) ===<br />
* Database version '''272'''<br />
* <font style="color:red">Bug fix</font>: Fixed a bug that caused creation of new clocks in rdlogmanager(1) to fail to initialize music scheduler components correctly in the database<br />
<br />
=== 2.18.1 (2017-12-22) ===<br />
* Database version '''272'''<br />
* <font style="color:red">Bug fix</font>: Fixed a bug that caused creation and initialization of a new Rivendell database to fail<br />
<br />
=== 2.18.0 (2017-12-21) ===<br />
* Database version updated to '''272'''<br />
* <font style="color:red">Bug fix</font>: Various bug fixes. See the [https://github.com/ElvishArtisan/rivendell/blob/stable/ChangeLog ChangeLog] for details<br />
* <font style="color:green">Functionality</font>: Group Cut Expiration Policy: Added the ability to set a default End Date/Time for new cuts on a per-group basis<br />
* <font style="color:green">Functionality</font>: Host Short Name: Added a ''Short Name'' parameter to Host profiles<br />
* <font style="color:green">Functionality</font>: Macro Carts: It is now possible to use filepath wildcards in macro carts<br />
* <font style="color:green">Functionality</font>: New Host Wildcards: Added two host wildcards: ''%r'' for ''Rivendell Host Name, and ''%R'' for ''Rivendell Short Name''<br />
* <font style="color:green">Functionality</font>: Provisioning Support: Added four new directives and to the ''[Provisioning]'' section of ''/etc/rd.conf''<br />
* <font style="color:green">Functionality</font>: MySQL Configuration: Added three parameters to the ''[mySQL]'' section of ''/etc/rd.conf''<br />
* <font style="color:green">Functionality</font>: Dropbox Enhancements: Added the ability to specify creation of default Segue Markers when processing files via dropbox<br />
* <font style="color:green">Functionality</font>: '''RDImport'''/DropBox Enhancements: Added the ability to specify start and end datetimes via metadata pattern<br />
* <font style="color:green">Functionality</font>: '''RDCatch''' Event Filtering: Added the ability to filter by event type in '''RDCatch'''<br />
* <font style="color:green">Functionality</font>: Log Searching: A search filter (similar to that employed for seaching for carts) has been added to the List Logs dialogs<br />
* <font style="color:green">Functionality</font>: Service Filtering in '''RDLogEdit''': Added the ability to limit the visible set of logs in RDLogEdit by user<br />
* <font style="color:green">Functionality</font>: Log Purge/Deletion Changes: Logs created manually (in rdlogedit(1) or rdairplay(1)) are now assigned a default purge/deletion date in accordance with the setting in RDAdmin->ManageServices<br />
* <font style="color:green">Functionality</font>: Log Importation Changes: Changed music and traffic importation so that parent link events are still visible in linked logs<br />
* <font style="color:green">Functionality</font>: Web API Changes: Added &lsquo;FILTER&rsquo; and &lsquo;RECENT&rsquo; call parameters to the &lsquo;ListLogs&rsquo; Web API call<br />
* <font style="color:orange">Documentation</font>: Documentation Overhaul: The Rivendell Operations and Administration Guide has been exapanded and incorporated as part of the base Rivendell source in ''docs/opsguide''. This guide is available as a separate CentOS package: ''rivendell-opsguide''<br />
* <font style="color:orange">Documentation</font>: Rivendell APIs: The various application programming interfaces (notably the web API) is now documented and is included with the standard distribution<br />
<br />
=== 2.17.0 (2017-10-11) ===<br />
* Database version updated to '''268'''<br />
* <font style="color:red">Bug fix</font>: Web API: Many fixes and enhancements to improve operation<br />
* <font style="color:red">Bug fix</font>: Many other bug fixes; see the [https://github.com/ElvishArtisan/rivendell/blob/stable/ChangeLog ChangeLog] for all the details (search for ''2.17.0'' and work your way backward through the list of changes)<br />
* <font style="color:green">Functionality</font>: Dropboxes: Added the ability to force imports to be imported as mono, also added the ability to reset individual dropboxes<br />
* <font style="color:green">Functionality</font>: New Switcher/GPIO Devices: Support has been added for the following Switcher/GPIO devices:<br />
:* Broadcast Tools Universal 4.1 MLR&gt;&gt;Web Switcher<br />
:* WheatNet LIO<br />
:* WheatNet SLIO<br />
* <font style="color:green">Functionality</font>: Macros: Added the &lsquo;Air Gate&rsquo; &#91;&lsquo;AG&rsquo;&#93; RML to permit conditional execution of RML on the basis of the status of the On-Air flag<br />
* <font style="color:green">Functionality</font>: <br />
* <font style="color:green">Functionality</font>: User Authentication: It is now possible to configure RDLogin to require entry of the user-name, rather than picking the name off of a list. See the &lsquo;Show User List in RDLogin&rsquo; checkbox in RDAdmin-&gt;SystemSettings<br />
* <font style="color:green">Functionality</font>: Log Rendering (EXPERIMENTAL): It is now possible to &lsquo;render&rsquo; a log as a single audio object (file or cart/cut) without the need to play it out while capturing the audio in realtime. Render support is available through the &lsquo;Render&rsquo; button in RDLogEdit and through the command-line rdrender(1) utility. See the rdrender(1) man page for details<br />
* <font style="color:green">Functionality</font>: Provisioning Support. Added a [Provisioning] section to rd.conf(5) with directives to facilitate the automatic provisioning of Rivendell instances. See the comments in the [Provisioning] section of the sample rd.conf(5) file<br />
* <font style="color:orange">Artwork</font>: New Icons: Implemented a new icon set, with individualized icons for each Rivendell module<br />
<br />
=== 2.16.0 (2017-06-02) ===<br />
* Database version updated to '''263'''<br />
* <font style="color:red">Bug fix</font>: Many bug fixes; see the [https://github.com/ElvishArtisan/rivendell/blob/stable/ChangeLog ChangeLog] for all the details (search for ''2.16.0'' and work your way backward through the list of changes)<br />
* <font style="color:green">Functionality</font>: Audio Store Hashing. Rivendell now automatically generates a SHA1 hash for each file in the audio store and records this value in the database, thus permitting automated recovery of audio in the event of loss or damage to the audio store's filesystem directory<br />
* <font style="color:green">Functionality</font>: Added switcher support for Kernel GPIO devices, such as the GPIO interface on the Raspberry Pi 2 and 3<br />
* <font style="color:green">Functionality</font>: Added switcher support for Modbus TCP devices<br />
* <font style="color:green">Functionality</font>: Added an rdconvert(1) utility<br />
* <font style="color:green">Functionality</font>: It is now possible to delegate authentication of Rivendell users by means of a PAM module, thus permitting &lsquo;''single sign-on''&rsquo; integration with systems such as ActiveDirectory and FreeIPA<br />
* <font style="color:green">Functionality</font>: Added various methods to the Rivendell Web API to permit integration with external audio and log editors<br />
<br />
=== 2.15.3 (2017-03-24) ===<br />
* Database version '''259''' <br />
* <font style="color:red">Bug fix</font>: Fixed bugs in MP3 file importation that caused files with variable bit rate (VBR) to be truncated during import.<br />
* <font style="color:red">Bug fix</font>: Fixed a bug that caused dynamically loaded codec libraries to fail to be detected if the corresponding library&rsquo;s so-called ''-devel'' package was not installed. <br />
* <font style="color:green">Functionality</font>: Added an ''RLM'' for generating [http://tagstation.com/ TagStation] RLM events for [http://nextradioapp.com/ NextRadio].<br />
* <font style="color:green">Functionality</font>: Added '''AddLog''', '''DeleteLog''' and '''SaveLog''' calls to the web API, along with general cleanup and correction of the overall Web API subsystem.<br />
<br />
=== 2.15.2 (2017-01-13) ===<br />
* Database version '''259'''<br />
* <font style="color:orange">Documentation</font>: Document the interfaces for '''inserting inline traffic breaks''' and for '''inserting voice track markers''' (also add an example in ''docs/examples/'')<br />
* <font style="color:red">Bug fix</font>: in ''rdadmin/createdb.cpp'' that caused obsolete fields in the 'SERVICES' table to be included when creating a new database.<br />
* <font style="color:red">Bug fix</font>: in ''lib/rdwavefile.cpp'' that caused RDXL chunks to be written with odd chunk lengths.<br />
* <font style="color:red">Bug fix</font>: in ''lib/rdsimpleplayer.cpp'' that caused RDAirPlay to freeze when attempting to audition an expired cart.<br />
* <font style="color:green">Functionality</font>: Added a '''LockRdairplayMemory=''' parameter to the [Hacks] section.<br />
* <font style="color:green">Functionality</font>: Modified the LiveWire Multicast GPIO driver to generate GPO events using the 'I' event type.<br />
<br />
=== 2.15.1 (2016-08-05) ===<br />
* Database version '''259'''<br />
* <font style="color:red">Bug fix</font>: fixed WAV file export code to enhance compatibility with third-party applications<br />
<br />
=== 2.15.0 (2016-07-29) ===<br />
* <font style="color:red">Bug fix</font>: complete support for the MySQL/MariaDB InnoDB database engine (for better transaction processing of database updates)<br />
* <font style="color:green">Functionality</font>: enhancements to ''rdexport'' that include full metadata in RDXML format<br />
* <font style="color:green">Functionality</font>: add CLI command ''rdclilogedit'' that enables editing of Rivendell Logs from the command line (without a GUI app)<br />
* <font style="color:green">Functionality</font>: Update the database to version 259.<br />
<br />
=== 2.14.1 (2016-06-11) ===<br />
* Database version '''258'''<br />
* <font style="color:red">Bug fix</font>: additional fixes for newer versions of MySQL (and MariaDB)<br />
<br />
=== 2.14.0 (2016-06-10) ===<br />
* Database version '''258'''<br />
* <font style="color:green">Functionality</font>: add the ability to capture real-time events in RDCatch recordings and replay the events in sync with the captured audio<br />
* <font style="color:green">Functionality</font>: add RML Macro ''Cut Event'' (''CE'') for placing real-time event markers into active RDCatch recordings<br />
* <font style="color:green">Functionality</font>: add support for specifying precise start time and length parameters for Traffic events that are embedded in Music events<br />
* <font style="color:red">Bug fix</font>: fixed a bug in RDAdmin that could cause creation of a new database to fail<br />
* <font style="color:red">Bug fix</font>: fix issues that prevent compilation under newer versions of the GNU C compiler suite<br />
* <font style="color:red">Bug fix</font>: various enhancements and fixes to the new(ish) ''rdexport'' utility<br />
* <font style="color:red">Bug fix</font>: initial support for newer versions of MySQL (and MariaDB)<br />
* <font style="color:red">Bug fix</font>: add code to allow embedded traffic breaks to be specified with start time and length in the music schedule.<br />
<br />
=== 2.13.0 (2016-05-10) ===<br />
* Database version '''255'''<br />
* <font style="color:green">Functionality</font>: add RLM plugin for the Paravel Systems ''WallTime'' clock<br />
* <font style="color:green">Functionality</font>: add new CLI command ''rdexport'' to export Carts with metadata<br />
* <font style="color:green">Functionality</font>: new report: ''Cut Log'' that includes the Description field for played events<br />
* <font style="color:red">Bug fix</font>: fixed a crash in RDLibrary when attempting to open multiple Carts<br />
* <font style="color:red">Bug fix</font>: fixed RDLogEdit to improve performance when saving and updating logs<br />
* <font style="color:red">Bug fix</font>: fixed a bug that caused marker data to be deleted when exporting a Cut<br />
<br />
=== 2.12.0 (2016-04-14) ===<br />
* Database version '''254'''<br />
* <font style="color:green">Functionality</font>: add support for sequential Cut play-out - you can now configure carts to play cuts in a fixed, sequential order rather than by weight value<br />
* <font style="color:green">Functionality</font>: add support for ''Broadcast Tools'' switchers<br />
* <font style="color:green">Functionality</font>: add RML macro '''Copy Cut''' (''CP'') to copy cuts between carts<br />
* <font style="color:green">Functionality</font>: add option to show only &ldquo;recent&rdquo; logs in RDLogEdit<br />
* <font style="color:green">Functionality</font>: add new web API methods related to Scheduler Codes<br />
* <font style="color:red">Bug fix</font>: fixed a bug that caused issues with Services containing the &ldquo;-&rdquo; (dash) character<br />
<br />
=== 2.11.0 (2015-09-18) ===<br />
* Database version '''252'''<br />
* <font style="color:green">Functionality</font>: add RDCatch upload/download protocols ''sftp'' and ''scp''<br />
* <font style="color:green">Functionality</font>: add support to import ''MP4/AAC'' files<br />
* <font style="color:green">Functionality</font>: add support for the ''Ross NK'' series video switcher<br />
* <font style="color:green">Functionality</font>: add support for ''PCM24'' in the core audio library code<br />
* <font style="color:red">Bug fix</font>: re-wrote the CD ripper code to make it faster and more reliable<br />
* <font style="color:red">Bug fix</font>: fixed several bugs related to audio data and buffering<br />
* <font style="color:red">Bug fix</font>: Normalized service clock data from the 'SERVICES' to the 'SVC_CLOCKS' table<br />
<br />
=== 2.10.3 (2015-02-24) ===<br />
* Database version '''242'''<br />
* <font style="color:green">Functionality</font>: add RLM (plugin) for Live365 streaming service (which is defunct as of Summer 2016)<br />
* <font style="color:green">Functionality</font>: add &ldquo;MrMaster&rdquo; and &ldquo;Spin Count&rdquo; reports<br />
* <font style="color:green">Functionality</font>: add support for audio switcher devices that use the &ldquo;Software Authority&rdquo; protocol<br />
* <font style="color:green">Functionality</font>: add ability to set segue markers in the CLI app ''rdmarkerset''<br />
* <font style="color:red">Bug fix</font>: fixed a bug that caused issues with Services containing a <Space> character in the service name<br />
<br />
=== 2.10.2 (2014-11-25) ===<br />
* Database version '''242'''<br />
* <font style="color:green">Functionality</font>: CLI ''rdimport'' enhancement: add two date-related options to the command<br />
* <font style="color:green">Functionality</font>: add column for ELR data in RDLogEdit<br />
* <font style="color:red">Bug fix</font>: fixed a bug in the Audio Science adapter for cards with only AES3 ports<br />
<br />
=== 2.10.1 (2014-11-04) ===<br />
* Database version '''242'''<br />
* <font style="color:green">Functionality</font>: add &ldquo;DSP utilization and profiling&rdquo; info for Audio Science adapters<br />
* <font style="color:green">Functionality</font>: add the column &ldquo;EXT DATA&rdquo; to the &ldquo;Edit Log&rdquo; screen in RDLogEdit<br />
* <font style="color:red">Bug fix</font>: fixed a memory fault (crash) in RDLogEdit when dropping a cart that was being used in a log</div>
DKlann
http://wiki.rivendellaudio.org/index.php?title=Main_Page&diff=629
Main Page
2022-10-13T14:49:31Z
<p>DKlann: /* Evaluating Rivendell */ Add discussion about and link to ChangeSummary.</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. Browse the source code at the official [https://github.com/ GitHub] [https://github.com/ElvishArtisan/rivendell repository]. Here&lsquo;s a list of [[Stations_using_Rivendell|stations using Rivendell]].<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 />
Users of Rivendell versions prior to 3.0 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 />
==== Should I Upgrade? ====<br />
<br />
You might be considering upgrading your Rivendell system. Many people live by the adage, &ldquo;Don&rsquo;t fix it if it ain&rsquo;t broke.&rdquo; On the other hand, there are sound and sensible reasons for upgrading your Rivendell installation: operating system security patches, bug fixes, performance enhancements, and improved functionality to name just a few reasons.<br />
<br />
[[ChangeSummary|This]] change summary lists the notable changes between all released versions of Rivendell for the past few years. The list currently goes back to version 2.10.1 (released in 2014). The [[ChangeSummary|change summary]] also shows the database version number with each release. Some Rivendell releases include no database changes and are therefore &ldquo;easier&rdquo; to upgrade. In other words, upgrading Rivendell when there is no database version change is less intrusive; you can safely upgrade individual workstations one at a time (serially) without affecting other workstations. As always, if you&rsquo;re unsure about upgrading, &ldquo;seek professional help&rdquo;.<br />
<br />
=== Installation ===<br />
* [[Installing Rivendell]] - How to install Rivendell on various Linux distributions (updated July, 2021).<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>
DKlann
http://wiki.rivendellaudio.org/index.php?title=ChangeSummary&diff=628
ChangeSummary
2022-10-13T13:50:19Z
<p>DKlann: Version 3.6.6.</p>
<hr />
<div>__NOTOC__<br />
== Rivendell Change Summary ==<br />
<br />
This page contains version change descriptions in summary form for Rivendell versions released within at least the most recent five years (quite probably longer). Change descriptions are limited (mostly) to user-visible changes.<br />
<br />
Please see the [https://raw.githubusercontent.com/ElvishArtisan/rivendell/master/ChangeLog ChangeLog] and [https://github.com/ElvishArtisan/rivendell/blob/master/NEWS NEWS] files in the [https://github.com/elvishartisan/rivendell source code] for a complete list of changes and bug fixes.<br />
<br />
See the [https://github.com/elvishartisan/rivendell/issues Issues] list for current reported bugs, issues and feature requests.<br />
<br />
=== 3.6.6 (2022-10-02) ===<br />
<br />
* Database verson '''347'''<br />
<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdrssd(8) that caused a podcast episode to be deleted immediately after being made active if the &lsquo;Air Date/Time&rsquo; was set for the future and &lsquo;Item Expires&rsquo; was set to &lsquo;No&rsquo; in the &lsquo;Editing Item&rsquo; dialog<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdcastmanager(1) that caused incorrect ordering when sorting by the &lsquo;Start&rsquo; and &lsquo;Expiration&rsquo; columns in the &lsquo;Podcast Item List&rsquo; dialog<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in the CDDB parser that caused it to emit an error message when processing a 202 response<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in PyPAD where resolution of datetimes could be incorrect<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdservice(8) that could cause a segfault (crash) when started with a previous instance running<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdlogmanager(1) that could cause a segfault (crash) when merging a log<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdrssd(8) that caused incorrect error data to be logged<br />
* <font style="color:red">Bug fix</font>: Fixed a regression in the Disc Ripper in rdlibrary(1) that caused manual changes to track metadata to be incorrectly applied<br />
* <font style="color:green">Functionality</font>: Added &lsquo;--by-isci&rsquo; and &lsquo;--dump-isci-xref&rsquo; options to rdimport(1) and modified rdimport(1) to allow the &lsquo;--by-isci&rsquo; option to take a service name option<br />
* <font style="color:green">Functionality</font>: Added a &lsquo;StayOnTop=&rsquo; directive to the &lsquo;[SoftKeys]&rsquo; section of rd.conf(5)<br />
* <font style="color:green">Functionality</font>: Changed the default &lsquo;--process-interval=&rsquo; value from 60 seconds to 30 seconds in rdrssd(8)<br />
* <font style="color:green">Functionality</font>: Added &lsquo;RDListView::DateTimeSort&rsquo; to the &lsquo;RDListView::SortType enumeration<br />
* <font style="color:green">Functionality</font>: Added explicit processing for 201, 230, 401, 402, 403, 409, 431, 432, 433, 434, 501, 502, 503 and 530 returns in the CDDB parser<br />
* <font style="color:green">Functionality</font>: Added an Online Feed Report to rdcastmanager(1)<br />
* <font style="color:green">Functionality</font>: Modified the full disc ripper and the per-track ripper in rdlibrary(1) to use CD-Text<br />
* <font style="color:green">Functionality</font>: Renamed the &lsquo;CD Metadata Source&rsquo; control in rdlibrary(1) to use &lsquo;CDDB&rsquo; instead of &lsquo;FreeDB&rsquo; when configuring CDDB lookups<br />
* <font style="color:green">Functionality</font>: Added support for a &lsquo;SuppressLinkParameterInheritance=&rsquo; directive in the &lsquo;[Hacks]&rsquo; section of rd.conf(5)<br />
* <font style="color:blue">Code (internal) change</font>: Added code to the podcasting subsystem to log extended curl(1) information to syslog<br />
<br />
=== 3.6.5 (2022-03-18) ===<br />
<br />
* Database verson '''347'''<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdimport(1) that could create duplicate Scheduler Code entries when using the &lsquo;--to-cart&rsquo; and &lsquo;--add-scheduler-code&rsquo; switches simultaneously<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in the &lsquo;rdxport&rsquo; service that caused the &lsquo;ListLog&rsquo; WebAPI call to return null values in the &lsquo;description&rsquo;, &lsquo;isrc&rsquo;, &lsquo;isci&rsquo;, &lsquo;recordingMbId&rsquo; and &lsquo;releaseMbId&rsquo; fields<br />
* <font style="color:green">Functionality</font>: Added a &lsquo;direct&rsquo; namespace to the &lsquo;Apple iTunes&rsquo; and &lsquo;Apple iTunes + Superfeed&rsquo; RSS schemas<br />
<br />
<br />
=== 3.6.4 (2022-02-22) ===<br />
<br />
Note: version 3.6.3 was tagged, but not released.<br />
<br />
* Database verson '''347'''<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdlogmanager(1) that caused leading event attributes to fail to be preserved when suppressing Music of Traffic import markers<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in the rdxport &lsquo;Import&rsquo; service that could result in incorrect end marker placement when processing variable bit rate (VBR) MPEG files<br />
* <font style="color:red">Bug fix</font>: Fixed an arithmetic overflow bug in &lsquo;RDWaveFile&rsquo; that could cause the play length of MPEG-encoded to be incorrectly calculated<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdimport(1) that caused premature validation of metadata<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdxport(8) that caused the &lsquo;SaveLog&rsquo; WebAPI call to fail if the target log didn&rsquo;t exist<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rddbmgr(8) that could cause the 346=&gt;347 schema conversion to hang indefinitely with databases containing large cart libraries<br />
* <font style="color:green">Functionality</font>: Added a &lsquo;SuppressMusicImportLinks=&rsquo; directive to the [Hacks] section of rd.conf(5)<br />
* <font style="color:green">Functionality</font>: Added support for [NowGroups] and [NextGroups] sections in PyPAD script configurations<br />
* <font style="color:green">Functionality</font>: Deprecated use of the &lsquo;Transmit Now & Next data&rsquo; checkbox in the &lsquo;Group&rsquo; dialog in rdadmin(1)<br />
* <font style="color:green">Functionality</font>: Added a &lsquo;SaveWebgetFilesDirectory=&rsquo; directive to rd.conf(5)<br />
* <font style="color:green">Functionality</font>: Modified the mode of files generated by the rd-conf(5) &lsquo;SaveWebgetFilesDirectory=&rsquo; configuration directive from 0440 to 0664<br />
* <font style="color:green">Functionality</font>: Added a &lsquo;linkLength&rsquo; field and a &lsquo;graceTime&rsquo; field to the return XML for the &lsquo;ListLog&rsquo; WebAPI call<br />
* <font style="color:green">Functionality</font>: Added a &lsquo;Log Listing (CSV)&rsquo; report to rdlogedit(1)<br />
* <font style="color:green">Functionality</font>: Added a &lsquo;--print-progress&rsquo; switch to rddbmgr(8)<br />
* <font style="color:blue">Code (internal) change</font>: Overhauled the code for reading MPEG frame headers in &lsquo;RDWaveFile&rsquo;<br />
* <font style="color:blue">Code (internal) change</font>: Increased the import process timeout for the WebGet service to 1200 seconds<br />
<br />
<br />
=== 3.6.2 (2021-07-30) ===<br />
* Database verson '''347'''<br />
* <font style="color:green">Functionality</font>: Added support for system dark themes in RDAirplay<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdlogedit(1) that could cause a crash when attempting to play a non-audio event in the &lsquo;Voice Tracker&rsquo; dialog<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdimport(1) that caused the cart title uniqueness check to be applied to the incorrect string when the &lsquo;--set-string-title=&rsquo; switch was used<br />
<br />
<br />
=== 3.6.1 (2021-06-06) ===<br />
* Database verson '''347'''<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdimport(1) that could cause a crash when the &lsquo;--fix-broken-formats&rsquo; switch is used<br />
* <font style="color:green">Functionality</font>: Added syslog DEBUG messages around the start/stop of ephemeral processes in rdservice(8)<br />
* <font style="color:green">Functionality</font>: Added an &lsquo;--initial-maintenance&rsquo; switch to rdservice(8)<br />
* <font style="color:green">Functionality</font>: Added an &lsquo;--force-system-maintenance&rsquo; switch to rdservice(8)<br />
* <font style="color:green">Functionality</font>: Modified rdmaint(8) to enable it to operate even when the Rivendell services are not running<br />
<br />
=== 3.6.0 (2021-05-15) ===<br />
* Database verson '''347'''<br />
* <font style="color:red">Bug fix</font>: Fixed title separation in rdlogmanager(1) scheduler<br />
* <font style="color:red">Bug fix</font>: Fixed bug in library code ''lib/rdwavefile.cpp'' that copied CartChunk Cut ID past the end of the first "NULL" character<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdairplay(1) that caused the Talk Timer to fail to be populated when adding new carts to a log<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in the Cart Selector Dialog that made it impossible to enter an apostrophe character in the filter search line<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdimport(1) where the title of an existing cart would be overwritten with a default title even when no title was found in the file metadata<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in &lsquo;RDFlacDecode&rsquo; that caused conversion of files with names containing non-ASCII characters to fail<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdadmin(1) where clicking the &lsquo;OK&rsquo; button in the &lsquo;Edit Switcher&rsquo; dialog would cause an error dialog to appear with a &lsquo;primary serial device not active&rsquo; warning. The following devices are affected: &lsquo;Local GPIO&rsquo;, &lsquo;Local Audio Adapter&rsquo;, &lsquo;Logitek vGuest&rsquo;, &lsquo;Livewire LWRP Audio&rsquo;, and &lsquo;Kernel GPIO&rsquo;<br />
* <font style="color:green">Functionality</font>: Modified rdimport(1) and the Webget service so as to send e-mail reports to the address of the current Rivendell user in addition to the group&rsquo;s Notification E-Mail Address<br />
* <font style="color:green">Functionality</font>: Added a &lsquo;STACK_LINES.TITLE&rsquo; field to the database<br />
* <font style="color:green">Functionality</font>: Added the value of the detected CartChunk CutID to the error message generated when rejecting said CutID as invalid when using the &lsquo;--use-cartchunk-cutid&rsquo; switch in rdimport(1)<br />
* <font style="color:green">Functionality</font>: Added code to print the value of the detected CartChunk CutID when using both the &lsquo;--use-cartchunk-cutid&rsquo; and &lsquo;--verbose&rsquo; flags in rdimport(1)<br />
* <font style="color:green">Functionality</font>: Created pypad_ino713_tcp based upon pypad_ino713, converting from UDP to TCP. Added an adjustable delay to account for broadcast air delays<br />
* <font style="color:green">Functionality</font>: Created pypad_nautel based upon pypad_ino713_tcp, including RDS parameters from documentation. Includes delay as above<br />
* <font style="color:green">Functionality</font>: Added a new &lsquo;RadioTraffic.com Traffic Reconciliation&rsquo; report. Renamed the existing &lsquo;RadioTraffic.com Traffic Reconciliation&rsquo; to &lsquo;Original RadioTraffic.com Traffic Reconciliation (DEPRECATED)&rsquo;<br />
* <font style="color:green">Functionality</font>: Changed the way in which the VU Meter UDP port is chosen. One can now specify the base port number and the maximum number of UDP ports to consider when caed(8) sets up the VU meter port<br />
* <font style="color:orange">Documentation</font>: Documented the &lsquo;MeterPortBaseNumber=&rsquo; and &lsquo;MeterPointRange=&rsquo; directives in the rd.conf(5) man page<br />
<br />
=== 3.5.0 (2020-12-12) ===<br />
* Database verson '''346'''<br />
* <font style="color:red">Bug fix</font>: Corrected the column settings in RDAdmin > Manage Hosts > [host] > Dropboxes<br />
* <font style="color:red">Bug fix</font>: Fixed regression with "Scheduler Code:" label overlapping "Group" combobox in rdlibrary(1)<br />
* <font style="color:red">Bug fix</font>: Fixed several bugs in rdadmin(1) that messed with passwords, user settings, and other important settings<br />
* <font style="color:red">Bug fix</font>: Fixed several bugs in rdlogmanager(1) that caused all kinds of mischief<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdairplay(1) where copying a log event using the &lsquo;Copy&rsquo; button would result in the new event always getting a &lsquo;PLAY&rsquo; transition<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rddbmgr(8) that could cause database corruption problems<br />
* <font style="color:red">Bug fix</font>: Fixed bugs in rdimport(1) that caused incorrect exit codes to be emitted when a non-existent group was specified, and that caused generation of double error messages when processing invalid audio files<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdmonitor(1) that caused false indications of a failed audio store when used with autofs(8)<br />
* <font style="color:green">Functionality</font>: Major overhaul of Rivendell&rsquo;s podcast handling features; see the ChangeLog for all the details<br />
* <font style="color:green">Functionality</font>: Modified the GVC7000 switcher driver to insert 50 mS pauses between protocol commands<br />
* <font style="color:green">Functionality</font>: Allow RN Macro to run when Rivendell daemons running as non-root<br />
* <font style="color:green">Functionality</font>: Many changes to rdadmin(1), including:<br />
:* Added whitespace to the set of banned characters for service names<br />
:* Added a &lsquo;SSH Ident. File&rsquo; control to the &lsquo;Host&rsquo; dialog<br />
:* Added an &lsquo;Inline Traffic Inheritance&rsquo; control to the &lsquo;Edit Service&rsquo; dialog<br />
:* Added type icons to the &lsquo;Imported Events&rsquo; list in the &lsquo;Test Import&rsquo; dialog<br />
:* Renamed the &lsquo;Inline Traffic Inheritance&rsquo; control to &lsquo;Inline Traffic Start/Length&rsquo; and moved it to the &lsquo;Music Data Import&rsquo; section of the &lsquo;Edit Service&rsquo; dialog<br />
:* Added an &lsquo;Encoder Profiles&rsquo; dialog<br />
:* Renamed the &lsquo;Note Cart String&rsquo; controls to &lsquo;Insert Marker String&rsquo; in the &lsquo;Edit Service dialog<br />
:* Added an &lsquo;Origin E-Mail Address&rsquo; control to the &lsquo;System-Wide Settings&rsquo; dialog<br />
:* Added a &lsquo;Notification E-Mail Addresses&rsquo; control to the &lsquo;Group&rsquo; dialog<br />
:* Added a &lsquo;Send e-mail reports&rsquo; checkbox to the &lsquo;Dropbox Configuration&rsquo; dialog<br />
:* Added &lsquo;E-Mail Address&rsquo;, &lsquo;Phone Number&rsquo; and &lsquo;Local Auth&rsquo; columns to the &lsquo;Users&rsquo; list in the &lsquo;Rivendell User List&rsquo; dialog<br />
:* Added an &lsquo;Administer RSS Feeds&rsquo; checkbox to the &lsquo;Administrative Rights&rsquo; section of the &lsquo;User&rsquo; dialog<br />
:* Added a deprecation warning for the &lsquo;Allow Duplicate Cart Titles&rsquo; and &lsquo;Auto-Correct Duplicate Cart Titles&rsquo; checkboxes on the &lsquo;System-Wide Settings&rsquo; dialog<br />
* <font style="color:green">Functionality</font>: Added support for FTPS protocol for uploading, downloading, and Feed management<br />
* <font style="color:green">Functionality</font>: Significant update to the Rivendell Web interfaces (Web API, WebGet service, rivwebcapi API, etc.)<br />
* <font style="color:green">Functionality</font>: Added &lsquo;--scheduler-code=&rsquo; switch to rdexport(1)<br />
* <font style="color:green">Functionality</font>: Added generation of an &lsquo;RDLogManager Error Report&rsquo; when errors are detected when importing an external scheduler file in rdlogmanager(1)<br />
* <font style="color:green">Functionality</font>: Restored operation of Label/Note carts in rdlogmanager(1)<br />
* <font style="color:green">Functionality</font>: Updated rdservice(8) to use standard exit code defines<br />
* <font style="color:green">Functionality</font>: Implemented the &lsquo;--verbose&rsquo; switch for rdmaint(8)<br />
* <font style="color:green">Functionality</font>: Added a sample Fail2Ban jail filter for the WebAPI in &lsquo;conf/rivendell-webapi.conf&rsquo;<br />
* <font style="color:green">Functionality</font>: Added command line options &lsquo;--output-pattern&rsquo;, &lsquo;--ticket=&rsquo;, &lsquo;--send-mail&rsquo; and &lsquo;--mail-per-file&rsquo; to rdimport(1)<br />
* <font style="color:green">Functionality</font>: Added the name of the import file to schedule import failure reports<br />
* <font style="color:orange">Documentation</font>: Documented the &lsquo;%%&rsquo; filepath wildcard in the Operations Guide<br />
* <font style="color:orange">Documentation</font>: Added an &lsquo;RDCastManager&rsquo; chapter to the Operations Guide<br />
* <font style="color:orange">Documentation</font>: Revised the &lsquo;Managing Services&rsquo; section of the Operations Guide<br />
* <font style="color:orange">Documentation</font>: Rewrote the &lsquo;Webget&rsquo; chapter of the Operations Guide to conform to changes in Webget<br />
* <font style="color:orange">Documentation</font>: Added a &lsquo;Configuring Webget&rsquo; section to the Operations Guide<br />
* <font style="color:orange">Documentation</font>: Removed the &lsquo;Cart Data Dump (fixed width)&rsquo; from the Operations Guide<br />
* <font style="color:orange">Documentation</font>: Documented user-facing changes to the &lsquo;System-Wide Settings&rsquo; dialog, the &lsquo;Rivendell Group List&rsquo; and the &lsquo;Group&rsquo; dialogs in rdadmin(1) in the Operations Guide<br />
* <font style="color:orange">Documentation</font>: Documented the &lsquo;Send e-mail reports&rsquo; checkbox in the &lsquo;Dropbox Configuration&rsquo; dialog in rdadmin(1) in the Operations Guide<br />
* <font style="color:blue">Code (internal) change</font>: Prepended &lsquo;RD_&rsquo; to the names of all common Javascript functions in &lsquo;web/common/utils.js&rsquo;<br />
* <font style="color:blue">Code (internal) change</font>: Added a &lsquo;webget&rsquo; subpackage to the &lsquo;make rpm&rsquo; target<br />
* <font style="color:blue">Code (internal) change</font>: Refactored the &lsquo;Run Script&rsquo; [&rsquo;RN&rsquo;] RML to invoke scripts via the system shell, this change also removed the dependency on runuser(1)<br />
<br />
=== 3.4.1 (2020-07-21) ===<br />
* Database verson '''317'''<br />
<br />
* <font style="color:green">Functionality</font>: Added a &lsquo;Results Report&rsquo; report in rdadmin(1)<br />
* <font style="color:green">Functionality</font>: Removed the checkbox from the &lsquo;Delete&rsquo; right-click menu item in the &lsquo;Edit Event&rsquo; dialog in rdlogmanager(1)<br />
* <font style="color:green">Functionality</font>: Modified &lsquo;RDWaveFile&rsquo; to work around known fencepost errors in WAV files generated by "Sonic Studio soundBlade" by "PME Mastering, Inc."<br />
* <font style="color:green">Functionality</font>: Modified the &lsquo;Edit Event&rsquo; dialog in rdlogmanager(1) to show &lsquo;[auto]&rsquo; as the transition type for the leading event in Pre-/Post-Import lists<br />
<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdlibrary(1) that caused cuts to be incorrectly sorted when scheduled &lsquo;By Specified Order&rsquo;<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in the Rivendell command line apps that caused value-only arguments containing &lsquo;=&rsquo; characters to be incorrectly parsed<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in the Podcast Manager, Library Exporter and Web API that caused an error when processing multipart-mime submissions containing &lsquo;=&rsquo; characters<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdairplay(1) where attempting to audition an audio cart with a disabled cue output would crash the application<br />
* <font style="color:red">Bug fix</font>: Fixed a regression in rdairplay(1) that caused the &lsquo;Forced Segue&rsquo; setting in rdadmin(1) to be ignored when executing an event with a hard start attribute<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdairplay(1) where a paused event could not be removed by dropping the empty cart on it<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdairplay(1) that cause incorrect pie timer indications after adding or deleting events to a running log<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdlibrary(1) that would cause a crash when attempting to delete a range of cuts, one of which was in the clipboard<br />
* <font style="color:red">Bug fix</font>: Fixed a math bug in rdairplay(1) that caused the estimated stop-down times in the post point widget to be incorrect after adding or removing events from a running log<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdadmin(1) that made it impossible to enter useful strings in the &lsquo;WaveForm Caption&rsquo; control on the &lsquo;Edit RDLogEdit&rsquo; dialog<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in RDRenderer that caused segue transitions to be rendered without regard to the &lsquo;No Fade on Segue Out&rsquo; checkbox in the &lsquo;Edit Audio&rsquo; dialog<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in ripcd(8) that caused connections to ModbusTCP devices to fail to be properly restored by the connection watchdog<br />
* <font style="color:red">Bug fix</font>: Fixed a regression in the &lsquo;Edit Event&rsquo; dialog in rdlogmanager(1) that caused the first cart transition type to be incorrect when the &lsquo;Pre-Import Carts&rsquo; list was populated<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in the &lsquo;Add Next&rsquo; [&rsquo;PX&rsquo;] RML that failed to return an error when an invalid offset value was supplied<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in the &lsquo;Add Next&rsquo; [&rsquo;PX&rsquo;] RML that failed to honor the &lsquo;Default Trans. Type&rsquo; setting in the &lsquo;Configure RDAirPlay&rsquo; dialog in rdadmin(1)<br />
<br />
=== 3.4.0 (2020-05-19) ===<br />
* Database verson '''317'''<br />
* <font style="color:red">Bug fix</font>: Fixed a regression in rdairplay(1) that caused two events to be started by a single spacebar tap if a SoundPanel event had been played previously<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdlogmanager(1) that caused the initial event in an imported set to fail receive the proper time and transition type if the &lsquo;Include Import Markers in Finished Logs&rsquo; checkbox in rdadmin(1) had not been ticked<br />
* <font style="color:red">Bug fix</font>: Fixed a regression in rdexport(1) that caused exported file names to be constructed improperly<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdlogmanager(1) that caused &lsquo;Make Post Point&rsquo; label to be displayed without last &lsquo;t&rsquo;<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdairplay(1) where timer was not set properly when crossing midnight<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in the &lsquo;List GPIs&rsquo; dialog in rdadmin(1) that prevented changes in GPI assignments from being propagated to the underlying device<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in the &lsquo;Software Authority&rsquo; driver that caused autodetection of the number of GPIOs in a router to be unreliable<br />
* <font style="color:red">Bug fix</font>: Fixed a regression in &lsquo;RDEventLine&rsquo; that caused the &lsquo;Append Log&rsquo; [&rsquo;AL&rsquo;] RML to append a copy of the currently loaded log instead of the one specified in the RML command<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdlogedit(1) that caused garbled text to appear when &lsquo;Start Immediately&rsquo; was selected in the &lsquo;Edit Log Entry&rsquo; dialog box<br />
* <font style="color:red">Bug fix</font>: Fixed a regression that broke the ability to scroll through Sound Panel panels by means of the mouse wheel<br />
<br />
* <font style="color:green">Functionality</font>: Modified rdairplay(1) to always scroll log to the top when using the hour selector<br />
* <font style="color:green">Functionality</font>: Modified rdlogmanager(1) to disable merge buttons if the selected log does not contain any import links<br />
* <font style="color:green">Functionality</font>: Modified rdadmin(1) Edit Service dialog to display built-in traffic and music import template values<br />
* <font style="color:green">Functionality</font>: Added "Copy To Custom" buttons to rdadmin(1) Edit Service dialog<br />
* <font style="color:green">Functionality</font>: Changed the layout of the &lsquo;Editing Event&rsquo; dialog in rdlogmanager<br />
<br />
* <font style="color:green">Functionality</font>: Removed the &lsquo;Post Point&rsquo; checkbox from the &lsquo;Editing Event&rsquo; dialog in rdlogmanager(1)<br />
* <font style="color:green">Functionality</font>: Renamed the &lsquo;REMARKS&rsquo; field to &lsquo;USER NOTES&rsquo; in the &lsquo;Editing Event&rsquo; and the &lsquo;Edit Clock&rsquo; dialogs in rdlogmanager(1)<br />
* <font style="color:green">Functionality</font>: Added a &lsquo;Trans&rsquo; column to the event list in the &lsquo;Edit Clock&rsquo; and the &lsquo;List Events&rsquo; dialogs in rdlogmanager(1)<br />
<br />
=== 3.3.0 (2020-03-16) ===<br />
* Database verson '''314'''<br />
* <font style="color:red">Bug fix</font>: Fixed regressions in the following switcher drivers that could cause deadlocks and intermittent operation<br />
:* BroadcastTools SS16.4<br />
:* BroadcastTools SS 4.2<br />
:* BroadcastTools SS4.4<br />
:* BroadcastTools SS 8.2<br />
:* BroadcastTools ACS8.2<br />
:* BroadcastTools ADMS 44.22<br />
:* BroadcastTools GPI-16<br />
:* BroadcastTools SRC-16<br />
:* BroadcastTools SRC-8 III<br />
:* BroadcastTools SS 4.1 MLR<br />
* <font style="color:red">Bug fix</font>: Fixed a regression in the implementation of the &lsquo;Set Serial Trap&rsquo; [&lsquo;SI&rsquo;] RML that could cause deadlocks and intermittent operation<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdairplay(1) that could cause random segfaults when updating the Label Widget<br />
* <font style="color:red">Bug fix</font>: Fixed a bug with the &lsquo;%y&rsquo; metadata wildcard where garbage would be returned if a valid year had not been set<br />
* <font style="color:red">Bug fix</font>: Fixed a regression in rdlogmanager(1) that caused trailer whitespace to be generated in the &lsquo;EXT_DATA&rsquo;, &lsquo;EXT_EVENT&rsquo;, &lsquo;EXT_ANNC_TYPE&rsquo; and &lsquo;EXT_CART_NAME&rsquo; log fields when importing from a CounterPoint format log<br />
* <font style="color:red">Bug fix</font>: Fixed the layout of the &lsquo;Matching Carts&rsquo; field in rdlibrary(1)&rsquo;s main window when Realtime Filtering is disabled<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdairplay(1) that would cause a hard-timed log event with a &lsquo;wait&rsquo; parameter set to attempt to play the event twice<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rddbmgr(8) that threw a SQL error when attempting to modify a DB containing tables set to use character set UTF-8 to schema 297<br />
* <font style="color:red">Bug fix</font>: Fixed a race in ripcd(8) that caused arguments to the &lsquo;Run Shell Command&rsquo; [&lsquo;RN&rsquo;] macro to be corrupted<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in the &lsquo;Edit Event&rsquo; dialog in rdlogmanager(1) that caused the Transition Type dropdown to be greyed-out when the &lsquo;IMPORT&rsquo; controls were set to use the built-in music scheduler<br />
* <font style="color:green">Functionality</font>: Added a &lsquo;delta-seconds&rsquo; modifier to Filepath Wildcards to enable positive and negative time offsets<br />
* <font style="color:green">Functionality</font>: Removed support for CD-TEXT from the CD rippers<br />
* <font style="color:green">Functionality</font>: Added support for &lsquo;MusicBrainz&rsquo; CD metadata lookup<br />
* <font style="color:green">Functionality</font>: Added a &lsquo;Web Browser&rsquo; control to the &lsquo;Edit Host&rsquo; dialog in rdadmin(1)<br />
* <font style="color:green">Functionality</font>: Added support for displaying cover art in the MusicBrainz release chooser<br />
* <font style="color:green">Functionality</font>: Added &lsquo;%wm&rsquo; [&lsquo;MusicBrainz Recording ID&rsquo;] and &lsquo;%wr&rsquo; [&lsquo;MusicBrainz Release ID&rsquo;] metadata wildcards<br />
* <font style="color:green">Functionality</font>: Implemented the &lsquo;%wm&rsquo; [&lsquo;MusicBrainz Recording ID&rsquo;] and &lsquo;%wr&rsquo; [&lsquo;MusicBrainz Release ID&rsquo;] metadata wildcards for PyPAD<br />
* <font style="color:green">Functionality</font>: Added support for the &lsquo;%wi&rsquo;, &lsquo;%wm&rsquo; and &lsquo;%wr&rsquo; wildcards to the &lsquo;--metadata-pattern=&rsquo; switch in rdimport(1)<br />
* <font style="color:green">Functionality</font>: Added &lsquo;--set-string-isrc&rsquo;, &lsquo;--set-string-recording-mbid&rsquo; and &lsquo;--set-string-release-mbid&rsquo; switches to rdimport(1)<br />
* <font style="color:green">Functionality</font>: Added support for the &lsquo;%wi&rsquo;, &lsquo;%wm&rsquo; and &lsquo;%wr&rsquo; wildcards to the &lsquo;--metadata-pattern=&rsquo; switch in rdexport(1)<br />
* <font style="color:green">Functionality</font>: Added a &lsquo;%wc&rsquo; [&lsquo;Industry Standard Commercial Identification (ISCI) Code&rsquo;] metadata wildcard<br />
* <font style="color:green">Functionality</font>: Implemented the &lsquo;%wc&rsquo; metadata wildcard for PyPAD<br />
* <font style="color:green">Functionality</font>: Added support for the &lsquo;%wc&rsquo; wildcards to the &lsquo;--metadata-pattern=&rsquo; switch in rdimport(1)<br />
* <font style="color:green">Functionality</font>: Added &lsquo;--set-string-isci&rsquo; switch to rdimport(1)<br />
* <font style="color:green">Functionality</font>: Added support for the &lsquo;%wc&rsquo; wildcard to the &lsquo;--metadata-pattern=&rsquo; switch in rdexport(1)<br />
* <font style="color:green">Functionality</font>: Removed the &lsquo;RDLabel&rsquo; widget<br />
* <font style="color:green">Functionality</font>: Added a &lsquo;Disconnect All Jack Ports&rsquo; [&lsquo;JZ&rsquo;] RML<br />
* <font style="color:green">Functionality</font>: Added a &lsquo;CounterPoint Traffic Reconciliation v2&rsquo; report<br />
<br />
=== 3.2.1 (2020-01-24) ===<br />
* Database verson '''311'''<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdcatch(1) that threw a SQL error when clicking 'OK' on the &lsquo;Edit Cart Event&rsquo; dialog<br />
* <font style="color:red">Bug fix</font>: Fixed a regression in rdimport(1) that caused null characters to be written to cart metadata fields when importing files containing an &lsquo;AIR1&rsquo; RIFF chunk<br />
* <font style="color:red">Bug fix</font>: Fixed a regression in rdcatch(1) that caused the &lsquo;Source&rsquo; dropdown in the &lsquo;Edit Recording&rsquo; dialog to fail to be populated properly<br />
* <font style="color:red">Bug fix</font>: Fixed a regression in the cart selector dialog that caused default focus to be lost on the &lsquo;Filter&rsquo; control after second and subsequent invocations<br />
* <font style="color:red">Bug fix</font>: Fixed a regression in rdcatchd(8) that broke audio metering<br />
* <font style="color:red">Bug fix</font>: Fixed a regression in rdcatchd(8) that could cause download events to hang in an active state<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdcatch(1) that caused DOW flags to fail to be updated correctly on the event list after making a change<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdcatchd(8) that failed to send a MODIFY notification at the end of a Record or Download event<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdconvert that caused a segfault at startup<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdexport(1) that caused output filenames containing multi-byte UTF-8 characters to be corrupt<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdgpimon(1) that caused GPIO cart displays to fail to accurately reflect current state<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdgpimon(1) that caused incorrect state indications to be displayed after switching to a different page<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdimport(1) that caused non-Latin1 characters to be corrupted when using standard input<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdimport(1) that caused UTF-8 multibyte characters in filenames to be corrupted<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdlogmanager(1) that caused spurious log events to be inserted when generating a log<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in ripcd(8) that caused input and output counts to be calculated incorrectly for Software Authority protocol devices containing holes in the input and/or output lists<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in the &lsquo;pypad-shoutcast1.py&rsquo; script that threw an exception when processing PAD containing multi-type UTF-8 characters<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in the &lsquo;pypad_xds.py&rsquo; PyPAD script that could cause it to emit duplicate CIC updates<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in the &lsquo;rivwebcapi&rsquo; validate_tm() function that caused dates containing &lsquo;29 February&rsquo; to always fail regardless of leap-year validity<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in the rdxport service that could cause MODIFY notifications to fail to be sent by the &lsquo;SaveLog&rsquo; WebAPI call<br />
* <font style="color:red">Bug fix</font>: Fixed a regression in rdadmin(1) that caused controls to be hidden in the &lsquo;Edit Report&rsquo; dialog<br />
* <font style="color:red">Bug fix</font>: Fixed a regression in rdlogmanager(1) that caused incorrect logged start times to be generated for imported events<br />
* <font style="color:red">Bug fix</font>: Fixed a regression in the rdxport service that caused the ListCuts WebAPI call to return corrupt data<br />
* <font style="color:red">Bug fix</font>: Fixed a regression in the Web API that caused the and/or corrupt in served XML documents<br />
* <font style="color:green">Functionality</font>: Implemented support for non-realtime library filtering in the &lsquo;Editing Event&rsquo; dialog in rdlogmanager(1)<br />
* <font style="color:green">Functionality</font>: Added a &lsquo;Show Start Time As&rsquo; control to the &lsquo;Edit Log&rsquo; dialog in rdlogedit(1)<br />
* <font style="color:green">Functionality</font>: Made the rdlogedit(1) main window and &lsquo;Edit Log&rsquo; dialog window sizes persistent<br />
* <font style="color:green">Functionality</font>: Added a work-around in the &lsquo;PyPAD.Receiver().__openDb()&rsquo; method to work with versions of MySQLdb that do not support the &lsquo;password=&rsquo; parameter in &lsquo;MySQLdb.connect()&rsquo;<br />
* <font style="color:green">Functionality</font>: Added &lsquo;Repetitions=&rsquo; and &lsquo;RepetitionDelay=&rsquo; directive to the configuration of the &lsquo;pypad_xds.py&rsquo; PyPAD script<br />
* <font style="color:green">Functionality</font>: Added &lsquo;Username=&rsquo; and &lsquo;Password=&rsquo; directives to the &lsquo;pypad_httpget.py&rsquo; script for use for HTTP Basic Authentication<br />
* <font style="color:green">Functionality</font>: Added the ability to view a report at time of generation in rdlogmanager(1)<br />
* <font style="color:green">Functionality</font>: Adjusted the position of the &lsquo;Matching Carts&rsquo; readout on the main window of rdlibrary(1)<br />
* <font style="color:green">Functionality</font>: Changed the &lsquo;Time&rsquo; column in the &lsquo;Full Log Widget&rsquo; in rdairplay(1) to &lsquo;Sch. Time&rsquo;<br />
* <font style="color:green">Functionality</font>: Implemented a work-around for importing CartChunk data containing a buggy ENCO implemention of the &lsquo;AUD&rsquo; CartChunk timer<br />
* <font style="color:green">Functionality</font>: Modified the Full Log widget in rdairplay(1) to display logged start times even when the referenced cart does not exist<br />
* <font style="color:green">Functionality</font>: Tweaked the &lsquo;LogLineBox::mouseMoveEvent()&rsquo; method in rdairplay(1) to require a cursor movement of at least 20 pixels before generating a cart drag<br />
<br />
=== 3.2.0 (2019-10-31) ===<br />
* Database verson '''311'''<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rddbmgr(8) that caused a segfault when processing a SQL error<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdimport(1) that caused it to throw an exception when given a &lsquo;--metadata-pattern&rsquo; of less than three characters<br />
* <font style="color:red">Bug fix</font>: Fixed a regression in rdimport(1) that caused a segfault when invoked with the &lsquo;--metadata-pattern&rsquo; and &lsquo;--log-syslog&rsquo; switches<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdairplay(1) that caused space bar presses to start the next event in the Main Log even when &lsquo;Space Bar Action&rsquo; was set to &lsquo;None&rsquo;<br />
* <font style="color:red">Bug fix</font>: Fixed bugs in 'RDWaveFile' that caused strings of null characters to be written into unfilled CartChunk string fields<br />
* <font style="color:red">Bug fix</font>: Fixed a regression in 'rdxport.cgi' that caused a check of the Rivendell services to be triggered each time a WebAPI function was invoked<br />
* <font style="color:red">Bug fix</font>: Fixed a regression in rdsoftkeys(1) that threw a segfault at startup<br />
* <font style="color:green">Functionality</font>: Added the ability to configure the caption displayed for the first and third voicetrack waveforms in the Voicetracker dialog in rdlogedit(1)<br />
* <font style="color:green">Functionality</font>: Reworked the font management system to permit the fonts used in the UI to be specified in rd.conf(5).<br />
* <font style="color:green">Functionality</font>: Added support for posting podcast content via SFTP<br />
* <font style="color:orange">Documentation</font>: Added manual pages for rd.conf(5) and rdsoftkeys(1)<br />
<br />
=== 3.1.0 (2019-09-19) ===<br />
* Database verson '''310'''<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdairplay(1) and rdvairplayd(8) where only the first log machine set to &lsquo;load specified log&rsquo; would do so<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdlogedit(1) that caused hard start log items to have the Hour field doubled<br />
* <font style="color:red">Bug fix</font>: Refactored the Python &lsquo;pypad.Update.shouldBeProcessed()&rsquo; method to work correctly when using <tt>try:</tt> blocks in a PyPAD script<br />
* <font style="color:red">Bug fix</font>: Refactored the PyPAD scripts to route updates properly in accordance with log directives in their configuration file<br />
* <font style="color:red">Bug fix</font>: Fixed a bug that broke dropbox logging to individual files<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in caed(8) that broke timescaling support<br />
* <font style="color:red">Bug fix</font>: Fixed bugs in rdlibrary(1) that broke CD ripping<br />
* <font style="color:green">Functionality</font>: Refactored rdalsaconfig(1) to be more robust and intuitive<br />
* <font style="color:green">Functionality</font>: Added a &lsquo;pypad_httpget.py&rsquo; PyPAD script<br />
* <font style="color:green">Functionality</font>: Updated CDDB code to use protocol level 6 (UTF-8 enabled)<br />
* <font style="color:green">Functionality</font>: Added an &lsquo;%l&rsquo; wildcard to Filepath Wildcards for &lsquo;unpadded month&rsquo;<br />
=== 3.0.3 (2019-08-05) ===<br />
* Database verson '''308'''<br />
* <font style="color:red">Bug fix</font>: Fixed a regression in ripcd(8) that broke the 'Connect Jack Ports' ['JC'] and 'Disconnect Jack Ports' ['JD'] RMLs<br />
=== 3.0.2 (2019-07-31) ===<br />
* Database verson '''308'''<br />
* <font style="color:red">Bug fix</font>: Fixed a problem with the Local Audio Adapter switcher driver that caused incorrect operation with the 'Switch Add' ['SA'], 'Switch Remove' ['SR'] and 'Switch Take' ['ST'] RMLs<br />
* <font style="color:red">Bug fix</font>: Fixed a regression in rdlibrary(1) that caused macro carts entries to turn red after being viewed<br />
* <font style="color:red">Bug fix</font>: Fixed regressions that made operations with serial devices unreliable<br />
* <font style="color:green">Functionality</font>: Added support for switchers using the Grass Valley 7000 series protocol<br />
=== 3.0.1 (2019-07-16) ===<br />
* Database verson '''308'''<br />
* <font style="color:red">Bug fix</font>: Rivendell is now Unicode UTF-8 clean<br />
* <font style="color:red">Bug fix</font>: Qt4 is now used throughout Rivendell instead of Qt3<br />
* <font style="color:green">Functionality</font>: The Rivendell Loadable Modules system for processing PAD data has been completely replaced by PyPAD, allowing PAD processing plug-ins to be written in the popular Python scripting langauge. Backward compatible replacement scripts for many of the RLM plug-ins supplied in Rivendell v2.x are included<br />
* <font style="color:green">Functionality</font>: Added a compatibility library to facilitate the use of the Rivendell Web API in external applications<br />
* <font style="color:green">Functionality</font>: A system of virtual log machines has been added, allowing play-out of up to 23 logs simultaneously<br />
* <font style="color:green">Functionality</font>: Rivendell is now fully systemd compatibile<br />
* <font style="color:green">Functionality</font>: The Windows ports of rdlogedit(1) and rdlogmanager(1) have been removed<br />
* <font style="color:orange">Documentation</font>: The Rivendell Operations and Administration Guide has been updated and enhanced with more details about running a Rivendell system<br />
* <font style="color:orange">Documentation</font>: New manual pages have been added for Rivendell command that previously did not have them<br />
See [http://caspian.paravelsystems.com/pipermail/rivendell-dev/2019-July/027867.html this message] on the Rivendell Dev mailing list for more details about installing and upgrading Rivendell.<br />
=== 2.19.3 (2018-10-31) ===<br />
* Database verson '''275'''<br />
* <font style="color:red">Bug fix</font>: Fixed a bug that caused the &lsquo;Switcher Matrix&rsquo; and &lsquo;Switcher Output&rsquo; dropdowns to populate incorrect values when selecting a non-local &lsquo;Switcher Host&rsquo; in the &lsquo;Configure RDCatch&rsquo; dialog in rdadmin(1)<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdlogmanager(1) that caused the initial transition type specified in the &lsquo;IMPORT&rsquo; section of the &lsquo;Editing Event&rsquo; dialog to be applied to both the parent log link and the first imported event when the &lsquo;PRE-IMPORT CARTS&rsquo; list was empty and no Timed Start was enabled<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in ripcd(8) that caused process of the &lsquo;Air Gate&rsquo; [&lsquo;AG&rsquo;] RML to fail<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdimport(1) that would throw a spurious SQL error when using the &lsquo;--to-cart=&rsquo; switch with an already existing cart [Issue #000217]<br />
* <font style="color:red">Bug fix</font>: Fixed a regression that caused rdimport(1) to return a &lsquo;no free carts available in specified group&rsquo; when invoked without the &lsquo;--to-cart=&rsquo; option<br />
* <font style="color:red">Bug fix</font>: Fixed a regression in rdairplay(1) that caused carts Added or Copied to a log to have a PLAY transition regardless of the default transition type set in rdadmin(1)<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in &lsquo;RDTextValidator&rsquo; that failed to catch banned characters added to the interior of existing strings<br />
* <font style="color:red">Bug fix</font>: Various other bugs fixed<br />
* <font style="color:green">Functionality</font>: Added a &lsquo;TranscodingDelay=&rsquo; parameter to the &lsquo;[Tuning]&rsquo; section of rd.conf(5)<br />
* <font style="color:green">Functionality</font>: Added a Switcher/GPIO driver for the BroadcastTools SS 2.1 switcher<br />
* <font style="color:green">Functionality</font>: Added support for GPIO on AudioScience adapters to the 'Local Audio Adapter' Switcher/GPIO driver<br />
* <font style="color:green">Functionality</font>: Renamed the 'Add Next' ['PX'] RML to 'Insert Cart' ['PX'] and added two optional arguments to allow specification of the insertion position and transition type<br />
* <font style="color:green">Functionality</font>: Added support for Spinitron v2 to the 'spinitron_plus' RLM<br />
* <font style="color:green">Functionality</font>: Added an &lsquo;ExportedFileMode=&rsquo; parameter to the &lsquo;[Tuning]&rsquo; section of rd.conf(5) to permit permission mode of exported audio files to be specified<br />
* <font style="color:orange">Documentation</font>: Documented GPIO support for AudioScience cards in the &lsquo;Local Audio Adapter&rsquo; section of the Operations Guide<br />
<br />
=== 2.19.2 (2018-04-14) ===<br />
* Database verson '''275'''<br />
* <font style="color:red">Bug fix</font>: Fixed a regression in the HPI support layer that broke audio capture with adapters lacking DMA bus-mastering support<br />
<br />
=== 2.19.1 (2018-03-27) ===<br />
* Database verson '''275'''<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdlogmanager(1) that caused DB corruption when a clock was deleted while still being assigned to a grid.<br />
* <font style="color:green">Functionality</font>: Implemented support for DMA bus-mastering for AudioScience HPI devices. This release supports the latest ASI cards that require DMA bus-mastering support. You may also need to update the hpklinux driver to v4.20.10 or later. RPMs for CentOS 7 are available at [http://static.paravelsystems.com/audioscience/centos/7/ Paravel&rsquo;s website].<br />
* <font style="color:green">Functionality</font>: Removed rdhpiinfo(8). Replaced by the stand-alone &lsquo;hpiinfo&rsquo; package.<br />
* <font style="color:green">Functionality</font>: Removed the event time check for Playout events in rdcatch(1), as there is no sane way to determine a consistently &lsquo;free&rsquo; playout time in the face of shifting cut lengths.<br />
<br />
=== 2.19.0 (2018-02-22) ===<br />
* Database verson '''275'''<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdlibrary(1) that caused evergreen carts/cuts to fail to be highlighted in the correct color<br />
* <font style="color:green">Functionality</font>: Added the ability to specify automatic log deletion on the basis of either the Creation Date or Air Date of the log<br />
* <font style="color:green">Functionality</font>: Log Importation Changes. Changed music and traffic importation so that parent link events are still visible in linked logs<br />
* <font style="color:green">Functionality</font>: Log Locking: implemented a system-wide protocol to prevent changes made to a log on one host from being inadvertently overwritten from another host<br />
<br />
=== 2.18.2 (2017-12-29) ===<br />
* Database version '''272'''<br />
* <font style="color:red">Bug fix</font>: Fixed a bug that caused creation of new clocks in rdlogmanager(1) to fail to initialize music scheduler components correctly in the database<br />
<br />
=== 2.18.1 (2017-12-22) ===<br />
* Database version '''272'''<br />
* <font style="color:red">Bug fix</font>: Fixed a bug that caused creation and initialization of a new Rivendell database to fail<br />
<br />
=== 2.18.0 (2017-12-21) ===<br />
* Database version updated to '''272'''<br />
* <font style="color:red">Bug fix</font>: Various bug fixes. See the [https://github.com/ElvishArtisan/rivendell/blob/stable/ChangeLog ChangeLog] for details<br />
* <font style="color:green">Functionality</font>: Group Cut Expiration Policy: Added the ability to set a default End Date/Time for new cuts on a per-group basis<br />
* <font style="color:green">Functionality</font>: Host Short Name: Added a ''Short Name'' parameter to Host profiles<br />
* <font style="color:green">Functionality</font>: Macro Carts: It is now possible to use filepath wildcards in macro carts<br />
* <font style="color:green">Functionality</font>: New Host Wildcards: Added two host wildcards: ''%r'' for ''Rivendell Host Name, and ''%R'' for ''Rivendell Short Name''<br />
* <font style="color:green">Functionality</font>: Provisioning Support: Added four new directives and to the ''[Provisioning]'' section of ''/etc/rd.conf''<br />
* <font style="color:green">Functionality</font>: MySQL Configuration: Added three parameters to the ''[mySQL]'' section of ''/etc/rd.conf''<br />
* <font style="color:green">Functionality</font>: Dropbox Enhancements: Added the ability to specify creation of default Segue Markers when processing files via dropbox<br />
* <font style="color:green">Functionality</font>: '''RDImport'''/DropBox Enhancements: Added the ability to specify start and end datetimes via metadata pattern<br />
* <font style="color:green">Functionality</font>: '''RDCatch''' Event Filtering: Added the ability to filter by event type in '''RDCatch'''<br />
* <font style="color:green">Functionality</font>: Log Searching: A search filter (similar to that employed for seaching for carts) has been added to the List Logs dialogs<br />
* <font style="color:green">Functionality</font>: Service Filtering in '''RDLogEdit''': Added the ability to limit the visible set of logs in RDLogEdit by user<br />
* <font style="color:green">Functionality</font>: Log Purge/Deletion Changes: Logs created manually (in rdlogedit(1) or rdairplay(1)) are now assigned a default purge/deletion date in accordance with the setting in RDAdmin->ManageServices<br />
* <font style="color:green">Functionality</font>: Log Importation Changes: Changed music and traffic importation so that parent link events are still visible in linked logs<br />
* <font style="color:green">Functionality</font>: Web API Changes: Added &lsquo;FILTER&rsquo; and &lsquo;RECENT&rsquo; call parameters to the &lsquo;ListLogs&rsquo; Web API call<br />
* <font style="color:orange">Documentation</font>: Documentation Overhaul: The Rivendell Operations and Administration Guide has been exapanded and incorporated as part of the base Rivendell source in ''docs/opsguide''. This guide is available as a separate CentOS package: ''rivendell-opsguide''<br />
* <font style="color:orange">Documentation</font>: Rivendell APIs: The various application programming interfaces (notably the web API) is now documented and is included with the standard distribution<br />
<br />
=== 2.17.0 (2017-10-11) ===<br />
* Database version updated to '''268'''<br />
* <font style="color:red">Bug fix</font>: Web API: Many fixes and enhancements to improve operation<br />
* <font style="color:red">Bug fix</font>: Many other bug fixes; see the [https://github.com/ElvishArtisan/rivendell/blob/stable/ChangeLog ChangeLog] for all the details (search for ''2.17.0'' and work your way backward through the list of changes)<br />
* <font style="color:green">Functionality</font>: Dropboxes: Added the ability to force imports to be imported as mono, also added the ability to reset individual dropboxes<br />
* <font style="color:green">Functionality</font>: New Switcher/GPIO Devices: Support has been added for the following Switcher/GPIO devices:<br />
:* Broadcast Tools Universal 4.1 MLR&gt;&gt;Web Switcher<br />
:* WheatNet LIO<br />
:* WheatNet SLIO<br />
* <font style="color:green">Functionality</font>: Macros: Added the &lsquo;Air Gate&rsquo; &#91;&lsquo;AG&rsquo;&#93; RML to permit conditional execution of RML on the basis of the status of the On-Air flag<br />
* <font style="color:green">Functionality</font>: <br />
* <font style="color:green">Functionality</font>: User Authentication: It is now possible to configure RDLogin to require entry of the user-name, rather than picking the name off of a list. See the &lsquo;Show User List in RDLogin&rsquo; checkbox in RDAdmin-&gt;SystemSettings<br />
* <font style="color:green">Functionality</font>: Log Rendering (EXPERIMENTAL): It is now possible to &lsquo;render&rsquo; a log as a single audio object (file or cart/cut) without the need to play it out while capturing the audio in realtime. Render support is available through the &lsquo;Render&rsquo; button in RDLogEdit and through the command-line rdrender(1) utility. See the rdrender(1) man page for details<br />
* <font style="color:green">Functionality</font>: Provisioning Support. Added a [Provisioning] section to rd.conf(5) with directives to facilitate the automatic provisioning of Rivendell instances. See the comments in the [Provisioning] section of the sample rd.conf(5) file<br />
* <font style="color:orange">Artwork</font>: New Icons: Implemented a new icon set, with individualized icons for each Rivendell module<br />
<br />
=== 2.16.0 (2017-06-02) ===<br />
* Database version updated to '''263'''<br />
* <font style="color:red">Bug fix</font>: Many bug fixes; see the [https://github.com/ElvishArtisan/rivendell/blob/stable/ChangeLog ChangeLog] for all the details (search for ''2.16.0'' and work your way backward through the list of changes)<br />
* <font style="color:green">Functionality</font>: Audio Store Hashing. Rivendell now automatically generates a SHA1 hash for each file in the audio store and records this value in the database, thus permitting automated recovery of audio in the event of loss or damage to the audio store's filesystem directory<br />
* <font style="color:green">Functionality</font>: Added switcher support for Kernel GPIO devices, such as the GPIO interface on the Raspberry Pi 2 and 3<br />
* <font style="color:green">Functionality</font>: Added switcher support for Modbus TCP devices<br />
* <font style="color:green">Functionality</font>: Added an rdconvert(1) utility<br />
* <font style="color:green">Functionality</font>: It is now possible to delegate authentication of Rivendell users by means of a PAM module, thus permitting &lsquo;''single sign-on''&rsquo; integration with systems such as ActiveDirectory and FreeIPA<br />
* <font style="color:green">Functionality</font>: Added various methods to the Rivendell Web API to permit integration with external audio and log editors<br />
<br />
=== 2.15.3 (2017-03-24) ===<br />
* Database version '''259''' <br />
* <font style="color:red">Bug fix</font>: Fixed bugs in MP3 file importation that caused files with variable bit rate (VBR) to be truncated during import.<br />
* <font style="color:red">Bug fix</font>: Fixed a bug that caused dynamically loaded codec libraries to fail to be detected if the corresponding library&rsquo;s so-called ''-devel'' package was not installed. <br />
* <font style="color:green">Functionality</font>: Added an ''RLM'' for generating [http://tagstation.com/ TagStation] RLM events for [http://nextradioapp.com/ NextRadio].<br />
* <font style="color:green">Functionality</font>: Added '''AddLog''', '''DeleteLog''' and '''SaveLog''' calls to the web API, along with general cleanup and correction of the overall Web API subsystem.<br />
<br />
=== 2.15.2 (2017-01-13) ===<br />
* Database version '''259'''<br />
* <font style="color:orange">Documentation</font>: Document the interfaces for '''inserting inline traffic breaks''' and for '''inserting voice track markers''' (also add an example in ''docs/examples/'')<br />
* <font style="color:red">Bug fix</font>: in ''rdadmin/createdb.cpp'' that caused obsolete fields in the 'SERVICES' table to be included when creating a new database.<br />
* <font style="color:red">Bug fix</font>: in ''lib/rdwavefile.cpp'' that caused RDXL chunks to be written with odd chunk lengths.<br />
* <font style="color:red">Bug fix</font>: in ''lib/rdsimpleplayer.cpp'' that caused RDAirPlay to freeze when attempting to audition an expired cart.<br />
* <font style="color:green">Functionality</font>: Added a '''LockRdairplayMemory=''' parameter to the [Hacks] section.<br />
* <font style="color:green">Functionality</font>: Modified the LiveWire Multicast GPIO driver to generate GPO events using the 'I' event type.<br />
<br />
=== 2.15.1 (2016-08-05) ===<br />
* Database version '''259'''<br />
* <font style="color:red">Bug fix</font>: fixed WAV file export code to enhance compatibility with third-party applications<br />
<br />
=== 2.15.0 (2016-07-29) ===<br />
* <font style="color:red">Bug fix</font>: complete support for the MySQL/MariaDB InnoDB database engine (for better transaction processing of database updates)<br />
* <font style="color:green">Functionality</font>: enhancements to ''rdexport'' that include full metadata in RDXML format<br />
* <font style="color:green">Functionality</font>: add CLI command ''rdclilogedit'' that enables editing of Rivendell Logs from the command line (without a GUI app)<br />
* <font style="color:green">Functionality</font>: Update the database to version 259.<br />
<br />
=== 2.14.1 (2016-06-11) ===<br />
* Database version '''258'''<br />
* <font style="color:red">Bug fix</font>: additional fixes for newer versions of MySQL (and MariaDB)<br />
<br />
=== 2.14.0 (2016-06-10) ===<br />
* Database version '''258'''<br />
* <font style="color:green">Functionality</font>: add the ability to capture real-time events in RDCatch recordings and replay the events in sync with the captured audio<br />
* <font style="color:green">Functionality</font>: add RML Macro ''Cut Event'' (''CE'') for placing real-time event markers into active RDCatch recordings<br />
* <font style="color:green">Functionality</font>: add support for specifying precise start time and length parameters for Traffic events that are embedded in Music events<br />
* <font style="color:red">Bug fix</font>: fixed a bug in RDAdmin that could cause creation of a new database to fail<br />
* <font style="color:red">Bug fix</font>: fix issues that prevent compilation under newer versions of the GNU C compiler suite<br />
* <font style="color:red">Bug fix</font>: various enhancements and fixes to the new(ish) ''rdexport'' utility<br />
* <font style="color:red">Bug fix</font>: initial support for newer versions of MySQL (and MariaDB)<br />
* <font style="color:red">Bug fix</font>: add code to allow embedded traffic breaks to be specified with start time and length in the music schedule.<br />
<br />
=== 2.13.0 (2016-05-10) ===<br />
* Database version '''255'''<br />
* <font style="color:green">Functionality</font>: add RLM plugin for the Paravel Systems ''WallTime'' clock<br />
* <font style="color:green">Functionality</font>: add new CLI command ''rdexport'' to export Carts with metadata<br />
* <font style="color:green">Functionality</font>: new report: ''Cut Log'' that includes the Description field for played events<br />
* <font style="color:red">Bug fix</font>: fixed a crash in RDLibrary when attempting to open multiple Carts<br />
* <font style="color:red">Bug fix</font>: fixed RDLogEdit to improve performance when saving and updating logs<br />
* <font style="color:red">Bug fix</font>: fixed a bug that caused marker data to be deleted when exporting a Cut<br />
<br />
=== 2.12.0 (2016-04-14) ===<br />
* Database version '''254'''<br />
* <font style="color:green">Functionality</font>: add support for sequential Cut play-out - you can now configure carts to play cuts in a fixed, sequential order rather than by weight value<br />
* <font style="color:green">Functionality</font>: add support for ''Broadcast Tools'' switchers<br />
* <font style="color:green">Functionality</font>: add RML macro '''Copy Cut''' (''CP'') to copy cuts between carts<br />
* <font style="color:green">Functionality</font>: add option to show only &ldquo;recent&rdquo; logs in RDLogEdit<br />
* <font style="color:green">Functionality</font>: add new web API methods related to Scheduler Codes<br />
* <font style="color:red">Bug fix</font>: fixed a bug that caused issues with Services containing the &ldquo;-&rdquo; (dash) character<br />
<br />
=== 2.11.0 (2015-09-18) ===<br />
* Database version '''252'''<br />
* <font style="color:green">Functionality</font>: add RDCatch upload/download protocols ''sftp'' and ''scp''<br />
* <font style="color:green">Functionality</font>: add support to import ''MP4/AAC'' files<br />
* <font style="color:green">Functionality</font>: add support for the ''Ross NK'' series video switcher<br />
* <font style="color:green">Functionality</font>: add support for ''PCM24'' in the core audio library code<br />
* <font style="color:red">Bug fix</font>: re-wrote the CD ripper code to make it faster and more reliable<br />
* <font style="color:red">Bug fix</font>: fixed several bugs related to audio data and buffering<br />
* <font style="color:red">Bug fix</font>: Normalized service clock data from the 'SERVICES' to the 'SVC_CLOCKS' table<br />
<br />
=== 2.10.3 (2015-02-24) ===<br />
* Database version '''242'''<br />
* <font style="color:green">Functionality</font>: add RLM (plugin) for Live365 streaming service (which is defunct as of Summer 2016)<br />
* <font style="color:green">Functionality</font>: add &ldquo;MrMaster&rdquo; and &ldquo;Spin Count&rdquo; reports<br />
* <font style="color:green">Functionality</font>: add support for audio switcher devices that use the &ldquo;Software Authority&rdquo; protocol<br />
* <font style="color:green">Functionality</font>: add ability to set segue markers in the CLI app ''rdmarkerset''<br />
* <font style="color:red">Bug fix</font>: fixed a bug that caused issues with Services containing a <Space> character in the service name<br />
<br />
=== 2.10.2 (2014-11-25) ===<br />
* Database version '''242'''<br />
* <font style="color:green">Functionality</font>: CLI ''rdimport'' enhancement: add two date-related options to the command<br />
* <font style="color:green">Functionality</font>: add column for ELR data in RDLogEdit<br />
* <font style="color:red">Bug fix</font>: fixed a bug in the Audio Science adapter for cards with only AES3 ports<br />
<br />
=== 2.10.1 (2014-11-04) ===<br />
* Database version '''242'''<br />
* <font style="color:green">Functionality</font>: add &ldquo;DSP utilization and profiling&rdquo; info for Audio Science adapters<br />
* <font style="color:green">Functionality</font>: add the column &ldquo;EXT DATA&rdquo; to the &ldquo;Edit Log&rdquo; screen in RDLogEdit<br />
* <font style="color:red">Bug fix</font>: fixed a memory fault (crash) in RDLogEdit when dropping a cart that was being used in a log</div>
DKlann
http://wiki.rivendellaudio.org/index.php?title=Log_Creation&diff=627
Log Creation
2022-07-05T15:25:48Z
<p>DKlann: wordsmithing, typography, add some links.</p>
<hr />
<div>== Overview ==<br />
<br />
Rivendell has a built in scheduling system (a way to create Logs). In addition, you can &ldquo;connect&rdquo; Rivendell to external music and traffic scheduling systems to pick music from the library and schedule advertisements, jingles, IDs, etc.<br />
<br />
The term &ldquo;Log&rdquo; as used in this wiki page is synonymous with the word &ldquo;Playlist&rdquo;.<br />
<br />
You need to do some initial setup in [[RDAdmin]] for the '''Service''' you will be using. Then it is a matter of creating:<br />
<br />
:* '''[[Events]]''' - '''Events''' are items (lines) in a '''[[Log]]'''. An '''Event''' could be a song that is picked using criteria you specify, a specific Cart number, one or more macros, etc. An '''Event''' can also be a place holder for, notes, voice-tracks, and for importing a &ldquo;track&rdquo; from an external, third-party music or traffic scheduling application.<br />
<br />
:* '''[[Clocks]]''' - '''Clocks''' represent one hour of '''Events''' in your broadcast. You can have as many or as few '''Clocks''' as you need. If you have broadcast hours where the format is exactly the same you can use the same '''Clock''' for all those hours. You fill '''Clocks''' with '''Events'''.<br />
<br />
After you have '''Clocks''' with '''Events''' in them, you tell Rivendell which '''Clock''' to use in each of the 168 hours in a week. You do this by setting the '''Clocks''' in the '''[[Grid]]'''. A Grid represents one week of a '''Service''''s broadcast time. In other words, you &ldquo;fill the grid with '''Clocks'''&rdquo;.<br />
<br />
From these, you can produce '''Logs'''. This all happens in '''[[RDLogManager]]'''<br />
<br />
== Tutorial ==<br />
<br />
This tutorial guides you through creating your first '''Log'''. It does not cover all the options that you might encounter along the way; see the [http://opsguide.rivendellaudio.org/html/chapter.rdlogmanager.html Rivendell Operations and Administration Guide] for all the details. The tutorial assumes that you have songs, stations IDs, and liners/jingles in your audio library, and are a 24/7 music station. It also includes brief tips and directions for those using external schedulers.<br />
<br />
If you have not already configured the '''Log''' creation parameters in [[RDAdmin]], please do so now:<br />
<br />
:* log in to RDAdmin<br />
:* touch &ldquo;Manage Services&rdquo;<br />
:* select your service and touch &ldquo;Edit&rdquo;<br />
:* in the ''Log Description Template'' box, type the Service name followed by a descriptive title &ldquo;template&rdquo; for all Logs, for example ''<tt>Production log for %$A, %Y-%m-%d</tt>'' (this results in Log descriptions like ''Tuesday, 2020-03-01'')<br />
:* in the ''Log Name Template'' text box, enter ''<tt>%Y%m%d</tt>'' (this results in logs named for the four-digit year, two digit month, and two-digit day of the month)<br />
:* check the &ldquo;'''Insert CHAIN TO at log end'''&rdquo; box; this tells Rivendell to insert a command at the end of each log instructing RDAirPlay to automatically load and continue playing &ldquo;tomorrow&rsquo;s&rdquo; Log at the end of each broadcast day<br />
:* click &ldquo;OK&rdquo; to save the settings<br />
<br />
See ''[http://opsguide.rivendellaudio.org/html/appendix.filepath_wildcards.html Appendix D. Filepath Wildcards]'' in the [http://opsguide.rivendellaudio.org/html/ Rivendell Operations and Administration Guide] for all the available &ldquo;wildcards&rdquo; you can use in the ''Log Description Template'' and the ''Log Name Template''.<br />
<br />
[[Image:Edit-service-3.4.1.png|center|443px|thumb|border|Service settings for Log generation]]<br />
<br />
Log creation occurs within ''RDLogManager'' so start ''RDLogManager'' to begin this tutorial.<br />
<br />
=== Events ===<br />
<br />
'''Events''' are the building blocks of log creation. An '''Event''' can be anything from playing a station ID to importing traffic or music from external logs to switching ports on your audio switcher. There are several options on this screen but let&rsquo;s keep things simple to start.<br />
<br />
Let&rsquo;s create a station ID '''Event'''. Click &ldquo;Edit Events&rdquo; then &ldquo;Add&rdquo; and type in &ldquo;ID&rdquo; or whatever you like. Locate the ''IMPORT'' section of the screen and click the radio button next to ''Select from''. In the dropdown (circled in red in the image below), select the Group that contains your legal station identification announcements. You probably want your ID to start close to the time you schedule it so check &ldquo;Use hard start time&rdquo; and &ldquo;Make Next&rdquo; (also circled in red). The transition should be &ldquo;PLAY&rdquo; or &ldquo;SEGUE&rdquo; Lastly, choose a unique Color via the bottom button and click &ldquo;OK&rdquo; to save this '''Event'''.<br />
<br />
[[Image:Event-toh-3.41..png|center|617px|thumb|border|Event settings for an example top of hour legal ID]]<br />
<br />
Follow the same first steps to create a Liner '''Event''', but let's choose a specific Liner Cart to play every time this '''Event''' is scheduled. Rather than Importing from the Liner Group, click and hold a Liner Cart on the left and drag it into the &ldquo;PRE-IMPORT CARTS&rdquo; box as shown in the image.<br />
<br />
[[Image:Liner-event.gif|center|1023px|thumb|border|Cart drag-n-drop to Event Pre-Import box]]<br />
<br />
Finally, we need to create an '''Event''' to schedule a song. Again, create a new '''Event'''. On the &ldquo;Import&rdquo; line<br />
<br />
:* choose &ldquo;'''Select From'''&rdquo;<br />
:* select your music Group from the dropdown<br />
:* adjust Title Separation and Artist Separation to suite your needs but don't set it too high (see [[SettingSeparationValues|Setting Separation Values]] for more details)<br />
:* change First Cart transition to &ldquo;'''Segue'''&rdquo;<br />
<br />
[[Image:Music-event.png|center|624px|thumb|border|Example Music Event]]<br />
<br />
NOTE: If you are using an external Music Scheduler, your &ldquo;Music&rdquo; event will instead be set to '''IMPORT''' ... '''From Music'''.<br />
<br />
This is where you place Voice Track markers in your '''Events''' for later processing with [[RDLogManager]] and then [[RDLogEdit]]. While editing an '''Event''' you need to right-click in either the PRE-IMPORT CARTS or the POST-IMPORT CARTS boxes and choose &ldquo;Insert Voice Track&rdquo;. See figure. It is common practice to have an '''Event''' that contains only a &ldquo;Voice Track Placeholder&rdquo; in the &ldquo;PRE-IMPORT CARTS&rdquo; section; you can then use this '''Event''' in many positions in many different Clocks. See ''[http://opsguide.rivendellaudio.org/html/chapter.voicetracking.html Chapter 9. VoiceTracking]'' in the Rivendell Operations and Administration Guide for more details about voice tracking with Rivendell.<br />
<br />
[[File:Editing Event - 00 Voice Track (on ram) 001.png|center|824px|thumb|border|Right-click to add VoiceTrack placeholder]]<br />
<br />
<div style="clear: both"></div><br />
<br />
=== Clocks ===<br />
<br />
A Rivendell '''Clock''' contains a sequence of '''Events''' that occur during an hour. You will need to create one '''Clock''' for each ''unique'' hour. For example, if you are a music station and play music 24/7 with each hour being EXACTLY the same then you will only need one '''Clock'''. If you play different styles of music during certain hours (and don't use an external music scheduler), you need a separate '''Clock''' for those hours. If you air programs (e.g. syndicated shows distributed as one-hour audio files), you will likely need separate '''Clocks''' for each hour.<br />
<br />
We will create just one '''Clock''' to keep things simple but you will be able to easily create additional '''Clocks''' to meet your needs.<br />
<br />
First, click &ldquo;Edit Clocks&rdquo; from the RDLogManager opening screen and then &ldquo;Add&rdquo; and name your new '''Clock''' something like &ldquo;Music&rdquo;. You will now see a blank '''Clock'''. Each '''Clock''' must have a unique 3 alpha-numeric code so type in something like &ldquo;<tt>MU1</tt>&rdquo; (mnemonic: &ldquo;Music 1&rdquo;) in the &ldquo;Code&rdquo; field near the top. Note that the codes are case-sensitive, so you can have lots of them.<br />
<br />
Click the &ldquo;Add&rdquo; button to start adding '''Events''' which you created during the previous step. Click &ldquo;Select&rdquo;, choose your &ldquo;ID&rdquo; '''Event''', and click &ldquo;OK&rdquo;. Start time should be 00:00 (MM:SS) and end time should be the ''approximate length'' of your ID Cart. My stop time is 00:10 for a ten second ID. Click &ldquo;OK&rdquo; to finish adding the '''Event'''. You should now see the thin sliver of your ID in the '''Clock''' on the right and in the list on the left. Notice the color is the one you chose when creating the '''Event'''. <br />
<br />
Now we want to schedule some songs. We'll have 3 songs then a liner and continue that pattern until we fill the entire '''Clock''' (hour). To add a song, we:<br />
<br />
:* click &ldquo;Add&rdquo;<br />
:* click &ldquo;Select&rdquo;<br />
:* choose &ldquo;Music&rdquo; event<br />
:* click &ldquo;OK&rdquo;<br />
:* adjust &ldquo;Start&rdquo; and &ldquo;Stop&rdquo; times (I use 00:10 for Liners and 03:00 for Music)<br />
<br />
In my case, I'm figuring the songs in my library have an average length of 3 minutes. Actually, the average is higher than that but I want a margin of safety so I will always have at least 60 minutes worth of programming (i.e. ''overfill the hour''). It's best to make a conservative estimate at first then tweak the settings later. <br />
<br />
Now add a second &ldquo;Music&rdquo; '''Event''' with a start time of 03:00 and a stop time of 06:00. Next a third &ldquo;Music&rdquo; '''Event''' with a start time of 06:00 and a stop time of 09:00.<br />
<br />
We've completed our 3 songs and it's time for a &ldquo;Liner&rdquo; '''Event'''. Add the &ldquo;Liner&rdquo; '''Event''' with a start time of 09:00 and a stop time of 09:10 (for a ten second liner). The next &ldquo;Music&rdquo; '''Event''' will be from 09:10 to 12:00.<br />
<br />
Continue repeating those steps until the '''Clock''' (hour) is filled from 00:00 to 59:59.<br />
<br />
Use the &ldquo;Color&rdquo; button to assign a unique color to your &ldquo;Music&rdquo; '''Clock'''. You can also click the &ldquo;Scheduler Rules&rdquo; button and adjust Music Scheduler rules (like avoiding playing two heavy metal songs back-to-back). Finally, touch &ldquo;OK&rdquo; to save your new '''Clock'''.<br />
<br />
[[Image:Clock-3.4.1.png|center|1030px|thumb|border|Edit Clock showing a completed Clock]]<br />
<br />
Congratulations! You are almost done.<br />
<br />
NOTE: If you are using an external Music Scheduler, your &ldquo;Music&rdquo; '''Event''' will span the entire sweep (i.e. 00:10 to 09:00) so that all songs in your music Log appearing during that time frame will be imported. You will have to adjust the time frame so the '''Clocks''' in Rivendell mesh with those in your Music Scheduler.<br />
<br />
=== Grids ===<br />
<br />
Click '''Edit Grids''' from the ''RDLogManager'' main window and then choose your '''Service''' (there may only be one). You will see buttons representing each hour of every day (168 of them). The '''Grids''' allow you to choose which '''Clock''' is used for each hour of the week. In our case, we will set each hour to use our &ldquo;Music&rdquo; '''Clock''' we created in the previous step.<br />
<br />
[[Image:Grid-3.4.1.png|center|1027px|thumb|border|A completed Grid]]<br />
<br />
Note: this screenshot shows a few different '''Clocks''', yours will show the same '''Clock''' in all hours.<br />
<br />
This step is simple. Click or touch the &ldquo;Change All&rdquo; button. Select your Music '''Clock''' and click &ldquo;OK&rdquo;, then click &ldquo;Yes&rdquo; to confirm that you want to set all 168 hours to use the same '''Clock'''. Click &ldquo;Close&rdquo; when done setting all the '''Clocks''' in the Grid.<br />
<br />
=== Generating Logs ===<br />
<br />
You are now ready to generate a '''Log'''. Touch &ldquo;Generate Logs&rdquo; from the '''RDLogManager''' main window. Adjust the date as required and click &ldquo;Create New Log.&rdquo; That's it!<br />
<br />
You can view and edit the '''Log''' using [[RDLogEdit]]. To play the '''Log''', load it in [[RDAirPlay]].<br />
<br />
=== Loading Next Day&rsquo;s Log ===<br />
<br />
Using [[RDAdmin]] you can configure Rivendell to load the next day&rsquo;s '''Log''' at Midnight. Touch<br />
&ldquo;Manage Services&rdquo; click on the line containing your '''Service''' name, then &ldquo;Edit&rdquo; and check ''Insert Chain At Log End'' box.<br />
<br />
If the next day&rsquo;s log fails to load, check to see that the IP address entered in that machine&rsquo;s ''Host'' configuration in '''RDAdmin''' is correct.<br />
<br />
== Final Notes ==<br />
<br />
You will notice that building logs is a modular process. '''Logs''' are made of '''Grids''' which are made of '''Clocks''' which are made of '''Events'''. This means that you can edit an '''Event''' once even though it may appear many times in the '''Log'''. For instance, you can change the ''Liner'' '''Event''' to use a different '''Cart''' without editing '''Clocks''' or '''Grids'''. Once your '''Events''' and '''Clocks''' are set up, creating '''Grids''' and '''Logs''' will be easy.<br />
<br />
== Other Useful Wiki pages ==<br />
<br />
:* [[Importing_External_Logs_into_Rivendell|Importing External Logs into Rivendell]]<br />
<br />
:* [[Managing_Scheduler_Rules|Managing Scheduler Rules]]<br />
<br />
:* [[Creating_logs_from_the_command_line|Creating Logs from the command line and from RDCatch]]<br />
<br />
:* [[How_to_setup_a_rotation_of_fill_in_logs_that_can_be_loaded_via_a_macro|How to setup a rotation of fill in logs that can be loaded via a macro]]</div>
DKlann
http://wiki.rivendellaudio.org/index.php?title=ChangeSummary&diff=620
ChangeSummary
2022-03-21T13:11:12Z
<p>DKlann: Add 3.6.5 release changes, sort change list for 3.6.4 by "type" (color).</p>
<hr />
<div>__NOTOC__<br />
== Rivendell Change Summary ==<br />
<br />
This page contains version change descriptions in summary form for Rivendell versions released within at least the most recent five years (quite probably longer). Change descriptions are limited (mostly) to user-visible changes.<br />
<br />
Please see the [https://raw.githubusercontent.com/ElvishArtisan/rivendell/master/ChangeLog ChangeLog] and [https://github.com/ElvishArtisan/rivendell/blob/master/NEWS NEWS] files in the [https://github.com/elvishartisan/rivendell source code] for a complete list of changes and bug fixes.<br />
<br />
See the [https://github.com/elvishartisan/rivendell/issues Issues] list for current reported bugs, issues and feature requests.<br />
<br />
=== 3.6.5 (2022-03-18) ===<br />
<br />
* Database verson '''347'''<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdimport(1) that could create duplicate Scheduler Code entries when using the &lsquo;--to-cart&rsquo; and &lsquo;--add-scheduler-code&rsquo; switches simultaneously<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in the &lsquo;rdxport&rsquo; service that caused the &lsquo;ListLog&rsquo; WebAPI call to return null values in the &lsquo;description&rsquo;, &lsquo;isrc&rsquo;, &lsquo;isci&rsquo;, &lsquo;recordingMbId&rsquo; and &lsquo;releaseMbId&rsquo; fields<br />
* <font style="color:green">Functionality</font>: Added a &lsquo;direct&rsquo; namespace to the &lsquo;Apple iTunes&rsquo; and &lsquo;Apple iTunes + Superfeed&rsquo; RSS schemas<br />
<br />
<br />
=== 3.6.4 (2022-02-22) ===<br />
<br />
Note: version 3.6.3 was tagged, but not released.<br />
<br />
* Database verson '''347'''<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdlogmanager(1) that caused leading event attributes to fail to be preserved when suppressing Music of Traffic import markers<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in the rdxport &lsquo;Import&rsquo; service that could result in incorrect end marker placement when processing variable bit rate (VBR) MPEG files<br />
* <font style="color:red">Bug fix</font>: Fixed an arithmetic overflow bug in &lsquo;RDWaveFile&rsquo; that could cause the play length of MPEG-encoded to be incorrectly calculated<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdimport(1) that caused premature validation of metadata<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdxport(8) that caused the &lsquo;SaveLog&rsquo; WebAPI call to fail if the target log didn&rsquo;t exist<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rddbmgr(8) that could cause the 346=&gt;347 schema conversion to hang indefinitely with databases containing large cart libraries<br />
* <font style="color:green">Functionality</font>: Added a &lsquo;SuppressMusicImportLinks=&rsquo; directive to the [Hacks] section of rd.conf(5)<br />
* <font style="color:green">Functionality</font>: Added support for [NowGroups] and [NextGroups] sections in PyPAD script configurations<br />
* <font style="color:green">Functionality</font>: Deprecated use of the &lsquo;Transmit Now & Next data&rsquo; checkbox in the &lsquo;Group&rsquo; dialog in rdadmin(1)<br />
* <font style="color:green">Functionality</font>: Added a &lsquo;SaveWebgetFilesDirectory=&rsquo; directive to rd.conf(5)<br />
* <font style="color:green">Functionality</font>: Modified the mode of files generated by the rd-conf(5) &lsquo;SaveWebgetFilesDirectory=&rsquo; configuration directive from 0440 to 0664<br />
* <font style="color:green">Functionality</font>: Added a &lsquo;linkLength&rsquo; field and a &lsquo;graceTime&rsquo; field to the return XML for the &lsquo;ListLog&rsquo; WebAPI call<br />
* <font style="color:green">Functionality</font>: Added a &lsquo;Log Listing (CSV)&rsquo; report to rdlogedit(1)<br />
* <font style="color:green">Functionality</font>: Added a &lsquo;--print-progress&rsquo; switch to rddbmgr(8)<br />
* <font style="color:blue">Code (internal) change</font>: Overhauled the code for reading MPEG frame headers in &lsquo;RDWaveFile&rsquo;<br />
* <font style="color:blue">Code (internal) change</font>: Increased the import process timeout for the WebGet service to 1200 seconds<br />
<br />
<br />
=== 3.6.2 (2021-07-30) ===<br />
* Database verson '''347'''<br />
* <font style="color:green">Functionality</font>: Added support for system dark themes in RDAirplay<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdlogedit(1) that could cause a crash when attempting to play a non-audio event in the &lsquo;Voice Tracker&rsquo; dialog<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdimport(1) that caused the cart title uniqueness check to be applied to the incorrect string when the &lsquo;--set-string-title=&rsquo; switch was used<br />
<br />
<br />
=== 3.6.1 (2021-06-06) ===<br />
* Database verson '''347'''<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdimport(1) that could cause a crash when the &lsquo;--fix-broken-formats&rsquo; switch is used<br />
* <font style="color:green">Functionality</font>: Added syslog DEBUG messages around the start/stop of ephemeral processes in rdservice(8)<br />
* <font style="color:green">Functionality</font>: Added an &lsquo;--initial-maintenance&rsquo; switch to rdservice(8)<br />
* <font style="color:green">Functionality</font>: Added an &lsquo;--force-system-maintenance&rsquo; switch to rdservice(8)<br />
* <font style="color:green">Functionality</font>: Modified rdmaint(8) to enable it to operate even when the Rivendell services are not running<br />
<br />
=== 3.6.0 (2021-05-15) ===<br />
* Database verson '''347'''<br />
* <font style="color:red">Bug fix</font>: Fixed title separation in rdlogmanager(1) scheduler<br />
* <font style="color:red">Bug fix</font>: Fixed bug in library code ''lib/rdwavefile.cpp'' that copied CartChunk Cut ID past the end of the first "NULL" character<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdairplay(1) that caused the Talk Timer to fail to be populated when adding new carts to a log<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in the Cart Selector Dialog that made it impossible to enter an apostrophe character in the filter search line<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdimport(1) where the title of an existing cart would be overwritten with a default title even when no title was found in the file metadata<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in &lsquo;RDFlacDecode&rsquo; that caused conversion of files with names containing non-ASCII characters to fail<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdadmin(1) where clicking the &lsquo;OK&rsquo; button in the &lsquo;Edit Switcher&rsquo; dialog would cause an error dialog to appear with a &lsquo;primary serial device not active&rsquo; warning. The following devices are affected: &lsquo;Local GPIO&rsquo;, &lsquo;Local Audio Adapter&rsquo;, &lsquo;Logitek vGuest&rsquo;, &lsquo;Livewire LWRP Audio&rsquo;, and &lsquo;Kernel GPIO&rsquo;<br />
* <font style="color:green">Functionality</font>: Modified rdimport(1) and the Webget service so as to send e-mail reports to the address of the current Rivendell user in addition to the group&rsquo;s Notification E-Mail Address<br />
* <font style="color:green">Functionality</font>: Added a &lsquo;STACK_LINES.TITLE&rsquo; field to the database<br />
* <font style="color:green">Functionality</font>: Added the value of the detected CartChunk CutID to the error message generated when rejecting said CutID as invalid when using the &lsquo;--use-cartchunk-cutid&rsquo; switch in rdimport(1)<br />
* <font style="color:green">Functionality</font>: Added code to print the value of the detected CartChunk CutID when using both the &lsquo;--use-cartchunk-cutid&rsquo; and &lsquo;--verbose&rsquo; flags in rdimport(1)<br />
* <font style="color:green">Functionality</font>: Created pypad_ino713_tcp based upon pypad_ino713, converting from UDP to TCP. Added an adjustable delay to account for broadcast air delays<br />
* <font style="color:green">Functionality</font>: Created pypad_nautel based upon pypad_ino713_tcp, including RDS parameters from documentation. Includes delay as above<br />
* <font style="color:green">Functionality</font>: Added a new &lsquo;RadioTraffic.com Traffic Reconciliation&rsquo; report. Renamed the existing &lsquo;RadioTraffic.com Traffic Reconciliation&rsquo; to &lsquo;Original RadioTraffic.com Traffic Reconciliation (DEPRECATED)&rsquo;<br />
* <font style="color:green">Functionality</font>: Changed the way in which the VU Meter UDP port is chosen. One can now specify the base port number and the maximum number of UDP ports to consider when caed(8) sets up the VU meter port<br />
* <font style="color:orange">Documentation</font>: Documented the &lsquo;MeterPortBaseNumber=&rsquo; and &lsquo;MeterPointRange=&rsquo; directives in the rd.conf(5) man page<br />
<br />
=== 3.5.0 (2020-12-12) ===<br />
* Database verson '''346'''<br />
* <font style="color:red">Bug fix</font>: Corrected the column settings in RDAdmin > Manage Hosts > [host] > Dropboxes<br />
* <font style="color:red">Bug fix</font>: Fixed regression with "Scheduler Code:" label overlapping "Group" combobox in rdlibrary(1)<br />
* <font style="color:red">Bug fix</font>: Fixed several bugs in rdadmin(1) that messed with passwords, user settings, and other important settings<br />
* <font style="color:red">Bug fix</font>: Fixed several bugs in rdlogmanager(1) that caused all kinds of mischief<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdairplay(1) where copying a log event using the &lsquo;Copy&rsquo; button would result in the new event always getting a &lsquo;PLAY&rsquo; transition<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rddbmgr(8) that could cause database corruption problems<br />
* <font style="color:red">Bug fix</font>: Fixed bugs in rdimport(1) that caused incorrect exit codes to be emitted when a non-existent group was specified, and that caused generation of double error messages when processing invalid audio files<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdmonitor(1) that caused false indications of a failed audio store when used with autofs(8)<br />
* <font style="color:green">Functionality</font>: Major overhaul of Rivendell&rsquo;s podcast handling features; see the ChangeLog for all the details<br />
* <font style="color:green">Functionality</font>: Modified the GVC7000 switcher driver to insert 50 mS pauses between protocol commands<br />
* <font style="color:green">Functionality</font>: Allow RN Macro to run when Rivendell daemons running as non-root<br />
* <font style="color:green">Functionality</font>: Many changes to rdadmin(1), including:<br />
:* Added whitespace to the set of banned characters for service names<br />
:* Added a &lsquo;SSH Ident. File&rsquo; control to the &lsquo;Host&rsquo; dialog<br />
:* Added an &lsquo;Inline Traffic Inheritance&rsquo; control to the &lsquo;Edit Service&rsquo; dialog<br />
:* Added type icons to the &lsquo;Imported Events&rsquo; list in the &lsquo;Test Import&rsquo; dialog<br />
:* Renamed the &lsquo;Inline Traffic Inheritance&rsquo; control to &lsquo;Inline Traffic Start/Length&rsquo; and moved it to the &lsquo;Music Data Import&rsquo; section of the &lsquo;Edit Service&rsquo; dialog<br />
:* Added an &lsquo;Encoder Profiles&rsquo; dialog<br />
:* Renamed the &lsquo;Note Cart String&rsquo; controls to &lsquo;Insert Marker String&rsquo; in the &lsquo;Edit Service dialog<br />
:* Added an &lsquo;Origin E-Mail Address&rsquo; control to the &lsquo;System-Wide Settings&rsquo; dialog<br />
:* Added a &lsquo;Notification E-Mail Addresses&rsquo; control to the &lsquo;Group&rsquo; dialog<br />
:* Added a &lsquo;Send e-mail reports&rsquo; checkbox to the &lsquo;Dropbox Configuration&rsquo; dialog<br />
:* Added &lsquo;E-Mail Address&rsquo;, &lsquo;Phone Number&rsquo; and &lsquo;Local Auth&rsquo; columns to the &lsquo;Users&rsquo; list in the &lsquo;Rivendell User List&rsquo; dialog<br />
:* Added an &lsquo;Administer RSS Feeds&rsquo; checkbox to the &lsquo;Administrative Rights&rsquo; section of the &lsquo;User&rsquo; dialog<br />
:* Added a deprecation warning for the &lsquo;Allow Duplicate Cart Titles&rsquo; and &lsquo;Auto-Correct Duplicate Cart Titles&rsquo; checkboxes on the &lsquo;System-Wide Settings&rsquo; dialog<br />
* <font style="color:green">Functionality</font>: Added support for FTPS protocol for uploading, downloading, and Feed management<br />
* <font style="color:green">Functionality</font>: Significant update to the Rivendell Web interfaces (Web API, WebGet service, rivwebcapi API, etc.)<br />
* <font style="color:green">Functionality</font>: Added &lsquo;--scheduler-code=&rsquo; switch to rdexport(1)<br />
* <font style="color:green">Functionality</font>: Added generation of an &lsquo;RDLogManager Error Report&rsquo; when errors are detected when importing an external scheduler file in rdlogmanager(1)<br />
* <font style="color:green">Functionality</font>: Restored operation of Label/Note carts in rdlogmanager(1)<br />
* <font style="color:green">Functionality</font>: Updated rdservice(8) to use standard exit code defines<br />
* <font style="color:green">Functionality</font>: Implemented the &lsquo;--verbose&rsquo; switch for rdmaint(8)<br />
* <font style="color:green">Functionality</font>: Added a sample Fail2Ban jail filter for the WebAPI in &lsquo;conf/rivendell-webapi.conf&rsquo;<br />
* <font style="color:green">Functionality</font>: Added command line options &lsquo;--output-pattern&rsquo;, &lsquo;--ticket=&rsquo;, &lsquo;--send-mail&rsquo; and &lsquo;--mail-per-file&rsquo; to rdimport(1)<br />
* <font style="color:green">Functionality</font>: Added the name of the import file to schedule import failure reports<br />
* <font style="color:orange">Documentation</font>: Documented the &lsquo;%%&rsquo; filepath wildcard in the Operations Guide<br />
* <font style="color:orange">Documentation</font>: Added an &lsquo;RDCastManager&rsquo; chapter to the Operations Guide<br />
* <font style="color:orange">Documentation</font>: Revised the &lsquo;Managing Services&rsquo; section of the Operations Guide<br />
* <font style="color:orange">Documentation</font>: Rewrote the &lsquo;Webget&rsquo; chapter of the Operations Guide to conform to changes in Webget<br />
* <font style="color:orange">Documentation</font>: Added a &lsquo;Configuring Webget&rsquo; section to the Operations Guide<br />
* <font style="color:orange">Documentation</font>: Removed the &lsquo;Cart Data Dump (fixed width)&rsquo; from the Operations Guide<br />
* <font style="color:orange">Documentation</font>: Documented user-facing changes to the &lsquo;System-Wide Settings&rsquo; dialog, the &lsquo;Rivendell Group List&rsquo; and the &lsquo;Group&rsquo; dialogs in rdadmin(1) in the Operations Guide<br />
* <font style="color:orange">Documentation</font>: Documented the &lsquo;Send e-mail reports&rsquo; checkbox in the &lsquo;Dropbox Configuration&rsquo; dialog in rdadmin(1) in the Operations Guide<br />
* <font style="color:blue">Code (internal) change</font>: Prepended &lsquo;RD_&rsquo; to the names of all common Javascript functions in &lsquo;web/common/utils.js&rsquo;<br />
* <font style="color:blue">Code (internal) change</font>: Added a &lsquo;webget&rsquo; subpackage to the &lsquo;make rpm&rsquo; target<br />
* <font style="color:blue">Code (internal) change</font>: Refactored the &lsquo;Run Script&rsquo; [&rsquo;RN&rsquo;] RML to invoke scripts via the system shell, this change also removed the dependency on runuser(1)<br />
<br />
=== 3.4.1 (2020-07-21) ===<br />
* Database verson '''317'''<br />
<br />
* <font style="color:green">Functionality</font>: Added a &lsquo;Results Report&rsquo; report in rdadmin(1)<br />
* <font style="color:green">Functionality</font>: Removed the checkbox from the &lsquo;Delete&rsquo; right-click menu item in the &lsquo;Edit Event&rsquo; dialog in rdlogmanager(1)<br />
* <font style="color:green">Functionality</font>: Modified &lsquo;RDWaveFile&rsquo; to work around known fencepost errors in WAV files generated by "Sonic Studio soundBlade" by "PME Mastering, Inc."<br />
* <font style="color:green">Functionality</font>: Modified the &lsquo;Edit Event&rsquo; dialog in rdlogmanager(1) to show &lsquo;[auto]&rsquo; as the transition type for the leading event in Pre-/Post-Import lists<br />
<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdlibrary(1) that caused cuts to be incorrectly sorted when scheduled &lsquo;By Specified Order&rsquo;<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in the Rivendell command line apps that caused value-only arguments containing &lsquo;=&rsquo; characters to be incorrectly parsed<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in the Podcast Manager, Library Exporter and Web API that caused an error when processing multipart-mime submissions containing &lsquo;=&rsquo; characters<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdairplay(1) where attempting to audition an audio cart with a disabled cue output would crash the application<br />
* <font style="color:red">Bug fix</font>: Fixed a regression in rdairplay(1) that caused the &lsquo;Forced Segue&rsquo; setting in rdadmin(1) to be ignored when executing an event with a hard start attribute<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdairplay(1) where a paused event could not be removed by dropping the empty cart on it<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdairplay(1) that cause incorrect pie timer indications after adding or deleting events to a running log<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdlibrary(1) that would cause a crash when attempting to delete a range of cuts, one of which was in the clipboard<br />
* <font style="color:red">Bug fix</font>: Fixed a math bug in rdairplay(1) that caused the estimated stop-down times in the post point widget to be incorrect after adding or removing events from a running log<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdadmin(1) that made it impossible to enter useful strings in the &lsquo;WaveForm Caption&rsquo; control on the &lsquo;Edit RDLogEdit&rsquo; dialog<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in RDRenderer that caused segue transitions to be rendered without regard to the &lsquo;No Fade on Segue Out&rsquo; checkbox in the &lsquo;Edit Audio&rsquo; dialog<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in ripcd(8) that caused connections to ModbusTCP devices to fail to be properly restored by the connection watchdog<br />
* <font style="color:red">Bug fix</font>: Fixed a regression in the &lsquo;Edit Event&rsquo; dialog in rdlogmanager(1) that caused the first cart transition type to be incorrect when the &lsquo;Pre-Import Carts&rsquo; list was populated<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in the &lsquo;Add Next&rsquo; [&rsquo;PX&rsquo;] RML that failed to return an error when an invalid offset value was supplied<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in the &lsquo;Add Next&rsquo; [&rsquo;PX&rsquo;] RML that failed to honor the &lsquo;Default Trans. Type&rsquo; setting in the &lsquo;Configure RDAirPlay&rsquo; dialog in rdadmin(1)<br />
<br />
=== 3.4.0 (2020-05-19) ===<br />
* Database verson '''317'''<br />
* <font style="color:red">Bug fix</font>: Fixed a regression in rdairplay(1) that caused two events to be started by a single spacebar tap if a SoundPanel event had been played previously<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdlogmanager(1) that caused the initial event in an imported set to fail receive the proper time and transition type if the &lsquo;Include Import Markers in Finished Logs&rsquo; checkbox in rdadmin(1) had not been ticked<br />
* <font style="color:red">Bug fix</font>: Fixed a regression in rdexport(1) that caused exported file names to be constructed improperly<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdlogmanager(1) that caused &lsquo;Make Post Point&rsquo; label to be displayed without last &lsquo;t&rsquo;<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdairplay(1) where timer was not set properly when crossing midnight<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in the &lsquo;List GPIs&rsquo; dialog in rdadmin(1) that prevented changes in GPI assignments from being propagated to the underlying device<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in the &lsquo;Software Authority&rsquo; driver that caused autodetection of the number of GPIOs in a router to be unreliable<br />
* <font style="color:red">Bug fix</font>: Fixed a regression in &lsquo;RDEventLine&rsquo; that caused the &lsquo;Append Log&rsquo; [&rsquo;AL&rsquo;] RML to append a copy of the currently loaded log instead of the one specified in the RML command<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdlogedit(1) that caused garbled text to appear when &lsquo;Start Immediately&rsquo; was selected in the &lsquo;Edit Log Entry&rsquo; dialog box<br />
* <font style="color:red">Bug fix</font>: Fixed a regression that broke the ability to scroll through Sound Panel panels by means of the mouse wheel<br />
<br />
* <font style="color:green">Functionality</font>: Modified rdairplay(1) to always scroll log to the top when using the hour selector<br />
* <font style="color:green">Functionality</font>: Modified rdlogmanager(1) to disable merge buttons if the selected log does not contain any import links<br />
* <font style="color:green">Functionality</font>: Modified rdadmin(1) Edit Service dialog to display built-in traffic and music import template values<br />
* <font style="color:green">Functionality</font>: Added "Copy To Custom" buttons to rdadmin(1) Edit Service dialog<br />
* <font style="color:green">Functionality</font>: Changed the layout of the &lsquo;Editing Event&rsquo; dialog in rdlogmanager<br />
<br />
* <font style="color:green">Functionality</font>: Removed the &lsquo;Post Point&rsquo; checkbox from the &lsquo;Editing Event&rsquo; dialog in rdlogmanager(1)<br />
* <font style="color:green">Functionality</font>: Renamed the &lsquo;REMARKS&rsquo; field to &lsquo;USER NOTES&rsquo; in the &lsquo;Editing Event&rsquo; and the &lsquo;Edit Clock&rsquo; dialogs in rdlogmanager(1)<br />
* <font style="color:green">Functionality</font>: Added a &lsquo;Trans&rsquo; column to the event list in the &lsquo;Edit Clock&rsquo; and the &lsquo;List Events&rsquo; dialogs in rdlogmanager(1)<br />
<br />
=== 3.3.0 (2020-03-16) ===<br />
* Database verson '''314'''<br />
* <font style="color:red">Bug fix</font>: Fixed regressions in the following switcher drivers that could cause deadlocks and intermittent operation<br />
:* BroadcastTools SS16.4<br />
:* BroadcastTools SS 4.2<br />
:* BroadcastTools SS4.4<br />
:* BroadcastTools SS 8.2<br />
:* BroadcastTools ACS8.2<br />
:* BroadcastTools ADMS 44.22<br />
:* BroadcastTools GPI-16<br />
:* BroadcastTools SRC-16<br />
:* BroadcastTools SRC-8 III<br />
:* BroadcastTools SS 4.1 MLR<br />
* <font style="color:red">Bug fix</font>: Fixed a regression in the implementation of the &lsquo;Set Serial Trap&rsquo; [&lsquo;SI&rsquo;] RML that could cause deadlocks and intermittent operation<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdairplay(1) that could cause random segfaults when updating the Label Widget<br />
* <font style="color:red">Bug fix</font>: Fixed a bug with the &lsquo;%y&rsquo; metadata wildcard where garbage would be returned if a valid year had not been set<br />
* <font style="color:red">Bug fix</font>: Fixed a regression in rdlogmanager(1) that caused trailer whitespace to be generated in the &lsquo;EXT_DATA&rsquo;, &lsquo;EXT_EVENT&rsquo;, &lsquo;EXT_ANNC_TYPE&rsquo; and &lsquo;EXT_CART_NAME&rsquo; log fields when importing from a CounterPoint format log<br />
* <font style="color:red">Bug fix</font>: Fixed the layout of the &lsquo;Matching Carts&rsquo; field in rdlibrary(1)&rsquo;s main window when Realtime Filtering is disabled<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdairplay(1) that would cause a hard-timed log event with a &lsquo;wait&rsquo; parameter set to attempt to play the event twice<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rddbmgr(8) that threw a SQL error when attempting to modify a DB containing tables set to use character set UTF-8 to schema 297<br />
* <font style="color:red">Bug fix</font>: Fixed a race in ripcd(8) that caused arguments to the &lsquo;Run Shell Command&rsquo; [&lsquo;RN&rsquo;] macro to be corrupted<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in the &lsquo;Edit Event&rsquo; dialog in rdlogmanager(1) that caused the Transition Type dropdown to be greyed-out when the &lsquo;IMPORT&rsquo; controls were set to use the built-in music scheduler<br />
* <font style="color:green">Functionality</font>: Added a &lsquo;delta-seconds&rsquo; modifier to Filepath Wildcards to enable positive and negative time offsets<br />
* <font style="color:green">Functionality</font>: Removed support for CD-TEXT from the CD rippers<br />
* <font style="color:green">Functionality</font>: Added support for &lsquo;MusicBrainz&rsquo; CD metadata lookup<br />
* <font style="color:green">Functionality</font>: Added a &lsquo;Web Browser&rsquo; control to the &lsquo;Edit Host&rsquo; dialog in rdadmin(1)<br />
* <font style="color:green">Functionality</font>: Added support for displaying cover art in the MusicBrainz release chooser<br />
* <font style="color:green">Functionality</font>: Added &lsquo;%wm&rsquo; [&lsquo;MusicBrainz Recording ID&rsquo;] and &lsquo;%wr&rsquo; [&lsquo;MusicBrainz Release ID&rsquo;] metadata wildcards<br />
* <font style="color:green">Functionality</font>: Implemented the &lsquo;%wm&rsquo; [&lsquo;MusicBrainz Recording ID&rsquo;] and &lsquo;%wr&rsquo; [&lsquo;MusicBrainz Release ID&rsquo;] metadata wildcards for PyPAD<br />
* <font style="color:green">Functionality</font>: Added support for the &lsquo;%wi&rsquo;, &lsquo;%wm&rsquo; and &lsquo;%wr&rsquo; wildcards to the &lsquo;--metadata-pattern=&rsquo; switch in rdimport(1)<br />
* <font style="color:green">Functionality</font>: Added &lsquo;--set-string-isrc&rsquo;, &lsquo;--set-string-recording-mbid&rsquo; and &lsquo;--set-string-release-mbid&rsquo; switches to rdimport(1)<br />
* <font style="color:green">Functionality</font>: Added support for the &lsquo;%wi&rsquo;, &lsquo;%wm&rsquo; and &lsquo;%wr&rsquo; wildcards to the &lsquo;--metadata-pattern=&rsquo; switch in rdexport(1)<br />
* <font style="color:green">Functionality</font>: Added a &lsquo;%wc&rsquo; [&lsquo;Industry Standard Commercial Identification (ISCI) Code&rsquo;] metadata wildcard<br />
* <font style="color:green">Functionality</font>: Implemented the &lsquo;%wc&rsquo; metadata wildcard for PyPAD<br />
* <font style="color:green">Functionality</font>: Added support for the &lsquo;%wc&rsquo; wildcards to the &lsquo;--metadata-pattern=&rsquo; switch in rdimport(1)<br />
* <font style="color:green">Functionality</font>: Added &lsquo;--set-string-isci&rsquo; switch to rdimport(1)<br />
* <font style="color:green">Functionality</font>: Added support for the &lsquo;%wc&rsquo; wildcard to the &lsquo;--metadata-pattern=&rsquo; switch in rdexport(1)<br />
* <font style="color:green">Functionality</font>: Removed the &lsquo;RDLabel&rsquo; widget<br />
* <font style="color:green">Functionality</font>: Added a &lsquo;Disconnect All Jack Ports&rsquo; [&lsquo;JZ&rsquo;] RML<br />
* <font style="color:green">Functionality</font>: Added a &lsquo;CounterPoint Traffic Reconciliation v2&rsquo; report<br />
<br />
=== 3.2.1 (2020-01-24) ===<br />
* Database verson '''311'''<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdcatch(1) that threw a SQL error when clicking 'OK' on the &lsquo;Edit Cart Event&rsquo; dialog<br />
* <font style="color:red">Bug fix</font>: Fixed a regression in rdimport(1) that caused null characters to be written to cart metadata fields when importing files containing an &lsquo;AIR1&rsquo; RIFF chunk<br />
* <font style="color:red">Bug fix</font>: Fixed a regression in rdcatch(1) that caused the &lsquo;Source&rsquo; dropdown in the &lsquo;Edit Recording&rsquo; dialog to fail to be populated properly<br />
* <font style="color:red">Bug fix</font>: Fixed a regression in the cart selector dialog that caused default focus to be lost on the &lsquo;Filter&rsquo; control after second and subsequent invocations<br />
* <font style="color:red">Bug fix</font>: Fixed a regression in rdcatchd(8) that broke audio metering<br />
* <font style="color:red">Bug fix</font>: Fixed a regression in rdcatchd(8) that could cause download events to hang in an active state<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdcatch(1) that caused DOW flags to fail to be updated correctly on the event list after making a change<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdcatchd(8) that failed to send a MODIFY notification at the end of a Record or Download event<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdconvert that caused a segfault at startup<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdexport(1) that caused output filenames containing multi-byte UTF-8 characters to be corrupt<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdgpimon(1) that caused GPIO cart displays to fail to accurately reflect current state<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdgpimon(1) that caused incorrect state indications to be displayed after switching to a different page<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdimport(1) that caused non-Latin1 characters to be corrupted when using standard input<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdimport(1) that caused UTF-8 multibyte characters in filenames to be corrupted<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdlogmanager(1) that caused spurious log events to be inserted when generating a log<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in ripcd(8) that caused input and output counts to be calculated incorrectly for Software Authority protocol devices containing holes in the input and/or output lists<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in the &lsquo;pypad-shoutcast1.py&rsquo; script that threw an exception when processing PAD containing multi-type UTF-8 characters<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in the &lsquo;pypad_xds.py&rsquo; PyPAD script that could cause it to emit duplicate CIC updates<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in the &lsquo;rivwebcapi&rsquo; validate_tm() function that caused dates containing &lsquo;29 February&rsquo; to always fail regardless of leap-year validity<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in the rdxport service that could cause MODIFY notifications to fail to be sent by the &lsquo;SaveLog&rsquo; WebAPI call<br />
* <font style="color:red">Bug fix</font>: Fixed a regression in rdadmin(1) that caused controls to be hidden in the &lsquo;Edit Report&rsquo; dialog<br />
* <font style="color:red">Bug fix</font>: Fixed a regression in rdlogmanager(1) that caused incorrect logged start times to be generated for imported events<br />
* <font style="color:red">Bug fix</font>: Fixed a regression in the rdxport service that caused the ListCuts WebAPI call to return corrupt data<br />
* <font style="color:red">Bug fix</font>: Fixed a regression in the Web API that caused the and/or corrupt in served XML documents<br />
* <font style="color:green">Functionality</font>: Implemented support for non-realtime library filtering in the &lsquo;Editing Event&rsquo; dialog in rdlogmanager(1)<br />
* <font style="color:green">Functionality</font>: Added a &lsquo;Show Start Time As&rsquo; control to the &lsquo;Edit Log&rsquo; dialog in rdlogedit(1)<br />
* <font style="color:green">Functionality</font>: Made the rdlogedit(1) main window and &lsquo;Edit Log&rsquo; dialog window sizes persistent<br />
* <font style="color:green">Functionality</font>: Added a work-around in the &lsquo;PyPAD.Receiver().__openDb()&rsquo; method to work with versions of MySQLdb that do not support the &lsquo;password=&rsquo; parameter in &lsquo;MySQLdb.connect()&rsquo;<br />
* <font style="color:green">Functionality</font>: Added &lsquo;Repetitions=&rsquo; and &lsquo;RepetitionDelay=&rsquo; directive to the configuration of the &lsquo;pypad_xds.py&rsquo; PyPAD script<br />
* <font style="color:green">Functionality</font>: Added &lsquo;Username=&rsquo; and &lsquo;Password=&rsquo; directives to the &lsquo;pypad_httpget.py&rsquo; script for use for HTTP Basic Authentication<br />
* <font style="color:green">Functionality</font>: Added the ability to view a report at time of generation in rdlogmanager(1)<br />
* <font style="color:green">Functionality</font>: Adjusted the position of the &lsquo;Matching Carts&rsquo; readout on the main window of rdlibrary(1)<br />
* <font style="color:green">Functionality</font>: Changed the &lsquo;Time&rsquo; column in the &lsquo;Full Log Widget&rsquo; in rdairplay(1) to &lsquo;Sch. Time&rsquo;<br />
* <font style="color:green">Functionality</font>: Implemented a work-around for importing CartChunk data containing a buggy ENCO implemention of the &lsquo;AUD&rsquo; CartChunk timer<br />
* <font style="color:green">Functionality</font>: Modified the Full Log widget in rdairplay(1) to display logged start times even when the referenced cart does not exist<br />
* <font style="color:green">Functionality</font>: Tweaked the &lsquo;LogLineBox::mouseMoveEvent()&rsquo; method in rdairplay(1) to require a cursor movement of at least 20 pixels before generating a cart drag<br />
<br />
=== 3.2.0 (2019-10-31) ===<br />
* Database verson '''311'''<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rddbmgr(8) that caused a segfault when processing a SQL error<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdimport(1) that caused it to throw an exception when given a &lsquo;--metadata-pattern&rsquo; of less than three characters<br />
* <font style="color:red">Bug fix</font>: Fixed a regression in rdimport(1) that caused a segfault when invoked with the &lsquo;--metadata-pattern&rsquo; and &lsquo;--log-syslog&rsquo; switches<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdairplay(1) that caused space bar presses to start the next event in the Main Log even when &lsquo;Space Bar Action&rsquo; was set to &lsquo;None&rsquo;<br />
* <font style="color:red">Bug fix</font>: Fixed bugs in 'RDWaveFile' that caused strings of null characters to be written into unfilled CartChunk string fields<br />
* <font style="color:red">Bug fix</font>: Fixed a regression in 'rdxport.cgi' that caused a check of the Rivendell services to be triggered each time a WebAPI function was invoked<br />
* <font style="color:red">Bug fix</font>: Fixed a regression in rdsoftkeys(1) that threw a segfault at startup<br />
* <font style="color:green">Functionality</font>: Added the ability to configure the caption displayed for the first and third voicetrack waveforms in the Voicetracker dialog in rdlogedit(1)<br />
* <font style="color:green">Functionality</font>: Reworked the font management system to permit the fonts used in the UI to be specified in rd.conf(5).<br />
* <font style="color:green">Functionality</font>: Added support for posting podcast content via SFTP<br />
* <font style="color:orange">Documentation</font>: Added manual pages for rd.conf(5) and rdsoftkeys(1)<br />
<br />
=== 3.1.0 (2019-09-19) ===<br />
* Database verson '''310'''<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdairplay(1) and rdvairplayd(8) where only the first log machine set to &lsquo;load specified log&rsquo; would do so<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdlogedit(1) that caused hard start log items to have the Hour field doubled<br />
* <font style="color:red">Bug fix</font>: Refactored the Python &lsquo;pypad.Update.shouldBeProcessed()&rsquo; method to work correctly when using <tt>try:</tt> blocks in a PyPAD script<br />
* <font style="color:red">Bug fix</font>: Refactored the PyPAD scripts to route updates properly in accordance with log directives in their configuration file<br />
* <font style="color:red">Bug fix</font>: Fixed a bug that broke dropbox logging to individual files<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in caed(8) that broke timescaling support<br />
* <font style="color:red">Bug fix</font>: Fixed bugs in rdlibrary(1) that broke CD ripping<br />
* <font style="color:green">Functionality</font>: Refactored rdalsaconfig(1) to be more robust and intuitive<br />
* <font style="color:green">Functionality</font>: Added a &lsquo;pypad_httpget.py&rsquo; PyPAD script<br />
* <font style="color:green">Functionality</font>: Updated CDDB code to use protocol level 6 (UTF-8 enabled)<br />
* <font style="color:green">Functionality</font>: Added an &lsquo;%l&rsquo; wildcard to Filepath Wildcards for &lsquo;unpadded month&rsquo;<br />
=== 3.0.3 (2019-08-05) ===<br />
* Database verson '''308'''<br />
* <font style="color:red">Bug fix</font>: Fixed a regression in ripcd(8) that broke the 'Connect Jack Ports' ['JC'] and 'Disconnect Jack Ports' ['JD'] RMLs<br />
=== 3.0.2 (2019-07-31) ===<br />
* Database verson '''308'''<br />
* <font style="color:red">Bug fix</font>: Fixed a problem with the Local Audio Adapter switcher driver that caused incorrect operation with the 'Switch Add' ['SA'], 'Switch Remove' ['SR'] and 'Switch Take' ['ST'] RMLs<br />
* <font style="color:red">Bug fix</font>: Fixed a regression in rdlibrary(1) that caused macro carts entries to turn red after being viewed<br />
* <font style="color:red">Bug fix</font>: Fixed regressions that made operations with serial devices unreliable<br />
* <font style="color:green">Functionality</font>: Added support for switchers using the Grass Valley 7000 series protocol<br />
=== 3.0.1 (2019-07-16) ===<br />
* Database verson '''308'''<br />
* <font style="color:red">Bug fix</font>: Rivendell is now Unicode UTF-8 clean<br />
* <font style="color:red">Bug fix</font>: Qt4 is now used throughout Rivendell instead of Qt3<br />
* <font style="color:green">Functionality</font>: The Rivendell Loadable Modules system for processing PAD data has been completely replaced by PyPAD, allowing PAD processing plug-ins to be written in the popular Python scripting langauge. Backward compatible replacement scripts for many of the RLM plug-ins supplied in Rivendell v2.x are included<br />
* <font style="color:green">Functionality</font>: Added a compatibility library to facilitate the use of the Rivendell Web API in external applications<br />
* <font style="color:green">Functionality</font>: A system of virtual log machines has been added, allowing play-out of up to 23 logs simultaneously<br />
* <font style="color:green">Functionality</font>: Rivendell is now fully systemd compatibile<br />
* <font style="color:green">Functionality</font>: The Windows ports of rdlogedit(1) and rdlogmanager(1) have been removed<br />
* <font style="color:orange">Documentation</font>: The Rivendell Operations and Administration Guide has been updated and enhanced with more details about running a Rivendell system<br />
* <font style="color:orange">Documentation</font>: New manual pages have been added for Rivendell command that previously did not have them<br />
See [http://caspian.paravelsystems.com/pipermail/rivendell-dev/2019-July/027867.html this message] on the Rivendell Dev mailing list for more details about installing and upgrading Rivendell.<br />
=== 2.19.3 (2018-10-31) ===<br />
* Database verson '''275'''<br />
* <font style="color:red">Bug fix</font>: Fixed a bug that caused the &lsquo;Switcher Matrix&rsquo; and &lsquo;Switcher Output&rsquo; dropdowns to populate incorrect values when selecting a non-local &lsquo;Switcher Host&rsquo; in the &lsquo;Configure RDCatch&rsquo; dialog in rdadmin(1)<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdlogmanager(1) that caused the initial transition type specified in the &lsquo;IMPORT&rsquo; section of the &lsquo;Editing Event&rsquo; dialog to be applied to both the parent log link and the first imported event when the &lsquo;PRE-IMPORT CARTS&rsquo; list was empty and no Timed Start was enabled<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in ripcd(8) that caused process of the &lsquo;Air Gate&rsquo; [&lsquo;AG&rsquo;] RML to fail<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdimport(1) that would throw a spurious SQL error when using the &lsquo;--to-cart=&rsquo; switch with an already existing cart [Issue #000217]<br />
* <font style="color:red">Bug fix</font>: Fixed a regression that caused rdimport(1) to return a &lsquo;no free carts available in specified group&rsquo; when invoked without the &lsquo;--to-cart=&rsquo; option<br />
* <font style="color:red">Bug fix</font>: Fixed a regression in rdairplay(1) that caused carts Added or Copied to a log to have a PLAY transition regardless of the default transition type set in rdadmin(1)<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in &lsquo;RDTextValidator&rsquo; that failed to catch banned characters added to the interior of existing strings<br />
* <font style="color:red">Bug fix</font>: Various other bugs fixed<br />
* <font style="color:green">Functionality</font>: Added a &lsquo;TranscodingDelay=&rsquo; parameter to the &lsquo;[Tuning]&rsquo; section of rd.conf(5)<br />
* <font style="color:green">Functionality</font>: Added a Switcher/GPIO driver for the BroadcastTools SS 2.1 switcher<br />
* <font style="color:green">Functionality</font>: Added support for GPIO on AudioScience adapters to the 'Local Audio Adapter' Switcher/GPIO driver<br />
* <font style="color:green">Functionality</font>: Renamed the 'Add Next' ['PX'] RML to 'Insert Cart' ['PX'] and added two optional arguments to allow specification of the insertion position and transition type<br />
* <font style="color:green">Functionality</font>: Added support for Spinitron v2 to the 'spinitron_plus' RLM<br />
* <font style="color:green">Functionality</font>: Added an &lsquo;ExportedFileMode=&rsquo; parameter to the &lsquo;[Tuning]&rsquo; section of rd.conf(5) to permit permission mode of exported audio files to be specified<br />
* <font style="color:orange">Documentation</font>: Documented GPIO support for AudioScience cards in the &lsquo;Local Audio Adapter&rsquo; section of the Operations Guide<br />
<br />
=== 2.19.2 (2018-04-14) ===<br />
* Database verson '''275'''<br />
* <font style="color:red">Bug fix</font>: Fixed a regression in the HPI support layer that broke audio capture with adapters lacking DMA bus-mastering support<br />
<br />
=== 2.19.1 (2018-03-27) ===<br />
* Database verson '''275'''<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdlogmanager(1) that caused DB corruption when a clock was deleted while still being assigned to a grid.<br />
* <font style="color:green">Functionality</font>: Implemented support for DMA bus-mastering for AudioScience HPI devices. This release supports the latest ASI cards that require DMA bus-mastering support. You may also need to update the hpklinux driver to v4.20.10 or later. RPMs for CentOS 7 are available at [http://static.paravelsystems.com/audioscience/centos/7/ Paravel&rsquo;s website].<br />
* <font style="color:green">Functionality</font>: Removed rdhpiinfo(8). Replaced by the stand-alone &lsquo;hpiinfo&rsquo; package.<br />
* <font style="color:green">Functionality</font>: Removed the event time check for Playout events in rdcatch(1), as there is no sane way to determine a consistently &lsquo;free&rsquo; playout time in the face of shifting cut lengths.<br />
<br />
=== 2.19.0 (2018-02-22) ===<br />
* Database verson '''275'''<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdlibrary(1) that caused evergreen carts/cuts to fail to be highlighted in the correct color<br />
* <font style="color:green">Functionality</font>: Added the ability to specify automatic log deletion on the basis of either the Creation Date or Air Date of the log<br />
* <font style="color:green">Functionality</font>: Log Importation Changes. Changed music and traffic importation so that parent link events are still visible in linked logs<br />
* <font style="color:green">Functionality</font>: Log Locking: implemented a system-wide protocol to prevent changes made to a log on one host from being inadvertently overwritten from another host<br />
<br />
=== 2.18.2 (2017-12-29) ===<br />
* Database version '''272'''<br />
* <font style="color:red">Bug fix</font>: Fixed a bug that caused creation of new clocks in rdlogmanager(1) to fail to initialize music scheduler components correctly in the database<br />
<br />
=== 2.18.1 (2017-12-22) ===<br />
* Database version '''272'''<br />
* <font style="color:red">Bug fix</font>: Fixed a bug that caused creation and initialization of a new Rivendell database to fail<br />
<br />
=== 2.18.0 (2017-12-21) ===<br />
* Database version updated to '''272'''<br />
* <font style="color:red">Bug fix</font>: Various bug fixes. See the [https://github.com/ElvishArtisan/rivendell/blob/stable/ChangeLog ChangeLog] for details<br />
* <font style="color:green">Functionality</font>: Group Cut Expiration Policy: Added the ability to set a default End Date/Time for new cuts on a per-group basis<br />
* <font style="color:green">Functionality</font>: Host Short Name: Added a ''Short Name'' parameter to Host profiles<br />
* <font style="color:green">Functionality</font>: Macro Carts: It is now possible to use filepath wildcards in macro carts<br />
* <font style="color:green">Functionality</font>: New Host Wildcards: Added two host wildcards: ''%r'' for ''Rivendell Host Name, and ''%R'' for ''Rivendell Short Name''<br />
* <font style="color:green">Functionality</font>: Provisioning Support: Added four new directives and to the ''[Provisioning]'' section of ''/etc/rd.conf''<br />
* <font style="color:green">Functionality</font>: MySQL Configuration: Added three parameters to the ''[mySQL]'' section of ''/etc/rd.conf''<br />
* <font style="color:green">Functionality</font>: Dropbox Enhancements: Added the ability to specify creation of default Segue Markers when processing files via dropbox<br />
* <font style="color:green">Functionality</font>: '''RDImport'''/DropBox Enhancements: Added the ability to specify start and end datetimes via metadata pattern<br />
* <font style="color:green">Functionality</font>: '''RDCatch''' Event Filtering: Added the ability to filter by event type in '''RDCatch'''<br />
* <font style="color:green">Functionality</font>: Log Searching: A search filter (similar to that employed for seaching for carts) has been added to the List Logs dialogs<br />
* <font style="color:green">Functionality</font>: Service Filtering in '''RDLogEdit''': Added the ability to limit the visible set of logs in RDLogEdit by user<br />
* <font style="color:green">Functionality</font>: Log Purge/Deletion Changes: Logs created manually (in rdlogedit(1) or rdairplay(1)) are now assigned a default purge/deletion date in accordance with the setting in RDAdmin->ManageServices<br />
* <font style="color:green">Functionality</font>: Log Importation Changes: Changed music and traffic importation so that parent link events are still visible in linked logs<br />
* <font style="color:green">Functionality</font>: Web API Changes: Added &lsquo;FILTER&rsquo; and &lsquo;RECENT&rsquo; call parameters to the &lsquo;ListLogs&rsquo; Web API call<br />
* <font style="color:orange">Documentation</font>: Documentation Overhaul: The Rivendell Operations and Administration Guide has been exapanded and incorporated as part of the base Rivendell source in ''docs/opsguide''. This guide is available as a separate CentOS package: ''rivendell-opsguide''<br />
* <font style="color:orange">Documentation</font>: Rivendell APIs: The various application programming interfaces (notably the web API) is now documented and is included with the standard distribution<br />
<br />
=== 2.17.0 (2017-10-11) ===<br />
* Database version updated to '''268'''<br />
* <font style="color:red">Bug fix</font>: Web API: Many fixes and enhancements to improve operation<br />
* <font style="color:red">Bug fix</font>: Many other bug fixes; see the [https://github.com/ElvishArtisan/rivendell/blob/stable/ChangeLog ChangeLog] for all the details (search for ''2.17.0'' and work your way backward through the list of changes)<br />
* <font style="color:green">Functionality</font>: Dropboxes: Added the ability to force imports to be imported as mono, also added the ability to reset individual dropboxes<br />
* <font style="color:green">Functionality</font>: New Switcher/GPIO Devices: Support has been added for the following Switcher/GPIO devices:<br />
:* Broadcast Tools Universal 4.1 MLR&gt;&gt;Web Switcher<br />
:* WheatNet LIO<br />
:* WheatNet SLIO<br />
* <font style="color:green">Functionality</font>: Macros: Added the &lsquo;Air Gate&rsquo; &#91;&lsquo;AG&rsquo;&#93; RML to permit conditional execution of RML on the basis of the status of the On-Air flag<br />
* <font style="color:green">Functionality</font>: <br />
* <font style="color:green">Functionality</font>: User Authentication: It is now possible to configure RDLogin to require entry of the user-name, rather than picking the name off of a list. See the &lsquo;Show User List in RDLogin&rsquo; checkbox in RDAdmin-&gt;SystemSettings<br />
* <font style="color:green">Functionality</font>: Log Rendering (EXPERIMENTAL): It is now possible to &lsquo;render&rsquo; a log as a single audio object (file or cart/cut) without the need to play it out while capturing the audio in realtime. Render support is available through the &lsquo;Render&rsquo; button in RDLogEdit and through the command-line rdrender(1) utility. See the rdrender(1) man page for details<br />
* <font style="color:green">Functionality</font>: Provisioning Support. Added a [Provisioning] section to rd.conf(5) with directives to facilitate the automatic provisioning of Rivendell instances. See the comments in the [Provisioning] section of the sample rd.conf(5) file<br />
* <font style="color:orange">Artwork</font>: New Icons: Implemented a new icon set, with individualized icons for each Rivendell module<br />
<br />
=== 2.16.0 (2017-06-02) ===<br />
* Database version updated to '''263'''<br />
* <font style="color:red">Bug fix</font>: Many bug fixes; see the [https://github.com/ElvishArtisan/rivendell/blob/stable/ChangeLog ChangeLog] for all the details (search for ''2.16.0'' and work your way backward through the list of changes)<br />
* <font style="color:green">Functionality</font>: Audio Store Hashing. Rivendell now automatically generates a SHA1 hash for each file in the audio store and records this value in the database, thus permitting automated recovery of audio in the event of loss or damage to the audio store's filesystem directory<br />
* <font style="color:green">Functionality</font>: Added switcher support for Kernel GPIO devices, such as the GPIO interface on the Raspberry Pi 2 and 3<br />
* <font style="color:green">Functionality</font>: Added switcher support for Modbus TCP devices<br />
* <font style="color:green">Functionality</font>: Added an rdconvert(1) utility<br />
* <font style="color:green">Functionality</font>: It is now possible to delegate authentication of Rivendell users by means of a PAM module, thus permitting &lsquo;''single sign-on''&rsquo; integration with systems such as ActiveDirectory and FreeIPA<br />
* <font style="color:green">Functionality</font>: Added various methods to the Rivendell Web API to permit integration with external audio and log editors<br />
<br />
=== 2.15.3 (2017-03-24) ===<br />
* Database version '''259''' <br />
* <font style="color:red">Bug fix</font>: Fixed bugs in MP3 file importation that caused files with variable bit rate (VBR) to be truncated during import.<br />
* <font style="color:red">Bug fix</font>: Fixed a bug that caused dynamically loaded codec libraries to fail to be detected if the corresponding library&rsquo;s so-called ''-devel'' package was not installed. <br />
* <font style="color:green">Functionality</font>: Added an ''RLM'' for generating [http://tagstation.com/ TagStation] RLM events for [http://nextradioapp.com/ NextRadio].<br />
* <font style="color:green">Functionality</font>: Added '''AddLog''', '''DeleteLog''' and '''SaveLog''' calls to the web API, along with general cleanup and correction of the overall Web API subsystem.<br />
<br />
=== 2.15.2 (2017-01-13) ===<br />
* Database version '''259'''<br />
* <font style="color:orange">Documentation</font>: Document the interfaces for '''inserting inline traffic breaks''' and for '''inserting voice track markers''' (also add an example in ''docs/examples/'')<br />
* <font style="color:red">Bug fix</font>: in ''rdadmin/createdb.cpp'' that caused obsolete fields in the 'SERVICES' table to be included when creating a new database.<br />
* <font style="color:red">Bug fix</font>: in ''lib/rdwavefile.cpp'' that caused RDXL chunks to be written with odd chunk lengths.<br />
* <font style="color:red">Bug fix</font>: in ''lib/rdsimpleplayer.cpp'' that caused RDAirPlay to freeze when attempting to audition an expired cart.<br />
* <font style="color:green">Functionality</font>: Added a '''LockRdairplayMemory=''' parameter to the [Hacks] section.<br />
* <font style="color:green">Functionality</font>: Modified the LiveWire Multicast GPIO driver to generate GPO events using the 'I' event type.<br />
<br />
=== 2.15.1 (2016-08-05) ===<br />
* Database version '''259'''<br />
* <font style="color:red">Bug fix</font>: fixed WAV file export code to enhance compatibility with third-party applications<br />
<br />
=== 2.15.0 (2016-07-29) ===<br />
* <font style="color:red">Bug fix</font>: complete support for the MySQL/MariaDB InnoDB database engine (for better transaction processing of database updates)<br />
* <font style="color:green">Functionality</font>: enhancements to ''rdexport'' that include full metadata in RDXML format<br />
* <font style="color:green">Functionality</font>: add CLI command ''rdclilogedit'' that enables editing of Rivendell Logs from the command line (without a GUI app)<br />
* <font style="color:green">Functionality</font>: Update the database to version 259.<br />
<br />
=== 2.14.1 (2016-06-11) ===<br />
* Database version '''258'''<br />
* <font style="color:red">Bug fix</font>: additional fixes for newer versions of MySQL (and MariaDB)<br />
<br />
=== 2.14.0 (2016-06-10) ===<br />
* Database version '''258'''<br />
* <font style="color:green">Functionality</font>: add the ability to capture real-time events in RDCatch recordings and replay the events in sync with the captured audio<br />
* <font style="color:green">Functionality</font>: add RML Macro ''Cut Event'' (''CE'') for placing real-time event markers into active RDCatch recordings<br />
* <font style="color:green">Functionality</font>: add support for specifying precise start time and length parameters for Traffic events that are embedded in Music events<br />
* <font style="color:red">Bug fix</font>: fixed a bug in RDAdmin that could cause creation of a new database to fail<br />
* <font style="color:red">Bug fix</font>: fix issues that prevent compilation under newer versions of the GNU C compiler suite<br />
* <font style="color:red">Bug fix</font>: various enhancements and fixes to the new(ish) ''rdexport'' utility<br />
* <font style="color:red">Bug fix</font>: initial support for newer versions of MySQL (and MariaDB)<br />
* <font style="color:red">Bug fix</font>: add code to allow embedded traffic breaks to be specified with start time and length in the music schedule.<br />
<br />
=== 2.13.0 (2016-05-10) ===<br />
* Database version '''255'''<br />
* <font style="color:green">Functionality</font>: add RLM plugin for the Paravel Systems ''WallTime'' clock<br />
* <font style="color:green">Functionality</font>: add new CLI command ''rdexport'' to export Carts with metadata<br />
* <font style="color:green">Functionality</font>: new report: ''Cut Log'' that includes the Description field for played events<br />
* <font style="color:red">Bug fix</font>: fixed a crash in RDLibrary when attempting to open multiple Carts<br />
* <font style="color:red">Bug fix</font>: fixed RDLogEdit to improve performance when saving and updating logs<br />
* <font style="color:red">Bug fix</font>: fixed a bug that caused marker data to be deleted when exporting a Cut<br />
<br />
=== 2.12.0 (2016-04-14) ===<br />
* Database version '''254'''<br />
* <font style="color:green">Functionality</font>: add support for sequential Cut play-out - you can now configure carts to play cuts in a fixed, sequential order rather than by weight value<br />
* <font style="color:green">Functionality</font>: add support for ''Broadcast Tools'' switchers<br />
* <font style="color:green">Functionality</font>: add RML macro '''Copy Cut''' (''CP'') to copy cuts between carts<br />
* <font style="color:green">Functionality</font>: add option to show only &ldquo;recent&rdquo; logs in RDLogEdit<br />
* <font style="color:green">Functionality</font>: add new web API methods related to Scheduler Codes<br />
* <font style="color:red">Bug fix</font>: fixed a bug that caused issues with Services containing the &ldquo;-&rdquo; (dash) character<br />
<br />
=== 2.11.0 (2015-09-18) ===<br />
* Database version '''252'''<br />
* <font style="color:green">Functionality</font>: add RDCatch upload/download protocols ''sftp'' and ''scp''<br />
* <font style="color:green">Functionality</font>: add support to import ''MP4/AAC'' files<br />
* <font style="color:green">Functionality</font>: add support for the ''Ross NK'' series video switcher<br />
* <font style="color:green">Functionality</font>: add support for ''PCM24'' in the core audio library code<br />
* <font style="color:red">Bug fix</font>: re-wrote the CD ripper code to make it faster and more reliable<br />
* <font style="color:red">Bug fix</font>: fixed several bugs related to audio data and buffering<br />
* <font style="color:red">Bug fix</font>: Normalized service clock data from the 'SERVICES' to the 'SVC_CLOCKS' table<br />
<br />
=== 2.10.3 (2015-02-24) ===<br />
* Database version '''242'''<br />
* <font style="color:green">Functionality</font>: add RLM (plugin) for Live365 streaming service (which is defunct as of Summer 2016)<br />
* <font style="color:green">Functionality</font>: add &ldquo;MrMaster&rdquo; and &ldquo;Spin Count&rdquo; reports<br />
* <font style="color:green">Functionality</font>: add support for audio switcher devices that use the &ldquo;Software Authority&rdquo; protocol<br />
* <font style="color:green">Functionality</font>: add ability to set segue markers in the CLI app ''rdmarkerset''<br />
* <font style="color:red">Bug fix</font>: fixed a bug that caused issues with Services containing a <Space> character in the service name<br />
<br />
=== 2.10.2 (2014-11-25) ===<br />
* Database version '''242'''<br />
* <font style="color:green">Functionality</font>: CLI ''rdimport'' enhancement: add two date-related options to the command<br />
* <font style="color:green">Functionality</font>: add column for ELR data in RDLogEdit<br />
* <font style="color:red">Bug fix</font>: fixed a bug in the Audio Science adapter for cards with only AES3 ports<br />
<br />
=== 2.10.1 (2014-11-04) ===<br />
* Database version '''242'''<br />
* <font style="color:green">Functionality</font>: add &ldquo;DSP utilization and profiling&rdquo; info for Audio Science adapters<br />
* <font style="color:green">Functionality</font>: add the column &ldquo;EXT DATA&rdquo; to the &ldquo;Edit Log&rdquo; screen in RDLogEdit<br />
* <font style="color:red">Bug fix</font>: fixed a memory fault (crash) in RDLogEdit when dropping a cart that was being used in a log</div>
DKlann
http://wiki.rivendellaudio.org/index.php?title=ChangeSummary&diff=619
ChangeSummary
2022-02-22T23:39:18Z
<p>DKlann: Add 3.6.4 release changes.</p>
<hr />
<div>__NOTOC__<br />
== Rivendell Change Summary ==<br />
<br />
This page contains version change descriptions in summary form for Rivendell versions released within at least the most recent five years (quite probably longer). Change descriptions are limited (mostly) to user-visible changes.<br />
<br />
Please see the [https://raw.githubusercontent.com/ElvishArtisan/rivendell/master/ChangeLog ChangeLog] and [https://github.com/ElvishArtisan/rivendell/blob/master/NEWS NEWS] files in the [https://github.com/elvishartisan/rivendell source code] for a complete list of changes and bug fixes.<br />
<br />
See the [https://github.com/elvishartisan/rivendell/issues Issues] list for current reported bugs, issues and feature requests.<br />
<br />
=== 3.6.4 (2022-02-22) ===<br />
<br />
Note: version 3.6.3 was tagged, but not released.<br />
<br />
* Database verson '''347'''<br />
* <font style="color:green">Functionality</font>: Added a &lsquo;SuppressMusicImportLinks=&rsquo; directive to the [Hacks] section of rd.conf(5)<br />
* <font style="color:green">Functionality</font>: Added support for [NowGroups] and [NextGroups] sections in PyPAD script configurations<br />
* <font style="color:green">Functionality</font>: Deprecated use of the &lsquo;Transmit Now & Next data&rsquo; checkbox in the &lsquo;Group&rsquo; dialog in rdadmin(1)<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdlogmanager(1) that caused leading event attributes to fail to be preserved when suppressing Music of Traffic import markers<br />
* <font style="color:green">Functionality</font>: Added a &lsquo;SaveWebgetFilesDirectory=&rsquo; directive to rd.conf(5)<br />
* <font style="color:green">Functionality</font>: Modified the mode of files generated by the &lsquo;SaveWebgetFilesDirectory=&rsquo; directive 0440 to 0664<br />
* <font style="color:blue">Code (internal) change</font>: Overhauled the code for reading MPEG frame headers in &lsquo;RDWaveFile&rsquo;<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in the rdxport &lsquo;Import&rsquo; service that could result in incorrect end marker placement when processing variable bit rate (VBR) MPEG files<br />
* <font style="color:blue">Code (internal) change</font>: Increased the import process timeout for the WebGet service to 1200 seconds<br />
* <font style="color:red">Bug fix</font>: Fixed an arithmetic overflow bug in &lsquo;RDWaveFile&rsquo; that could cause the play length of MPEG-encoded to be incorrectly calculated<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdimport(1) that caused premature validation of metadata<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdxport(8) that caused the &lsquo;SaveLog&rsquo; WebAPI call to fail if the target log didn&rsquo;t exist<br />
* <font style="color:green">Functionality</font>: Added a &lsquo;linkLength&rsquo; field and a &lsquo;graceTime&rsquo; field to the return XML for the &lsquo;ListLog&rsquo; WebAPI call<br />
* <font style="color:green">Functionality</font>: Added a &lsquo;Log Listing (CSV)&rsquo; report to rdlogedit(1)<br />
* <font style="color:green">Functionality</font>: Added a &lsquo;--print-progress&rsquo; switch to rddbmgr(8)<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rddbmgr(8) that could cause the 346=&gt;347 schema conversion to hang indefinitely with databases containing large cart libraries<br />
<br />
<br />
=== 3.6.2 (2021-07-30) ===<br />
* Database verson '''347'''<br />
* <font style="color:green">Functionality</font>: Added support for system dark themes in RDAirplay<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdlogedit(1) that could cause a crash when attempting to play a non-audio event in the &lsquo;Voice Tracker&rsquo; dialog<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdimport(1) that caused the cart title uniqueness check to be applied to the incorrect string when the &lsquo;--set-string-title=&rsquo; switch was used<br />
<br />
<br />
=== 3.6.1 (2021-06-06) ===<br />
* Database verson '''347'''<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdimport(1) that could cause a crash when the &lsquo;--fix-broken-formats&rsquo; switch is used<br />
* <font style="color:green">Functionality</font>: Added syslog DEBUG messages around the start/stop of ephemeral processes in rdservice(8)<br />
* <font style="color:green">Functionality</font>: Added an &lsquo;--initial-maintenance&rsquo; switch to rdservice(8)<br />
* <font style="color:green">Functionality</font>: Added an &lsquo;--force-system-maintenance&rsquo; switch to rdservice(8)<br />
* <font style="color:green">Functionality</font>: Modified rdmaint(8) to enable it to operate even when the Rivendell services are not running<br />
<br />
=== 3.6.0 (2021-05-15) ===<br />
* Database verson '''347'''<br />
* <font style="color:red">Bug fix</font>: Fixed title separation in rdlogmanager(1) scheduler<br />
* <font style="color:red">Bug fix</font>: Fixed bug in library code ''lib/rdwavefile.cpp'' that copied CartChunk Cut ID past the end of the first "NULL" character<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdairplay(1) that caused the Talk Timer to fail to be populated when adding new carts to a log<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in the Cart Selector Dialog that made it impossible to enter an apostrophe character in the filter search line<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdimport(1) where the title of an existing cart would be overwritten with a default title even when no title was found in the file metadata<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in &lsquo;RDFlacDecode&rsquo; that caused conversion of files with names containing non-ASCII characters to fail<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdadmin(1) where clicking the &lsquo;OK&rsquo; button in the &lsquo;Edit Switcher&rsquo; dialog would cause an error dialog to appear with a &lsquo;primary serial device not active&rsquo; warning. The following devices are affected: &lsquo;Local GPIO&rsquo;, &lsquo;Local Audio Adapter&rsquo;, &lsquo;Logitek vGuest&rsquo;, &lsquo;Livewire LWRP Audio&rsquo;, and &lsquo;Kernel GPIO&rsquo;<br />
* <font style="color:green">Functionality</font>: Modified rdimport(1) and the Webget service so as to send e-mail reports to the address of the current Rivendell user in addition to the group&rsquo;s Notification E-Mail Address<br />
* <font style="color:green">Functionality</font>: Added a &lsquo;STACK_LINES.TITLE&rsquo; field to the database<br />
* <font style="color:green">Functionality</font>: Added the value of the detected CartChunk CutID to the error message generated when rejecting said CutID as invalid when using the &lsquo;--use-cartchunk-cutid&rsquo; switch in rdimport(1)<br />
* <font style="color:green">Functionality</font>: Added code to print the value of the detected CartChunk CutID when using both the &lsquo;--use-cartchunk-cutid&rsquo; and &lsquo;--verbose&rsquo; flags in rdimport(1)<br />
* <font style="color:green">Functionality</font>: Created pypad_ino713_tcp based upon pypad_ino713, converting from UDP to TCP. Added an adjustable delay to account for broadcast air delays<br />
* <font style="color:green">Functionality</font>: Created pypad_nautel based upon pypad_ino713_tcp, including RDS parameters from documentation. Includes delay as above<br />
* <font style="color:green">Functionality</font>: Added a new &lsquo;RadioTraffic.com Traffic Reconciliation&rsquo; report. Renamed the existing &lsquo;RadioTraffic.com Traffic Reconciliation&rsquo; to &lsquo;Original RadioTraffic.com Traffic Reconciliation (DEPRECATED)&rsquo;<br />
* <font style="color:green">Functionality</font>: Changed the way in which the VU Meter UDP port is chosen. One can now specify the base port number and the maximum number of UDP ports to consider when caed(8) sets up the VU meter port<br />
* <font style="color:orange">Documentation</font>: Documented the &lsquo;MeterPortBaseNumber=&rsquo; and &lsquo;MeterPointRange=&rsquo; directives in the rd.conf(5) man page<br />
<br />
=== 3.5.0 (2020-12-12) ===<br />
* Database verson '''346'''<br />
* <font style="color:red">Bug fix</font>: Corrected the column settings in RDAdmin > Manage Hosts > [host] > Dropboxes<br />
* <font style="color:red">Bug fix</font>: Fixed regression with "Scheduler Code:" label overlapping "Group" combobox in rdlibrary(1)<br />
* <font style="color:red">Bug fix</font>: Fixed several bugs in rdadmin(1) that messed with passwords, user settings, and other important settings<br />
* <font style="color:red">Bug fix</font>: Fixed several bugs in rdlogmanager(1) that caused all kinds of mischief<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdairplay(1) where copying a log event using the &lsquo;Copy&rsquo; button would result in the new event always getting a &lsquo;PLAY&rsquo; transition<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rddbmgr(8) that could cause database corruption problems<br />
* <font style="color:red">Bug fix</font>: Fixed bugs in rdimport(1) that caused incorrect exit codes to be emitted when a non-existent group was specified, and that caused generation of double error messages when processing invalid audio files<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdmonitor(1) that caused false indications of a failed audio store when used with autofs(8)<br />
* <font style="color:green">Functionality</font>: Major overhaul of Rivendell&rsquo;s podcast handling features; see the ChangeLog for all the details<br />
* <font style="color:green">Functionality</font>: Modified the GVC7000 switcher driver to insert 50 mS pauses between protocol commands<br />
* <font style="color:green">Functionality</font>: Allow RN Macro to run when Rivendell daemons running as non-root<br />
* <font style="color:green">Functionality</font>: Many changes to rdadmin(1), including:<br />
:* Added whitespace to the set of banned characters for service names<br />
:* Added a &lsquo;SSH Ident. File&rsquo; control to the &lsquo;Host&rsquo; dialog<br />
:* Added an &lsquo;Inline Traffic Inheritance&rsquo; control to the &lsquo;Edit Service&rsquo; dialog<br />
:* Added type icons to the &lsquo;Imported Events&rsquo; list in the &lsquo;Test Import&rsquo; dialog<br />
:* Renamed the &lsquo;Inline Traffic Inheritance&rsquo; control to &lsquo;Inline Traffic Start/Length&rsquo; and moved it to the &lsquo;Music Data Import&rsquo; section of the &lsquo;Edit Service&rsquo; dialog<br />
:* Added an &lsquo;Encoder Profiles&rsquo; dialog<br />
:* Renamed the &lsquo;Note Cart String&rsquo; controls to &lsquo;Insert Marker String&rsquo; in the &lsquo;Edit Service dialog<br />
:* Added an &lsquo;Origin E-Mail Address&rsquo; control to the &lsquo;System-Wide Settings&rsquo; dialog<br />
:* Added a &lsquo;Notification E-Mail Addresses&rsquo; control to the &lsquo;Group&rsquo; dialog<br />
:* Added a &lsquo;Send e-mail reports&rsquo; checkbox to the &lsquo;Dropbox Configuration&rsquo; dialog<br />
:* Added &lsquo;E-Mail Address&rsquo;, &lsquo;Phone Number&rsquo; and &lsquo;Local Auth&rsquo; columns to the &lsquo;Users&rsquo; list in the &lsquo;Rivendell User List&rsquo; dialog<br />
:* Added an &lsquo;Administer RSS Feeds&rsquo; checkbox to the &lsquo;Administrative Rights&rsquo; section of the &lsquo;User&rsquo; dialog<br />
:* Added a deprecation warning for the &lsquo;Allow Duplicate Cart Titles&rsquo; and &lsquo;Auto-Correct Duplicate Cart Titles&rsquo; checkboxes on the &lsquo;System-Wide Settings&rsquo; dialog<br />
* <font style="color:green">Functionality</font>: Added support for FTPS protocol for uploading, downloading, and Feed management<br />
* <font style="color:green">Functionality</font>: Significant update to the Rivendell Web interfaces (Web API, WebGet service, rivwebcapi API, etc.)<br />
* <font style="color:green">Functionality</font>: Added &lsquo;--scheduler-code=&rsquo; switch to rdexport(1)<br />
* <font style="color:green">Functionality</font>: Added generation of an &lsquo;RDLogManager Error Report&rsquo; when errors are detected when importing an external scheduler file in rdlogmanager(1)<br />
* <font style="color:green">Functionality</font>: Restored operation of Label/Note carts in rdlogmanager(1)<br />
* <font style="color:green">Functionality</font>: Updated rdservice(8) to use standard exit code defines<br />
* <font style="color:green">Functionality</font>: Implemented the &lsquo;--verbose&rsquo; switch for rdmaint(8)<br />
* <font style="color:green">Functionality</font>: Added a sample Fail2Ban jail filter for the WebAPI in &lsquo;conf/rivendell-webapi.conf&rsquo;<br />
* <font style="color:green">Functionality</font>: Added command line options &lsquo;--output-pattern&rsquo;, &lsquo;--ticket=&rsquo;, &lsquo;--send-mail&rsquo; and &lsquo;--mail-per-file&rsquo; to rdimport(1)<br />
* <font style="color:green">Functionality</font>: Added the name of the import file to schedule import failure reports<br />
* <font style="color:orange">Documentation</font>: Documented the &lsquo;%%&rsquo; filepath wildcard in the Operations Guide<br />
* <font style="color:orange">Documentation</font>: Added an &lsquo;RDCastManager&rsquo; chapter to the Operations Guide<br />
* <font style="color:orange">Documentation</font>: Revised the &lsquo;Managing Services&rsquo; section of the Operations Guide<br />
* <font style="color:orange">Documentation</font>: Rewrote the &lsquo;Webget&rsquo; chapter of the Operations Guide to conform to changes in Webget<br />
* <font style="color:orange">Documentation</font>: Added a &lsquo;Configuring Webget&rsquo; section to the Operations Guide<br />
* <font style="color:orange">Documentation</font>: Removed the &lsquo;Cart Data Dump (fixed width)&rsquo; from the Operations Guide<br />
* <font style="color:orange">Documentation</font>: Documented user-facing changes to the &lsquo;System-Wide Settings&rsquo; dialog, the &lsquo;Rivendell Group List&rsquo; and the &lsquo;Group&rsquo; dialogs in rdadmin(1) in the Operations Guide<br />
* <font style="color:orange">Documentation</font>: Documented the &lsquo;Send e-mail reports&rsquo; checkbox in the &lsquo;Dropbox Configuration&rsquo; dialog in rdadmin(1) in the Operations Guide<br />
* <font style="color:blue">Code (internal) change</font>: Prepended &lsquo;RD_&rsquo; to the names of all common Javascript functions in &lsquo;web/common/utils.js&rsquo;<br />
* <font style="color:blue">Code (internal) change</font>: Added a &lsquo;webget&rsquo; subpackage to the &lsquo;make rpm&rsquo; target<br />
* <font style="color:blue">Code (internal) change</font>: Refactored the &lsquo;Run Script&rsquo; [&rsquo;RN&rsquo;] RML to invoke scripts via the system shell, this change also removed the dependency on runuser(1)<br />
<br />
=== 3.4.1 (2020-07-21) ===<br />
* Database verson '''317'''<br />
<br />
* <font style="color:green">Functionality</font>: Added a &lsquo;Results Report&rsquo; report in rdadmin(1)<br />
* <font style="color:green">Functionality</font>: Removed the checkbox from the &lsquo;Delete&rsquo; right-click menu item in the &lsquo;Edit Event&rsquo; dialog in rdlogmanager(1)<br />
* <font style="color:green">Functionality</font>: Modified &lsquo;RDWaveFile&rsquo; to work around known fencepost errors in WAV files generated by "Sonic Studio soundBlade" by "PME Mastering, Inc."<br />
* <font style="color:green">Functionality</font>: Modified the &lsquo;Edit Event&rsquo; dialog in rdlogmanager(1) to show &lsquo;[auto]&rsquo; as the transition type for the leading event in Pre-/Post-Import lists<br />
<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdlibrary(1) that caused cuts to be incorrectly sorted when scheduled &lsquo;By Specified Order&rsquo;<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in the Rivendell command line apps that caused value-only arguments containing &lsquo;=&rsquo; characters to be incorrectly parsed<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in the Podcast Manager, Library Exporter and Web API that caused an error when processing multipart-mime submissions containing &lsquo;=&rsquo; characters<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdairplay(1) where attempting to audition an audio cart with a disabled cue output would crash the application<br />
* <font style="color:red">Bug fix</font>: Fixed a regression in rdairplay(1) that caused the &lsquo;Forced Segue&rsquo; setting in rdadmin(1) to be ignored when executing an event with a hard start attribute<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdairplay(1) where a paused event could not be removed by dropping the empty cart on it<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdairplay(1) that cause incorrect pie timer indications after adding or deleting events to a running log<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdlibrary(1) that would cause a crash when attempting to delete a range of cuts, one of which was in the clipboard<br />
* <font style="color:red">Bug fix</font>: Fixed a math bug in rdairplay(1) that caused the estimated stop-down times in the post point widget to be incorrect after adding or removing events from a running log<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdadmin(1) that made it impossible to enter useful strings in the &lsquo;WaveForm Caption&rsquo; control on the &lsquo;Edit RDLogEdit&rsquo; dialog<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in RDRenderer that caused segue transitions to be rendered without regard to the &lsquo;No Fade on Segue Out&rsquo; checkbox in the &lsquo;Edit Audio&rsquo; dialog<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in ripcd(8) that caused connections to ModbusTCP devices to fail to be properly restored by the connection watchdog<br />
* <font style="color:red">Bug fix</font>: Fixed a regression in the &lsquo;Edit Event&rsquo; dialog in rdlogmanager(1) that caused the first cart transition type to be incorrect when the &lsquo;Pre-Import Carts&rsquo; list was populated<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in the &lsquo;Add Next&rsquo; [&rsquo;PX&rsquo;] RML that failed to return an error when an invalid offset value was supplied<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in the &lsquo;Add Next&rsquo; [&rsquo;PX&rsquo;] RML that failed to honor the &lsquo;Default Trans. Type&rsquo; setting in the &lsquo;Configure RDAirPlay&rsquo; dialog in rdadmin(1)<br />
<br />
=== 3.4.0 (2020-05-19) ===<br />
* Database verson '''317'''<br />
* <font style="color:red">Bug fix</font>: Fixed a regression in rdairplay(1) that caused two events to be started by a single spacebar tap if a SoundPanel event had been played previously<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdlogmanager(1) that caused the initial event in an imported set to fail receive the proper time and transition type if the &lsquo;Include Import Markers in Finished Logs&rsquo; checkbox in rdadmin(1) had not been ticked<br />
* <font style="color:red">Bug fix</font>: Fixed a regression in rdexport(1) that caused exported file names to be constructed improperly<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdlogmanager(1) that caused &lsquo;Make Post Point&rsquo; label to be displayed without last &lsquo;t&rsquo;<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdairplay(1) where timer was not set properly when crossing midnight<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in the &lsquo;List GPIs&rsquo; dialog in rdadmin(1) that prevented changes in GPI assignments from being propagated to the underlying device<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in the &lsquo;Software Authority&rsquo; driver that caused autodetection of the number of GPIOs in a router to be unreliable<br />
* <font style="color:red">Bug fix</font>: Fixed a regression in &lsquo;RDEventLine&rsquo; that caused the &lsquo;Append Log&rsquo; [&rsquo;AL&rsquo;] RML to append a copy of the currently loaded log instead of the one specified in the RML command<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdlogedit(1) that caused garbled text to appear when &lsquo;Start Immediately&rsquo; was selected in the &lsquo;Edit Log Entry&rsquo; dialog box<br />
* <font style="color:red">Bug fix</font>: Fixed a regression that broke the ability to scroll through Sound Panel panels by means of the mouse wheel<br />
<br />
* <font style="color:green">Functionality</font>: Modified rdairplay(1) to always scroll log to the top when using the hour selector<br />
* <font style="color:green">Functionality</font>: Modified rdlogmanager(1) to disable merge buttons if the selected log does not contain any import links<br />
* <font style="color:green">Functionality</font>: Modified rdadmin(1) Edit Service dialog to display built-in traffic and music import template values<br />
* <font style="color:green">Functionality</font>: Added "Copy To Custom" buttons to rdadmin(1) Edit Service dialog<br />
* <font style="color:green">Functionality</font>: Changed the layout of the &lsquo;Editing Event&rsquo; dialog in rdlogmanager<br />
<br />
* <font style="color:green">Functionality</font>: Removed the &lsquo;Post Point&rsquo; checkbox from the &lsquo;Editing Event&rsquo; dialog in rdlogmanager(1)<br />
* <font style="color:green">Functionality</font>: Renamed the &lsquo;REMARKS&rsquo; field to &lsquo;USER NOTES&rsquo; in the &lsquo;Editing Event&rsquo; and the &lsquo;Edit Clock&rsquo; dialogs in rdlogmanager(1)<br />
* <font style="color:green">Functionality</font>: Added a &lsquo;Trans&rsquo; column to the event list in the &lsquo;Edit Clock&rsquo; and the &lsquo;List Events&rsquo; dialogs in rdlogmanager(1)<br />
<br />
=== 3.3.0 (2020-03-16) ===<br />
* Database verson '''314'''<br />
* <font style="color:red">Bug fix</font>: Fixed regressions in the following switcher drivers that could cause deadlocks and intermittent operation<br />
:* BroadcastTools SS16.4<br />
:* BroadcastTools SS 4.2<br />
:* BroadcastTools SS4.4<br />
:* BroadcastTools SS 8.2<br />
:* BroadcastTools ACS8.2<br />
:* BroadcastTools ADMS 44.22<br />
:* BroadcastTools GPI-16<br />
:* BroadcastTools SRC-16<br />
:* BroadcastTools SRC-8 III<br />
:* BroadcastTools SS 4.1 MLR<br />
* <font style="color:red">Bug fix</font>: Fixed a regression in the implementation of the &lsquo;Set Serial Trap&rsquo; [&lsquo;SI&rsquo;] RML that could cause deadlocks and intermittent operation<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdairplay(1) that could cause random segfaults when updating the Label Widget<br />
* <font style="color:red">Bug fix</font>: Fixed a bug with the &lsquo;%y&rsquo; metadata wildcard where garbage would be returned if a valid year had not been set<br />
* <font style="color:red">Bug fix</font>: Fixed a regression in rdlogmanager(1) that caused trailer whitespace to be generated in the &lsquo;EXT_DATA&rsquo;, &lsquo;EXT_EVENT&rsquo;, &lsquo;EXT_ANNC_TYPE&rsquo; and &lsquo;EXT_CART_NAME&rsquo; log fields when importing from a CounterPoint format log<br />
* <font style="color:red">Bug fix</font>: Fixed the layout of the &lsquo;Matching Carts&rsquo; field in rdlibrary(1)&rsquo;s main window when Realtime Filtering is disabled<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdairplay(1) that would cause a hard-timed log event with a &lsquo;wait&rsquo; parameter set to attempt to play the event twice<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rddbmgr(8) that threw a SQL error when attempting to modify a DB containing tables set to use character set UTF-8 to schema 297<br />
* <font style="color:red">Bug fix</font>: Fixed a race in ripcd(8) that caused arguments to the &lsquo;Run Shell Command&rsquo; [&lsquo;RN&rsquo;] macro to be corrupted<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in the &lsquo;Edit Event&rsquo; dialog in rdlogmanager(1) that caused the Transition Type dropdown to be greyed-out when the &lsquo;IMPORT&rsquo; controls were set to use the built-in music scheduler<br />
* <font style="color:green">Functionality</font>: Added a &lsquo;delta-seconds&rsquo; modifier to Filepath Wildcards to enable positive and negative time offsets<br />
* <font style="color:green">Functionality</font>: Removed support for CD-TEXT from the CD rippers<br />
* <font style="color:green">Functionality</font>: Added support for &lsquo;MusicBrainz&rsquo; CD metadata lookup<br />
* <font style="color:green">Functionality</font>: Added a &lsquo;Web Browser&rsquo; control to the &lsquo;Edit Host&rsquo; dialog in rdadmin(1)<br />
* <font style="color:green">Functionality</font>: Added support for displaying cover art in the MusicBrainz release chooser<br />
* <font style="color:green">Functionality</font>: Added &lsquo;%wm&rsquo; [&lsquo;MusicBrainz Recording ID&rsquo;] and &lsquo;%wr&rsquo; [&lsquo;MusicBrainz Release ID&rsquo;] metadata wildcards<br />
* <font style="color:green">Functionality</font>: Implemented the &lsquo;%wm&rsquo; [&lsquo;MusicBrainz Recording ID&rsquo;] and &lsquo;%wr&rsquo; [&lsquo;MusicBrainz Release ID&rsquo;] metadata wildcards for PyPAD<br />
* <font style="color:green">Functionality</font>: Added support for the &lsquo;%wi&rsquo;, &lsquo;%wm&rsquo; and &lsquo;%wr&rsquo; wildcards to the &lsquo;--metadata-pattern=&rsquo; switch in rdimport(1)<br />
* <font style="color:green">Functionality</font>: Added &lsquo;--set-string-isrc&rsquo;, &lsquo;--set-string-recording-mbid&rsquo; and &lsquo;--set-string-release-mbid&rsquo; switches to rdimport(1)<br />
* <font style="color:green">Functionality</font>: Added support for the &lsquo;%wi&rsquo;, &lsquo;%wm&rsquo; and &lsquo;%wr&rsquo; wildcards to the &lsquo;--metadata-pattern=&rsquo; switch in rdexport(1)<br />
* <font style="color:green">Functionality</font>: Added a &lsquo;%wc&rsquo; [&lsquo;Industry Standard Commercial Identification (ISCI) Code&rsquo;] metadata wildcard<br />
* <font style="color:green">Functionality</font>: Implemented the &lsquo;%wc&rsquo; metadata wildcard for PyPAD<br />
* <font style="color:green">Functionality</font>: Added support for the &lsquo;%wc&rsquo; wildcards to the &lsquo;--metadata-pattern=&rsquo; switch in rdimport(1)<br />
* <font style="color:green">Functionality</font>: Added &lsquo;--set-string-isci&rsquo; switch to rdimport(1)<br />
* <font style="color:green">Functionality</font>: Added support for the &lsquo;%wc&rsquo; wildcard to the &lsquo;--metadata-pattern=&rsquo; switch in rdexport(1)<br />
* <font style="color:green">Functionality</font>: Removed the &lsquo;RDLabel&rsquo; widget<br />
* <font style="color:green">Functionality</font>: Added a &lsquo;Disconnect All Jack Ports&rsquo; [&lsquo;JZ&rsquo;] RML<br />
* <font style="color:green">Functionality</font>: Added a &lsquo;CounterPoint Traffic Reconciliation v2&rsquo; report<br />
<br />
=== 3.2.1 (2020-01-24) ===<br />
* Database verson '''311'''<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdcatch(1) that threw a SQL error when clicking 'OK' on the &lsquo;Edit Cart Event&rsquo; dialog<br />
* <font style="color:red">Bug fix</font>: Fixed a regression in rdimport(1) that caused null characters to be written to cart metadata fields when importing files containing an &lsquo;AIR1&rsquo; RIFF chunk<br />
* <font style="color:red">Bug fix</font>: Fixed a regression in rdcatch(1) that caused the &lsquo;Source&rsquo; dropdown in the &lsquo;Edit Recording&rsquo; dialog to fail to be populated properly<br />
* <font style="color:red">Bug fix</font>: Fixed a regression in the cart selector dialog that caused default focus to be lost on the &lsquo;Filter&rsquo; control after second and subsequent invocations<br />
* <font style="color:red">Bug fix</font>: Fixed a regression in rdcatchd(8) that broke audio metering<br />
* <font style="color:red">Bug fix</font>: Fixed a regression in rdcatchd(8) that could cause download events to hang in an active state<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdcatch(1) that caused DOW flags to fail to be updated correctly on the event list after making a change<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdcatchd(8) that failed to send a MODIFY notification at the end of a Record or Download event<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdconvert that caused a segfault at startup<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdexport(1) that caused output filenames containing multi-byte UTF-8 characters to be corrupt<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdgpimon(1) that caused GPIO cart displays to fail to accurately reflect current state<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdgpimon(1) that caused incorrect state indications to be displayed after switching to a different page<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdimport(1) that caused non-Latin1 characters to be corrupted when using standard input<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdimport(1) that caused UTF-8 multibyte characters in filenames to be corrupted<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdlogmanager(1) that caused spurious log events to be inserted when generating a log<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in ripcd(8) that caused input and output counts to be calculated incorrectly for Software Authority protocol devices containing holes in the input and/or output lists<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in the &lsquo;pypad-shoutcast1.py&rsquo; script that threw an exception when processing PAD containing multi-type UTF-8 characters<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in the &lsquo;pypad_xds.py&rsquo; PyPAD script that could cause it to emit duplicate CIC updates<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in the &lsquo;rivwebcapi&rsquo; validate_tm() function that caused dates containing &lsquo;29 February&rsquo; to always fail regardless of leap-year validity<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in the rdxport service that could cause MODIFY notifications to fail to be sent by the &lsquo;SaveLog&rsquo; WebAPI call<br />
* <font style="color:red">Bug fix</font>: Fixed a regression in rdadmin(1) that caused controls to be hidden in the &lsquo;Edit Report&rsquo; dialog<br />
* <font style="color:red">Bug fix</font>: Fixed a regression in rdlogmanager(1) that caused incorrect logged start times to be generated for imported events<br />
* <font style="color:red">Bug fix</font>: Fixed a regression in the rdxport service that caused the ListCuts WebAPI call to return corrupt data<br />
* <font style="color:red">Bug fix</font>: Fixed a regression in the Web API that caused the and/or corrupt in served XML documents<br />
* <font style="color:green">Functionality</font>: Implemented support for non-realtime library filtering in the &lsquo;Editing Event&rsquo; dialog in rdlogmanager(1)<br />
* <font style="color:green">Functionality</font>: Added a &lsquo;Show Start Time As&rsquo; control to the &lsquo;Edit Log&rsquo; dialog in rdlogedit(1)<br />
* <font style="color:green">Functionality</font>: Made the rdlogedit(1) main window and &lsquo;Edit Log&rsquo; dialog window sizes persistent<br />
* <font style="color:green">Functionality</font>: Added a work-around in the &lsquo;PyPAD.Receiver().__openDb()&rsquo; method to work with versions of MySQLdb that do not support the &lsquo;password=&rsquo; parameter in &lsquo;MySQLdb.connect()&rsquo;<br />
* <font style="color:green">Functionality</font>: Added &lsquo;Repetitions=&rsquo; and &lsquo;RepetitionDelay=&rsquo; directive to the configuration of the &lsquo;pypad_xds.py&rsquo; PyPAD script<br />
* <font style="color:green">Functionality</font>: Added &lsquo;Username=&rsquo; and &lsquo;Password=&rsquo; directives to the &lsquo;pypad_httpget.py&rsquo; script for use for HTTP Basic Authentication<br />
* <font style="color:green">Functionality</font>: Added the ability to view a report at time of generation in rdlogmanager(1)<br />
* <font style="color:green">Functionality</font>: Adjusted the position of the &lsquo;Matching Carts&rsquo; readout on the main window of rdlibrary(1)<br />
* <font style="color:green">Functionality</font>: Changed the &lsquo;Time&rsquo; column in the &lsquo;Full Log Widget&rsquo; in rdairplay(1) to &lsquo;Sch. Time&rsquo;<br />
* <font style="color:green">Functionality</font>: Implemented a work-around for importing CartChunk data containing a buggy ENCO implemention of the &lsquo;AUD&rsquo; CartChunk timer<br />
* <font style="color:green">Functionality</font>: Modified the Full Log widget in rdairplay(1) to display logged start times even when the referenced cart does not exist<br />
* <font style="color:green">Functionality</font>: Tweaked the &lsquo;LogLineBox::mouseMoveEvent()&rsquo; method in rdairplay(1) to require a cursor movement of at least 20 pixels before generating a cart drag<br />
<br />
=== 3.2.0 (2019-10-31) ===<br />
* Database verson '''311'''<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rddbmgr(8) that caused a segfault when processing a SQL error<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdimport(1) that caused it to throw an exception when given a &lsquo;--metadata-pattern&rsquo; of less than three characters<br />
* <font style="color:red">Bug fix</font>: Fixed a regression in rdimport(1) that caused a segfault when invoked with the &lsquo;--metadata-pattern&rsquo; and &lsquo;--log-syslog&rsquo; switches<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdairplay(1) that caused space bar presses to start the next event in the Main Log even when &lsquo;Space Bar Action&rsquo; was set to &lsquo;None&rsquo;<br />
* <font style="color:red">Bug fix</font>: Fixed bugs in 'RDWaveFile' that caused strings of null characters to be written into unfilled CartChunk string fields<br />
* <font style="color:red">Bug fix</font>: Fixed a regression in 'rdxport.cgi' that caused a check of the Rivendell services to be triggered each time a WebAPI function was invoked<br />
* <font style="color:red">Bug fix</font>: Fixed a regression in rdsoftkeys(1) that threw a segfault at startup<br />
* <font style="color:green">Functionality</font>: Added the ability to configure the caption displayed for the first and third voicetrack waveforms in the Voicetracker dialog in rdlogedit(1)<br />
* <font style="color:green">Functionality</font>: Reworked the font management system to permit the fonts used in the UI to be specified in rd.conf(5).<br />
* <font style="color:green">Functionality</font>: Added support for posting podcast content via SFTP<br />
* <font style="color:orange">Documentation</font>: Added manual pages for rd.conf(5) and rdsoftkeys(1)<br />
<br />
=== 3.1.0 (2019-09-19) ===<br />
* Database verson '''310'''<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdairplay(1) and rdvairplayd(8) where only the first log machine set to &lsquo;load specified log&rsquo; would do so<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdlogedit(1) that caused hard start log items to have the Hour field doubled<br />
* <font style="color:red">Bug fix</font>: Refactored the Python &lsquo;pypad.Update.shouldBeProcessed()&rsquo; method to work correctly when using <tt>try:</tt> blocks in a PyPAD script<br />
* <font style="color:red">Bug fix</font>: Refactored the PyPAD scripts to route updates properly in accordance with log directives in their configuration file<br />
* <font style="color:red">Bug fix</font>: Fixed a bug that broke dropbox logging to individual files<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in caed(8) that broke timescaling support<br />
* <font style="color:red">Bug fix</font>: Fixed bugs in rdlibrary(1) that broke CD ripping<br />
* <font style="color:green">Functionality</font>: Refactored rdalsaconfig(1) to be more robust and intuitive<br />
* <font style="color:green">Functionality</font>: Added a &lsquo;pypad_httpget.py&rsquo; PyPAD script<br />
* <font style="color:green">Functionality</font>: Updated CDDB code to use protocol level 6 (UTF-8 enabled)<br />
* <font style="color:green">Functionality</font>: Added an &lsquo;%l&rsquo; wildcard to Filepath Wildcards for &lsquo;unpadded month&rsquo;<br />
=== 3.0.3 (2019-08-05) ===<br />
* Database verson '''308'''<br />
* <font style="color:red">Bug fix</font>: Fixed a regression in ripcd(8) that broke the 'Connect Jack Ports' ['JC'] and 'Disconnect Jack Ports' ['JD'] RMLs<br />
=== 3.0.2 (2019-07-31) ===<br />
* Database verson '''308'''<br />
* <font style="color:red">Bug fix</font>: Fixed a problem with the Local Audio Adapter switcher driver that caused incorrect operation with the 'Switch Add' ['SA'], 'Switch Remove' ['SR'] and 'Switch Take' ['ST'] RMLs<br />
* <font style="color:red">Bug fix</font>: Fixed a regression in rdlibrary(1) that caused macro carts entries to turn red after being viewed<br />
* <font style="color:red">Bug fix</font>: Fixed regressions that made operations with serial devices unreliable<br />
* <font style="color:green">Functionality</font>: Added support for switchers using the Grass Valley 7000 series protocol<br />
=== 3.0.1 (2019-07-16) ===<br />
* Database verson '''308'''<br />
* <font style="color:red">Bug fix</font>: Rivendell is now Unicode UTF-8 clean<br />
* <font style="color:red">Bug fix</font>: Qt4 is now used throughout Rivendell instead of Qt3<br />
* <font style="color:green">Functionality</font>: The Rivendell Loadable Modules system for processing PAD data has been completely replaced by PyPAD, allowing PAD processing plug-ins to be written in the popular Python scripting langauge. Backward compatible replacement scripts for many of the RLM plug-ins supplied in Rivendell v2.x are included<br />
* <font style="color:green">Functionality</font>: Added a compatibility library to facilitate the use of the Rivendell Web API in external applications<br />
* <font style="color:green">Functionality</font>: A system of virtual log machines has been added, allowing play-out of up to 23 logs simultaneously<br />
* <font style="color:green">Functionality</font>: Rivendell is now fully systemd compatibile<br />
* <font style="color:green">Functionality</font>: The Windows ports of rdlogedit(1) and rdlogmanager(1) have been removed<br />
* <font style="color:orange">Documentation</font>: The Rivendell Operations and Administration Guide has been updated and enhanced with more details about running a Rivendell system<br />
* <font style="color:orange">Documentation</font>: New manual pages have been added for Rivendell command that previously did not have them<br />
See [http://caspian.paravelsystems.com/pipermail/rivendell-dev/2019-July/027867.html this message] on the Rivendell Dev mailing list for more details about installing and upgrading Rivendell.<br />
=== 2.19.3 (2018-10-31) ===<br />
* Database verson '''275'''<br />
* <font style="color:red">Bug fix</font>: Fixed a bug that caused the &lsquo;Switcher Matrix&rsquo; and &lsquo;Switcher Output&rsquo; dropdowns to populate incorrect values when selecting a non-local &lsquo;Switcher Host&rsquo; in the &lsquo;Configure RDCatch&rsquo; dialog in rdadmin(1)<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdlogmanager(1) that caused the initial transition type specified in the &lsquo;IMPORT&rsquo; section of the &lsquo;Editing Event&rsquo; dialog to be applied to both the parent log link and the first imported event when the &lsquo;PRE-IMPORT CARTS&rsquo; list was empty and no Timed Start was enabled<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in ripcd(8) that caused process of the &lsquo;Air Gate&rsquo; [&lsquo;AG&rsquo;] RML to fail<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdimport(1) that would throw a spurious SQL error when using the &lsquo;--to-cart=&rsquo; switch with an already existing cart [Issue #000217]<br />
* <font style="color:red">Bug fix</font>: Fixed a regression that caused rdimport(1) to return a &lsquo;no free carts available in specified group&rsquo; when invoked without the &lsquo;--to-cart=&rsquo; option<br />
* <font style="color:red">Bug fix</font>: Fixed a regression in rdairplay(1) that caused carts Added or Copied to a log to have a PLAY transition regardless of the default transition type set in rdadmin(1)<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in &lsquo;RDTextValidator&rsquo; that failed to catch banned characters added to the interior of existing strings<br />
* <font style="color:red">Bug fix</font>: Various other bugs fixed<br />
* <font style="color:green">Functionality</font>: Added a &lsquo;TranscodingDelay=&rsquo; parameter to the &lsquo;[Tuning]&rsquo; section of rd.conf(5)<br />
* <font style="color:green">Functionality</font>: Added a Switcher/GPIO driver for the BroadcastTools SS 2.1 switcher<br />
* <font style="color:green">Functionality</font>: Added support for GPIO on AudioScience adapters to the 'Local Audio Adapter' Switcher/GPIO driver<br />
* <font style="color:green">Functionality</font>: Renamed the 'Add Next' ['PX'] RML to 'Insert Cart' ['PX'] and added two optional arguments to allow specification of the insertion position and transition type<br />
* <font style="color:green">Functionality</font>: Added support for Spinitron v2 to the 'spinitron_plus' RLM<br />
* <font style="color:green">Functionality</font>: Added an &lsquo;ExportedFileMode=&rsquo; parameter to the &lsquo;[Tuning]&rsquo; section of rd.conf(5) to permit permission mode of exported audio files to be specified<br />
* <font style="color:orange">Documentation</font>: Documented GPIO support for AudioScience cards in the &lsquo;Local Audio Adapter&rsquo; section of the Operations Guide<br />
<br />
=== 2.19.2 (2018-04-14) ===<br />
* Database verson '''275'''<br />
* <font style="color:red">Bug fix</font>: Fixed a regression in the HPI support layer that broke audio capture with adapters lacking DMA bus-mastering support<br />
<br />
=== 2.19.1 (2018-03-27) ===<br />
* Database verson '''275'''<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdlogmanager(1) that caused DB corruption when a clock was deleted while still being assigned to a grid.<br />
* <font style="color:green">Functionality</font>: Implemented support for DMA bus-mastering for AudioScience HPI devices. This release supports the latest ASI cards that require DMA bus-mastering support. You may also need to update the hpklinux driver to v4.20.10 or later. RPMs for CentOS 7 are available at [http://static.paravelsystems.com/audioscience/centos/7/ Paravel&rsquo;s website].<br />
* <font style="color:green">Functionality</font>: Removed rdhpiinfo(8). Replaced by the stand-alone &lsquo;hpiinfo&rsquo; package.<br />
* <font style="color:green">Functionality</font>: Removed the event time check for Playout events in rdcatch(1), as there is no sane way to determine a consistently &lsquo;free&rsquo; playout time in the face of shifting cut lengths.<br />
<br />
=== 2.19.0 (2018-02-22) ===<br />
* Database verson '''275'''<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdlibrary(1) that caused evergreen carts/cuts to fail to be highlighted in the correct color<br />
* <font style="color:green">Functionality</font>: Added the ability to specify automatic log deletion on the basis of either the Creation Date or Air Date of the log<br />
* <font style="color:green">Functionality</font>: Log Importation Changes. Changed music and traffic importation so that parent link events are still visible in linked logs<br />
* <font style="color:green">Functionality</font>: Log Locking: implemented a system-wide protocol to prevent changes made to a log on one host from being inadvertently overwritten from another host<br />
<br />
=== 2.18.2 (2017-12-29) ===<br />
* Database version '''272'''<br />
* <font style="color:red">Bug fix</font>: Fixed a bug that caused creation of new clocks in rdlogmanager(1) to fail to initialize music scheduler components correctly in the database<br />
<br />
=== 2.18.1 (2017-12-22) ===<br />
* Database version '''272'''<br />
* <font style="color:red">Bug fix</font>: Fixed a bug that caused creation and initialization of a new Rivendell database to fail<br />
<br />
=== 2.18.0 (2017-12-21) ===<br />
* Database version updated to '''272'''<br />
* <font style="color:red">Bug fix</font>: Various bug fixes. See the [https://github.com/ElvishArtisan/rivendell/blob/stable/ChangeLog ChangeLog] for details<br />
* <font style="color:green">Functionality</font>: Group Cut Expiration Policy: Added the ability to set a default End Date/Time for new cuts on a per-group basis<br />
* <font style="color:green">Functionality</font>: Host Short Name: Added a ''Short Name'' parameter to Host profiles<br />
* <font style="color:green">Functionality</font>: Macro Carts: It is now possible to use filepath wildcards in macro carts<br />
* <font style="color:green">Functionality</font>: New Host Wildcards: Added two host wildcards: ''%r'' for ''Rivendell Host Name, and ''%R'' for ''Rivendell Short Name''<br />
* <font style="color:green">Functionality</font>: Provisioning Support: Added four new directives and to the ''[Provisioning]'' section of ''/etc/rd.conf''<br />
* <font style="color:green">Functionality</font>: MySQL Configuration: Added three parameters to the ''[mySQL]'' section of ''/etc/rd.conf''<br />
* <font style="color:green">Functionality</font>: Dropbox Enhancements: Added the ability to specify creation of default Segue Markers when processing files via dropbox<br />
* <font style="color:green">Functionality</font>: '''RDImport'''/DropBox Enhancements: Added the ability to specify start and end datetimes via metadata pattern<br />
* <font style="color:green">Functionality</font>: '''RDCatch''' Event Filtering: Added the ability to filter by event type in '''RDCatch'''<br />
* <font style="color:green">Functionality</font>: Log Searching: A search filter (similar to that employed for seaching for carts) has been added to the List Logs dialogs<br />
* <font style="color:green">Functionality</font>: Service Filtering in '''RDLogEdit''': Added the ability to limit the visible set of logs in RDLogEdit by user<br />
* <font style="color:green">Functionality</font>: Log Purge/Deletion Changes: Logs created manually (in rdlogedit(1) or rdairplay(1)) are now assigned a default purge/deletion date in accordance with the setting in RDAdmin->ManageServices<br />
* <font style="color:green">Functionality</font>: Log Importation Changes: Changed music and traffic importation so that parent link events are still visible in linked logs<br />
* <font style="color:green">Functionality</font>: Web API Changes: Added &lsquo;FILTER&rsquo; and &lsquo;RECENT&rsquo; call parameters to the &lsquo;ListLogs&rsquo; Web API call<br />
* <font style="color:orange">Documentation</font>: Documentation Overhaul: The Rivendell Operations and Administration Guide has been exapanded and incorporated as part of the base Rivendell source in ''docs/opsguide''. This guide is available as a separate CentOS package: ''rivendell-opsguide''<br />
* <font style="color:orange">Documentation</font>: Rivendell APIs: The various application programming interfaces (notably the web API) is now documented and is included with the standard distribution<br />
<br />
=== 2.17.0 (2017-10-11) ===<br />
* Database version updated to '''268'''<br />
* <font style="color:red">Bug fix</font>: Web API: Many fixes and enhancements to improve operation<br />
* <font style="color:red">Bug fix</font>: Many other bug fixes; see the [https://github.com/ElvishArtisan/rivendell/blob/stable/ChangeLog ChangeLog] for all the details (search for ''2.17.0'' and work your way backward through the list of changes)<br />
* <font style="color:green">Functionality</font>: Dropboxes: Added the ability to force imports to be imported as mono, also added the ability to reset individual dropboxes<br />
* <font style="color:green">Functionality</font>: New Switcher/GPIO Devices: Support has been added for the following Switcher/GPIO devices:<br />
:* Broadcast Tools Universal 4.1 MLR&gt;&gt;Web Switcher<br />
:* WheatNet LIO<br />
:* WheatNet SLIO<br />
* <font style="color:green">Functionality</font>: Macros: Added the &lsquo;Air Gate&rsquo; &#91;&lsquo;AG&rsquo;&#93; RML to permit conditional execution of RML on the basis of the status of the On-Air flag<br />
* <font style="color:green">Functionality</font>: <br />
* <font style="color:green">Functionality</font>: User Authentication: It is now possible to configure RDLogin to require entry of the user-name, rather than picking the name off of a list. See the &lsquo;Show User List in RDLogin&rsquo; checkbox in RDAdmin-&gt;SystemSettings<br />
* <font style="color:green">Functionality</font>: Log Rendering (EXPERIMENTAL): It is now possible to &lsquo;render&rsquo; a log as a single audio object (file or cart/cut) without the need to play it out while capturing the audio in realtime. Render support is available through the &lsquo;Render&rsquo; button in RDLogEdit and through the command-line rdrender(1) utility. See the rdrender(1) man page for details<br />
* <font style="color:green">Functionality</font>: Provisioning Support. Added a [Provisioning] section to rd.conf(5) with directives to facilitate the automatic provisioning of Rivendell instances. See the comments in the [Provisioning] section of the sample rd.conf(5) file<br />
* <font style="color:orange">Artwork</font>: New Icons: Implemented a new icon set, with individualized icons for each Rivendell module<br />
<br />
=== 2.16.0 (2017-06-02) ===<br />
* Database version updated to '''263'''<br />
* <font style="color:red">Bug fix</font>: Many bug fixes; see the [https://github.com/ElvishArtisan/rivendell/blob/stable/ChangeLog ChangeLog] for all the details (search for ''2.16.0'' and work your way backward through the list of changes)<br />
* <font style="color:green">Functionality</font>: Audio Store Hashing. Rivendell now automatically generates a SHA1 hash for each file in the audio store and records this value in the database, thus permitting automated recovery of audio in the event of loss or damage to the audio store's filesystem directory<br />
* <font style="color:green">Functionality</font>: Added switcher support for Kernel GPIO devices, such as the GPIO interface on the Raspberry Pi 2 and 3<br />
* <font style="color:green">Functionality</font>: Added switcher support for Modbus TCP devices<br />
* <font style="color:green">Functionality</font>: Added an rdconvert(1) utility<br />
* <font style="color:green">Functionality</font>: It is now possible to delegate authentication of Rivendell users by means of a PAM module, thus permitting &lsquo;''single sign-on''&rsquo; integration with systems such as ActiveDirectory and FreeIPA<br />
* <font style="color:green">Functionality</font>: Added various methods to the Rivendell Web API to permit integration with external audio and log editors<br />
<br />
=== 2.15.3 (2017-03-24) ===<br />
* Database version '''259''' <br />
* <font style="color:red">Bug fix</font>: Fixed bugs in MP3 file importation that caused files with variable bit rate (VBR) to be truncated during import.<br />
* <font style="color:red">Bug fix</font>: Fixed a bug that caused dynamically loaded codec libraries to fail to be detected if the corresponding library&rsquo;s so-called ''-devel'' package was not installed. <br />
* <font style="color:green">Functionality</font>: Added an ''RLM'' for generating [http://tagstation.com/ TagStation] RLM events for [http://nextradioapp.com/ NextRadio].<br />
* <font style="color:green">Functionality</font>: Added '''AddLog''', '''DeleteLog''' and '''SaveLog''' calls to the web API, along with general cleanup and correction of the overall Web API subsystem.<br />
<br />
=== 2.15.2 (2017-01-13) ===<br />
* Database version '''259'''<br />
* <font style="color:orange">Documentation</font>: Document the interfaces for '''inserting inline traffic breaks''' and for '''inserting voice track markers''' (also add an example in ''docs/examples/'')<br />
* <font style="color:red">Bug fix</font>: in ''rdadmin/createdb.cpp'' that caused obsolete fields in the 'SERVICES' table to be included when creating a new database.<br />
* <font style="color:red">Bug fix</font>: in ''lib/rdwavefile.cpp'' that caused RDXL chunks to be written with odd chunk lengths.<br />
* <font style="color:red">Bug fix</font>: in ''lib/rdsimpleplayer.cpp'' that caused RDAirPlay to freeze when attempting to audition an expired cart.<br />
* <font style="color:green">Functionality</font>: Added a '''LockRdairplayMemory=''' parameter to the [Hacks] section.<br />
* <font style="color:green">Functionality</font>: Modified the LiveWire Multicast GPIO driver to generate GPO events using the 'I' event type.<br />
<br />
=== 2.15.1 (2016-08-05) ===<br />
* Database version '''259'''<br />
* <font style="color:red">Bug fix</font>: fixed WAV file export code to enhance compatibility with third-party applications<br />
<br />
=== 2.15.0 (2016-07-29) ===<br />
* <font style="color:red">Bug fix</font>: complete support for the MySQL/MariaDB InnoDB database engine (for better transaction processing of database updates)<br />
* <font style="color:green">Functionality</font>: enhancements to ''rdexport'' that include full metadata in RDXML format<br />
* <font style="color:green">Functionality</font>: add CLI command ''rdclilogedit'' that enables editing of Rivendell Logs from the command line (without a GUI app)<br />
* <font style="color:green">Functionality</font>: Update the database to version 259.<br />
<br />
=== 2.14.1 (2016-06-11) ===<br />
* Database version '''258'''<br />
* <font style="color:red">Bug fix</font>: additional fixes for newer versions of MySQL (and MariaDB)<br />
<br />
=== 2.14.0 (2016-06-10) ===<br />
* Database version '''258'''<br />
* <font style="color:green">Functionality</font>: add the ability to capture real-time events in RDCatch recordings and replay the events in sync with the captured audio<br />
* <font style="color:green">Functionality</font>: add RML Macro ''Cut Event'' (''CE'') for placing real-time event markers into active RDCatch recordings<br />
* <font style="color:green">Functionality</font>: add support for specifying precise start time and length parameters for Traffic events that are embedded in Music events<br />
* <font style="color:red">Bug fix</font>: fixed a bug in RDAdmin that could cause creation of a new database to fail<br />
* <font style="color:red">Bug fix</font>: fix issues that prevent compilation under newer versions of the GNU C compiler suite<br />
* <font style="color:red">Bug fix</font>: various enhancements and fixes to the new(ish) ''rdexport'' utility<br />
* <font style="color:red">Bug fix</font>: initial support for newer versions of MySQL (and MariaDB)<br />
* <font style="color:red">Bug fix</font>: add code to allow embedded traffic breaks to be specified with start time and length in the music schedule.<br />
<br />
=== 2.13.0 (2016-05-10) ===<br />
* Database version '''255'''<br />
* <font style="color:green">Functionality</font>: add RLM plugin for the Paravel Systems ''WallTime'' clock<br />
* <font style="color:green">Functionality</font>: add new CLI command ''rdexport'' to export Carts with metadata<br />
* <font style="color:green">Functionality</font>: new report: ''Cut Log'' that includes the Description field for played events<br />
* <font style="color:red">Bug fix</font>: fixed a crash in RDLibrary when attempting to open multiple Carts<br />
* <font style="color:red">Bug fix</font>: fixed RDLogEdit to improve performance when saving and updating logs<br />
* <font style="color:red">Bug fix</font>: fixed a bug that caused marker data to be deleted when exporting a Cut<br />
<br />
=== 2.12.0 (2016-04-14) ===<br />
* Database version '''254'''<br />
* <font style="color:green">Functionality</font>: add support for sequential Cut play-out - you can now configure carts to play cuts in a fixed, sequential order rather than by weight value<br />
* <font style="color:green">Functionality</font>: add support for ''Broadcast Tools'' switchers<br />
* <font style="color:green">Functionality</font>: add RML macro '''Copy Cut''' (''CP'') to copy cuts between carts<br />
* <font style="color:green">Functionality</font>: add option to show only &ldquo;recent&rdquo; logs in RDLogEdit<br />
* <font style="color:green">Functionality</font>: add new web API methods related to Scheduler Codes<br />
* <font style="color:red">Bug fix</font>: fixed a bug that caused issues with Services containing the &ldquo;-&rdquo; (dash) character<br />
<br />
=== 2.11.0 (2015-09-18) ===<br />
* Database version '''252'''<br />
* <font style="color:green">Functionality</font>: add RDCatch upload/download protocols ''sftp'' and ''scp''<br />
* <font style="color:green">Functionality</font>: add support to import ''MP4/AAC'' files<br />
* <font style="color:green">Functionality</font>: add support for the ''Ross NK'' series video switcher<br />
* <font style="color:green">Functionality</font>: add support for ''PCM24'' in the core audio library code<br />
* <font style="color:red">Bug fix</font>: re-wrote the CD ripper code to make it faster and more reliable<br />
* <font style="color:red">Bug fix</font>: fixed several bugs related to audio data and buffering<br />
* <font style="color:red">Bug fix</font>: Normalized service clock data from the 'SERVICES' to the 'SVC_CLOCKS' table<br />
<br />
=== 2.10.3 (2015-02-24) ===<br />
* Database version '''242'''<br />
* <font style="color:green">Functionality</font>: add RLM (plugin) for Live365 streaming service (which is defunct as of Summer 2016)<br />
* <font style="color:green">Functionality</font>: add &ldquo;MrMaster&rdquo; and &ldquo;Spin Count&rdquo; reports<br />
* <font style="color:green">Functionality</font>: add support for audio switcher devices that use the &ldquo;Software Authority&rdquo; protocol<br />
* <font style="color:green">Functionality</font>: add ability to set segue markers in the CLI app ''rdmarkerset''<br />
* <font style="color:red">Bug fix</font>: fixed a bug that caused issues with Services containing a <Space> character in the service name<br />
<br />
=== 2.10.2 (2014-11-25) ===<br />
* Database version '''242'''<br />
* <font style="color:green">Functionality</font>: CLI ''rdimport'' enhancement: add two date-related options to the command<br />
* <font style="color:green">Functionality</font>: add column for ELR data in RDLogEdit<br />
* <font style="color:red">Bug fix</font>: fixed a bug in the Audio Science adapter for cards with only AES3 ports<br />
<br />
=== 2.10.1 (2014-11-04) ===<br />
* Database version '''242'''<br />
* <font style="color:green">Functionality</font>: add &ldquo;DSP utilization and profiling&rdquo; info for Audio Science adapters<br />
* <font style="color:green">Functionality</font>: add the column &ldquo;EXT DATA&rdquo; to the &ldquo;Edit Log&rdquo; screen in RDLogEdit<br />
* <font style="color:red">Bug fix</font>: fixed a memory fault (crash) in RDLogEdit when dropping a cart that was being used in a log</div>
DKlann
http://wiki.rivendellaudio.org/index.php?title=Stations_using_Rivendell&diff=618
Stations using Rivendell
2022-02-22T17:11:21Z
<p>DKlann: Add KCBP, 95.5 FM, Modesto, CA, US</p>
<hr />
<div>Here is a list of Radio stations that are using Rivendell.<br />
<br />
===AM Stations===<br />
====North America====<br />
*[[http://www.1010kbw.com KBBW-AM]] - 1010 KBW is a Christian teaching and talk station in Waco, Texas<br />
*[[http://www.kgnw.com KGNW-AM]] - KGNW AM 820 is a Christian teaching and talk station in Seattle-Tacoma, Washington<br />
*[[http://www.1590klfe.com KLFE-AM]] - 1590 KLFE is a Christian teaching and talk station in Seattle-Tacoma, Washington<br />
*[[http://www.1300kol.com KKOL-AM]] - News-Talk 1300 KOL is a news and talk station in Seattle-Tacoma, Washington<br />
*[[http://www.radiosol1360.com KKMO-AM]] - RADIO SOL 1360 AM is a spanish station in Seattle-Tacoma, Washington<br />
*[[http://www.salem.cc KTFH-AM]] - 1680 KTFH "The Bridge" is an international station in Seattle-Tacoma, Washington<br />
*[[http://www.1360wkat.com WKAT-AM]] - News-Talk 1360 WKAT is a news and talk station in Miami-Ft. Lauderdale-Hollywood, Florida<br />
*[[http://www.wlssradio.com WLSS-AM]] - News-Talk 930 WLSS is a news and talk station in Sarasota-Bradenton, Florida<br />
*[[http://www.860wgul.com WGUL-AM]] - News-Talk 860 WGUL is a news and talk station in Tampa-St. Petersburg-Clearwater, Florida<br />
*[[http://www.bayword.com WTBN-AM]] - WTBN 570 AM is a Christian teaching and talk station in Tampa-St. Petersburg-Clearwater, Florida<br />
*[[http://www.bayword.com WTWD-AM]] - WTWD 910 AM is a Christian teaching and talk station in Tampa-St. Petersburg-Clearwater, Florida<br />
*[[http://www.wdtkam.com WDTK-AM]] - WDTK 1400 AM is a News Talk station in Detroit, Michigan<br />
*[[http://www.am1500wlqv.com WLQV-AM]] - WLQV 1500 AM is a Christian teaching and talk station in Detroit, Michigan<br />
*[[http://www.krpiradio.com KRPI-AM]] - KRPI 1550 AM is an East Indian music and talk station in Ferndale, Washington<br />
*[[http://www.am1330kvol.com KVOL-AM]] - KVOL 1330 AM is a news talk station in Lafayette, Louisiana<br />
*[[http://www.fsr1520 KFXZ-AM]] - KFXZ 1520 AM is a Fox Sports Radio affiliate station in Lafayette, Louisiana<br />
*[[http://wutt.ut.edu WUTT]] - WUTT 1080 AM is the student radio station at the University of Tampa in Tampa, Florida.<br />
*[[http://classical959.com WCRI]] - WCRI 1180 AM is a classical music station in Hope Valley, Rhode Island.<br />
*[[http://www.wsjcradio.com WSJC]] - WSJC 810 AM is a Christian teaching and talk station in Magee, Mississippi.<br />
*[[http://www.wtcgradio.com WTCG]] - WTCG 870 AM is a Christian teaching and talk station in Mt Holly, North Carolina.<br />
*[[http://wxva.com WXVA]] - WXVA 610 AM is a full service greatest hits of all time station in Winchester, VA.<br />
*Rolling Valley Radio - 1700 AM is a US [[wikipedia:Title 47 CFR Part 15|FCC]] &ldquo;[https://www.hobbybroadcaster.net/resources/FCC-Part-15-regulations.php Part 15]&rdquo; low-power hobby broadcaster in Springfield, VA (suburban Washington DC).<br />
<br />
====Pacifica====<br />
*[[http://www.oar.org.nz Otago Access Radio]] - 105.4 / 1575 AM is a Community Access Radio Station in Dunedin, New Zealand.<br />
*Big Valley Radio 107.4 Thames Whangamata Whitianga on the Coromandel Peninsula, New Zealand<br />
<br />
====Europe====<br />
*[[http://www.insanityradio.com Insanity Radio]] - 1287AM, a student radio station in Egham, UK, at Royal Holloway, University of London (only for sustainer at present)<br />
<br />
===FM Stations===<br />
====Asia====<br />
*[[http://www.bigsound.com BIG Sound FM]] - Vanguard Radio Network's 101.5 BIG Sound FM Cabanatuan City and 95.9 BIG Sound FM Baguio City, Philippines.<br />
====Europe====<br />
*[[http://www.radiomax.dk Radio Max]] - broadcasting 24/7 in Denmark<br />
*[[http://www.felixstoweradio.co.uk Felixstowe Radio 107.5 FM]] A UK community radio station covering Felixstowe and the Colenis peninsula in sunny East Anglia. Rivendell plays pre-recorded and live-assisted content during the day for our FM and Internet stream output (overnight sustainer uses a separate commercial product) [[http://www.felixstoweradio.co.uk/link.m3u Internet stream]]<br />
*[[http://www.blackdiamondfm.com 107.8 Black Diamond FM]] Black Diamond FM is a community station serving Midlothian, Scotland. Rivendell plays non-stop music overnight and switches to IRN News by satellite every hour. [[http://www.blackdiamondfm.com/listen Stream link]]<br />
*[[http://www.radiohertz.de Hertz 87.9]] - Campus Radio in Bielefeld, Germany<br />
*[[http://www.hochschulradio-aachen.de Hochschulradio Aachen]] - Campus Radio Aachen, Campusradio of [http://www.rwth.de/ RWTH Aachen University], 99.1 MHz<br />
*[[http://helsinki.at Radio Helsinki]] - Radio Helsinki, free Radio Graz, Austria, 92.6 MHz<br />
*[[http://www.radiocampusamiens.com Radio Campus Amiens]] - Radio Campus Amiens, student Radio in the north of France, 24/7 w/Rivendell on 87.7 MHz<br />
*[[http://grafhit.net Graf'hit]] - student/community radio based in the [http://www.utc.fr University of Technology of Compiègne], France, 24/7 on 94.9MHz ([https://grafhit.net:8443/grafhit.mp3 stream]). Powered by free software.<br />
*[[http://www.hit-radio.be Hit Radio Namur]] - Commercial Radio in Namur/Belgium, 24/7 on 94.9 MHz<br />
*[[http://www.ras.cat R&agrave;dio Artesa de Segre]] - A municipal radio station serving Artesa de Segre and its municipality in Catalonia (Spain), 24/7 on 90.2 MHz thanks to Rivendell Audio.<br />
*[[http://www.radioaktiv.org radioaktiv]] Campusradio of the Universities of Mannheim, Heidelberg and Ludwigshafen (Germany)<br />
*[[http://www.radiom.fr RADIOM]] Student radio from Castres, France. Broadcasting 24/7 on 89.7 MHz<br />
*[[http://divergence-fm.org Divergence FM]] No commercial, associative radio from Montpellier (France). Broadcasting 24/7 on 93.9MHz. Full running on free software.<br />
*[[http://www.radiohw.co.uk Radio Hartley Wintney]] - Community RSL radio station running from [[http://www.stjohnshw.co.uk St. Johns Church]] for 2 weeks a year in Hartley Wintney, Hampshire, UK on 87.7FM.<br />
*[[http://www.radioer.pl Radio eR]] - broadcasting 24/7 in Lublin, Poland on 87.9 FM. <br />
*[[http://www.radioi.pl Radio i]] - broadcasting 24/7 in Białystok, Poland on 103.3 FM. <br />
*[[http://www.radiomalbork.fm Radio Malbork]] - broadcasting 24/7 in Malbork, Poland on 90.4 FM<br />
* [http://www.run.be La RUN] - student Radio broadcasting in Namur, Belgium on 88.1 FM<br />
* [http://www.radiolarzac.org Radio Larzac] - in Millau, France on 87.8 Mhz<br />
* [http://www.radiolaser.fr Radio Laser] - in Guichen near Rennes, France on 95.9 Mhz<br />
* [http://radioclapas.fr Radio Clapas] - in Montpellier, France on 93.5 Mhz<br />
* [http://www.radio-couleur-chartreuse.org Radio Couleur Chartreuse] - in The Chartreuse Mountains, France on 98,4 and 106 Mhz<br />
* [http://radiofontaine.fr Radio Fontaine] near Grenoble, France on 88.6 FM <br />
* [http://www.radio-gresivaudan.org Radio Grésivaudan] in Crolles near Grenoble, France 87.8, on 89 and 92.4 Mhz<br />
* [http://www.radiocampusrennes.fr Radio Campus Rennes] - in Rennes, France on 88.4 Mhz<br />
* [http://www.radio-active.net Radio Active] - in Toulon, France on 100.0 Mhz<br />
* [http://www.radiopac.fr Radio PAC] - in Pompadour, Corrèze, France on 101.9 Mhz<br />
* [http://www.radiogrilleouverte.com Radio Grille Ouverte] - in Alès, France on 88.2 Mhz<br />
* [http://www.radiofildeleau.fr Radio Fil de l'Eau] - in L'Isle-Jourdain, near Toulouse, France on 106.6 Mhz and Fleurance in Gers, France on 100.9 Mhz<br />
* [http://www.radiocampusmontpellier.fr Radio Campus Montpellier] - in Montpellier, France on 102.2 Mhz<br />
* [http://lalocale.ckdevelop.org Radio La Locale] - in Saint-Girons, France on 97.3 Mhz<br />
* [http://www.orleans.radiocampus.org Radio Campus Orléans] - student Radio in Orléans, 24/7 w/Rivendell on 88.3 MHz FM<br />
* [http://www.campusgrenoble.org Radio Campus Grenoble] - student Radio in Grenoble, 24/7 w/Rivendell on 90.8 MHz FM<br />
* [https://www.radiosaintaffrique.com Radio Saint-Affrique] - in Saint-Affrique, France on 96.7 but also 92.7 in Camarès, 99.9 in Belmont-sur-Rance and 100.6 in Millau<br />
<br />
====North America====<br />
*[[http://www.my997.org KDHE-LP My99.7]] - An independent radio station located in Spring Creek, NV and operated by the non-profit Spring Creek Christian Academy.<br />
*[[http://www.wlfc883.com WLFC-FM]] - Bringing independent label rock to Northwest Ohio from the University of Findlay<br />
*[[http://www.wgxc.org/ WGXC]] - 90.7 is a community radio station broadcasting to Greene and Columbia counties in New York. It is a project of [[http://wavefarm.org/ Wave Farm]].<br />
*[[http://www.smoothjazz106.com KKSJ-FM]] - 106.3 KKSJ is a Smooth Jazz radio station in Lafayette, Louisiana.<br />
*[[http://www.1059thefox.com KFXZ-FM]] - 105.9 KFXZ is a Country Legends radio station in Lafayette, Louisiana.<br />
*[[http://www.kdrt.org KDRT-LPFM]] - 101.5 KDRT-LP is a low-power non-commercial radio station serving Davis, California. Operated by [http://www.dctv.davis.ca.us Davis Community Television], KDRT is an important avenue for the voices in our community, especially those not typically found on commercial radio.<br />
*[[http://www.saskatoonchristianradio.com CFAQ-FM]] - 100.3 CFAQ is a Christian music station in Saskatoon, Canada.<br />
*KETL-LPFM - 100.5 is a Christian radio station in Republic Washington. We air both talk and music.<br />
*[[http://www.kdar.com KDAR-FM]] - 98.3 KDAR is a Christian teaching and talk station in Oxnard-Ventura, California<br />
*[[http://www.kptz.org KPTZ]] - 91.9 KPTZ is a Class A non-commercial community station in Port Townsend, Washington, licensed to Radio Port Townsend, a 501(c)(3) non-profit. We are using a client/server implementation of Rivendell in an all digital studio environment. KPTZ programs music and locally originated programs. The Rivendell system keeps programs going out 24/7 with a small station staff.<br />
*[[http://www.92zew.net WZEW-FM]] - Commercial Triple A Music Fm located in Mobile, Al.<br />
*[[http://www.wmfo.org WMFO - Tufts Freeform Radio]] - 91.5 Medford: Tufts University Freeform and Community Radio. Broadcasting to Medford, Sommerville, Cambridge, & Boston Areas.<br />
*[[WPSA 98.3]] is the Official Radio Station of [[Paul Smith's College]] a non-commercial, terrestrial based station dedicated to the Paul Smith's College community. Proudly operating 100% on free and open source software.<br />
*[[http://witr.rit.edu WITR]] - WITR 89.7 is the student-run FM radio station at [http://rit.edu Rochester Institute of Technology]; Rochester, NY. WITR airs indie, alternative, and garage rock, with specialty shows in the evening hours.<br />
*[[http://www.wmnf.org/thesource WMNF HD-3]] - WMNF's HD-3 in Tampa, FL is a fully-automated news & public affairs channel that uses Rivendell to import/play/switch content from a variety of sources, including pre-recorded/podcasted shows, live Internet streams, and live satellite feeds.<br />
*[[http://www.wcdbfm.com WCDB SUNYRADIO]] - 90.9 University Radio in Albany, NY. We're a primarily music non-commercial alternative university/community station that has programming from all and cultures. We implement RAAbuntu to keep 24/7.<br />
*[[http://www.kaskradio.com KASK]] - KASK 91.5 FM is a Christian teaching and talk station in Vacaville, California.<br />
*[[http://www.kfhlradio.com KFHL]] - KFHL 91.7 FM is a Christian teaching and talk station in Bakersfield, California.<br />
*[[http://www.wgttradio.com WGTT]] - WGTT 91.5 FM is a Christian teaching and talk station in Esmeralda, Florida.<br />
*[[http://www.whfgradio.com WHFG]] - WHFG 91.3 FM is a Christian teaching and talk station in Lafayette, Louisiana.<br />
*[[http://classical959.com WCRI]] - WCRI 95.9 FM is a classical music station on Block Island, Rhode Island.<br />
*[[http://whrb.org WHRB]] - WHRB 95.3 FM is a student-operated station at Harvard University (Cambridge, Massachusetts).<br />
*[[https://kpsq.org/ KPSQ]] - KPSQ-LP 97.3 FM Fayetteville, AR &ldquo;Public Square Community Radio&rdquo;<br />
*[[https://wdrt.org WDRT]] - WDRT 91.9 FM is a community radio station powered by 90+ volunteers in Viroqua, WI<br />
*[[https://www.kfai.org KFAI]] - KFAI 90.3 FM Minneapolis MN, Fresh Air Community Radio, &ldquo;Radio Without Boundaries&rdquo;<br />
*[[https://wnuc.org WNUC-LP]] - WNUC-LP 96.7 FM Detroit, MI is a community radio station in the North End neighborhood<br />
*[[https://www.graceradio.net/ KGCE-LP]] - KGCE-LP 107.9 FM Modesto, California &ldquo;GraceRadio&rdquo; is a Christian teaching and music station<br />
*[[https://www.wrfi.org/ WRFI]] - WRFI 88.1 FM Ithaca, 91.9 FM Watkins Glen, New York is Community Radio for Ithaca NY and the surrounding area<br />
*[[https://naparadio.org/ Napa Radio Project]] - KCMU-LP 103.3 FM Napa, California, &ldquo;Great music for getting into some Good Trouble&rdquo;<br />
*[[https://grandarts.org/wcaa-lp/ WCAA]] - WCAA-LP 107.3 FM Albany, New York, &ldquo;The Voice&rdquo; of Albany NY, a project of Grand Street Community Arts, Inc.<br />
*[[http://kcbpradio.org/ KCBP]] - KCBP 95.5 FM Modesto, California<br />
<br />
====Pacifica====<br />
*[[http://www.countryradionetwork.com Country Radio]] - 87.7 FM Dunedin, New Zealand. (Since August 2008).<br />
*[[http://www.totalfm.nz Total FM]] - 107.3 FM Dunedin, New Zealand. (Since March 2012).<br />
<br />
====South America====<br />
*[[http://www.radio.ufscar.br Rádio UFSCar]] - 95.3 MHz Rádio UFSCar is a universitery radio station broadcasted from [http://ufscar.br UFSCar] Campus in São Carlos, São Paulo - Brazil.<br />
<br />
*[[http://www.sonidofm.net Sonido 104.3 FM]] - 104.3 MHz Sonido FM, is an Adult Contemporary Radio in San Carlos, Cojedes - Bolivarian Republic of Venezuela.<br />
<br />
*[[http://albaciudad.org Alba Ciudad 96.3 FM]] - 96.3 Mhz Alba Ciudad, A revolutionary cultural and socially oriented radio station in Caracas - Bolivarian Republic of Venezuela.<br />
<br />
*[[http://magicaradio.wordpress.com Mágica 106.3 FM]] - 106.3 Mhz FM Mágica, A communitary communicational project in Puerto Ayacucho, state of Amazonas - Bolivarian Republic of Venezuela.<br />
<br />
===Radio Station Chains===<br />
====North America====<br />
*[[http://www.worldradionetwork.org/ World Radio Network / Radio Cadena Manantial]] A Chain of not-for-profit radio stations along the USA/Mexico Border providing Christian programming in Spanish and English.<br />
**[[http://www.kbnj.org/ KBNJ-FM]] English station in Corpus Christi, TX (91.7)<br />
**[[http://www.kbnl.org/ KBNL-FM]] Spanish station in Laredo, TX (89.9)<br />
**KEPI-FM English Station in Eagle Pass, TX (88.7)<br />
**[[http://www.kepx.org/ KEPX-FM]] Spanish station in Eagle Pass, TX (89.5)<br />
**[[http://www.knog.org KNOG-FM]] Spanish station in Nogales, AZ (91.1) with translators in Tucson and Phoenix.<br />
**KRMB-FM Spanish station in Bisbee, AZ (90.1)<br />
**KRMC-FM Spanish station in Douglas, AZ (91.7)<br />
**[[http://www.kver.org/ KVER-FM]] Spanish station in El Paso, TX (91.1)<br />
**[[http://www.kvmv.org/ KVMV-FM]] English station in McAllen, TX (91.7)<br />
**[[http://www.kwrb.org/ KWRB-FM "The Spark FM"]] English station in Sierra Vista, AZ (90.9)<br />
**[[http://www.kyrmradio.org KYRM-FM]] Spanish station in Yuma, AZ (91.9)<br />
*[[http://www.familyfirstradio.com Family First Radio Network]] A Chain of not-for-profit radio stations providing Christian programming in English.<br />
**[[http://www.kaskradio.com KASK]] - KASK 91.5 FM is a Christian teaching and talk station in Vacaville, California.<br />
**[[http://www.kfhlradio.com KFHL]] - KFHL 91.7 FM is a Christian teaching and talk station in Bakersfield, California.<br />
**[[http://www.wgttradio.com WGTT]] - WGTT 91.5 FM is a Christian teaching and talk station in Esmeralda, Florida.<br />
**[[http://www.whfgradio.com WHFG]] - WHFG 91.3 FM is a Christian teaching and talk station in Lafayette, Louisiana.<br />
**[[http://www.wsjcradio.com WSJC]] - WSJC 810 AM is a Christian teaching and talk station in Magee, Mississippi.<br />
**[[http://www.wtcgradio.com WTCG]] - WTCG 870 AM is a Christian teaching and talk station in Mt Holly, North Carolina.<br />
*[[http://www.theclassicalstation.net World Classical Network]] A classical music radio network based in Hyannis, Massachusetts.<br />
* [[https://platteriverradio.com/ Platte River Radio]] a locally owned, locally managed media company in the Tri-Cities of Nebraska<br />
**[[https://platteriverradio.com/kliq/ KLIQ]] The Breeze 94.5 FM, the Tri-Cities Best Mix<br />
**[[https://platteriverradio.com/khas/ KHAS]] 1230 AM, Local news and sports for Hastings, NE<br />
**[[https://platteriverradio.com/kkpr/ KKPR]] Power 99, 98.9 FM, Classic Hits and High School Sports for the Tri-Cities<br />
**[[https://platteriverradio.com/espn/ KXPN/KICS]] Tri-Cities ESPN, 1460/1550 AM, ESPN local sports in the Tri-Cities<br />
*[[https://www.radioesperanza.com/ Radio Esperanza]] Radio Esperanza: Spanish Christian teach, talk, & music<br />
**KRIO 910 AM Edinburg, TX<br />
**KRIO 97.7 FM Roma, TX<br />
**KOIR 88.5 FM Pharr, TX<br />
<br />
===Shortwave Stations===<br />
====North America====<br />
*[[http://www.rfa.org RFA]] - RFA broadcasts news and information in nine native Asian languages to listeners who do not have access to full and free news media.<br />
<br />
===Internet Only Stations===<br />
====Europe====<br />
*[[http://www.icradio.com IC Radio]] - Student-run radio station of [http://www.imperial.ac.uk Imperial College London] (M-Audio Delta 1010).<br />
*[[http://www.autres-mondes.org Autres(M)Ondes]] - Ephemeral radio events performed around the Europe. Rivendell is the main component of our audio setup [http://www.flickr.com/photos/albanpeignier/6714170037 since 2004].<br />
*[[http://www.poliradio.it Poli.Radio]] - Amateur webradio promoted by the students from Politecnico di Milano, Italy.<br />
<br />
====North America====<br />
*[[https://www.mavradio.fm MavRadio]] - Student-run radio station of the [http://www.unomaha.edu University of Nebraska at Omaha].<br />
*[[http://www.birdnest.org/winr WINR]] - Student-run radio station at Winthrop University in Rock Hill, SC. Rivendell is in use currently on the weekends when live staff are not in the studio.<br />
*[[http://www.seahawkradio.com SMC Radio - The Hawk]] - St. Mary's College Radio, The Hawk is the student-run radio station at St. Mary's College of Maryland.<br />
<br />
===Closed circuit / Low powered FM===<br />
====North America====<br />
*RadioPST - A closed-circuit French [[http://en.wikipedia.org/wiki/Sainte-Th%C3%A9r%C3%A8se,_Quebec Sainte-Thérèse]] high-school radio station fully automated with live interventions and live bands.<br />
*CLG2 89,9FM - [[http://fr.wikipedia.org/wiki/Coll%C3%A8ge_Lionel-Groulx Collège Lionel Groulx]] fully automated 24/7 low powered FM French radio station.</div>
DKlann
http://wiki.rivendellaudio.org/index.php?title=Dropboxes&diff=617
Dropboxes
2021-08-10T20:56:26Z
<p>DKlann: Add link to opsguide.</p>
<hr />
<div>= Automatic Dropbox Mode =<br />
<br />
Read about [http://opsguide.rivendellaudio.org/html/sect.rdadmin.manage_hosts.html#sect.rdadmin.manage_hosts.configuring_dropboxes dropboxes] in the online manual.<br />
<br />
See the dialog here, 'RDAdmin>ManageHosts> select host>Edit>Dropboxes' This allows multiple dropbox import services to be easily configured and modified. The dropboxes have the ability to configure a box not to delete source files after import (particularly useful in conjunction with satellite-based audio delivery.<br />
<br />
== My Dropbox doesn't import any of the audio files I put in there ==<br />
The path specification needs to include the files too rather than just the directory. For example: <br />
<br>'''/home/rduser/dropbox1/''' as the path in the definition of the dropbox '''won't work''', but <br>'''/home/rduser/dropbox1/*.mp2''' will work.<br />
<br />
== How soon are the files imported? ==<br />
" When checking a dropbox for new files, RDImport will not immediately start an import as soon as it sees a new file. When a new file first appears, it merely takes note of its name and length, which it periodically rechecks. Only when the length has been unchanged for at least thirty seconds does it conclude that the copy is 'done' and begin the import. "<br />
<br />
== How to get a folder on a remote computer to a dropbox ==<br />
<br />
You need to mount the remote folders into the local file system so that they appear to Rivendell to be available locally. <br />
<br />
I did a test on my test machine. <br />
<br />
I created a new directory in my home directory /home/rduser/mount <br />
<br />
I created a dropbox in RDAdmin with:<br />
<br />
Path Spec '''/home/rduser/mount/*''' = it will try to import any file added to the dropbox<br />
<br />
Metadata Pattern '''%t.''' = it will use the filename but not the extension as the title for the cart (extensions come after the period) <br />
<br />
I then opened a terminal and mounted the share called "dropbox" which was setup as a guest share. <br />
<br />
sudo mount -t cifs //192.168.1.13/dropbox /home/rduser/mount -o guest <br />
<br />
'''192.168.1.13''' = the computer with the samba/cifs/windows share<br />
<br />
'''dropbox''' = the share name <br />
<br />
'''/home/rduser/mount''' = the empty folder we created to mount the share in <br />
<br />
'''-o guest''' = options that we are a guest and do not ask for the password <br />
<br />
Then I went to my other machine and copied a file to the dropbox folder and shortly there after I had a cart in RDLibrary ready to play.<br />
<br />
There were some hoops to jump through to allow me to do this with sudo. More information here including how to auto mount shares so you do not have to mount it after each boot. <br />
<br />
https://help.ubuntu.com/community/SettingUpSamba</div>
DKlann
http://wiki.rivendellaudio.org/index.php?title=ChangeSummary&diff=616
ChangeSummary
2021-07-31T14:13:39Z
<p>DKlann: Add changes for version 3.6.2.</p>
<hr />
<div>__NOTOC__<br />
== Rivendell Change Summary ==<br />
<br />
This page contains version change descriptions in summary form for Rivendell versions released within at least the most recent five years (quite probably longer). Change descriptions are limited (mostly) to user-visible changes.<br />
<br />
Please see the [https://raw.githubusercontent.com/ElvishArtisan/rivendell/master/ChangeLog ChangeLog] and [https://github.com/ElvishArtisan/rivendell/blob/master/NEWS NEWS] files in the [https://github.com/elvishartisan/rivendell source code] for a complete list of changes and bug fixes.<br />
<br />
See the [https://github.com/elvishartisan/rivendell/issues Issues] list for current reported bugs, issues and feature requests.<br />
<br />
=== 3.6.2 (2021-07-30) ===<br />
* Database verson '''347'''<br />
* <font style="color:green">Functionality</font>: Added support for system dark themes in RDAirplay<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdlogedit(1) that could cause a crash when attempting to play a non-audio event in the &lsquo;Voice Tracker&rsquo; dialog<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdimport(1) that caused the cart title uniqueness check to be applied to the incorrect string when the &lsquo;--set-string-title=&rsquo; switch was used<br />
<br />
<br />
=== 3.6.1 (2021-06-06) ===<br />
* Database verson '''347'''<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdimport(1) that could cause a crash when the &lsquo;--fix-broken-formats&rsquo; switch is used<br />
* <font style="color:green">Functionality</font>: Added syslog DEBUG messages around the start/stop of ephemeral processes in rdservice(8)<br />
* <font style="color:green">Functionality</font>: Added an &lsquo;--initial-maintenance&rsquo; switch to rdservice(8)<br />
* <font style="color:green">Functionality</font>: Added an &lsquo;--force-system-maintenance&rsquo; switch to rdservice(8)<br />
* <font style="color:green">Functionality</font>: Modified rdmaint(8) to enable it to operate even when the Rivendell services are not running<br />
<br />
=== 3.6.0 (2021-05-15) ===<br />
* Database verson '''347'''<br />
* <font style="color:red">Bug fix</font>: Fixed title separation in rdlogmanager(1) scheduler<br />
* <font style="color:red">Bug fix</font>: Fixed bug in library code ''lib/rdwavefile.cpp'' that copied CartChunk Cut ID past the end of the first "NULL" character<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdairplay(1) that caused the Talk Timer to fail to be populated when adding new carts to a log<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in the Cart Selector Dialog that made it impossible to enter an apostrophe character in the filter search line<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdimport(1) where the title of an existing cart would be overwritten with a default title even when no title was found in the file metadata<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in &lsquo;RDFlacDecode&rsquo; that caused conversion of files with names containing non-ASCII characters to fail<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdadmin(1) where clicking the &lsquo;OK&rsquo; button in the &lsquo;Edit Switcher&rsquo; dialog would cause an error dialog to appear with a &lsquo;primary serial device not active&rsquo; warning. The following devices are affected: &lsquo;Local GPIO&rsquo;, &lsquo;Local Audio Adapter&rsquo;, &lsquo;Logitek vGuest&rsquo;, &lsquo;Livewire LWRP Audio&rsquo;, and &lsquo;Kernel GPIO&rsquo;<br />
* <font style="color:green">Functionality</font>: Modified rdimport(1) and the Webget service so as to send e-mail reports to the address of the current Rivendell user in addition to the group&rsquo;s Notification E-Mail Address<br />
* <font style="color:green">Functionality</font>: Added a &lsquo;STACK_LINES.TITLE&rsquo; field to the database<br />
* <font style="color:green">Functionality</font>: Added the value of the detected CartChunk CutID to the error message generated when rejecting said CutID as invalid when using the &lsquo;--use-cartchunk-cutid&rsquo; switch in rdimport(1)<br />
* <font style="color:green">Functionality</font>: Added code to print the value of the detected CartChunk CutID when using both the &lsquo;--use-cartchunk-cutid&rsquo; and &lsquo;--verbose&rsquo; flags in rdimport(1)<br />
* <font style="color:green">Functionality</font>: Created pypad_ino713_tcp based upon pypad_ino713, converting from UDP to TCP. Added an adjustable delay to account for broadcast air delays<br />
* <font style="color:green">Functionality</font>: Created pypad_nautel based upon pypad_ino713_tcp, including RDS parameters from documentation. Includes delay as above<br />
* <font style="color:green">Functionality</font>: Added a new &lsquo;RadioTraffic.com Traffic Reconciliation&rsquo; report. Renamed the existing &lsquo;RadioTraffic.com Traffic Reconciliation&rsquo; to &lsquo;Original RadioTraffic.com Traffic Reconciliation (DEPRECATED)&rsquo;<br />
* <font style="color:green">Functionality</font>: Changed the way in which the VU Meter UDP port is chosen. One can now specify the base port number and the maximum number of UDP ports to consider when caed(8) sets up the VU meter port<br />
* <font style="color:orange">Documentation</font>: Documented the &lsquo;MeterPortBaseNumber=&rsquo; and &lsquo;MeterPointRange=&rsquo; directives in the rd.conf(5) man page<br />
<br />
=== 3.5.0 (2020-12-12) ===<br />
* Database verson '''346'''<br />
* <font style="color:red">Bug fix</font>: Corrected the column settings in RDAdmin > Manage Hosts > [host] > Dropboxes<br />
* <font style="color:red">Bug fix</font>: Fixed regression with "Scheduler Code:" label overlapping "Group" combobox in rdlibrary(1)<br />
* <font style="color:red">Bug fix</font>: Fixed several bugs in rdadmin(1) that messed with passwords, user settings, and other important settings<br />
* <font style="color:red">Bug fix</font>: Fixed several bugs in rdlogmanager(1) that caused all kinds of mischief<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdairplay(1) where copying a log event using the &lsquo;Copy&rsquo; button would result in the new event always getting a &lsquo;PLAY&rsquo; transition<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rddbmgr(8) that could cause database corruption problems<br />
* <font style="color:red">Bug fix</font>: Fixed bugs in rdimport(1) that caused incorrect exit codes to be emitted when a non-existent group was specified, and that caused generation of double error messages when processing invalid audio files<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdmonitor(1) that caused false indications of a failed audio store when used with autofs(8)<br />
* <font style="color:green">Functionality</font>: Major overhaul of Rivendell&rsquo;s podcast handling features; see the ChangeLog for all the details<br />
* <font style="color:green">Functionality</font>: Modified the GVC7000 switcher driver to insert 50 mS pauses between protocol commands<br />
* <font style="color:green">Functionality</font>: Allow RN Macro to run when Rivendell daemons running as non-root<br />
* <font style="color:green">Functionality</font>: Many changes to rdadmin(1), including:<br />
:* Added whitespace to the set of banned characters for service names<br />
:* Added a &lsquo;SSH Ident. File&rsquo; control to the &lsquo;Host&rsquo; dialog<br />
:* Added an &lsquo;Inline Traffic Inheritance&rsquo; control to the &lsquo;Edit Service&rsquo; dialog<br />
:* Added type icons to the &lsquo;Imported Events&rsquo; list in the &lsquo;Test Import&rsquo; dialog<br />
:* Renamed the &lsquo;Inline Traffic Inheritance&rsquo; control to &lsquo;Inline Traffic Start/Length&rsquo; and moved it to the &lsquo;Music Data Import&rsquo; section of the &lsquo;Edit Service&rsquo; dialog<br />
:* Added an &lsquo;Encoder Profiles&rsquo; dialog<br />
:* Renamed the &lsquo;Note Cart String&rsquo; controls to &lsquo;Insert Marker String&rsquo; in the &lsquo;Edit Service dialog<br />
:* Added an &lsquo;Origin E-Mail Address&rsquo; control to the &lsquo;System-Wide Settings&rsquo; dialog<br />
:* Added a &lsquo;Notification E-Mail Addresses&rsquo; control to the &lsquo;Group&rsquo; dialog<br />
:* Added a &lsquo;Send e-mail reports&rsquo; checkbox to the &lsquo;Dropbox Configuration&rsquo; dialog<br />
:* Added &lsquo;E-Mail Address&rsquo;, &lsquo;Phone Number&rsquo; and &lsquo;Local Auth&rsquo; columns to the &lsquo;Users&rsquo; list in the &lsquo;Rivendell User List&rsquo; dialog<br />
:* Added an &lsquo;Administer RSS Feeds&rsquo; checkbox to the &lsquo;Administrative Rights&rsquo; section of the &lsquo;User&rsquo; dialog<br />
:* Added a deprecation warning for the &lsquo;Allow Duplicate Cart Titles&rsquo; and &lsquo;Auto-Correct Duplicate Cart Titles&rsquo; checkboxes on the &lsquo;System-Wide Settings&rsquo; dialog<br />
* <font style="color:green">Functionality</font>: Added support for FTPS protocol for uploading, downloading, and Feed management<br />
* <font style="color:green">Functionality</font>: Significant update to the Rivendell Web interfaces (Web API, WebGet service, rivwebcapi API, etc.)<br />
* <font style="color:green">Functionality</font>: Added &lsquo;--scheduler-code=&rsquo; switch to rdexport(1)<br />
* <font style="color:green">Functionality</font>: Added generation of an &lsquo;RDLogManager Error Report&rsquo; when errors are detected when importing an external scheduler file in rdlogmanager(1)<br />
* <font style="color:green">Functionality</font>: Restored operation of Label/Note carts in rdlogmanager(1)<br />
* <font style="color:green">Functionality</font>: Updated rdservice(8) to use standard exit code defines<br />
* <font style="color:green">Functionality</font>: Implemented the &lsquo;--verbose&rsquo; switch for rdmaint(8)<br />
* <font style="color:green">Functionality</font>: Added a sample Fail2Ban jail filter for the WebAPI in &lsquo;conf/rivendell-webapi.conf&rsquo;<br />
* <font style="color:green">Functionality</font>: Added command line options &lsquo;--output-pattern&rsquo;, &lsquo;--ticket=&rsquo;, &lsquo;--send-mail&rsquo; and &lsquo;--mail-per-file&rsquo; to rdimport(1)<br />
* <font style="color:green">Functionality</font>: Added the name of the import file to schedule import failure reports<br />
* <font style="color:orange">Documentation</font>: Documented the &lsquo;%%&rsquo; filepath wildcard in the Operations Guide<br />
* <font style="color:orange">Documentation</font>: Added an &lsquo;RDCastManager&rsquo; chapter to the Operations Guide<br />
* <font style="color:orange">Documentation</font>: Revised the &lsquo;Managing Services&rsquo; section of the Operations Guide<br />
* <font style="color:orange">Documentation</font>: Rewrote the &lsquo;Webget&rsquo; chapter of the Operations Guide to conform to changes in Webget<br />
* <font style="color:orange">Documentation</font>: Added a &lsquo;Configuring Webget&rsquo; section to the Operations Guide<br />
* <font style="color:orange">Documentation</font>: Removed the &lsquo;Cart Data Dump (fixed width)&rsquo; from the Operations Guide<br />
* <font style="color:orange">Documentation</font>: Documented user-facing changes to the &lsquo;System-Wide Settings&rsquo; dialog, the &lsquo;Rivendell Group List&rsquo; and the &lsquo;Group&rsquo; dialogs in rdadmin(1) in the Operations Guide<br />
* <font style="color:orange">Documentation</font>: Documented the &lsquo;Send e-mail reports&rsquo; checkbox in the &lsquo;Dropbox Configuration&rsquo; dialog in rdadmin(1) in the Operations Guide<br />
* <font style="color:blue">Code (internal) change</font>: Prepended &lsquo;RD_&rsquo; to the names of all common Javascript functions in &lsquo;web/common/utils.js&rsquo;<br />
* <font style="color:blue">Code (internal) change</font>: Added a &lsquo;webget&rsquo; subpackage to the &lsquo;make rpm&rsquo; target<br />
* <font style="color:blue">Code (internal) change</font>: Refactored the &lsquo;Run Script&rsquo; [&rsquo;RN&rsquo;] RML to invoke scripts via the system shell, this change also removed the dependency on runuser(1)<br />
<br />
=== 3.4.1 (2020-07-21) ===<br />
* Database verson '''317'''<br />
<br />
* <font style="color:green">Functionality</font>: Added a &lsquo;Results Report&rsquo; report in rdadmin(1)<br />
* <font style="color:green">Functionality</font>: Removed the checkbox from the &lsquo;Delete&rsquo; right-click menu item in the &lsquo;Edit Event&rsquo; dialog in rdlogmanager(1)<br />
* <font style="color:green">Functionality</font>: Modified &lsquo;RDWaveFile&rsquo; to work around known fencepost errors in WAV files generated by "Sonic Studio soundBlade" by "PME Mastering, Inc."<br />
* <font style="color:green">Functionality</font>: Modified the &lsquo;Edit Event&rsquo; dialog in rdlogmanager(1) to show &lsquo;[auto]&rsquo; as the transition type for the leading event in Pre-/Post-Import lists<br />
<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdlibrary(1) that caused cuts to be incorrectly sorted when scheduled &lsquo;By Specified Order&rsquo;<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in the Rivendell command line apps that caused value-only arguments containing &lsquo;=&rsquo; characters to be incorrectly parsed<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in the Podcast Manager, Library Exporter and Web API that caused an error when processing multipart-mime submissions containing &lsquo;=&rsquo; characters<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdairplay(1) where attempting to audition an audio cart with a disabled cue output would crash the application<br />
* <font style="color:red">Bug fix</font>: Fixed a regression in rdairplay(1) that caused the &lsquo;Forced Segue&rsquo; setting in rdadmin(1) to be ignored when executing an event with a hard start attribute<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdairplay(1) where a paused event could not be removed by dropping the empty cart on it<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdairplay(1) that cause incorrect pie timer indications after adding or deleting events to a running log<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdlibrary(1) that would cause a crash when attempting to delete a range of cuts, one of which was in the clipboard<br />
* <font style="color:red">Bug fix</font>: Fixed a math bug in rdairplay(1) that caused the estimated stop-down times in the post point widget to be incorrect after adding or removing events from a running log<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdadmin(1) that made it impossible to enter useful strings in the &lsquo;WaveForm Caption&rsquo; control on the &lsquo;Edit RDLogEdit&rsquo; dialog<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in RDRenderer that caused segue transitions to be rendered without regard to the &lsquo;No Fade on Segue Out&rsquo; checkbox in the &lsquo;Edit Audio&rsquo; dialog<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in ripcd(8) that caused connections to ModbusTCP devices to fail to be properly restored by the connection watchdog<br />
* <font style="color:red">Bug fix</font>: Fixed a regression in the &lsquo;Edit Event&rsquo; dialog in rdlogmanager(1) that caused the first cart transition type to be incorrect when the &lsquo;Pre-Import Carts&rsquo; list was populated<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in the &lsquo;Add Next&rsquo; [&rsquo;PX&rsquo;] RML that failed to return an error when an invalid offset value was supplied<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in the &lsquo;Add Next&rsquo; [&rsquo;PX&rsquo;] RML that failed to honor the &lsquo;Default Trans. Type&rsquo; setting in the &lsquo;Configure RDAirPlay&rsquo; dialog in rdadmin(1)<br />
<br />
=== 3.4.0 (2020-05-19) ===<br />
* Database verson '''317'''<br />
* <font style="color:red">Bug fix</font>: Fixed a regression in rdairplay(1) that caused two events to be started by a single spacebar tap if a SoundPanel event had been played previously<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdlogmanager(1) that caused the initial event in an imported set to fail receive the proper time and transition type if the &lsquo;Include Import Markers in Finished Logs&rsquo; checkbox in rdadmin(1) had not been ticked<br />
* <font style="color:red">Bug fix</font>: Fixed a regression in rdexport(1) that caused exported file names to be constructed improperly<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdlogmanager(1) that caused &lsquo;Make Post Point&rsquo; label to be displayed without last &lsquo;t&rsquo;<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdairplay(1) where timer was not set properly when crossing midnight<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in the &lsquo;List GPIs&rsquo; dialog in rdadmin(1) that prevented changes in GPI assignments from being propagated to the underlying device<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in the &lsquo;Software Authority&rsquo; driver that caused autodetection of the number of GPIOs in a router to be unreliable<br />
* <font style="color:red">Bug fix</font>: Fixed a regression in &lsquo;RDEventLine&rsquo; that caused the &lsquo;Append Log&rsquo; [&rsquo;AL&rsquo;] RML to append a copy of the currently loaded log instead of the one specified in the RML command<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdlogedit(1) that caused garbled text to appear when &lsquo;Start Immediately&rsquo; was selected in the &lsquo;Edit Log Entry&rsquo; dialog box<br />
* <font style="color:red">Bug fix</font>: Fixed a regression that broke the ability to scroll through Sound Panel panels by means of the mouse wheel<br />
<br />
* <font style="color:green">Functionality</font>: Modified rdairplay(1) to always scroll log to the top when using the hour selector<br />
* <font style="color:green">Functionality</font>: Modified rdlogmanager(1) to disable merge buttons if the selected log does not contain any import links<br />
* <font style="color:green">Functionality</font>: Modified rdadmin(1) Edit Service dialog to display built-in traffic and music import template values<br />
* <font style="color:green">Functionality</font>: Added "Copy To Custom" buttons to rdadmin(1) Edit Service dialog<br />
* <font style="color:green">Functionality</font>: Changed the layout of the &lsquo;Editing Event&rsquo; dialog in rdlogmanager<br />
<br />
* <font style="color:green">Functionality</font>: Removed the &lsquo;Post Point&rsquo; checkbox from the &lsquo;Editing Event&rsquo; dialog in rdlogmanager(1)<br />
* <font style="color:green">Functionality</font>: Renamed the &lsquo;REMARKS&rsquo; field to &lsquo;USER NOTES&rsquo; in the &lsquo;Editing Event&rsquo; and the &lsquo;Edit Clock&rsquo; dialogs in rdlogmanager(1)<br />
* <font style="color:green">Functionality</font>: Added a &lsquo;Trans&rsquo; column to the event list in the &lsquo;Edit Clock&rsquo; and the &lsquo;List Events&rsquo; dialogs in rdlogmanager(1)<br />
<br />
=== 3.3.0 (2020-03-16) ===<br />
* Database verson '''314'''<br />
* <font style="color:red">Bug fix</font>: Fixed regressions in the following switcher drivers that could cause deadlocks and intermittent operation<br />
:* BroadcastTools SS16.4<br />
:* BroadcastTools SS 4.2<br />
:* BroadcastTools SS4.4<br />
:* BroadcastTools SS 8.2<br />
:* BroadcastTools ACS8.2<br />
:* BroadcastTools ADMS 44.22<br />
:* BroadcastTools GPI-16<br />
:* BroadcastTools SRC-16<br />
:* BroadcastTools SRC-8 III<br />
:* BroadcastTools SS 4.1 MLR<br />
* <font style="color:red">Bug fix</font>: Fixed a regression in the implementation of the &lsquo;Set Serial Trap&rsquo; [&lsquo;SI&rsquo;] RML that could cause deadlocks and intermittent operation<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdairplay(1) that could cause random segfaults when updating the Label Widget<br />
* <font style="color:red">Bug fix</font>: Fixed a bug with the &lsquo;%y&rsquo; metadata wildcard where garbage would be returned if a valid year had not been set<br />
* <font style="color:red">Bug fix</font>: Fixed a regression in rdlogmanager(1) that caused trailer whitespace to be generated in the &lsquo;EXT_DATA&rsquo;, &lsquo;EXT_EVENT&rsquo;, &lsquo;EXT_ANNC_TYPE&rsquo; and &lsquo;EXT_CART_NAME&rsquo; log fields when importing from a CounterPoint format log<br />
* <font style="color:red">Bug fix</font>: Fixed the layout of the &lsquo;Matching Carts&rsquo; field in rdlibrary(1)&rsquo;s main window when Realtime Filtering is disabled<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdairplay(1) that would cause a hard-timed log event with a &lsquo;wait&rsquo; parameter set to attempt to play the event twice<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rddbmgr(8) that threw a SQL error when attempting to modify a DB containing tables set to use character set UTF-8 to schema 297<br />
* <font style="color:red">Bug fix</font>: Fixed a race in ripcd(8) that caused arguments to the &lsquo;Run Shell Command&rsquo; [&lsquo;RN&rsquo;] macro to be corrupted<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in the &lsquo;Edit Event&rsquo; dialog in rdlogmanager(1) that caused the Transition Type dropdown to be greyed-out when the &lsquo;IMPORT&rsquo; controls were set to use the built-in music scheduler<br />
* <font style="color:green">Functionality</font>: Added a &lsquo;delta-seconds&rsquo; modifier to Filepath Wildcards to enable positive and negative time offsets<br />
* <font style="color:green">Functionality</font>: Removed support for CD-TEXT from the CD rippers<br />
* <font style="color:green">Functionality</font>: Added support for &lsquo;MusicBrainz&rsquo; CD metadata lookup<br />
* <font style="color:green">Functionality</font>: Added a &lsquo;Web Browser&rsquo; control to the &lsquo;Edit Host&rsquo; dialog in rdadmin(1)<br />
* <font style="color:green">Functionality</font>: Added support for displaying cover art in the MusicBrainz release chooser<br />
* <font style="color:green">Functionality</font>: Added &lsquo;%wm&rsquo; [&lsquo;MusicBrainz Recording ID&rsquo;] and &lsquo;%wr&rsquo; [&lsquo;MusicBrainz Release ID&rsquo;] metadata wildcards<br />
* <font style="color:green">Functionality</font>: Implemented the &lsquo;%wm&rsquo; [&lsquo;MusicBrainz Recording ID&rsquo;] and &lsquo;%wr&rsquo; [&lsquo;MusicBrainz Release ID&rsquo;] metadata wildcards for PyPAD<br />
* <font style="color:green">Functionality</font>: Added support for the &lsquo;%wi&rsquo;, &lsquo;%wm&rsquo; and &lsquo;%wr&rsquo; wildcards to the &lsquo;--metadata-pattern=&rsquo; switch in rdimport(1)<br />
* <font style="color:green">Functionality</font>: Added &lsquo;--set-string-isrc&rsquo;, &lsquo;--set-string-recording-mbid&rsquo; and &lsquo;--set-string-release-mbid&rsquo; switches to rdimport(1)<br />
* <font style="color:green">Functionality</font>: Added support for the &lsquo;%wi&rsquo;, &lsquo;%wm&rsquo; and &lsquo;%wr&rsquo; wildcards to the &lsquo;--metadata-pattern=&rsquo; switch in rdexport(1)<br />
* <font style="color:green">Functionality</font>: Added a &lsquo;%wc&rsquo; [&lsquo;Industry Standard Commercial Identification (ISCI) Code&rsquo;] metadata wildcard<br />
* <font style="color:green">Functionality</font>: Implemented the &lsquo;%wc&rsquo; metadata wildcard for PyPAD<br />
* <font style="color:green">Functionality</font>: Added support for the &lsquo;%wc&rsquo; wildcards to the &lsquo;--metadata-pattern=&rsquo; switch in rdimport(1)<br />
* <font style="color:green">Functionality</font>: Added &lsquo;--set-string-isci&rsquo; switch to rdimport(1)<br />
* <font style="color:green">Functionality</font>: Added support for the &lsquo;%wc&rsquo; wildcard to the &lsquo;--metadata-pattern=&rsquo; switch in rdexport(1)<br />
* <font style="color:green">Functionality</font>: Removed the &lsquo;RDLabel&rsquo; widget<br />
* <font style="color:green">Functionality</font>: Added a &lsquo;Disconnect All Jack Ports&rsquo; [&lsquo;JZ&rsquo;] RML<br />
* <font style="color:green">Functionality</font>: Added a &lsquo;CounterPoint Traffic Reconciliation v2&rsquo; report<br />
<br />
=== 3.2.1 (2020-01-24) ===<br />
* Database verson '''311'''<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdcatch(1) that threw a SQL error when clicking 'OK' on the &lsquo;Edit Cart Event&rsquo; dialog<br />
* <font style="color:red">Bug fix</font>: Fixed a regression in rdimport(1) that caused null characters to be written to cart metadata fields when importing files containing an &lsquo;AIR1&rsquo; RIFF chunk<br />
* <font style="color:red">Bug fix</font>: Fixed a regression in rdcatch(1) that caused the &lsquo;Source&rsquo; dropdown in the &lsquo;Edit Recording&rsquo; dialog to fail to be populated properly<br />
* <font style="color:red">Bug fix</font>: Fixed a regression in the cart selector dialog that caused default focus to be lost on the &lsquo;Filter&rsquo; control after second and subsequent invocations<br />
* <font style="color:red">Bug fix</font>: Fixed a regression in rdcatchd(8) that broke audio metering<br />
* <font style="color:red">Bug fix</font>: Fixed a regression in rdcatchd(8) that could cause download events to hang in an active state<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdcatch(1) that caused DOW flags to fail to be updated correctly on the event list after making a change<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdcatchd(8) that failed to send a MODIFY notification at the end of a Record or Download event<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdconvert that caused a segfault at startup<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdexport(1) that caused output filenames containing multi-byte UTF-8 characters to be corrupt<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdgpimon(1) that caused GPIO cart displays to fail to accurately reflect current state<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdgpimon(1) that caused incorrect state indications to be displayed after switching to a different page<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdimport(1) that caused non-Latin1 characters to be corrupted when using standard input<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdimport(1) that caused UTF-8 multibyte characters in filenames to be corrupted<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdlogmanager(1) that caused spurious log events to be inserted when generating a log<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in ripcd(8) that caused input and output counts to be calculated incorrectly for Software Authority protocol devices containing holes in the input and/or output lists<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in the &lsquo;pypad-shoutcast1.py&rsquo; script that threw an exception when processing PAD containing multi-type UTF-8 characters<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in the &lsquo;pypad_xds.py&rsquo; PyPAD script that could cause it to emit duplicate CIC updates<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in the &lsquo;rivwebcapi&rsquo; validate_tm() function that caused dates containing &lsquo;29 February&rsquo; to always fail regardless of leap-year validity<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in the rdxport service that could cause MODIFY notifications to fail to be sent by the &lsquo;SaveLog&rsquo; WebAPI call<br />
* <font style="color:red">Bug fix</font>: Fixed a regression in rdadmin(1) that caused controls to be hidden in the &lsquo;Edit Report&rsquo; dialog<br />
* <font style="color:red">Bug fix</font>: Fixed a regression in rdlogmanager(1) that caused incorrect logged start times to be generated for imported events<br />
* <font style="color:red">Bug fix</font>: Fixed a regression in the rdxport service that caused the ListCuts WebAPI call to return corrupt data<br />
* <font style="color:red">Bug fix</font>: Fixed a regression in the Web API that caused the and/or corrupt in served XML documents<br />
* <font style="color:green">Functionality</font>: Implemented support for non-realtime library filtering in the &lsquo;Editing Event&rsquo; dialog in rdlogmanager(1)<br />
* <font style="color:green">Functionality</font>: Added a &lsquo;Show Start Time As&rsquo; control to the &lsquo;Edit Log&rsquo; dialog in rdlogedit(1)<br />
* <font style="color:green">Functionality</font>: Made the rdlogedit(1) main window and &lsquo;Edit Log&rsquo; dialog window sizes persistent<br />
* <font style="color:green">Functionality</font>: Added a work-around in the &lsquo;PyPAD.Receiver().__openDb()&rsquo; method to work with versions of MySQLdb that do not support the &lsquo;password=&rsquo; parameter in &lsquo;MySQLdb.connect()&rsquo;<br />
* <font style="color:green">Functionality</font>: Added &lsquo;Repetitions=&rsquo; and &lsquo;RepetitionDelay=&rsquo; directive to the configuration of the &lsquo;pypad_xds.py&rsquo; PyPAD script<br />
* <font style="color:green">Functionality</font>: Added &lsquo;Username=&rsquo; and &lsquo;Password=&rsquo; directives to the &lsquo;pypad_httpget.py&rsquo; script for use for HTTP Basic Authentication<br />
* <font style="color:green">Functionality</font>: Added the ability to view a report at time of generation in rdlogmanager(1)<br />
* <font style="color:green">Functionality</font>: Adjusted the position of the &lsquo;Matching Carts&rsquo; readout on the main window of rdlibrary(1)<br />
* <font style="color:green">Functionality</font>: Changed the &lsquo;Time&rsquo; column in the &lsquo;Full Log Widget&rsquo; in rdairplay(1) to &lsquo;Sch. Time&rsquo;<br />
* <font style="color:green">Functionality</font>: Implemented a work-around for importing CartChunk data containing a buggy ENCO implemention of the &lsquo;AUD&rsquo; CartChunk timer<br />
* <font style="color:green">Functionality</font>: Modified the Full Log widget in rdairplay(1) to display logged start times even when the referenced cart does not exist<br />
* <font style="color:green">Functionality</font>: Tweaked the &lsquo;LogLineBox::mouseMoveEvent()&rsquo; method in rdairplay(1) to require a cursor movement of at least 20 pixels before generating a cart drag<br />
<br />
=== 3.2.0 (2019-10-31) ===<br />
* Database verson '''311'''<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rddbmgr(8) that caused a segfault when processing a SQL error<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdimport(1) that caused it to throw an exception when given a &lsquo;--metadata-pattern&rsquo; of less than three characters<br />
* <font style="color:red">Bug fix</font>: Fixed a regression in rdimport(1) that caused a segfault when invoked with the &lsquo;--metadata-pattern&rsquo; and &lsquo;--log-syslog&rsquo; switches<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdairplay(1) that caused space bar presses to start the next event in the Main Log even when &lsquo;Space Bar Action&rsquo; was set to &lsquo;None&rsquo;<br />
* <font style="color:red">Bug fix</font>: Fixed bugs in 'RDWaveFile' that caused strings of null characters to be written into unfilled CartChunk string fields<br />
* <font style="color:red">Bug fix</font>: Fixed a regression in 'rdxport.cgi' that caused a check of the Rivendell services to be triggered each time a WebAPI function was invoked<br />
* <font style="color:red">Bug fix</font>: Fixed a regression in rdsoftkeys(1) that threw a segfault at startup<br />
* <font style="color:green">Functionality</font>: Added the ability to configure the caption displayed for the first and third voicetrack waveforms in the Voicetracker dialog in rdlogedit(1)<br />
* <font style="color:green">Functionality</font>: Reworked the font management system to permit the fonts used in the UI to be specified in rd.conf(5).<br />
* <font style="color:green">Functionality</font>: Added support for posting podcast content via SFTP<br />
* <font style="color:orange">Documentation</font>: Added manual pages for rd.conf(5) and rdsoftkeys(1)<br />
<br />
=== 3.1.0 (2019-09-19) ===<br />
* Database verson '''310'''<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdairplay(1) and rdvairplayd(8) where only the first log machine set to &lsquo;load specified log&rsquo; would do so<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdlogedit(1) that caused hard start log items to have the Hour field doubled<br />
* <font style="color:red">Bug fix</font>: Refactored the Python &lsquo;pypad.Update.shouldBeProcessed()&rsquo; method to work correctly when using <tt>try:</tt> blocks in a PyPAD script<br />
* <font style="color:red">Bug fix</font>: Refactored the PyPAD scripts to route updates properly in accordance with log directives in their configuration file<br />
* <font style="color:red">Bug fix</font>: Fixed a bug that broke dropbox logging to individual files<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in caed(8) that broke timescaling support<br />
* <font style="color:red">Bug fix</font>: Fixed bugs in rdlibrary(1) that broke CD ripping<br />
* <font style="color:green">Functionality</font>: Refactored rdalsaconfig(1) to be more robust and intuitive<br />
* <font style="color:green">Functionality</font>: Added a &lsquo;pypad_httpget.py&rsquo; PyPAD script<br />
* <font style="color:green">Functionality</font>: Updated CDDB code to use protocol level 6 (UTF-8 enabled)<br />
* <font style="color:green">Functionality</font>: Added an &lsquo;%l&rsquo; wildcard to Filepath Wildcards for &lsquo;unpadded month&rsquo;<br />
=== 3.0.3 (2019-08-05) ===<br />
* Database verson '''308'''<br />
* <font style="color:red">Bug fix</font>: Fixed a regression in ripcd(8) that broke the 'Connect Jack Ports' ['JC'] and 'Disconnect Jack Ports' ['JD'] RMLs<br />
=== 3.0.2 (2019-07-31) ===<br />
* Database verson '''308'''<br />
* <font style="color:red">Bug fix</font>: Fixed a problem with the Local Audio Adapter switcher driver that caused incorrect operation with the 'Switch Add' ['SA'], 'Switch Remove' ['SR'] and 'Switch Take' ['ST'] RMLs<br />
* <font style="color:red">Bug fix</font>: Fixed a regression in rdlibrary(1) that caused macro carts entries to turn red after being viewed<br />
* <font style="color:red">Bug fix</font>: Fixed regressions that made operations with serial devices unreliable<br />
* <font style="color:green">Functionality</font>: Added support for switchers using the Grass Valley 7000 series protocol<br />
=== 3.0.1 (2019-07-16) ===<br />
* Database verson '''308'''<br />
* <font style="color:red">Bug fix</font>: Rivendell is now Unicode UTF-8 clean<br />
* <font style="color:red">Bug fix</font>: Qt4 is now used throughout Rivendell instead of Qt3<br />
* <font style="color:green">Functionality</font>: The Rivendell Loadable Modules system for processing PAD data has been completely replaced by PyPAD, allowing PAD processing plug-ins to be written in the popular Python scripting langauge. Backward compatible replacement scripts for many of the RLM plug-ins supplied in Rivendell v2.x are included<br />
* <font style="color:green">Functionality</font>: Added a compatibility library to facilitate the use of the Rivendell Web API in external applications<br />
* <font style="color:green">Functionality</font>: A system of virtual log machines has been added, allowing play-out of up to 23 logs simultaneously<br />
* <font style="color:green">Functionality</font>: Rivendell is now fully systemd compatibile<br />
* <font style="color:green">Functionality</font>: The Windows ports of rdlogedit(1) and rdlogmanager(1) have been removed<br />
* <font style="color:orange">Documentation</font>: The Rivendell Operations and Administration Guide has been updated and enhanced with more details about running a Rivendell system<br />
* <font style="color:orange">Documentation</font>: New manual pages have been added for Rivendell command that previously did not have them<br />
See [http://caspian.paravelsystems.com/pipermail/rivendell-dev/2019-July/027867.html this message] on the Rivendell Dev mailing list for more details about installing and upgrading Rivendell.<br />
=== 2.19.3 (2018-10-31) ===<br />
* Database verson '''275'''<br />
* <font style="color:red">Bug fix</font>: Fixed a bug that caused the &lsquo;Switcher Matrix&rsquo; and &lsquo;Switcher Output&rsquo; dropdowns to populate incorrect values when selecting a non-local &lsquo;Switcher Host&rsquo; in the &lsquo;Configure RDCatch&rsquo; dialog in rdadmin(1)<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdlogmanager(1) that caused the initial transition type specified in the &lsquo;IMPORT&rsquo; section of the &lsquo;Editing Event&rsquo; dialog to be applied to both the parent log link and the first imported event when the &lsquo;PRE-IMPORT CARTS&rsquo; list was empty and no Timed Start was enabled<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in ripcd(8) that caused process of the &lsquo;Air Gate&rsquo; [&lsquo;AG&rsquo;] RML to fail<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdimport(1) that would throw a spurious SQL error when using the &lsquo;--to-cart=&rsquo; switch with an already existing cart [Issue #000217]<br />
* <font style="color:red">Bug fix</font>: Fixed a regression that caused rdimport(1) to return a &lsquo;no free carts available in specified group&rsquo; when invoked without the &lsquo;--to-cart=&rsquo; option<br />
* <font style="color:red">Bug fix</font>: Fixed a regression in rdairplay(1) that caused carts Added or Copied to a log to have a PLAY transition regardless of the default transition type set in rdadmin(1)<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in &lsquo;RDTextValidator&rsquo; that failed to catch banned characters added to the interior of existing strings<br />
* <font style="color:red">Bug fix</font>: Various other bugs fixed<br />
* <font style="color:green">Functionality</font>: Added a &lsquo;TranscodingDelay=&rsquo; parameter to the &lsquo;[Tuning]&rsquo; section of rd.conf(5)<br />
* <font style="color:green">Functionality</font>: Added a Switcher/GPIO driver for the BroadcastTools SS 2.1 switcher<br />
* <font style="color:green">Functionality</font>: Added support for GPIO on AudioScience adapters to the 'Local Audio Adapter' Switcher/GPIO driver<br />
* <font style="color:green">Functionality</font>: Renamed the 'Add Next' ['PX'] RML to 'Insert Cart' ['PX'] and added two optional arguments to allow specification of the insertion position and transition type<br />
* <font style="color:green">Functionality</font>: Added support for Spinitron v2 to the 'spinitron_plus' RLM<br />
* <font style="color:green">Functionality</font>: Added an &lsquo;ExportedFileMode=&rsquo; parameter to the &lsquo;[Tuning]&rsquo; section of rd.conf(5) to permit permission mode of exported audio files to be specified<br />
* <font style="color:orange">Documentation</font>: Documented GPIO support for AudioScience cards in the &lsquo;Local Audio Adapter&rsquo; section of the Operations Guide<br />
<br />
=== 2.19.2 (2018-04-14) ===<br />
* Database verson '''275'''<br />
* <font style="color:red">Bug fix</font>: Fixed a regression in the HPI support layer that broke audio capture with adapters lacking DMA bus-mastering support<br />
<br />
=== 2.19.1 (2018-03-27) ===<br />
* Database verson '''275'''<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdlogmanager(1) that caused DB corruption when a clock was deleted while still being assigned to a grid.<br />
* <font style="color:green">Functionality</font>: Implemented support for DMA bus-mastering for AudioScience HPI devices. This release supports the latest ASI cards that require DMA bus-mastering support. You may also need to update the hpklinux driver to v4.20.10 or later. RPMs for CentOS 7 are available at [http://static.paravelsystems.com/audioscience/centos/7/ Paravel&rsquo;s website].<br />
* <font style="color:green">Functionality</font>: Removed rdhpiinfo(8). Replaced by the stand-alone &lsquo;hpiinfo&rsquo; package.<br />
* <font style="color:green">Functionality</font>: Removed the event time check for Playout events in rdcatch(1), as there is no sane way to determine a consistently &lsquo;free&rsquo; playout time in the face of shifting cut lengths.<br />
<br />
=== 2.19.0 (2018-02-22) ===<br />
* Database verson '''275'''<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdlibrary(1) that caused evergreen carts/cuts to fail to be highlighted in the correct color<br />
* <font style="color:green">Functionality</font>: Added the ability to specify automatic log deletion on the basis of either the Creation Date or Air Date of the log<br />
* <font style="color:green">Functionality</font>: Log Importation Changes. Changed music and traffic importation so that parent link events are still visible in linked logs<br />
* <font style="color:green">Functionality</font>: Log Locking: implemented a system-wide protocol to prevent changes made to a log on one host from being inadvertently overwritten from another host<br />
<br />
=== 2.18.2 (2017-12-29) ===<br />
* Database version '''272'''<br />
* <font style="color:red">Bug fix</font>: Fixed a bug that caused creation of new clocks in rdlogmanager(1) to fail to initialize music scheduler components correctly in the database<br />
<br />
=== 2.18.1 (2017-12-22) ===<br />
* Database version '''272'''<br />
* <font style="color:red">Bug fix</font>: Fixed a bug that caused creation and initialization of a new Rivendell database to fail<br />
<br />
=== 2.18.0 (2017-12-21) ===<br />
* Database version updated to '''272'''<br />
* <font style="color:red">Bug fix</font>: Various bug fixes. See the [https://github.com/ElvishArtisan/rivendell/blob/stable/ChangeLog ChangeLog] for details<br />
* <font style="color:green">Functionality</font>: Group Cut Expiration Policy: Added the ability to set a default End Date/Time for new cuts on a per-group basis<br />
* <font style="color:green">Functionality</font>: Host Short Name: Added a ''Short Name'' parameter to Host profiles<br />
* <font style="color:green">Functionality</font>: Macro Carts: It is now possible to use filepath wildcards in macro carts<br />
* <font style="color:green">Functionality</font>: New Host Wildcards: Added two host wildcards: ''%r'' for ''Rivendell Host Name, and ''%R'' for ''Rivendell Short Name''<br />
* <font style="color:green">Functionality</font>: Provisioning Support: Added four new directives and to the ''[Provisioning]'' section of ''/etc/rd.conf''<br />
* <font style="color:green">Functionality</font>: MySQL Configuration: Added three parameters to the ''[mySQL]'' section of ''/etc/rd.conf''<br />
* <font style="color:green">Functionality</font>: Dropbox Enhancements: Added the ability to specify creation of default Segue Markers when processing files via dropbox<br />
* <font style="color:green">Functionality</font>: '''RDImport'''/DropBox Enhancements: Added the ability to specify start and end datetimes via metadata pattern<br />
* <font style="color:green">Functionality</font>: '''RDCatch''' Event Filtering: Added the ability to filter by event type in '''RDCatch'''<br />
* <font style="color:green">Functionality</font>: Log Searching: A search filter (similar to that employed for seaching for carts) has been added to the List Logs dialogs<br />
* <font style="color:green">Functionality</font>: Service Filtering in '''RDLogEdit''': Added the ability to limit the visible set of logs in RDLogEdit by user<br />
* <font style="color:green">Functionality</font>: Log Purge/Deletion Changes: Logs created manually (in rdlogedit(1) or rdairplay(1)) are now assigned a default purge/deletion date in accordance with the setting in RDAdmin->ManageServices<br />
* <font style="color:green">Functionality</font>: Log Importation Changes: Changed music and traffic importation so that parent link events are still visible in linked logs<br />
* <font style="color:green">Functionality</font>: Web API Changes: Added &lsquo;FILTER&rsquo; and &lsquo;RECENT&rsquo; call parameters to the &lsquo;ListLogs&rsquo; Web API call<br />
* <font style="color:orange">Documentation</font>: Documentation Overhaul: The Rivendell Operations and Administration Guide has been exapanded and incorporated as part of the base Rivendell source in ''docs/opsguide''. This guide is available as a separate CentOS package: ''rivendell-opsguide''<br />
* <font style="color:orange">Documentation</font>: Rivendell APIs: The various application programming interfaces (notably the web API) is now documented and is included with the standard distribution<br />
<br />
=== 2.17.0 (2017-10-11) ===<br />
* Database version updated to '''268'''<br />
* <font style="color:red">Bug fix</font>: Web API: Many fixes and enhancements to improve operation<br />
* <font style="color:red">Bug fix</font>: Many other bug fixes; see the [https://github.com/ElvishArtisan/rivendell/blob/stable/ChangeLog ChangeLog] for all the details (search for ''2.17.0'' and work your way backward through the list of changes)<br />
* <font style="color:green">Functionality</font>: Dropboxes: Added the ability to force imports to be imported as mono, also added the ability to reset individual dropboxes<br />
* <font style="color:green">Functionality</font>: New Switcher/GPIO Devices: Support has been added for the following Switcher/GPIO devices:<br />
:* Broadcast Tools Universal 4.1 MLR&gt;&gt;Web Switcher<br />
:* WheatNet LIO<br />
:* WheatNet SLIO<br />
* <font style="color:green">Functionality</font>: Macros: Added the &lsquo;Air Gate&rsquo; &#91;&lsquo;AG&rsquo;&#93; RML to permit conditional execution of RML on the basis of the status of the On-Air flag<br />
* <font style="color:green">Functionality</font>: <br />
* <font style="color:green">Functionality</font>: User Authentication: It is now possible to configure RDLogin to require entry of the user-name, rather than picking the name off of a list. See the &lsquo;Show User List in RDLogin&rsquo; checkbox in RDAdmin-&gt;SystemSettings<br />
* <font style="color:green">Functionality</font>: Log Rendering (EXPERIMENTAL): It is now possible to &lsquo;render&rsquo; a log as a single audio object (file or cart/cut) without the need to play it out while capturing the audio in realtime. Render support is available through the &lsquo;Render&rsquo; button in RDLogEdit and through the command-line rdrender(1) utility. See the rdrender(1) man page for details<br />
* <font style="color:green">Functionality</font>: Provisioning Support. Added a [Provisioning] section to rd.conf(5) with directives to facilitate the automatic provisioning of Rivendell instances. See the comments in the [Provisioning] section of the sample rd.conf(5) file<br />
* <font style="color:orange">Artwork</font>: New Icons: Implemented a new icon set, with individualized icons for each Rivendell module<br />
<br />
=== 2.16.0 (2017-06-02) ===<br />
* Database version updated to '''263'''<br />
* <font style="color:red">Bug fix</font>: Many bug fixes; see the [https://github.com/ElvishArtisan/rivendell/blob/stable/ChangeLog ChangeLog] for all the details (search for ''2.16.0'' and work your way backward through the list of changes)<br />
* <font style="color:green">Functionality</font>: Audio Store Hashing. Rivendell now automatically generates a SHA1 hash for each file in the audio store and records this value in the database, thus permitting automated recovery of audio in the event of loss or damage to the audio store's filesystem directory<br />
* <font style="color:green">Functionality</font>: Added switcher support for Kernel GPIO devices, such as the GPIO interface on the Raspberry Pi 2 and 3<br />
* <font style="color:green">Functionality</font>: Added switcher support for Modbus TCP devices<br />
* <font style="color:green">Functionality</font>: Added an rdconvert(1) utility<br />
* <font style="color:green">Functionality</font>: It is now possible to delegate authentication of Rivendell users by means of a PAM module, thus permitting &lsquo;''single sign-on''&rsquo; integration with systems such as ActiveDirectory and FreeIPA<br />
* <font style="color:green">Functionality</font>: Added various methods to the Rivendell Web API to permit integration with external audio and log editors<br />
<br />
=== 2.15.3 (2017-03-24) ===<br />
* Database version '''259''' <br />
* <font style="color:red">Bug fix</font>: Fixed bugs in MP3 file importation that caused files with variable bit rate (VBR) to be truncated during import.<br />
* <font style="color:red">Bug fix</font>: Fixed a bug that caused dynamically loaded codec libraries to fail to be detected if the corresponding library&rsquo;s so-called ''-devel'' package was not installed. <br />
* <font style="color:green">Functionality</font>: Added an ''RLM'' for generating [http://tagstation.com/ TagStation] RLM events for [http://nextradioapp.com/ NextRadio].<br />
* <font style="color:green">Functionality</font>: Added '''AddLog''', '''DeleteLog''' and '''SaveLog''' calls to the web API, along with general cleanup and correction of the overall Web API subsystem.<br />
<br />
=== 2.15.2 (2017-01-13) ===<br />
* Database version '''259'''<br />
* <font style="color:orange">Documentation</font>: Document the interfaces for '''inserting inline traffic breaks''' and for '''inserting voice track markers''' (also add an example in ''docs/examples/'')<br />
* <font style="color:red">Bug fix</font>: in ''rdadmin/createdb.cpp'' that caused obsolete fields in the 'SERVICES' table to be included when creating a new database.<br />
* <font style="color:red">Bug fix</font>: in ''lib/rdwavefile.cpp'' that caused RDXL chunks to be written with odd chunk lengths.<br />
* <font style="color:red">Bug fix</font>: in ''lib/rdsimpleplayer.cpp'' that caused RDAirPlay to freeze when attempting to audition an expired cart.<br />
* <font style="color:green">Functionality</font>: Added a '''LockRdairplayMemory=''' parameter to the [Hacks] section.<br />
* <font style="color:green">Functionality</font>: Modified the LiveWire Multicast GPIO driver to generate GPO events using the 'I' event type.<br />
<br />
=== 2.15.1 (2016-08-05) ===<br />
* Database version '''259'''<br />
* <font style="color:red">Bug fix</font>: fixed WAV file export code to enhance compatibility with third-party applications<br />
<br />
=== 2.15.0 (2016-07-29) ===<br />
* <font style="color:red">Bug fix</font>: complete support for the MySQL/MariaDB InnoDB database engine (for better transaction processing of database updates)<br />
* <font style="color:green">Functionality</font>: enhancements to ''rdexport'' that include full metadata in RDXML format<br />
* <font style="color:green">Functionality</font>: add CLI command ''rdclilogedit'' that enables editing of Rivendell Logs from the command line (without a GUI app)<br />
* <font style="color:green">Functionality</font>: Update the database to version 259.<br />
<br />
=== 2.14.1 (2016-06-11) ===<br />
* Database version '''258'''<br />
* <font style="color:red">Bug fix</font>: additional fixes for newer versions of MySQL (and MariaDB)<br />
<br />
=== 2.14.0 (2016-06-10) ===<br />
* Database version '''258'''<br />
* <font style="color:green">Functionality</font>: add the ability to capture real-time events in RDCatch recordings and replay the events in sync with the captured audio<br />
* <font style="color:green">Functionality</font>: add RML Macro ''Cut Event'' (''CE'') for placing real-time event markers into active RDCatch recordings<br />
* <font style="color:green">Functionality</font>: add support for specifying precise start time and length parameters for Traffic events that are embedded in Music events<br />
* <font style="color:red">Bug fix</font>: fixed a bug in RDAdmin that could cause creation of a new database to fail<br />
* <font style="color:red">Bug fix</font>: fix issues that prevent compilation under newer versions of the GNU C compiler suite<br />
* <font style="color:red">Bug fix</font>: various enhancements and fixes to the new(ish) ''rdexport'' utility<br />
* <font style="color:red">Bug fix</font>: initial support for newer versions of MySQL (and MariaDB)<br />
* <font style="color:red">Bug fix</font>: add code to allow embedded traffic breaks to be specified with start time and length in the music schedule.<br />
<br />
=== 2.13.0 (2016-05-10) ===<br />
* Database version '''255'''<br />
* <font style="color:green">Functionality</font>: add RLM plugin for the Paravel Systems ''WallTime'' clock<br />
* <font style="color:green">Functionality</font>: add new CLI command ''rdexport'' to export Carts with metadata<br />
* <font style="color:green">Functionality</font>: new report: ''Cut Log'' that includes the Description field for played events<br />
* <font style="color:red">Bug fix</font>: fixed a crash in RDLibrary when attempting to open multiple Carts<br />
* <font style="color:red">Bug fix</font>: fixed RDLogEdit to improve performance when saving and updating logs<br />
* <font style="color:red">Bug fix</font>: fixed a bug that caused marker data to be deleted when exporting a Cut<br />
<br />
=== 2.12.0 (2016-04-14) ===<br />
* Database version '''254'''<br />
* <font style="color:green">Functionality</font>: add support for sequential Cut play-out - you can now configure carts to play cuts in a fixed, sequential order rather than by weight value<br />
* <font style="color:green">Functionality</font>: add support for ''Broadcast Tools'' switchers<br />
* <font style="color:green">Functionality</font>: add RML macro '''Copy Cut''' (''CP'') to copy cuts between carts<br />
* <font style="color:green">Functionality</font>: add option to show only &ldquo;recent&rdquo; logs in RDLogEdit<br />
* <font style="color:green">Functionality</font>: add new web API methods related to Scheduler Codes<br />
* <font style="color:red">Bug fix</font>: fixed a bug that caused issues with Services containing the &ldquo;-&rdquo; (dash) character<br />
<br />
=== 2.11.0 (2015-09-18) ===<br />
* Database version '''252'''<br />
* <font style="color:green">Functionality</font>: add RDCatch upload/download protocols ''sftp'' and ''scp''<br />
* <font style="color:green">Functionality</font>: add support to import ''MP4/AAC'' files<br />
* <font style="color:green">Functionality</font>: add support for the ''Ross NK'' series video switcher<br />
* <font style="color:green">Functionality</font>: add support for ''PCM24'' in the core audio library code<br />
* <font style="color:red">Bug fix</font>: re-wrote the CD ripper code to make it faster and more reliable<br />
* <font style="color:red">Bug fix</font>: fixed several bugs related to audio data and buffering<br />
* <font style="color:red">Bug fix</font>: Normalized service clock data from the 'SERVICES' to the 'SVC_CLOCKS' table<br />
<br />
=== 2.10.3 (2015-02-24) ===<br />
* Database version '''242'''<br />
* <font style="color:green">Functionality</font>: add RLM (plugin) for Live365 streaming service (which is defunct as of Summer 2016)<br />
* <font style="color:green">Functionality</font>: add &ldquo;MrMaster&rdquo; and &ldquo;Spin Count&rdquo; reports<br />
* <font style="color:green">Functionality</font>: add support for audio switcher devices that use the &ldquo;Software Authority&rdquo; protocol<br />
* <font style="color:green">Functionality</font>: add ability to set segue markers in the CLI app ''rdmarkerset''<br />
* <font style="color:red">Bug fix</font>: fixed a bug that caused issues with Services containing a <Space> character in the service name<br />
<br />
=== 2.10.2 (2014-11-25) ===<br />
* Database version '''242'''<br />
* <font style="color:green">Functionality</font>: CLI ''rdimport'' enhancement: add two date-related options to the command<br />
* <font style="color:green">Functionality</font>: add column for ELR data in RDLogEdit<br />
* <font style="color:red">Bug fix</font>: fixed a bug in the Audio Science adapter for cards with only AES3 ports<br />
<br />
=== 2.10.1 (2014-11-04) ===<br />
* Database version '''242'''<br />
* <font style="color:green">Functionality</font>: add &ldquo;DSP utilization and profiling&rdquo; info for Audio Science adapters<br />
* <font style="color:green">Functionality</font>: add the column &ldquo;EXT DATA&rdquo; to the &ldquo;Edit Log&rdquo; screen in RDLogEdit<br />
* <font style="color:red">Bug fix</font>: fixed a memory fault (crash) in RDLogEdit when dropping a cart that was being used in a log</div>
DKlann
http://wiki.rivendellaudio.org/index.php?title=Stations_using_Rivendell&diff=615
Stations using Rivendell
2021-07-30T17:26:33Z
<p>DKlann: Add WCAA-LP. Update some station links to https. Other minor wordsmithing...</p>
<hr />
<div>Here is a list of Radio stations that are using Rivendell.<br />
<br />
===AM Stations===<br />
====North America====<br />
*[[http://www.1010kbw.com KBBW-AM]] - 1010 KBW is a Christian teaching and talk station in Waco, Texas<br />
*[[http://www.kgnw.com KGNW-AM]] - KGNW AM 820 is a Christian teaching and talk station in Seattle-Tacoma, Washington<br />
*[[http://www.1590klfe.com KLFE-AM]] - 1590 KLFE is a Christian teaching and talk station in Seattle-Tacoma, Washington<br />
*[[http://www.1300kol.com KKOL-AM]] - News-Talk 1300 KOL is a news and talk station in Seattle-Tacoma, Washington<br />
*[[http://www.radiosol1360.com KKMO-AM]] - RADIO SOL 1360 AM is a spanish station in Seattle-Tacoma, Washington<br />
*[[http://www.salem.cc KTFH-AM]] - 1680 KTFH "The Bridge" is an international station in Seattle-Tacoma, Washington<br />
*[[http://www.1360wkat.com WKAT-AM]] - News-Talk 1360 WKAT is a news and talk station in Miami-Ft. Lauderdale-Hollywood, Florida<br />
*[[http://www.wlssradio.com WLSS-AM]] - News-Talk 930 WLSS is a news and talk station in Sarasota-Bradenton, Florida<br />
*[[http://www.860wgul.com WGUL-AM]] - News-Talk 860 WGUL is a news and talk station in Tampa-St. Petersburg-Clearwater, Florida<br />
*[[http://www.bayword.com WTBN-AM]] - WTBN 570 AM is a Christian teaching and talk station in Tampa-St. Petersburg-Clearwater, Florida<br />
*[[http://www.bayword.com WTWD-AM]] - WTWD 910 AM is a Christian teaching and talk station in Tampa-St. Petersburg-Clearwater, Florida<br />
*[[http://www.wdtkam.com WDTK-AM]] - WDTK 1400 AM is a News Talk station in Detroit, Michigan<br />
*[[http://www.am1500wlqv.com WLQV-AM]] - WLQV 1500 AM is a Christian teaching and talk station in Detroit, Michigan<br />
*[[http://www.krpiradio.com KRPI-AM]] - KRPI 1550 AM is an East Indian music and talk station in Ferndale, Washington<br />
*[[http://www.am1330kvol.com KVOL-AM]] - KVOL 1330 AM is a news talk station in Lafayette, Louisiana<br />
*[[http://www.fsr1520 KFXZ-AM]] - KFXZ 1520 AM is a Fox Sports Radio affiliate station in Lafayette, Louisiana<br />
*[[http://wutt.ut.edu WUTT]] - WUTT 1080 AM is the student radio station at the University of Tampa in Tampa, Florida.<br />
*[[http://classical959.com WCRI]] - WCRI 1180 AM is a classical music station in Hope Valley, Rhode Island.<br />
*[[http://www.wsjcradio.com WSJC]] - WSJC 810 AM is a Christian teaching and talk station in Magee, Mississippi.<br />
*[[http://www.wtcgradio.com WTCG]] - WTCG 870 AM is a Christian teaching and talk station in Mt Holly, North Carolina.<br />
*[[http://wxva.com WXVA]] - WXVA 610 AM is a full service greatest hits of all time station in Winchester, VA.<br />
*Rolling Valley Radio - 1700 AM is a US [[wikipedia:Title 47 CFR Part 15|FCC]] &ldquo;[https://www.hobbybroadcaster.net/resources/FCC-Part-15-regulations.php Part 15]&rdquo; low-power hobby broadcaster in Springfield, VA (suburban Washington DC).<br />
<br />
====Pacifica====<br />
*[[http://www.oar.org.nz Otago Access Radio]] - 105.4 / 1575 AM is a Community Access Radio Station in Dunedin, New Zealand.<br />
*Big Valley Radio 107.4 Thames Whangamata Whitianga on the Coromandel Peninsula, New Zealand<br />
<br />
====Europe====<br />
*[[http://www.insanityradio.com Insanity Radio]] - 1287AM, a student radio station in Egham, UK, at Royal Holloway, University of London (only for sustainer at present)<br />
<br />
===FM Stations===<br />
====Asia====<br />
*[[http://www.bigsound.com BIG Sound FM]] - Vanguard Radio Network's 101.5 BIG Sound FM Cabanatuan City and 95.9 BIG Sound FM Baguio City, Philippines.<br />
====Europe====<br />
*[[http://www.radiomax.dk Radio Max]] - broadcasting 24/7 in Denmark<br />
*[[http://www.felixstoweradio.co.uk Felixstowe Radio 107.5 FM]] A UK community radio station covering Felixstowe and the Colenis peninsula in sunny East Anglia. Rivendell plays pre-recorded and live-assisted content during the day for our FM and Internet stream output (overnight sustainer uses a separate commercial product) [[http://www.felixstoweradio.co.uk/link.m3u Internet stream]]<br />
*[[http://www.blackdiamondfm.com 107.8 Black Diamond FM]] Black Diamond FM is a community station serving Midlothian, Scotland. Rivendell plays non-stop music overnight and switches to IRN News by satellite every hour. [[http://www.blackdiamondfm.com/listen Stream link]]<br />
*[[http://www.radiohertz.de Hertz 87.9]] - Campus Radio in Bielefeld, Germany<br />
*[[http://www.hochschulradio-aachen.de Hochschulradio Aachen]] - Campus Radio Aachen, Campusradio of [http://www.rwth.de/ RWTH Aachen University], 99.1 MHz<br />
*[[http://helsinki.at Radio Helsinki]] - Radio Helsinki, free Radio Graz, Austria, 92.6 MHz<br />
*[[http://www.radiocampusamiens.com Radio Campus Amiens]] - Radio Campus Amiens, student Radio in the north of France, 24/7 w/Rivendell on 87.7 MHz<br />
*[[http://grafhit.net Graf'hit]] - student/community radio based in the [http://www.utc.fr University of Technology of Compiègne], France, 24/7 on 94.9MHz ([https://grafhit.net:8443/grafhit.mp3 stream]). Powered by free software.<br />
*[[http://www.hit-radio.be Hit Radio Namur]] - Commercial Radio in Namur/Belgium, 24/7 on 94.9 MHz<br />
*[[http://www.ras.cat R&agrave;dio Artesa de Segre]] - A municipal radio station serving Artesa de Segre and its municipality in Catalonia (Spain), 24/7 on 90.2 MHz thanks to Rivendell Audio.<br />
*[[http://www.radioaktiv.org radioaktiv]] Campusradio of the Universities of Mannheim, Heidelberg and Ludwigshafen (Germany)<br />
*[[http://www.radiom.fr RADIOM]] Student radio from Castres, France. Broadcasting 24/7 on 89.7 MHz<br />
*[[http://divergence-fm.org Divergence FM]] No commercial, associative radio from Montpellier (France). Broadcasting 24/7 on 93.9MHz. Full running on free software.<br />
*[[http://www.radiohw.co.uk Radio Hartley Wintney]] - Community RSL radio station running from [[http://www.stjohnshw.co.uk St. Johns Church]] for 2 weeks a year in Hartley Wintney, Hampshire, UK on 87.7FM.<br />
*[[http://www.radioer.pl Radio eR]] - broadcasting 24/7 in Lublin, Poland on 87.9 FM. <br />
*[[http://www.radioi.pl Radio i]] - broadcasting 24/7 in Białystok, Poland on 103.3 FM. <br />
*[[http://www.radiomalbork.fm Radio Malbork]] - broadcasting 24/7 in Malbork, Poland on 90.4 FM<br />
* [http://www.run.be La RUN] - student Radio broadcasting in Namur, Belgium on 88.1 FM<br />
* [http://www.radiolarzac.org Radio Larzac] - in Millau, France on 87.8 Mhz<br />
* [http://www.radiolaser.fr Radio Laser] - in Guichen near Rennes, France on 95.9 Mhz<br />
* [http://radioclapas.fr Radio Clapas] - in Montpellier, France on 93.5 Mhz<br />
* [http://www.radio-couleur-chartreuse.org Radio Couleur Chartreuse] - in The Chartreuse Mountains, France on 98,4 and 106 Mhz<br />
* [http://radiofontaine.fr Radio Fontaine] near Grenoble, France on 88.6 FM <br />
* [http://www.radio-gresivaudan.org Radio Grésivaudan] in Crolles near Grenoble, France 87.8, on 89 and 92.4 Mhz<br />
* [http://www.radiocampusrennes.fr Radio Campus Rennes] - in Rennes, France on 88.4 Mhz<br />
* [http://www.radio-active.net Radio Active] - in Toulon, France on 100.0 Mhz<br />
* [http://www.radiopac.fr Radio PAC] - in Pompadour, Corrèze, France on 101.9 Mhz<br />
* [http://www.radiogrilleouverte.com Radio Grille Ouverte] - in Alès, France on 88.2 Mhz<br />
* [http://www.radiofildeleau.fr Radio Fil de l'Eau] - in L'Isle-Jourdain, near Toulouse, France on 106.6 Mhz and Fleurance in Gers, France on 100.9 Mhz<br />
* [http://www.radiocampusmontpellier.fr Radio Campus Montpellier] - in Montpellier, France on 102.2 Mhz<br />
* [http://lalocale.ckdevelop.org Radio La Locale] - in Saint-Girons, France on 97.3 Mhz<br />
* [http://www.orleans.radiocampus.org Radio Campus Orléans] - student Radio in Orléans, 24/7 w/Rivendell on 88.3 MHz FM<br />
* [http://www.campusgrenoble.org Radio Campus Grenoble] - student Radio in Grenoble, 24/7 w/Rivendell on 90.8 MHz FM<br />
* [https://www.radiosaintaffrique.com Radio Saint-Affrique] - in Saint-Affrique, France on 96.7 but also 92.7 in Camarès, 99.9 in Belmont-sur-Rance and 100.6 in Millau<br />
<br />
====North America====<br />
*[[http://www.my997.org KDHE-LP My99.7]] - An independent radio station located in Spring Creek, NV and operated by the non-profit Spring Creek Christian Academy.<br />
*[[http://www.wlfc883.com WLFC-FM]] - Bringing independent label rock to Northwest Ohio from the University of Findlay<br />
*[[http://www.wgxc.org/ WGXC]] - 90.7 is a community radio station broadcasting to Greene and Columbia counties in New York. It is a project of [[http://wavefarm.org/ Wave Farm]].<br />
*[[http://www.smoothjazz106.com KKSJ-FM]] - 106.3 KKSJ is a Smooth Jazz radio station in Lafayette, Louisiana.<br />
*[[http://www.1059thefox.com KFXZ-FM]] - 105.9 KFXZ is a Country Legends radio station in Lafayette, Louisiana.<br />
*[[http://www.kdrt.org KDRT-LPFM]] - 101.5 KDRT-LP is a low-power non-commercial radio station serving Davis, California. Operated by [http://www.dctv.davis.ca.us Davis Community Television], KDRT is an important avenue for the voices in our community, especially those not typically found on commercial radio.<br />
*[[http://www.saskatoonchristianradio.com CFAQ-FM]] - 100.3 CFAQ is a Christian music station in Saskatoon, Canada.<br />
*KETL-LPFM - 100.5 is a Christian radio station in Republic Washington. We air both talk and music.<br />
*[[http://www.kdar.com KDAR-FM]] - 98.3 KDAR is a Christian teaching and talk station in Oxnard-Ventura, California<br />
*[[http://www.kptz.org KPTZ]] - 91.9 KPTZ is a Class A non-commercial community station in Port Townsend, Washington, licensed to Radio Port Townsend, a 501(c)(3) non-profit. We are using a client/server implementation of Rivendell in an all digital studio environment. KPTZ programs music and locally originated programs. The Rivendell system keeps programs going out 24/7 with a small station staff.<br />
*[[http://www.92zew.net WZEW-FM]] - Commercial Triple A Music Fm located in Mobile, Al.<br />
*[[http://www.wmfo.org WMFO - Tufts Freeform Radio]] - 91.5 Medford: Tufts University Freeform and Community Radio. Broadcasting to Medford, Sommerville, Cambridge, & Boston Areas.<br />
*[[WPSA 98.3]] is the Official Radio Station of [[Paul Smith's College]] a non-commercial, terrestrial based station dedicated to the Paul Smith's College community. Proudly operating 100% on free and open source software.<br />
*[[http://witr.rit.edu WITR]] - WITR 89.7 is the student-run FM radio station at [http://rit.edu Rochester Institute of Technology]; Rochester, NY. WITR airs indie, alternative, and garage rock, with specialty shows in the evening hours.<br />
*[[http://www.wmnf.org/thesource WMNF HD-3]] - WMNF's HD-3 in Tampa, FL is a fully-automated news & public affairs channel that uses Rivendell to import/play/switch content from a variety of sources, including pre-recorded/podcasted shows, live Internet streams, and live satellite feeds.<br />
*[[http://www.wcdbfm.com WCDB SUNYRADIO]] - 90.9 University Radio in Albany, NY. We're a primarily music non-commercial alternative university/community station that has programming from all and cultures. We implement RAAbuntu to keep 24/7.<br />
*[[http://www.kaskradio.com KASK]] - KASK 91.5 FM is a Christian teaching and talk station in Vacaville, California.<br />
*[[http://www.kfhlradio.com KFHL]] - KFHL 91.7 FM is a Christian teaching and talk station in Bakersfield, California.<br />
*[[http://www.wgttradio.com WGTT]] - WGTT 91.5 FM is a Christian teaching and talk station in Esmeralda, Florida.<br />
*[[http://www.whfgradio.com WHFG]] - WHFG 91.3 FM is a Christian teaching and talk station in Lafayette, Louisiana.<br />
*[[http://classical959.com WCRI]] - WCRI 95.9 FM is a classical music station on Block Island, Rhode Island.<br />
*[[http://whrb.org WHRB]] - WHRB 95.3 FM is a student-operated station at Harvard University (Cambridge, Massachusetts).<br />
*[[https://kpsq.org/ KPSQ]] - KPSQ-LP 97.3 FM Fayetteville, AR &ldquo;Public Square Community Radio&rdquo;<br />
*[[https://wdrt.org WDRT]] - WDRT 91.9 FM is a community radio station powered by 90+ volunteers in Viroqua, WI<br />
*[[https://www.kfai.org KFAI]] - KFAI 90.3 FM Minneapolis MN, Fresh Air Community Radio, &ldquo;Radio Without Boundaries&rdquo;<br />
*[[http://www.kmud.org KMUD]] - KMUD 91.1 Garberville, 88.1 Eureka, 90.3 Laytonville, 99.5 Shelter Cove is a community radio station in Northern CA<br />
*[[https://wnuc.org WNUC-LP]] - WNUC-LP 96.7 FM Detroit, MI is a community radio station in the North End neighborhood<br />
*[[https://www.graceradio.net/ KGCE-LP]] - KGCE-LP 107.9 FM Modesto, California &ldquo;GraceRadio&rdquo; is a Christian teaching and music station<br />
*[[https://www.wrfi.org/ WRFI]] - WRFI 88.1 FM Ithaca, 91.9 FM Watkins Glen, New York is Community Radio for Ithaca NY and the surrounding area<br />
*[[https://naparadio.org/ Napa Radio Project]] - KCMU-LP 103.3 FM Napa, California, &ldquo;Great music for getting into some Good Trouble&rdquo;<br />
*[[https://grandarts.org/wcaa-lp/ WCAA]] - WCAA-LP 107.3 FM Albany, New York, &ldquo;The Voice&rdquo; of Albany NY, a project of Grand Street Community Arts, Inc.<br />
<br />
====Pacifica====<br />
*[[http://www.countryradionetwork.com Country Radio]] - 87.7 FM Dunedin, New Zealand. (Since August 2008).<br />
*[[http://www.totalfm.nz Total FM]] - 107.3 FM Dunedin, New Zealand. (Since March 2012).<br />
<br />
====South America====<br />
*[[http://www.radio.ufscar.br Rádio UFSCar]] - 95.3 MHz Rádio UFSCar is a universitery radio station broadcasted from [http://ufscar.br UFSCar] Campus in São Carlos, São Paulo - Brazil.<br />
<br />
*[[http://www.sonidofm.net Sonido 104.3 FM]] - 104.3 MHz Sonido FM, is an Adult Contemporary Radio in San Carlos, Cojedes - Bolivarian Republic of Venezuela.<br />
<br />
*[[http://albaciudad.org Alba Ciudad 96.3 FM]] - 96.3 Mhz Alba Ciudad, A revolutionary cultural and socially oriented radio station in Caracas - Bolivarian Republic of Venezuela.<br />
<br />
*[[http://magicaradio.wordpress.com Mágica 106.3 FM]] - 106.3 Mhz FM Mágica, A communitary communicational project in Puerto Ayacucho, state of Amazonas - Bolivarian Republic of Venezuela.<br />
<br />
===Radio Station Chains===<br />
====North America====<br />
*[[http://www.worldradionetwork.org/ World Radio Network / Radio Cadena Manantial]] A Chain of not-for-profit radio stations along the USA/Mexico Border providing Christian programming in Spanish and English.<br />
**[[http://www.kbnj.org/ KBNJ-FM]] English station in Corpus Christi, TX (91.7)<br />
**[[http://www.kbnl.org/ KBNL-FM]] Spanish station in Laredo, TX (89.9)<br />
**KEPI-FM English Station in Eagle Pass, TX (88.7)<br />
**[[http://www.kepx.org/ KEPX-FM]] Spanish station in Eagle Pass, TX (89.5)<br />
**[[http://www.knog.org KNOG-FM]] Spanish station in Nogales, AZ (91.1) with translators in Tucson and Phoenix.<br />
**KRMB-FM Spanish station in Bisbee, AZ (90.1)<br />
**KRMC-FM Spanish station in Douglas, AZ (91.7)<br />
**[[http://www.kver.org/ KVER-FM]] Spanish station in El Paso, TX (91.1)<br />
**[[http://www.kvmv.org/ KVMV-FM]] English station in McAllen, TX (91.7)<br />
**[[http://www.kwrb.org/ KWRB-FM "The Spark FM"]] English station in Sierra Vista, AZ (90.9)<br />
**[[http://www.kyrmradio.org KYRM-FM]] Spanish station in Yuma, AZ (91.9)<br />
*[[http://www.familyfirstradio.com Family First Radio Network]] A Chain of not-for-profit radio stations providing Christian programming in English.<br />
**[[http://www.kaskradio.com KASK]] - KASK 91.5 FM is a Christian teaching and talk station in Vacaville, California.<br />
**[[http://www.kfhlradio.com KFHL]] - KFHL 91.7 FM is a Christian teaching and talk station in Bakersfield, California.<br />
**[[http://www.wgttradio.com WGTT]] - WGTT 91.5 FM is a Christian teaching and talk station in Esmeralda, Florida.<br />
**[[http://www.whfgradio.com WHFG]] - WHFG 91.3 FM is a Christian teaching and talk station in Lafayette, Louisiana.<br />
**[[http://www.wsjcradio.com WSJC]] - WSJC 810 AM is a Christian teaching and talk station in Magee, Mississippi.<br />
**[[http://www.wtcgradio.com WTCG]] - WTCG 870 AM is a Christian teaching and talk station in Mt Holly, North Carolina.<br />
*[[http://www.theclassicalstation.net World Classical Network]] A classical music radio network based in Hyannis, Massachusetts.<br />
* [[https://platteriverradio.com/ Platte River Radio]] a locally owned, locally managed media company in the Tri-Cities of Nebraska<br />
**[[https://platteriverradio.com/kliq/ KLIQ]] The Breeze 94.5 FM, the Tri-Cities Best Mix<br />
**[[https://platteriverradio.com/khas/ KHAS]] 1230 AM, Local news and sports for Hastings, NE<br />
**[[https://platteriverradio.com/kkpr/ KKPR]] Power 99, 98.9 FM, Classic Hits and High School Sports for the Tri-Cities<br />
**[[https://platteriverradio.com/espn/ KXPN/KICS]] Tri-Cities ESPN, 1460/1550 AM, ESPN local sports in the Tri-Cities<br />
*[[https://www.radioesperanza.com/ Radio Esperanza]] Radio Esperanza: Spanish Christian teach, talk, & music<br />
**KRIO 910 AM Edinburg, TX<br />
**KRIO 97.7 FM Roma, TX<br />
**KOIR 88.5 FM Pharr, TX<br />
<br />
===Shortwave Stations===<br />
====North America====<br />
*[[http://www.rfa.org RFA]] - RFA broadcasts news and information in nine native Asian languages to listeners who do not have access to full and free news media.<br />
<br />
===Internet Only Stations===<br />
====Europe====<br />
*[[http://www.icradio.com IC Radio]] - Student-run radio station of [http://www.imperial.ac.uk Imperial College London] (M-Audio Delta 1010).<br />
*[[http://www.autres-mondes.org Autres(M)Ondes]] - Ephemeral radio events performed around the Europe. Rivendell is the main component of our audio setup [http://www.flickr.com/photos/albanpeignier/6714170037 since 2004].<br />
*[[http://www.poliradio.it Poli.Radio]] - Amateur webradio promoted by the students from Politecnico di Milano, Italy.<br />
<br />
====North America====<br />
*[[https://www.mavradio.fm MavRadio]] - Student-run radio station of the [http://www.unomaha.edu University of Nebraska at Omaha].<br />
*[[http://www.birdnest.org/winr WINR]] - Student-run radio station at Winthrop University in Rock Hill, SC. Rivendell is in use currently on the weekends when live staff are not in the studio.<br />
*[[http://www.seahawkradio.com SMC Radio - The Hawk]] - St. Mary's College Radio, The Hawk is the student-run radio station at St. Mary's College of Maryland.<br />
<br />
===Closed circuit / Low powered FM===<br />
====North America====<br />
*RadioPST - A closed-circuit French [[http://en.wikipedia.org/wiki/Sainte-Th%C3%A9r%C3%A8se,_Quebec Sainte-Thérèse]] high-school radio station fully automated with live interventions and live bands.<br />
*CLG2 89,9FM - [[http://fr.wikipedia.org/wiki/Coll%C3%A8ge_Lionel-Groulx Collège Lionel Groulx]] fully automated 24/7 low powered FM French radio station.</div>
DKlann
http://wiki.rivendellaudio.org/index.php?title=Stations_using_Rivendell&diff=614
Stations using Rivendell
2021-07-30T17:13:27Z
<p>DKlann: Remove text from opening paragraph that referred to defunct links to various salem radio sites.</p>
<hr />
<div>Here is a list of Radio stations that are using Rivendell.<br />
<br />
===AM Stations===<br />
====North America====<br />
*[[http://www.1010kbw.com KBBW-AM]] - 1010 KBW is a Christian teaching and talk station in Waco, Texas<br />
*[[http://www.kgnw.com KGNW-AM]] - KGNW AM 820 is a Christian teaching and talk station in Seattle-Tacoma, Washington<br />
*[[http://www.1590klfe.com KLFE-AM]] - 1590 KLFE is a Christian teaching and talk station in Seattle-Tacoma, Washington<br />
*[[http://www.1300kol.com KKOL-AM]] - News-Talk 1300 KOL is a news and talk station in Seattle-Tacoma, Washington<br />
*[[http://www.radiosol1360.com KKMO-AM]] - RADIO SOL 1360 AM is a spanish station in Seattle-Tacoma, Washington<br />
*[[http://www.salem.cc KTFH-AM]] - 1680 KTFH "The Bridge" is an international station in Seattle-Tacoma, Washington<br />
*[[http://www.1360wkat.com WKAT-AM]] - News-Talk 1360 WKAT is a news and talk station in Miami-Ft. Lauderdale-Hollywood, Florida<br />
*[[http://www.wlssradio.com WLSS-AM]] - News-Talk 930 WLSS is a news and talk station in Sarasota-Bradenton, Florida<br />
*[[http://www.860wgul.com WGUL-AM]] - News-Talk 860 WGUL is a news and talk station in Tampa-St. Petersburg-Clearwater, Florida<br />
*[[http://www.bayword.com WTBN-AM]] - WTBN 570 AM is a Christian teaching and talk station in Tampa-St. Petersburg-Clearwater, Florida<br />
*[[http://www.bayword.com WTWD-AM]] - WTWD 910 AM is a Christian teaching and talk station in Tampa-St. Petersburg-Clearwater, Florida<br />
*[[http://www.wdtkam.com WDTK-AM]] - WDTK 1400 AM is a News Talk station in Detroit, Michigan<br />
*[[http://www.am1500wlqv.com WLQV-AM]] - WLQV 1500 AM is a Christian teaching and talk station in Detroit, Michigan<br />
*[[http://www.krpiradio.com KRPI-AM]] - KRPI 1550 AM is an East Indian music and talk station in Ferndale, Washington<br />
*[[http://www.am1330kvol.com KVOL-AM]] - KVOL 1330 AM is a news talk station in Lafayette, Louisiana<br />
*[[http://www.fsr1520 KFXZ-AM]] - KFXZ 1520 AM is a Fox Sports Radio affiliate station in Lafayette, Louisiana<br />
*[[http://wutt.ut.edu WUTT]] - WUTT 1080 AM is the student radio station at the University of Tampa in Tampa, Florida.<br />
*[[http://classical959.com WCRI]] - WCRI 1180 AM is a classical music station in Hope Valley, Rhode Island.<br />
*[[http://www.wsjcradio.com WSJC]] - WSJC 810 AM is a Christian teaching and talk station in Magee, Mississippi.<br />
*[[http://www.wtcgradio.com WTCG]] - WTCG 870 AM is a Christian teaching and talk station in Mt Holly, North Carolina.<br />
*[[http://wxva.com WXVA]] - WXVA 610 AM is a full service greatest hits of all time station in Winchester, VA.<br />
*Rolling Valley Radio - 1700 AM is a US [[wikipedia:Title 47 CFR Part 15|FCC]] &ldquo;[https://www.hobbybroadcaster.net/resources/FCC-Part-15-regulations.php Part 15]&rdquo; low-power hobby broadcaster in Springfield, VA (suburban Washington DC).<br />
<br />
====Pacifica====<br />
*[[http://www.oar.org.nz Otago Access Radio]] - 105.4 / 1575 AM is a Community Access Radio Station in Dunedin, New Zealand.<br />
*Big Valley Radio 107.4 Thames Whangamata Whitianga on the Coromandel Peninsula, New Zealand<br />
<br />
====Europe====<br />
*[[http://www.insanityradio.com Insanity Radio]] - 1287AM, a student radio station in Egham, UK, at Royal Holloway, University of London (only for sustainer at present)<br />
<br />
===FM Stations===<br />
====Asia====<br />
*[[http://www.bigsound.com BIG Sound FM]] - Vanguard Radio Network's 101.5 BIG Sound FM Cabanatuan City and 95.9 BIG Sound FM Baguio City, Philippines.<br />
====Europe====<br />
*[[http://www.radiomax.dk Radio Max]] - broadcasting 24/7 in Denmark<br />
*[[http://www.felixstoweradio.co.uk Felixstowe Radio 107.5 FM]] A UK community radio station covering Felixstowe and the Colenis peninsula in sunny East Anglia. Rivendell plays pre-recorded and live-assisted content during the day for our FM and Internet stream output (overnight sustainer uses a separate commercial product) [[http://www.felixstoweradio.co.uk/link.m3u Internet stream]]<br />
*[[http://www.blackdiamondfm.com 107.8 Black Diamond FM]] Black Diamond FM is a community station serving Midlothian, Scotland. Rivendell plays non-stop music overnight and switches to IRN News by satellite every hour. [[http://www.blackdiamondfm.com/listen Stream link]]<br />
*[[http://www.radiohertz.de Hertz 87.9]] - Campus Radio in Bielefeld, Germany<br />
*[[http://www.hochschulradio-aachen.de Hochschulradio Aachen]] - Campus Radio Aachen, Campusradio of [http://www.rwth.de/ RWTH Aachen University], 99.1 MHz<br />
*[[http://helsinki.at Radio Helsinki]] - Radio Helsinki, free Radio Graz, Austria, 92.6 MHz<br />
*[[http://www.radiocampusamiens.com Radio Campus Amiens]] - Radio Campus Amiens, student Radio in the north of France, 24/7 w/Rivendell on 87.7 MHz<br />
*[[http://grafhit.net Graf'hit]] - student/community radio based in the [http://www.utc.fr University of Technology of Compiègne], France, 24/7 on 94.9MHz ([https://grafhit.net:8443/grafhit.mp3 stream]). Powered by free software.<br />
*[[http://www.hit-radio.be Hit Radio Namur]] - Commercial Radio in Namur/Belgium, 24/7 on 94.9 MHz<br />
*[[http://www.ras.cat R&agrave;dio Artesa de Segre]] - A municipal radio station serving Artesa de Segre and its municipality in Catalonia (Spain), 24/7 on 90.2 MHz thanks to Rivendell Audio.<br />
*[[http://www.radioaktiv.org radioaktiv]] Campusradio of the Universities of Mannheim, Heidelberg and Ludwigshafen (Germany)<br />
*[[http://www.radiom.fr RADIOM]] Student radio from Castres, France. Broadcasting 24/7 on 89.7 MHz<br />
*[[http://divergence-fm.org Divergence FM]] No commercial, associative radio from Montpellier (France). Broadcasting 24/7 on 93.9MHz. Full running on free software.<br />
*[[http://www.radiohw.co.uk Radio Hartley Wintney]] - Community RSL radio station running from [[http://www.stjohnshw.co.uk St. Johns Church]] for 2 weeks a year in Hartley Wintney, Hampshire, UK on 87.7FM.<br />
*[[http://www.radioer.pl Radio eR]] - broadcasting 24/7 in Lublin, Poland on 87.9 FM. <br />
*[[http://www.radioi.pl Radio i]] - broadcasting 24/7 in Białystok, Poland on 103.3 FM. <br />
*[[http://www.radiomalbork.fm Radio Malbork]] - broadcasting 24/7 in Malbork, Poland on 90.4 FM<br />
* [http://www.run.be La RUN] - student Radio broadcasting in Namur, Belgium on 88.1 FM<br />
* [http://www.radiolarzac.org Radio Larzac] - in Millau, France on 87.8 Mhz<br />
* [http://www.radiolaser.fr Radio Laser] - in Guichen near Rennes, France on 95.9 Mhz<br />
* [http://radioclapas.fr Radio Clapas] - in Montpellier, France on 93.5 Mhz<br />
* [http://www.radio-couleur-chartreuse.org Radio Couleur Chartreuse] - in The Chartreuse Mountains, France on 98,4 and 106 Mhz<br />
* [http://radiofontaine.fr Radio Fontaine] near Grenoble, France on 88.6 FM <br />
* [http://www.radio-gresivaudan.org Radio Grésivaudan] in Crolles near Grenoble, France 87.8, on 89 and 92.4 Mhz<br />
* [http://www.radiocampusrennes.fr Radio Campus Rennes] - in Rennes, France on 88.4 Mhz<br />
* [http://www.radio-active.net Radio Active] - in Toulon, France on 100.0 Mhz<br />
* [http://www.radiopac.fr Radio PAC] - in Pompadour, Corrèze, France on 101.9 Mhz<br />
* [http://www.radiogrilleouverte.com Radio Grille Ouverte] - in Alès, France on 88.2 Mhz<br />
* [http://www.radiofildeleau.fr Radio Fil de l'Eau] - in L'Isle-Jourdain, near Toulouse, France on 106.6 Mhz and Fleurance in Gers, France on 100.9 Mhz<br />
* [http://www.radiocampusmontpellier.fr Radio Campus Montpellier] - in Montpellier, France on 102.2 Mhz<br />
* [http://lalocale.ckdevelop.org Radio La Locale] - in Saint-Girons, France on 97.3 Mhz<br />
* [http://www.orleans.radiocampus.org Radio Campus Orléans] - student Radio in Orléans, 24/7 w/Rivendell on 88.3 MHz FM<br />
* [http://www.campusgrenoble.org Radio Campus Grenoble] - student Radio in Grenoble, 24/7 w/Rivendell on 90.8 MHz FM<br />
* [https://www.radiosaintaffrique.com Radio Saint-Affrique] - in Saint-Affrique, France on 96.7 but also 92.7 in Camarès, 99.9 in Belmont-sur-Rance and 100.6 in Millau<br />
<br />
====North America====<br />
*[[http://www.my997.org KDHE-LP My99.7]] - An independent radio station located in Spring Creek, NV and operated by the non-profit Spring Creek Christian Academy.<br />
*[[http://www.wlfc883.com WLFC-FM]] - Bringing independent label rock to Northwest Ohio from the University of Findlay<br />
*[[http://www.wgxc.org/ WGXC]] - 90.7 is a community radio station broadcasting to Greene and Columbia counties in New York. It is a project of [[http://wavefarm.org/ Wave Farm]].<br />
*[[http://www.smoothjazz106.com KKSJ-FM]] - 106.3 KKSJ is a Smooth Jazz radio station in Lafayette, Louisiana.<br />
*[[http://www.1059thefox.com KFXZ-FM]] - 105.9 KFXZ is a Country Legends radio station in Lafayette, Louisiana.<br />
*[[http://www.kdrt.org KDRT-LPFM]] - 101.5 KDRT-LP is a low-power non-commercial radio station serving Davis, California. Operated by [http://www.dctv.davis.ca.us Davis Community Television], KDRT is an important avenue for the voices in our community, especially those not typically found on commercial radio.<br />
*[[http://www.saskatoonchristianradio.com CFAQ-FM]] - 100.3 CFAQ is a Christian music station in Saskatoon, Canada.<br />
*KETL-LPFM - 100.5 is a Christian radio station in Republic Washington. We air both talk and music.<br />
*[[http://www.kdar.com KDAR-FM]] - 98.3 KDAR is a Christian teaching and talk station in Oxnard-Ventura, California<br />
*[[http://www.kptz.org KPTZ]] - 91.9 KPTZ is a Class A non-commercial community station in Port Townsend, Washington, licensed to Radio Port Townsend, a 501(c)(3) non-profit. We are using a client/server implementation of Rivendell in an all digital studio environment. KPTZ programs music and locally originated programs. The Rivendell system keeps programs going out 24/7 with a small station staff.<br />
*[[http://www.92zew.net WZEW-FM]] - Commercial Triple A Music Fm located in Mobile, Al.<br />
*[[http://www.wmfo.org WMFO - Tufts Freeform Radio]] - 91.5 Medford: Tufts University Freeform and Community Radio. Broadcasting to Medford, Sommerville, Cambridge, & Boston Areas.<br />
*[[WPSA 98.3]] is the Official Radio Station of [[Paul Smith's College]] a non-commercial, terrestrial based station dedicated to the Paul Smith's College community. Proudly operating 100% on free and open source software.<br />
*[[http://witr.rit.edu WITR]] - WITR 89.7 is the student-run FM radio station at [http://rit.edu Rochester Institute of Technology]; Rochester, NY. WITR airs indie, alternative, and garage rock, with specialty shows in the evening hours.<br />
*[[http://www.wmnf.org/thesource WMNF HD-3]] - WMNF's HD-3 in Tampa, FL is a fully-automated news & public affairs channel that uses Rivendell to import/play/switch content from a variety of sources, including pre-recorded/podcasted shows, live Internet streams, and live satellite feeds.<br />
*[[http://www.wcdbfm.com WCDB SUNYRADIO]] - 90.9 University Radio in Albany, NY. We're a primarily music non-commercial alternative university/community station that has programming from all and cultures. We implement RAAbuntu to keep 24/7.<br />
*[[http://www.kaskradio.com KASK]] - KASK 91.5 FM is a Christian teaching and talk station in Vacaville, California.<br />
*[[http://www.kfhlradio.com KFHL]] - KFHL 91.7 FM is a Christian teaching and talk station in Bakersfield, California.<br />
*[[http://www.wgttradio.com WGTT]] - WGTT 91.5 FM is a Christian teaching and talk station in Esmeralda, Florida.<br />
*[[http://www.whfgradio.com WHFG]] - WHFG 91.3 FM is a Christian teaching and talk station in Lafayette, Louisiana.<br />
*[[http://classical959.com WCRI]] - WCRI 95.9 FM is a classical music station on Block Island, Rhode Island.<br />
*[[http://whrb.org WHRB]] - WHRB 95.3 FM is a student-operated station at Harvard University (Cambridge, Massachusetts).<br />
*[[http://www.kpsq.org KPSQ-LP]] - KPSQ-LP 97.3 FM is a new (in 2016) [[wikipedia:LPFM|Low Power FM]] station in Fayetteville, AR<br />
*[[http://wdrt.org WDRT]] - WDRT 91.9 FM is a community radio station powered by 90+ volunteers in Viroqua, WI<br />
*[[http://www.kfai.org KFAI]] - KFAI 90.3 FM is a community radio station in Minneapolis/St Paul, MN<br />
*[[http://www.kmud.org KMUD]] - KMUD 91.1 Garberville, 88.1 Eureka, 90.3 Laytonville, 99.5 Shelter Cove is a community radio station in Northern CA<br />
*[[http://wnuc.org WNUC-LP]] - WNUC-LP 96.7 FM Detroit, MI is a community radio station in the North End neighborhood<br />
*[[https://www.graceradio.net/ KGCE-LP]] - KGCE-LP 107.9 FM Modesto, California &ldquo;GraceRadio&rdquo; is a Christian teaching and music station<br />
*[[https://www.wrfi.org/ WRFI]] - WRFI 88.1 FM Ithaca, 91.9 FM Watkins Glen, New York is Community Radio for Ithaca NY and the surrounding area<br />
*[[https://naparadio.org/ Napa Radio Project]] - KCMU-LP 103.3 FM Napa, California, &ldquo;Great music for getting into some Good Trouble&rdquo;<br />
<br />
====Pacifica====<br />
*[[http://www.countryradionetwork.com Country Radio]] - 87.7 FM Dunedin, New Zealand. (Since August 2008).<br />
*[[http://www.totalfm.nz Total FM]] - 107.3 FM Dunedin, New Zealand. (Since March 2012).<br />
<br />
====South America====<br />
*[[http://www.radio.ufscar.br Rádio UFSCar]] - 95.3 MHz Rádio UFSCar is a universitery radio station broadcasted from [http://ufscar.br UFSCar] Campus in São Carlos, São Paulo - Brazil.<br />
<br />
*[[http://www.sonidofm.net Sonido 104.3 FM]] - 104.3 MHz Sonido FM, is an Adult Contemporary Radio in San Carlos, Cojedes - Bolivarian Republic of Venezuela.<br />
<br />
*[[http://albaciudad.org Alba Ciudad 96.3 FM]] - 96.3 Mhz Alba Ciudad, A revolutionary cultural and socially oriented radio station in Caracas - Bolivarian Republic of Venezuela.<br />
<br />
*[[http://magicaradio.wordpress.com Mágica 106.3 FM]] - 106.3 Mhz FM Mágica, A communitary communicational project in Puerto Ayacucho, state of Amazonas - Bolivarian Republic of Venezuela.<br />
<br />
===Radio Station Chains===<br />
====North America====<br />
*[[http://www.worldradionetwork.org/ World Radio Network / Radio Cadena Manantial]] A Chain of not-for-profit radio stations along the USA/Mexico Border providing Christian programming in Spanish and English.<br />
**[[http://www.kbnj.org/ KBNJ-FM]] English station in Corpus Christi, TX (91.7)<br />
**[[http://www.kbnl.org/ KBNL-FM]] Spanish station in Laredo, TX (89.9)<br />
**KEPI-FM English Station in Eagle Pass, TX (88.7)<br />
**[[http://www.kepx.org/ KEPX-FM]] Spanish station in Eagle Pass, TX (89.5)<br />
**[[http://www.knog.org KNOG-FM]] Spanish station in Nogales, AZ (91.1) with translators in Tucson and Phoenix.<br />
**KRMB-FM Spanish station in Bisbee, AZ (90.1)<br />
**KRMC-FM Spanish station in Douglas, AZ (91.7)<br />
**[[http://www.kver.org/ KVER-FM]] Spanish station in El Paso, TX (91.1)<br />
**[[http://www.kvmv.org/ KVMV-FM]] English station in McAllen, TX (91.7)<br />
**[[http://www.kwrb.org/ KWRB-FM "The Spark FM"]] English station in Sierra Vista, AZ (90.9)<br />
**[[http://www.kyrmradio.org KYRM-FM]] Spanish station in Yuma, AZ (91.9)<br />
*[[http://www.familyfirstradio.com Family First Radio Network]] A Chain of not-for-profit radio stations providing Christian programming in English.<br />
**[[http://www.kaskradio.com KASK]] - KASK 91.5 FM is a Christian teaching and talk station in Vacaville, California.<br />
**[[http://www.kfhlradio.com KFHL]] - KFHL 91.7 FM is a Christian teaching and talk station in Bakersfield, California.<br />
**[[http://www.wgttradio.com WGTT]] - WGTT 91.5 FM is a Christian teaching and talk station in Esmeralda, Florida.<br />
**[[http://www.whfgradio.com WHFG]] - WHFG 91.3 FM is a Christian teaching and talk station in Lafayette, Louisiana.<br />
**[[http://www.wsjcradio.com WSJC]] - WSJC 810 AM is a Christian teaching and talk station in Magee, Mississippi.<br />
**[[http://www.wtcgradio.com WTCG]] - WTCG 870 AM is a Christian teaching and talk station in Mt Holly, North Carolina.<br />
*[[http://www.theclassicalstation.net World Classical Network]] A classical music radio network based in Hyannis, Massachusetts.<br />
* [[https://platteriverradio.com/ Platte River Radio]] a locally owned, locally managed media company in the Tri-Cities of Nebraska<br />
**[[https://platteriverradio.com/kliq/ KLIQ]] The Breeze 94.5 FM, the Tri-Cities Best Mix<br />
**[[https://platteriverradio.com/khas/ KHAS]] 1230 AM, Local news and sports for Hastings, NE<br />
**[[https://platteriverradio.com/kkpr/ KKPR]] Power 99, 98.9 FM, Classic Hits and High School Sports for the Tri-Cities<br />
**[[https://platteriverradio.com/espn/ KXPN/KICS]] Tri-Cities ESPN, 1460/1550 AM, ESPN local sports in the Tri-Cities<br />
*[[https://www.radioesperanza.com/ Radio Esperanza]] Radio Esperanza: Spanish Christian teach, talk, & music<br />
**KRIO 910 AM Edinburg, TX<br />
**KRIO 97.7 FM Roma, TX<br />
**KOIR 88.5 FM Pharr, TX<br />
<br />
===Shortwave Stations===<br />
====North America====<br />
*[[http://www.rfa.org RFA]] - RFA broadcasts news and information in nine native Asian languages to listeners who do not have access to full and free news media.<br />
<br />
===Internet Only Stations===<br />
====Europe====<br />
*[[http://www.icradio.com IC Radio]] - Student-run radio station of [http://www.imperial.ac.uk Imperial College London] (M-Audio Delta 1010).<br />
*[[http://www.autres-mondes.org Autres(M)Ondes]] - Ephemeral radio events performed around the Europe. Rivendell is the main component of our audio setup [http://www.flickr.com/photos/albanpeignier/6714170037 since 2004].<br />
*[[http://www.poliradio.it Poli.Radio]] - Amateur webradio promoted by the students from Politecnico di Milano, Italy.<br />
<br />
====North America====<br />
*[[https://www.mavradio.fm MavRadio]] - Student-run radio station of the [http://www.unomaha.edu University of Nebraska at Omaha].<br />
*[[http://www.birdnest.org/winr WINR]] - Student-run radio station at Winthrop University in Rock Hill, SC. Rivendell is in use currently on the weekends when live staff are not in the studio.<br />
*[[http://www.seahawkradio.com SMC Radio - The Hawk]] - St. Mary's College Radio, The Hawk is the student-run radio station at St. Mary's College of Maryland.<br />
<br />
===Closed circuit / Low powered FM===<br />
====North America====<br />
*RadioPST - A closed-circuit French [[http://en.wikipedia.org/wiki/Sainte-Th%C3%A9r%C3%A8se,_Quebec Sainte-Thérèse]] high-school radio station fully automated with live interventions and live bands.<br />
*CLG2 89,9FM - [[http://fr.wikipedia.org/wiki/Coll%C3%A8ge_Lionel-Groulx Collège Lionel Groulx]] fully automated 24/7 low powered FM French radio station.</div>
DKlann
http://wiki.rivendellaudio.org/index.php?title=Stations_using_Rivendell&diff=613
Stations using Rivendell
2021-07-30T17:03:04Z
<p>DKlann: Add KCMU-LP, Napa Radio Project, remove Ocooch Mountain Radio (station is defunct).</p>
<hr />
<div>Here is a list of Radio stations that are using Rivendell. Many of the stations below are owned by [http://www.salem.cc Salem Communications], the parent of [http://www.salemradiolabs.com Salem Radio Laboratories], the initial developers of [http://www.salemradiolabs.com/rivendell/ Rivendell].<br />
<br />
===AM Stations===<br />
====North America====<br />
*[[http://www.1010kbw.com KBBW-AM]] - 1010 KBW is a Christian teaching and talk station in Waco, Texas<br />
*[[http://www.kgnw.com KGNW-AM]] - KGNW AM 820 is a Christian teaching and talk station in Seattle-Tacoma, Washington<br />
*[[http://www.1590klfe.com KLFE-AM]] - 1590 KLFE is a Christian teaching and talk station in Seattle-Tacoma, Washington<br />
*[[http://www.1300kol.com KKOL-AM]] - News-Talk 1300 KOL is a news and talk station in Seattle-Tacoma, Washington<br />
*[[http://www.radiosol1360.com KKMO-AM]] - RADIO SOL 1360 AM is a spanish station in Seattle-Tacoma, Washington<br />
*[[http://www.salem.cc KTFH-AM]] - 1680 KTFH "The Bridge" is an international station in Seattle-Tacoma, Washington<br />
*[[http://www.1360wkat.com WKAT-AM]] - News-Talk 1360 WKAT is a news and talk station in Miami-Ft. Lauderdale-Hollywood, Florida<br />
*[[http://www.wlssradio.com WLSS-AM]] - News-Talk 930 WLSS is a news and talk station in Sarasota-Bradenton, Florida<br />
*[[http://www.860wgul.com WGUL-AM]] - News-Talk 860 WGUL is a news and talk station in Tampa-St. Petersburg-Clearwater, Florida<br />
*[[http://www.bayword.com WTBN-AM]] - WTBN 570 AM is a Christian teaching and talk station in Tampa-St. Petersburg-Clearwater, Florida<br />
*[[http://www.bayword.com WTWD-AM]] - WTWD 910 AM is a Christian teaching and talk station in Tampa-St. Petersburg-Clearwater, Florida<br />
*[[http://www.wdtkam.com WDTK-AM]] - WDTK 1400 AM is a News Talk station in Detroit, Michigan<br />
*[[http://www.am1500wlqv.com WLQV-AM]] - WLQV 1500 AM is a Christian teaching and talk station in Detroit, Michigan<br />
*[[http://www.krpiradio.com KRPI-AM]] - KRPI 1550 AM is an East Indian music and talk station in Ferndale, Washington<br />
*[[http://www.am1330kvol.com KVOL-AM]] - KVOL 1330 AM is a news talk station in Lafayette, Louisiana<br />
*[[http://www.fsr1520 KFXZ-AM]] - KFXZ 1520 AM is a Fox Sports Radio affiliate station in Lafayette, Louisiana<br />
*[[http://wutt.ut.edu WUTT]] - WUTT 1080 AM is the student radio station at the University of Tampa in Tampa, Florida.<br />
*[[http://classical959.com WCRI]] - WCRI 1180 AM is a classical music station in Hope Valley, Rhode Island.<br />
*[[http://www.wsjcradio.com WSJC]] - WSJC 810 AM is a Christian teaching and talk station in Magee, Mississippi.<br />
*[[http://www.wtcgradio.com WTCG]] - WTCG 870 AM is a Christian teaching and talk station in Mt Holly, North Carolina.<br />
*[[http://wxva.com WXVA]] - WXVA 610 AM is a full service greatest hits of all time station in Winchester, VA.<br />
*Rolling Valley Radio - 1700 AM is a US [[wikipedia:Title 47 CFR Part 15|FCC]] &ldquo;[https://www.hobbybroadcaster.net/resources/FCC-Part-15-regulations.php Part 15]&rdquo; low-power hobby broadcaster in Springfield, VA (suburban Washington DC).<br />
<br />
====Pacifica====<br />
*[[http://www.oar.org.nz Otago Access Radio]] - 105.4 / 1575 AM is a Community Access Radio Station in Dunedin, New Zealand.<br />
*Big Valley Radio 107.4 Thames Whangamata Whitianga on the Coromandel Peninsula, New Zealand<br />
<br />
====Europe====<br />
*[[http://www.insanityradio.com Insanity Radio]] - 1287AM, a student radio station in Egham, UK, at Royal Holloway, University of London (only for sustainer at present)<br />
<br />
===FM Stations===<br />
====Asia====<br />
*[[http://www.bigsound.com BIG Sound FM]] - Vanguard Radio Network's 101.5 BIG Sound FM Cabanatuan City and 95.9 BIG Sound FM Baguio City, Philippines.<br />
====Europe====<br />
*[[http://www.radiomax.dk Radio Max]] - broadcasting 24/7 in Denmark<br />
*[[http://www.felixstoweradio.co.uk Felixstowe Radio 107.5 FM]] A UK community radio station covering Felixstowe and the Colenis peninsula in sunny East Anglia. Rivendell plays pre-recorded and live-assisted content during the day for our FM and Internet stream output (overnight sustainer uses a separate commercial product) [[http://www.felixstoweradio.co.uk/link.m3u Internet stream]]<br />
*[[http://www.blackdiamondfm.com 107.8 Black Diamond FM]] Black Diamond FM is a community station serving Midlothian, Scotland. Rivendell plays non-stop music overnight and switches to IRN News by satellite every hour. [[http://www.blackdiamondfm.com/listen Stream link]]<br />
*[[http://www.radiohertz.de Hertz 87.9]] - Campus Radio in Bielefeld, Germany<br />
*[[http://www.hochschulradio-aachen.de Hochschulradio Aachen]] - Campus Radio Aachen, Campusradio of [http://www.rwth.de/ RWTH Aachen University], 99.1 MHz<br />
*[[http://helsinki.at Radio Helsinki]] - Radio Helsinki, free Radio Graz, Austria, 92.6 MHz<br />
*[[http://www.radiocampusamiens.com Radio Campus Amiens]] - Radio Campus Amiens, student Radio in the north of France, 24/7 w/Rivendell on 87.7 MHz<br />
*[[http://grafhit.net Graf'hit]] - student/community radio based in the [http://www.utc.fr University of Technology of Compiègne], France, 24/7 on 94.9MHz ([https://grafhit.net:8443/grafhit.mp3 stream]). Powered by free software.<br />
*[[http://www.hit-radio.be Hit Radio Namur]] - Commercial Radio in Namur/Belgium, 24/7 on 94.9 MHz<br />
*[[http://www.ras.cat R&agrave;dio Artesa de Segre]] - A municipal radio station serving Artesa de Segre and its municipality in Catalonia (Spain), 24/7 on 90.2 MHz thanks to Rivendell Audio.<br />
*[[http://www.radioaktiv.org radioaktiv]] Campusradio of the Universities of Mannheim, Heidelberg and Ludwigshafen (Germany)<br />
*[[http://www.radiom.fr RADIOM]] Student radio from Castres, France. Broadcasting 24/7 on 89.7 MHz<br />
*[[http://divergence-fm.org Divergence FM]] No commercial, associative radio from Montpellier (France). Broadcasting 24/7 on 93.9MHz. Full running on free software.<br />
*[[http://www.radiohw.co.uk Radio Hartley Wintney]] - Community RSL radio station running from [[http://www.stjohnshw.co.uk St. Johns Church]] for 2 weeks a year in Hartley Wintney, Hampshire, UK on 87.7FM.<br />
*[[http://www.radioer.pl Radio eR]] - broadcasting 24/7 in Lublin, Poland on 87.9 FM. <br />
*[[http://www.radioi.pl Radio i]] - broadcasting 24/7 in Białystok, Poland on 103.3 FM. <br />
*[[http://www.radiomalbork.fm Radio Malbork]] - broadcasting 24/7 in Malbork, Poland on 90.4 FM<br />
* [http://www.run.be La RUN] - student Radio broadcasting in Namur, Belgium on 88.1 FM<br />
* [http://www.radiolarzac.org Radio Larzac] - in Millau, France on 87.8 Mhz<br />
* [http://www.radiolaser.fr Radio Laser] - in Guichen near Rennes, France on 95.9 Mhz<br />
* [http://radioclapas.fr Radio Clapas] - in Montpellier, France on 93.5 Mhz<br />
* [http://www.radio-couleur-chartreuse.org Radio Couleur Chartreuse] - in The Chartreuse Mountains, France on 98,4 and 106 Mhz<br />
* [http://radiofontaine.fr Radio Fontaine] near Grenoble, France on 88.6 FM <br />
* [http://www.radio-gresivaudan.org Radio Grésivaudan] in Crolles near Grenoble, France 87.8, on 89 and 92.4 Mhz<br />
* [http://www.radiocampusrennes.fr Radio Campus Rennes] - in Rennes, France on 88.4 Mhz<br />
* [http://www.radio-active.net Radio Active] - in Toulon, France on 100.0 Mhz<br />
* [http://www.radiopac.fr Radio PAC] - in Pompadour, Corrèze, France on 101.9 Mhz<br />
* [http://www.radiogrilleouverte.com Radio Grille Ouverte] - in Alès, France on 88.2 Mhz<br />
* [http://www.radiofildeleau.fr Radio Fil de l'Eau] - in L'Isle-Jourdain, near Toulouse, France on 106.6 Mhz and Fleurance in Gers, France on 100.9 Mhz<br />
* [http://www.radiocampusmontpellier.fr Radio Campus Montpellier] - in Montpellier, France on 102.2 Mhz<br />
* [http://lalocale.ckdevelop.org Radio La Locale] - in Saint-Girons, France on 97.3 Mhz<br />
* [http://www.orleans.radiocampus.org Radio Campus Orléans] - student Radio in Orléans, 24/7 w/Rivendell on 88.3 MHz FM<br />
* [http://www.campusgrenoble.org Radio Campus Grenoble] - student Radio in Grenoble, 24/7 w/Rivendell on 90.8 MHz FM<br />
* [https://www.radiosaintaffrique.com Radio Saint-Affrique] - in Saint-Affrique, France on 96.7 but also 92.7 in Camarès, 99.9 in Belmont-sur-Rance and 100.6 in Millau<br />
<br />
====North America====<br />
*[[http://www.my997.org KDHE-LP My99.7]] - An independent radio station located in Spring Creek, NV and operated by the non-profit Spring Creek Christian Academy.<br />
*[[http://www.wlfc883.com WLFC-FM]] - Bringing independent label rock to Northwest Ohio from the University of Findlay<br />
*[[http://www.wgxc.org/ WGXC]] - 90.7 is a community radio station broadcasting to Greene and Columbia counties in New York. It is a project of [[http://wavefarm.org/ Wave Farm]].<br />
*[[http://www.smoothjazz106.com KKSJ-FM]] - 106.3 KKSJ is a Smooth Jazz radio station in Lafayette, Louisiana.<br />
*[[http://www.1059thefox.com KFXZ-FM]] - 105.9 KFXZ is a Country Legends radio station in Lafayette, Louisiana.<br />
*[[http://www.kdrt.org KDRT-LPFM]] - 101.5 KDRT-LP is a low-power non-commercial radio station serving Davis, California. Operated by [http://www.dctv.davis.ca.us Davis Community Television], KDRT is an important avenue for the voices in our community, especially those not typically found on commercial radio.<br />
*[[http://www.saskatoonchristianradio.com CFAQ-FM]] - 100.3 CFAQ is a Christian music station in Saskatoon, Canada.<br />
*KETL-LPFM - 100.5 is a Christian radio station in Republic Washington. We air both talk and music.<br />
*[[http://www.kdar.com KDAR-FM]] - 98.3 KDAR is a Christian teaching and talk station in Oxnard-Ventura, California<br />
*[[http://www.kptz.org KPTZ]] - 91.9 KPTZ is a Class A non-commercial community station in Port Townsend, Washington, licensed to Radio Port Townsend, a 501(c)(3) non-profit. We are using a client/server implementation of Rivendell in an all digital studio environment. KPTZ programs music and locally originated programs. The Rivendell system keeps programs going out 24/7 with a small station staff.<br />
*[[http://www.92zew.net WZEW-FM]] - Commercial Triple A Music Fm located in Mobile, Al.<br />
*[[http://www.wmfo.org WMFO - Tufts Freeform Radio]] - 91.5 Medford: Tufts University Freeform and Community Radio. Broadcasting to Medford, Sommerville, Cambridge, & Boston Areas.<br />
*[[WPSA 98.3]] is the Official Radio Station of [[Paul Smith's College]] a non-commercial, terrestrial based station dedicated to the Paul Smith's College community. Proudly operating 100% on free and open source software.<br />
*[[http://witr.rit.edu WITR]] - WITR 89.7 is the student-run FM radio station at [http://rit.edu Rochester Institute of Technology]; Rochester, NY. WITR airs indie, alternative, and garage rock, with specialty shows in the evening hours.<br />
*[[http://www.wmnf.org/thesource WMNF HD-3]] - WMNF's HD-3 in Tampa, FL is a fully-automated news & public affairs channel that uses Rivendell to import/play/switch content from a variety of sources, including pre-recorded/podcasted shows, live Internet streams, and live satellite feeds.<br />
*[[http://www.wcdbfm.com WCDB SUNYRADIO]] - 90.9 University Radio in Albany, NY. We're a primarily music non-commercial alternative university/community station that has programming from all and cultures. We implement RAAbuntu to keep 24/7.<br />
*[[http://www.kaskradio.com KASK]] - KASK 91.5 FM is a Christian teaching and talk station in Vacaville, California.<br />
*[[http://www.kfhlradio.com KFHL]] - KFHL 91.7 FM is a Christian teaching and talk station in Bakersfield, California.<br />
*[[http://www.wgttradio.com WGTT]] - WGTT 91.5 FM is a Christian teaching and talk station in Esmeralda, Florida.<br />
*[[http://www.whfgradio.com WHFG]] - WHFG 91.3 FM is a Christian teaching and talk station in Lafayette, Louisiana.<br />
*[[http://classical959.com WCRI]] - WCRI 95.9 FM is a classical music station on Block Island, Rhode Island.<br />
*[[http://whrb.org WHRB]] - WHRB 95.3 FM is a student-operated station at Harvard University (Cambridge, Massachusetts).<br />
*[[http://www.kpsq.org KPSQ-LP]] - KPSQ-LP 97.3 FM is a new (in 2016) [[wikipedia:LPFM|Low Power FM]] station in Fayetteville, AR<br />
*[[http://wdrt.org WDRT]] - WDRT 91.9 FM is a community radio station powered by 90+ volunteers in Viroqua, WI<br />
*[[http://www.kfai.org KFAI]] - KFAI 90.3 FM is a community radio station in Minneapolis/St Paul, MN<br />
*[[http://www.kmud.org KMUD]] - KMUD 91.1 Garberville, 88.1 Eureka, 90.3 Laytonville, 99.5 Shelter Cove is a community radio station in Northern CA<br />
*[[http://wnuc.org WNUC-LP]] - WNUC-LP 96.7 FM Detroit, MI is a community radio station in the North End neighborhood<br />
*[[https://www.graceradio.net/ KGCE-LP]] - KGCE-LP 107.9 FM Modesto, California &ldquo;GraceRadio&rdquo; is a Christian teaching and music station<br />
*[[https://www.wrfi.org/ WRFI]] - WRFI 88.1 FM Ithaca, 91.9 FM Watkins Glen, New York is Community Radio for Ithaca NY and the surrounding area<br />
*[[https://naparadio.org/ Napa Radio Project]] - KCMU-LP 103.3 FM Napa, California, &ldquo;Great music for getting into some Good Trouble&rdquo;<br />
<br />
====Pacifica====<br />
*[[http://www.countryradionetwork.com Country Radio]] - 87.7 FM Dunedin, New Zealand. (Since August 2008).<br />
*[[http://www.totalfm.nz Total FM]] - 107.3 FM Dunedin, New Zealand. (Since March 2012).<br />
<br />
====South America====<br />
*[[http://www.radio.ufscar.br Rádio UFSCar]] - 95.3 MHz Rádio UFSCar is a universitery radio station broadcasted from [http://ufscar.br UFSCar] Campus in São Carlos, São Paulo - Brazil.<br />
<br />
*[[http://www.sonidofm.net Sonido 104.3 FM]] - 104.3 MHz Sonido FM, is an Adult Contemporary Radio in San Carlos, Cojedes - Bolivarian Republic of Venezuela.<br />
<br />
*[[http://albaciudad.org Alba Ciudad 96.3 FM]] - 96.3 Mhz Alba Ciudad, A revolutionary cultural and socially oriented radio station in Caracas - Bolivarian Republic of Venezuela.<br />
<br />
*[[http://magicaradio.wordpress.com Mágica 106.3 FM]] - 106.3 Mhz FM Mágica, A communitary communicational project in Puerto Ayacucho, state of Amazonas - Bolivarian Republic of Venezuela.<br />
<br />
===Radio Station Chains===<br />
====North America====<br />
*[[http://www.worldradionetwork.org/ World Radio Network / Radio Cadena Manantial]] A Chain of not-for-profit radio stations along the USA/Mexico Border providing Christian programming in Spanish and English.<br />
**[[http://www.kbnj.org/ KBNJ-FM]] English station in Corpus Christi, TX (91.7)<br />
**[[http://www.kbnl.org/ KBNL-FM]] Spanish station in Laredo, TX (89.9)<br />
**KEPI-FM English Station in Eagle Pass, TX (88.7)<br />
**[[http://www.kepx.org/ KEPX-FM]] Spanish station in Eagle Pass, TX (89.5)<br />
**[[http://www.knog.org KNOG-FM]] Spanish station in Nogales, AZ (91.1) with translators in Tucson and Phoenix.<br />
**KRMB-FM Spanish station in Bisbee, AZ (90.1)<br />
**KRMC-FM Spanish station in Douglas, AZ (91.7)<br />
**[[http://www.kver.org/ KVER-FM]] Spanish station in El Paso, TX (91.1)<br />
**[[http://www.kvmv.org/ KVMV-FM]] English station in McAllen, TX (91.7)<br />
**[[http://www.kwrb.org/ KWRB-FM "The Spark FM"]] English station in Sierra Vista, AZ (90.9)<br />
**[[http://www.kyrmradio.org KYRM-FM]] Spanish station in Yuma, AZ (91.9)<br />
*[[http://www.familyfirstradio.com Family First Radio Network]] A Chain of not-for-profit radio stations providing Christian programming in English.<br />
**[[http://www.kaskradio.com KASK]] - KASK 91.5 FM is a Christian teaching and talk station in Vacaville, California.<br />
**[[http://www.kfhlradio.com KFHL]] - KFHL 91.7 FM is a Christian teaching and talk station in Bakersfield, California.<br />
**[[http://www.wgttradio.com WGTT]] - WGTT 91.5 FM is a Christian teaching and talk station in Esmeralda, Florida.<br />
**[[http://www.whfgradio.com WHFG]] - WHFG 91.3 FM is a Christian teaching and talk station in Lafayette, Louisiana.<br />
**[[http://www.wsjcradio.com WSJC]] - WSJC 810 AM is a Christian teaching and talk station in Magee, Mississippi.<br />
**[[http://www.wtcgradio.com WTCG]] - WTCG 870 AM is a Christian teaching and talk station in Mt Holly, North Carolina.<br />
*[[http://www.theclassicalstation.net World Classical Network]] A classical music radio network based in Hyannis, Massachusetts.<br />
* [[https://platteriverradio.com/ Platte River Radio]] a locally owned, locally managed media company in the Tri-Cities of Nebraska<br />
**[[https://platteriverradio.com/kliq/ KLIQ]] The Breeze 94.5 FM, the Tri-Cities Best Mix<br />
**[[https://platteriverradio.com/khas/ KHAS]] 1230 AM, Local news and sports for Hastings, NE<br />
**[[https://platteriverradio.com/kkpr/ KKPR]] Power 99, 98.9 FM, Classic Hits and High School Sports for the Tri-Cities<br />
**[[https://platteriverradio.com/espn/ KXPN/KICS]] Tri-Cities ESPN, 1460/1550 AM, ESPN local sports in the Tri-Cities<br />
*[[https://www.radioesperanza.com/ Radio Esperanza]] Radio Esperanza: Spanish Christian teach, talk, & music<br />
**KRIO 910 AM Edinburg, TX<br />
**KRIO 97.7 FM Roma, TX<br />
**KOIR 88.5 FM Pharr, TX<br />
<br />
===Shortwave Stations===<br />
====North America====<br />
*[[http://www.rfa.org RFA]] - RFA broadcasts news and information in nine native Asian languages to listeners who do not have access to full and free news media.<br />
<br />
===Internet Only Stations===<br />
====Europe====<br />
*[[http://www.icradio.com IC Radio]] - Student-run radio station of [http://www.imperial.ac.uk Imperial College London] (M-Audio Delta 1010).<br />
*[[http://www.autres-mondes.org Autres(M)Ondes]] - Ephemeral radio events performed around the Europe. Rivendell is the main component of our audio setup [http://www.flickr.com/photos/albanpeignier/6714170037 since 2004].<br />
*[[http://www.poliradio.it Poli.Radio]] - Amateur webradio promoted by the students from Politecnico di Milano, Italy.<br />
<br />
====North America====<br />
*[[https://www.mavradio.fm MavRadio]] - Student-run radio station of the [http://www.unomaha.edu University of Nebraska at Omaha].<br />
*[[http://www.birdnest.org/winr WINR]] - Student-run radio station at Winthrop University in Rock Hill, SC. Rivendell is in use currently on the weekends when live staff are not in the studio.<br />
*[[http://www.seahawkradio.com SMC Radio - The Hawk]] - St. Mary's College Radio, The Hawk is the student-run radio station at St. Mary's College of Maryland.<br />
<br />
===Closed circuit / Low powered FM===<br />
====North America====<br />
*RadioPST - A closed-circuit French [[http://en.wikipedia.org/wiki/Sainte-Th%C3%A9r%C3%A8se,_Quebec Sainte-Thérèse]] high-school radio station fully automated with live interventions and live bands.<br />
*CLG2 89,9FM - [[http://fr.wikipedia.org/wiki/Coll%C3%A8ge_Lionel-Groulx Collège Lionel Groulx]] fully automated 24/7 low powered FM French radio station.</div>
DKlann
http://wiki.rivendellaudio.org/index.php?title=ChangeSummary&diff=611
ChangeSummary
2021-07-12T20:56:54Z
<p>DKlann: Add changes for version 3.6.1.</p>
<hr />
<div>__NOTOC__<br />
== Rivendell Change Summary ==<br />
<br />
This page contains version change descriptions in summary form for Rivendell versions released within at least the most recent five years (quite probably longer). Change descriptions are limited (mostly) to user-visible changes.<br />
<br />
Please see the [https://raw.githubusercontent.com/ElvishArtisan/rivendell/master/ChangeLog ChangeLog] and [https://github.com/ElvishArtisan/rivendell/blob/master/NEWS NEWS] files in the [https://github.com/elvishartisan/rivendell source code] for a complete list of changes and bug fixes.<br />
<br />
See the [https://github.com/elvishartisan/rivendell/issues Issues] list for current reported bugs, issues and feature requests.<br />
<br />
=== 3.6.1 (2021-06-06) ===<br />
* Database verson '''347'''<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdimport(1) that could cause a crash when the &lsquo;--fix-broken-formats&rsquo; switch is used<br />
* <font style="color:green">Functionality</font>: Added syslog DEBUG messages around the start/stop of ephemeral processes in rdservice(8)<br />
* <font style="color:green">Functionality</font>: Added an &lsquo;--initial-maintenance&rsquo; switch to rdservice(8)<br />
* <font style="color:green">Functionality</font>: Added an &lsquo;--force-system-maintenance&rsquo; switch to rdservice(8)<br />
* <font style="color:green">Functionality</font>: Modified rdmaint(8) to enable it to operate even when the Rivendell services are not running<br />
<br />
=== 3.6.0 (2021-05-15) ===<br />
* Database verson '''347'''<br />
* <font style="color:red">Bug fix</font>: Fixed title separation in rdlogmanager(1) scheduler<br />
* <font style="color:red">Bug fix</font>: Fixed bug in library code ''lib/rdwavefile.cpp'' that copied CartChunk Cut ID past the end of the first "NULL" character<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdairplay(1) that caused the Talk Timer to fail to be populated when adding new carts to a log<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in the Cart Selector Dialog that made it impossible to enter an apostrophe character in the filter search line<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdimport(1) where the title of an existing cart would be overwritten with a default title even when no title was found in the file metadata<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in &lsquo;RDFlacDecode&rsquo; that caused conversion of files with names containing non-ASCII characters to fail<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdadmin(1) where clicking the &lsquo;OK&rsquo; button in the &lsquo;Edit Switcher&rsquo; dialog would cause an error dialog to appear with a &lsquo;primary serial device not active&rsquo; warning. The following devices are affected: &lsquo;Local GPIO&rsquo;, &lsquo;Local Audio Adapter&rsquo;, &lsquo;Logitek vGuest&rsquo;, &lsquo;Livewire LWRP Audio&rsquo;, and &lsquo;Kernel GPIO&rsquo;<br />
* <font style="color:green">Functionality</font>: Modified rdimport(1) and the Webget service so as to send e-mail reports to the address of the current Rivendell user in addition to the group&rsquo;s Notification E-Mail Address<br />
* <font style="color:green">Functionality</font>: Added a &lsquo;STACK_LINES.TITLE&rsquo; field to the database<br />
* <font style="color:green">Functionality</font>: Added the value of the detected CartChunk CutID to the error message generated when rejecting said CutID as invalid when using the &lsquo;--use-cartchunk-cutid&rsquo; switch in rdimport(1)<br />
* <font style="color:green">Functionality</font>: Added code to print the value of the detected CartChunk CutID when using both the &lsquo;--use-cartchunk-cutid&rsquo; and &lsquo;--verbose&rsquo; flags in rdimport(1)<br />
* <font style="color:green">Functionality</font>: Created pypad_ino713_tcp based upon pypad_ino713, converting from UDP to TCP. Added an adjustable delay to account for broadcast air delays<br />
* <font style="color:green">Functionality</font>: Created pypad_nautel based upon pypad_ino713_tcp, including RDS parameters from documentation. Includes delay as above<br />
* <font style="color:green">Functionality</font>: Added a new &lsquo;RadioTraffic.com Traffic Reconciliation&rsquo; report. Renamed the existing &lsquo;RadioTraffic.com Traffic Reconciliation&rsquo; to &lsquo;Original RadioTraffic.com Traffic Reconciliation (DEPRECATED)&rsquo;<br />
* <font style="color:green">Functionality</font>: Changed the way in which the VU Meter UDP port is chosen. One can now specify the base port number and the maximum number of UDP ports to consider when caed(8) sets up the VU meter port<br />
* <font style="color:orange">Documentation</font>: Documented the &lsquo;MeterPortBaseNumber=&rsquo; and &lsquo;MeterPointRange=&rsquo; directives in the rd.conf(5) man page<br />
<br />
=== 3.5.0 (2020-12-12) ===<br />
* Database verson '''346'''<br />
* <font style="color:red">Bug fix</font>: Corrected the column settings in RDAdmin > Manage Hosts > [host] > Dropboxes<br />
* <font style="color:red">Bug fix</font>: Fixed regression with "Scheduler Code:" label overlapping "Group" combobox in rdlibrary(1)<br />
* <font style="color:red">Bug fix</font>: Fixed several bugs in rdadmin(1) that messed with passwords, user settings, and other important settings<br />
* <font style="color:red">Bug fix</font>: Fixed several bugs in rdlogmanager(1) that caused all kinds of mischief<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdairplay(1) where copying a log event using the &lsquo;Copy&rsquo; button would result in the new event always getting a &lsquo;PLAY&rsquo; transition<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rddbmgr(8) that could cause database corruption problems<br />
* <font style="color:red">Bug fix</font>: Fixed bugs in rdimport(1) that caused incorrect exit codes to be emitted when a non-existent group was specified, and that caused generation of double error messages when processing invalid audio files<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdmonitor(1) that caused false indications of a failed audio store when used with autofs(8)<br />
* <font style="color:green">Functionality</font>: Major overhaul of Rivendell&rsquo;s podcast handling features; see the ChangeLog for all the details<br />
* <font style="color:green">Functionality</font>: Modified the GVC7000 switcher driver to insert 50 mS pauses between protocol commands<br />
* <font style="color:green">Functionality</font>: Allow RN Macro to run when Rivendell daemons running as non-root<br />
* <font style="color:green">Functionality</font>: Many changes to rdadmin(1), including:<br />
:* Added whitespace to the set of banned characters for service names<br />
:* Added a &lsquo;SSH Ident. File&rsquo; control to the &lsquo;Host&rsquo; dialog<br />
:* Added an &lsquo;Inline Traffic Inheritance&rsquo; control to the &lsquo;Edit Service&rsquo; dialog<br />
:* Added type icons to the &lsquo;Imported Events&rsquo; list in the &lsquo;Test Import&rsquo; dialog<br />
:* Renamed the &lsquo;Inline Traffic Inheritance&rsquo; control to &lsquo;Inline Traffic Start/Length&rsquo; and moved it to the &lsquo;Music Data Import&rsquo; section of the &lsquo;Edit Service&rsquo; dialog<br />
:* Added an &lsquo;Encoder Profiles&rsquo; dialog<br />
:* Renamed the &lsquo;Note Cart String&rsquo; controls to &lsquo;Insert Marker String&rsquo; in the &lsquo;Edit Service dialog<br />
:* Added an &lsquo;Origin E-Mail Address&rsquo; control to the &lsquo;System-Wide Settings&rsquo; dialog<br />
:* Added a &lsquo;Notification E-Mail Addresses&rsquo; control to the &lsquo;Group&rsquo; dialog<br />
:* Added a &lsquo;Send e-mail reports&rsquo; checkbox to the &lsquo;Dropbox Configuration&rsquo; dialog<br />
:* Added &lsquo;E-Mail Address&rsquo;, &lsquo;Phone Number&rsquo; and &lsquo;Local Auth&rsquo; columns to the &lsquo;Users&rsquo; list in the &lsquo;Rivendell User List&rsquo; dialog<br />
:* Added an &lsquo;Administer RSS Feeds&rsquo; checkbox to the &lsquo;Administrative Rights&rsquo; section of the &lsquo;User&rsquo; dialog<br />
:* Added a deprecation warning for the &lsquo;Allow Duplicate Cart Titles&rsquo; and &lsquo;Auto-Correct Duplicate Cart Titles&rsquo; checkboxes on the &lsquo;System-Wide Settings&rsquo; dialog<br />
* <font style="color:green">Functionality</font>: Added support for FTPS protocol for uploading, downloading, and Feed management<br />
* <font style="color:green">Functionality</font>: Significant update to the Rivendell Web interfaces (Web API, WebGet service, rivwebcapi API, etc.)<br />
* <font style="color:green">Functionality</font>: Added &lsquo;--scheduler-code=&rsquo; switch to rdexport(1)<br />
* <font style="color:green">Functionality</font>: Added generation of an &lsquo;RDLogManager Error Report&rsquo; when errors are detected when importing an external scheduler file in rdlogmanager(1)<br />
* <font style="color:green">Functionality</font>: Restored operation of Label/Note carts in rdlogmanager(1)<br />
* <font style="color:green">Functionality</font>: Updated rdservice(8) to use standard exit code defines<br />
* <font style="color:green">Functionality</font>: Implemented the &lsquo;--verbose&rsquo; switch for rdmaint(8)<br />
* <font style="color:green">Functionality</font>: Added a sample Fail2Ban jail filter for the WebAPI in &lsquo;conf/rivendell-webapi.conf&rsquo;<br />
* <font style="color:green">Functionality</font>: Added command line options &lsquo;--output-pattern&rsquo;, &lsquo;--ticket=&rsquo;, &lsquo;--send-mail&rsquo; and &lsquo;--mail-per-file&rsquo; to rdimport(1)<br />
* <font style="color:green">Functionality</font>: Added the name of the import file to schedule import failure reports<br />
* <font style="color:orange">Documentation</font>: Documented the &lsquo;%%&rsquo; filepath wildcard in the Operations Guide<br />
* <font style="color:orange">Documentation</font>: Added an &lsquo;RDCastManager&rsquo; chapter to the Operations Guide<br />
* <font style="color:orange">Documentation</font>: Revised the &lsquo;Managing Services&rsquo; section of the Operations Guide<br />
* <font style="color:orange">Documentation</font>: Rewrote the &lsquo;Webget&rsquo; chapter of the Operations Guide to conform to changes in Webget<br />
* <font style="color:orange">Documentation</font>: Added a &lsquo;Configuring Webget&rsquo; section to the Operations Guide<br />
* <font style="color:orange">Documentation</font>: Removed the &lsquo;Cart Data Dump (fixed width)&rsquo; from the Operations Guide<br />
* <font style="color:orange">Documentation</font>: Documented user-facing changes to the &lsquo;System-Wide Settings&rsquo; dialog, the &lsquo;Rivendell Group List&rsquo; and the &lsquo;Group&rsquo; dialogs in rdadmin(1) in the Operations Guide<br />
* <font style="color:orange">Documentation</font>: Documented the &lsquo;Send e-mail reports&rsquo; checkbox in the &lsquo;Dropbox Configuration&rsquo; dialog in rdadmin(1) in the Operations Guide<br />
* <font style="color:blue">Code (internal) change</font>: Prepended &lsquo;RD_&rsquo; to the names of all common Javascript functions in &lsquo;web/common/utils.js&rsquo;<br />
* <font style="color:blue">Code (internal) change</font>: Added a &lsquo;webget&rsquo; subpackage to the &lsquo;make rpm&rsquo; target<br />
* <font style="color:blue">Code (internal) change</font>: Refactored the &lsquo;Run Script&rsquo; [&rsquo;RN&rsquo;] RML to invoke scripts via the system shell, this change also removed the dependency on runuser(1)<br />
<br />
=== 3.4.1 (2020-07-21) ===<br />
* Database verson '''317'''<br />
<br />
* <font style="color:green">Functionality</font>: Added a &lsquo;Results Report&rsquo; report in rdadmin(1)<br />
* <font style="color:green">Functionality</font>: Removed the checkbox from the &lsquo;Delete&rsquo; right-click menu item in the &lsquo;Edit Event&rsquo; dialog in rdlogmanager(1)<br />
* <font style="color:green">Functionality</font>: Modified &lsquo;RDWaveFile&rsquo; to work around known fencepost errors in WAV files generated by "Sonic Studio soundBlade" by "PME Mastering, Inc."<br />
* <font style="color:green">Functionality</font>: Modified the &lsquo;Edit Event&rsquo; dialog in rdlogmanager(1) to show &lsquo;[auto]&rsquo; as the transition type for the leading event in Pre-/Post-Import lists<br />
<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdlibrary(1) that caused cuts to be incorrectly sorted when scheduled &lsquo;By Specified Order&rsquo;<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in the Rivendell command line apps that caused value-only arguments containing &lsquo;=&rsquo; characters to be incorrectly parsed<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in the Podcast Manager, Library Exporter and Web API that caused an error when processing multipart-mime submissions containing &lsquo;=&rsquo; characters<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdairplay(1) where attempting to audition an audio cart with a disabled cue output would crash the application<br />
* <font style="color:red">Bug fix</font>: Fixed a regression in rdairplay(1) that caused the &lsquo;Forced Segue&rsquo; setting in rdadmin(1) to be ignored when executing an event with a hard start attribute<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdairplay(1) where a paused event could not be removed by dropping the empty cart on it<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdairplay(1) that cause incorrect pie timer indications after adding or deleting events to a running log<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdlibrary(1) that would cause a crash when attempting to delete a range of cuts, one of which was in the clipboard<br />
* <font style="color:red">Bug fix</font>: Fixed a math bug in rdairplay(1) that caused the estimated stop-down times in the post point widget to be incorrect after adding or removing events from a running log<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdadmin(1) that made it impossible to enter useful strings in the &lsquo;WaveForm Caption&rsquo; control on the &lsquo;Edit RDLogEdit&rsquo; dialog<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in RDRenderer that caused segue transitions to be rendered without regard to the &lsquo;No Fade on Segue Out&rsquo; checkbox in the &lsquo;Edit Audio&rsquo; dialog<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in ripcd(8) that caused connections to ModbusTCP devices to fail to be properly restored by the connection watchdog<br />
* <font style="color:red">Bug fix</font>: Fixed a regression in the &lsquo;Edit Event&rsquo; dialog in rdlogmanager(1) that caused the first cart transition type to be incorrect when the &lsquo;Pre-Import Carts&rsquo; list was populated<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in the &lsquo;Add Next&rsquo; [&rsquo;PX&rsquo;] RML that failed to return an error when an invalid offset value was supplied<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in the &lsquo;Add Next&rsquo; [&rsquo;PX&rsquo;] RML that failed to honor the &lsquo;Default Trans. Type&rsquo; setting in the &lsquo;Configure RDAirPlay&rsquo; dialog in rdadmin(1)<br />
<br />
=== 3.4.0 (2020-05-19) ===<br />
* Database verson '''317'''<br />
* <font style="color:red">Bug fix</font>: Fixed a regression in rdairplay(1) that caused two events to be started by a single spacebar tap if a SoundPanel event had been played previously<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdlogmanager(1) that caused the initial event in an imported set to fail receive the proper time and transition type if the &lsquo;Include Import Markers in Finished Logs&rsquo; checkbox in rdadmin(1) had not been ticked<br />
* <font style="color:red">Bug fix</font>: Fixed a regression in rdexport(1) that caused exported file names to be constructed improperly<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdlogmanager(1) that caused &lsquo;Make Post Point&rsquo; label to be displayed without last &lsquo;t&rsquo;<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdairplay(1) where timer was not set properly when crossing midnight<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in the &lsquo;List GPIs&rsquo; dialog in rdadmin(1) that prevented changes in GPI assignments from being propagated to the underlying device<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in the &lsquo;Software Authority&rsquo; driver that caused autodetection of the number of GPIOs in a router to be unreliable<br />
* <font style="color:red">Bug fix</font>: Fixed a regression in &lsquo;RDEventLine&rsquo; that caused the &lsquo;Append Log&rsquo; [&rsquo;AL&rsquo;] RML to append a copy of the currently loaded log instead of the one specified in the RML command<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdlogedit(1) that caused garbled text to appear when &lsquo;Start Immediately&rsquo; was selected in the &lsquo;Edit Log Entry&rsquo; dialog box<br />
* <font style="color:red">Bug fix</font>: Fixed a regression that broke the ability to scroll through Sound Panel panels by means of the mouse wheel<br />
<br />
* <font style="color:green">Functionality</font>: Modified rdairplay(1) to always scroll log to the top when using the hour selector<br />
* <font style="color:green">Functionality</font>: Modified rdlogmanager(1) to disable merge buttons if the selected log does not contain any import links<br />
* <font style="color:green">Functionality</font>: Modified rdadmin(1) Edit Service dialog to display built-in traffic and music import template values<br />
* <font style="color:green">Functionality</font>: Added "Copy To Custom" buttons to rdadmin(1) Edit Service dialog<br />
* <font style="color:green">Functionality</font>: Changed the layout of the &lsquo;Editing Event&rsquo; dialog in rdlogmanager<br />
<br />
* <font style="color:green">Functionality</font>: Removed the &lsquo;Post Point&rsquo; checkbox from the &lsquo;Editing Event&rsquo; dialog in rdlogmanager(1)<br />
* <font style="color:green">Functionality</font>: Renamed the &lsquo;REMARKS&rsquo; field to &lsquo;USER NOTES&rsquo; in the &lsquo;Editing Event&rsquo; and the &lsquo;Edit Clock&rsquo; dialogs in rdlogmanager(1)<br />
* <font style="color:green">Functionality</font>: Added a &lsquo;Trans&rsquo; column to the event list in the &lsquo;Edit Clock&rsquo; and the &lsquo;List Events&rsquo; dialogs in rdlogmanager(1)<br />
<br />
=== 3.3.0 (2020-03-16) ===<br />
* Database verson '''314'''<br />
* <font style="color:red">Bug fix</font>: Fixed regressions in the following switcher drivers that could cause deadlocks and intermittent operation<br />
:* BroadcastTools SS16.4<br />
:* BroadcastTools SS 4.2<br />
:* BroadcastTools SS4.4<br />
:* BroadcastTools SS 8.2<br />
:* BroadcastTools ACS8.2<br />
:* BroadcastTools ADMS 44.22<br />
:* BroadcastTools GPI-16<br />
:* BroadcastTools SRC-16<br />
:* BroadcastTools SRC-8 III<br />
:* BroadcastTools SS 4.1 MLR<br />
* <font style="color:red">Bug fix</font>: Fixed a regression in the implementation of the &lsquo;Set Serial Trap&rsquo; [&lsquo;SI&rsquo;] RML that could cause deadlocks and intermittent operation<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdairplay(1) that could cause random segfaults when updating the Label Widget<br />
* <font style="color:red">Bug fix</font>: Fixed a bug with the &lsquo;%y&rsquo; metadata wildcard where garbage would be returned if a valid year had not been set<br />
* <font style="color:red">Bug fix</font>: Fixed a regression in rdlogmanager(1) that caused trailer whitespace to be generated in the &lsquo;EXT_DATA&rsquo;, &lsquo;EXT_EVENT&rsquo;, &lsquo;EXT_ANNC_TYPE&rsquo; and &lsquo;EXT_CART_NAME&rsquo; log fields when importing from a CounterPoint format log<br />
* <font style="color:red">Bug fix</font>: Fixed the layout of the &lsquo;Matching Carts&rsquo; field in rdlibrary(1)&rsquo;s main window when Realtime Filtering is disabled<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdairplay(1) that would cause a hard-timed log event with a &lsquo;wait&rsquo; parameter set to attempt to play the event twice<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rddbmgr(8) that threw a SQL error when attempting to modify a DB containing tables set to use character set UTF-8 to schema 297<br />
* <font style="color:red">Bug fix</font>: Fixed a race in ripcd(8) that caused arguments to the &lsquo;Run Shell Command&rsquo; [&lsquo;RN&rsquo;] macro to be corrupted<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in the &lsquo;Edit Event&rsquo; dialog in rdlogmanager(1) that caused the Transition Type dropdown to be greyed-out when the &lsquo;IMPORT&rsquo; controls were set to use the built-in music scheduler<br />
* <font style="color:green">Functionality</font>: Added a &lsquo;delta-seconds&rsquo; modifier to Filepath Wildcards to enable positive and negative time offsets<br />
* <font style="color:green">Functionality</font>: Removed support for CD-TEXT from the CD rippers<br />
* <font style="color:green">Functionality</font>: Added support for &lsquo;MusicBrainz&rsquo; CD metadata lookup<br />
* <font style="color:green">Functionality</font>: Added a &lsquo;Web Browser&rsquo; control to the &lsquo;Edit Host&rsquo; dialog in rdadmin(1)<br />
* <font style="color:green">Functionality</font>: Added support for displaying cover art in the MusicBrainz release chooser<br />
* <font style="color:green">Functionality</font>: Added &lsquo;%wm&rsquo; [&lsquo;MusicBrainz Recording ID&rsquo;] and &lsquo;%wr&rsquo; [&lsquo;MusicBrainz Release ID&rsquo;] metadata wildcards<br />
* <font style="color:green">Functionality</font>: Implemented the &lsquo;%wm&rsquo; [&lsquo;MusicBrainz Recording ID&rsquo;] and &lsquo;%wr&rsquo; [&lsquo;MusicBrainz Release ID&rsquo;] metadata wildcards for PyPAD<br />
* <font style="color:green">Functionality</font>: Added support for the &lsquo;%wi&rsquo;, &lsquo;%wm&rsquo; and &lsquo;%wr&rsquo; wildcards to the &lsquo;--metadata-pattern=&rsquo; switch in rdimport(1)<br />
* <font style="color:green">Functionality</font>: Added &lsquo;--set-string-isrc&rsquo;, &lsquo;--set-string-recording-mbid&rsquo; and &lsquo;--set-string-release-mbid&rsquo; switches to rdimport(1)<br />
* <font style="color:green">Functionality</font>: Added support for the &lsquo;%wi&rsquo;, &lsquo;%wm&rsquo; and &lsquo;%wr&rsquo; wildcards to the &lsquo;--metadata-pattern=&rsquo; switch in rdexport(1)<br />
* <font style="color:green">Functionality</font>: Added a &lsquo;%wc&rsquo; [&lsquo;Industry Standard Commercial Identification (ISCI) Code&rsquo;] metadata wildcard<br />
* <font style="color:green">Functionality</font>: Implemented the &lsquo;%wc&rsquo; metadata wildcard for PyPAD<br />
* <font style="color:green">Functionality</font>: Added support for the &lsquo;%wc&rsquo; wildcards to the &lsquo;--metadata-pattern=&rsquo; switch in rdimport(1)<br />
* <font style="color:green">Functionality</font>: Added &lsquo;--set-string-isci&rsquo; switch to rdimport(1)<br />
* <font style="color:green">Functionality</font>: Added support for the &lsquo;%wc&rsquo; wildcard to the &lsquo;--metadata-pattern=&rsquo; switch in rdexport(1)<br />
* <font style="color:green">Functionality</font>: Removed the &lsquo;RDLabel&rsquo; widget<br />
* <font style="color:green">Functionality</font>: Added a &lsquo;Disconnect All Jack Ports&rsquo; [&lsquo;JZ&rsquo;] RML<br />
* <font style="color:green">Functionality</font>: Added a &lsquo;CounterPoint Traffic Reconciliation v2&rsquo; report<br />
<br />
=== 3.2.1 (2020-01-24) ===<br />
* Database verson '''311'''<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdcatch(1) that threw a SQL error when clicking 'OK' on the &lsquo;Edit Cart Event&rsquo; dialog<br />
* <font style="color:red">Bug fix</font>: Fixed a regression in rdimport(1) that caused null characters to be written to cart metadata fields when importing files containing an &lsquo;AIR1&rsquo; RIFF chunk<br />
* <font style="color:red">Bug fix</font>: Fixed a regression in rdcatch(1) that caused the &lsquo;Source&rsquo; dropdown in the &lsquo;Edit Recording&rsquo; dialog to fail to be populated properly<br />
* <font style="color:red">Bug fix</font>: Fixed a regression in the cart selector dialog that caused default focus to be lost on the &lsquo;Filter&rsquo; control after second and subsequent invocations<br />
* <font style="color:red">Bug fix</font>: Fixed a regression in rdcatchd(8) that broke audio metering<br />
* <font style="color:red">Bug fix</font>: Fixed a regression in rdcatchd(8) that could cause download events to hang in an active state<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdcatch(1) that caused DOW flags to fail to be updated correctly on the event list after making a change<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdcatchd(8) that failed to send a MODIFY notification at the end of a Record or Download event<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdconvert that caused a segfault at startup<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdexport(1) that caused output filenames containing multi-byte UTF-8 characters to be corrupt<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdgpimon(1) that caused GPIO cart displays to fail to accurately reflect current state<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdgpimon(1) that caused incorrect state indications to be displayed after switching to a different page<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdimport(1) that caused non-Latin1 characters to be corrupted when using standard input<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdimport(1) that caused UTF-8 multibyte characters in filenames to be corrupted<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdlogmanager(1) that caused spurious log events to be inserted when generating a log<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in ripcd(8) that caused input and output counts to be calculated incorrectly for Software Authority protocol devices containing holes in the input and/or output lists<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in the &lsquo;pypad-shoutcast1.py&rsquo; script that threw an exception when processing PAD containing multi-type UTF-8 characters<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in the &lsquo;pypad_xds.py&rsquo; PyPAD script that could cause it to emit duplicate CIC updates<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in the &lsquo;rivwebcapi&rsquo; validate_tm() function that caused dates containing &lsquo;29 February&rsquo; to always fail regardless of leap-year validity<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in the rdxport service that could cause MODIFY notifications to fail to be sent by the &lsquo;SaveLog&rsquo; WebAPI call<br />
* <font style="color:red">Bug fix</font>: Fixed a regression in rdadmin(1) that caused controls to be hidden in the &lsquo;Edit Report&rsquo; dialog<br />
* <font style="color:red">Bug fix</font>: Fixed a regression in rdlogmanager(1) that caused incorrect logged start times to be generated for imported events<br />
* <font style="color:red">Bug fix</font>: Fixed a regression in the rdxport service that caused the ListCuts WebAPI call to return corrupt data<br />
* <font style="color:red">Bug fix</font>: Fixed a regression in the Web API that caused the and/or corrupt in served XML documents<br />
* <font style="color:green">Functionality</font>: Implemented support for non-realtime library filtering in the &lsquo;Editing Event&rsquo; dialog in rdlogmanager(1)<br />
* <font style="color:green">Functionality</font>: Added a &lsquo;Show Start Time As&rsquo; control to the &lsquo;Edit Log&rsquo; dialog in rdlogedit(1)<br />
* <font style="color:green">Functionality</font>: Made the rdlogedit(1) main window and &lsquo;Edit Log&rsquo; dialog window sizes persistent<br />
* <font style="color:green">Functionality</font>: Added a work-around in the &lsquo;PyPAD.Receiver().__openDb()&rsquo; method to work with versions of MySQLdb that do not support the &lsquo;password=&rsquo; parameter in &lsquo;MySQLdb.connect()&rsquo;<br />
* <font style="color:green">Functionality</font>: Added &lsquo;Repetitions=&rsquo; and &lsquo;RepetitionDelay=&rsquo; directive to the configuration of the &lsquo;pypad_xds.py&rsquo; PyPAD script<br />
* <font style="color:green">Functionality</font>: Added &lsquo;Username=&rsquo; and &lsquo;Password=&rsquo; directives to the &lsquo;pypad_httpget.py&rsquo; script for use for HTTP Basic Authentication<br />
* <font style="color:green">Functionality</font>: Added the ability to view a report at time of generation in rdlogmanager(1)<br />
* <font style="color:green">Functionality</font>: Adjusted the position of the &lsquo;Matching Carts&rsquo; readout on the main window of rdlibrary(1)<br />
* <font style="color:green">Functionality</font>: Changed the &lsquo;Time&rsquo; column in the &lsquo;Full Log Widget&rsquo; in rdairplay(1) to &lsquo;Sch. Time&rsquo;<br />
* <font style="color:green">Functionality</font>: Implemented a work-around for importing CartChunk data containing a buggy ENCO implemention of the &lsquo;AUD&rsquo; CartChunk timer<br />
* <font style="color:green">Functionality</font>: Modified the Full Log widget in rdairplay(1) to display logged start times even when the referenced cart does not exist<br />
* <font style="color:green">Functionality</font>: Tweaked the &lsquo;LogLineBox::mouseMoveEvent()&rsquo; method in rdairplay(1) to require a cursor movement of at least 20 pixels before generating a cart drag<br />
<br />
=== 3.2.0 (2019-10-31) ===<br />
* Database verson '''311'''<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rddbmgr(8) that caused a segfault when processing a SQL error<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdimport(1) that caused it to throw an exception when given a &lsquo;--metadata-pattern&rsquo; of less than three characters<br />
* <font style="color:red">Bug fix</font>: Fixed a regression in rdimport(1) that caused a segfault when invoked with the &lsquo;--metadata-pattern&rsquo; and &lsquo;--log-syslog&rsquo; switches<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdairplay(1) that caused space bar presses to start the next event in the Main Log even when &lsquo;Space Bar Action&rsquo; was set to &lsquo;None&rsquo;<br />
* <font style="color:red">Bug fix</font>: Fixed bugs in 'RDWaveFile' that caused strings of null characters to be written into unfilled CartChunk string fields<br />
* <font style="color:red">Bug fix</font>: Fixed a regression in 'rdxport.cgi' that caused a check of the Rivendell services to be triggered each time a WebAPI function was invoked<br />
* <font style="color:red">Bug fix</font>: Fixed a regression in rdsoftkeys(1) that threw a segfault at startup<br />
* <font style="color:green">Functionality</font>: Added the ability to configure the caption displayed for the first and third voicetrack waveforms in the Voicetracker dialog in rdlogedit(1)<br />
* <font style="color:green">Functionality</font>: Reworked the font management system to permit the fonts used in the UI to be specified in rd.conf(5).<br />
* <font style="color:green">Functionality</font>: Added support for posting podcast content via SFTP<br />
* <font style="color:orange">Documentation</font>: Added manual pages for rd.conf(5) and rdsoftkeys(1)<br />
<br />
=== 3.1.0 (2019-09-19) ===<br />
* Database verson '''310'''<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdairplay(1) and rdvairplayd(8) where only the first log machine set to &lsquo;load specified log&rsquo; would do so<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdlogedit(1) that caused hard start log items to have the Hour field doubled<br />
* <font style="color:red">Bug fix</font>: Refactored the Python &lsquo;pypad.Update.shouldBeProcessed()&rsquo; method to work correctly when using <tt>try:</tt> blocks in a PyPAD script<br />
* <font style="color:red">Bug fix</font>: Refactored the PyPAD scripts to route updates properly in accordance with log directives in their configuration file<br />
* <font style="color:red">Bug fix</font>: Fixed a bug that broke dropbox logging to individual files<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in caed(8) that broke timescaling support<br />
* <font style="color:red">Bug fix</font>: Fixed bugs in rdlibrary(1) that broke CD ripping<br />
* <font style="color:green">Functionality</font>: Refactored rdalsaconfig(1) to be more robust and intuitive<br />
* <font style="color:green">Functionality</font>: Added a &lsquo;pypad_httpget.py&rsquo; PyPAD script<br />
* <font style="color:green">Functionality</font>: Updated CDDB code to use protocol level 6 (UTF-8 enabled)<br />
* <font style="color:green">Functionality</font>: Added an &lsquo;%l&rsquo; wildcard to Filepath Wildcards for &lsquo;unpadded month&rsquo;<br />
=== 3.0.3 (2019-08-05) ===<br />
* Database verson '''308'''<br />
* <font style="color:red">Bug fix</font>: Fixed a regression in ripcd(8) that broke the 'Connect Jack Ports' ['JC'] and 'Disconnect Jack Ports' ['JD'] RMLs<br />
=== 3.0.2 (2019-07-31) ===<br />
* Database verson '''308'''<br />
* <font style="color:red">Bug fix</font>: Fixed a problem with the Local Audio Adapter switcher driver that caused incorrect operation with the 'Switch Add' ['SA'], 'Switch Remove' ['SR'] and 'Switch Take' ['ST'] RMLs<br />
* <font style="color:red">Bug fix</font>: Fixed a regression in rdlibrary(1) that caused macro carts entries to turn red after being viewed<br />
* <font style="color:red">Bug fix</font>: Fixed regressions that made operations with serial devices unreliable<br />
* <font style="color:green">Functionality</font>: Added support for switchers using the Grass Valley 7000 series protocol<br />
=== 3.0.1 (2019-07-16) ===<br />
* Database verson '''308'''<br />
* <font style="color:red">Bug fix</font>: Rivendell is now Unicode UTF-8 clean<br />
* <font style="color:red">Bug fix</font>: Qt4 is now used throughout Rivendell instead of Qt3<br />
* <font style="color:green">Functionality</font>: The Rivendell Loadable Modules system for processing PAD data has been completely replaced by PyPAD, allowing PAD processing plug-ins to be written in the popular Python scripting langauge. Backward compatible replacement scripts for many of the RLM plug-ins supplied in Rivendell v2.x are included<br />
* <font style="color:green">Functionality</font>: Added a compatibility library to facilitate the use of the Rivendell Web API in external applications<br />
* <font style="color:green">Functionality</font>: A system of virtual log machines has been added, allowing play-out of up to 23 logs simultaneously<br />
* <font style="color:green">Functionality</font>: Rivendell is now fully systemd compatibile<br />
* <font style="color:green">Functionality</font>: The Windows ports of rdlogedit(1) and rdlogmanager(1) have been removed<br />
* <font style="color:orange">Documentation</font>: The Rivendell Operations and Administration Guide has been updated and enhanced with more details about running a Rivendell system<br />
* <font style="color:orange">Documentation</font>: New manual pages have been added for Rivendell command that previously did not have them<br />
See [http://caspian.paravelsystems.com/pipermail/rivendell-dev/2019-July/027867.html this message] on the Rivendell Dev mailing list for more details about installing and upgrading Rivendell.<br />
=== 2.19.3 (2018-10-31) ===<br />
* Database verson '''275'''<br />
* <font style="color:red">Bug fix</font>: Fixed a bug that caused the &lsquo;Switcher Matrix&rsquo; and &lsquo;Switcher Output&rsquo; dropdowns to populate incorrect values when selecting a non-local &lsquo;Switcher Host&rsquo; in the &lsquo;Configure RDCatch&rsquo; dialog in rdadmin(1)<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdlogmanager(1) that caused the initial transition type specified in the &lsquo;IMPORT&rsquo; section of the &lsquo;Editing Event&rsquo; dialog to be applied to both the parent log link and the first imported event when the &lsquo;PRE-IMPORT CARTS&rsquo; list was empty and no Timed Start was enabled<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in ripcd(8) that caused process of the &lsquo;Air Gate&rsquo; [&lsquo;AG&rsquo;] RML to fail<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdimport(1) that would throw a spurious SQL error when using the &lsquo;--to-cart=&rsquo; switch with an already existing cart [Issue #000217]<br />
* <font style="color:red">Bug fix</font>: Fixed a regression that caused rdimport(1) to return a &lsquo;no free carts available in specified group&rsquo; when invoked without the &lsquo;--to-cart=&rsquo; option<br />
* <font style="color:red">Bug fix</font>: Fixed a regression in rdairplay(1) that caused carts Added or Copied to a log to have a PLAY transition regardless of the default transition type set in rdadmin(1)<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in &lsquo;RDTextValidator&rsquo; that failed to catch banned characters added to the interior of existing strings<br />
* <font style="color:red">Bug fix</font>: Various other bugs fixed<br />
* <font style="color:green">Functionality</font>: Added a &lsquo;TranscodingDelay=&rsquo; parameter to the &lsquo;[Tuning]&rsquo; section of rd.conf(5)<br />
* <font style="color:green">Functionality</font>: Added a Switcher/GPIO driver for the BroadcastTools SS 2.1 switcher<br />
* <font style="color:green">Functionality</font>: Added support for GPIO on AudioScience adapters to the 'Local Audio Adapter' Switcher/GPIO driver<br />
* <font style="color:green">Functionality</font>: Renamed the 'Add Next' ['PX'] RML to 'Insert Cart' ['PX'] and added two optional arguments to allow specification of the insertion position and transition type<br />
* <font style="color:green">Functionality</font>: Added support for Spinitron v2 to the 'spinitron_plus' RLM<br />
* <font style="color:green">Functionality</font>: Added an &lsquo;ExportedFileMode=&rsquo; parameter to the &lsquo;[Tuning]&rsquo; section of rd.conf(5) to permit permission mode of exported audio files to be specified<br />
* <font style="color:orange">Documentation</font>: Documented GPIO support for AudioScience cards in the &lsquo;Local Audio Adapter&rsquo; section of the Operations Guide<br />
<br />
=== 2.19.2 (2018-04-14) ===<br />
* Database verson '''275'''<br />
* <font style="color:red">Bug fix</font>: Fixed a regression in the HPI support layer that broke audio capture with adapters lacking DMA bus-mastering support<br />
<br />
=== 2.19.1 (2018-03-27) ===<br />
* Database verson '''275'''<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdlogmanager(1) that caused DB corruption when a clock was deleted while still being assigned to a grid.<br />
* <font style="color:green">Functionality</font>: Implemented support for DMA bus-mastering for AudioScience HPI devices. This release supports the latest ASI cards that require DMA bus-mastering support. You may also need to update the hpklinux driver to v4.20.10 or later. RPMs for CentOS 7 are available at [http://static.paravelsystems.com/audioscience/centos/7/ Paravel&rsquo;s website].<br />
* <font style="color:green">Functionality</font>: Removed rdhpiinfo(8). Replaced by the stand-alone &lsquo;hpiinfo&rsquo; package.<br />
* <font style="color:green">Functionality</font>: Removed the event time check for Playout events in rdcatch(1), as there is no sane way to determine a consistently &lsquo;free&rsquo; playout time in the face of shifting cut lengths.<br />
<br />
=== 2.19.0 (2018-02-22) ===<br />
* Database verson '''275'''<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdlibrary(1) that caused evergreen carts/cuts to fail to be highlighted in the correct color<br />
* <font style="color:green">Functionality</font>: Added the ability to specify automatic log deletion on the basis of either the Creation Date or Air Date of the log<br />
* <font style="color:green">Functionality</font>: Log Importation Changes. Changed music and traffic importation so that parent link events are still visible in linked logs<br />
* <font style="color:green">Functionality</font>: Log Locking: implemented a system-wide protocol to prevent changes made to a log on one host from being inadvertently overwritten from another host<br />
<br />
=== 2.18.2 (2017-12-29) ===<br />
* Database version '''272'''<br />
* <font style="color:red">Bug fix</font>: Fixed a bug that caused creation of new clocks in rdlogmanager(1) to fail to initialize music scheduler components correctly in the database<br />
<br />
=== 2.18.1 (2017-12-22) ===<br />
* Database version '''272'''<br />
* <font style="color:red">Bug fix</font>: Fixed a bug that caused creation and initialization of a new Rivendell database to fail<br />
<br />
=== 2.18.0 (2017-12-21) ===<br />
* Database version updated to '''272'''<br />
* <font style="color:red">Bug fix</font>: Various bug fixes. See the [https://github.com/ElvishArtisan/rivendell/blob/stable/ChangeLog ChangeLog] for details<br />
* <font style="color:green">Functionality</font>: Group Cut Expiration Policy: Added the ability to set a default End Date/Time for new cuts on a per-group basis<br />
* <font style="color:green">Functionality</font>: Host Short Name: Added a ''Short Name'' parameter to Host profiles<br />
* <font style="color:green">Functionality</font>: Macro Carts: It is now possible to use filepath wildcards in macro carts<br />
* <font style="color:green">Functionality</font>: New Host Wildcards: Added two host wildcards: ''%r'' for ''Rivendell Host Name, and ''%R'' for ''Rivendell Short Name''<br />
* <font style="color:green">Functionality</font>: Provisioning Support: Added four new directives and to the ''[Provisioning]'' section of ''/etc/rd.conf''<br />
* <font style="color:green">Functionality</font>: MySQL Configuration: Added three parameters to the ''[mySQL]'' section of ''/etc/rd.conf''<br />
* <font style="color:green">Functionality</font>: Dropbox Enhancements: Added the ability to specify creation of default Segue Markers when processing files via dropbox<br />
* <font style="color:green">Functionality</font>: '''RDImport'''/DropBox Enhancements: Added the ability to specify start and end datetimes via metadata pattern<br />
* <font style="color:green">Functionality</font>: '''RDCatch''' Event Filtering: Added the ability to filter by event type in '''RDCatch'''<br />
* <font style="color:green">Functionality</font>: Log Searching: A search filter (similar to that employed for seaching for carts) has been added to the List Logs dialogs<br />
* <font style="color:green">Functionality</font>: Service Filtering in '''RDLogEdit''': Added the ability to limit the visible set of logs in RDLogEdit by user<br />
* <font style="color:green">Functionality</font>: Log Purge/Deletion Changes: Logs created manually (in rdlogedit(1) or rdairplay(1)) are now assigned a default purge/deletion date in accordance with the setting in RDAdmin->ManageServices<br />
* <font style="color:green">Functionality</font>: Log Importation Changes: Changed music and traffic importation so that parent link events are still visible in linked logs<br />
* <font style="color:green">Functionality</font>: Web API Changes: Added &lsquo;FILTER&rsquo; and &lsquo;RECENT&rsquo; call parameters to the &lsquo;ListLogs&rsquo; Web API call<br />
* <font style="color:orange">Documentation</font>: Documentation Overhaul: The Rivendell Operations and Administration Guide has been exapanded and incorporated as part of the base Rivendell source in ''docs/opsguide''. This guide is available as a separate CentOS package: ''rivendell-opsguide''<br />
* <font style="color:orange">Documentation</font>: Rivendell APIs: The various application programming interfaces (notably the web API) is now documented and is included with the standard distribution<br />
<br />
=== 2.17.0 (2017-10-11) ===<br />
* Database version updated to '''268'''<br />
* <font style="color:red">Bug fix</font>: Web API: Many fixes and enhancements to improve operation<br />
* <font style="color:red">Bug fix</font>: Many other bug fixes; see the [https://github.com/ElvishArtisan/rivendell/blob/stable/ChangeLog ChangeLog] for all the details (search for ''2.17.0'' and work your way backward through the list of changes)<br />
* <font style="color:green">Functionality</font>: Dropboxes: Added the ability to force imports to be imported as mono, also added the ability to reset individual dropboxes<br />
* <font style="color:green">Functionality</font>: New Switcher/GPIO Devices: Support has been added for the following Switcher/GPIO devices:<br />
:* Broadcast Tools Universal 4.1 MLR&gt;&gt;Web Switcher<br />
:* WheatNet LIO<br />
:* WheatNet SLIO<br />
* <font style="color:green">Functionality</font>: Macros: Added the &lsquo;Air Gate&rsquo; &#91;&lsquo;AG&rsquo;&#93; RML to permit conditional execution of RML on the basis of the status of the On-Air flag<br />
* <font style="color:green">Functionality</font>: <br />
* <font style="color:green">Functionality</font>: User Authentication: It is now possible to configure RDLogin to require entry of the user-name, rather than picking the name off of a list. See the &lsquo;Show User List in RDLogin&rsquo; checkbox in RDAdmin-&gt;SystemSettings<br />
* <font style="color:green">Functionality</font>: Log Rendering (EXPERIMENTAL): It is now possible to &lsquo;render&rsquo; a log as a single audio object (file or cart/cut) without the need to play it out while capturing the audio in realtime. Render support is available through the &lsquo;Render&rsquo; button in RDLogEdit and through the command-line rdrender(1) utility. See the rdrender(1) man page for details<br />
* <font style="color:green">Functionality</font>: Provisioning Support. Added a [Provisioning] section to rd.conf(5) with directives to facilitate the automatic provisioning of Rivendell instances. See the comments in the [Provisioning] section of the sample rd.conf(5) file<br />
* <font style="color:orange">Artwork</font>: New Icons: Implemented a new icon set, with individualized icons for each Rivendell module<br />
<br />
=== 2.16.0 (2017-06-02) ===<br />
* Database version updated to '''263'''<br />
* <font style="color:red">Bug fix</font>: Many bug fixes; see the [https://github.com/ElvishArtisan/rivendell/blob/stable/ChangeLog ChangeLog] for all the details (search for ''2.16.0'' and work your way backward through the list of changes)<br />
* <font style="color:green">Functionality</font>: Audio Store Hashing. Rivendell now automatically generates a SHA1 hash for each file in the audio store and records this value in the database, thus permitting automated recovery of audio in the event of loss or damage to the audio store's filesystem directory<br />
* <font style="color:green">Functionality</font>: Added switcher support for Kernel GPIO devices, such as the GPIO interface on the Raspberry Pi 2 and 3<br />
* <font style="color:green">Functionality</font>: Added switcher support for Modbus TCP devices<br />
* <font style="color:green">Functionality</font>: Added an rdconvert(1) utility<br />
* <font style="color:green">Functionality</font>: It is now possible to delegate authentication of Rivendell users by means of a PAM module, thus permitting &lsquo;''single sign-on''&rsquo; integration with systems such as ActiveDirectory and FreeIPA<br />
* <font style="color:green">Functionality</font>: Added various methods to the Rivendell Web API to permit integration with external audio and log editors<br />
<br />
=== 2.15.3 (2017-03-24) ===<br />
* Database version '''259''' <br />
* <font style="color:red">Bug fix</font>: Fixed bugs in MP3 file importation that caused files with variable bit rate (VBR) to be truncated during import.<br />
* <font style="color:red">Bug fix</font>: Fixed a bug that caused dynamically loaded codec libraries to fail to be detected if the corresponding library&rsquo;s so-called ''-devel'' package was not installed. <br />
* <font style="color:green">Functionality</font>: Added an ''RLM'' for generating [http://tagstation.com/ TagStation] RLM events for [http://nextradioapp.com/ NextRadio].<br />
* <font style="color:green">Functionality</font>: Added '''AddLog''', '''DeleteLog''' and '''SaveLog''' calls to the web API, along with general cleanup and correction of the overall Web API subsystem.<br />
<br />
=== 2.15.2 (2017-01-13) ===<br />
* Database version '''259'''<br />
* <font style="color:orange">Documentation</font>: Document the interfaces for '''inserting inline traffic breaks''' and for '''inserting voice track markers''' (also add an example in ''docs/examples/'')<br />
* <font style="color:red">Bug fix</font>: in ''rdadmin/createdb.cpp'' that caused obsolete fields in the 'SERVICES' table to be included when creating a new database.<br />
* <font style="color:red">Bug fix</font>: in ''lib/rdwavefile.cpp'' that caused RDXL chunks to be written with odd chunk lengths.<br />
* <font style="color:red">Bug fix</font>: in ''lib/rdsimpleplayer.cpp'' that caused RDAirPlay to freeze when attempting to audition an expired cart.<br />
* <font style="color:green">Functionality</font>: Added a '''LockRdairplayMemory=''' parameter to the [Hacks] section.<br />
* <font style="color:green">Functionality</font>: Modified the LiveWire Multicast GPIO driver to generate GPO events using the 'I' event type.<br />
<br />
=== 2.15.1 (2016-08-05) ===<br />
* Database version '''259'''<br />
* <font style="color:red">Bug fix</font>: fixed WAV file export code to enhance compatibility with third-party applications<br />
<br />
=== 2.15.0 (2016-07-29) ===<br />
* <font style="color:red">Bug fix</font>: complete support for the MySQL/MariaDB InnoDB database engine (for better transaction processing of database updates)<br />
* <font style="color:green">Functionality</font>: enhancements to ''rdexport'' that include full metadata in RDXML format<br />
* <font style="color:green">Functionality</font>: add CLI command ''rdclilogedit'' that enables editing of Rivendell Logs from the command line (without a GUI app)<br />
* <font style="color:green">Functionality</font>: Update the database to version 259.<br />
<br />
=== 2.14.1 (2016-06-11) ===<br />
* Database version '''258'''<br />
* <font style="color:red">Bug fix</font>: additional fixes for newer versions of MySQL (and MariaDB)<br />
<br />
=== 2.14.0 (2016-06-10) ===<br />
* Database version '''258'''<br />
* <font style="color:green">Functionality</font>: add the ability to capture real-time events in RDCatch recordings and replay the events in sync with the captured audio<br />
* <font style="color:green">Functionality</font>: add RML Macro ''Cut Event'' (''CE'') for placing real-time event markers into active RDCatch recordings<br />
* <font style="color:green">Functionality</font>: add support for specifying precise start time and length parameters for Traffic events that are embedded in Music events<br />
* <font style="color:red">Bug fix</font>: fixed a bug in RDAdmin that could cause creation of a new database to fail<br />
* <font style="color:red">Bug fix</font>: fix issues that prevent compilation under newer versions of the GNU C compiler suite<br />
* <font style="color:red">Bug fix</font>: various enhancements and fixes to the new(ish) ''rdexport'' utility<br />
* <font style="color:red">Bug fix</font>: initial support for newer versions of MySQL (and MariaDB)<br />
* <font style="color:red">Bug fix</font>: add code to allow embedded traffic breaks to be specified with start time and length in the music schedule.<br />
<br />
=== 2.13.0 (2016-05-10) ===<br />
* Database version '''255'''<br />
* <font style="color:green">Functionality</font>: add RLM plugin for the Paravel Systems ''WallTime'' clock<br />
* <font style="color:green">Functionality</font>: add new CLI command ''rdexport'' to export Carts with metadata<br />
* <font style="color:green">Functionality</font>: new report: ''Cut Log'' that includes the Description field for played events<br />
* <font style="color:red">Bug fix</font>: fixed a crash in RDLibrary when attempting to open multiple Carts<br />
* <font style="color:red">Bug fix</font>: fixed RDLogEdit to improve performance when saving and updating logs<br />
* <font style="color:red">Bug fix</font>: fixed a bug that caused marker data to be deleted when exporting a Cut<br />
<br />
=== 2.12.0 (2016-04-14) ===<br />
* Database version '''254'''<br />
* <font style="color:green">Functionality</font>: add support for sequential Cut play-out - you can now configure carts to play cuts in a fixed, sequential order rather than by weight value<br />
* <font style="color:green">Functionality</font>: add support for ''Broadcast Tools'' switchers<br />
* <font style="color:green">Functionality</font>: add RML macro '''Copy Cut''' (''CP'') to copy cuts between carts<br />
* <font style="color:green">Functionality</font>: add option to show only &ldquo;recent&rdquo; logs in RDLogEdit<br />
* <font style="color:green">Functionality</font>: add new web API methods related to Scheduler Codes<br />
* <font style="color:red">Bug fix</font>: fixed a bug that caused issues with Services containing the &ldquo;-&rdquo; (dash) character<br />
<br />
=== 2.11.0 (2015-09-18) ===<br />
* Database version '''252'''<br />
* <font style="color:green">Functionality</font>: add RDCatch upload/download protocols ''sftp'' and ''scp''<br />
* <font style="color:green">Functionality</font>: add support to import ''MP4/AAC'' files<br />
* <font style="color:green">Functionality</font>: add support for the ''Ross NK'' series video switcher<br />
* <font style="color:green">Functionality</font>: add support for ''PCM24'' in the core audio library code<br />
* <font style="color:red">Bug fix</font>: re-wrote the CD ripper code to make it faster and more reliable<br />
* <font style="color:red">Bug fix</font>: fixed several bugs related to audio data and buffering<br />
* <font style="color:red">Bug fix</font>: Normalized service clock data from the 'SERVICES' to the 'SVC_CLOCKS' table<br />
<br />
=== 2.10.3 (2015-02-24) ===<br />
* Database version '''242'''<br />
* <font style="color:green">Functionality</font>: add RLM (plugin) for Live365 streaming service (which is defunct as of Summer 2016)<br />
* <font style="color:green">Functionality</font>: add &ldquo;MrMaster&rdquo; and &ldquo;Spin Count&rdquo; reports<br />
* <font style="color:green">Functionality</font>: add support for audio switcher devices that use the &ldquo;Software Authority&rdquo; protocol<br />
* <font style="color:green">Functionality</font>: add ability to set segue markers in the CLI app ''rdmarkerset''<br />
* <font style="color:red">Bug fix</font>: fixed a bug that caused issues with Services containing a <Space> character in the service name<br />
<br />
=== 2.10.2 (2014-11-25) ===<br />
* Database version '''242'''<br />
* <font style="color:green">Functionality</font>: CLI ''rdimport'' enhancement: add two date-related options to the command<br />
* <font style="color:green">Functionality</font>: add column for ELR data in RDLogEdit<br />
* <font style="color:red">Bug fix</font>: fixed a bug in the Audio Science adapter for cards with only AES3 ports<br />
<br />
=== 2.10.1 (2014-11-04) ===<br />
* Database version '''242'''<br />
* <font style="color:green">Functionality</font>: add &ldquo;DSP utilization and profiling&rdquo; info for Audio Science adapters<br />
* <font style="color:green">Functionality</font>: add the column &ldquo;EXT DATA&rdquo; to the &ldquo;Edit Log&rdquo; screen in RDLogEdit<br />
* <font style="color:red">Bug fix</font>: fixed a memory fault (crash) in RDLogEdit when dropping a cart that was being used in a log</div>
DKlann
http://wiki.rivendellaudio.org/index.php?title=ChangeSummary&diff=604
ChangeSummary
2021-05-28T04:08:30Z
<p>DKlann: Add changes for version 3.6.0.</p>
<hr />
<div>__NOTOC__<br />
== Rivendell Change Summary ==<br />
<br />
This page contains version change descriptions in summary form for Rivendell versions released within at least the most recent five years (quite probably longer). Change descriptions are limited (mostly) to user-visible changes.<br />
<br />
Please see the [https://raw.githubusercontent.com/ElvishArtisan/rivendell/master/ChangeLog ChangeLog] and [https://github.com/ElvishArtisan/rivendell/blob/master/NEWS NEWS] files in the [https://github.com/elvishartisan/rivendell source code] for a complete list of changes and bug fixes.<br />
<br />
See the [https://github.com/elvishartisan/rivendell/issues Issues] list for current reported bugs, issues and feature requests.<br />
<br />
=== 3.6.0 (2021-05-15) ===<br />
* Database verson '''347'''<br />
* <font style="color:red">Bug fix</font>: Fixed title separation in rdlogmanager(1) scheduler<br />
* <font style="color:red">Bug fix</font>: Fixed bug in library code ''lib/rdwavefile.cpp'' that copied CartChunk Cut ID past the end of the first "NULL" character<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdairplay(1) that caused the Talk Timer to fail to be populated when adding new carts to a log<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in the Cart Selector Dialog that made it impossible to enter an apostrophe character in the filter search line<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdimport(1) where the title of an existing cart would be overwritten with a default title even when no title was found in the file metadata<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in &lsquo;RDFlacDecode&rsquo; that caused conversion of files with names containing non-ASCII characters to fail<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdadmin(1) where clicking the &lsquo;OK&rsquo; button in the &lsquo;Edit Switcher&rsquo; dialog would cause an error dialog to appear with a &lsquo;primary serial device not active&rsquo; warning. The following devices are affected: &lsquo;Local GPIO&rsquo;, &lsquo;Local Audio Adapter&rsquo;, &lsquo;Logitek vGuest&rsquo;, &lsquo;Livewire LWRP Audio&rsquo;, and &lsquo;Kernel GPIO&rsquo;<br />
* <font style="color:green">Functionality</font>: Modified rdimport(1) and the Webget service so as to send e-mail reports to the address of the current Rivendell user in addition to the group&rsquo;s Notification E-Mail Address<br />
* <font style="color:green">Functionality</font>: Added a &lsquo;STACK_LINES.TITLE&rsquo; field to the database<br />
* <font style="color:green">Functionality</font>: Added the value of the detected CartChunk CutID to the error message generated when rejecting said CutID as invalid when using the &lsquo;--use-cartchunk-cutid&rsquo; switch in rdimport(1)<br />
* <font style="color:green">Functionality</font>: Added code to print the value of the detected CartChunk CutID when using both the &lsquo;--use-cartchunk-cutid&rsquo; and &lsquo;--verbose&rsquo; flags in rdimport(1)<br />
* <font style="color:green">Functionality</font>: Created pypad_ino713_tcp based upon pypad_ino713, converting from UDP to TCP. Added an adjustable delay to account for broadcast air delays<br />
* <font style="color:green">Functionality</font>: Created pypad_nautel based upon pypad_ino713_tcp, including RDS parameters from documentation. Includes delay as above<br />
* <font style="color:green">Functionality</font>: Added a new &lsquo;RadioTraffic.com Traffic Reconciliation&rsquo; report. Renamed the existing &lsquo;RadioTraffic.com Traffic Reconciliation&rsquo; to &lsquo;Original RadioTraffic.com Traffic Reconciliation (DEPRECATED)&rsquo;<br />
* <font style="color:green">Functionality</font>: Changed the way in which the VU Meter UDP port is chosen. One can now specify the base port number and the maximum number of UDP ports to consider when caed(8) sets up the VU meter port<br />
* <font style="color:orange">Documentation</font>: Documented the &lsquo;MeterPortBaseNumber=&rsquo; and &lsquo;MeterPointRange=&rsquo; directives in the rd.conf(5) man page<br />
<br />
=== 3.5.0 (2020-12-12) ===<br />
* Database verson '''346'''<br />
* <font style="color:red">Bug fix</font>: Corrected the column settings in RDAdmin > Manage Hosts > [host] > Dropboxes<br />
* <font style="color:red">Bug fix</font>: Fixed regression with "Scheduler Code:" label overlapping "Group" combobox in rdlibrary(1)<br />
* <font style="color:red">Bug fix</font>: Fixed several bugs in rdadmin(1) that messed with passwords, user settings, and other important settings<br />
* <font style="color:red">Bug fix</font>: Fixed several bugs in rdlogmanager(1) that caused all kinds of mischief<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdairplay(1) where copying a log event using the &lsquo;Copy&rsquo; button would result in the new event always getting a &lsquo;PLAY&rsquo; transition<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rddbmgr(8) that could cause database corruption problems<br />
* <font style="color:red">Bug fix</font>: Fixed bugs in rdimport(1) that caused incorrect exit codes to be emitted when a non-existent group was specified, and that caused generation of double error messages when processing invalid audio files<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdmonitor(1) that caused false indications of a failed audio store when used with autofs(8)<br />
* <font style="color:green">Functionality</font>: Major overhaul of Rivendell&rsquo;s podcast handling features; see the ChangeLog for all the details<br />
* <font style="color:green">Functionality</font>: Modified the GVC7000 switcher driver to insert 50 mS pauses between protocol commands<br />
* <font style="color:green">Functionality</font>: Allow RN Macro to run when Rivendell daemons running as non-root<br />
* <font style="color:green">Functionality</font>: Many changes to rdadmin(1), including:<br />
:* Added whitespace to the set of banned characters for service names<br />
:* Added a &lsquo;SSH Ident. File&rsquo; control to the &lsquo;Host&rsquo; dialog<br />
:* Added an &lsquo;Inline Traffic Inheritance&rsquo; control to the &lsquo;Edit Service&rsquo; dialog<br />
:* Added type icons to the &lsquo;Imported Events&rsquo; list in the &lsquo;Test Import&rsquo; dialog<br />
:* Renamed the &lsquo;Inline Traffic Inheritance&rsquo; control to &lsquo;Inline Traffic Start/Length&rsquo; and moved it to the &lsquo;Music Data Import&rsquo; section of the &lsquo;Edit Service&rsquo; dialog<br />
:* Added an &lsquo;Encoder Profiles&rsquo; dialog<br />
:* Renamed the &lsquo;Note Cart String&rsquo; controls to &lsquo;Insert Marker String&rsquo; in the &lsquo;Edit Service dialog<br />
:* Added an &lsquo;Origin E-Mail Address&rsquo; control to the &lsquo;System-Wide Settings&rsquo; dialog<br />
:* Added a &lsquo;Notification E-Mail Addresses&rsquo; control to the &lsquo;Group&rsquo; dialog<br />
:* Added a &lsquo;Send e-mail reports&rsquo; checkbox to the &lsquo;Dropbox Configuration&rsquo; dialog<br />
:* Added &lsquo;E-Mail Address&rsquo;, &lsquo;Phone Number&rsquo; and &lsquo;Local Auth&rsquo; columns to the &lsquo;Users&rsquo; list in the &lsquo;Rivendell User List&rsquo; dialog<br />
:* Added an &lsquo;Administer RSS Feeds&rsquo; checkbox to the &lsquo;Administrative Rights&rsquo; section of the &lsquo;User&rsquo; dialog<br />
:* Added a deprecation warning for the &lsquo;Allow Duplicate Cart Titles&rsquo; and &lsquo;Auto-Correct Duplicate Cart Titles&rsquo; checkboxes on the &lsquo;System-Wide Settings&rsquo; dialog<br />
* <font style="color:green">Functionality</font>: Added support for FTPS protocol for uploading, downloading, and Feed management<br />
* <font style="color:green">Functionality</font>: Significant update to the Rivendell Web interfaces (Web API, WebGet service, rivwebcapi API, etc.)<br />
* <font style="color:green">Functionality</font>: Added &lsquo;--scheduler-code=&rsquo; switch to rdexport(1)<br />
* <font style="color:green">Functionality</font>: Added generation of an &lsquo;RDLogManager Error Report&rsquo; when errors are detected when importing an external scheduler file in rdlogmanager(1)<br />
* <font style="color:green">Functionality</font>: Restored operation of Label/Note carts in rdlogmanager(1)<br />
* <font style="color:green">Functionality</font>: Updated rdservice(8) to use standard exit code defines<br />
* <font style="color:green">Functionality</font>: Implemented the &lsquo;--verbose&rsquo; switch for rdmaint(8)<br />
* <font style="color:green">Functionality</font>: Added a sample Fail2Ban jail filter for the WebAPI in &lsquo;conf/rivendell-webapi.conf&rsquo;<br />
* <font style="color:green">Functionality</font>: Added command line options &lsquo;--output-pattern&rsquo;, &lsquo;--ticket=&rsquo;, &lsquo;--send-mail&rsquo; and &lsquo;--mail-per-file&rsquo; to rdimport(1)<br />
* <font style="color:green">Functionality</font>: Added the name of the import file to schedule import failure reports<br />
* <font style="color:orange">Documentation</font>: Documented the &lsquo;%%&rsquo; filepath wildcard in the Operations Guide<br />
* <font style="color:orange">Documentation</font>: Added an &lsquo;RDCastManager&rsquo; chapter to the Operations Guide<br />
* <font style="color:orange">Documentation</font>: Revised the &lsquo;Managing Services&rsquo; section of the Operations Guide<br />
* <font style="color:orange">Documentation</font>: Rewrote the &lsquo;Webget&rsquo; chapter of the Operations Guide to conform to changes in Webget<br />
* <font style="color:orange">Documentation</font>: Added a &lsquo;Configuring Webget&rsquo; section to the Operations Guide<br />
* <font style="color:orange">Documentation</font>: Removed the &lsquo;Cart Data Dump (fixed width)&rsquo; from the Operations Guide<br />
* <font style="color:orange">Documentation</font>: Documented user-facing changes to the &lsquo;System-Wide Settings&rsquo; dialog, the &lsquo;Rivendell Group List&rsquo; and the &lsquo;Group&rsquo; dialogs in rdadmin(1) in the Operations Guide<br />
* <font style="color:orange">Documentation</font>: Documented the &lsquo;Send e-mail reports&rsquo; checkbox in the &lsquo;Dropbox Configuration&rsquo; dialog in rdadmin(1) in the Operations Guide<br />
* <font style="color:blue">Code (internal) change</font>: Prepended &lsquo;RD_&rsquo; to the names of all common Javascript functions in &lsquo;web/common/utils.js&rsquo;<br />
* <font style="color:blue">Code (internal) change</font>: Added a &lsquo;webget&rsquo; subpackage to the &lsquo;make rpm&rsquo; target<br />
* <font style="color:blue">Code (internal) change</font>: Refactored the &lsquo;Run Script&rsquo; [&rsquo;RN&rsquo;] RML to invoke scripts via the system shell, this change also removed the dependency on runuser(1)<br />
<br />
=== 3.4.1 (2020-07-21) ===<br />
* Database verson '''317'''<br />
<br />
* <font style="color:green">Functionality</font>: Added a &lsquo;Results Report&rsquo; report in rdadmin(1)<br />
* <font style="color:green">Functionality</font>: Removed the checkbox from the &lsquo;Delete&rsquo; right-click menu item in the &lsquo;Edit Event&rsquo; dialog in rdlogmanager(1)<br />
* <font style="color:green">Functionality</font>: Modified &lsquo;RDWaveFile&rsquo; to work around known fencepost errors in WAV files generated by "Sonic Studio soundBlade" by "PME Mastering, Inc."<br />
* <font style="color:green">Functionality</font>: Modified the &lsquo;Edit Event&rsquo; dialog in rdlogmanager(1) to show &lsquo;[auto]&rsquo; as the transition type for the leading event in Pre-/Post-Import lists<br />
<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdlibrary(1) that caused cuts to be incorrectly sorted when scheduled &lsquo;By Specified Order&rsquo;<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in the Rivendell command line apps that caused value-only arguments containing &lsquo;=&rsquo; characters to be incorrectly parsed<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in the Podcast Manager, Library Exporter and Web API that caused an error when processing multipart-mime submissions containing &lsquo;=&rsquo; characters<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdairplay(1) where attempting to audition an audio cart with a disabled cue output would crash the application<br />
* <font style="color:red">Bug fix</font>: Fixed a regression in rdairplay(1) that caused the &lsquo;Forced Segue&rsquo; setting in rdadmin(1) to be ignored when executing an event with a hard start attribute<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdairplay(1) where a paused event could not be removed by dropping the empty cart on it<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdairplay(1) that cause incorrect pie timer indications after adding or deleting events to a running log<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdlibrary(1) that would cause a crash when attempting to delete a range of cuts, one of which was in the clipboard<br />
* <font style="color:red">Bug fix</font>: Fixed a math bug in rdairplay(1) that caused the estimated stop-down times in the post point widget to be incorrect after adding or removing events from a running log<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdadmin(1) that made it impossible to enter useful strings in the &lsquo;WaveForm Caption&rsquo; control on the &lsquo;Edit RDLogEdit&rsquo; dialog<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in RDRenderer that caused segue transitions to be rendered without regard to the &lsquo;No Fade on Segue Out&rsquo; checkbox in the &lsquo;Edit Audio&rsquo; dialog<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in ripcd(8) that caused connections to ModbusTCP devices to fail to be properly restored by the connection watchdog<br />
* <font style="color:red">Bug fix</font>: Fixed a regression in the &lsquo;Edit Event&rsquo; dialog in rdlogmanager(1) that caused the first cart transition type to be incorrect when the &lsquo;Pre-Import Carts&rsquo; list was populated<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in the &lsquo;Add Next&rsquo; [&rsquo;PX&rsquo;] RML that failed to return an error when an invalid offset value was supplied<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in the &lsquo;Add Next&rsquo; [&rsquo;PX&rsquo;] RML that failed to honor the &lsquo;Default Trans. Type&rsquo; setting in the &lsquo;Configure RDAirPlay&rsquo; dialog in rdadmin(1)<br />
<br />
=== 3.4.0 (2020-05-19) ===<br />
* Database verson '''317'''<br />
* <font style="color:red">Bug fix</font>: Fixed a regression in rdairplay(1) that caused two events to be started by a single spacebar tap if a SoundPanel event had been played previously<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdlogmanager(1) that caused the initial event in an imported set to fail receive the proper time and transition type if the &lsquo;Include Import Markers in Finished Logs&rsquo; checkbox in rdadmin(1) had not been ticked<br />
* <font style="color:red">Bug fix</font>: Fixed a regression in rdexport(1) that caused exported file names to be constructed improperly<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdlogmanager(1) that caused &lsquo;Make Post Point&rsquo; label to be displayed without last &lsquo;t&rsquo;<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdairplay(1) where timer was not set properly when crossing midnight<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in the &lsquo;List GPIs&rsquo; dialog in rdadmin(1) that prevented changes in GPI assignments from being propagated to the underlying device<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in the &lsquo;Software Authority&rsquo; driver that caused autodetection of the number of GPIOs in a router to be unreliable<br />
* <font style="color:red">Bug fix</font>: Fixed a regression in &lsquo;RDEventLine&rsquo; that caused the &lsquo;Append Log&rsquo; [&rsquo;AL&rsquo;] RML to append a copy of the currently loaded log instead of the one specified in the RML command<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdlogedit(1) that caused garbled text to appear when &lsquo;Start Immediately&rsquo; was selected in the &lsquo;Edit Log Entry&rsquo; dialog box<br />
* <font style="color:red">Bug fix</font>: Fixed a regression that broke the ability to scroll through Sound Panel panels by means of the mouse wheel<br />
<br />
* <font style="color:green">Functionality</font>: Modified rdairplay(1) to always scroll log to the top when using the hour selector<br />
* <font style="color:green">Functionality</font>: Modified rdlogmanager(1) to disable merge buttons if the selected log does not contain any import links<br />
* <font style="color:green">Functionality</font>: Modified rdadmin(1) Edit Service dialog to display built-in traffic and music import template values<br />
* <font style="color:green">Functionality</font>: Added "Copy To Custom" buttons to rdadmin(1) Edit Service dialog<br />
* <font style="color:green">Functionality</font>: Changed the layout of the &lsquo;Editing Event&rsquo; dialog in rdlogmanager<br />
<br />
* <font style="color:green">Functionality</font>: Removed the &lsquo;Post Point&rsquo; checkbox from the &lsquo;Editing Event&rsquo; dialog in rdlogmanager(1)<br />
* <font style="color:green">Functionality</font>: Renamed the &lsquo;REMARKS&rsquo; field to &lsquo;USER NOTES&rsquo; in the &lsquo;Editing Event&rsquo; and the &lsquo;Edit Clock&rsquo; dialogs in rdlogmanager(1)<br />
* <font style="color:green">Functionality</font>: Added a &lsquo;Trans&rsquo; column to the event list in the &lsquo;Edit Clock&rsquo; and the &lsquo;List Events&rsquo; dialogs in rdlogmanager(1)<br />
<br />
=== 3.3.0 (2020-03-16) ===<br />
* Database verson '''314'''<br />
* <font style="color:red">Bug fix</font>: Fixed regressions in the following switcher drivers that could cause deadlocks and intermittent operation<br />
:* BroadcastTools SS16.4<br />
:* BroadcastTools SS 4.2<br />
:* BroadcastTools SS4.4<br />
:* BroadcastTools SS 8.2<br />
:* BroadcastTools ACS8.2<br />
:* BroadcastTools ADMS 44.22<br />
:* BroadcastTools GPI-16<br />
:* BroadcastTools SRC-16<br />
:* BroadcastTools SRC-8 III<br />
:* BroadcastTools SS 4.1 MLR<br />
* <font style="color:red">Bug fix</font>: Fixed a regression in the implementation of the &lsquo;Set Serial Trap&rsquo; [&lsquo;SI&rsquo;] RML that could cause deadlocks and intermittent operation<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdairplay(1) that could cause random segfaults when updating the Label Widget<br />
* <font style="color:red">Bug fix</font>: Fixed a bug with the &lsquo;%y&rsquo; metadata wildcard where garbage would be returned if a valid year had not been set<br />
* <font style="color:red">Bug fix</font>: Fixed a regression in rdlogmanager(1) that caused trailer whitespace to be generated in the &lsquo;EXT_DATA&rsquo;, &lsquo;EXT_EVENT&rsquo;, &lsquo;EXT_ANNC_TYPE&rsquo; and &lsquo;EXT_CART_NAME&rsquo; log fields when importing from a CounterPoint format log<br />
* <font style="color:red">Bug fix</font>: Fixed the layout of the &lsquo;Matching Carts&rsquo; field in rdlibrary(1)&rsquo;s main window when Realtime Filtering is disabled<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdairplay(1) that would cause a hard-timed log event with a &lsquo;wait&rsquo; parameter set to attempt to play the event twice<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rddbmgr(8) that threw a SQL error when attempting to modify a DB containing tables set to use character set UTF-8 to schema 297<br />
* <font style="color:red">Bug fix</font>: Fixed a race in ripcd(8) that caused arguments to the &lsquo;Run Shell Command&rsquo; [&lsquo;RN&rsquo;] macro to be corrupted<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in the &lsquo;Edit Event&rsquo; dialog in rdlogmanager(1) that caused the Transition Type dropdown to be greyed-out when the &lsquo;IMPORT&rsquo; controls were set to use the built-in music scheduler<br />
* <font style="color:green">Functionality</font>: Added a &lsquo;delta-seconds&rsquo; modifier to Filepath Wildcards to enable positive and negative time offsets<br />
* <font style="color:green">Functionality</font>: Removed support for CD-TEXT from the CD rippers<br />
* <font style="color:green">Functionality</font>: Added support for &lsquo;MusicBrainz&rsquo; CD metadata lookup<br />
* <font style="color:green">Functionality</font>: Added a &lsquo;Web Browser&rsquo; control to the &lsquo;Edit Host&rsquo; dialog in rdadmin(1)<br />
* <font style="color:green">Functionality</font>: Added support for displaying cover art in the MusicBrainz release chooser<br />
* <font style="color:green">Functionality</font>: Added &lsquo;%wm&rsquo; [&lsquo;MusicBrainz Recording ID&rsquo;] and &lsquo;%wr&rsquo; [&lsquo;MusicBrainz Release ID&rsquo;] metadata wildcards<br />
* <font style="color:green">Functionality</font>: Implemented the &lsquo;%wm&rsquo; [&lsquo;MusicBrainz Recording ID&rsquo;] and &lsquo;%wr&rsquo; [&lsquo;MusicBrainz Release ID&rsquo;] metadata wildcards for PyPAD<br />
* <font style="color:green">Functionality</font>: Added support for the &lsquo;%wi&rsquo;, &lsquo;%wm&rsquo; and &lsquo;%wr&rsquo; wildcards to the &lsquo;--metadata-pattern=&rsquo; switch in rdimport(1)<br />
* <font style="color:green">Functionality</font>: Added &lsquo;--set-string-isrc&rsquo;, &lsquo;--set-string-recording-mbid&rsquo; and &lsquo;--set-string-release-mbid&rsquo; switches to rdimport(1)<br />
* <font style="color:green">Functionality</font>: Added support for the &lsquo;%wi&rsquo;, &lsquo;%wm&rsquo; and &lsquo;%wr&rsquo; wildcards to the &lsquo;--metadata-pattern=&rsquo; switch in rdexport(1)<br />
* <font style="color:green">Functionality</font>: Added a &lsquo;%wc&rsquo; [&lsquo;Industry Standard Commercial Identification (ISCI) Code&rsquo;] metadata wildcard<br />
* <font style="color:green">Functionality</font>: Implemented the &lsquo;%wc&rsquo; metadata wildcard for PyPAD<br />
* <font style="color:green">Functionality</font>: Added support for the &lsquo;%wc&rsquo; wildcards to the &lsquo;--metadata-pattern=&rsquo; switch in rdimport(1)<br />
* <font style="color:green">Functionality</font>: Added &lsquo;--set-string-isci&rsquo; switch to rdimport(1)<br />
* <font style="color:green">Functionality</font>: Added support for the &lsquo;%wc&rsquo; wildcard to the &lsquo;--metadata-pattern=&rsquo; switch in rdexport(1)<br />
* <font style="color:green">Functionality</font>: Removed the &lsquo;RDLabel&rsquo; widget<br />
* <font style="color:green">Functionality</font>: Added a &lsquo;Disconnect All Jack Ports&rsquo; [&lsquo;JZ&rsquo;] RML<br />
* <font style="color:green">Functionality</font>: Added a &lsquo;CounterPoint Traffic Reconciliation v2&rsquo; report<br />
<br />
=== 3.2.1 (2020-01-24) ===<br />
* Database verson '''311'''<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdcatch(1) that threw a SQL error when clicking 'OK' on the &lsquo;Edit Cart Event&rsquo; dialog<br />
* <font style="color:red">Bug fix</font>: Fixed a regression in rdimport(1) that caused null characters to be written to cart metadata fields when importing files containing an &lsquo;AIR1&rsquo; RIFF chunk<br />
* <font style="color:red">Bug fix</font>: Fixed a regression in rdcatch(1) that caused the &lsquo;Source&rsquo; dropdown in the &lsquo;Edit Recording&rsquo; dialog to fail to be populated properly<br />
* <font style="color:red">Bug fix</font>: Fixed a regression in the cart selector dialog that caused default focus to be lost on the &lsquo;Filter&rsquo; control after second and subsequent invocations<br />
* <font style="color:red">Bug fix</font>: Fixed a regression in rdcatchd(8) that broke audio metering<br />
* <font style="color:red">Bug fix</font>: Fixed a regression in rdcatchd(8) that could cause download events to hang in an active state<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdcatch(1) that caused DOW flags to fail to be updated correctly on the event list after making a change<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdcatchd(8) that failed to send a MODIFY notification at the end of a Record or Download event<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdconvert that caused a segfault at startup<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdexport(1) that caused output filenames containing multi-byte UTF-8 characters to be corrupt<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdgpimon(1) that caused GPIO cart displays to fail to accurately reflect current state<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdgpimon(1) that caused incorrect state indications to be displayed after switching to a different page<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdimport(1) that caused non-Latin1 characters to be corrupted when using standard input<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdimport(1) that caused UTF-8 multibyte characters in filenames to be corrupted<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdlogmanager(1) that caused spurious log events to be inserted when generating a log<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in ripcd(8) that caused input and output counts to be calculated incorrectly for Software Authority protocol devices containing holes in the input and/or output lists<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in the &lsquo;pypad-shoutcast1.py&rsquo; script that threw an exception when processing PAD containing multi-type UTF-8 characters<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in the &lsquo;pypad_xds.py&rsquo; PyPAD script that could cause it to emit duplicate CIC updates<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in the &lsquo;rivwebcapi&rsquo; validate_tm() function that caused dates containing &lsquo;29 February&rsquo; to always fail regardless of leap-year validity<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in the rdxport service that could cause MODIFY notifications to fail to be sent by the &lsquo;SaveLog&rsquo; WebAPI call<br />
* <font style="color:red">Bug fix</font>: Fixed a regression in rdadmin(1) that caused controls to be hidden in the &lsquo;Edit Report&rsquo; dialog<br />
* <font style="color:red">Bug fix</font>: Fixed a regression in rdlogmanager(1) that caused incorrect logged start times to be generated for imported events<br />
* <font style="color:red">Bug fix</font>: Fixed a regression in the rdxport service that caused the ListCuts WebAPI call to return corrupt data<br />
* <font style="color:red">Bug fix</font>: Fixed a regression in the Web API that caused the and/or corrupt in served XML documents<br />
* <font style="color:green">Functionality</font>: Implemented support for non-realtime library filtering in the &lsquo;Editing Event&rsquo; dialog in rdlogmanager(1)<br />
* <font style="color:green">Functionality</font>: Added a &lsquo;Show Start Time As&rsquo; control to the &lsquo;Edit Log&rsquo; dialog in rdlogedit(1)<br />
* <font style="color:green">Functionality</font>: Made the rdlogedit(1) main window and &lsquo;Edit Log&rsquo; dialog window sizes persistent<br />
* <font style="color:green">Functionality</font>: Added a work-around in the &lsquo;PyPAD.Receiver().__openDb()&rsquo; method to work with versions of MySQLdb that do not support the &lsquo;password=&rsquo; parameter in &lsquo;MySQLdb.connect()&rsquo;<br />
* <font style="color:green">Functionality</font>: Added &lsquo;Repetitions=&rsquo; and &lsquo;RepetitionDelay=&rsquo; directive to the configuration of the &lsquo;pypad_xds.py&rsquo; PyPAD script<br />
* <font style="color:green">Functionality</font>: Added &lsquo;Username=&rsquo; and &lsquo;Password=&rsquo; directives to the &lsquo;pypad_httpget.py&rsquo; script for use for HTTP Basic Authentication<br />
* <font style="color:green">Functionality</font>: Added the ability to view a report at time of generation in rdlogmanager(1)<br />
* <font style="color:green">Functionality</font>: Adjusted the position of the &lsquo;Matching Carts&rsquo; readout on the main window of rdlibrary(1)<br />
* <font style="color:green">Functionality</font>: Changed the &lsquo;Time&rsquo; column in the &lsquo;Full Log Widget&rsquo; in rdairplay(1) to &lsquo;Sch. Time&rsquo;<br />
* <font style="color:green">Functionality</font>: Implemented a work-around for importing CartChunk data containing a buggy ENCO implemention of the &lsquo;AUD&rsquo; CartChunk timer<br />
* <font style="color:green">Functionality</font>: Modified the Full Log widget in rdairplay(1) to display logged start times even when the referenced cart does not exist<br />
* <font style="color:green">Functionality</font>: Tweaked the &lsquo;LogLineBox::mouseMoveEvent()&rsquo; method in rdairplay(1) to require a cursor movement of at least 20 pixels before generating a cart drag<br />
<br />
=== 3.2.0 (2019-10-31) ===<br />
* Database verson '''311'''<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rddbmgr(8) that caused a segfault when processing a SQL error<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdimport(1) that caused it to throw an exception when given a &lsquo;--metadata-pattern&rsquo; of less than three characters<br />
* <font style="color:red">Bug fix</font>: Fixed a regression in rdimport(1) that caused a segfault when invoked with the &lsquo;--metadata-pattern&rsquo; and &lsquo;--log-syslog&rsquo; switches<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdairplay(1) that caused space bar presses to start the next event in the Main Log even when &lsquo;Space Bar Action&rsquo; was set to &lsquo;None&rsquo;<br />
* <font style="color:red">Bug fix</font>: Fixed bugs in 'RDWaveFile' that caused strings of null characters to be written into unfilled CartChunk string fields<br />
* <font style="color:red">Bug fix</font>: Fixed a regression in 'rdxport.cgi' that caused a check of the Rivendell services to be triggered each time a WebAPI function was invoked<br />
* <font style="color:red">Bug fix</font>: Fixed a regression in rdsoftkeys(1) that threw a segfault at startup<br />
* <font style="color:green">Functionality</font>: Added the ability to configure the caption displayed for the first and third voicetrack waveforms in the Voicetracker dialog in rdlogedit(1)<br />
* <font style="color:green">Functionality</font>: Reworked the font management system to permit the fonts used in the UI to be specified in rd.conf(5).<br />
* <font style="color:green">Functionality</font>: Added support for posting podcast content via SFTP<br />
* <font style="color:orange">Documentation</font>: Added manual pages for rd.conf(5) and rdsoftkeys(1)<br />
<br />
=== 3.1.0 (2019-09-19) ===<br />
* Database verson '''310'''<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdairplay(1) and rdvairplayd(8) where only the first log machine set to &lsquo;load specified log&rsquo; would do so<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdlogedit(1) that caused hard start log items to have the Hour field doubled<br />
* <font style="color:red">Bug fix</font>: Refactored the Python &lsquo;pypad.Update.shouldBeProcessed()&rsquo; method to work correctly when using <tt>try:</tt> blocks in a PyPAD script<br />
* <font style="color:red">Bug fix</font>: Refactored the PyPAD scripts to route updates properly in accordance with log directives in their configuration file<br />
* <font style="color:red">Bug fix</font>: Fixed a bug that broke dropbox logging to individual files<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in caed(8) that broke timescaling support<br />
* <font style="color:red">Bug fix</font>: Fixed bugs in rdlibrary(1) that broke CD ripping<br />
* <font style="color:green">Functionality</font>: Refactored rdalsaconfig(1) to be more robust and intuitive<br />
* <font style="color:green">Functionality</font>: Added a &lsquo;pypad_httpget.py&rsquo; PyPAD script<br />
* <font style="color:green">Functionality</font>: Updated CDDB code to use protocol level 6 (UTF-8 enabled)<br />
* <font style="color:green">Functionality</font>: Added an &lsquo;%l&rsquo; wildcard to Filepath Wildcards for &lsquo;unpadded month&rsquo;<br />
=== 3.0.3 (2019-08-05) ===<br />
* Database verson '''308'''<br />
* <font style="color:red">Bug fix</font>: Fixed a regression in ripcd(8) that broke the 'Connect Jack Ports' ['JC'] and 'Disconnect Jack Ports' ['JD'] RMLs<br />
=== 3.0.2 (2019-07-31) ===<br />
* Database verson '''308'''<br />
* <font style="color:red">Bug fix</font>: Fixed a problem with the Local Audio Adapter switcher driver that caused incorrect operation with the 'Switch Add' ['SA'], 'Switch Remove' ['SR'] and 'Switch Take' ['ST'] RMLs<br />
* <font style="color:red">Bug fix</font>: Fixed a regression in rdlibrary(1) that caused macro carts entries to turn red after being viewed<br />
* <font style="color:red">Bug fix</font>: Fixed regressions that made operations with serial devices unreliable<br />
* <font style="color:green">Functionality</font>: Added support for switchers using the Grass Valley 7000 series protocol<br />
=== 3.0.1 (2019-07-16) ===<br />
* Database verson '''308'''<br />
* <font style="color:red">Bug fix</font>: Rivendell is now Unicode UTF-8 clean<br />
* <font style="color:red">Bug fix</font>: Qt4 is now used throughout Rivendell instead of Qt3<br />
* <font style="color:green">Functionality</font>: The Rivendell Loadable Modules system for processing PAD data has been completely replaced by PyPAD, allowing PAD processing plug-ins to be written in the popular Python scripting langauge. Backward compatible replacement scripts for many of the RLM plug-ins supplied in Rivendell v2.x are included<br />
* <font style="color:green">Functionality</font>: Added a compatibility library to facilitate the use of the Rivendell Web API in external applications<br />
* <font style="color:green">Functionality</font>: A system of virtual log machines has been added, allowing play-out of up to 23 logs simultaneously<br />
* <font style="color:green">Functionality</font>: Rivendell is now fully systemd compatibile<br />
* <font style="color:green">Functionality</font>: The Windows ports of rdlogedit(1) and rdlogmanager(1) have been removed<br />
* <font style="color:orange">Documentation</font>: The Rivendell Operations and Administration Guide has been updated and enhanced with more details about running a Rivendell system<br />
* <font style="color:orange">Documentation</font>: New manual pages have been added for Rivendell command that previously did not have them<br />
See [http://caspian.paravelsystems.com/pipermail/rivendell-dev/2019-July/027867.html this message] on the Rivendell Dev mailing list for more details about installing and upgrading Rivendell.<br />
=== 2.19.3 (2018-10-31) ===<br />
* Database verson '''275'''<br />
* <font style="color:red">Bug fix</font>: Fixed a bug that caused the &lsquo;Switcher Matrix&rsquo; and &lsquo;Switcher Output&rsquo; dropdowns to populate incorrect values when selecting a non-local &lsquo;Switcher Host&rsquo; in the &lsquo;Configure RDCatch&rsquo; dialog in rdadmin(1)<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdlogmanager(1) that caused the initial transition type specified in the &lsquo;IMPORT&rsquo; section of the &lsquo;Editing Event&rsquo; dialog to be applied to both the parent log link and the first imported event when the &lsquo;PRE-IMPORT CARTS&rsquo; list was empty and no Timed Start was enabled<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in ripcd(8) that caused process of the &lsquo;Air Gate&rsquo; [&lsquo;AG&rsquo;] RML to fail<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdimport(1) that would throw a spurious SQL error when using the &lsquo;--to-cart=&rsquo; switch with an already existing cart [Issue #000217]<br />
* <font style="color:red">Bug fix</font>: Fixed a regression that caused rdimport(1) to return a &lsquo;no free carts available in specified group&rsquo; when invoked without the &lsquo;--to-cart=&rsquo; option<br />
* <font style="color:red">Bug fix</font>: Fixed a regression in rdairplay(1) that caused carts Added or Copied to a log to have a PLAY transition regardless of the default transition type set in rdadmin(1)<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in &lsquo;RDTextValidator&rsquo; that failed to catch banned characters added to the interior of existing strings<br />
* <font style="color:red">Bug fix</font>: Various other bugs fixed<br />
* <font style="color:green">Functionality</font>: Added a &lsquo;TranscodingDelay=&rsquo; parameter to the &lsquo;[Tuning]&rsquo; section of rd.conf(5)<br />
* <font style="color:green">Functionality</font>: Added a Switcher/GPIO driver for the BroadcastTools SS 2.1 switcher<br />
* <font style="color:green">Functionality</font>: Added support for GPIO on AudioScience adapters to the 'Local Audio Adapter' Switcher/GPIO driver<br />
* <font style="color:green">Functionality</font>: Renamed the 'Add Next' ['PX'] RML to 'Insert Cart' ['PX'] and added two optional arguments to allow specification of the insertion position and transition type<br />
* <font style="color:green">Functionality</font>: Added support for Spinitron v2 to the 'spinitron_plus' RLM<br />
* <font style="color:green">Functionality</font>: Added an &lsquo;ExportedFileMode=&rsquo; parameter to the &lsquo;[Tuning]&rsquo; section of rd.conf(5) to permit permission mode of exported audio files to be specified<br />
* <font style="color:orange">Documentation</font>: Documented GPIO support for AudioScience cards in the &lsquo;Local Audio Adapter&rsquo; section of the Operations Guide<br />
<br />
=== 2.19.2 (2018-04-14) ===<br />
* Database verson '''275'''<br />
* <font style="color:red">Bug fix</font>: Fixed a regression in the HPI support layer that broke audio capture with adapters lacking DMA bus-mastering support<br />
<br />
=== 2.19.1 (2018-03-27) ===<br />
* Database verson '''275'''<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdlogmanager(1) that caused DB corruption when a clock was deleted while still being assigned to a grid.<br />
* <font style="color:green">Functionality</font>: Implemented support for DMA bus-mastering for AudioScience HPI devices. This release supports the latest ASI cards that require DMA bus-mastering support. You may also need to update the hpklinux driver to v4.20.10 or later. RPMs for CentOS 7 are available at [http://static.paravelsystems.com/audioscience/centos/7/ Paravel&rsquo;s website].<br />
* <font style="color:green">Functionality</font>: Removed rdhpiinfo(8). Replaced by the stand-alone &lsquo;hpiinfo&rsquo; package.<br />
* <font style="color:green">Functionality</font>: Removed the event time check for Playout events in rdcatch(1), as there is no sane way to determine a consistently &lsquo;free&rsquo; playout time in the face of shifting cut lengths.<br />
<br />
=== 2.19.0 (2018-02-22) ===<br />
* Database verson '''275'''<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdlibrary(1) that caused evergreen carts/cuts to fail to be highlighted in the correct color<br />
* <font style="color:green">Functionality</font>: Added the ability to specify automatic log deletion on the basis of either the Creation Date or Air Date of the log<br />
* <font style="color:green">Functionality</font>: Log Importation Changes. Changed music and traffic importation so that parent link events are still visible in linked logs<br />
* <font style="color:green">Functionality</font>: Log Locking: implemented a system-wide protocol to prevent changes made to a log on one host from being inadvertently overwritten from another host<br />
<br />
=== 2.18.2 (2017-12-29) ===<br />
* Database version '''272'''<br />
* <font style="color:red">Bug fix</font>: Fixed a bug that caused creation of new clocks in rdlogmanager(1) to fail to initialize music scheduler components correctly in the database<br />
<br />
=== 2.18.1 (2017-12-22) ===<br />
* Database version '''272'''<br />
* <font style="color:red">Bug fix</font>: Fixed a bug that caused creation and initialization of a new Rivendell database to fail<br />
<br />
=== 2.18.0 (2017-12-21) ===<br />
* Database version updated to '''272'''<br />
* <font style="color:red">Bug fix</font>: Various bug fixes. See the [https://github.com/ElvishArtisan/rivendell/blob/stable/ChangeLog ChangeLog] for details<br />
* <font style="color:green">Functionality</font>: Group Cut Expiration Policy: Added the ability to set a default End Date/Time for new cuts on a per-group basis<br />
* <font style="color:green">Functionality</font>: Host Short Name: Added a ''Short Name'' parameter to Host profiles<br />
* <font style="color:green">Functionality</font>: Macro Carts: It is now possible to use filepath wildcards in macro carts<br />
* <font style="color:green">Functionality</font>: New Host Wildcards: Added two host wildcards: ''%r'' for ''Rivendell Host Name, and ''%R'' for ''Rivendell Short Name''<br />
* <font style="color:green">Functionality</font>: Provisioning Support: Added four new directives and to the ''[Provisioning]'' section of ''/etc/rd.conf''<br />
* <font style="color:green">Functionality</font>: MySQL Configuration: Added three parameters to the ''[mySQL]'' section of ''/etc/rd.conf''<br />
* <font style="color:green">Functionality</font>: Dropbox Enhancements: Added the ability to specify creation of default Segue Markers when processing files via dropbox<br />
* <font style="color:green">Functionality</font>: '''RDImport'''/DropBox Enhancements: Added the ability to specify start and end datetimes via metadata pattern<br />
* <font style="color:green">Functionality</font>: '''RDCatch''' Event Filtering: Added the ability to filter by event type in '''RDCatch'''<br />
* <font style="color:green">Functionality</font>: Log Searching: A search filter (similar to that employed for seaching for carts) has been added to the List Logs dialogs<br />
* <font style="color:green">Functionality</font>: Service Filtering in '''RDLogEdit''': Added the ability to limit the visible set of logs in RDLogEdit by user<br />
* <font style="color:green">Functionality</font>: Log Purge/Deletion Changes: Logs created manually (in rdlogedit(1) or rdairplay(1)) are now assigned a default purge/deletion date in accordance with the setting in RDAdmin->ManageServices<br />
* <font style="color:green">Functionality</font>: Log Importation Changes: Changed music and traffic importation so that parent link events are still visible in linked logs<br />
* <font style="color:green">Functionality</font>: Web API Changes: Added &lsquo;FILTER&rsquo; and &lsquo;RECENT&rsquo; call parameters to the &lsquo;ListLogs&rsquo; Web API call<br />
* <font style="color:orange">Documentation</font>: Documentation Overhaul: The Rivendell Operations and Administration Guide has been exapanded and incorporated as part of the base Rivendell source in ''docs/opsguide''. This guide is available as a separate CentOS package: ''rivendell-opsguide''<br />
* <font style="color:orange">Documentation</font>: Rivendell APIs: The various application programming interfaces (notably the web API) is now documented and is included with the standard distribution<br />
<br />
=== 2.17.0 (2017-10-11) ===<br />
* Database version updated to '''268'''<br />
* <font style="color:red">Bug fix</font>: Web API: Many fixes and enhancements to improve operation<br />
* <font style="color:red">Bug fix</font>: Many other bug fixes; see the [https://github.com/ElvishArtisan/rivendell/blob/stable/ChangeLog ChangeLog] for all the details (search for ''2.17.0'' and work your way backward through the list of changes)<br />
* <font style="color:green">Functionality</font>: Dropboxes: Added the ability to force imports to be imported as mono, also added the ability to reset individual dropboxes<br />
* <font style="color:green">Functionality</font>: New Switcher/GPIO Devices: Support has been added for the following Switcher/GPIO devices:<br />
:* Broadcast Tools Universal 4.1 MLR&gt;&gt;Web Switcher<br />
:* WheatNet LIO<br />
:* WheatNet SLIO<br />
* <font style="color:green">Functionality</font>: Macros: Added the &lsquo;Air Gate&rsquo; &#91;&lsquo;AG&rsquo;&#93; RML to permit conditional execution of RML on the basis of the status of the On-Air flag<br />
* <font style="color:green">Functionality</font>: <br />
* <font style="color:green">Functionality</font>: User Authentication: It is now possible to configure RDLogin to require entry of the user-name, rather than picking the name off of a list. See the &lsquo;Show User List in RDLogin&rsquo; checkbox in RDAdmin-&gt;SystemSettings<br />
* <font style="color:green">Functionality</font>: Log Rendering (EXPERIMENTAL): It is now possible to &lsquo;render&rsquo; a log as a single audio object (file or cart/cut) without the need to play it out while capturing the audio in realtime. Render support is available through the &lsquo;Render&rsquo; button in RDLogEdit and through the command-line rdrender(1) utility. See the rdrender(1) man page for details<br />
* <font style="color:green">Functionality</font>: Provisioning Support. Added a [Provisioning] section to rd.conf(5) with directives to facilitate the automatic provisioning of Rivendell instances. See the comments in the [Provisioning] section of the sample rd.conf(5) file<br />
* <font style="color:orange">Artwork</font>: New Icons: Implemented a new icon set, with individualized icons for each Rivendell module<br />
<br />
=== 2.16.0 (2017-06-02) ===<br />
* Database version updated to '''263'''<br />
* <font style="color:red">Bug fix</font>: Many bug fixes; see the [https://github.com/ElvishArtisan/rivendell/blob/stable/ChangeLog ChangeLog] for all the details (search for ''2.16.0'' and work your way backward through the list of changes)<br />
* <font style="color:green">Functionality</font>: Audio Store Hashing. Rivendell now automatically generates a SHA1 hash for each file in the audio store and records this value in the database, thus permitting automated recovery of audio in the event of loss or damage to the audio store's filesystem directory<br />
* <font style="color:green">Functionality</font>: Added switcher support for Kernel GPIO devices, such as the GPIO interface on the Raspberry Pi 2 and 3<br />
* <font style="color:green">Functionality</font>: Added switcher support for Modbus TCP devices<br />
* <font style="color:green">Functionality</font>: Added an rdconvert(1) utility<br />
* <font style="color:green">Functionality</font>: It is now possible to delegate authentication of Rivendell users by means of a PAM module, thus permitting &lsquo;''single sign-on''&rsquo; integration with systems such as ActiveDirectory and FreeIPA<br />
* <font style="color:green">Functionality</font>: Added various methods to the Rivendell Web API to permit integration with external audio and log editors<br />
<br />
=== 2.15.3 (2017-03-24) ===<br />
* Database version '''259''' <br />
* <font style="color:red">Bug fix</font>: Fixed bugs in MP3 file importation that caused files with variable bit rate (VBR) to be truncated during import.<br />
* <font style="color:red">Bug fix</font>: Fixed a bug that caused dynamically loaded codec libraries to fail to be detected if the corresponding library&rsquo;s so-called ''-devel'' package was not installed. <br />
* <font style="color:green">Functionality</font>: Added an ''RLM'' for generating [http://tagstation.com/ TagStation] RLM events for [http://nextradioapp.com/ NextRadio].<br />
* <font style="color:green">Functionality</font>: Added '''AddLog''', '''DeleteLog''' and '''SaveLog''' calls to the web API, along with general cleanup and correction of the overall Web API subsystem.<br />
<br />
=== 2.15.2 (2017-01-13) ===<br />
* Database version '''259'''<br />
* <font style="color:orange">Documentation</font>: Document the interfaces for '''inserting inline traffic breaks''' and for '''inserting voice track markers''' (also add an example in ''docs/examples/'')<br />
* <font style="color:red">Bug fix</font>: in ''rdadmin/createdb.cpp'' that caused obsolete fields in the 'SERVICES' table to be included when creating a new database.<br />
* <font style="color:red">Bug fix</font>: in ''lib/rdwavefile.cpp'' that caused RDXL chunks to be written with odd chunk lengths.<br />
* <font style="color:red">Bug fix</font>: in ''lib/rdsimpleplayer.cpp'' that caused RDAirPlay to freeze when attempting to audition an expired cart.<br />
* <font style="color:green">Functionality</font>: Added a '''LockRdairplayMemory=''' parameter to the [Hacks] section.<br />
* <font style="color:green">Functionality</font>: Modified the LiveWire Multicast GPIO driver to generate GPO events using the 'I' event type.<br />
<br />
=== 2.15.1 (2016-08-05) ===<br />
* Database version '''259'''<br />
* <font style="color:red">Bug fix</font>: fixed WAV file export code to enhance compatibility with third-party applications<br />
<br />
=== 2.15.0 (2016-07-29) ===<br />
* <font style="color:red">Bug fix</font>: complete support for the MySQL/MariaDB InnoDB database engine (for better transaction processing of database updates)<br />
* <font style="color:green">Functionality</font>: enhancements to ''rdexport'' that include full metadata in RDXML format<br />
* <font style="color:green">Functionality</font>: add CLI command ''rdclilogedit'' that enables editing of Rivendell Logs from the command line (without a GUI app)<br />
* <font style="color:green">Functionality</font>: Update the database to version 259.<br />
<br />
=== 2.14.1 (2016-06-11) ===<br />
* Database version '''258'''<br />
* <font style="color:red">Bug fix</font>: additional fixes for newer versions of MySQL (and MariaDB)<br />
<br />
=== 2.14.0 (2016-06-10) ===<br />
* Database version '''258'''<br />
* <font style="color:green">Functionality</font>: add the ability to capture real-time events in RDCatch recordings and replay the events in sync with the captured audio<br />
* <font style="color:green">Functionality</font>: add RML Macro ''Cut Event'' (''CE'') for placing real-time event markers into active RDCatch recordings<br />
* <font style="color:green">Functionality</font>: add support for specifying precise start time and length parameters for Traffic events that are embedded in Music events<br />
* <font style="color:red">Bug fix</font>: fixed a bug in RDAdmin that could cause creation of a new database to fail<br />
* <font style="color:red">Bug fix</font>: fix issues that prevent compilation under newer versions of the GNU C compiler suite<br />
* <font style="color:red">Bug fix</font>: various enhancements and fixes to the new(ish) ''rdexport'' utility<br />
* <font style="color:red">Bug fix</font>: initial support for newer versions of MySQL (and MariaDB)<br />
* <font style="color:red">Bug fix</font>: add code to allow embedded traffic breaks to be specified with start time and length in the music schedule.<br />
<br />
=== 2.13.0 (2016-05-10) ===<br />
* Database version '''255'''<br />
* <font style="color:green">Functionality</font>: add RLM plugin for the Paravel Systems ''WallTime'' clock<br />
* <font style="color:green">Functionality</font>: add new CLI command ''rdexport'' to export Carts with metadata<br />
* <font style="color:green">Functionality</font>: new report: ''Cut Log'' that includes the Description field for played events<br />
* <font style="color:red">Bug fix</font>: fixed a crash in RDLibrary when attempting to open multiple Carts<br />
* <font style="color:red">Bug fix</font>: fixed RDLogEdit to improve performance when saving and updating logs<br />
* <font style="color:red">Bug fix</font>: fixed a bug that caused marker data to be deleted when exporting a Cut<br />
<br />
=== 2.12.0 (2016-04-14) ===<br />
* Database version '''254'''<br />
* <font style="color:green">Functionality</font>: add support for sequential Cut play-out - you can now configure carts to play cuts in a fixed, sequential order rather than by weight value<br />
* <font style="color:green">Functionality</font>: add support for ''Broadcast Tools'' switchers<br />
* <font style="color:green">Functionality</font>: add RML macro '''Copy Cut''' (''CP'') to copy cuts between carts<br />
* <font style="color:green">Functionality</font>: add option to show only &ldquo;recent&rdquo; logs in RDLogEdit<br />
* <font style="color:green">Functionality</font>: add new web API methods related to Scheduler Codes<br />
* <font style="color:red">Bug fix</font>: fixed a bug that caused issues with Services containing the &ldquo;-&rdquo; (dash) character<br />
<br />
=== 2.11.0 (2015-09-18) ===<br />
* Database version '''252'''<br />
* <font style="color:green">Functionality</font>: add RDCatch upload/download protocols ''sftp'' and ''scp''<br />
* <font style="color:green">Functionality</font>: add support to import ''MP4/AAC'' files<br />
* <font style="color:green">Functionality</font>: add support for the ''Ross NK'' series video switcher<br />
* <font style="color:green">Functionality</font>: add support for ''PCM24'' in the core audio library code<br />
* <font style="color:red">Bug fix</font>: re-wrote the CD ripper code to make it faster and more reliable<br />
* <font style="color:red">Bug fix</font>: fixed several bugs related to audio data and buffering<br />
* <font style="color:red">Bug fix</font>: Normalized service clock data from the 'SERVICES' to the 'SVC_CLOCKS' table<br />
<br />
=== 2.10.3 (2015-02-24) ===<br />
* Database version '''242'''<br />
* <font style="color:green">Functionality</font>: add RLM (plugin) for Live365 streaming service (which is defunct as of Summer 2016)<br />
* <font style="color:green">Functionality</font>: add &ldquo;MrMaster&rdquo; and &ldquo;Spin Count&rdquo; reports<br />
* <font style="color:green">Functionality</font>: add support for audio switcher devices that use the &ldquo;Software Authority&rdquo; protocol<br />
* <font style="color:green">Functionality</font>: add ability to set segue markers in the CLI app ''rdmarkerset''<br />
* <font style="color:red">Bug fix</font>: fixed a bug that caused issues with Services containing a <Space> character in the service name<br />
<br />
=== 2.10.2 (2014-11-25) ===<br />
* Database version '''242'''<br />
* <font style="color:green">Functionality</font>: CLI ''rdimport'' enhancement: add two date-related options to the command<br />
* <font style="color:green">Functionality</font>: add column for ELR data in RDLogEdit<br />
* <font style="color:red">Bug fix</font>: fixed a bug in the Audio Science adapter for cards with only AES3 ports<br />
<br />
=== 2.10.1 (2014-11-04) ===<br />
* Database version '''242'''<br />
* <font style="color:green">Functionality</font>: add &ldquo;DSP utilization and profiling&rdquo; info for Audio Science adapters<br />
* <font style="color:green">Functionality</font>: add the column &ldquo;EXT DATA&rdquo; to the &ldquo;Edit Log&rdquo; screen in RDLogEdit<br />
* <font style="color:red">Bug fix</font>: fixed a memory fault (crash) in RDLogEdit when dropping a cart that was being used in a log</div>
DKlann
http://wiki.rivendellaudio.org/index.php?title=Jack&diff=598
Jack
2021-05-08T17:29:52Z
<p>DKlann: Note completion of auto channel count discovery in pmw-jack-setup.</p>
<hr />
<div>The [https://jackaudio.org/ Jack Audio Connection Kit] (JACK) is a suite of professional-grade, low-latency tools for routing digital audio.<br />
<br />
== Configure Rivendell 3 For Use With JACK ==<br />
<br />
=== Overview ===<br />
<br />
You have a several choices for getting audio out of a Rivendell system. Notably Rivendell supports [[ALSA]], the native Linux audio subsystem, and JACK, a layer above ALSA.<br />
<br />
JACK enables multiple audio applications to simultaneously access audio devices on Linux systems.<br />
<br />
In 2021, Rivendell processes and JACK processes must be run as the same user ID. And since Rivendell processes (in the packaged version available from [[Paravel Systems - USA|Paravel Systems]]) '''''always''''' run as ''root'', this means ''jackd''(8) (the JACK daemon) must also run as ''root''.<br />
<br />
=== Configuring Rivendell to use JACK ===<br />
<br />
So, you&rsquo;ve decided to use JACK for your Rivendell audio. First, make sure you tell Rivendell to '''not''' use any ALSA devices on your computer using the [[RDAlsaConfig]] Rivendell app. Run this app from the Rivendell menu and simply unhighlight all devices in the list, as shown here:<br />
<br />
[[Image:RDAlsaConfig-no-selections.png|center|400px|thumb|border|RDAlsaConfig Ready for JACK]]<br />
<br />
:(As an aside, when you use JACK for Rivendell&rsquo;s audio routing, you can also use any other [https://jackaudio.org/applications/ JACK-enabled audio app] alongside Rivendell.)<br />
<br />
:(Another aside: know that Rivendell works fine using both JACK clients and [http://www.audioscience.com/ Audio Science] adapters.)<br />
<br />
Set up JACK on a per-host basis by modifying the configuration in [[RDAdmin]]->[[RDAdmin#Manage_Hosts|Manage Hosts]]->''hostname''. In the host configuration window, touch the '''JACK Settings''' button to manage the Jack settings.<br />
<br />
Ensure that Rivendell starts the JACK app by checking the '''Start JACK Server''' checkbox. Unless you have a ''really'' good reason to change it (beyond the scope of this article), leave the '''JACK Server Name''' set to ''(default)'' as shown here: <br />
<br />
[[Image:Jack-clients-3.4.1.png|center|thumb|440px|border|Configured JACK Clients in Reivendell 3.4.1]]<br />
<br />
<div style="clear: both"></div><br />
<br />
It is easiest to set the '''JACK Command Line''' to the full path of a shell script so you can make changes to the way in which the JACK app is started.<br />
<br />
:'''Note''' that regardless of how you configure the '''JACK Command Line''' if you make ''<u>any</u>'' changes to the '''JACK Settings''' you ''<u>must</u>'' restart the Rivendell service, interrupting audio playout, in order for the changes to take effect. Plan your changes accordingly.<br />
<br />
Here is an example JACK startup script:<br />
<br />
<nowiki><br />
#!/bin/sh<br />
<br />
#######################################################################<br />
##<br />
## This script is started by Rivendell caed when the Rivendell daemons<br />
## are launched. The script assumes a "default" Rivendell installation<br />
## with the username 'rd' automatically logged in and running the<br />
## windowing system.<br />
##<br />
## Change the JACK sample rate to match your Rivendell sample rate<br />
## set in RDAdmin->System Settings.<br />
##<br />
#######################################################################<br />
<br />
export LANG=en_US.UTF-8<br />
export TERM=xterm<br />
export QTDIR=/usr/lib64/qt4<br />
export PATH=/sbin:/bin:/usr/bin:/usr/sbin:/usr/local/sbin:/usr/local/bin:/home/rd/bin<br />
export XDG_DATA_DIRS=/usr/local/share/:/usr/share/<br />
export XDG_RUNTIME_DIR=/run/user/1000<br />
export QT_GRAPHICSSYSTEM_CHECKED=1<br />
<br />
exec /usr/bin/jackd --name default -d dummy -r 48000 2>&1 > /var/tmp/jackd.log</nowiki><br />
<br />
Copy the above text and save it in a file named <tt>/usr/local/bin/jackd-start</tt>. Make the file executable with <tt>sudo chmod +x /usr/local/bin/jackd-start</tt>. Enter the full path of the shell script into the '''JACK Command Line''' text box.<br />
<br />
When using the above script, notice that we initialize JACK with a ''&ldquo;dummy&ldquo;'' device. We do this because the default device name is always ''&ldquo;system&rdquo;''. Not only is this a useless name, it is also something one cannot change without editing the JACK source code. In the above script, we assign the ''&ldquo;dummy&rdquo;'' device to the ''&ldquo;system&rdquo;'' JACK client in order to &ldquo;get it out of the way&rdquo;. We then use ''jack-plumbing'' or some other means to connect JACK client inputs and outputs.<br />
<br />
==== Adding JACK Clients ====<br />
<br />
After configuring Rivendell to start the JACK subsystem, you probably need to also start some JACK clients. Do this by adding each one in the '''JACK Clients to Start''' section (see the figure above for examples).<br />
<br />
You might consider using the ''[https://github.com/opensourceradio/ram/blob/master/usr/local/bin/pmw-jack-setup pmw-jack-setup]'' script (or something like it) to configure your ALSA sound devices to work with JACK. This script accepts two parameters: the name of the ALSA device to configure, and the &ldquo;human-readable&rdquo; name you want to give the JACK client. You can learn your ALSA device names by running the command <tt>sudo aplay -l</tt> (or <tt>su - root -c 'aplay -l'</tt>) in a terminal window. Running this command results in output like:<br />
<br />
<nowiki><br />
**** List of PLAYBACK Hardware Devices ****<br />
card 0: Intel [HDA Intel], device 0: CX20561 Analog [CX20561 Analog]<br />
Subdevices: 0/1<br />
Subdevice #0: subdevice #0<br />
card 0: Intel [HDA Intel], device 1: CX20561 Digital [CX20561 Digital]<br />
Subdevices: 1/1<br />
Subdevice #0: subdevice #0</nowiki><br />
<br />
In the above output, the device name for ''card 0'' is <tt>Intel</tt>. Many people prefer more appropriate names for their JACK devices. One common name for the built-in sound device (the &ldquo;sound card&rdquo; on the PC&lsquo;s motherboard) is ''&ldquo;Onboard&rdquo;''. Set up your first '''JACK Client''' in '''RDAdmin''' as follows:<br />
<br />
:* touch '''Add'''<br />
:* enter a meaningful description in the '''Description''' text box; experience (and observing the [https://github.com/ElvishArtisan/rivendell/blob/master/cae/cae_jack.cpp source code]) has shown that the JACK Clients are started in the alpha-numeric order of the '''Description''' label. Use this knowledge to guide your choices of descriptions<br />
:* enter the path and parameters to the setup script: <tt>/usr/local/bin/pmw-jack-setup Intel Onboard</tt> in the '''Command Line''' text box<br />
:* touch '''OK''' to save your settings<br />
<br />
Repeat the above steps for as many ALSA-compatible hardware audio devices as you want to use with Rivendell. Note that ''pmw-jack-setup'' merely configures your hardware audio devices for use with JACK. It does not connect them to Rivendell. Also note that using ''pmw-jack-setup'' requires that you also download and install the &ldquo;helper script&rdquo;, ''[https://github.com/opensourceradio/ram/blob/master/usr/local/bin//zsh-functions zsh-functions]'' in ''/usr/local/bin''. ''zsh-functions'' in turn may also require the installation of additional packages.<br />
<br />
The version of ''pmw-jack-setup'' on github attempt to discern the number of input and output channels for the ALSA device. You can override this with the <tt>--ci ''NUM-CHANNELS''</tt> (capture channels) and <tt>--co ''NUM-CHANNELS''</tt> (playback channels) options, where ''NUM-CHANNELS'' is the actual number of input and output channels you want to use.<br />
<br />
As with <tt>/usr/local/bin/jackd-start</tt>, be sure to set the permissions on ''pmw-jack-setup'' with <tt>sudo chmod +x /usr/local/bin/pmw-jack-setup</tt>.<br />
<br />
==== Connecting JACK Inputs and Outputs ====<br />
<br />
Once you have successfully configured Rivendell to launch JACK and configure your audio devices, you need to &ldquo;connect&rdquo; the devices to Rivendell. There are several ways to do this, including:<br />
<br />
:* run one or more Rivendell [http://opsguide.rivendellaudio.org/html/chapter.rml.html Macros] to make the connections (see [http://opsguide.rivendellaudio.org/html/sect.rml.commands.html#sect.rml.connect_jack_ports__jc_ JC])<br />
:* run a JACK plumbing service daemon such as ''jack-plumbing'' to automate the connections<br />
:* run the command line ''jack_connect'' application to make the connections<br />
:* use a graphical tool such as [https://qjackctl.sourceforge.io/ qjackctl] or [https://drobilla.net/software/patchage patchage] to make the connections<br />
<br />
The most reliable methods for making JACK connections are those that perform the work automatically and in the background. Unfortunately, CentOS does not package the ''jack-plumbing'' command, so one must either download the source code from the [[wikipedia:Debian_Linux|Debian]] website: [http://deb.debian.org/debian/pool/main/j/jack-tools/jack-tools_20131226.orig.tar.bz2 here] or [http://deb.debian.org/debian/pool/main/j/jack-tools/jack-tools_20131226-1.debian.tar.gz here] and compile it (the original source code for ''jack-plumbing'' seems to have been lost in the bit bucket), or choose a different &ldquo;plumbing&rdquo; tool to manage the JACK connections.<br />
<br />
Here is an example of a configuration file for ''jack-plumbing''. Note that the &ldquo;comment character&rdquo; is a semicolon (&ldquo;&#59;&rdquo;) rather than the more common hash symbol (&ldquo;&#35;&rdquo;). In general, the ''jack-plumbing'' '''''connect''''' statement format is <tt>(connect "source" "destination")</tt>. If you place this in ''/etc/jack-plumbing'' you can start the app with simply ''/bin/jack-plumbing'' (see the figure above):<br />
<br />
<nowiki><br />
; JACK port connection rules.<br />
; See man jack-plumbing for details.<br />
; dklann@broadcasttool.com, Fri Aug 14 09:20:55 PDT 2020<br />
<br />
; Connect the first Rivendell output port to the Onboard card.<br />
; See also pmw-jack-setup and the JACK client name for the<br />
; built-in audio device. Substitute your audio device for<br />
; "Onboard" as necessary...<br />
(connect "rivendell_0:playout_0L" "Onboard:playback_1")<br />
(connect "rivendell_0:playout_0R" "Onboard:playback_2")<br />
<br />
; Connect the first Rivendell input port to the Onboard card.<br />
(connect "Onboard:capture_1" "rivendell_0:record_0L")<br />
(connect "Onboard:capture_2" "rivendell_0:record_0R")<br />
<br />
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;<br />
; Audio processing with Calf plugins<br />
; Use this along with calfjackhost to connect some Calf audio<br />
; plugins for real-time audio processing.<br />
;<br />
; Rivendell Primary output to BassEnhancer<br />
;(connect "rivendell_0:playout_0L" "calf:bassenhancer_in_l")<br />
;(connect "rivendell_0:playout_0R" "calf:bassenhancer_in_r")<br />
; -or- Rivendell Primary output to MultibandCompressor input<br />
;(connect "rivendell_0:playout_0L" "calf:multibandcompressor_in_l")<br />
;(connect "rivendell_0:playout_0R" "calf:multibandcompressor_in_r")<br />
; MultibandCompressor output to Limiter input<br />
;(connect "calf:multibandcompressor_out_l" "calf:multibandlimiter_in_l")<br />
;(connect "calf:multibandcompressor_out_r" "calf:multibandlimiter_in_r")<br />
<br />
; BassEnhancer output to MultibandCompressor input<br />
;(connect "calf:bassenhancer_out_l" "calf:multibandcompressor_in_l")<br />
;(connect "calf:bassenhancer_out_r" "calf:multibandcompressor_in_r")<br />
<br />
; MultibandCompressor output to MultibandLimiter input<br />
;(connect "calf:multibandcompressor_out_l" "calf:multibandlimiter_in_l")<br />
;(connect "calf:multibandcompressor_out_r" "calf:multibandlimiter_in_r")<br />
<br />
; MultibandLimiter output to Onboard input<br />
;(connect "calf:multibandlimiter_out_l" "Onboard:playback_1")<br />
;(connect "calf:multibandlimiter_out_r" "Onboard:playback_2")<br />
<br />
; Limiter output to glasscoder input<br />
; This assumes you are running GlassCoder with the JACK<br />
; client name "glass".<br />
;(connect "calf:multibandlimiter_out_l" "glass:input_1")<br />
;(connect "calf:multibandlimiter_out_r" "glass:input_2")</nowiki><br />
<br />
=== Restart Rivendell Service ===<br />
<br />
After making changes to your JACK configuration in Rivendell you must restart the Rivendell service. Do this by either rebooting your Rivendell computer, or running the following command in a terminal window:<br />
<br />
<nowiki>sudo systemctl restart rivendell.service</nowiki><br />
<br />
== Future Work ==<br />
<br />
To do: make JACK work with [https://www.freedesktop.org/wiki/Software/PulseAudio/ PulseAudio].<br />
<br />
This is complete as of April, 2021: <del>To do: in ''pmw-jack-setup'': use data in ''/proc/asound'' to automatically discern the number of input and output channels for ALSA devices.</del><br />
<br />
In 2021 the [https://pipewire.org/ pipewire] audio subsystem is maturing and aims to be compatible with and to eventually replace both the PulseAudio and the JACK audio systems. Pipewire may include more &ldquo;plumbing&rdquo; tools over the long run.</div>
DKlann
http://wiki.rivendellaudio.org/index.php?title=Jack&diff=597
Jack
2021-05-08T17:26:20Z
<p>DKlann: Add mention of zsh-functions. Correct the description of specifying the number of input and output channels.</p>
<hr />
<div>The [https://jackaudio.org/ Jack Audio Connection Kit] (JACK) is a suite of professional-grade, low-latency tools for routing digital audio.<br />
<br />
== Configure Rivendell 3 For Use With JACK ==<br />
<br />
=== Overview ===<br />
<br />
You have a several choices for getting audio out of a Rivendell system. Notably Rivendell supports [[ALSA]], the native Linux audio subsystem, and JACK, a layer above ALSA.<br />
<br />
JACK enables multiple audio applications to simultaneously access audio devices on Linux systems.<br />
<br />
In 2021, Rivendell processes and JACK processes must be run as the same user ID. And since Rivendell processes (in the packaged version available from [[Paravel Systems - USA|Paravel Systems]]) '''''always''''' run as ''root'', this means ''jackd''(8) (the JACK daemon) must also run as ''root''.<br />
<br />
=== Configuring Rivendell to use JACK ===<br />
<br />
So, you&rsquo;ve decided to use JACK for your Rivendell audio. First, make sure you tell Rivendell to '''not''' use any ALSA devices on your computer using the [[RDAlsaConfig]] Rivendell app. Run this app from the Rivendell menu and simply unhighlight all devices in the list, as shown here:<br />
<br />
[[Image:RDAlsaConfig-no-selections.png|center|400px|thumb|border|RDAlsaConfig Ready for JACK]]<br />
<br />
:(As an aside, when you use JACK for Rivendell&rsquo;s audio routing, you can also use any other [https://jackaudio.org/applications/ JACK-enabled audio app] alongside Rivendell.)<br />
<br />
:(Another aside: know that Rivendell works fine using both JACK clients and [http://www.audioscience.com/ Audio Science] adapters.)<br />
<br />
Set up JACK on a per-host basis by modifying the configuration in [[RDAdmin]]->[[RDAdmin#Manage_Hosts|Manage Hosts]]->''hostname''. In the host configuration window, touch the '''JACK Settings''' button to manage the Jack settings.<br />
<br />
Ensure that Rivendell starts the JACK app by checking the '''Start JACK Server''' checkbox. Unless you have a ''really'' good reason to change it (beyond the scope of this article), leave the '''JACK Server Name''' set to ''(default)'' as shown here: <br />
<br />
[[Image:Jack-clients-3.4.1.png|center|thumb|440px|border|Configured JACK Clients in Reivendell 3.4.1]]<br />
<br />
<div style="clear: both"></div><br />
<br />
It is easiest to set the '''JACK Command Line''' to the full path of a shell script so you can make changes to the way in which the JACK app is started.<br />
<br />
:'''Note''' that regardless of how you configure the '''JACK Command Line''' if you make ''<u>any</u>'' changes to the '''JACK Settings''' you ''<u>must</u>'' restart the Rivendell service, interrupting audio playout, in order for the changes to take effect. Plan your changes accordingly.<br />
<br />
Here is an example JACK startup script:<br />
<br />
<nowiki><br />
#!/bin/sh<br />
<br />
#######################################################################<br />
##<br />
## This script is started by Rivendell caed when the Rivendell daemons<br />
## are launched. The script assumes a "default" Rivendell installation<br />
## with the username 'rd' automatically logged in and running the<br />
## windowing system.<br />
##<br />
## Change the JACK sample rate to match your Rivendell sample rate<br />
## set in RDAdmin->System Settings.<br />
##<br />
#######################################################################<br />
<br />
export LANG=en_US.UTF-8<br />
export TERM=xterm<br />
export QTDIR=/usr/lib64/qt4<br />
export PATH=/sbin:/bin:/usr/bin:/usr/sbin:/usr/local/sbin:/usr/local/bin:/home/rd/bin<br />
export XDG_DATA_DIRS=/usr/local/share/:/usr/share/<br />
export XDG_RUNTIME_DIR=/run/user/1000<br />
export QT_GRAPHICSSYSTEM_CHECKED=1<br />
<br />
exec /usr/bin/jackd --name default -d dummy -r 48000 2>&1 > /var/tmp/jackd.log</nowiki><br />
<br />
Copy the above text and save it in a file named <tt>/usr/local/bin/jackd-start</tt>. Make the file executable with <tt>sudo chmod +x /usr/local/bin/jackd-start</tt>. Enter the full path of the shell script into the '''JACK Command Line''' text box.<br />
<br />
When using the above script, notice that we initialize JACK with a ''&ldquo;dummy&ldquo;'' device. We do this because the default device name is always ''&ldquo;system&rdquo;''. Not only is this a useless name, it is also something one cannot change without editing the JACK source code. In the above script, we assign the ''&ldquo;dummy&rdquo;'' device to the ''&ldquo;system&rdquo;'' JACK client in order to &ldquo;get it out of the way&rdquo;. We then use ''jack-plumbing'' or some other means to connect JACK client inputs and outputs.<br />
<br />
==== Adding JACK Clients ====<br />
<br />
After configuring Rivendell to start the JACK subsystem, you probably need to also start some JACK clients. Do this by adding each one in the '''JACK Clients to Start''' section (see the figure above for examples).<br />
<br />
You might consider using the ''[https://github.com/opensourceradio/ram/blob/master/usr/local/bin/pmw-jack-setup pmw-jack-setup]'' script (or something like it) to configure your ALSA sound devices to work with JACK. This script accepts two parameters: the name of the ALSA device to configure, and the &ldquo;human-readable&rdquo; name you want to give the JACK client. You can learn your ALSA device names by running the command <tt>sudo aplay -l</tt> (or <tt>su - root -c 'aplay -l'</tt>) in a terminal window. Running this command results in output like:<br />
<br />
<nowiki><br />
**** List of PLAYBACK Hardware Devices ****<br />
card 0: Intel [HDA Intel], device 0: CX20561 Analog [CX20561 Analog]<br />
Subdevices: 0/1<br />
Subdevice #0: subdevice #0<br />
card 0: Intel [HDA Intel], device 1: CX20561 Digital [CX20561 Digital]<br />
Subdevices: 1/1<br />
Subdevice #0: subdevice #0</nowiki><br />
<br />
In the above output, the device name for ''card 0'' is <tt>Intel</tt>. Many people prefer more appropriate names for their JACK devices. One common name for the built-in sound device (the &ldquo;sound card&rdquo; on the PC&lsquo;s motherboard) is ''&ldquo;Onboard&rdquo;''. Set up your first '''JACK Client''' in '''RDAdmin''' as follows:<br />
<br />
:* touch '''Add'''<br />
:* enter a meaningful description in the '''Description''' text box; experience (and observing the [https://github.com/ElvishArtisan/rivendell/blob/master/cae/cae_jack.cpp source code]) has shown that the JACK Clients are started in the alpha-numeric order of the '''Description''' label. Use this knowledge to guide your choices of descriptions<br />
:* enter the path and parameters to the setup script: <tt>/usr/local/bin/pmw-jack-setup Intel Onboard</tt> in the '''Command Line''' text box<br />
:* touch '''OK''' to save your settings<br />
<br />
Repeat the above steps for as many ALSA-compatible hardware audio devices as you want to use with Rivendell. Note that ''pmw-jack-setup'' merely configures your hardware audio devices for use with JACK. It does not connect them to Rivendell. Also note that using ''pmw-jack-setup'' requires that you also download and install the &ldquo;helper script&rdquo;, ''[https://github.com/opensourceradio/ram/blob/master/usr/local/bin//zsh-functions zsh-functions]'' in ''/usr/local/bin''. ''zsh-functions'' in turn may also require the installation of additional packages.<br />
<br />
The version of ''pmw-jack-setup'' on github attempt to discern the number of input and output channels for the ALSA device. You can override this with the <tt>--ci ''NUM-CHANNELS''</tt> (capture channels) and <tt>--co ''NUM-CHANNELS''</tt> (playback channels) options, where ''NUM-CHANNELS'' is the actual number of input and output channels you want to use.<br />
<br />
As with <tt>/usr/local/bin/jackd-start</tt>, be sure to set the permissions on ''pmw-jack-setup'' with <tt>sudo chmod +x /usr/local/bin/pmw-jack-setup</tt>.<br />
<br />
==== Connecting JACK Inputs and Outputs ====<br />
<br />
Once you have successfully configured Rivendell to launch JACK and configure your audio devices, you need to &ldquo;connect&rdquo; the devices to Rivendell. There are several ways to do this, including:<br />
<br />
:* run one or more Rivendell [http://opsguide.rivendellaudio.org/html/chapter.rml.html Macros] to make the connections (see [http://opsguide.rivendellaudio.org/html/sect.rml.commands.html#sect.rml.connect_jack_ports__jc_ JC])<br />
:* run a JACK plumbing service daemon such as ''jack-plumbing'' to automate the connections<br />
:* run the command line ''jack_connect'' application to make the connections<br />
:* use a graphical tool such as [https://qjackctl.sourceforge.io/ qjackctl] or [https://drobilla.net/software/patchage patchage] to make the connections<br />
<br />
The most reliable methods for making JACK connections are those that perform the work automatically and in the background. Unfortunately, CentOS does not package the ''jack-plumbing'' command, so one must either download the source code from the [[wikipedia:Debian_Linux|Debian]] website: [http://deb.debian.org/debian/pool/main/j/jack-tools/jack-tools_20131226.orig.tar.bz2 here] or [http://deb.debian.org/debian/pool/main/j/jack-tools/jack-tools_20131226-1.debian.tar.gz here] and compile it (the original source code for ''jack-plumbing'' seems to have been lost in the bit bucket), or choose a different &ldquo;plumbing&rdquo; tool to manage the JACK connections.<br />
<br />
Here is an example of a configuration file for ''jack-plumbing''. Note that the &ldquo;comment character&rdquo; is a semicolon (&ldquo;&#59;&rdquo;) rather than the more common hash symbol (&ldquo;&#35;&rdquo;). In general, the ''jack-plumbing'' '''''connect''''' statement format is <tt>(connect "source" "destination")</tt>. If you place this in ''/etc/jack-plumbing'' you can start the app with simply ''/bin/jack-plumbing'' (see the figure above):<br />
<br />
<nowiki><br />
; JACK port connection rules.<br />
; See man jack-plumbing for details.<br />
; dklann@broadcasttool.com, Fri Aug 14 09:20:55 PDT 2020<br />
<br />
; Connect the first Rivendell output port to the Onboard card.<br />
; See also pmw-jack-setup and the JACK client name for the<br />
; built-in audio device. Substitute your audio device for<br />
; "Onboard" as necessary...<br />
(connect "rivendell_0:playout_0L" "Onboard:playback_1")<br />
(connect "rivendell_0:playout_0R" "Onboard:playback_2")<br />
<br />
; Connect the first Rivendell input port to the Onboard card.<br />
(connect "Onboard:capture_1" "rivendell_0:record_0L")<br />
(connect "Onboard:capture_2" "rivendell_0:record_0R")<br />
<br />
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;<br />
; Audio processing with Calf plugins<br />
; Use this along with calfjackhost to connect some Calf audio<br />
; plugins for real-time audio processing.<br />
;<br />
; Rivendell Primary output to BassEnhancer<br />
;(connect "rivendell_0:playout_0L" "calf:bassenhancer_in_l")<br />
;(connect "rivendell_0:playout_0R" "calf:bassenhancer_in_r")<br />
; -or- Rivendell Primary output to MultibandCompressor input<br />
;(connect "rivendell_0:playout_0L" "calf:multibandcompressor_in_l")<br />
;(connect "rivendell_0:playout_0R" "calf:multibandcompressor_in_r")<br />
; MultibandCompressor output to Limiter input<br />
;(connect "calf:multibandcompressor_out_l" "calf:multibandlimiter_in_l")<br />
;(connect "calf:multibandcompressor_out_r" "calf:multibandlimiter_in_r")<br />
<br />
; BassEnhancer output to MultibandCompressor input<br />
;(connect "calf:bassenhancer_out_l" "calf:multibandcompressor_in_l")<br />
;(connect "calf:bassenhancer_out_r" "calf:multibandcompressor_in_r")<br />
<br />
; MultibandCompressor output to MultibandLimiter input<br />
;(connect "calf:multibandcompressor_out_l" "calf:multibandlimiter_in_l")<br />
;(connect "calf:multibandcompressor_out_r" "calf:multibandlimiter_in_r")<br />
<br />
; MultibandLimiter output to Onboard input<br />
;(connect "calf:multibandlimiter_out_l" "Onboard:playback_1")<br />
;(connect "calf:multibandlimiter_out_r" "Onboard:playback_2")<br />
<br />
; Limiter output to glasscoder input<br />
; This assumes you are running GlassCoder with the JACK<br />
; client name "glass".<br />
;(connect "calf:multibandlimiter_out_l" "glass:input_1")<br />
;(connect "calf:multibandlimiter_out_r" "glass:input_2")</nowiki><br />
<br />
=== Restart Rivendell Service ===<br />
<br />
After making changes to your JACK configuration in Rivendell you must restart the Rivendell service. Do this by either rebooting your Rivendell computer, or running the following command in a terminal window:<br />
<br />
<nowiki>sudo systemctl restart rivendell.service</nowiki><br />
<br />
== Future Work ==<br />
<br />
To do: make JACK work with [https://www.freedesktop.org/wiki/Software/PulseAudio/ PulseAudio].<br />
<br />
To do: in ''pmw-jack-setup'': use data in ''/proc/asound'' to automatically discern the number of input and output channels for ALSA devices.<br />
<br />
In 2021 the [https://pipewire.org/ pipewire] audio subsystem is maturing and aims to be compatible with and to eventually replace both the PulseAudio and the JACK audio systems. Pipewire may include more &ldquo;plumbing&rdquo; tools over the long run.</div>
DKlann
http://wiki.rivendellaudio.org/index.php?title=WAVE_file_and_meta_data_info&diff=594
WAVE file and meta data info
2021-03-21T13:19:25Z
<p>DKlann: Remove stale links, add a few helpful links.</p>
<hr />
<div>These are some links to information on the format of WAVE files including various types of "chunks" that can be part of a WAVE file. Of particular interest to broadcasters are the BEXT and CART chunks that store broadcast related meta data.<br />
<br />
* visual [http://soundfile.sapp.org/doc/WaveFormat/ description] of WAVE file format<br />
<br />
* brief [http://www.lightlink.com/tjweber/StripWav/WAVE.html WAVE file overview]<br />
<br />
* informal [http://www.cartchunk.org/cc_spec.htm CART chunk technical summary]<br />
<br />
* example [https://www.dlineradio.co.uk/articles/reading-cart-chunk-with-powershell/ reader implementation] in [https://docs.microsoft.com/en-us/powershell/scripting/install/installing-powershell-core-on-linux?view=powershell-7.1 PowerShell]<br />
<br />
* audio [https://www.getid3.org/ file analyzer] in PHP (useful for browsing WAVE Files with CART Chunk "bext" details)<br />
<br />
All links were valid as of 2021-03-21.</div>
DKlann
http://wiki.rivendellaudio.org/index.php?title=Jack&diff=592
Jack
2021-03-17T16:46:28Z
<p>DKlann: Note the number of channels and how to change it for pmw-jack-setup. Other minor tweaks.</p>
<hr />
<div>The [https://jackaudio.org/ Jack Audio Connection Kit] (JACK) is a suite of professional-grade, low-latency tools for routing digital audio.<br />
<br />
== Configure Rivendell 3 For Use With JACK ==<br />
<br />
=== Overview ===<br />
<br />
You have a several choices for getting audio out of a Rivendell system. Notably Rivendell supports [[ALSA]], the native Linux audio subsystem, and JACK, a layer above ALSA.<br />
<br />
JACK enables multiple audio applications to simultaneously access audio devices on Linux systems.<br />
<br />
In 2021, Rivendell processes and JACK processes must be run as the same user ID. And since Rivendell processes (in the packaged version available from [[Paravel Systems - USA|Paravel Systems]]) '''''always''''' run as ''root'', this means ''jackd''(8) (the JACK daemon) must also run as ''root''.<br />
<br />
=== Configuring Rivendell to use JACK ===<br />
<br />
So, you&rsquo;ve decided to use JACK for your Rivendell audio. First, make sure you tell Rivendell to '''not''' use any ALSA devices on your computer using the [[RDAlsaConfig]] Rivendell app. Run this app from the Rivendell menu and simply unhighlight all devices in the list, as shown here:<br />
<br />
[[Image:RDAlsaConfig-no-selections.png|center|400px|thumb|border|RDAlsaConfig Ready for JACK]]<br />
<br />
:(As an aside, when you use JACK for Rivendell&rsquo;s audio routing, you can also use any other [https://jackaudio.org/applications/ JACK-enabled audio app] alongside Rivendell.)<br />
<br />
:(Another aside: know that Rivendell works fine using both JACK clients and [http://www.audioscience.com/ Audio Science] adapters.)<br />
<br />
Set up JACK on a per-host basis by modifying the configuration in [[RDAdmin]]->[[RDAdmin#Manage_Hosts|Manage Hosts]]->''hostname''. In the host configuration window, touch the '''JACK Settings''' button to manage the Jack settings.<br />
<br />
Ensure that Rivendell starts the JACK app by checking the '''Start JACK Server''' checkbox. Unless you have a ''really'' good reason to change it (beyond the scope of this article), leave the '''JACK Server Name''' set to ''(default)'' as shown here: <br />
<br />
[[Image:Jack-clients-3.4.1.png|center|thumb|440px|border|Configured JACK Clients in Reivendell 3.4.1]]<br />
<br />
<div style="clear: both"></div><br />
<br />
It is easiest to set the '''JACK Command Line''' to the full path of a shell script so you can make changes to the way in which the JACK app is started.<br />
<br />
:'''Note''' that regardless of how you configure the '''JACK Command Line''' if you make ''<u>any</u>'' changes to the '''JACK Settings''' you ''<u>must</u>'' restart the Rivendell service, interrupting audio playout, in order for the changes to take effect. Plan your changes accordingly.<br />
<br />
Here is an example JACK startup script:<br />
<br />
<nowiki><br />
#!/bin/sh<br />
<br />
#######################################################################<br />
##<br />
## This script is started by Rivendell caed when the Rivendell daemons<br />
## are launched. The script assumes a "default" Rivendell installation<br />
## with the username 'rd' automatically logged in and running the<br />
## windowing system.<br />
##<br />
## Change the JACK sample rate to match your Rivendell sample rate<br />
## set in RDAdmin->System Settings.<br />
##<br />
#######################################################################<br />
<br />
export LANG=en_US.UTF-8<br />
export TERM=xterm<br />
export QTDIR=/usr/lib64/qt4<br />
export PATH=/sbin:/bin:/usr/bin:/usr/sbin:/usr/local/sbin:/usr/local/bin:/home/rd/bin<br />
export XDG_DATA_DIRS=/usr/local/share/:/usr/share/<br />
export XDG_RUNTIME_DIR=/run/user/1000<br />
export QT_GRAPHICSSYSTEM_CHECKED=1<br />
<br />
exec /usr/bin/jackd --name default -d dummy -r 48000 2>&1 > /var/tmp/jackd.log</nowiki><br />
<br />
Copy the above text and save it in a file named <tt>/usr/local/bin/jackd-start</tt>. Make the file executable with <tt>sudo chmod +x /usr/local/bin/jackd-start</tt>. Enter the full path of the shell script into the '''JACK Command Line''' text box.<br />
<br />
When using the above script, notice that we initialize JACK with a ''&ldquo;dummy&ldquo;'' device. We do this because the default device name is always ''&ldquo;system&rdquo;''. Not only is this a useless name, it is also something one cannot change without editing the JACK source code. In the above script, we assign the ''&ldquo;dummy&rdquo;'' device to the ''&ldquo;system&rdquo;'' JACK client in order to &ldquo;get it out of the way&rdquo;. We then use ''jack-plumbing'' or some other means to connect JACK client inputs and outputs.<br />
<br />
==== Adding JACK Clients ====<br />
<br />
After configuring Rivendell to start the JACK subsystem, you probably need to also start some JACK clients. Do this by adding each one in the '''JACK Clients to Start''' section (see the figure above for examples).<br />
<br />
You may want to use the ''[https://github.com/opensourceradio/ram/blob/master/usr/local/bin/pmw-jack-setup pmw-jack-setup]'' script (or something like it) to configure your ALSA sound devices to work with JACK. This script accepts two parameters: the name of the ALSA device to configure, and the &ldquo;human-readable&rdquo; name you want to give the JACK client. You can learn your ALSA device names by running the command <tt>sudo aplay -l</tt> (or <tt>su - root -c 'aplay -l'</tt>) in a terminal window. Running this command results in output like:<br />
<br />
<nowiki><br />
**** List of PLAYBACK Hardware Devices ****<br />
card 0: Intel [HDA Intel], device 0: CX20561 Analog [CX20561 Analog]<br />
Subdevices: 0/1<br />
Subdevice #0: subdevice #0<br />
card 0: Intel [HDA Intel], device 1: CX20561 Digital [CX20561 Digital]<br />
Subdevices: 1/1<br />
Subdevice #0: subdevice #0</nowiki><br />
<br />
In the above output, the device name for ''card 0'' is <tt>Intel</tt>. Many people prefer more appropriate names for their JACK devices. One common name for the built-in sound device (the &ldquo;sound card&rdquo; on the PC&lsquo;s motherboard) is ''&ldquo;Onboard&rdquo;''. Set up your first '''JACK Client''' in '''RDAdmin''' as follows:<br />
<br />
:* touch '''Add'''<br />
:* enter a meaningful description in the '''Description''' text box; experience (and observing the [https://github.com/ElvishArtisan/rivendell/blob/master/cae/cae_jack.cpp source code]) has shown that the JACK Clients are started in the alpha-numeric order of the '''Description''' label. Use this knowledge to guide your choices of descriptions<br />
:* enter the path and parameters to the setup script: <tt>/usr/local/bin/pmw-jack-setup Intel Onboard</tt> in the '''Command Line''' text box<br />
:* touch '''OK''' to save your settings<br />
<br />
Repeat the above steps for as many ALSA-compatible hardware audio devices as you want to use with Rivendell. Note that ''pmw-jack-setup'' merely configures your hardware audio devices for use with JACK. It does not connect them to Rivendell.<br />
<br />
The version of ''pmw-jack-setup'' on github expects only two input channels and two output channels (typically used for the left and right stereo channels). You need to tell ''pmw-jack-setup'' if your device(s) has more input or output channels. Do this by adding and specifying the number of input channels with <tt>-i ''NUM-CHANNELS''</tt>, and output channels with <tt>-o ''NUM-CHANNELS''</tt> on the <tt>${JACK_LOAD}</tt> line in ''pmw-jack-setup'' (where ''NUM-CHANNELS'' is the actual number of input and output channels on your device.<br />
<br />
As with <tt>/usr/local/bin/jackd-start</tt>, be sure to set the permissions on ''pmw-jack-setup'' with <tt>sudo chmod +x /usr/local/bin/pmw-jack-setup</tt>.<br />
<br />
==== Connecting JACK Inputs and Outputs ====<br />
<br />
Once you have successfully configured Rivendell to launch JACK and configure your audio devices, you need to &ldquo;connect&rdquo; the devices to Rivendell. There are several ways to do this, including:<br />
<br />
:* run one or more Rivendell [http://opsguide.rivendellaudio.org/html/chapter.rml.html Macros] to make the connections (see [http://opsguide.rivendellaudio.org/html/sect.rml.commands.html#sect.rml.connect_jack_ports__jc_ JC])<br />
:* run a JACK plumbing service daemon such as ''jack-plumbing'' to automate the connections<br />
:* run the command line ''jack_connect'' application to make the connections<br />
:* use a graphical tool such as [https://qjackctl.sourceforge.io/ qjackctl] or [https://drobilla.net/software/patchage patchage] to make the connections<br />
<br />
The most reliable methods for making JACK connections are those that perform the work automatically and in the background. Unfortunately, CentOS does not package the ''jack-plumbing'' command, so one must either download the source code from the [[wikipedia:Debian_Linux|Debian]] website: [http://deb.debian.org/debian/pool/main/j/jack-tools/jack-tools_20131226.orig.tar.bz2 here] or [http://deb.debian.org/debian/pool/main/j/jack-tools/jack-tools_20131226-1.debian.tar.gz here] and compile it (the original source code for ''jack-plumbing'' seems to have been lost in the bit bucket), or choose a different &ldquo;plumbing&rdquo; tool to manage the JACK connections.<br />
<br />
Here is an example of a configuration file for ''jack-plumbing''. Note that the &ldquo;comment character&rdquo; is a semicolon (&ldquo;&#59;&rdquo;) rather than the more common hash symbol (&ldquo;&#35;&rdquo;). In general, the ''jack-plumbing'' '''''connect''''' statement format is <tt>(connect "source" "destination")</tt>. If you place this in ''/etc/jack-plumbing'' you can start the app with simply ''/bin/jack-plumbing'' (see the figure above):<br />
<br />
<nowiki><br />
; JACK port connection rules.<br />
; See man jack-plumbing for details.<br />
; dklann@broadcasttool.com, Fri Aug 14 09:20:55 PDT 2020<br />
<br />
; Connect the first Rivendell output port to the Onboard card.<br />
; See also pmw-jack-setup and the JACK client name for the<br />
; built-in audio device. Substitute your audio device for<br />
; "Onboard" as necessary...<br />
(connect "rivendell_0:playout_0L" "Onboard:playback_1")<br />
(connect "rivendell_0:playout_0R" "Onboard:playback_2")<br />
<br />
; Connect the first Rivendell input port to the Onboard card.<br />
(connect "Onboard:capture_1" "rivendell_0:record_0L")<br />
(connect "Onboard:capture_2" "rivendell_0:record_0R")<br />
<br />
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;<br />
; Audio processing with Calf plugins<br />
; Use this along with calfjackhost to connect some Calf audio<br />
; plugins for real-time audio processing.<br />
;<br />
; Rivendell Primary output to BassEnhancer<br />
;(connect "rivendell_0:playout_0L" "calf:bassenhancer_in_l")<br />
;(connect "rivendell_0:playout_0R" "calf:bassenhancer_in_r")<br />
; -or- Rivendell Primary output to MultibandCompressor input<br />
;(connect "rivendell_0:playout_0L" "calf:multibandcompressor_in_l")<br />
;(connect "rivendell_0:playout_0R" "calf:multibandcompressor_in_r")<br />
; MultibandCompressor output to Limiter input<br />
;(connect "calf:multibandcompressor_out_l" "calf:multibandlimiter_in_l")<br />
;(connect "calf:multibandcompressor_out_r" "calf:multibandlimiter_in_r")<br />
<br />
; BassEnhancer output to MultibandCompressor input<br />
;(connect "calf:bassenhancer_out_l" "calf:multibandcompressor_in_l")<br />
;(connect "calf:bassenhancer_out_r" "calf:multibandcompressor_in_r")<br />
<br />
; MultibandCompressor output to MultibandLimiter input<br />
;(connect "calf:multibandcompressor_out_l" "calf:multibandlimiter_in_l")<br />
;(connect "calf:multibandcompressor_out_r" "calf:multibandlimiter_in_r")<br />
<br />
; MultibandLimiter output to Onboard input<br />
;(connect "calf:multibandlimiter_out_l" "Onboard:playback_1")<br />
;(connect "calf:multibandlimiter_out_r" "Onboard:playback_2")<br />
<br />
; Limiter output to glasscoder input<br />
; This assumes you are running GlassCoder with the JACK<br />
; client name "glass".<br />
;(connect "calf:multibandlimiter_out_l" "glass:input_1")<br />
;(connect "calf:multibandlimiter_out_r" "glass:input_2")</nowiki><br />
<br />
=== Restart Rivendell Service ===<br />
<br />
After making changes to your JACK configuration in Rivendell you must restart the Rivendell service. Do this by either rebooting your Rivendell computer, or running the following command in a terminal window:<br />
<br />
<nowiki>sudo systemctl restart rivendell.service</nowiki><br />
<br />
== Future Work ==<br />
<br />
To do: make JACK work with [https://www.freedesktop.org/wiki/Software/PulseAudio/ PulseAudio].<br />
<br />
To do: in ''pmw-jack-setup'': use data in ''/proc/asound'' to automatically discern the number of input and output channels for ALSA devices.<br />
<br />
In 2021 the [https://pipewire.org/ pipewire] audio subsystem is maturing and aims to be compatible with and to eventually replace both the PulseAudio and the JACK audio systems. Pipewire may include more &ldquo;plumbing&rdquo; tools over the long run.</div>
DKlann
http://wiki.rivendellaudio.org/index.php?title=Jack&diff=591
Jack
2021-03-14T03:09:20Z
<p>DKlann: Wordsmithing, fill in some missing details.</p>
<hr />
<div>The [https://jackaudio.org/ Jack Audio Connection Kit] (JACK) is a suite of professional-grade, low-latency tools for routing digital audio.<br />
<br />
== Configure Rivendell 3 For Use With JACK ==<br />
<br />
=== Overview ===<br />
<br />
You have a several choices for getting audio out of a Rivendell system. Notably Rivendell supports [[ALSA]], the native Linux audio subsystem, and JACK, a layer above ALSA.<br />
<br />
JACK enables multiple audio applications to simultaneously access audio devices on Linux systems.<br />
<br />
In 2021, Rivendell processes and JACK processes must be run as the same user ID. And since Rivendell processes (in the packaged version available from [[Paravel Systems - USA|Paravel Systems]]) '''''always''''' run as ''root'', this means ''jackd''(8) (the JACK daemon) must also run as ''root''.<br />
<br />
=== Configuring Rivendell to use JACK ===<br />
<br />
So, you&rsquo;ve decided to use JACK for your Rivendell audio. First, make sure you tell Rivendell to '''not''' use any ALSA devices on your computer using the [[RDAlsaConfig]] Rivendell app. Run this app from the Rivendell menu and simply unhighlight all devices in the list, as shown here:<br />
<br />
[[Image:RDAlsaConfig-no-selections.png|center|400px|thumb|border|RDAlsaConfig Ready for JACK]]<br />
<br />
:(As an aside, when you use JACK for Rivendell&rsquo;s audio routing, you can also use any other [https://jackaudio.org/applications/ JACK-enabled audio app] alongside Rivendell.)<br />
<br />
:(Another aside: know that Rivendell works fine using both JACK clients and [http://www.audioscience.com/ Audio Science] adapters.)<br />
<br />
Set up JACK on a per-host basis by modifying the configuration in [[RDAdmin]]->[[RDAdmin#Manage_Hosts|Manage Hosts]]->''hostname''. In the host configuration window, touch the '''JACK Settings''' button to manage the Jack settings.<br />
<br />
Ensure that Rivendell starts the JACK app by checking the '''Start JACK Server''' checkbox. Unless you have a ''really'' good reason to change it (beyond the scope of this article), leave the '''JACK Server Name''' set to ''(default)'' as shown here: <br />
<br />
[[Image:Jack-clients-3.4.1.png|center|thumb|440px|border|Configured JACK Clients in Reivendell 3.4.1]]<br />
<br />
<div style="clear: both"></div><br />
<br />
It is easiest to set the '''JACK Command Line''' to the full path of a shell script so you can make changes to the way in which the JACK app is started.<br />
<br />
:'''Note''' that regardless of how you configure the '''JACK Command Line''' if you make ''<u>any</u>'' changes to the '''JACK Settings''' you ''<u>must</u>'' restart the Rivendell service, interrupting audio playout, in order for the changes to take effect. Plan your changes accordingly.<br />
<br />
Here is an example JACK startup script:<br />
<br />
<nowiki><br />
#!/bin/sh<br />
<br />
#######################################################################<br />
##<br />
## This script is started by Rivendell caed when the Rivendell daemons<br />
## are launched. The script assumes a "default" Rivendell installation<br />
## with the username 'rd' automatically logged in and running the<br />
## windowing system.<br />
##<br />
## Change the JACK sample rate to match your Rivendell sample rate<br />
## set in RDAdmin->System Settings.<br />
##<br />
#######################################################################<br />
<br />
export LANG=en_US.UTF-8<br />
export TERM=xterm<br />
export QTDIR=/usr/lib64/qt4<br />
export PATH=/sbin:/bin:/usr/bin:/usr/sbin:/usr/local/sbin:/usr/local/bin:/home/rd/bin<br />
export XDG_DATA_DIRS=/usr/local/share/:/usr/share/<br />
export XDG_RUNTIME_DIR=/run/user/1000<br />
export QT_GRAPHICSSYSTEM_CHECKED=1<br />
<br />
exec /usr/bin/jackd --name default -d dummy -r 48000 2>&1 > /var/tmp/jackd.log<br />
</nowiki><br />
<br />
Copy the above text and save it in a file named <tt>/usr/local/bin/jackd-start</tt>. Make the file executable with <tt>sudo chmod +x /usr/local/bin/jackd-start</tt>. Enter the full path of the shell script into the '''JACK Command Line''' text box.<br />
<br />
When using the above script, notice that we initialize JACK with a ''&ldquo;dummy&ldquo;'' device. We do this because the default device name is always ''&ldquo;system&rdquo;''. Not only is this a useless name, it is also something one cannot change without editing the JACK source code. In the above script, we assign the ''&ldquo;dummy&rdquo;'' device to the ''&ldquo;system&rdquo;'' JACK client in order to &ldquo;get it out of the way&rdquo;. We then use ''jack-plumbing'' or some other means to connect JACK client inputs and outputs.<br />
<br />
==== Adding JACK Clients ====<br />
<br />
After configuring Rivendell to start the JACK subsystem, you probably need to also start some JACK clients. Do this by adding each one in the '''JACK Clients to Start''' section (see the figure above for examples).<br />
<br />
You may want to use the ''[https://github.com/opensourceradio/ram/blob/master/usr/local/bin/pmw-jack-setup pmw-jack-setup]'' script (or something like it) to configure your ALSA sound devices to work with JACK. This script accepts two parameters: the name of the ALSA device to configure, and the &ldquo;human-readable&rdquo; name you want to give the JACK client. You can learn your ALSA device names by running the command <tt>sudo aplay -l</tt> (or <tt>su - root -c 'aplay -l'</tt>) in a terminal window. Running this command results in output like:<br />
<br />
<nowiki><br />
**** List of PLAYBACK Hardware Devices ****<br />
card 0: Intel [HDA Intel], device 0: CX20561 Analog [CX20561 Analog]<br />
Subdevices: 0/1<br />
Subdevice #0: subdevice #0<br />
card 0: Intel [HDA Intel], device 1: CX20561 Digital [CX20561 Digital]<br />
Subdevices: 1/1<br />
Subdevice #0: subdevice #0<br />
</nowiki><br />
<br />
In the above output, the device name for ''card 0'' is <tt>Intel</tt>. Many people prefer more appropriate names for their JACK devices. One common name for the built-in sound device (the &ldquo;sound card&rdquo; on the PC&lsquo;s motherboard) is ''&ldquo;Onboard&rdquo;''. Set up your first '''JACK Client''' in '''RDAdmin''' as follows:<br />
<br />
:* touch '''Add'''<br />
:* enter a meaningful description in the '''Description''' text box; experience (and observing the [https://github.com/ElvishArtisan/rivendell/blob/master/cae/cae_jack.cpp source code]) has shown that the JACK Clients are started in the alpha-numeric order of the '''Description''' label. Use this knowledge to guide your choices of descriptions<br />
:* enter the path and parameters to the setup script: <tt>/usr/local/bin/pmw-jack-setup Intel Onboard</tt> in the '''Command Line''' text box<br />
:* touch '''OK''' to save your settings<br />
<br />
Repeat the above steps for as many ALSA-compatible hardware audio devices as you want to use with Rivendell. Note that ''pmw-jack-setup'' merely configures your hardware audio devices for use with JACK. It does not connect them to Rivendell.<br />
<br />
As with <tt>/usr/local/bin/jackd-start</tt>, be sure to set the permissions on ''pmw-jack-setup'' with <tt>sudo chmod +x /usr/local/bin/pmw-jack-setup</tt>.<br />
<br />
==== Connecting JACK Inputs and Outputs ====<br />
<br />
Once you have successfully configured Rivendell to launch JACK and configure your audio devices, you need to &ldquo;connect&rdquo; the devices to Rivendell. There are several ways to do this, including:<br />
<br />
:* run one or more Rivendell [http://opsguide.rivendellaudio.org/html/chapter.rml.html Macros] to make the connections (see [http://opsguide.rivendellaudio.org/html/sect.rml.commands.html#sect.rml.connect_jack_ports__jc_ JC])<br />
:* run a JACK plumbing service daemon such as ''jack-plumbing'' to automate the connections<br />
:* run the command line ''jack_connect'' application to make the connections<br />
:* use a graphical tool such as [https://qjackctl.sourceforge.io/ qjackctl] or [https://drobilla.net/software/patchage patchage] to make the connections<br />
<br />
The most reliable methods for making JACK connections are those that perform the work automatically and in the background. Unfortunately, CentOS does not package the ''jack-plumbing'' command, so one must either download the source code from the [[wikipedia:Debian_Linux|Debian]] website: [http://deb.debian.org/debian/pool/main/j/jack-tools/jack-tools_20131226.orig.tar.bz2 here] or [http://deb.debian.org/debian/pool/main/j/jack-tools/jack-tools_20131226-1.debian.tar.gz here] and compile it (the original source code for ''jack-plumbing'' seems to have been lost in the bit bucket), or choose a different &ldquo;plumbing&rdquo; tool to manage the JACK connections.<br />
<br />
Here is an example of a configuration file for ''jack-plumbing''. Note that the &ldquo;comment character&rdquo; is a semicolon (&ldquo;&#59;&rdquo;) rather than the more common hash symbol (&ldquo;&#35;&rdquo;). In general, the ''jack-plumbing'' '''''connect''''' statement format is <tt>(connect "source" "destination")</tt>. If you place this in ''/etc/jack-plumbing'' you can start the app with simply ''/bin/jack-plumbing'' (see the figure above):<br />
<br />
<nowiki><br />
; JACK port connection rules.<br />
; See man jack-plumbing for details.<br />
; dklann@broadcasttool.com, Fri Aug 14 09:20:55 PDT 2020<br />
<br />
; Connect the first Rivendell output port to the Onboard card.<br />
; See also pmw-jack-setup and the JACK client name for the<br />
; built-in audio device. Substitute your audio device for<br />
; "Onboard" as necessary...<br />
(connect "rivendell_0:playout_0L" "Onboard:playback_1")<br />
(connect "rivendell_0:playout_0R" "Onboard:playback_2")<br />
<br />
; Connect the first Rivendell input port to the Onboard card.<br />
(connect "Onboard:capture_1" "rivendell_0:record_0L")<br />
(connect "Onboard:capture_2" "rivendell_0:record_0R")<br />
<br />
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;<br />
; Audio processing with Calf plugins<br />
; Use this along with calfjackhost to connect some Calf audio<br />
; plugins for real-time audio processing.<br />
;<br />
; Rivendell Primary output to BassEnhancer<br />
;(connect "rivendell_0:playout_0L" "calf:bassenhancer_in_l")<br />
;(connect "rivendell_0:playout_0R" "calf:bassenhancer_in_r")<br />
; -or- Rivendell Primary output to MultibandCompressor input<br />
;(connect "rivendell_0:playout_0L" "calf:multibandcompressor_in_l")<br />
;(connect "rivendell_0:playout_0R" "calf:multibandcompressor_in_r")<br />
; MultibandCompressor output to Limiter input<br />
;(connect "calf:multibandcompressor_out_l" "calf:multibandlimiter_in_l")<br />
;(connect "calf:multibandcompressor_out_r" "calf:multibandlimiter_in_r")<br />
<br />
; BassEnhancer output to MultibandCompressor input<br />
;(connect "calf:bassenhancer_out_l" "calf:multibandcompressor_in_l")<br />
;(connect "calf:bassenhancer_out_r" "calf:multibandcompressor_in_r")<br />
<br />
; MultibandCompressor output to MultibandLimiter input<br />
;(connect "calf:multibandcompressor_out_l" "calf:multibandlimiter_in_l")<br />
;(connect "calf:multibandcompressor_out_r" "calf:multibandlimiter_in_r")<br />
<br />
; MultibandLimiter output to Onboard input<br />
;(connect "calf:multibandlimiter_out_l" "Onboard:playback_1")<br />
;(connect "calf:multibandlimiter_out_r" "Onboard:playback_2")<br />
<br />
; Limiter output to glasscoder input<br />
; This assumes you are running GlassCoder with the JACK<br />
; client name "glass".<br />
;(connect "calf:multibandlimiter_out_l" "glass:input_1")<br />
;(connect "calf:multibandlimiter_out_r" "glass:input_2")<br />
<br />
</nowiki><br />
<br />
=== Restart Rivendell Service ===<br />
<br />
After making changes to your JACK configuration in Rivendell you must restart the Rivendell service. Do this by either rebooting your Rivendell computer, or running the following command in a terminal window:<br />
<br />
<nowiki><br />
sudo systemctl restart rivendell.service<br />
</nowiki><br />
<br />
== Future Work ==<br />
<br />
To do: make JACK work with [https://www.freedesktop.org/wiki/Software/PulseAudio/ PulseAudio].<br />
<br />
In mid 2020 the [https://pipewire.org/ pipewire] audio subsystem is maturing and aims to be compatible with and to eventually replace both the PulseAudio and the JACK audio systems. Pipewire may include more &ldquo;plumbing&rdquo; tools over the long run.</div>
DKlann
http://wiki.rivendellaudio.org/index.php?title=Stations_using_Rivendell&diff=587
Stations using Rivendell
2021-01-02T15:06:31Z
<p>DKlann: /* North America */ Add Rolling Valley Radio</p>
<hr />
<div>Here is a list of Radio stations that are using Rivendell. Many of the stations below are owned by [http://www.salem.cc Salem Communications], the parent of [http://www.salemradiolabs.com Salem Radio Laboratories], the initial developers of [http://www.salemradiolabs.com/rivendell/ Rivendell].<br />
<br />
<br />
<br />
===AM Stations===<br />
====North America====<br />
*[[http://www.1010kbw.com KBBW-AM]] - 1010 KBW is a Christian teaching and talk station in Waco, Texas<br />
*[[http://www.kgnw.com KGNW-AM]] - KGNW AM 820 is a Christian teaching and talk station in Seattle-Tacoma, Washington<br />
*[[http://www.1590klfe.com KLFE-AM]] - 1590 KLFE is a Christian teaching and talk station in Seattle-Tacoma, Washington<br />
*[[http://www.1300kol.com KKOL-AM]] - News-Talk 1300 KOL is a news and talk station in Seattle-Tacoma, Washington<br />
*[[http://www.radiosol1360.com KKMO-AM]] - RADIO SOL 1360 AM is a spanish station in Seattle-Tacoma, Washington<br />
*[[http://www.salem.cc KTFH-AM]] - 1680 KTFH "The Bridge" is an international station in Seattle-Tacoma, Washington<br />
*[[http://www.1360wkat.com WKAT-AM]] - News-Talk 1360 WKAT is a news and talk station in Miami-Ft. Lauderdale-Hollywood, Florida<br />
*[[http://www.wlssradio.com WLSS-AM]] - News-Talk 930 WLSS is a news and talk station in Sarasota-Bradenton, Florida<br />
*[[http://www.860wgul.com WGUL-AM]] - News-Talk 860 WGUL is a news and talk station in Tampa-St. Petersburg-Clearwater, Florida<br />
*[[http://www.bayword.com WTBN-AM]] - WTBN 570 AM is a Christian teaching and talk station in Tampa-St. Petersburg-Clearwater, Florida<br />
*[[http://www.bayword.com WTWD-AM]] - WTWD 910 AM is a Christian teaching and talk station in Tampa-St. Petersburg-Clearwater, Florida<br />
*[[http://www.wdtkam.com WDTK-AM]] - WDTK 1400 AM is a News Talk station in Detroit, Michigan<br />
*[[http://www.am1500wlqv.com WLQV-AM]] - WLQV 1500 AM is a Christian teaching and talk station in Detroit, Michigan<br />
*[[http://www.krpiradio.com KRPI-AM]] - KRPI 1550 AM is an East Indian music and talk station in Ferndale, Washington<br />
*[[http://www.am1330kvol.com KVOL-AM]] - KVOL 1330 AM is a news talk station in Lafayette, Louisiana<br />
*[[http://www.fsr1520 KFXZ-AM]] - KFXZ 1520 AM is a Fox Sports Radio affiliate station in Lafayette, Louisiana<br />
*[[http://wutt.ut.edu WUTT]] - WUTT 1080 AM is the student radio station at the University of Tampa in Tampa, Florida.<br />
*[[http://classical959.com WCRI]] - WCRI 1180 AM is a classical music station in Hope Valley, Rhode Island.<br />
*[[http://www.wsjcradio.com WSJC]] - WSJC 810 AM is a Christian teaching and talk station in Magee, Mississippi.<br />
*[[http://www.wtcgradio.com WTCG]] - WTCG 870 AM is a Christian teaching and talk station in Mt Holly, North Carolina.<br />
*[[http://wxva.com WXVA]] - WXVA 610 AM is a full service greatest hits of all time station in Winchester, VA.<br />
*Rolling Valley Radio - 1700 AM is a US [[wikipedia:Title 47 CFR Part 15|FCC]] &ldquo;[https://www.hobbybroadcaster.net/resources/FCC-Part-15-regulations.php Part 15]&rdquo; low-power hobby broadcaster in Springfield, VA (suburban Washington DC).<br />
<br />
====Pacifica====<br />
*[[http://www.oar.org.nz Otago Access Radio]] - 105.4 / 1575 AM is a Community Access Radio Station in Dunedin, New Zealand.<br />
*Big Valley Radio 107.4 Thames Whangamata Whitianga on the Coromandel Peninsula, New Zealand<br />
<br />
====Europe====<br />
*[[http://www.insanityradio.com Insanity Radio]] - 1287AM, a student radio station in Egham, UK, at Royal Holloway, University of London (only for sustainer at present)<br />
<br />
===FM Stations===<br />
====Asia====<br />
*[[http://www.bigsound.com BIG Sound FM]] - Vanguard Radio Network's 101.5 BIG Sound FM Cabanatuan City and 95.9 BIG Sound FM Baguio City, Philippines.<br />
====Europe====<br />
*[[http://www.radiomax.dk Radio Max]] - broadcasting 24/7 in Denmark<br />
*[[http://www.felixstoweradio.co.uk Felixstowe Radio 107.5 FM]] A UK community radio station covering Felixstowe and the Colenis peninsula in sunny East Anglia. Rivendell plays pre-recorded and live-assisted content during the day for our FM and Internet stream output (overnight sustainer uses a separate commercial product) [[http://www.felixstoweradio.co.uk/link.m3u Internet stream]]<br />
*[[http://www.blackdiamondfm.com 107.8 Black Diamond FM]] Black Diamond FM is a community station serving Midlothian, Scotland. Rivendell plays non-stop music overnight and switches to IRN News by satellite every hour. [[http://www.blackdiamondfm.com/listen Stream link]]<br />
*[[http://www.radiohertz.de Hertz 87.9]] - Campus Radio in Bielefeld, Germany<br />
*[[http://www.hochschulradio-aachen.de Hochschulradio Aachen]] - Campus Radio Aachen, Campusradio of [http://www.rwth.de/ RWTH Aachen University], 99.1 MHz<br />
*[[http://helsinki.at Radio Helsinki]] - Radio Helsinki, free Radio Graz, Austria, 92.6 MHz<br />
*[[http://www.radiocampusamiens.com Radio Campus Amiens]] - Radio Campus Amiens, student Radio in the north of France, 24/7 w/Rivendell on 87.7 MHz<br />
*[[http://grafhit.net Graf'hit]] - student/community radio based in the [http://www.utc.fr University of Technology of Compiègne], France, 24/7 on 94.9MHz ([http://213.246.53.78:8000/grafhit.mp3 stream]). Powered by free software.<br />
*[[http://www.hit-radio.be Hit Radio Namur]] - Commercial Radio in Namur/Belgium, 24/7 on 94.9 MHz<br />
*[[http://www.ras.cat R&agrave;dio Artesa de Segre]] - A municipal radio station serving Artesa de Segre and its municipality in Catalonia (Spain), 24/7 on 90.2 MHz thanks to Rivendell Audio.<br />
*[[http://www.radioaktiv.org radioaktiv]] Campusradio of the Universities of Mannheim, Heidelberg and Ludwigshafen (Germany)<br />
*[[http://www.radiom.fr RADIOM]] Student radio from Castres, France. Broadcasting 24/7 on 89.7 MHz<br />
*[[http://divergence-fm.org Divergence FM]] No commercial, associative radio from Montpellier (France). Broadcasting 24/7 on 93.9MHz. Full running on free software.<br />
*[[http://www.radiohw.co.uk Radio Hartley Wintney]] - Community RSL radio station running from [[http://www.stjohnshw.co.uk St. Johns Church]] for 2 weeks a year in Hartley Wintney, Hampshire, UK on 87.7FM.<br />
*[[http://www.radioer.pl Radio eR]] - broadcasting 24/7 in Lublin, Poland on 87.9 FM. <br />
*[[http://www.radioi.pl Radio i]] - broadcasting 24/7 in Białystok, Poland on 103.3 FM. <br />
*[[http://www.radiomalbork.fm Radio Malbork]] - broadcasting 24/7 in Malbork, Poland on 90.4 FM<br />
* [http://www.run.be La RUN] - student Radio broadcasting in Namur, Belgium on 88.1 FM<br />
* [http://www.radiolarzac.org Radio Larzac] - in Millau, France on 87.8 Mhz<br />
* [http://www.radiolaser.fr Radio Laser] - in Guichen near Rennes, France on 95.9 Mhz<br />
* [http://radioclapas.fr Radio Clapas] - in Montpellier, France on 93.5 Mhz<br />
* [http://www.radio-couleur-chartreuse.org Radio Couleur Chartreuse] - in The Chartreuse Mountains, France on 98,4 and 106 Mhz<br />
* [http://radiofontaine.fr Radio Fontaine] near Grenoble, France on 88.6 FM <br />
* [http://www.radio-gresivaudan.org Radio Grésivaudan] in Crolles near Grenoble, France 87.8, on 89 and 92.4 Mhz<br />
* [http://www.radiocampusrennes.fr Radio Campus Rennes] - in Rennes, France on 88.4 Mhz<br />
* [http://www.radio-active.net Radio Active] - in Toulon, France on 100.0 Mhz<br />
* [http://www.radiopac.fr Radio PAC] - in Pompadour, Corrèze, France on 101.9 Mhz<br />
* [http://www.radiogrilleouverte.com Radio Grille Ouverte] - in Alès, France on 88.2 Mhz<br />
* [http://www.radiofildeleau.fr Radio Fil de l'Eau] - in L'Isle-Jourdain, near Toulouse, France on 106.6 Mhz and Fleurance in Gers, France on 100.9 Mhz<br />
* [http://www.radiocampusmontpellier.fr Radio Campus Montpellier] - in Montpellier, France on 102.2 Mhz<br />
* [http://lalocale.ckdevelop.org Radio La Locale] - in Saint-Girons, France on 97.3 Mhz<br />
* [http://www.orleans.radiocampus.org Radio Campus Orléans] - student Radio in Orléans, 24/7 w/Rivendell on 88.3 MHz FM<br />
* [http://www.campusgrenoble.org Radio Campus Grenoble] - student Radio in Grenoble, 24/7 w/Rivendell on 90.8 MHz FM<br />
<br />
====North America====<br />
*[[http://www.my997.org KDHE-LP My99.7]] - An independent radio station located in Spring Creek, NV and operated by the non-profit Spring Creek Christian Academy.<br />
*[[http://www.wlfc883.com WLFC-FM]] - Bringing independent label rock to Northwest Ohio from the University of Findlay<br />
*[[http://www.wgxc.org/ WGXC]] - 90.7 is a community radio station broadcasting to Greene and Columbia counties in New York. It is a project of [[http://wavefarm.org/ Wave Farm]].<br />
*[[http://www.smoothjazz106.com KKSJ-FM]] - 106.3 KKSJ is a Smooth Jazz radio station in Lafayette, Louisiana.<br />
*[[http://www.1059thefox.com KFXZ-FM]] - 105.9 KFXZ is a Country Legends radio station in Lafayette, Louisiana.<br />
*[[http://www.kdrt.org KDRT-LPFM]] - 101.5 KDRT-LP is a low-power non-commercial radio station serving Davis, California. Operated by [http://www.dctv.davis.ca.us Davis Community Television], KDRT is an important avenue for the voices in our community, especially those not typically found on commercial radio.<br />
*[[http://www.saskatoonchristianradio.com CFAQ-FM]] - 100.3 CFAQ is a Christian music station in Saskatoon, Canada.<br />
*KETL-LPFM - 100.5 is a Christian radio station in Republic Washington. We air both talk and music.<br />
*[[http://www.kdar.com KDAR-FM]] - 98.3 KDAR is a Christian teaching and talk station in Oxnard-Ventura, California<br />
*[[http://www.kptz.org KPTZ]] - 91.9 KPTZ is a Class A non-commercial community station in Port Townsend, Washington, licensed to Radio Port Townsend, a 501(c)(3) non-profit. We are using a client/server implementation of Rivendell in an all digital studio environment. KPTZ programs music and locally originated programs. The Rivendell system keeps programs going out 24/7 with a small station staff.<br />
*[[http://www.92zew.net WZEW-FM]] - Commercial Triple A Music Fm located in Mobile, Al.<br />
*[[http://www.wmfo.org WMFO - Tufts Freeform Radio]] - 91.5 Medford: Tufts University Freeform and Community Radio. Broadcasting to Medford, Sommerville, Cambridge, & Boston Areas.<br />
*[[WPSA 98.3]] is the Official Radio Station of [[Paul Smith's College]] a non-commercial, terrestrial based station dedicated to the Paul Smith's College community. Proudly operating 100% on free and open source software.<br />
*[[http://witr.rit.edu WITR]] - WITR 89.7 is the student-run FM radio station at [http://rit.edu Rochester Institute of Technology]; Rochester, NY. WITR airs indie, alternative, and garage rock, with specialty shows in the evening hours.<br />
*[[http://www.wmnf.org/thesource WMNF HD-3]] - WMNF's HD-3 in Tampa, FL is a fully-automated news & public affairs channel that uses Rivendell to import/play/switch content from a variety of sources, including pre-recorded/podcasted shows, live Internet streams, and live satellite feeds.<br />
*[[http://www.wcdbfm.com WCDB SUNYRADIO]] - 90.9 University Radio in Albany, NY. We're a primarily music non-commercial alternative university/community station that has programming from all and cultures. We implement RAAbuntu to keep 24/7.<br />
*[[http://www.kaskradio.com KASK]] - KASK 91.5 FM is a Christian teaching and talk station in Vacaville, California.<br />
*[[http://www.kfhlradio.com KFHL]] - KFHL 91.7 FM is a Christian teaching and talk station in Bakersfield, California.<br />
*[[http://www.wgttradio.com WGTT]] - WGTT 91.5 FM is a Christian teaching and talk station in Esmeralda, Florida.<br />
*[[http://www.whfgradio.com WHFG]] - WHFG 91.3 FM is a Christian teaching and talk station in Lafayette, Louisiana.<br />
*[[http://classical959.com WCRI]] - WCRI 95.9 FM is a classical music station on Block Island, Rhode Island.<br />
*[[http://whrb.org WHRB]] - WHRB 95.3 FM is a student-operated station at Harvard University (Cambridge, Massachusetts).<br />
*[[http://www.kpsq.org KPSQ-LP]] - KPSQ-LP 97.3 FM is a new (in 2016) [[wikipedia:LPFM|Low Power FM]] station in Fayetteville, AR<br />
*[[http://wdrt.org WDRT]] - WDRT 91.9 FM is a community radio station powered by 90+ volunteers in Viroqua, WI<br />
*[[http://www.kfai.org KFAI]] - KFAI 90.3 FM is a community radio station in Minneapolis/St Paul, MN<br />
*[[http://www.kmud.org KMUD]] - KMUD 91.1 Garberville, 88.1 Eureka, 90.3 Laytonville, 99.5 Shelter Cove is a community radio station in Northern CA<br />
*[[http://wnuc.org WNUC-LP]] - WNUC-LP 96.7 FM Detroit, MI is a community radio station in the North End neighborhood<br />
*[[https://www.graceradio.net/ KGCE-LP]] - KGCE-LP 107.9 FM Modesto, California &ldquo;GraceRadio&rdquo; is a Christian teaching and music station<br />
*[[https://www.wrfi.org/ WRFI]] - WRFI 88.1 FM Ithaca, 91.9 FM Watkins Glen, New York is Community Radio for Ithaca NY and the surrounding area<br />
<br />
====Pacifica====<br />
*[[http://www.countryradionetwork.com Country Radio]] - 87.7 FM Dunedin, New Zealand. (Since August 2008).<br />
*[[http://www.totalfm.nz Total FM]] - 107.3 FM Dunedin, New Zealand. (Since March 2012).<br />
<br />
====South America====<br />
*[[http://www.radio.ufscar.br Rádio UFSCar]] - 95.3 MHz Rádio UFSCar is a universitery radio station broadcasted from [http://ufscar.br UFSCar] Campus in São Carlos, São Paulo - Brazil.<br />
<br />
*[[http://www.sonidofm.net Sonido 104.3 FM]] - 104.3 MHz Sonido FM, is an Adult Contemporary Radio in San Carlos, Cojedes - Bolivarian Republic of Venezuela.<br />
<br />
*[[http://albaciudad.org Alba Ciudad 96.3 FM]] - 96.3 Mhz Alba Ciudad, A revolutionary cultural and socially oriented radio station in Caracas - Bolivarian Republic of Venezuela.<br />
<br />
*[[http://magicaradio.wordpress.com Mágica 106.3 FM]] - 106.3 Mhz FM Mágica, A communitary communicational project in Puerto Ayacucho, state of Amazonas - Bolivarian Republic of Venezuela.<br />
<br />
===Radio Station Chains===<br />
====North America====<br />
*[[http://www.worldradionetwork.org/ World Radio Network / Radio Cadena Manantial]] A Chain of not-for-profit radio stations along the USA/Mexico Border providing Christian programming in Spanish and English.<br />
**[[http://www.kbnj.org/ KBNJ-FM]] English station in Corpus Christi, TX (91.7)<br />
**[[http://www.kbnl.org/ KBNL-FM]] Spanish station in Laredo, TX (89.9)<br />
**KEPI-FM English Station in Eagle Pass, TX (88.7)<br />
**[[http://www.kepx.org/ KEPX-FM]] Spanish station in Eagle Pass, TX (89.5)<br />
**[[http://www.knog.org KNOG-FM]] Spanish station in Nogales, AZ (91.1) with translators in Tucson and Phoenix.<br />
**KRMB-FM Spanish station in Bisbee, AZ (90.1)<br />
**KRMC-FM Spanish station in Douglas, AZ (91.7)<br />
**[[http://www.kver.org/ KVER-FM]] Spanish station in El Paso, TX (91.1)<br />
**[[http://www.kvmv.org/ KVMV-FM]] English station in McAllen, TX (91.7)<br />
**[[http://www.kwrb.org/ KWRB-FM "The Spark FM"]] English station in Sierra Vista, AZ (90.9)<br />
**[[http://www.kyrmradio.org KYRM-FM]] Spanish station in Yuma, AZ (91.9)<br />
*[[http://www.familyfirstradio.com Family First Radio Network]] A Chain of not-for-profit radio stations providing Christian programming in English.<br />
**[[http://www.kaskradio.com KASK]] - KASK 91.5 FM is a Christian teaching and talk station in Vacaville, California.<br />
**[[http://www.kfhlradio.com KFHL]] - KFHL 91.7 FM is a Christian teaching and talk station in Bakersfield, California.<br />
**[[http://www.wgttradio.com WGTT]] - WGTT 91.5 FM is a Christian teaching and talk station in Esmeralda, Florida.<br />
**[[http://www.whfgradio.com WHFG]] - WHFG 91.3 FM is a Christian teaching and talk station in Lafayette, Louisiana.<br />
**[[http://www.wsjcradio.com WSJC]] - WSJC 810 AM is a Christian teaching and talk station in Magee, Mississippi.<br />
**[[http://www.wtcgradio.com WTCG]] - WTCG 870 AM is a Christian teaching and talk station in Mt Holly, North Carolina.<br />
*[[http://www.theclassicalstation.net World Classical Network]] A classical music radio network based in Hyannis, Massachusetts.<br />
* [[https://platteriverradio.com/ Platte River Radio]] a locally owned, locally managed media company in the Tri-Cities of Nebraska<br />
**[[https://platteriverradio.com/kliq/ KLIQ]] The Breeze 94.5 FM, the Tri-Cities Best Mix<br />
**[[https://platteriverradio.com/khas/ KHAS]] 1230 AM, Local news and sports for Hastings, NE<br />
**[[https://platteriverradio.com/kkpr/ KKPR]] Power 99, 98.9 FM, Classic Hits and High School Sports for the Tri-Cities<br />
**[[https://platteriverradio.com/espn/ KXPN/KICS]] Tri-Cities ESPN, 1460/1550 AM, ESPN local sports in the Tri-Cities<br />
*[[https://www.radioesperanza.com/ Radio Esperanza]] Radio Esperanza: Spanish Christian teach, talk, & music<br />
**KRIO 910 AM Edinburg, TX<br />
**KRIO 97.7 FM Roma, TX<br />
**KOIR 88.5 FM Pharr, TX<br />
<br />
===Shortwave Stations===<br />
====North America====<br />
*[[http://www.rfa.org RFA]] - RFA broadcasts news and information in nine native Asian languages to listeners who do not have access to full and free news media.<br />
<br />
===Internet Only Stations===<br />
====Europe====<br />
*[[http://www.icradio.com IC Radio]] - Student-run radio station of [http://www.imperial.ac.uk Imperial College London] (M-Audio Delta 1010).<br />
*[[http://www.autres-mondes.org Autres(M)Ondes]] - Ephemeral radio events performed around the Europe. Rivendell is the main component of our audio setup [http://www.flickr.com/photos/albanpeignier/6714170037 since 2004].<br />
*[[http://www.poliradio.it Poli.Radio]] - Amateur webradio promoted by the students from Politecnico di Milano, Italy.<br />
<br />
====North America====<br />
*[[https://www.mavradio.fm MavRadio]] - Student-run radio station of the [http://www.unomaha.edu University of Nebraska at Omaha].<br />
*[[http://www.birdnest.org/winr WINR]] - Student-run radio station at Winthrop University in Rock Hill, SC. Rivendell is in use currently on the weekends when live staff are not in the studio.<br />
*[[http://www.seahawkradio.com SMC Radio - The Hawk]] - St. Mary's College Radio, The Hawk is the student-run radio station at St. Mary's College of Maryland.<br />
*[[https://ocoochmountainmusic.com Ocooch Mountain Radio]] - Americana-focused independent station in the US Midwest.<br />
<br />
===Closed circuit / Low powered FM===<br />
====North America====<br />
*RadioPST - A closed-circuit French [[http://en.wikipedia.org/wiki/Sainte-Th%C3%A9r%C3%A8se,_Quebec Sainte-Thérèse]] high-school radio station fully automated with live interventions and live bands.<br />
*CLG2 89,9FM - [[http://fr.wikipedia.org/wiki/Coll%C3%A8ge_Lionel-Groulx Collège Lionel Groulx]] fully automated 24/7 low powered FM French radio station.</div>
DKlann
http://wiki.rivendellaudio.org/index.php?title=Main_Page&diff=586
Main Page
2021-01-02T14:30:37Z
<p>DKlann: Add link to list of stations using Rivendell.</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. Browse the source code at the official [https://github.com/ GitHub] [https://github.com/ElvishArtisan/rivendell repository]. Here&lsquo;s a list of [[Stations_using_Rivendell|stations using Rivendell]].<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 />
Users of Rivendell versions prior to 3.0 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 (updated September, 2020).<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>
DKlann
http://wiki.rivendellaudio.org/index.php?title=Stations_using_Rivendell&diff=580
Stations using Rivendell
2020-12-31T17:54:28Z
<p>DKlann: Add Radio Esperanza stations for Tom Van Gorkum</p>
<hr />
<div>Here is a list of Radio stations that are using Rivendell. Many of the stations below are owned by [http://www.salem.cc Salem Communications], the parent of [http://www.salemradiolabs.com Salem Radio Laboratories], the initial developers of [http://www.salemradiolabs.com/rivendell/ Rivendell].<br />
<br />
<br />
<br />
===AM Stations===<br />
====North America====<br />
*[[http://www.1010kbw.com KBBW-AM]] - 1010 KBW is a Christian teaching and talk station in Waco, Texas<br />
*[[http://www.kgnw.com KGNW-AM]] - KGNW AM 820 is a Christian teaching and talk station in Seattle-Tacoma, Washington<br />
*[[http://www.1590klfe.com KLFE-AM]] - 1590 KLFE is a Christian teaching and talk station in Seattle-Tacoma, Washington<br />
*[[http://www.1300kol.com KKOL-AM]] - News-Talk 1300 KOL is a news and talk station in Seattle-Tacoma, Washington<br />
*[[http://www.radiosol1360.com KKMO-AM]] - RADIO SOL 1360 AM is a spanish station in Seattle-Tacoma, Washington<br />
*[[http://www.salem.cc KTFH-AM]] - 1680 KTFH "The Bridge" is an international station in Seattle-Tacoma, Washington<br />
*[[http://www.1360wkat.com WKAT-AM]] - News-Talk 1360 WKAT is a news and talk station in Miami-Ft. Lauderdale-Hollywood, Florida<br />
*[[http://www.wlssradio.com WLSS-AM]] - News-Talk 930 WLSS is a news and talk station in Sarasota-Bradenton, Florida<br />
*[[http://www.860wgul.com WGUL-AM]] - News-Talk 860 WGUL is a news and talk station in Tampa-St. Petersburg-Clearwater, Florida<br />
*[[http://www.bayword.com WTBN-AM]] - WTBN 570 AM is a Christian teaching and talk station in Tampa-St. Petersburg-Clearwater, Florida<br />
*[[http://www.bayword.com WTWD-AM]] - WTWD 910 AM is a Christian teaching and talk station in Tampa-St. Petersburg-Clearwater, Florida<br />
*[[http://www.wdtkam.com WDTK-AM]] - WDTK 1400 AM is a News Talk station in Detroit, Michigan<br />
*[[http://www.am1500wlqv.com WLQV-AM]] - WLQV 1500 AM is a Christian teaching and talk station in Detroit, Michigan<br />
*[[http://www.krpiradio.com KRPI-AM]] - KRPI 1550 AM is an East Indian music and talk station in Ferndale, Washington<br />
*[[http://www.am1330kvol.com KVOL-AM]] - KVOL 1330 AM is a news talk station in Lafayette, Louisiana<br />
*[[http://www.fsr1520 KFXZ-AM]] - KFXZ 1520 AM is a Fox Sports Radio affiliate station in Lafayette, Louisiana<br />
*[[http://wutt.ut.edu WUTT]] - WUTT 1080 AM is the student radio station at the University of Tampa in Tampa, Florida.<br />
*[[http://classical959.com WCRI]] - WCRI 1180 AM is a classical music station in Hope Valley, Rhode Island.<br />
*[[http://www.wsjcradio.com WSJC]] - WSJC 810 AM is a Christian teaching and talk station in Magee, Mississippi.<br />
*[[http://www.wtcgradio.com WTCG]] - WTCG 870 AM is a Christian teaching and talk station in Mt Holly, North Carolina.<br />
*[[http://wxva.com WXVA]] - WXVA 610 AM is a full service greatest hits of all time station in Winchester, VA.<br />
<br />
====Pacifica====<br />
*[[http://www.oar.org.nz Otago Access Radio]] - 105.4 / 1575 AM is a Community Access Radio Station in Dunedin, New Zealand.<br />
*Big Valley Radio 107.4 Thames Whangamata Whitianga on the Coromandel Peninsula, New Zealand<br />
<br />
====Europe====<br />
*[[http://www.insanityradio.com Insanity Radio]] - 1287AM, a student radio station in Egham, UK, at Royal Holloway, University of London (only for sustainer at present)<br />
<br />
===FM Stations===<br />
====Asia====<br />
*[[http://www.bigsound.com BIG Sound FM]] - Vanguard Radio Network's 101.5 BIG Sound FM Cabanatuan City and 95.9 BIG Sound FM Baguio City, Philippines.<br />
====Europe====<br />
*[[http://www.radiomax.dk Radio Max]] - broadcasting 24/7 in Denmark<br />
*[[http://www.felixstoweradio.co.uk Felixstowe Radio 107.5 FM]] A UK community radio station covering Felixstowe and the Colenis peninsula in sunny East Anglia. Rivendell plays pre-recorded and live-assisted content during the day for our FM and Internet stream output (overnight sustainer uses a separate commercial product) [[http://www.felixstoweradio.co.uk/link.m3u Internet stream]]<br />
*[[http://www.blackdiamondfm.com 107.8 Black Diamond FM]] Black Diamond FM is a community station serving Midlothian, Scotland. Rivendell plays non-stop music overnight and switches to IRN News by satellite every hour. [[http://www.blackdiamondfm.com/listen Stream link]]<br />
*[[http://www.radiohertz.de Hertz 87.9]] - Campus Radio in Bielefeld, Germany<br />
*[[http://www.hochschulradio-aachen.de Hochschulradio Aachen]] - Campus Radio Aachen, Campusradio of [http://www.rwth.de/ RWTH Aachen University], 99.1 MHz<br />
*[[http://helsinki.at Radio Helsinki]] - Radio Helsinki, free Radio Graz, Austria, 92.6 MHz<br />
*[[http://www.radiocampusamiens.com Radio Campus Amiens]] - Radio Campus Amiens, student Radio in the north of France, 24/7 w/Rivendell on 87.7 MHz<br />
*[[http://grafhit.net Graf'hit]] - student/community radio based in the [http://www.utc.fr University of Technology of Compiègne], France, 24/7 on 94.9MHz ([http://213.246.53.78:8000/grafhit.mp3 stream]). Powered by free software.<br />
*[[http://www.hit-radio.be Hit Radio Namur]] - Commercial Radio in Namur/Belgium, 24/7 on 94.9 MHz<br />
*[[http://www.ras.cat R&agrave;dio Artesa de Segre]] - A municipal radio station serving Artesa de Segre and its municipality in Catalonia (Spain), 24/7 on 90.2 MHz thanks to Rivendell Audio.<br />
*[[http://www.radioaktiv.org radioaktiv]] Campusradio of the Universities of Mannheim, Heidelberg and Ludwigshafen (Germany)<br />
*[[http://www.radiom.fr RADIOM]] Student radio from Castres, France. Broadcasting 24/7 on 89.7 MHz<br />
*[[http://divergence-fm.org Divergence FM]] No commercial, associative radio from Montpellier (France). Broadcasting 24/7 on 93.9MHz. Full running on free software.<br />
*[[http://www.radiohw.co.uk Radio Hartley Wintney]] - Community RSL radio station running from [[http://www.stjohnshw.co.uk St. Johns Church]] for 2 weeks a year in Hartley Wintney, Hampshire, UK on 87.7FM.<br />
*[[http://www.radioer.pl Radio eR]] - broadcasting 24/7 in Lublin, Poland on 87.9 FM. <br />
*[[http://www.radioi.pl Radio i]] - broadcasting 24/7 in Białystok, Poland on 103.3 FM. <br />
*[[http://www.radiomalbork.fm Radio Malbork]] - broadcasting 24/7 in Malbork, Poland on 90.4 FM<br />
* [http://www.run.be La RUN] - student Radio broadcasting in Namur, Belgium on 88.1 FM<br />
* [http://www.radiolarzac.org Radio Larzac] - in Millau, France on 87.8 Mhz<br />
* [http://www.radiolaser.fr Radio Laser] - in Guichen near Rennes, France on 95.9 Mhz<br />
* [http://radioclapas.fr Radio Clapas] - in Montpellier, France on 93.5 Mhz<br />
* [http://www.radio-couleur-chartreuse.org Radio Couleur Chartreuse] - in The Chartreuse Mountains, France on 98,4 and 106 Mhz<br />
* [http://radiofontaine.fr Radio Fontaine] near Grenoble, France on 88.6 FM <br />
* [http://www.radio-gresivaudan.org Radio Grésivaudan] in Crolles near Grenoble, France 87.8, on 89 and 92.4 Mhz<br />
* [http://www.radiocampusrennes.fr Radio Campus Rennes] - in Rennes, France on 88.4 Mhz<br />
* [http://www.radio-active.net Radio Active] - in Toulon, France on 100.0 Mhz<br />
* [http://www.radiopac.fr Radio PAC] - in Pompadour, Corrèze, France on 101.9 Mhz<br />
* [http://www.radiogrilleouverte.com Radio Grille Ouverte] - in Alès, France on 88.2 Mhz<br />
* [http://www.radiofildeleau.fr Radio Fil de l'Eau] - in L'Isle-Jourdain, near Toulouse, France on 106.6 Mhz and Fleurance in Gers, France on 100.9 Mhz<br />
* [http://www.radiocampusmontpellier.fr Radio Campus Montpellier] - in Montpellier, France on 102.2 Mhz<br />
* [http://lalocale.ckdevelop.org Radio La Locale] - in Saint-Girons, France on 97.3 Mhz<br />
* [http://www.orleans.radiocampus.org Radio Campus Orléans] - student Radio in Orléans, 24/7 w/Rivendell on 88.3 MHz FM<br />
* [http://www.campusgrenoble.org Radio Campus Grenoble] - student Radio in Grenoble, 24/7 w/Rivendell on 90.8 MHz FM<br />
<br />
====North America====<br />
*[[http://www.my997.org KDHE-LP My99.7]] - An independent radio station located in Spring Creek, NV and operated by the non-profit Spring Creek Christian Academy.<br />
*[[http://www.wlfc883.com WLFC-FM]] - Bringing independent label rock to Northwest Ohio from the University of Findlay<br />
*[[http://www.wgxc.org/ WGXC]] - 90.7 is a community radio station broadcasting to Greene and Columbia counties in New York. It is a project of [[http://wavefarm.org/ Wave Farm]].<br />
*[[http://www.smoothjazz106.com KKSJ-FM]] - 106.3 KKSJ is a Smooth Jazz radio station in Lafayette, Louisiana.<br />
*[[http://www.1059thefox.com KFXZ-FM]] - 105.9 KFXZ is a Country Legends radio station in Lafayette, Louisiana.<br />
*[[http://www.kdrt.org KDRT-LPFM]] - 101.5 KDRT-LP is a low-power non-commercial radio station serving Davis, California. Operated by [http://www.dctv.davis.ca.us Davis Community Television], KDRT is an important avenue for the voices in our community, especially those not typically found on commercial radio.<br />
*[[http://www.saskatoonchristianradio.com CFAQ-FM]] - 100.3 CFAQ is a Christian music station in Saskatoon, Canada.<br />
*KETL-LPFM - 100.5 is a Christian radio station in Republic Washington. We air both talk and music.<br />
*[[http://www.kdar.com KDAR-FM]] - 98.3 KDAR is a Christian teaching and talk station in Oxnard-Ventura, California<br />
*[[http://www.kptz.org KPTZ]] - 91.9 KPTZ is a Class A non-commercial community station in Port Townsend, Washington, licensed to Radio Port Townsend, a 501(c)(3) non-profit. We are using a client/server implementation of Rivendell in an all digital studio environment. KPTZ programs music and locally originated programs. The Rivendell system keeps programs going out 24/7 with a small station staff.<br />
*[[http://www.92zew.net WZEW-FM]] - Commercial Triple A Music Fm located in Mobile, Al.<br />
*[[http://www.wmfo.org WMFO - Tufts Freeform Radio]] - 91.5 Medford: Tufts University Freeform and Community Radio. Broadcasting to Medford, Sommerville, Cambridge, & Boston Areas.<br />
*[[WPSA 98.3]] is the Official Radio Station of [[Paul Smith's College]] a non-commercial, terrestrial based station dedicated to the Paul Smith's College community. Proudly operating 100% on free and open source software.<br />
*[[http://witr.rit.edu WITR]] - WITR 89.7 is the student-run FM radio station at [http://rit.edu Rochester Institute of Technology]; Rochester, NY. WITR airs indie, alternative, and garage rock, with specialty shows in the evening hours.<br />
*[[http://www.wmnf.org/thesource WMNF HD-3]] - WMNF's HD-3 in Tampa, FL is a fully-automated news & public affairs channel that uses Rivendell to import/play/switch content from a variety of sources, including pre-recorded/podcasted shows, live Internet streams, and live satellite feeds.<br />
*[[http://www.wcdbfm.com WCDB SUNYRADIO]] - 90.9 University Radio in Albany, NY. We're a primarily music non-commercial alternative university/community station that has programming from all and cultures. We implement RAAbuntu to keep 24/7.<br />
*[[http://www.kaskradio.com KASK]] - KASK 91.5 FM is a Christian teaching and talk station in Vacaville, California.<br />
*[[http://www.kfhlradio.com KFHL]] - KFHL 91.7 FM is a Christian teaching and talk station in Bakersfield, California.<br />
*[[http://www.wgttradio.com WGTT]] - WGTT 91.5 FM is a Christian teaching and talk station in Esmeralda, Florida.<br />
*[[http://www.whfgradio.com WHFG]] - WHFG 91.3 FM is a Christian teaching and talk station in Lafayette, Louisiana.<br />
*[[http://classical959.com WCRI]] - WCRI 95.9 FM is a classical music station on Block Island, Rhode Island.<br />
*[[http://whrb.org WHRB]] - WHRB 95.3 FM is a student-operated station at Harvard University (Cambridge, Massachusetts).<br />
*[[http://www.kpsq.org KPSQ-LP]] - KPSQ-LP 97.3 FM is a new (in 2016) [[wikipedia:LPFM|Low Power FM]] station in Fayetteville, AR<br />
*[[http://wdrt.org WDRT]] - WDRT 91.9 FM is a community radio station powered by 90+ volunteers in Viroqua, WI<br />
*[[http://www.kfai.org KFAI]] - KFAI 90.3 FM is a community radio station in Minneapolis/St Paul, MN<br />
*[[http://www.kmud.org KMUD]] - KMUD 91.1 Garberville, 88.1 Eureka, 90.3 Laytonville, 99.5 Shelter Cove is a community radio station in Northern CA<br />
*[[http://wnuc.org WNUC-LP]] - WNUC-LP 96.7 FM Detroit, MI is a community radio station in the North End neighborhood<br />
*[[https://www.graceradio.net/ KGCE-LP]] - KGCE-LP 107.9 FM Modesto, California &ldquo;GraceRadio&rdquo; is a Christian teaching and music station<br />
*[[https://www.wrfi.org/ WRFI]] - WRFI 88.1 FM Ithaca, 91.9 FM Watkins Glen, New York is Community Radio for Ithaca NY and the surrounding area<br />
<br />
====Pacifica====<br />
*[[http://www.countryradionetwork.com Country Radio]] - 87.7 FM Dunedin, New Zealand. (Since August 2008).<br />
*[[http://www.totalfm.nz Total FM]] - 107.3 FM Dunedin, New Zealand. (Since March 2012).<br />
<br />
====South America====<br />
*[[http://www.radio.ufscar.br Rádio UFSCar]] - 95.3 MHz Rádio UFSCar is a universitery radio station broadcasted from [http://ufscar.br UFSCar] Campus in São Carlos, São Paulo - Brazil.<br />
<br />
*[[http://www.sonidofm.net Sonido 104.3 FM]] - 104.3 MHz Sonido FM, is an Adult Contemporary Radio in San Carlos, Cojedes - Bolivarian Republic of Venezuela.<br />
<br />
*[[http://albaciudad.org Alba Ciudad 96.3 FM]] - 96.3 Mhz Alba Ciudad, A revolutionary cultural and socially oriented radio station in Caracas - Bolivarian Republic of Venezuela.<br />
<br />
*[[http://magicaradio.wordpress.com Mágica 106.3 FM]] - 106.3 Mhz FM Mágica, A communitary communicational project in Puerto Ayacucho, state of Amazonas - Bolivarian Republic of Venezuela.<br />
<br />
===Radio Station Chains===<br />
====North America====<br />
*[[http://www.worldradionetwork.org/ World Radio Network / Radio Cadena Manantial]] A Chain of not-for-profit radio stations along the USA/Mexico Border providing Christian programming in Spanish and English.<br />
**[[http://www.kbnj.org/ KBNJ-FM]] English station in Corpus Christi, TX (91.7)<br />
**[[http://www.kbnl.org/ KBNL-FM]] Spanish station in Laredo, TX (89.9)<br />
**KEPI-FM English Station in Eagle Pass, TX (88.7)<br />
**[[http://www.kepx.org/ KEPX-FM]] Spanish station in Eagle Pass, TX (89.5)<br />
**[[http://www.knog.org KNOG-FM]] Spanish station in Nogales, AZ (91.1) with translators in Tucson and Phoenix.<br />
**KRMB-FM Spanish station in Bisbee, AZ (90.1)<br />
**KRMC-FM Spanish station in Douglas, AZ (91.7)<br />
**[[http://www.kver.org/ KVER-FM]] Spanish station in El Paso, TX (91.1)<br />
**[[http://www.kvmv.org/ KVMV-FM]] English station in McAllen, TX (91.7)<br />
**[[http://www.kwrb.org/ KWRB-FM "The Spark FM"]] English station in Sierra Vista, AZ (90.9)<br />
**[[http://www.kyrmradio.org KYRM-FM]] Spanish station in Yuma, AZ (91.9)<br />
*[[http://www.familyfirstradio.com Family First Radio Network]] A Chain of not-for-profit radio stations providing Christian programming in English.<br />
**[[http://www.kaskradio.com KASK]] - KASK 91.5 FM is a Christian teaching and talk station in Vacaville, California.<br />
**[[http://www.kfhlradio.com KFHL]] - KFHL 91.7 FM is a Christian teaching and talk station in Bakersfield, California.<br />
**[[http://www.wgttradio.com WGTT]] - WGTT 91.5 FM is a Christian teaching and talk station in Esmeralda, Florida.<br />
**[[http://www.whfgradio.com WHFG]] - WHFG 91.3 FM is a Christian teaching and talk station in Lafayette, Louisiana.<br />
**[[http://www.wsjcradio.com WSJC]] - WSJC 810 AM is a Christian teaching and talk station in Magee, Mississippi.<br />
**[[http://www.wtcgradio.com WTCG]] - WTCG 870 AM is a Christian teaching and talk station in Mt Holly, North Carolina.<br />
*[[http://www.theclassicalstation.net World Classical Network]] A classical music radio network based in Hyannis, Massachusetts.<br />
* [[https://platteriverradio.com/ Platte River Radio]] a locally owned, locally managed media company in the Tri-Cities of Nebraska<br />
**[[https://platteriverradio.com/kliq/ KLIQ]] The Breeze 94.5 FM, the Tri-Cities Best Mix<br />
**[[https://platteriverradio.com/khas/ KHAS]] 1230 AM, Local news and sports for Hastings, NE<br />
**[[https://platteriverradio.com/kkpr/ KKPR]] Power 99, 98.9 FM, Classic Hits and High School Sports for the Tri-Cities<br />
**[[https://platteriverradio.com/espn/ KXPN/KICS]] Tri-Cities ESPN, 1460/1550 AM, ESPN local sports in the Tri-Cities<br />
*[[https://www.radioesperanza.com/ Radio Esperanza]] Radio Esperanza: Spanish Christian teach, talk, & music<br />
**KRIO 910 AM Edinburg, TX<br />
**KRIO 97.7 FM Roma, TX<br />
**KOIR 88.5 FM Pharr, TX<br />
<br />
===Shortwave Stations===<br />
====North America====<br />
*[[http://www.rfa.org RFA]] - RFA broadcasts news and information in nine native Asian languages to listeners who do not have access to full and free news media.<br />
<br />
===Internet Only Stations===<br />
====Europe====<br />
*[[http://www.icradio.com IC Radio]] - Student-run radio station of [http://www.imperial.ac.uk Imperial College London] (M-Audio Delta 1010).<br />
*[[http://www.autres-mondes.org Autres(M)Ondes]] - Ephemeral radio events performed around the Europe. Rivendell is the main component of our audio setup [http://www.flickr.com/photos/albanpeignier/6714170037 since 2004].<br />
*[[http://www.poliradio.it Poli.Radio]] - Amateur webradio promoted by the students from Politecnico di Milano, Italy.<br />
<br />
====North America====<br />
*[[https://www.mavradio.fm MavRadio]] - Student-run radio station of the [http://www.unomaha.edu University of Nebraska at Omaha].<br />
*[[http://www.birdnest.org/winr WINR]] - Student-run radio station at Winthrop University in Rock Hill, SC. Rivendell is in use currently on the weekends when live staff are not in the studio.<br />
*[[http://www.seahawkradio.com SMC Radio - The Hawk]] - St. Mary's College Radio, The Hawk is the student-run radio station at St. Mary's College of Maryland.<br />
*[[https://ocoochmountainmusic.com Ocooch Mountain Radio]] - Americana-focused independent station in the US Midwest.<br />
<br />
===Closed circuit / Low powered FM===<br />
====North America====<br />
*RadioPST - A closed-circuit French [[http://en.wikipedia.org/wiki/Sainte-Th%C3%A9r%C3%A8se,_Quebec Sainte-Thérèse]] high-school radio station fully automated with live interventions and live bands.<br />
*CLG2 89,9FM - [[http://fr.wikipedia.org/wiki/Coll%C3%A8ge_Lionel-Groulx Collège Lionel Groulx]] fully automated 24/7 low powered FM French radio station.</div>
DKlann
http://wiki.rivendellaudio.org/index.php?title=Stations_using_Rivendell&diff=579
Stations using Rivendell
2020-12-31T17:23:47Z
<p>DKlann: Add KGCE-LP, WRFI, Platte River Radio stations; Delete WDBM.</p>
<hr />
<div>Here is a list of Radio stations that are using Rivendell. Many of the stations below are owned by [http://www.salem.cc Salem Communications], the parent of [http://www.salemradiolabs.com Salem Radio Laboratories], the initial developers of [http://www.salemradiolabs.com/rivendell/ Rivendell].<br />
<br />
<br />
<br />
===AM Stations===<br />
====North America====<br />
*[[http://www.1010kbw.com KBBW-AM]] - 1010 KBW is a Christian teaching and talk station in Waco, Texas<br />
*[[http://www.kgnw.com KGNW-AM]] - KGNW AM 820 is a Christian teaching and talk station in Seattle-Tacoma, Washington<br />
*[[http://www.1590klfe.com KLFE-AM]] - 1590 KLFE is a Christian teaching and talk station in Seattle-Tacoma, Washington<br />
*[[http://www.1300kol.com KKOL-AM]] - News-Talk 1300 KOL is a news and talk station in Seattle-Tacoma, Washington<br />
*[[http://www.radiosol1360.com KKMO-AM]] - RADIO SOL 1360 AM is a spanish station in Seattle-Tacoma, Washington<br />
*[[http://www.salem.cc KTFH-AM]] - 1680 KTFH "The Bridge" is an international station in Seattle-Tacoma, Washington<br />
*[[http://www.1360wkat.com WKAT-AM]] - News-Talk 1360 WKAT is a news and talk station in Miami-Ft. Lauderdale-Hollywood, Florida<br />
*[[http://www.wlssradio.com WLSS-AM]] - News-Talk 930 WLSS is a news and talk station in Sarasota-Bradenton, Florida<br />
*[[http://www.860wgul.com WGUL-AM]] - News-Talk 860 WGUL is a news and talk station in Tampa-St. Petersburg-Clearwater, Florida<br />
*[[http://www.bayword.com WTBN-AM]] - WTBN 570 AM is a Christian teaching and talk station in Tampa-St. Petersburg-Clearwater, Florida<br />
*[[http://www.bayword.com WTWD-AM]] - WTWD 910 AM is a Christian teaching and talk station in Tampa-St. Petersburg-Clearwater, Florida<br />
*[[http://www.wdtkam.com WDTK-AM]] - WDTK 1400 AM is a News Talk station in Detroit, Michigan<br />
*[[http://www.am1500wlqv.com WLQV-AM]] - WLQV 1500 AM is a Christian teaching and talk station in Detroit, Michigan<br />
*[[http://www.krpiradio.com KRPI-AM]] - KRPI 1550 AM is an East Indian music and talk station in Ferndale, Washington<br />
*[[http://www.am1330kvol.com KVOL-AM]] - KVOL 1330 AM is a news talk station in Lafayette, Louisiana<br />
*[[http://www.fsr1520 KFXZ-AM]] - KFXZ 1520 AM is a Fox Sports Radio affiliate station in Lafayette, Louisiana<br />
*[[http://wutt.ut.edu WUTT]] - WUTT 1080 AM is the student radio station at the University of Tampa in Tampa, Florida.<br />
*[[http://classical959.com WCRI]] - WCRI 1180 AM is a classical music station in Hope Valley, Rhode Island.<br />
*[[http://www.wsjcradio.com WSJC]] - WSJC 810 AM is a Christian teaching and talk station in Magee, Mississippi.<br />
*[[http://www.wtcgradio.com WTCG]] - WTCG 870 AM is a Christian teaching and talk station in Mt Holly, North Carolina.<br />
*[[http://wxva.com WXVA]] - WXVA 610 AM is a full service greatest hits of all time station in Winchester, VA.<br />
<br />
====Pacifica====<br />
*[[http://www.oar.org.nz Otago Access Radio]] - 105.4 / 1575 AM is a Community Access Radio Station in Dunedin, New Zealand.<br />
*Big Valley Radio 107.4 Thames Whangamata Whitianga on the Coromandel Peninsula, New Zealand<br />
<br />
====Europe====<br />
*[[http://www.insanityradio.com Insanity Radio]] - 1287AM, a student radio station in Egham, UK, at Royal Holloway, University of London (only for sustainer at present)<br />
<br />
===FM Stations===<br />
====Asia====<br />
*[[http://www.bigsound.com BIG Sound FM]] - Vanguard Radio Network's 101.5 BIG Sound FM Cabanatuan City and 95.9 BIG Sound FM Baguio City, Philippines.<br />
====Europe====<br />
*[[http://www.radiomax.dk Radio Max]] - broadcasting 24/7 in Denmark<br />
*[[http://www.felixstoweradio.co.uk Felixstowe Radio 107.5 FM]] A UK community radio station covering Felixstowe and the Colenis peninsula in sunny East Anglia. Rivendell plays pre-recorded and live-assisted content during the day for our FM and Internet stream output (overnight sustainer uses a separate commercial product) [[http://www.felixstoweradio.co.uk/link.m3u Internet stream]]<br />
*[[http://www.blackdiamondfm.com 107.8 Black Diamond FM]] Black Diamond FM is a community station serving Midlothian, Scotland. Rivendell plays non-stop music overnight and switches to IRN News by satellite every hour. [[http://www.blackdiamondfm.com/listen Stream link]]<br />
*[[http://www.radiohertz.de Hertz 87.9]] - Campus Radio in Bielefeld, Germany<br />
*[[http://www.hochschulradio-aachen.de Hochschulradio Aachen]] - Campus Radio Aachen, Campusradio of [http://www.rwth.de/ RWTH Aachen University], 99.1 MHz<br />
*[[http://helsinki.at Radio Helsinki]] - Radio Helsinki, free Radio Graz, Austria, 92.6 MHz<br />
*[[http://www.radiocampusamiens.com Radio Campus Amiens]] - Radio Campus Amiens, student Radio in the north of France, 24/7 w/Rivendell on 87.7 MHz<br />
*[[http://grafhit.net Graf'hit]] - student/community radio based in the [http://www.utc.fr University of Technology of Compiègne], France, 24/7 on 94.9MHz ([http://213.246.53.78:8000/grafhit.mp3 stream]). Powered by free software.<br />
*[[http://www.hit-radio.be Hit Radio Namur]] - Commercial Radio in Namur/Belgium, 24/7 on 94.9 MHz<br />
*[[http://www.ras.cat R&agrave;dio Artesa de Segre]] - A municipal radio station serving Artesa de Segre and its municipality in Catalonia (Spain), 24/7 on 90.2 MHz thanks to Rivendell Audio.<br />
*[[http://www.radioaktiv.org radioaktiv]] Campusradio of the Universities of Mannheim, Heidelberg and Ludwigshafen (Germany)<br />
*[[http://www.radiom.fr RADIOM]] Student radio from Castres, France. Broadcasting 24/7 on 89.7 MHz<br />
*[[http://divergence-fm.org Divergence FM]] No commercial, associative radio from Montpellier (France). Broadcasting 24/7 on 93.9MHz. Full running on free software.<br />
*[[http://www.radiohw.co.uk Radio Hartley Wintney]] - Community RSL radio station running from [[http://www.stjohnshw.co.uk St. Johns Church]] for 2 weeks a year in Hartley Wintney, Hampshire, UK on 87.7FM.<br />
*[[http://www.radioer.pl Radio eR]] - broadcasting 24/7 in Lublin, Poland on 87.9 FM. <br />
*[[http://www.radioi.pl Radio i]] - broadcasting 24/7 in Białystok, Poland on 103.3 FM. <br />
*[[http://www.radiomalbork.fm Radio Malbork]] - broadcasting 24/7 in Malbork, Poland on 90.4 FM<br />
* [http://www.run.be La RUN] - student Radio broadcasting in Namur, Belgium on 88.1 FM<br />
* [http://www.radiolarzac.org Radio Larzac] - in Millau, France on 87.8 Mhz<br />
* [http://www.radiolaser.fr Radio Laser] - in Guichen near Rennes, France on 95.9 Mhz<br />
* [http://radioclapas.fr Radio Clapas] - in Montpellier, France on 93.5 Mhz<br />
* [http://www.radio-couleur-chartreuse.org Radio Couleur Chartreuse] - in The Chartreuse Mountains, France on 98,4 and 106 Mhz<br />
* [http://radiofontaine.fr Radio Fontaine] near Grenoble, France on 88.6 FM <br />
* [http://www.radio-gresivaudan.org Radio Grésivaudan] in Crolles near Grenoble, France 87.8, on 89 and 92.4 Mhz<br />
* [http://www.radiocampusrennes.fr Radio Campus Rennes] - in Rennes, France on 88.4 Mhz<br />
* [http://www.radio-active.net Radio Active] - in Toulon, France on 100.0 Mhz<br />
* [http://www.radiopac.fr Radio PAC] - in Pompadour, Corrèze, France on 101.9 Mhz<br />
* [http://www.radiogrilleouverte.com Radio Grille Ouverte] - in Alès, France on 88.2 Mhz<br />
* [http://www.radiofildeleau.fr Radio Fil de l'Eau] - in L'Isle-Jourdain, near Toulouse, France on 106.6 Mhz and Fleurance in Gers, France on 100.9 Mhz<br />
* [http://www.radiocampusmontpellier.fr Radio Campus Montpellier] - in Montpellier, France on 102.2 Mhz<br />
* [http://lalocale.ckdevelop.org Radio La Locale] - in Saint-Girons, France on 97.3 Mhz<br />
* [http://www.orleans.radiocampus.org Radio Campus Orléans] - student Radio in Orléans, 24/7 w/Rivendell on 88.3 MHz FM<br />
* [http://www.campusgrenoble.org Radio Campus Grenoble] - student Radio in Grenoble, 24/7 w/Rivendell on 90.8 MHz FM<br />
<br />
====North America====<br />
*[[http://www.my997.org KDHE-LP My99.7]] - An independent radio station located in Spring Creek, NV and operated by the non-profit Spring Creek Christian Academy.<br />
*[[http://www.wlfc883.com WLFC-FM]] - Bringing independent label rock to Northwest Ohio from the University of Findlay<br />
*[[http://www.wgxc.org/ WGXC]] - 90.7 is a community radio station broadcasting to Greene and Columbia counties in New York. It is a project of [[http://wavefarm.org/ Wave Farm]].<br />
*[[http://www.smoothjazz106.com KKSJ-FM]] - 106.3 KKSJ is a Smooth Jazz radio station in Lafayette, Louisiana.<br />
*[[http://www.1059thefox.com KFXZ-FM]] - 105.9 KFXZ is a Country Legends radio station in Lafayette, Louisiana.<br />
*[[http://www.kdrt.org KDRT-LPFM]] - 101.5 KDRT-LP is a low-power non-commercial radio station serving Davis, California. Operated by [http://www.dctv.davis.ca.us Davis Community Television], KDRT is an important avenue for the voices in our community, especially those not typically found on commercial radio.<br />
*[[http://www.saskatoonchristianradio.com CFAQ-FM]] - 100.3 CFAQ is a Christian music station in Saskatoon, Canada.<br />
*KETL-LPFM - 100.5 is a Christian radio station in Republic Washington. We air both talk and music.<br />
*[[http://www.kdar.com KDAR-FM]] - 98.3 KDAR is a Christian teaching and talk station in Oxnard-Ventura, California<br />
*[[http://www.kptz.org KPTZ]] - 91.9 KPTZ is a Class A non-commercial community station in Port Townsend, Washington, licensed to Radio Port Townsend, a 501(c)(3) non-profit. We are using a client/server implementation of Rivendell in an all digital studio environment. KPTZ programs music and locally originated programs. The Rivendell system keeps programs going out 24/7 with a small station staff.<br />
*[[http://www.92zew.net WZEW-FM]] - Commercial Triple A Music Fm located in Mobile, Al.<br />
*[[http://www.wmfo.org WMFO - Tufts Freeform Radio]] - 91.5 Medford: Tufts University Freeform and Community Radio. Broadcasting to Medford, Sommerville, Cambridge, & Boston Areas.<br />
*[[WPSA 98.3]] is the Official Radio Station of [[Paul Smith's College]] a non-commercial, terrestrial based station dedicated to the Paul Smith's College community. Proudly operating 100% on free and open source software.<br />
*[[http://witr.rit.edu WITR]] - WITR 89.7 is the student-run FM radio station at [http://rit.edu Rochester Institute of Technology]; Rochester, NY. WITR airs indie, alternative, and garage rock, with specialty shows in the evening hours.<br />
*[[http://www.wmnf.org/thesource WMNF HD-3]] - WMNF's HD-3 in Tampa, FL is a fully-automated news & public affairs channel that uses Rivendell to import/play/switch content from a variety of sources, including pre-recorded/podcasted shows, live Internet streams, and live satellite feeds.<br />
*[[http://www.wcdbfm.com WCDB SUNYRADIO]] - 90.9 University Radio in Albany, NY. We're a primarily music non-commercial alternative university/community station that has programming from all and cultures. We implement RAAbuntu to keep 24/7.<br />
*[[http://www.kaskradio.com KASK]] - KASK 91.5 FM is a Christian teaching and talk station in Vacaville, California.<br />
*[[http://www.kfhlradio.com KFHL]] - KFHL 91.7 FM is a Christian teaching and talk station in Bakersfield, California.<br />
*[[http://www.wgttradio.com WGTT]] - WGTT 91.5 FM is a Christian teaching and talk station in Esmeralda, Florida.<br />
*[[http://www.whfgradio.com WHFG]] - WHFG 91.3 FM is a Christian teaching and talk station in Lafayette, Louisiana.<br />
*[[http://classical959.com WCRI]] - WCRI 95.9 FM is a classical music station on Block Island, Rhode Island.<br />
*[[http://whrb.org WHRB]] - WHRB 95.3 FM is a student-operated station at Harvard University (Cambridge, Massachusetts).<br />
*[[http://www.kpsq.org KPSQ-LP]] - KPSQ-LP 97.3 FM is a new (in 2016) [[wikipedia:LPFM|Low Power FM]] station in Fayetteville, AR<br />
*[[http://wdrt.org WDRT]] - WDRT 91.9 FM is a community radio station powered by 90+ volunteers in Viroqua, WI<br />
*[[http://www.kfai.org KFAI]] - KFAI 90.3 FM is a community radio station in Minneapolis/St Paul, MN<br />
*[[http://www.kmud.org KMUD]] - KMUD 91.1 Garberville, 88.1 Eureka, 90.3 Laytonville, 99.5 Shelter Cove is a community radio station in Northern CA<br />
*[[http://wnuc.org WNUC-LP]] - WNUC-LP 96.7 FM Detroit, MI is a community radio station in the North End neighborhood<br />
*[[https://www.graceradio.net/ KGCE-LP]] - KGCE-LP 107.9 FM Modesto, California &ldquo;GraceRadio&rdquo; is a Christian teaching and music station<br />
*[[https://www.wrfi.org/ WRFI]] - WRFI 88.1 FM Ithaca, 91.9 FM Watkins Glen, New York is Community Radio for Ithaca NY and the surrounding area<br />
<br />
====Pacifica====<br />
*[[http://www.countryradionetwork.com Country Radio]] - 87.7 FM Dunedin, New Zealand. (Since August 2008).<br />
*[[http://www.totalfm.nz Total FM]] - 107.3 FM Dunedin, New Zealand. (Since March 2012).<br />
<br />
====South America====<br />
*[[http://www.radio.ufscar.br Rádio UFSCar]] - 95.3 MHz Rádio UFSCar is a universitery radio station broadcasted from [http://ufscar.br UFSCar] Campus in São Carlos, São Paulo - Brazil.<br />
<br />
*[[http://www.sonidofm.net Sonido 104.3 FM]] - 104.3 MHz Sonido FM, is an Adult Contemporary Radio in San Carlos, Cojedes - Bolivarian Republic of Venezuela.<br />
<br />
*[[http://albaciudad.org Alba Ciudad 96.3 FM]] - 96.3 Mhz Alba Ciudad, A revolutionary cultural and socially oriented radio station in Caracas - Bolivarian Republic of Venezuela.<br />
<br />
*[[http://magicaradio.wordpress.com Mágica 106.3 FM]] - 106.3 Mhz FM Mágica, A communitary communicational project in Puerto Ayacucho, state of Amazonas - Bolivarian Republic of Venezuela.<br />
<br />
===Radio Station Chains===<br />
====North America====<br />
*[[http://www.worldradionetwork.org/ World Radio Network / Radio Cadena Manantial]] A Chain of not-for-profit radio stations along the USA/Mexico Border providing Christian programming in Spanish and English.<br />
**[[http://www.kbnj.org/ KBNJ-FM]] English station in Corpus Christi, TX (91.7)<br />
**[[http://www.kbnl.org/ KBNL-FM]] Spanish station in Laredo, TX (89.9)<br />
**KEPI-FM English Station in Eagle Pass, TX (88.7)<br />
**[[http://www.kepx.org/ KEPX-FM]] Spanish station in Eagle Pass, TX (89.5)<br />
**[[http://www.knog.org KNOG-FM]] Spanish station in Nogales, AZ (91.1) with translators in Tucson and Phoenix.<br />
**KRMB-FM Spanish station in Bisbee, AZ (90.1)<br />
**KRMC-FM Spanish station in Douglas, AZ (91.7)<br />
**[[http://www.kver.org/ KVER-FM]] Spanish station in El Paso, TX (91.1)<br />
**[[http://www.kvmv.org/ KVMV-FM]] English station in McAllen, TX (91.7)<br />
**[[http://www.kwrb.org/ KWRB-FM "The Spark FM"]] English station in Sierra Vista, AZ (90.9)<br />
**[[http://www.kyrmradio.org KYRM-FM]] Spanish station in Yuma, AZ (91.9)<br />
*[[http://www.familyfirstradio.com Family First Radio Network]] A Chain of not-for-profit radio stations providing Christian programming in English.<br />
**[[http://www.kaskradio.com KASK]] - KASK 91.5 FM is a Christian teaching and talk station in Vacaville, California.<br />
**[[http://www.kfhlradio.com KFHL]] - KFHL 91.7 FM is a Christian teaching and talk station in Bakersfield, California.<br />
**[[http://www.wgttradio.com WGTT]] - WGTT 91.5 FM is a Christian teaching and talk station in Esmeralda, Florida.<br />
**[[http://www.whfgradio.com WHFG]] - WHFG 91.3 FM is a Christian teaching and talk station in Lafayette, Louisiana.<br />
**[[http://www.wsjcradio.com WSJC]] - WSJC 810 AM is a Christian teaching and talk station in Magee, Mississippi.<br />
**[[http://www.wtcgradio.com WTCG]] - WTCG 870 AM is a Christian teaching and talk station in Mt Holly, North Carolina.<br />
*[[http://www.theclassicalstation.net World Classical Network]] A classical music radio network based in Hyannis, Massachusetts.<br />
* [[https://platteriverradio.com/ Platte River Radio]] a locally owned, locally managed media company in the Tri-Cities of Nebraska<br />
**[[https://platteriverradio.com/kliq/ KLIQ]] The Breeze 94.5 FM, the Tri-Cities Best Mix<br />
**[[https://platteriverradio.com/khas/ KHAS]] 1230 AM, Local news and sports for Hastings, NE<br />
**[[https://platteriverradio.com/kkpr/ KKPR]] Power 99, 98.9 FM, Classic Hits and High School Sports for the Tri-Cities<br />
**[[https://platteriverradio.com/espn/ KXPN/KICS]] Tri-Cities ESPN, 1460/1550 AM, ESPN local sports in the Tri-Cities<br />
<br />
===Shortwave Stations===<br />
====North America====<br />
*[[http://www.rfa.org RFA]] - RFA broadcasts news and information in nine native Asian languages to listeners who do not have access to full and free news media.<br />
<br />
===Internet Only Stations===<br />
====Europe====<br />
*[[http://www.icradio.com IC Radio]] - Student-run radio station of [http://www.imperial.ac.uk Imperial College London] (M-Audio Delta 1010).<br />
*[[http://www.autres-mondes.org Autres(M)Ondes]] - Ephemeral radio events performed around the Europe. Rivendell is the main component of our audio setup [http://www.flickr.com/photos/albanpeignier/6714170037 since 2004].<br />
*[[http://www.poliradio.it Poli.Radio]] - Amateur webradio promoted by the students from Politecnico di Milano, Italy.<br />
<br />
====North America====<br />
*[[https://www.mavradio.fm MavRadio]] - Student-run radio station of the [http://www.unomaha.edu University of Nebraska at Omaha].<br />
*[[http://www.birdnest.org/winr WINR]] - Student-run radio station at Winthrop University in Rock Hill, SC. Rivendell is in use currently on the weekends when live staff are not in the studio.<br />
*[[http://www.seahawkradio.com SMC Radio - The Hawk]] - St. Mary's College Radio, The Hawk is the student-run radio station at St. Mary's College of Maryland.<br />
*[[https://ocoochmountainmusic.com Ocooch Mountain Radio]] - Americana-focused independent station in the US Midwest.<br />
<br />
===Closed circuit / Low powered FM===<br />
====North America====<br />
*RadioPST - A closed-circuit French [[http://en.wikipedia.org/wiki/Sainte-Th%C3%A9r%C3%A8se,_Quebec Sainte-Thérèse]] high-school radio station fully automated with live interventions and live bands.<br />
*CLG2 89,9FM - [[http://fr.wikipedia.org/wiki/Coll%C3%A8ge_Lionel-Groulx Collège Lionel Groulx]] fully automated 24/7 low powered FM French radio station.</div>
DKlann
http://wiki.rivendellaudio.org/index.php?title=ChangeSummary&diff=567
ChangeSummary
2020-12-13T21:16:57Z
<p>DKlann: Add changes for version 3.5.0.</p>
<hr />
<div>__NOTOC__<br />
== Rivendell Change Summary ==<br />
<br />
This page contains version change descriptions in summary form for Rivendell versions released within at least the most recent five years (quite probably longer). Change descriptions are limited (mostly) to user-visible changes.<br />
<br />
Please see the [https://raw.githubusercontent.com/ElvishArtisan/rivendell/master/ChangeLog ChangeLog] and [https://github.com/ElvishArtisan/rivendell/blob/master/NEWS NEWS] files in the [https://github.com/elvishartisan/rivendell source code] for a complete list of changes and bug fixes.<br />
<br />
See the [https://github.com/elvishartisan/rivendell/issues Issues] list for current reported bugs, issues and feature requests.<br />
<br />
=== 3.5.0 (2020-12-12) ===<br />
* Database verson '''346'''<br />
* <font style="color:red">Bug fix</font>: Corrected the column settings in RDAdmin > Manage Hosts > [host] > Dropboxes<br />
* <font style="color:red">Bug fix</font>: Fixed regression with "Scheduler Code:" label overlapping "Group" combobox in rdlibrary(1)<br />
* <font style="color:red">Bug fix</font>: Fixed several bugs in rdadmin(1) that messed with passwords, user settings, and other important settings<br />
* <font style="color:red">Bug fix</font>: Fixed several bugs in rdlogmanager(1) that caused all kinds of mischief<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdairplay(1) where copying a log event using the &lsquo;Copy&rsquo; button would result in the new event always getting a &lsquo;PLAY&rsquo; transition<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rddbmgr(8) that could cause database corruption problems<br />
* <font style="color:red">Bug fix</font>: Fixed bugs in rdimport(1) that caused incorrect exit codes to be emitted when a non-existent group was specified, and that caused generation of double error messages when processing invalid audio files<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdmonitor(1) that caused false indications of a failed audio store when used with autofs(8)<br />
* <font style="color:green">Functionality</font>: Major overhaul of Rivendell&rsquo;s podcast handling features; see the ChangeLog for all the details<br />
* <font style="color:green">Functionality</font>: Modified the GVC7000 switcher driver to insert 50 mS pauses between protocol commands<br />
* <font style="color:green">Functionality</font>: Allow RN Macro to run when Rivendell daemons running as non-root<br />
* <font style="color:green">Functionality</font>: Many changes to rdadmin(1), including:<br />
:* Added whitespace to the set of banned characters for service names<br />
:* Added a &lsquo;SSH Ident. File&rsquo; control to the &lsquo;Host&rsquo; dialog<br />
:* Added an &lsquo;Inline Traffic Inheritance&rsquo; control to the &lsquo;Edit Service&rsquo; dialog<br />
:* Added type icons to the &lsquo;Imported Events&rsquo; list in the &lsquo;Test Import&rsquo; dialog<br />
:* Renamed the &lsquo;Inline Traffic Inheritance&rsquo; control to &lsquo;Inline Traffic Start/Length&rsquo; and moved it to the &lsquo;Music Data Import&rsquo; section of the &lsquo;Edit Service&rsquo; dialog<br />
:* Added an &lsquo;Encoder Profiles&rsquo; dialog<br />
:* Renamed the &lsquo;Note Cart String&rsquo; controls to &lsquo;Insert Marker String&rsquo; in the &lsquo;Edit Service dialog<br />
:* Added an &lsquo;Origin E-Mail Address&rsquo; control to the &lsquo;System-Wide Settings&rsquo; dialog<br />
:* Added a &lsquo;Notification E-Mail Addresses&rsquo; control to the &lsquo;Group&rsquo; dialog<br />
:* Added a &lsquo;Send e-mail reports&rsquo; checkbox to the &lsquo;Dropbox Configuration&rsquo; dialog<br />
:* Added &lsquo;E-Mail Address&rsquo;, &lsquo;Phone Number&rsquo; and &lsquo;Local Auth&rsquo; columns to the &lsquo;Users&rsquo; list in the &lsquo;Rivendell User List&rsquo; dialog<br />
:* Added an &lsquo;Administer RSS Feeds&rsquo; checkbox to the &lsquo;Administrative Rights&rsquo; section of the &lsquo;User&rsquo; dialog<br />
:* Added a deprecation warning for the &lsquo;Allow Duplicate Cart Titles&rsquo; and &lsquo;Auto-Correct Duplicate Cart Titles&rsquo; checkboxes on the &lsquo;System-Wide Settings&rsquo; dialog<br />
* <font style="color:green">Functionality</font>: Added support for FTPS protocol for uploading, downloading, and Feed management<br />
* <font style="color:green">Functionality</font>: Significant update to the Rivendell Web interfaces (Web API, WebGet service, rivwebcapi API, etc.)<br />
* <font style="color:green">Functionality</font>: Added &lsquo;--scheduler-code=&rsquo; switch to rdexport(1)<br />
* <font style="color:green">Functionality</font>: Added generation of an &lsquo;RDLogManager Error Report&rsquo; when errors are detected when importing an external scheduler file in rdlogmanager(1)<br />
* <font style="color:green">Functionality</font>: Restored operation of Label/Note carts in rdlogmanager(1)<br />
* <font style="color:green">Functionality</font>: Updated rdservice(8) to use standard exit code defines<br />
* <font style="color:green">Functionality</font>: Implemented the &lsquo;--verbose&rsquo; switch for rdmaint(8)<br />
* <font style="color:green">Functionality</font>: Added a sample Fail2Ban jail filter for the WebAPI in &lsquo;conf/rivendell-webapi.conf&rsquo;<br />
* <font style="color:green">Functionality</font>: Added command line options &lsquo;--output-pattern&rsquo;, &lsquo;--ticket=&rsquo;, &lsquo;--send-mail&rsquo; and &lsquo;--mail-per-file&rsquo; to rdimport(1)<br />
* <font style="color:green">Functionality</font>: Added the name of the import file to schedule import failure reports<br />
* <font style="color:orange">Documentation</font>: Documented the &lsquo;%%&rsquo; filepath wildcard in the Operations Guide<br />
* <font style="color:orange">Documentation</font>: Added an &lsquo;RDCastManager&rsquo; chapter to the Operations Guide<br />
* <font style="color:orange">Documentation</font>: Revised the &lsquo;Managing Services&rsquo; section of the Operations Guide<br />
* <font style="color:orange">Documentation</font>: Rewrote the &lsquo;Webget&rsquo; chapter of the Operations Guide to conform to changes in Webget<br />
* <font style="color:orange">Documentation</font>: Added a &lsquo;Configuring Webget&rsquo; section to the Operations Guide<br />
* <font style="color:orange">Documentation</font>: Removed the &lsquo;Cart Data Dump (fixed width)&rsquo; from the Operations Guide<br />
* <font style="color:orange">Documentation</font>: Documented user-facing changes to the &lsquo;System-Wide Settings&rsquo; dialog, the &lsquo;Rivendell Group List&rsquo; and the &lsquo;Group&rsquo; dialogs in rdadmin(1) in the Operations Guide<br />
* <font style="color:orange">Documentation</font>: Documented the &lsquo;Send e-mail reports&rsquo; checkbox in the &lsquo;Dropbox Configuration&rsquo; dialog in rdadmin(1) in the Operations Guide<br />
* <font style="color:blue">Code (internal) change</font>: Prepended &lsquo;RD_&rsquo; to the names of all common Javascript functions in &lsquo;web/common/utils.js&rsquo;<br />
* <font style="color:blue">Code (internal) change</font>: Added a &lsquo;webget&rsquo; subpackage to the &lsquo;make rpm&rsquo; target<br />
* <font style="color:blue">Code (internal) change</font>: Refactored the &lsquo;Run Script&rsquo; [&rsquo;RN&rsquo;] RML to invoke scripts via the system shell, this change also removed the dependency on runuser(1)<br />
<br />
=== 3.4.1 (2020-07-21) ===<br />
* Database verson '''317'''<br />
<br />
* <font style="color:green">Functionality</font>: Added a &lsquo;Results Report&rsquo; report in rdadmin(1)<br />
* <font style="color:green">Functionality</font>: Removed the checkbox from the &lsquo;Delete&rsquo; right-click menu item in the &lsquo;Edit Event&rsquo; dialog in rdlogmanager(1)<br />
* <font style="color:green">Functionality</font>: Modified &lsquo;RDWaveFile&rsquo; to work around known fencepost errors in WAV files generated by "Sonic Studio soundBlade" by "PME Mastering, Inc."<br />
* <font style="color:green">Functionality</font>: Modified the &lsquo;Edit Event&rsquo; dialog in rdlogmanager(1) to show &lsquo;[auto]&rsquo; as the transition type for the leading event in Pre-/Post-Import lists<br />
<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdlibrary(1) that caused cuts to be incorrectly sorted when scheduled &lsquo;By Specified Order&rsquo;<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in the Rivendell command line apps that caused value-only arguments containing &lsquo;=&rsquo; characters to be incorrectly parsed<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in the Podcast Manager, Library Exporter and Web API that caused an error when processing multipart-mime submissions containing &lsquo;=&rsquo; characters<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdairplay(1) where attempting to audition an audio cart with a disabled cue output would crash the application<br />
* <font style="color:red">Bug fix</font>: Fixed a regression in rdairplay(1) that caused the &lsquo;Forced Segue&rsquo; setting in rdadmin(1) to be ignored when executing an event with a hard start attribute<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdairplay(1) where a paused event could not be removed by dropping the empty cart on it<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdairplay(1) that cause incorrect pie timer indications after adding or deleting events to a running log<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdlibrary(1) that would cause a crash when attempting to delete a range of cuts, one of which was in the clipboard<br />
* <font style="color:red">Bug fix</font>: Fixed a math bug in rdairplay(1) that caused the estimated stop-down times in the post point widget to be incorrect after adding or removing events from a running log<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdadmin(1) that made it impossible to enter useful strings in the &lsquo;WaveForm Caption&rsquo; control on the &lsquo;Edit RDLogEdit&rsquo; dialog<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in RDRenderer that caused segue transitions to be rendered without regard to the &lsquo;No Fade on Segue Out&rsquo; checkbox in the &lsquo;Edit Audio&rsquo; dialog<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in ripcd(8) that caused connections to ModbusTCP devices to fail to be properly restored by the connection watchdog<br />
* <font style="color:red">Bug fix</font>: Fixed a regression in the &lsquo;Edit Event&rsquo; dialog in rdlogmanager(1) that caused the first cart transition type to be incorrect when the &lsquo;Pre-Import Carts&rsquo; list was populated<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in the &lsquo;Add Next&rsquo; [&rsquo;PX&rsquo;] RML that failed to return an error when an invalid offset value was supplied<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in the &lsquo;Add Next&rsquo; [&rsquo;PX&rsquo;] RML that failed to honor the &lsquo;Default Trans. Type&rsquo; setting in the &lsquo;Configure RDAirPlay&rsquo; dialog in rdadmin(1)<br />
<br />
=== 3.4.0 (2020-05-19) ===<br />
* Database verson '''317'''<br />
* <font style="color:red">Bug fix</font>: Fixed a regression in rdairplay(1) that caused two events to be started by a single spacebar tap if a SoundPanel event had been played previously<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdlogmanager(1) that caused the initial event in an imported set to fail receive the proper time and transition type if the &lsquo;Include Import Markers in Finished Logs&rsquo; checkbox in rdadmin(1) had not been ticked<br />
* <font style="color:red">Bug fix</font>: Fixed a regression in rdexport(1) that caused exported file names to be constructed improperly<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdlogmanager(1) that caused &lsquo;Make Post Point&rsquo; label to be displayed without last &lsquo;t&rsquo;<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdairplay(1) where timer was not set properly when crossing midnight<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in the &lsquo;List GPIs&rsquo; dialog in rdadmin(1) that prevented changes in GPI assignments from being propagated to the underlying device<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in the &lsquo;Software Authority&rsquo; driver that caused autodetection of the number of GPIOs in a router to be unreliable<br />
* <font style="color:red">Bug fix</font>: Fixed a regression in &lsquo;RDEventLine&rsquo; that caused the &lsquo;Append Log&rsquo; [&rsquo;AL&rsquo;] RML to append a copy of the currently loaded log instead of the one specified in the RML command<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdlogedit(1) that caused garbled text to appear when &lsquo;Start Immediately&rsquo; was selected in the &lsquo;Edit Log Entry&rsquo; dialog box<br />
* <font style="color:red">Bug fix</font>: Fixed a regression that broke the ability to scroll through Sound Panel panels by means of the mouse wheel<br />
<br />
* <font style="color:green">Functionality</font>: Modified rdairplay(1) to always scroll log to the top when using the hour selector<br />
* <font style="color:green">Functionality</font>: Modified rdlogmanager(1) to disable merge buttons if the selected log does not contain any import links<br />
* <font style="color:green">Functionality</font>: Modified rdadmin(1) Edit Service dialog to display built-in traffic and music import template values<br />
* <font style="color:green">Functionality</font>: Added "Copy To Custom" buttons to rdadmin(1) Edit Service dialog<br />
* <font style="color:green">Functionality</font>: Changed the layout of the &lsquo;Editing Event&rsquo; dialog in rdlogmanager<br />
<br />
* <font style="color:green">Functionality</font>: Removed the &lsquo;Post Point&rsquo; checkbox from the &lsquo;Editing Event&rsquo; dialog in rdlogmanager(1)<br />
* <font style="color:green">Functionality</font>: Renamed the &lsquo;REMARKS&rsquo; field to &lsquo;USER NOTES&rsquo; in the &lsquo;Editing Event&rsquo; and the &lsquo;Edit Clock&rsquo; dialogs in rdlogmanager(1)<br />
* <font style="color:green">Functionality</font>: Added a &lsquo;Trans&rsquo; column to the event list in the &lsquo;Edit Clock&rsquo; and the &lsquo;List Events&rsquo; dialogs in rdlogmanager(1)<br />
<br />
=== 3.3.0 (2020-03-16) ===<br />
* Database verson '''314'''<br />
* <font style="color:red">Bug fix</font>: Fixed regressions in the following switcher drivers that could cause deadlocks and intermittent operation<br />
:* BroadcastTools SS16.4<br />
:* BroadcastTools SS 4.2<br />
:* BroadcastTools SS4.4<br />
:* BroadcastTools SS 8.2<br />
:* BroadcastTools ACS8.2<br />
:* BroadcastTools ADMS 44.22<br />
:* BroadcastTools GPI-16<br />
:* BroadcastTools SRC-16<br />
:* BroadcastTools SRC-8 III<br />
:* BroadcastTools SS 4.1 MLR<br />
* <font style="color:red">Bug fix</font>: Fixed a regression in the implementation of the &lsquo;Set Serial Trap&rsquo; [&lsquo;SI&rsquo;] RML that could cause deadlocks and intermittent operation<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdairplay(1) that could cause random segfaults when updating the Label Widget<br />
* <font style="color:red">Bug fix</font>: Fixed a bug with the &lsquo;%y&rsquo; metadata wildcard where garbage would be returned if a valid year had not been set<br />
* <font style="color:red">Bug fix</font>: Fixed a regression in rdlogmanager(1) that caused trailer whitespace to be generated in the &lsquo;EXT_DATA&rsquo;, &lsquo;EXT_EVENT&rsquo;, &lsquo;EXT_ANNC_TYPE&rsquo; and &lsquo;EXT_CART_NAME&rsquo; log fields when importing from a CounterPoint format log<br />
* <font style="color:red">Bug fix</font>: Fixed the layout of the &lsquo;Matching Carts&rsquo; field in rdlibrary(1)&rsquo;s main window when Realtime Filtering is disabled<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdairplay(1) that would cause a hard-timed log event with a &lsquo;wait&rsquo; parameter set to attempt to play the event twice<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rddbmgr(8) that threw a SQL error when attempting to modify a DB containing tables set to use character set UTF-8 to schema 297<br />
* <font style="color:red">Bug fix</font>: Fixed a race in ripcd(8) that caused arguments to the &lsquo;Run Shell Command&rsquo; [&lsquo;RN&rsquo;] macro to be corrupted<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in the &lsquo;Edit Event&rsquo; dialog in rdlogmanager(1) that caused the Transition Type dropdown to be greyed-out when the &lsquo;IMPORT&rsquo; controls were set to use the built-in music scheduler<br />
* <font style="color:green">Functionality</font>: Added a &lsquo;delta-seconds&rsquo; modifier to Filepath Wildcards to enable positive and negative time offsets<br />
* <font style="color:green">Functionality</font>: Removed support for CD-TEXT from the CD rippers<br />
* <font style="color:green">Functionality</font>: Added support for &lsquo;MusicBrainz&rsquo; CD metadata lookup<br />
* <font style="color:green">Functionality</font>: Added a &lsquo;Web Browser&rsquo; control to the &lsquo;Edit Host&rsquo; dialog in rdadmin(1)<br />
* <font style="color:green">Functionality</font>: Added support for displaying cover art in the MusicBrainz release chooser<br />
* <font style="color:green">Functionality</font>: Added &lsquo;%wm&rsquo; [&lsquo;MusicBrainz Recording ID&rsquo;] and &lsquo;%wr&rsquo; [&lsquo;MusicBrainz Release ID&rsquo;] metadata wildcards<br />
* <font style="color:green">Functionality</font>: Implemented the &lsquo;%wm&rsquo; [&lsquo;MusicBrainz Recording ID&rsquo;] and &lsquo;%wr&rsquo; [&lsquo;MusicBrainz Release ID&rsquo;] metadata wildcards for PyPAD<br />
* <font style="color:green">Functionality</font>: Added support for the &lsquo;%wi&rsquo;, &lsquo;%wm&rsquo; and &lsquo;%wr&rsquo; wildcards to the &lsquo;--metadata-pattern=&rsquo; switch in rdimport(1)<br />
* <font style="color:green">Functionality</font>: Added &lsquo;--set-string-isrc&rsquo;, &lsquo;--set-string-recording-mbid&rsquo; and &lsquo;--set-string-release-mbid&rsquo; switches to rdimport(1)<br />
* <font style="color:green">Functionality</font>: Added support for the &lsquo;%wi&rsquo;, &lsquo;%wm&rsquo; and &lsquo;%wr&rsquo; wildcards to the &lsquo;--metadata-pattern=&rsquo; switch in rdexport(1)<br />
* <font style="color:green">Functionality</font>: Added a &lsquo;%wc&rsquo; [&lsquo;Industry Standard Commercial Identification (ISCI) Code&rsquo;] metadata wildcard<br />
* <font style="color:green">Functionality</font>: Implemented the &lsquo;%wc&rsquo; metadata wildcard for PyPAD<br />
* <font style="color:green">Functionality</font>: Added support for the &lsquo;%wc&rsquo; wildcards to the &lsquo;--metadata-pattern=&rsquo; switch in rdimport(1)<br />
* <font style="color:green">Functionality</font>: Added &lsquo;--set-string-isci&rsquo; switch to rdimport(1)<br />
* <font style="color:green">Functionality</font>: Added support for the &lsquo;%wc&rsquo; wildcard to the &lsquo;--metadata-pattern=&rsquo; switch in rdexport(1)<br />
* <font style="color:green">Functionality</font>: Removed the &lsquo;RDLabel&rsquo; widget<br />
* <font style="color:green">Functionality</font>: Added a &lsquo;Disconnect All Jack Ports&rsquo; [&lsquo;JZ&rsquo;] RML<br />
* <font style="color:green">Functionality</font>: Added a &lsquo;CounterPoint Traffic Reconciliation v2&rsquo; report<br />
<br />
=== 3.2.1 (2020-01-24) ===<br />
* Database verson '''311'''<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdcatch(1) that threw a SQL error when clicking 'OK' on the &lsquo;Edit Cart Event&rsquo; dialog<br />
* <font style="color:red">Bug fix</font>: Fixed a regression in rdimport(1) that caused null characters to be written to cart metadata fields when importing files containing an &lsquo;AIR1&rsquo; RIFF chunk<br />
* <font style="color:red">Bug fix</font>: Fixed a regression in rdcatch(1) that caused the &lsquo;Source&rsquo; dropdown in the &lsquo;Edit Recording&rsquo; dialog to fail to be populated properly<br />
* <font style="color:red">Bug fix</font>: Fixed a regression in the cart selector dialog that caused default focus to be lost on the &lsquo;Filter&rsquo; control after second and subsequent invocations<br />
* <font style="color:red">Bug fix</font>: Fixed a regression in rdcatchd(8) that broke audio metering<br />
* <font style="color:red">Bug fix</font>: Fixed a regression in rdcatchd(8) that could cause download events to hang in an active state<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdcatch(1) that caused DOW flags to fail to be updated correctly on the event list after making a change<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdcatchd(8) that failed to send a MODIFY notification at the end of a Record or Download event<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdconvert that caused a segfault at startup<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdexport(1) that caused output filenames containing multi-byte UTF-8 characters to be corrupt<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdgpimon(1) that caused GPIO cart displays to fail to accurately reflect current state<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdgpimon(1) that caused incorrect state indications to be displayed after switching to a different page<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdimport(1) that caused non-Latin1 characters to be corrupted when using standard input<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdimport(1) that caused UTF-8 multibyte characters in filenames to be corrupted<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdlogmanager(1) that caused spurious log events to be inserted when generating a log<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in ripcd(8) that caused input and output counts to be calculated incorrectly for Software Authority protocol devices containing holes in the input and/or output lists<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in the &lsquo;pypad-shoutcast1.py&rsquo; script that threw an exception when processing PAD containing multi-type UTF-8 characters<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in the &lsquo;pypad_xds.py&rsquo; PyPAD script that could cause it to emit duplicate CIC updates<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in the &lsquo;rivwebcapi&rsquo; validate_tm() function that caused dates containing &lsquo;29 February&rsquo; to always fail regardless of leap-year validity<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in the rdxport service that could cause MODIFY notifications to fail to be sent by the &lsquo;SaveLog&rsquo; WebAPI call<br />
* <font style="color:red">Bug fix</font>: Fixed a regression in rdadmin(1) that caused controls to be hidden in the &lsquo;Edit Report&rsquo; dialog<br />
* <font style="color:red">Bug fix</font>: Fixed a regression in rdlogmanager(1) that caused incorrect logged start times to be generated for imported events<br />
* <font style="color:red">Bug fix</font>: Fixed a regression in the rdxport service that caused the ListCuts WebAPI call to return corrupt data<br />
* <font style="color:red">Bug fix</font>: Fixed a regression in the Web API that caused the and/or corrupt in served XML documents<br />
* <font style="color:green">Functionality</font>: Implemented support for non-realtime library filtering in the &lsquo;Editing Event&rsquo; dialog in rdlogmanager(1)<br />
* <font style="color:green">Functionality</font>: Added a &lsquo;Show Start Time As&rsquo; control to the &lsquo;Edit Log&rsquo; dialog in rdlogedit(1)<br />
* <font style="color:green">Functionality</font>: Made the rdlogedit(1) main window and &lsquo;Edit Log&rsquo; dialog window sizes persistent<br />
* <font style="color:green">Functionality</font>: Added a work-around in the &lsquo;PyPAD.Receiver().__openDb()&rsquo; method to work with versions of MySQLdb that do not support the &lsquo;password=&rsquo; parameter in &lsquo;MySQLdb.connect()&rsquo;<br />
* <font style="color:green">Functionality</font>: Added &lsquo;Repetitions=&rsquo; and &lsquo;RepetitionDelay=&rsquo; directive to the configuration of the &lsquo;pypad_xds.py&rsquo; PyPAD script<br />
* <font style="color:green">Functionality</font>: Added &lsquo;Username=&rsquo; and &lsquo;Password=&rsquo; directives to the &lsquo;pypad_httpget.py&rsquo; script for use for HTTP Basic Authentication<br />
* <font style="color:green">Functionality</font>: Added the ability to view a report at time of generation in rdlogmanager(1)<br />
* <font style="color:green">Functionality</font>: Adjusted the position of the &lsquo;Matching Carts&rsquo; readout on the main window of rdlibrary(1)<br />
* <font style="color:green">Functionality</font>: Changed the &lsquo;Time&rsquo; column in the &lsquo;Full Log Widget&rsquo; in rdairplay(1) to &lsquo;Sch. Time&rsquo;<br />
* <font style="color:green">Functionality</font>: Implemented a work-around for importing CartChunk data containing a buggy ENCO implemention of the &lsquo;AUD&rsquo; CartChunk timer<br />
* <font style="color:green">Functionality</font>: Modified the Full Log widget in rdairplay(1) to display logged start times even when the referenced cart does not exist<br />
* <font style="color:green">Functionality</font>: Tweaked the &lsquo;LogLineBox::mouseMoveEvent()&rsquo; method in rdairplay(1) to require a cursor movement of at least 20 pixels before generating a cart drag<br />
<br />
=== 3.2.0 (2019-10-31) ===<br />
* Database verson '''311'''<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rddbmgr(8) that caused a segfault when processing a SQL error<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdimport(1) that caused it to throw an exception when given a &lsquo;--metadata-pattern&rsquo; of less than three characters<br />
* <font style="color:red">Bug fix</font>: Fixed a regression in rdimport(1) that caused a segfault when invoked with the &lsquo;--metadata-pattern&rsquo; and &lsquo;--log-syslog&rsquo; switches<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdairplay(1) that caused space bar presses to start the next event in the Main Log even when &lsquo;Space Bar Action&rsquo; was set to &lsquo;None&rsquo;<br />
* <font style="color:red">Bug fix</font>: Fixed bugs in 'RDWaveFile' that caused strings of null characters to be written into unfilled CartChunk string fields<br />
* <font style="color:red">Bug fix</font>: Fixed a regression in 'rdxport.cgi' that caused a check of the Rivendell services to be triggered each time a WebAPI function was invoked<br />
* <font style="color:red">Bug fix</font>: Fixed a regression in rdsoftkeys(1) that threw a segfault at startup<br />
* <font style="color:green">Functionality</font>: Added the ability to configure the caption displayed for the first and third voicetrack waveforms in the Voicetracker dialog in rdlogedit(1)<br />
* <font style="color:green">Functionality</font>: Reworked the font management system to permit the fonts used in the UI to be specified in rd.conf(5).<br />
* <font style="color:green">Functionality</font>: Added support for posting podcast content via SFTP<br />
* <font style="color:orange">Documentation</font>: Added manual pages for rd.conf(5) and rdsoftkeys(1)<br />
<br />
=== 3.1.0 (2019-09-19) ===<br />
* Database verson '''310'''<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdairplay(1) and rdvairplayd(8) where only the first log machine set to &lsquo;load specified log&rsquo; would do so<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdlogedit(1) that caused hard start log items to have the Hour field doubled<br />
* <font style="color:red">Bug fix</font>: Refactored the Python &lsquo;pypad.Update.shouldBeProcessed()&rsquo; method to work correctly when using <tt>try:</tt> blocks in a PyPAD script<br />
* <font style="color:red">Bug fix</font>: Refactored the PyPAD scripts to route updates properly in accordance with log directives in their configuration file<br />
* <font style="color:red">Bug fix</font>: Fixed a bug that broke dropbox logging to individual files<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in caed(8) that broke timescaling support<br />
* <font style="color:red">Bug fix</font>: Fixed bugs in rdlibrary(1) that broke CD ripping<br />
* <font style="color:green">Functionality</font>: Refactored rdalsaconfig(1) to be more robust and intuitive<br />
* <font style="color:green">Functionality</font>: Added a &lsquo;pypad_httpget.py&rsquo; PyPAD script<br />
* <font style="color:green">Functionality</font>: Updated CDDB code to use protocol level 6 (UTF-8 enabled)<br />
* <font style="color:green">Functionality</font>: Added an &lsquo;%l&rsquo; wildcard to Filepath Wildcards for &lsquo;unpadded month&rsquo;<br />
=== 3.0.3 (2019-08-05) ===<br />
* Database verson '''308'''<br />
* <font style="color:red">Bug fix</font>: Fixed a regression in ripcd(8) that broke the 'Connect Jack Ports' ['JC'] and 'Disconnect Jack Ports' ['JD'] RMLs<br />
=== 3.0.2 (2019-07-31) ===<br />
* Database verson '''308'''<br />
* <font style="color:red">Bug fix</font>: Fixed a problem with the Local Audio Adapter switcher driver that caused incorrect operation with the 'Switch Add' ['SA'], 'Switch Remove' ['SR'] and 'Switch Take' ['ST'] RMLs<br />
* <font style="color:red">Bug fix</font>: Fixed a regression in rdlibrary(1) that caused macro carts entries to turn red after being viewed<br />
* <font style="color:red">Bug fix</font>: Fixed regressions that made operations with serial devices unreliable<br />
* <font style="color:green">Functionality</font>: Added support for switchers using the Grass Valley 7000 series protocol<br />
=== 3.0.1 (2019-07-16) ===<br />
* Database verson '''308'''<br />
* <font style="color:red">Bug fix</font>: Rivendell is now Unicode UTF-8 clean<br />
* <font style="color:red">Bug fix</font>: Qt4 is now used throughout Rivendell instead of Qt3<br />
* <font style="color:green">Functionality</font>: The Rivendell Loadable Modules system for processing PAD data has been completely replaced by PyPAD, allowing PAD processing plug-ins to be written in the popular Python scripting langauge. Backward compatible replacement scripts for many of the RLM plug-ins supplied in Rivendell v2.x are included<br />
* <font style="color:green">Functionality</font>: Added a compatibility library to facilitate the use of the Rivendell Web API in external applications<br />
* <font style="color:green">Functionality</font>: A system of virtual log machines has been added, allowing play-out of up to 23 logs simultaneously<br />
* <font style="color:green">Functionality</font>: Rivendell is now fully systemd compatibile<br />
* <font style="color:green">Functionality</font>: The Windows ports of rdlogedit(1) and rdlogmanager(1) have been removed<br />
* <font style="color:orange">Documentation</font>: The Rivendell Operations and Administration Guide has been updated and enhanced with more details about running a Rivendell system<br />
* <font style="color:orange">Documentation</font>: New manual pages have been added for Rivendell command that previously did not have them<br />
See [http://caspian.paravelsystems.com/pipermail/rivendell-dev/2019-July/027867.html this message] on the Rivendell Dev mailing list for more details about installing and upgrading Rivendell.<br />
=== 2.19.3 (2018-10-31) ===<br />
* Database verson '''275'''<br />
* <font style="color:red">Bug fix</font>: Fixed a bug that caused the &lsquo;Switcher Matrix&rsquo; and &lsquo;Switcher Output&rsquo; dropdowns to populate incorrect values when selecting a non-local &lsquo;Switcher Host&rsquo; in the &lsquo;Configure RDCatch&rsquo; dialog in rdadmin(1)<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdlogmanager(1) that caused the initial transition type specified in the &lsquo;IMPORT&rsquo; section of the &lsquo;Editing Event&rsquo; dialog to be applied to both the parent log link and the first imported event when the &lsquo;PRE-IMPORT CARTS&rsquo; list was empty and no Timed Start was enabled<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in ripcd(8) that caused process of the &lsquo;Air Gate&rsquo; [&lsquo;AG&rsquo;] RML to fail<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdimport(1) that would throw a spurious SQL error when using the &lsquo;--to-cart=&rsquo; switch with an already existing cart [Issue #000217]<br />
* <font style="color:red">Bug fix</font>: Fixed a regression that caused rdimport(1) to return a &lsquo;no free carts available in specified group&rsquo; when invoked without the &lsquo;--to-cart=&rsquo; option<br />
* <font style="color:red">Bug fix</font>: Fixed a regression in rdairplay(1) that caused carts Added or Copied to a log to have a PLAY transition regardless of the default transition type set in rdadmin(1)<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in &lsquo;RDTextValidator&rsquo; that failed to catch banned characters added to the interior of existing strings<br />
* <font style="color:red">Bug fix</font>: Various other bugs fixed<br />
* <font style="color:green">Functionality</font>: Added a &lsquo;TranscodingDelay=&rsquo; parameter to the &lsquo;[Tuning]&rsquo; section of rd.conf(5)<br />
* <font style="color:green">Functionality</font>: Added a Switcher/GPIO driver for the BroadcastTools SS 2.1 switcher<br />
* <font style="color:green">Functionality</font>: Added support for GPIO on AudioScience adapters to the 'Local Audio Adapter' Switcher/GPIO driver<br />
* <font style="color:green">Functionality</font>: Renamed the 'Add Next' ['PX'] RML to 'Insert Cart' ['PX'] and added two optional arguments to allow specification of the insertion position and transition type<br />
* <font style="color:green">Functionality</font>: Added support for Spinitron v2 to the 'spinitron_plus' RLM<br />
* <font style="color:green">Functionality</font>: Added an &lsquo;ExportedFileMode=&rsquo; parameter to the &lsquo;[Tuning]&rsquo; section of rd.conf(5) to permit permission mode of exported audio files to be specified<br />
* <font style="color:orange">Documentation</font>: Documented GPIO support for AudioScience cards in the &lsquo;Local Audio Adapter&rsquo; section of the Operations Guide<br />
<br />
=== 2.19.2 (2018-04-14) ===<br />
* Database verson '''275'''<br />
* <font style="color:red">Bug fix</font>: Fixed a regression in the HPI support layer that broke audio capture with adapters lacking DMA bus-mastering support<br />
<br />
=== 2.19.1 (2018-03-27) ===<br />
* Database verson '''275'''<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdlogmanager(1) that caused DB corruption when a clock was deleted while still being assigned to a grid.<br />
* <font style="color:green">Functionality</font>: Implemented support for DMA bus-mastering for AudioScience HPI devices. This release supports the latest ASI cards that require DMA bus-mastering support. You may also need to update the hpklinux driver to v4.20.10 or later. RPMs for CentOS 7 are available at [http://static.paravelsystems.com/audioscience/centos/7/ Paravel&rsquo;s website].<br />
* <font style="color:green">Functionality</font>: Removed rdhpiinfo(8). Replaced by the stand-alone &lsquo;hpiinfo&rsquo; package.<br />
* <font style="color:green">Functionality</font>: Removed the event time check for Playout events in rdcatch(1), as there is no sane way to determine a consistently &lsquo;free&rsquo; playout time in the face of shifting cut lengths.<br />
<br />
=== 2.19.0 (2018-02-22) ===<br />
* Database verson '''275'''<br />
* <font style="color:red">Bug fix</font>: Fixed a bug in rdlibrary(1) that caused evergreen carts/cuts to fail to be highlighted in the correct color<br />
* <font style="color:green">Functionality</font>: Added the ability to specify automatic log deletion on the basis of either the Creation Date or Air Date of the log<br />
* <font style="color:green">Functionality</font>: Log Importation Changes. Changed music and traffic importation so that parent link events are still visible in linked logs<br />
* <font style="color:green">Functionality</font>: Log Locking: implemented a system-wide protocol to prevent changes made to a log on one host from being inadvertently overwritten from another host<br />
<br />
=== 2.18.2 (2017-12-29) ===<br />
* Database version '''272'''<br />
* <font style="color:red">Bug fix</font>: Fixed a bug that caused creation of new clocks in rdlogmanager(1) to fail to initialize music scheduler components correctly in the database<br />
<br />
=== 2.18.1 (2017-12-22) ===<br />
* Database version '''272'''<br />
* <font style="color:red">Bug fix</font>: Fixed a bug that caused creation and initialization of a new Rivendell database to fail<br />
<br />
=== 2.18.0 (2017-12-21) ===<br />
* Database version updated to '''272'''<br />
* <font style="color:red">Bug fix</font>: Various bug fixes. See the [https://github.com/ElvishArtisan/rivendell/blob/stable/ChangeLog ChangeLog] for details<br />
* <font style="color:green">Functionality</font>: Group Cut Expiration Policy: Added the ability to set a default End Date/Time for new cuts on a per-group basis<br />
* <font style="color:green">Functionality</font>: Host Short Name: Added a ''Short Name'' parameter to Host profiles<br />
* <font style="color:green">Functionality</font>: Macro Carts: It is now possible to use filepath wildcards in macro carts<br />
* <font style="color:green">Functionality</font>: New Host Wildcards: Added two host wildcards: ''%r'' for ''Rivendell Host Name, and ''%R'' for ''Rivendell Short Name''<br />
* <font style="color:green">Functionality</font>: Provisioning Support: Added four new directives and to the ''[Provisioning]'' section of ''/etc/rd.conf''<br />
* <font style="color:green">Functionality</font>: MySQL Configuration: Added three parameters to the ''[mySQL]'' section of ''/etc/rd.conf''<br />
* <font style="color:green">Functionality</font>: Dropbox Enhancements: Added the ability to specify creation of default Segue Markers when processing files via dropbox<br />
* <font style="color:green">Functionality</font>: '''RDImport'''/DropBox Enhancements: Added the ability to specify start and end datetimes via metadata pattern<br />
* <font style="color:green">Functionality</font>: '''RDCatch''' Event Filtering: Added the ability to filter by event type in '''RDCatch'''<br />
* <font style="color:green">Functionality</font>: Log Searching: A search filter (similar to that employed for seaching for carts) has been added to the List Logs dialogs<br />
* <font style="color:green">Functionality</font>: Service Filtering in '''RDLogEdit''': Added the ability to limit the visible set of logs in RDLogEdit by user<br />
* <font style="color:green">Functionality</font>: Log Purge/Deletion Changes: Logs created manually (in rdlogedit(1) or rdairplay(1)) are now assigned a default purge/deletion date in accordance with the setting in RDAdmin->ManageServices<br />
* <font style="color:green">Functionality</font>: Log Importation Changes: Changed music and traffic importation so that parent link events are still visible in linked logs<br />
* <font style="color:green">Functionality</font>: Web API Changes: Added &lsquo;FILTER&rsquo; and &lsquo;RECENT&rsquo; call parameters to the &lsquo;ListLogs&rsquo; Web API call<br />
* <font style="color:orange">Documentation</font>: Documentation Overhaul: The Rivendell Operations and Administration Guide has been exapanded and incorporated as part of the base Rivendell source in ''docs/opsguide''. This guide is available as a separate CentOS package: ''rivendell-opsguide''<br />
* <font style="color:orange">Documentation</font>: Rivendell APIs: The various application programming interfaces (notably the web API) is now documented and is included with the standard distribution<br />
<br />
=== 2.17.0 (2017-10-11) ===<br />
* Database version updated to '''268'''<br />
* <font style="color:red">Bug fix</font>: Web API: Many fixes and enhancements to improve operation<br />
* <font style="color:red">Bug fix</font>: Many other bug fixes; see the [https://github.com/ElvishArtisan/rivendell/blob/stable/ChangeLog ChangeLog] for all the details (search for ''2.17.0'' and work your way backward through the list of changes)<br />
* <font style="color:green">Functionality</font>: Dropboxes: Added the ability to force imports to be imported as mono, also added the ability to reset individual dropboxes<br />
* <font style="color:green">Functionality</font>: New Switcher/GPIO Devices: Support has been added for the following Switcher/GPIO devices:<br />
:* Broadcast Tools Universal 4.1 MLR&gt;&gt;Web Switcher<br />
:* WheatNet LIO<br />
:* WheatNet SLIO<br />
* <font style="color:green">Functionality</font>: Macros: Added the &lsquo;Air Gate&rsquo; &#91;&lsquo;AG&rsquo;&#93; RML to permit conditional execution of RML on the basis of the status of the On-Air flag<br />
* <font style="color:green">Functionality</font>: <br />
* <font style="color:green">Functionality</font>: User Authentication: It is now possible to configure RDLogin to require entry of the user-name, rather than picking the name off of a list. See the &lsquo;Show User List in RDLogin&rsquo; checkbox in RDAdmin-&gt;SystemSettings<br />
* <font style="color:green">Functionality</font>: Log Rendering (EXPERIMENTAL): It is now possible to &lsquo;render&rsquo; a log as a single audio object (file or cart/cut) without the need to play it out while capturing the audio in realtime. Render support is available through the &lsquo;Render&rsquo; button in RDLogEdit and through the command-line rdrender(1) utility. See the rdrender(1) man page for details<br />
* <font style="color:green">Functionality</font>: Provisioning Support. Added a [Provisioning] section to rd.conf(5) with directives to facilitate the automatic provisioning of Rivendell instances. See the comments in the [Provisioning] section of the sample rd.conf(5) file<br />
* <font style="color:orange">Artwork</font>: New Icons: Implemented a new icon set, with individualized icons for each Rivendell module<br />
<br />
=== 2.16.0 (2017-06-02) ===<br />
* Database version updated to '''263'''<br />
* <font style="color:red">Bug fix</font>: Many bug fixes; see the [https://github.com/ElvishArtisan/rivendell/blob/stable/ChangeLog ChangeLog] for all the details (search for ''2.16.0'' and work your way backward through the list of changes)<br />
* <font style="color:green">Functionality</font>: Audio Store Hashing. Rivendell now automatically generates a SHA1 hash for each file in the audio store and records this value in the database, thus permitting automated recovery of audio in the event of loss or damage to the audio store's filesystem directory<br />
* <font style="color:green">Functionality</font>: Added switcher support for Kernel GPIO devices, such as the GPIO interface on the Raspberry Pi 2 and 3<br />
* <font style="color:green">Functionality</font>: Added switcher support for Modbus TCP devices<br />
* <font style="color:green">Functionality</font>: Added an rdconvert(1) utility<br />
* <font style="color:green">Functionality</font>: It is now possible to delegate authentication of Rivendell users by means of a PAM module, thus permitting &lsquo;''single sign-on''&rsquo; integration with systems such as ActiveDirectory and FreeIPA<br />
* <font style="color:green">Functionality</font>: Added various methods to the Rivendell Web API to permit integration with external audio and log editors<br />
<br />
=== 2.15.3 (2017-03-24) ===<br />
* Database version '''259''' <br />
* <font style="color:red">Bug fix</font>: Fixed bugs in MP3 file importation that caused files with variable bit rate (VBR) to be truncated during import.<br />
* <font style="color:red">Bug fix</font>: Fixed a bug that caused dynamically loaded codec libraries to fail to be detected if the corresponding library&rsquo;s so-called ''-devel'' package was not installed. <br />
* <font style="color:green">Functionality</font>: Added an ''RLM'' for generating [http://tagstation.com/ TagStation] RLM events for [http://nextradioapp.com/ NextRadio].<br />
* <font style="color:green">Functionality</font>: Added '''AddLog''', '''DeleteLog''' and '''SaveLog''' calls to the web API, along with general cleanup and correction of the overall Web API subsystem.<br />
<br />
=== 2.15.2 (2017-01-13) ===<br />
* Database version '''259'''<br />
* <font style="color:orange">Documentation</font>: Document the interfaces for '''inserting inline traffic breaks''' and for '''inserting voice track markers''' (also add an example in ''docs/examples/'')<br />
* <font style="color:red">Bug fix</font>: in ''rdadmin/createdb.cpp'' that caused obsolete fields in the 'SERVICES' table to be included when creating a new database.<br />
* <font style="color:red">Bug fix</font>: in ''lib/rdwavefile.cpp'' that caused RDXL chunks to be written with odd chunk lengths.<br />
* <font style="color:red">Bug fix</font>: in ''lib/rdsimpleplayer.cpp'' that caused RDAirPlay to freeze when attempting to audition an expired cart.<br />
* <font style="color:green">Functionality</font>: Added a '''LockRdairplayMemory=''' parameter to the [Hacks] section.<br />
* <font style="color:green">Functionality</font>: Modified the LiveWire Multicast GPIO driver to generate GPO events using the 'I' event type.<br />
<br />
=== 2.15.1 (2016-08-05) ===<br />
* Database version '''259'''<br />
* <font style="color:red">Bug fix</font>: fixed WAV file export code to enhance compatibility with third-party applications<br />
<br />
=== 2.15.0 (2016-07-29) ===<br />
* <font style="color:red">Bug fix</font>: complete support for the MySQL/MariaDB InnoDB database engine (for better transaction processing of database updates)<br />
* <font style="color:green">Functionality</font>: enhancements to ''rdexport'' that include full metadata in RDXML format<br />
* <font style="color:green">Functionality</font>: add CLI command ''rdclilogedit'' that enables editing of Rivendell Logs from the command line (without a GUI app)<br />
* <font style="color:green">Functionality</font>: Update the database to version 259.<br />
<br />
=== 2.14.1 (2016-06-11) ===<br />
* Database version '''258'''<br />
* <font style="color:red">Bug fix</font>: additional fixes for newer versions of MySQL (and MariaDB)<br />
<br />
=== 2.14.0 (2016-06-10) ===<br />
* Database version '''258'''<br />
* <font style="color:green">Functionality</font>: add the ability to capture real-time events in RDCatch recordings and replay the events in sync with the captured audio<br />
* <font style="color:green">Functionality</font>: add RML Macro ''Cut Event'' (''CE'') for placing real-time event markers into active RDCatch recordings<br />
* <font style="color:green">Functionality</font>: add support for specifying precise start time and length parameters for Traffic events that are embedded in Music events<br />
* <font style="color:red">Bug fix</font>: fixed a bug in RDAdmin that could cause creation of a new database to fail<br />
* <font style="color:red">Bug fix</font>: fix issues that prevent compilation under newer versions of the GNU C compiler suite<br />
* <font style="color:red">Bug fix</font>: various enhancements and fixes to the new(ish) ''rdexport'' utility<br />
* <font style="color:red">Bug fix</font>: initial support for newer versions of MySQL (and MariaDB)<br />
* <font style="color:red">Bug fix</font>: add code to allow embedded traffic breaks to be specified with start time and length in the music schedule.<br />
<br />
=== 2.13.0 (2016-05-10) ===<br />
* Database version '''255'''<br />
* <font style="color:green">Functionality</font>: add RLM plugin for the Paravel Systems ''WallTime'' clock<br />
* <font style="color:green">Functionality</font>: add new CLI command ''rdexport'' to export Carts with metadata<br />
* <font style="color:green">Functionality</font>: new report: ''Cut Log'' that includes the Description field for played events<br />
* <font style="color:red">Bug fix</font>: fixed a crash in RDLibrary when attempting to open multiple Carts<br />
* <font style="color:red">Bug fix</font>: fixed RDLogEdit to improve performance when saving and updating logs<br />
* <font style="color:red">Bug fix</font>: fixed a bug that caused marker data to be deleted when exporting a Cut<br />
<br />
=== 2.12.0 (2016-04-14) ===<br />
* Database version '''254'''<br />
* <font style="color:green">Functionality</font>: add support for sequential Cut play-out - you can now configure carts to play cuts in a fixed, sequential order rather than by weight value<br />
* <font style="color:green">Functionality</font>: add support for ''Broadcast Tools'' switchers<br />
* <font style="color:green">Functionality</font>: add RML macro '''Copy Cut''' (''CP'') to copy cuts between carts<br />
* <font style="color:green">Functionality</font>: add option to show only &ldquo;recent&rdquo; logs in RDLogEdit<br />
* <font style="color:green">Functionality</font>: add new web API methods related to Scheduler Codes<br />
* <font style="color:red">Bug fix</font>: fixed a bug that caused issues with Services containing the &ldquo;-&rdquo; (dash) character<br />
<br />
=== 2.11.0 (2015-09-18) ===<br />
* Database version '''252'''<br />
* <font style="color:green">Functionality</font>: add RDCatch upload/download protocols ''sftp'' and ''scp''<br />
* <font style="color:green">Functionality</font>: add support to import ''MP4/AAC'' files<br />
* <font style="color:green">Functionality</font>: add support for the ''Ross NK'' series video switcher<br />
* <font style="color:green">Functionality</font>: add support for ''PCM24'' in the core audio library code<br />
* <font style="color:red">Bug fix</font>: re-wrote the CD ripper code to make it faster and more reliable<br />
* <font style="color:red">Bug fix</font>: fixed several bugs related to audio data and buffering<br />
* <font style="color:red">Bug fix</font>: Normalized service clock data from the 'SERVICES' to the 'SVC_CLOCKS' table<br />
<br />
=== 2.10.3 (2015-02-24) ===<br />
* Database version '''242'''<br />
* <font style="color:green">Functionality</font>: add RLM (plugin) for Live365 streaming service (which is defunct as of Summer 2016)<br />
* <font style="color:green">Functionality</font>: add &ldquo;MrMaster&rdquo; and &ldquo;Spin Count&rdquo; reports<br />
* <font style="color:green">Functionality</font>: add support for audio switcher devices that use the &ldquo;Software Authority&rdquo; protocol<br />
* <font style="color:green">Functionality</font>: add ability to set segue markers in the CLI app ''rdmarkerset''<br />
* <font style="color:red">Bug fix</font>: fixed a bug that caused issues with Services containing a <Space> character in the service name<br />
<br />
=== 2.10.2 (2014-11-25) ===<br />
* Database version '''242'''<br />
* <font style="color:green">Functionality</font>: CLI ''rdimport'' enhancement: add two date-related options to the command<br />
* <font style="color:green">Functionality</font>: add column for ELR data in RDLogEdit<br />
* <font style="color:red">Bug fix</font>: fixed a bug in the Audio Science adapter for cards with only AES3 ports<br />
<br />
=== 2.10.1 (2014-11-04) ===<br />
* Database version '''242'''<br />
* <font style="color:green">Functionality</font>: add &ldquo;DSP utilization and profiling&rdquo; info for Audio Science adapters<br />
* <font style="color:green">Functionality</font>: add the column &ldquo;EXT DATA&rdquo; to the &ldquo;Edit Log&rdquo; screen in RDLogEdit<br />
* <font style="color:red">Bug fix</font>: fixed a memory fault (crash) in RDLogEdit when dropping a cart that was being used in a log</div>
DKlann
http://wiki.rivendellaudio.org/index.php?title=Jack&diff=542
Jack
2020-09-16T16:38:43Z
<p>DKlann: /* Adding JACK Clients */ Add note about JACK Client start order.</p>
<hr />
<div>The [https://jackaudio.org/ Jack Audio Connection Kit] (JACK) is a suite of professional, low-latency tools for routing digital audio.<br />
<br />
== Configure Rivendell 3 For Use With JACK ==<br />
<br />
=== Overview ===<br />
<br />
In 2020, Rivendell processes and JACK processes must be run as the same user ID. And since Rivendell processes (in the packaged version available from [[Paravel Systems - USA|Paravel Systems]]) '''''always''''' run as ''root'', this means ''jackd''(8) (the JACK daemon) must also run as ''root''.<br />
<br />
=== Configuring Rivendell to use JACK ===<br />
<br />
So, you&rsquo;ve decided to use JACK for your Rivendell audio. First, make sure you tell Rivendell to '''not''' use any ALSA devices on your computer using the [[RDAlsaConfig]] Rivendell app. Run this app from the Rivendell menu and simply unhighlight all devices in the list, as shown here:<br />
<br />
[[Image:RDAlsaConfig-no-selections.png|center|400px|thumb|border|RDAlsaConfig Ready for JACK]]<br />
<br />
:(As an aside, when you use JACK for Rivendell&rsquo;s audio routing, you can also use any other [https://jackaudio.org/applications/ JACK-enabled audio app] alongside Rivendell.)<br />
<br />
:(Another aside: know that Rivendell works well using both JACK clients and [http://www.audioscience.com/ Audio Science] adapters.)<br />
<br />
Set up JACK on a per-host basis by modifying the configuration in [[RDAdmin]]->[[RDAdmin#Manage_Hosts|Manage Hosts]]->''hostname''. In the host configuration window, touch the '''JACK Settings''' button to manage the Jack settings.<br />
<br />
Ensure that Rivendell starts the JACK app by checking the '''Start JACK Server''' checkbox. Leave the '''JACK Server Name''' set to ''(default)'' as shown here: <br />
<br />
[[Image:Jack-clients-3.4.1.png|center|thumb|440px|border|Configured JACK Clients in Reivendell 3.4.1]]<br />
<br />
<div style="clear: both"></div><br />
<br />
It is easiest to set the '''JACK Command Line''' to the full path of a shell script so you can make changes to the way in which the JACK app is started.<br />
<br />
:'''Note''' that regardless of how you configure the '''JACK Command Line''' if you make ''<u>any</u>'' changes to the '''JACK Settings''' you ''<u>must</u>'' restart the Rivendell service, interrupting audio playout, in order for the changes to take effect. Plan your changes accordingly.<br />
<br />
Here is an example JACK startup script:<br />
<br />
<nowiki><br />
#!/bin/sh<br />
<br />
#######################################################################<br />
##<br />
## This script is started by Rivendell caed when the Rivendell daemons<br />
## are launched. The script assumes a "default" Rivendell installation<br />
## with the username 'rd' automatically logged in and running the<br />
## windowing system.<br />
##<br />
## Change the JACK sample rate to match your Rivendell sample rate<br />
## set in RDAdmin->System Settings.<br />
##<br />
#######################################################################<br />
<br />
export LANG=en_US.UTF-8<br />
export TERM=xterm<br />
export QTDIR=/usr/lib64/qt4<br />
export PATH=/sbin:/bin:/usr/bin:/usr/sbin:/usr/local/sbin:/usr/local/bin:/home/rd/bin<br />
export XDG_DATA_DIRS=/usr/local/share/:/usr/share/<br />
export XDG_RUNTIME_DIR=/run/user/1000<br />
export QT_GRAPHICSSYSTEM_CHECKED=1<br />
<br />
exec /usr/bin/jackd --name default -d dummy -r 48000 2>&1 > /var/tmp/jackd.log<br />
</nowiki><br />
<br />
Copy the above text and save it in a file named <tt>/usr/local/bin/jackd-start</tt>. Make the file executable with <tt>sudo chmod +x /usr/local/bin/jackd-start</tt>. Enter the full path of the shell script into the '''JACK Command Line''' text box.<br />
<br />
When using the above script, notice that we initialize JACK with a ''&ldquo;dummy&ldquo;'' device. We do this because the default device name is always ''&ldquo;system&rdquo;''. Not only is this a useless name, it is also something one cannot change without editing the JACK source code. In the above script, we assign the ''&ldquo;dummy&rdquo;'' device to the ''&ldquo;system&rdquo;'' JACK client in order to &ldquo;get it out of the way&rdquo;. We then use ''jack-plumbing'' or some other means to connect JACK client inputs and outputs.<br />
<br />
==== Adding JACK Clients ====<br />
<br />
After configuring Rivendell to start the JACK subsystem, you probably need to also start some JACK clients. Do this by adding each one in the '''JACK Clients to Start''' section (see the figure above for examples).<br />
<br />
You may want to use the ''[https://github.com/opensourceradio/ram/blob/master/usr/local/bin/pmw-jack-setup pmw-jack-setup]'' script (or something like it) to configure your ALSA sound devices to work with JACK. This script accepts two parameters: the name of the ALSA device to configure, and the &ldquo;human-readable&rdquo; name you want to give the JACK client. You can learn your ALSA device names by running the command <tt>sudo aplay -l</tt> (or <tt>su - root -c 'aplay -l'</tt>) in a terminal window. Running this command results in output like:<br />
<br />
<nowiki><br />
**** List of PLAYBACK Hardware Devices ****<br />
card 0: Intel [HDA Intel], device 0: CX20561 Analog [CX20561 Analog]<br />
Subdevices: 0/1<br />
Subdevice #0: subdevice #0<br />
card 0: Intel [HDA Intel], device 1: CX20561 Digital [CX20561 Digital]<br />
Subdevices: 1/1<br />
Subdevice #0: subdevice #0<br />
</nowiki><br />
<br />
In the above output, the device name for ''card 0'' is <tt>Intel</tt>. Many people prefer more appropriate names for their JACK devices. One common name for the built-in sound device (the &ldquo;sound card&rdquo; on the PC&lsquo;s motherboard) is ''&ldquo;Onboard&rdquo;''. Set up your first '''JACK Client''' in '''RDAdmin''' as follows:<br />
<br />
:* touch '''Add'''<br />
:* enter a meaningful description in the '''Description''' text box; experience (and observing the [https://github.com/ElvishArtisan/rivendell/blob/master/cae/cae_jack.cpp source code]) has shown that the JACK Clients are started in the alpha-numeric order of the '''Description''' label. Use this knowledge to guide your choices of descriptions<br />
:* enter the path and parameters to the setup script: <tt>/usr/local/bin/pmw-jack-setup Intel Onboard</tt> in the '''Command Line''' text box<br />
:* touch '''OK''' to save your settings<br />
<br />
Repeat the above steps for as many ALSA-compatible hardware audio devices as you want to use with Rivendell. Note that ''pmw-jack-setup'' merely configures your hardware audio devices for use with JACK. It does not connect them to Rivendell.<br />
<br />
==== Connecting JACK Inputs and Outputs ====<br />
<br />
Once you have successfully configured Rivendell to launch JACK and configure your audio devices, you need to &ldquo;connect&rdquo; the devices to Rivendell. There are several ways to do this, including:<br />
<br />
:* run one or more Rivendell [http://opsguide.rivendellaudio.org/html/chapter.rml.html Macros] to make the connections (see [http://opsguide.rivendellaudio.org/html/sect.rml.commands.html#sect.rml.connect_jack_ports__jc_ JC])<br />
:* run a JACK plumbing service daemon such as ''jack-plumbing'' to automate the connections<br />
:* run the command line ''jack_connect'' application to make the connections<br />
:* use a graphical tool such as [https://qjackctl.sourceforge.io/ qjackctl] or [https://drobilla.net/software/patchage patchage] to make the connections<br />
<br />
The most reliable methods for making JACK connections are those that perform the work automatically and in the background. Unfortunately, CentOS does not package the ''jack-plumbing'' command, so one must either download the source code from the [[wikipedia:Debian_Linux|Debian]] website: [http://deb.debian.org/debian/pool/main/j/jack-tools/jack-tools_20131226.orig.tar.bz2 here] or [http://deb.debian.org/debian/pool/main/j/jack-tools/jack-tools_20131226-1.debian.tar.gz here] and compile it (the original source code for ''jack-plumbing'' seems to have been lost in the bit bucket), or choose a different &ldquo;plumbing&rdquo; tool to manage the JACK connections.<br />
<br />
Here is an example of a configuration file for ''jack-plumbing''. Note that the &ldquo;comment character&rdquo; is a semicolon (&ldquo;&#59;&rdquo;) rather than the more common hash symbol (&ldquo;&#35;&rdquo;). In general, the ''jack-plumbing'' '''''connect''''' statement format is <tt>(connect "source" "destination")</tt>. If you place this in ''/etc/jack-plumbing'' you can start the app with simply ''/bin/jack-plumbing'' (see the figure above):<br />
<br />
<nowiki><br />
; JACK port connection rules.<br />
; See man jack-plumbing for details.<br />
; dklann@broadcasttool.com, Fri Aug 14 09:20:55 PDT 2020<br />
<br />
; Connect the first Rivendell output port to the Onboard card.<br />
; See also pmw-jack-setup and the JACK client name for the<br />
; built-in audio device. Substitute your audio device for<br />
; "Onboard" as necessary...<br />
(connect "rivendell_0:playout_0L" "Onboard:playback_1")<br />
(connect "rivendell_0:playout_0R" "Onboard:playback_2")<br />
<br />
; Connect the first Rivendell input port to the Onboard card.<br />
(connect "Onboard:capture_1" "rivendell_0:record_0L")<br />
(connect "Onboard:capture_2" "rivendell_0:record_0R")<br />
<br />
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;<br />
; Audio processing with Calf plugins<br />
; Use this along with calfjackhost to connect some Calf audio<br />
; plugins for real-time audio processing.<br />
;<br />
; Rivendell Primary output to BassEnhancer<br />
;(connect "rivendell_0:playout_0L" "calf:bassenhancer_in_l")<br />
;(connect "rivendell_0:playout_0R" "calf:bassenhancer_in_r")<br />
; -or- Rivendell Primary output to MultibandCompressor input<br />
;(connect "rivendell_0:playout_0L" "calf:multibandcompressor_in_l")<br />
;(connect "rivendell_0:playout_0R" "calf:multibandcompressor_in_r")<br />
; MultibandCompressor output to Limiter input<br />
;(connect "calf:multibandcompressor_out_l" "calf:multibandlimiter_in_l")<br />
;(connect "calf:multibandcompressor_out_r" "calf:multibandlimiter_in_r")<br />
<br />
; BassEnhancer output to MultibandCompressor input<br />
;(connect "calf:bassenhancer_out_l" "calf:multibandcompressor_in_l")<br />
;(connect "calf:bassenhancer_out_r" "calf:multibandcompressor_in_r")<br />
<br />
; MultibandCompressor output to MultibandLimiter input<br />
;(connect "calf:multibandcompressor_out_l" "calf:multibandlimiter_in_l")<br />
;(connect "calf:multibandcompressor_out_r" "calf:multibandlimiter_in_r")<br />
<br />
; MultibandLimiter output to Onboard input<br />
;(connect "calf:multibandlimiter_out_l" "Onboard:playback_1")<br />
;(connect "calf:multibandlimiter_out_r" "Onboard:playback_2")<br />
<br />
; Limiter output to glasscoder input<br />
; This assumes you are running GlassCoder with the JACK<br />
; client name "glass".<br />
;(connect "calf:multibandlimiter_out_l" "glass:input_1")<br />
;(connect "calf:multibandlimiter_out_r" "glass:input_2")<br />
<br />
</nowiki><br />
<br />
=== Restart Rivendell Service ===<br />
<br />
After making changes to your JACK configuration in Rivendell you must restart the Rivendell service. Do this by either rebooting your Rivendell computer, or running the following command in a terminal window:<br />
<br />
<nowiki><br />
sudo systemctl restart rivendell.service<br />
</nowiki><br />
<br />
== Future Work ==<br />
<br />
To do: make JACK work with [https://www.freedesktop.org/wiki/Software/PulseAudio/ PulseAudio].<br />
<br />
In mid 2020 the [https://pipewire.org/ pipewire] audio subsystem is maturing and aims to be compatible with and to eventually replace both the PulseAudio and the JACK audio systems. Pipewire may include more &ldquo;plumbing&rdquo; tools over the long run.</div>
DKlann
http://wiki.rivendellaudio.org/index.php?title=Jack&diff=541
Jack
2020-09-16T16:22:40Z
<p>DKlann: /* Configuring Rivendell to use JACK */ Add note about restarting Rivendell when making JACK Settings changes.</p>
<hr />
<div>The [https://jackaudio.org/ Jack Audio Connection Kit] (JACK) is a suite of professional, low-latency tools for routing digital audio.<br />
<br />
== Configure Rivendell 3 For Use With JACK ==<br />
<br />
=== Overview ===<br />
<br />
In 2020, Rivendell processes and JACK processes must be run as the same user ID. And since Rivendell processes (in the packaged version available from [[Paravel Systems - USA|Paravel Systems]]) '''''always''''' run as ''root'', this means ''jackd''(8) (the JACK daemon) must also run as ''root''.<br />
<br />
=== Configuring Rivendell to use JACK ===<br />
<br />
So, you&rsquo;ve decided to use JACK for your Rivendell audio. First, make sure you tell Rivendell to '''not''' use any ALSA devices on your computer using the [[RDAlsaConfig]] Rivendell app. Run this app from the Rivendell menu and simply unhighlight all devices in the list, as shown here:<br />
<br />
[[Image:RDAlsaConfig-no-selections.png|center|400px|thumb|border|RDAlsaConfig Ready for JACK]]<br />
<br />
:(As an aside, when you use JACK for Rivendell&rsquo;s audio routing, you can also use any other [https://jackaudio.org/applications/ JACK-enabled audio app] alongside Rivendell.)<br />
<br />
:(Another aside: know that Rivendell works well using both JACK clients and [http://www.audioscience.com/ Audio Science] adapters.)<br />
<br />
Set up JACK on a per-host basis by modifying the configuration in [[RDAdmin]]->[[RDAdmin#Manage_Hosts|Manage Hosts]]->''hostname''. In the host configuration window, touch the '''JACK Settings''' button to manage the Jack settings.<br />
<br />
Ensure that Rivendell starts the JACK app by checking the '''Start JACK Server''' checkbox. Leave the '''JACK Server Name''' set to ''(default)'' as shown here: <br />
<br />
[[Image:Jack-clients-3.4.1.png|center|thumb|440px|border|Configured JACK Clients in Reivendell 3.4.1]]<br />
<br />
<div style="clear: both"></div><br />
<br />
It is easiest to set the '''JACK Command Line''' to the full path of a shell script so you can make changes to the way in which the JACK app is started.<br />
<br />
:'''Note''' that regardless of how you configure the '''JACK Command Line''' if you make ''<u>any</u>'' changes to the '''JACK Settings''' you ''<u>must</u>'' restart the Rivendell service, interrupting audio playout, in order for the changes to take effect. Plan your changes accordingly.<br />
<br />
Here is an example JACK startup script:<br />
<br />
<nowiki><br />
#!/bin/sh<br />
<br />
#######################################################################<br />
##<br />
## This script is started by Rivendell caed when the Rivendell daemons<br />
## are launched. The script assumes a "default" Rivendell installation<br />
## with the username 'rd' automatically logged in and running the<br />
## windowing system.<br />
##<br />
## Change the JACK sample rate to match your Rivendell sample rate<br />
## set in RDAdmin->System Settings.<br />
##<br />
#######################################################################<br />
<br />
export LANG=en_US.UTF-8<br />
export TERM=xterm<br />
export QTDIR=/usr/lib64/qt4<br />
export PATH=/sbin:/bin:/usr/bin:/usr/sbin:/usr/local/sbin:/usr/local/bin:/home/rd/bin<br />
export XDG_DATA_DIRS=/usr/local/share/:/usr/share/<br />
export XDG_RUNTIME_DIR=/run/user/1000<br />
export QT_GRAPHICSSYSTEM_CHECKED=1<br />
<br />
exec /usr/bin/jackd --name default -d dummy -r 48000 2>&1 > /var/tmp/jackd.log<br />
</nowiki><br />
<br />
Copy the above text and save it in a file named <tt>/usr/local/bin/jackd-start</tt>. Make the file executable with <tt>sudo chmod +x /usr/local/bin/jackd-start</tt>. Enter the full path of the shell script into the '''JACK Command Line''' text box.<br />
<br />
When using the above script, notice that we initialize JACK with a ''&ldquo;dummy&ldquo;'' device. We do this because the default device name is always ''&ldquo;system&rdquo;''. Not only is this a useless name, it is also something one cannot change without editing the JACK source code. In the above script, we assign the ''&ldquo;dummy&rdquo;'' device to the ''&ldquo;system&rdquo;'' JACK client in order to &ldquo;get it out of the way&rdquo;. We then use ''jack-plumbing'' or some other means to connect JACK client inputs and outputs.<br />
<br />
==== Adding JACK Clients ====<br />
<br />
After configuring Rivendell to start the JACK subsystem, you probably need to also start some JACK clients. Do this by adding each one in the '''JACK Clients to Start''' section (see the figure above for examples).<br />
<br />
You may want to use the ''[https://github.com/opensourceradio/ram/blob/master/usr/local/bin/pmw-jack-setup pmw-jack-setup]'' script (or something like it) to configure your ALSA sound devices to work with JACK. This script accepts two parameters: the name of the ALSA device to configure, and the &ldquo;human-readable&rdquo; name of the JACK client. You can learn your ALSA device names by running the command <tt>sudo aplay -l</tt> (or <tt>su - root -c 'aplay -l'</tt>) in a terminal window. Running this command results in output like:<br />
<br />
<nowiki><br />
**** List of PLAYBACK Hardware Devices ****<br />
card 0: Intel [HDA Intel], device 0: CX20561 Analog [CX20561 Analog]<br />
Subdevices: 0/1<br />
Subdevice #0: subdevice #0<br />
card 0: Intel [HDA Intel], device 1: CX20561 Digital [CX20561 Digital]<br />
Subdevices: 1/1<br />
Subdevice #0: subdevice #0<br />
</nowiki><br />
<br />
In the above output, the device name for ''card 0'' is <tt>Intel</tt>. Many people prefer more appropriate names for their JACK devices. One common name for the built-in sound device (the &ldquo;sound card&rdquo; on the PC&lsquo;s motherboard) is ''&ldquo;Onboard&rdquo;''. Set up your first '''JACK Client''' in '''RDAdmin''' as follows:<br />
<br />
:* touch '''Add'''<br />
:* enter a meaningful description in the '''Description''' text box<br />
:* enter the path and parameters to the setup script: <tt>/usr/local/bin/pmw-jack-setup Intel Onboard</tt> in the '''Command Line''' text box<br />
:* touch '''OK''' to save your settings<br />
<br />
Repeat the above steps for as many ALSA-compatible hardware audio devices as you want to use with Rivendell. Note that ''pmw-jack-setup'' merely configures your hardware audio devices for use with JACK. It does not connect them to Rivendell.<br />
<br />
==== Connecting JACK Inputs and Outputs ====<br />
<br />
Once you have successfully configured Rivendell to launch JACK and configure your audio devices, you need to &ldquo;connect&rdquo; the devices to Rivendell. There are several ways to do this, including:<br />
<br />
:* run one or more Rivendell [http://opsguide.rivendellaudio.org/html/chapter.rml.html Macros] to make the connections (see [http://opsguide.rivendellaudio.org/html/sect.rml.commands.html#sect.rml.connect_jack_ports__jc_ JC])<br />
:* run a JACK plumbing service daemon such as ''jack-plumbing'' to automate the connections<br />
:* run the command line ''jack_connect'' application to make the connections<br />
:* use a graphical tool such as [https://qjackctl.sourceforge.io/ qjackctl] or [https://drobilla.net/software/patchage patchage] to make the connections<br />
<br />
The most reliable methods for making JACK connections are those that perform the work automatically and in the background. Unfortunately, CentOS does not package the ''jack-plumbing'' command, so one must either download the source code from the [[wikipedia:Debian_Linux|Debian]] website: [http://deb.debian.org/debian/pool/main/j/jack-tools/jack-tools_20131226.orig.tar.bz2 here] or [http://deb.debian.org/debian/pool/main/j/jack-tools/jack-tools_20131226-1.debian.tar.gz here] and compile it (the original source code for ''jack-plumbing'' seems to have been lost in the bit bucket), or choose a different &ldquo;plumbing&rdquo; tool to manage the JACK connections.<br />
<br />
Here is an example of a configuration file for ''jack-plumbing''. Note that the &ldquo;comment character&rdquo; is a semicolon (&ldquo;&#59;&rdquo;) rather than the more common hash symbol (&ldquo;&#35;&rdquo;). In general, the ''jack-plumbing'' '''''connect''''' statement format is <tt>(connect "source" "destination")</tt>. If you place this in ''/etc/jack-plumbing'' you can start the app with simply ''/bin/jack-plumbing'' (see the figure above):<br />
<br />
<nowiki><br />
; JACK port connection rules.<br />
; See man jack-plumbing for details.<br />
; dklann@broadcasttool.com, Fri Aug 14 09:20:55 PDT 2020<br />
<br />
; Connect the first Rivendell output port to the Onboard card.<br />
; See also pmw-jack-setup and the JACK client name for the<br />
; built-in audio device. Substitute your audio device for<br />
; "Onboard" as necessary...<br />
(connect "rivendell_0:playout_0L" "Onboard:playback_1")<br />
(connect "rivendell_0:playout_0R" "Onboard:playback_2")<br />
<br />
; Connect the first Rivendell input port to the Onboard card.<br />
(connect "Onboard:capture_1" "rivendell_0:record_0L")<br />
(connect "Onboard:capture_2" "rivendell_0:record_0R")<br />
<br />
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;<br />
; Audio processing with Calf plugins<br />
; Use this along with calfjackhost to connect some Calf audio<br />
; plugins for real-time audio processing.<br />
;<br />
; Rivendell Primary output to BassEnhancer<br />
;(connect "rivendell_0:playout_0L" "calf:bassenhancer_in_l")<br />
;(connect "rivendell_0:playout_0R" "calf:bassenhancer_in_r")<br />
; -or- Rivendell Primary output to MultibandCompressor input<br />
;(connect "rivendell_0:playout_0L" "calf:multibandcompressor_in_l")<br />
;(connect "rivendell_0:playout_0R" "calf:multibandcompressor_in_r")<br />
; MultibandCompressor output to Limiter input<br />
;(connect "calf:multibandcompressor_out_l" "calf:multibandlimiter_in_l")<br />
;(connect "calf:multibandcompressor_out_r" "calf:multibandlimiter_in_r")<br />
<br />
; BassEnhancer output to MultibandCompressor input<br />
;(connect "calf:bassenhancer_out_l" "calf:multibandcompressor_in_l")<br />
;(connect "calf:bassenhancer_out_r" "calf:multibandcompressor_in_r")<br />
<br />
; MultibandCompressor output to MultibandLimiter input<br />
;(connect "calf:multibandcompressor_out_l" "calf:multibandlimiter_in_l")<br />
;(connect "calf:multibandcompressor_out_r" "calf:multibandlimiter_in_r")<br />
<br />
; MultibandLimiter output to Onboard input<br />
;(connect "calf:multibandlimiter_out_l" "Onboard:playback_1")<br />
;(connect "calf:multibandlimiter_out_r" "Onboard:playback_2")<br />
<br />
; Limiter output to glasscoder input<br />
; This assumes you are running GlassCoder with the JACK<br />
; client name "glass".<br />
;(connect "calf:multibandlimiter_out_l" "glass:input_1")<br />
;(connect "calf:multibandlimiter_out_r" "glass:input_2")<br />
<br />
</nowiki><br />
<br />
=== Restart Rivendell Service ===<br />
<br />
After making changes to your JACK configuration in Rivendell you must restart the Rivendell service. Do this by either rebooting your Rivendell computer, or running the following command in a terminal window:<br />
<br />
<nowiki><br />
sudo systemctl restart rivendell.service<br />
</nowiki><br />
<br />
== Future Work ==<br />
<br />
To do: make JACK work with [https://www.freedesktop.org/wiki/Software/PulseAudio/ PulseAudio].<br />
<br />
In mid 2020 the [https://pipewire.org/ pipewire] audio subsystem is maturing and aims to be compatible with and to eventually replace both the PulseAudio and the JACK audio systems. Pipewire may include more &ldquo;plumbing&rdquo; tools over the long run.</div>
DKlann
http://wiki.rivendellaudio.org/index.php?title=Jack&diff=540
Jack
2020-09-16T16:09:56Z
<p>DKlann: /* Configuring Rivendell to use JACK */ Add comment about JACK and ASI devices.</p>
<hr />
<div>The [https://jackaudio.org/ Jack Audio Connection Kit] (JACK) is a suite of professional, low-latency tools for routing digital audio.<br />
<br />
== Configure Rivendell 3 For Use With JACK ==<br />
<br />
=== Overview ===<br />
<br />
In 2020, Rivendell processes and JACK processes must be run as the same user ID. And since Rivendell processes (in the packaged version available from [[Paravel Systems - USA|Paravel Systems]]) '''''always''''' run as ''root'', this means ''jackd''(8) (the JACK daemon) must also run as ''root''.<br />
<br />
=== Configuring Rivendell to use JACK ===<br />
<br />
So, you&rsquo;ve decided to use JACK for your Rivendell audio. First, make sure you tell Rivendell to '''not''' use any ALSA devices on your computer using the [[RDAlsaConfig]] Rivendell app. Run this app from the Rivendell menu and simply unhighlight all devices in the list, as shown here:<br />
<br />
[[Image:RDAlsaConfig-no-selections.png|center|400px|thumb|border|RDAlsaConfig Ready for JACK]]<br />
<br />
:(As an aside, when you use JACK for Rivendell&rsquo;s audio routing, you can also use any other [https://jackaudio.org/applications/ JACK-enabled audio app] alongside Rivendell.)<br />
<br />
:(Another aside: know that Rivendell works well using both JACK clients and [http://www.audioscience.com/ Audio Science] adapters.)<br />
<br />
Set up JACK on a per-host basis by modifying the configuration in [[RDAdmin]]->[[RDAdmin#Manage_Hosts|Manage Hosts]]->''hostname''. In the host configuration window, touch the '''JACK Settings''' button to manage the Jack settings.<br />
<br />
Ensure that Rivendell starts the JACK app by checking the '''Start JACK Server''' checkbox. Leave the '''JACK Server Name''' set to ''(default)'' as shown here: <br />
<br />
[[Image:Jack-clients-3.4.1.png|center|thumb|440px|border|Configured JACK Clients in Reivendell 3.4.1]]<br />
<br />
<div style="clear: both"></div><br />
<br />
It is easiest to set the '''JACK Command Line''' to the full path of a shell script so you can make changes to the way in which the JACK app is started. Here is an example JACK startup script:<br />
<br />
<nowiki><br />
#!/bin/sh<br />
<br />
#######################################################################<br />
##<br />
## This script is started by Rivendell caed when the Rivendell daemons<br />
## are launched. The script assumes a "default" Rivendell installation<br />
## with the username 'rd' automatically logged in and running the<br />
## windowing system.<br />
##<br />
## Change the JACK sample rate to match your Rivendell sample rate<br />
## set in RDAdmin->System Settings.<br />
##<br />
#######################################################################<br />
<br />
export LANG=en_US.UTF-8<br />
export TERM=xterm<br />
export QTDIR=/usr/lib64/qt4<br />
export PATH=/sbin:/bin:/usr/bin:/usr/sbin:/usr/local/sbin:/usr/local/bin:/home/rd/bin<br />
export XDG_DATA_DIRS=/usr/local/share/:/usr/share/<br />
export XDG_RUNTIME_DIR=/run/user/1000<br />
export QT_GRAPHICSSYSTEM_CHECKED=1<br />
<br />
exec /usr/bin/jackd --name default -d dummy -r 48000 2>&1 > /var/tmp/jackd.log<br />
</nowiki><br />
<br />
Copy the above text and save it in a file named <tt>/usr/local/bin/jackd-start</tt>. Make the file executable with <tt>sudo chmod +x /usr/local/bin/jackd-start</tt>. Enter the full path of the shell script into the '''JACK Command Line''' text box.<br />
<br />
When using the above script, notice that we initialize JACK with a ''&ldquo;dummy&ldquo;'' device. We do this because the default device name is always ''&ldquo;system&rdquo;''. Not only is this a useless name, it is also something one cannot change without editing the JACK source code. In the above script, we assign the ''&ldquo;dummy&rdquo;'' device to the ''&ldquo;system&rdquo;'' JACK client in order to &ldquo;get it out of the way&rdquo;. We then use ''jack-plumbing'' or some other means to connect JACK client inputs and outputs.<br />
<br />
==== Adding JACK Clients ====<br />
<br />
After configuring Rivendell to start the JACK subsystem, you probably need to also start some JACK clients. Do this by adding each one in the '''JACK Clients to Start''' section (see the figure above for examples).<br />
<br />
You may want to use the ''[https://github.com/opensourceradio/ram/blob/master/usr/local/bin/pmw-jack-setup pmw-jack-setup]'' script (or something like it) to configure your ALSA sound devices to work with JACK. This script accepts two parameters: the name of the ALSA device to configure, and the &ldquo;human-readable&rdquo; name of the JACK client. You can learn your ALSA device names by running the command <tt>sudo aplay -l</tt> (or <tt>su - root -c 'aplay -l'</tt>) in a terminal window. Running this command results in output like:<br />
<br />
<nowiki><br />
**** List of PLAYBACK Hardware Devices ****<br />
card 0: Intel [HDA Intel], device 0: CX20561 Analog [CX20561 Analog]<br />
Subdevices: 0/1<br />
Subdevice #0: subdevice #0<br />
card 0: Intel [HDA Intel], device 1: CX20561 Digital [CX20561 Digital]<br />
Subdevices: 1/1<br />
Subdevice #0: subdevice #0<br />
</nowiki><br />
<br />
In the above output, the device name for ''card 0'' is <tt>Intel</tt>. Many people prefer more appropriate names for their JACK devices. One common name for the built-in sound device (the &ldquo;sound card&rdquo; on the PC&lsquo;s motherboard) is ''&ldquo;Onboard&rdquo;''. Set up your first '''JACK Client''' in '''RDAdmin''' as follows:<br />
<br />
:* touch '''Add'''<br />
:* enter a meaningful description in the '''Description''' text box<br />
:* enter the path and parameters to the setup script: <tt>/usr/local/bin/pmw-jack-setup Intel Onboard</tt> in the '''Command Line''' text box<br />
:* touch '''OK''' to save your settings<br />
<br />
Repeat the above steps for as many ALSA-compatible hardware audio devices as you want to use with Rivendell. Note that ''pmw-jack-setup'' merely configures your hardware audio devices for use with JACK. It does not connect them to Rivendell.<br />
<br />
==== Connecting JACK Inputs and Outputs ====<br />
<br />
Once you have successfully configured Rivendell to launch JACK and configure your audio devices, you need to &ldquo;connect&rdquo; the devices to Rivendell. There are several ways to do this, including:<br />
<br />
:* run one or more Rivendell [http://opsguide.rivendellaudio.org/html/chapter.rml.html Macros] to make the connections (see [http://opsguide.rivendellaudio.org/html/sect.rml.commands.html#sect.rml.connect_jack_ports__jc_ JC])<br />
:* run a JACK plumbing service daemon such as ''jack-plumbing'' to automate the connections<br />
:* run the command line ''jack_connect'' application to make the connections<br />
:* use a graphical tool such as [https://qjackctl.sourceforge.io/ qjackctl] or [https://drobilla.net/software/patchage patchage] to make the connections<br />
<br />
The most reliable methods for making JACK connections are those that perform the work automatically and in the background. Unfortunately, CentOS does not package the ''jack-plumbing'' command, so one must either download the source code from the [[wikipedia:Debian_Linux|Debian]] website: [http://deb.debian.org/debian/pool/main/j/jack-tools/jack-tools_20131226.orig.tar.bz2 here] or [http://deb.debian.org/debian/pool/main/j/jack-tools/jack-tools_20131226-1.debian.tar.gz here] and compile it (the original source code for ''jack-plumbing'' seems to have been lost in the bit bucket), or choose a different &ldquo;plumbing&rdquo; tool to manage the JACK connections.<br />
<br />
Here is an example of a configuration file for ''jack-plumbing''. Note that the &ldquo;comment character&rdquo; is a semicolon (&ldquo;&#59;&rdquo;) rather than the more common hash symbol (&ldquo;&#35;&rdquo;). In general, the ''jack-plumbing'' '''''connect''''' statement format is <tt>(connect "source" "destination")</tt>. If you place this in ''/etc/jack-plumbing'' you can start the app with simply ''/bin/jack-plumbing'' (see the figure above):<br />
<br />
<nowiki><br />
; JACK port connection rules.<br />
; See man jack-plumbing for details.<br />
; dklann@broadcasttool.com, Fri Aug 14 09:20:55 PDT 2020<br />
<br />
; Connect the first Rivendell output port to the Onboard card.<br />
; See also pmw-jack-setup and the JACK client name for the<br />
; built-in audio device. Substitute your audio device for<br />
; "Onboard" as necessary...<br />
(connect "rivendell_0:playout_0L" "Onboard:playback_1")<br />
(connect "rivendell_0:playout_0R" "Onboard:playback_2")<br />
<br />
; Connect the first Rivendell input port to the Onboard card.<br />
(connect "Onboard:capture_1" "rivendell_0:record_0L")<br />
(connect "Onboard:capture_2" "rivendell_0:record_0R")<br />
<br />
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;<br />
; Audio processing with Calf plugins<br />
; Use this along with calfjackhost to connect some Calf audio<br />
; plugins for real-time audio processing.<br />
;<br />
; Rivendell Primary output to BassEnhancer<br />
;(connect "rivendell_0:playout_0L" "calf:bassenhancer_in_l")<br />
;(connect "rivendell_0:playout_0R" "calf:bassenhancer_in_r")<br />
; -or- Rivendell Primary output to MultibandCompressor input<br />
;(connect "rivendell_0:playout_0L" "calf:multibandcompressor_in_l")<br />
;(connect "rivendell_0:playout_0R" "calf:multibandcompressor_in_r")<br />
; MultibandCompressor output to Limiter input<br />
;(connect "calf:multibandcompressor_out_l" "calf:multibandlimiter_in_l")<br />
;(connect "calf:multibandcompressor_out_r" "calf:multibandlimiter_in_r")<br />
<br />
; BassEnhancer output to MultibandCompressor input<br />
;(connect "calf:bassenhancer_out_l" "calf:multibandcompressor_in_l")<br />
;(connect "calf:bassenhancer_out_r" "calf:multibandcompressor_in_r")<br />
<br />
; MultibandCompressor output to MultibandLimiter input<br />
;(connect "calf:multibandcompressor_out_l" "calf:multibandlimiter_in_l")<br />
;(connect "calf:multibandcompressor_out_r" "calf:multibandlimiter_in_r")<br />
<br />
; MultibandLimiter output to Onboard input<br />
;(connect "calf:multibandlimiter_out_l" "Onboard:playback_1")<br />
;(connect "calf:multibandlimiter_out_r" "Onboard:playback_2")<br />
<br />
; Limiter output to glasscoder input<br />
; This assumes you are running GlassCoder with the JACK<br />
; client name "glass".<br />
;(connect "calf:multibandlimiter_out_l" "glass:input_1")<br />
;(connect "calf:multibandlimiter_out_r" "glass:input_2")<br />
<br />
</nowiki><br />
<br />
=== Restart Rivendell Service ===<br />
<br />
After making changes to your JACK configuration in Rivendell you must restart the Rivendell service. Do this by either rebooting your Rivendell computer, or running the following command in a terminal window:<br />
<br />
<nowiki><br />
sudo systemctl restart rivendell.service<br />
</nowiki><br />
<br />
== Future Work ==<br />
<br />
To do: make JACK work with [https://www.freedesktop.org/wiki/Software/PulseAudio/ PulseAudio].<br />
<br />
In mid 2020 the [https://pipewire.org/ pipewire] audio subsystem is maturing and aims to be compatible with and to eventually replace both the PulseAudio and the JACK audio systems. Pipewire may include more &ldquo;plumbing&rdquo; tools over the long run.</div>
DKlann
http://wiki.rivendellaudio.org/index.php?title=Should_you_think_of_Rivendell_as_just_another_program_to_run_on_the_computer_or_as_an_appliance%3F&diff=539
Should you think of Rivendell as just another program to run on the computer or as an appliance?
2020-09-16T16:03:12Z
<p>DKlann: Delete outdated reference to the "Rivendell Appliance" (the link is dead).</p>
<hr />
<div>'''Comment:''' When I first started playing with Linux, I was upgrading every 6 months. It didn't take long to realize I was playing whack-a-mole. <br />
<br />
'''Answer:''' Yup. Real easy trap to fall into. I've done it too.<br />
<br />
For years, I had always thought of Rivendell as an application, designed to fit in among other applications on a Linux system. As such, it was important that it obey certain conventions so as to 'fit into the ecosystem' in a smooth way and play nice with all the other applications on the block. <br />
<br />
I've since come to the conclusion that this approach is a mistake. Rivendell is a classic 'vertical' application, not something that needs to run on Aunt Millie's proverbial e-mail machine. As such, it is '''NOT one application among many on a system''', but rather it '''IS the System'''; everything else that's there is there solely inasmuch as it helps Rivendell get its task (i.e. running the radio station) done reliably.<br />
<br />
I've found that this approach can clarify one's outlook wonderfully. For one thing, things become a lot less distro- and desktop-centric. The window manager need be little more than an application launcher; most of the 'desktop' crud supplied by projects like GNOME and KDE become simply irrelevant and can be removed, yielding a markedly nimbler system. Likewise the distro: so long as it runs Rivendell properly, there's really no reason to replace it. Paravel still has sites under commercial support that run <br />
quite well on SuSE 9.2 (though that will be changing when RD 2.0 ships -- the dependencies have changed too much).<br />
<br />
Frederick F. Gleason, Jr.<br />
<br />
Chief Developer<br />
<br />
Paravel Systems</div>
DKlann
http://wiki.rivendellaudio.org/index.php?title=Evaluating_Rivendell&diff=538
Evaluating Rivendell
2020-09-16T16:01:31Z
<p>DKlann: /* Broadcast Appliance */ Formatting. Add link to Paravel Rivendell 3 installation instructions. Add link to the configuration article.</p>
<hr />
<div>Before moving over to any new playout system, most users will want to have a chance to find out whether the new system will meet their needs. Rivendell is fairly unique in that it is free, allowing you to have access to the full system for as long as you want. As Rivendell runs on the Linux operating system, there is no need to worry about having to buy an OS for it to run on.<br />
<br />
__TOC__<br />
=== Evaluating Rivendell ===<br />
There are a couple of ways in which you can try out Rivendell to see if it meets the needs of your station. The first of these is by installing a complete system (also known as a Broadcast Appliance). The second way, that is currently under development, is by downloading a fully configured VMWare Virtual image. This will allow you to run a complete Rivendell system within a virtual machine on your computer without having to find a dedicated machine. Both of these options are based on the CentOS Linux operating system.<br />
<br />
==== Broadcast Appliance ====<br />
If you have a spare PC, you can [http://static.paravelsystems.com/rivendell-install-rd3/rivendell-install-rhel7.html download and install] a full system on the computer, allowing you to try Rivendell with your own hardware. It should be noted that using this method to evaluate Rivendell will require the hard drive of the machine to be '''<font style="color:red;">completely wiped</font>''' and that you will '''<font style="color:red;">loose all existing data</font>''' stored on that drive. Only do this if you are happy to '''reformat the hard drive''' in your computer. You should also know that installing Rivendell on a PC leaves you with a &ldquo;''blank slate''&rdquo;. You also need to configure Rivendell's many options and settings in order to have a fully functional system. More details are available in [[Setup & Configuration]].<br />
<br />
==== Virtual Machine image ====<br />
We are currently looking at ways that a Virtual Machine image could be made available containing an up-to-date version of Rivendell for evaluation. When this is available we will be updating this section with information on how to use it. Using a Virtual Machine image you will be able to try out Rivendell without having to install it onto a spare machine.<br />
<br />
=== The Big Book of Rivendell Cookbook ===<br />
<br />
Inspired by [http://caspian.paravelsystems.com/pipermail/rivendell-dev/2020-February/028703.html this post to the Rivendell mailing list] by Frank Christel in February, 2020 we started writing this [[Cookbook]] on various Rivendell aspects (including getting started).<br />
<br />
=== [[Should you think of Rivendell as just another program to run on the computer or as an appliance?]] ===<br />
<br />
=== Is Rivendell the right radio automation for you? ===<br />
This Handbook on Radio Automation Systems ([http://prometheusradio.org/media/station_support/Automation_Handbook_color.pdf PDF document]) is a bit dated, but contains useful information about radio automation.<br />
<br />
[[User:DKlann|David Klann]] hosts a [https://docs.google.com/spreadsheets/d/13NCYwEKh-VgJ_gdpAcQhNoa12TEg27An_scWyHYDC08/edit?usp=sharing Radio Automation Comparison] spreadsheet. With the link, you have edit permissions to the sheet, and David encourages crowdsourcing updates to the data.<br />
<br />
=== [[Rivendell limitations & problems]] ===<br />
Areas where Rivendell may not meet your needs.<br />
<br />
=== [[Stations using Rivendell]] ===<br />
See if there is a station nearby and see if you can go see Rivendell in action.</div>
DKlann
http://wiki.rivendellaudio.org/index.php?title=Talk:Installing_Rivendell&diff=537
Talk:Installing Rivendell
2020-09-16T15:48:56Z
<p>DKlann: created</p>
<hr />
<div>When you update this article, please also update the [[Main_Page]] with the month and year on which you updated this article. Thanks!</div>
DKlann