Re: [RDD] MainLog gets fadded down upon tracks segueing

2022-05-11 Thread Alejandro olivan Alvarez

WOW! ... Thanks for your reply! I was really breaking my head.

I have not cross-imported 3 to 4 or vice-versa, but rather, from the 
very start, working on a RD4 machine from scratch for the testing... But 
after patient work on setting marks on 3/4 of my tracks on RD4 
RDlibrary, I'm starting to notice that something is wrong.


Have you opened an issue on the Github repo for this? (I guess that this 
may probably be considered a quite ugly bug!)


Thanks, regards.

On 5/11/22 16:11, Bemis, Andru wrote:
I'm not at my RD4 computer right now, but I have a hunch that the 
Fade-Up & Fade-Down markers have been accidently switched somewhere in 
the RD4 programming. I know for a fact that cuts exported from RD4 and 
imported to RD3 have Fade-Ups where I set Fade--Downs, and vise versa. 
This leads to very similar results as you're describing. There's 
definitely a bug of some sort in the way RD4 deals with fade markers.


Andru Bemis

Producer & Host | The Chenango Sessions
Director | Cranberry Coffeehouse
Music Director | WBDY-LP 99.5 FM
Piano Technician | Binghamton Piano Rescue

557 Chenango St, Binghamton, NY 13901, USA
(269) 767-8235
he/him

On Wed, May 11, 2022, 9:35 AM Alejandro olivan Alvarez 
 wrote:


Hi and thanks for your advice!

From the way you use the 'No fade on segue out' function (or as I
understand you do), it reassures me I'm using it right: As either
a way to prevent the cut to be faded down on segue (for instance
if the cut audio itself fades down nicely) or as a way to take
control of the actual fading down by means of a fade-down marker.

Anyways, the fact is that I forgot to mention that I'm beta
testing RD4 :-P ... so anything could happen!

But since you mentioned also the fade-up marker, I'm starting to
feel as if it does nothing (Beta4... probably not the place this
list to discuss this... but I hate reporting bugs out of my
incomplete knowledge of features), as most of my tracks do have
fade up mark for a whole 8 beat bar, and I'm failing to perceive
nice progressive fade ups, but rather sharp/sudden playback
starts, resulting in mediocre transitions/segues ... Will have to
invest time to be sure.

Anyhow... thank you very much!

Regards.

On 5/10/22 22:40, Brandon Anjeleno wrote:

Hey Alejandro,

I don't use the fade down markers, but occasionally, I'll use the
fade up marker to start a song at a specific point giving it a
clean start point at a specified time. I always use the 'No Fade
on segue out' function on *all* imaging / sweepers / promos, etc
so that the next marker doesn't fade out the imaging before the
end of the sweeper / promo when walking up a song intro.

Hope that helps!
Brandon Anjeleno
Station Manager
subSTATION.one <https://substation.one/>
UNITED WE DANCE ®
+1 (213) 839-7667 
WhatsApp <https://wa.me/13105986665>


On Tue, May 10, 2022 at 2:28 AM Alejandro olivan Alvarez
 wrote:

Hi List.

Not sure whether my list account is ok... hope it is! Here we go

I'm practicing with my library trying to have all tracks
properly
'marked'. So I've quite a lot of fade down and fade up marks.

The problem I'm facing is that the main log is often
mutted/faded down
as two tracks transition/segue, and I'm not finding the logic.

I'm looking for the cause of this, why do tracks sometimes play
entirelly with the LogMachine fadded down, with or without
Fade up
marks? ... I'm starting to thing I've misunderstood what's
the bussiness
logic behind the 'No Fade on segue out' button does... What
does this
button do? Does it apply for the track it is defined (as I
think it
does) or does it refer to the next track (like the segue mark
refers to
where the next track will start)

I'm not finding this on the manual...

Thanks!

___
Rivendell-dev mailing list
Rivendell-dev@lists.rivendellaudio.org
http://caspian.paravelsystems.com/mailman/listinfo/rivendell-dev


___
Rivendell-dev mailing list
Rivendell-dev@lists.rivendellaudio.org
http://caspian.paravelsystems.com/mailman/listinfo/rivendell-dev


/Message sent from andrubemis.com <http://www.andrubemis.com>/___
Rivendell-dev mailing list
Rivendell-dev@lists.rivendellaudio.org
http://caspian.paravelsystems.com/mailman/listinfo/rivendell-dev


Re: [RDD] MainLog gets fadded down upon tracks segueing

2022-05-11 Thread Alejandro olivan Alvarez

Hi and thanks for your advice!

From the way you use the 'No fade on segue out' function (or as I 
understand you do), it reassures me I'm using it right: As either a way 
to prevent the cut to be faded down on segue (for instance if the cut 
audio itself fades down nicely) or as a way to take control of the 
actual fading down by means of a fade-down marker.


Anyways, the fact is that I forgot to mention that I'm beta testing RD4 
:-P ... so anything could happen!


But since you mentioned also the fade-up marker, I'm starting to feel as 
if it does nothing (Beta4... probably not the place this list to discuss 
this... but I hate reporting bugs out of my incomplete knowledge of 
features), as most of my tracks do have fade up mark for a whole 8 beat 
bar, and I'm failing to perceive nice progressive fade ups, but rather 
sharp/sudden playback starts, resulting in mediocre transitions/segues 
... Will have to invest time to be sure.


Anyhow... thank you very much!

Regards.

On 5/10/22 22:40, Brandon Anjeleno wrote:

Hey Alejandro,

I don't use the fade down markers, but occasionally, I'll use the fade 
up marker to start a song at a specific point giving it a clean start 
point at a specified time. I always use the 'No Fade on segue out' 
function on *all* imaging / sweepers / promos, etc so that the next 
marker doesn't fade out the imaging before the end of the sweeper / 
promo when walking up a song intro.


Hope that helps!
Brandon Anjeleno
Station Manager
subSTATION.one <https://substation.one/>
UNITED WE DANCE ®
+1 (213) 839-7667 
WhatsApp <https://wa.me/13105986665>


On Tue, May 10, 2022 at 2:28 AM Alejandro olivan Alvarez 
 wrote:


Hi List.

Not sure whether my list account is ok... hope it is! Here we go

I'm practicing with my library trying to have all tracks properly
'marked'. So I've quite a lot of fade down and fade up marks.

The problem I'm facing is that the main log is often mutted/faded
down
as two tracks transition/segue, and I'm not finding the logic.

I'm looking for the cause of this, why do tracks sometimes play
entirelly with the LogMachine fadded down, with or without Fade up
marks? ... I'm starting to thing I've misunderstood what's the
bussiness
logic behind the 'No Fade on segue out' button does... What does this
button do? Does it apply for the track it is defined (as I think it
does) or does it refer to the next track (like the segue mark
refers to
where the next track will start)

I'm not finding this on the manual...

Thanks!

___
Rivendell-dev mailing list
Rivendell-dev@lists.rivendellaudio.org
http://caspian.paravelsystems.com/mailman/listinfo/rivendell-dev
___
Rivendell-dev mailing list
Rivendell-dev@lists.rivendellaudio.org
http://caspian.paravelsystems.com/mailman/listinfo/rivendell-dev


[RDD] MainLog gets fadded down upon tracks segueing

2022-05-10 Thread Alejandro olivan Alvarez

Hi List.

Not sure whether my list account is ok... hope it is! Here we go

I'm practicing with my library trying to have all tracks properly 
'marked'. So I've quite a lot of fade down and fade up marks.


The problem I'm facing is that the main log is often mutted/faded down 
as two tracks transition/segue, and I'm not finding the logic.


I'm looking for the cause of this, why do tracks sometimes play 
entirelly with the LogMachine fadded down, with or without Fade up 
marks? ... I'm starting to thing I've misunderstood what's the bussiness 
logic behind the 'No Fade on segue out' button does... What does this 
button do? Does it apply for the track it is defined (as I think it 
does) or does it refer to the next track (like the segue mark refers to 
where the next track will start)


I'm not finding this on the manual...

Thanks!

___
Rivendell-dev mailing list
Rivendell-dev@lists.rivendellaudio.org
http://caspian.paravelsystems.com/mailman/listinfo/rivendell-dev


Re: [RDD] Rivendell v3.x on Debianish distros [WAS: Rivendell v3.6.4]

2022-02-28 Thread Alejandro olivan Alvarez

Hi Fred!

I think I failed explaining my point correctly... What I meant was to, 
essentially, add a /debian folder (I know that isn't that simple... :-) 
in Rivendell 3.X code, without any functional code modification at all 
(therefore, only useable on 'still qt4' releases)


Rivendell 3.X code runs perfectly stable, and full featured, on Debian 
Buster/10 (currently old-stable release, and I'm sure so it does in 
Ubuntu 18 LTS and other derivatives). I remember I managed to package it 
(although very very rudimentary) with just a couple of patches to solve 
'make' issues (mostly math lib in header files and a few things like 
that), and some other minor tweaks ... but the source-code itself, as it 
is, once compiled, produces rock-solid full-featured and compatible 
binaries with Debian 10.


Regarding SQL, I recall that the only problem found was that MariaDB had 
to be reconfigured to run into non-strict mode (or the other-way around, 
not sure) just to prevent rdcatch crashing, but other that that, the 
compiled binaries worked like a charm, out-of-the-box, on Debian 10 
MariaDB (And I bet same is on Ubuntu of the time and earlier).


The main problem I see is that, at the end of the day, even if barely no 
code modification is needed, the time and effort to add/enable 
debianistic packaging for 3.X would be expended just to target 
OS/systems that are already superseded by newer ones (although probably 
much more modern than CentOS7, and maintained beyond 2024)... the move 
would only pay off if the time/effort would be very very little... 
(maybe merging /debian folder of already existing packaging repos?)


Sure, I agree there's no point on targeting 3.X to current Debian 
Systems (Bullseye/11, Ubuntu 20, etc...) the sole qt4 to qt5 task 
performed in 4.x is gigantic ... 4.X is the future on qt5-only systems :-)


Best regards.


On 2/28/22 3:29 PM, Fred Gleason wrote:
On Feb 28, 2022, at 04:01, Alejandro olivan Alvarez 
<mailto:alejandro.olivan.alva...@gmail.com>> wrote:


However, I'm starting to think that maybe it would be an interesting 
and relatively quick move, to use the 4.X successful debian-packaging 
experience, to officially port it to the 3.X code (even if this 
limits target systems to past-gen qt4-enabled Debian-derivative 
systems) as a kind of quick way to have a stop-gap/time-buying 
intermediate-point while 4.X gets ready.


Unfortunately, the packaging challenge is only part of the problem 
with Rivendell v3.x. on current Debian/Ubuntu. Much larger than that 
are the issues with RDBMS (MySQL/MariaDB) compatibility. A big part of 
doing v4.x was checking (and in many cases, remediating) every SQL 
statement in the codebase to ensure compatibility with current 
MySQL/MariaDB versions. There are literally hundreds of such 
statements in Rivendell.


Cheers!


|-|
| Frederick F. Gleason, Jr. |             Chief Developer         |
|                           |             Paravel Systems         |
|-|
|         A room without books is like a body without a soul.         |
|         |
|                                                         -- Cicero   |
|-|

___
Rivendell-dev mailing list
Rivendell-dev@lists.rivendellaudio.org
http://caspian.paravelsystems.com/mailman/listinfo/rivendell-dev
___
Rivendell-dev mailing list
Rivendell-dev@lists.rivendellaudio.org
http://caspian.paravelsystems.com/mailman/listinfo/rivendell-dev


Re: [RDD] Rivendell v3.6.4

2022-02-28 Thread Alejandro olivan Alvarez

HI!

Nice one to have.

I keep also a public repo for Rivendell4.X that includes both, releases, 
and nightly snapshots, for Buster, Bullseye and Bookworm, to ease 
testing (I have a 24/7 VM running Bullseye with Rivendell 4.X 
bleeding-edge nightly snapshots, and is totally stable, no crash... 
although some things are broken and do not work at all).


However, I'm starting to think that maybe it would be an interesting and 
relatively quick move, to use the 4.X successful debian-packaging 
experience, to officially port it to the 3.X code (even if this limits 
target systems to past-gen qt4-enabled Debian-derivative systems) as a 
kind of quick way to have a stop-gap/time-buying intermediate-point 
while 4.X gets ready.


Best regards!


On 2/27/22 12:48 AM, Florent Peyraud wrote:

Hi Fred and everybody

Le 22/02/2022 à 16:56, Fred Gleason a écrit :

On behalf of the entire Rivendell development team, I'm pleased to
announce the availability of the next production release of the next
major version of Rivendell, 3.6.4. Rivendell is a full-featured radio
automation system targeted for use in professional broadcast
environments. It is available under the GNU General Public License
version 2.


Great !

I'm also pleased to announce that v3.6.4 bionic packages are available 
on Rivendell-FR repository :


https://apt.rivendell-fr.org

I've also updated the 1 line installer script available at :

https://install.rivendell-fr.irg

I've refactored the packaging to be as close as possible to the 
packaging scheme of v4.0.0beta3, but using genuine debhelper package 
splitting instead of the very manual file distribution among the 
different package build directories as it is currently done in 
v4.0.0beta3. I borrowed some compile tricks from the "rules" Makefile 
of v4.0.0beta3 in order to improve my own build process so that the 
manpages embedded in the packages I provide are working well now ! 
Thanks a lot ;)


Don't hesitate to send me feedback so that I can make some adjustments 
before sending a pull request for the debian packaging files, which 
should ease package maintainability


Best regards

Florent

___
Rivendell-dev mailing list
Rivendell-dev@lists.rivendellaudio.org
http://caspian.paravelsystems.com/mailman/listinfo/rivendell-dev

___
Rivendell-dev mailing list
Rivendell-dev@lists.rivendellaudio.org
http://caspian.paravelsystems.com/mailman/listinfo/rivendell-dev


Re: [RDD] Reference OS

2022-02-25 Thread Alejandro olivan Alvarez

Hi.

Being a Debian and radio enthusiast, Rivendell definitely caught my 
attention when it went 'debianized' in the development branches, of what 
will be in the future the next big release Rivendell4. However, the 
debian-based reference OS was (or is, AFAIK) Ubuntu-Studio, NOT Debian 
itself.


I packaged Rivendell 3 (as other did also) for Debian Buster, in order 
to learn and test it, but unlike Rivendell 4, it's sources are not meant 
to be debian-packaged out of the box, and the resulting packaging and OS 
integration (at least with my packaging skills) was somehow ugly ... 
However, the Rivendell 3 on Buster was ROCK SOLID and operated perfectly.


Rivendell 4 OTOH being debian-friendly on its sources, makes incredibly 
easy to maintain packaging-wise, so there're already Debian repos around 
(I myself keep one to help/ease install and test 4.X)... However, in my 
experience, there're some important problems with 4.X and Debian, so 
Ubuntu-Studio is IMHO the sure-bet for Debian-based distro and 4.X at 
this time.


AFAIK CentOS support will be maintained (obviously) so, CentOS 8 (and i 
bet upcoming CentOS verions and/or project forks) is for sure, one, if 
not the best option.


Best regards.

On 2/25/22 12:10 AM, Steve wrote:

Hello,

Is the reference operating system for Rivendell still CentOS-something
or is Debian a solid option?

Steve
___
Rivendell-dev mailing list
Rivendell-dev@lists.rivendellaudio.org
http://caspian.paravelsystems.com/mailman/listinfo/rivendell-dev

___
Rivendell-dev mailing list
Rivendell-dev@lists.rivendellaudio.org
http://caspian.paravelsystems.com/mailman/listinfo/rivendell-dev


Re: [RDD] Auto restart after power failure.

2022-02-22 Thread Alejandro olivan Alvarez

Regarding your first question (fully automated auto-start of Rivendell)

It is doable for sure, however, the actual details on how to achieve 
that, very much depends and/or conditions on what pieces make up your 
'Linux' system (I assume that your hardware, has in BIOS the appropriate 
setting to power-on after a power failure)


As a general idea, you need to setup your session manager (which may 
depend on what Desktop-Environment have you installed.. GDM, XDM, KDM, 
Slim, etc...) to auto-login your user upon system boot.


Once you achieve that, you have to setup that, upon login, your user 
session automatically launches whatever software you need (and again, 
depending on the environment, there are different ways to do that).


As I think we can assume that you want RDAirplay going to air, apart of 
having Rivendell daemons up and running, you need, by one side, to 
either setup RDAirplay to automatically load on the LogMachines the last 
logs that was loaded (a feature you can setup in RDConfig) or to script 
the loading of the log you want using a MACRO. And then, make it to 
play This links to your second question.



Commands to air in proper time:

There are commands to do quite a lot of actions related to the thing you 
want: you can launch a command that makes RDAirplay to play a cart, to 
play the next cart in the log, or to 'push' one of the buttons of the 
Main log, just to mention some...Rivendell Macro Language makes the 
whole thing incredibly flexible!


However, consider that, if properly taylored, a log, on its own, can go 
to air 'by itself' if it has scheduled a cart to be aired on hard time 
(I recommend you to look at the Start time types, transition types and, 
overall, the behaviour of the logs on RDAirplay ) with a stop transition.


Moreover, there's a wonderful module (RDCatch... I miss it very much in 
Debian beta4) that is all about executing tasks (including for sure 
executing a command) on the wallclock, so you don't need to have a 
wallclock log dedicated to schedule hard time tasks. So, in RDCatch, if 
you create a Macro cart that loads a certain log on a RDAirPlay log 
machine, and starts its playout, and you schedule that cart on 
RDCatch... then, no matter what, when the time comes, the cart will be 
executed)



Hope I gave you some clues on where to focus on.

Best regards.


On 2/22/22 4:40 AM, Bryan Burchfield wrote:
I am trying to figure out how to set my Linux operating system to 
automically restart after a power failure and for RD Airplay to 
automatically open up as well. Can anyone help with this? Also, is 
there a command for RD Airplay to begin airing at the proper time on 
the log after the power failure? Thank you for any help.


Bryan Burchfield
Oldies 98.3 WMTY
WDEH AM-800
(423) 337-5025
mytrueoldies.com 
wdehradio.com 

___
Rivendell-dev mailing list
Rivendell-dev@lists.rivendellaudio.org
http://caspian.paravelsystems.com/mailman/listinfo/rivendell-dev
___
Rivendell-dev mailing list
Rivendell-dev@lists.rivendellaudio.org
http://caspian.paravelsystems.com/mailman/listinfo/rivendell-dev


Re: [RDD] Here's one I haven't seen before

2022-02-09 Thread Alejandro olivan Alvarez
Hi... not actually Rivendell related, but certanly so in general-purpose 
Linux desktops (mine, more specifically :-P, but quite long time ago... 
I use Debian testing in my computers, so I'm not surprised experienced 
issues from time to time), and its just as you describe.


In my experience, what leads to that behaviour were related to some kind 
of filesystem access/handling issue.


Either the filemanager application instance that is handling the Desktop 
itself crashed (Desktop being often yet another Folder at user home 
folder) misbehaved


Or some nasty GNOME Virtual Filesystem happened that lead to the problem 
above to happen.


Chances of those problems happening greatly increased if/while stressing 
the system with mounting remote filesystems, and/or mounting multiple 
remobable storage devices, and/or having many file manager windows 
opened while moving bunch of files between them.


Sure, your problem could be totally different...  this is just what I've 
experienced.


Best regards.

On 2/9/22 12:30 PM, Rob Landry wrote:


In the past week, I've seen two different Rivendell systems become 
unresponsive to mouse clicks and keyboards.


You can move the mouse cursor, but can't actually click on anything. 
rdairplay continues merrily along playing audio, and if you ssh into 
the machine, you can enter commands and they'll work normally. But the 
person in the studio sitting in front of the machine -- or anyone 
logged in via VNC -- can't do anything but watch. If I reboot the 
machine, the problem will go away.


Of the two machines where I observed the problem, one runs Rivendell 
version 2.19.3; the other is running 3.4.0; both are running CentOS 7.


Has anyone else encountered this problem?


Rob

--
Не думай что всё пропели,
Что бури все отгремели;
Готовься к великой цели,
А слава тебя найдёт.

___
Rivendell-dev mailing list
Rivendell-dev@lists.rivendellaudio.org
http://caspian.paravelsystems.com/mailman/listinfo/rivendell-dev
___
Rivendell-dev mailing list
Rivendell-dev@lists.rivendellaudio.org
http://caspian.paravelsystems.com/mailman/listinfo/rivendell-dev


[RDD] EX RML Macro Usage issues.

2022-02-08 Thread Alejandro olivan Alvarez

Hi again list!

Again... having some issues understanding how to correctly use the 
Macros, this time the EXecute Cart Macro.


I have created a set of three macro carts, two of them switch a pair of 
jackd endpoints to FFMPEG (combining JD and JC), and a third that clears 
all connections on FFMPEG (all JD). So far so good. Macros do work as 
expected when pushing the Run Macro button on RDLibrary, and I expect 
them to work if I use them within a log or in RDCatch.


However, being a fan of RDSoftKeys, I wanted to asign those macros a 
soft button and, therefore, I need to instruct RDSoftKeys to Execute 
those carts... so, I found the EX macro to be just what I needed, but it 
does not work :-(


In order to get rid of eventual mistakes on RDsoftkeys, I then tried to 
run the cart through an EX rmlsend on the console (as I usually do for 
testing) and it didn't work either...so I'm missing something on the EX 
Macro... could you point me how to use it (bellow are details of my tests)?



Cart 050009 exists in RDLibrary, runs and works! (this is syslog output):

Feb  8 13:38:59 debian ripcd: received rml: "JD ffmpeg:input_1 
rivendell_0:playout_2L!" from 192.168.112.11
Feb  8 13:38:59 debian ripcd: JACK port disconnection "ffmpeg:input_1 
rivendell_0:playout_2L" failed, err: -1
Feb  8 13:38:59 debian ripcd: received rml: "JD ffmpeg:input_2 
rivendell_0:playout_2R!" from 192.168.112.11
Feb  8 13:38:59 debian ripcd: JACK port disconnection "ffmpeg:input_2 
rivendell_0:playout_2R" failed, err: -1
Feb  8 13:38:59 debian ripcd: received rml: "JD ffmpeg:input_1 
Calf:output_11!" from 192.168.112.11
Feb  8 13:38:59 debian ripcd: JACK port disconnection "ffmpeg:input_1 
Calf:output_11" failed, err: -1
Feb  8 13:38:59 debian ripcd: received rml: "JD ffmpeg:input_2 
Calf:output_12!" from 192.168.112.11
Feb  8 13:38:59 debian ripcd: JACK port disconnection "ffmpeg:input_2 
Calf:output_12" failed, err: -1


However as I run this in console:

rmlsend --to-host=127.0.0.1 EX\ 050009!

I just get this on syslog, but absolutely nothing happens:

Feb  8 13:34:35 debian ripcd: received rml: "EX 050009!" from 
:::127.0.0.1



What am I missing? I have tried with and without leading 0, also using 
quotes... I'm sure I'm missing something very basic!


Thanks, regards.

___
Rivendell-dev mailing list
Rivendell-dev@lists.rivendellaudio.org
http://caspian.paravelsystems.com/mailman/listinfo/rivendell-dev


Re: [RDD] Understanding Jackd RML

2022-02-07 Thread Alejandro olivan Alvarez

That was it! :-P

Thank you for the point.

Best regards!

On 2/7/22 5:35 PM, David Klann wrote:

Greetings Alejandro,

I have used the JC and JD macros with success in the past. Maybe you have tried this, but 
I recommend changing the order of the "ports" in your JC and JD invocations. In 
other words, specify the ffmpeg ports first and the rivendell ports second in the rmlsend 
command line.

Hope this helps!

   ~David Klann

--- Original Message ---

On Monday, February 7th, 2022 at 07:16, Alejandro olivan Alvarez 
 wrote:


Hi list!

I've been approaching the idea of programmatically connecting and

disconnecting jack ports by means of Rivendell. Sure, this can be easily

achieved by using jack CLI tools together with cron, but the idea of

being able to integrate that as Events either in RDCatch or in a

LogMachine makes lot of sense to me.

However, I'm failing completely at the very most fundamental action, so

I'm feeling that maybe I've completely misunderstood the point behind

JC, JD and JZ Macros.

So... Given that the following CLI command do work (nothing fancy):

jack_connect rivendell_0:playout_1L ffmpeg:input_1

Now, I assume I can do the same with JC:

rmlsend --to-host=127.0.0.1 JC\ "rivendell_0:playout_1L"\ "ffmpeg:input_1"!

rmlsend --to-host=127.0.0.1 JC\ rivendell_0:playout_1L\ ffmpeg:input_1!

However, although syslog logs those RML being received and

processed...nothing actually happens.

So, I'm assuming I'm either making a syntax mistake or JC macro is not

intended to be used like that... Could someone share his/her experiences

with that? Or what does JC/JD/JZ do?

As a side note, I also though on using RN to pass jack_connect command,

but It didn't worked either (I always though on RN as a way to execute

scripts, not commands with arguments)

Thanks.

Regards.

Rivendell-dev mailing list

Rivendell-dev@lists.rivendellaudio.org

http://caspian.paravelsystems.com/mailman/listinfo/rivendell-dev

___
Rivendell-dev mailing list
Rivendell-dev@lists.rivendellaudio.org
http://caspian.paravelsystems.com/mailman/listinfo/rivendell-dev


[RDD] Understanding Jackd RML

2022-02-07 Thread Alejandro olivan Alvarez

Hi list!

I've been approaching the idea of programmatically connecting and 
disconnecting jack ports by means of Rivendell. Sure, this can be easily 
achieved by using jack CLI tools together with cron, but the idea of 
being able to integrate that as Events either in RDCatch or in a 
LogMachine makes lot of sense to me.


However, I'm failing completely at the very most fundamental action, so 
I'm feeling that maybe I've completely misunderstood the point behind 
JC, JD and JZ Macros.



So... Given that the following CLI command do work (nothing fancy):

jack_connect rivendell_0:playout_1L ffmpeg:input_1


Now, I assume I can do the same with JC:

rmlsend --to-host=127.0.0.1 JC\ "rivendell_0:playout_1L"\ "ffmpeg:input_1"!

rmlsend --to-host=127.0.0.1 JC\ rivendell_0:playout_1L\ ffmpeg:input_1!

However, although syslog logs those RML being received and 
processed...nothing actually happens.


So, I'm assuming I'm either making a syntax mistake or JC macro is not 
intended to be used like that... Could someone share his/her experiences 
with that? Or what does JC/JD/JZ do?



As a side note, I also though on using RN to pass jack_connect command, 
but It didn't worked either (I always though on RN as a way to execute 
scripts, not commands with arguments)



Thanks.

Regards.

___
Rivendell-dev mailing list
Rivendell-dev@lists.rivendellaudio.org
http://caspian.paravelsystems.com/mailman/listinfo/rivendell-dev


Re: [RDD] Ransonware attack

2021-12-15 Thread Alejandro olivan Alvarez

I would like to share some other thoughs here.

If you look at debian security repo packages notes, and you look for 
samba, you will find that, for the last vulnerability, found this 2021, 
only the packaged sources for Debian Stable, testing and Sid have being 
patched with the fix uploaded in samba.org. Older packaged versions, 
including buster (which was stable until well within 2021) have not 
(probably they can't due to aging code) been patched and are marked as 
'vulnerable'.


Samba/Windows/SMB/etc has its vulnerabilities, like many other software, 
but the difference here is that, the attack surface is far greater, 
since, out of the dark, Windows computers become potential backdoors for 
our Linux ecosystem.


Being a Linux-only user, I would add that, IMHO (and risking to be 
polemic) nothing is more secure regarding security fixes/updates on the 
SMB protocol than MS Itself (Windows server environment, with AD)... MS 
will be the first to detect AND DEPLOY any security fix for MS machines 
via Windows Updates. A Linux machine, on the other hand, can live 
happily with older/vulnerable samba packages for ages.


If I had to think of an ideal mixed Win-Linux environment for ease 
Dropbox upload/ingestion, my recommendation would be to have a Rivendell 
machines connecting as clients to a Windows Server, under AD (which is 
possible at OS level, but I recall maybe it is not for 
rdimport/export/etc ), and mount the remote share to read/ingest 
dropboxes, while the rest of the Win machines mounting the same share to 
do the uploads. This way, all the Win files would stay contained within 
the windows environment, subject to AD handshake all the time and 
possibly under antivirus scrutiny... as we say here 'Juntos, pero no 
revueltos' (toghether, but not mixed)


Cheers.

On 12/15/21 5:21 PM, Fred Gleason wrote:
On Dec 15, 2021, at 04:09, Andy Higginson > wrote:


Fred, is building some more security into the system something that 
could be incorporated into the Rivendell 4 build/setup while it is 
still in Beta?


As far as the installers are concerned, there are two main goals that 
we try to achieve:


1) Provide a “good experience”, in particular, a working, functional 
setup “out of the box” so that new users can see what Rivendell is and 
is capable of.


2) Install a good foundation, one that is reasonably secure, easy to 
update and to maintain according to industry best practices.


To an extent, these two goals tend to work against each other, 
especially with regard to the ’security’ metric. The first questions 
any new Rivendell user asks after getting the installer to work and 
playing the Test Tone cart typically are:


How do I load audio into this thing?

How do I get schedules (“logs”) into this thing?

How do I get as-played data out of this thing?

Or, in general: how do I transfer data in/out?

Given that our putative new user typically has limited (if any) Linux 
knowledge and indeed, limited or no formal IT experience at all, as 
well as that, in the overwhelming majority of cases, the data that 
these new users want to use resides on one or more Windows systems, 
our traditional approach for facilitating data transfer has been to 
provision, by default, a set of CIFS shares configured to allow 
‘guest’ access. That makes them easy to find and access by the typical 
moderately-knowledgeable Windows user. Unfortunately, it also makes 
them easy to find and access by the Black Hats if (when?) they manage 
to get access to the LAN to which the system is connected. Yes, the 
permissions on those shares can be tightened after installation so as 
to allow only users with the actual need for access to do so, but how 
many new users know how to do that? How many know that it’s even 
*necessary* to do that?


This is the fundamental tension that we have to deal with when setting 
up default installation environments. Sure, we could refrain from 
installing Samba and wind up with a more ‘secure’ setup, but only at 
the price of the user having to configure the requisite access (NFS? 
Remote mount a CIFS share on a Windows box? Install Samba?) All 
doable, but in no case immediately obvious for the average new user. 
For that user, doing any of those things is going to amount to getting 
thrown into the deep end of a very cold pool.


I guess, at the least, we could call out these sorts of issues in the 
‘Final Steps’ section of the instructions, along with pointers for 
various resources.

Cheers!


|-|
| Frederick F. Gleason, Jr. |             Chief Developer         |
|                           |             Paravel Systems         |
|-|
|   Real Users never know what they want, but they always know when   |
|   your program doesn't deliver it.         |
|         |
|                                                     -- 

Re: [RDD] Compiling Rivendell

2021-12-15 Thread Alejandro olivan Alvarez

Hi.

I remember that issue in my early attempts to build debian Buster (then 
stable release) packages for rivendell 3.x


Apparently, CentOS 7 (I guess that came from previous) shipped 
versions/defaults for the building/linker environment allowed for math 
libraries not needed to be declared in tha header files, while in Buster 
(and I asume that's the trend for newer versions) that wasn't the case.


The way I solved that was by quilt patching the sources adding the math 
library on the troublesome files (don't recall on it).


As Rivendell is evolving under the qt5 branches towards more recent 
systems, I remember at some point Fred wiped out all those errors 
rendering all my tricks and hacks unnecessary... so, you may search in 
the commits to for math/pow10 building issues to get how to patch the code.


I think I still keep my notes on it...I will search for them just in case.

Regards.


On 12/15/21 5:14 PM, le père Léon wrote:

Le 10/12/2021 à 23:15, Tim Camp a écrit :

I remember this coming up before and have found some discussion on it,
but what is the final determination of what to do about pow10 in cae
causing make to error out?

http://caspian.paravelsystems.com/pipermail/rivendell-dev/2018-July/026975.html



___
Rivendell-dev mailing list
Rivendell-dev@lists.rivendellaudio.org
http://caspian.paravelsystems.com/mailman/listinfo/rivendell-dev


Re: [RDD] Ransonware attack

2021-12-15 Thread Alejandro olivan Alvarez


On 12/15/21 10:16 AM, Andy Higginson wrote:

Hi,

Some interesting ideas here.  One thing that I would say is that we 
are not all networking experts.


This December my last CISCO certification ends, and I'm not going to 
re-cert... and for a good reason: On the 10 years I've been working in 
my current job, only in one case, the entity, budget and complexity of 
the customer (A public/national radio network) networking infrastructure 
made applicable my CCNA/CCNP knowledge. In all other cases, I rarely 
find anything beyond a simple, flat, L2 broadcast domain (i.e a cheap 
un-managed or very simple managed switch with no data VLANs)... But 
here's the thing:


Once you gained access to a Linux (or windows, I guess, but I'm Linux 
user) host, it is VERY EASY to exploit a Layer 2 (VLANs) deployment by 
several techniques (I'm thinking on just a simple python script to scan 
for VLAN hopping exploit, to say a kiddies one) unless the network 
devices do feature AND have configured/enabled several security features 
(ARP spoofing, DHCP snooping, port security policies, etc, etc). That 
requires knowledge and usage of more expensive gear. But the thing is 
that, preventing of an attacker to gain access of an internal host in 
the first place is, by far, the single, most important point to put the 
focus on.



  I have to admit that some of the stuff you are talking about goes 
over my head.  I've not had cause to look at AD in any scope.  Would 
it be possible to point us in the direction of a useful (in this 
context) Samba4 AD beginners primer to get started?


I like the onion/layered principle for a security approach, and, since 
network deployments can largely vary from organization and organization 
(and is something kinda 'external' to the software level) I like the 
idea of strengthening or provide guidelines for securing Rivendell 
deployments at the immediate practical use-case, software level.


Regarding SAMBA, AD and Rivendell, I think the very early measure would 
be to focus on securing SAMBA on its own (Rivendell/AD integration is 
something more of a Quality of Life than of security, and thus, of 
secondary order) on deployments where Dropboxes have to co-exist with 
Windows machines... The problem is that there are several 
use-cases/scenarios and the approach may differ from case to case (who's 
sharing? a Linux box? a win box? a NAS? are all Dropboxes in a 
centralized share? do Machines share on their own? is there an AD in 
place?...)


Best regards.



Thanks

Andy




 On Wed, 15 Dec 2021 09:03:25 + *Alejandro olivan Alvarez 
* wrote 


Hi list.

I've been reading this very interesting case of vulnerability
exploit ending in disaster, in a Linux environment... with Samba
around the mess. I would like just to share some thoughts

My partners of Automation dptm. that work with Win Based
Automation systems, do often face the need to bypass security
measures/restrictions self-imposed by Win systems regarding its
native samba versions and policies. The root problem being that,
often, for the shake of simplicity and usability, the whole system
relies on usage of samba version bellow 4, often they need to work
with NAS devices using smb v1 in guest mode, or very basic
workgroup protection, not to mention absolute lack of Active
Directory. They often need to edit Windows regedit to enable older
protocols of Samba in order to work... The think is: the trend of
enforcing Samba v4 with either MS AD or Samba4 AD is there for
good reason, there're many vulnerabilities found around CIFS/SMB
protocols along the times, and its very sad that ends up affecting
our beloved Linux ecosystem.

Since inter-operation with Windows machines is a very probable
use-case to be found for Rivendell deployments (typically
Dropboxes) I'm wondering whether a good practice for a
professional setup would be to look for a tighter integration
between Rivendell and Samba4 AD and or MS AD as part of Rivendell
install (this is, at Linux OS underlying levels, already done and
commented in this mailing list) specially when no MS AD is
present, so Rivendell server could get the role of AD Server,
integrate its Users database with samba, and enforce Samba v4
protocol around (My guess is that, eventually, an existing MS AD
could setup Rivendell Samba4 Domain as a trusted domain in a
domain forest, so they could co-exist and co-operate)

Good luck.

On 12/14/21 11:20 PM, Tim Camp wrote:

Excellent points Bill.
In our case we had ssh ability to get into the secure/studio
side but secured and using a unusual port, they didn't get
through that, they got in through samba and the samba server
only exported one directory where the logs were but as you
said they apparently easily hacked in through that.

This is why they only effected machines

Re: [RDD] Ransonware attack

2021-12-15 Thread Alejandro olivan Alvarez

Hi list.

I've been reading this very interesting case of vulnerability exploit 
ending in disaster, in a Linux environment... with Samba around the 
mess. I would like just to share some thoughts


My partners of Automation dptm. that work with Win Based Automation 
systems, do often face the need to bypass security measures/restrictions 
self-imposed by Win systems regarding its native samba versions and 
policies. The root problem being that, often, for the shake of 
simplicity and usability, the whole system relies on usage of samba 
version bellow 4, often they need to work with NAS devices using smb v1 
in guest mode, or very basic workgroup protection, not to mention 
absolute lack of Active Directory. They often need to edit Windows 
regedit to enable older protocols of Samba in order to work... The think 
is: the trend of enforcing Samba v4 with either MS AD or Samba4 AD is 
there for good reason, there're many vulnerabilities found around 
CIFS/SMB protocols along the times, and its very sad that ends up 
affecting our beloved Linux ecosystem.


Since inter-operation with Windows machines is a very probable use-case 
to be found for Rivendell deployments (typically Dropboxes) I'm 
wondering whether a good practice for a professional setup would be to 
look for a tighter integration between Rivendell and Samba4 AD and or MS 
AD as part of Rivendell install (this is, at Linux OS underlying levels, 
already done and commented in this mailing list) specially when no MS AD 
is present, so Rivendell server could get the role of AD Server, 
integrate its Users database with samba, and enforce Samba v4 protocol 
around (My guess is that, eventually, an existing MS AD could setup 
Rivendell Samba4 Domain as a trusted domain in a domain forest, so they 
could co-exist and co-operate)


Good luck.

On 12/14/21 11:20 PM, Tim Camp wrote:

Excellent points Bill.
In our case we had ssh ability to get into the secure/studio side but 
secured and using a unusual port, they didn't get through that, they 
got in through samba and the samba server only exported one directory 
where the logs were but as you said they apparently easily hacked in 
through that.


This is why they only effected machines were the ones with smb 
connections to the windows server that was their entry point.


Tim
WZEW




On Tue, Dec 14, 2021, 4:06 PM Bill Putney > wrote:


If you put your important systems in a separate IP address space
and use
a firewall for a router between the office space and the secure
space,
you can dictate what you let through the firewall on a computer by
computer and application by application basis. Don't let things go
from
your office net to your secure net unless you really have to.

If you need to look at logs, have the server on your secure
network push
(rsync) those files to an office server regularly. The bandwidth is
free, push it every minute if you want to. If you have things that
you
routinely need to send to the server on the secure network, put
them on
the office server and have a cron job on the secure server go and ftp
the specific file(s) you want and run a post process script on
them if
needs be.

If you need to ssh or vnc into the secure system from the office
systems, only allow those that actually need the access and use a
password token method like SecurID that is used once and changes
every
minute. Then if the hacker snoops the keyboard on the office
computer,
they only have a minute to make it into your secure system and you've
limited how useful that is to them. Don't use a file sharing
mechanism
that can't support strong fencing. I think Samba is easy to implement
and easy to hack.

I guess how much trouble you want to go to depends on how painful
it is
if you get hacked. If you are going to tighten security, be sure
to give
a lot of thought about how you're going to make it work "easily"
for the
people that routinely need access to the systems. If you make it so
arcane and hard to deal with, you're encouraging people within the
organization to work around the security. Then you really have a
problem
trying to keep the bad guys out.

Bill Putney - WB6RFW

District 2 Commissioner - Port of Port Townsend
Chief Engineer - KPTZ
El Jefe de Contenido - Port Townsend Film Festival
Private Pilot-Single Engine Land | Airframe & Powerplant Mechanic
/ Inspection Authorization

___
Rivendell-dev mailing list
Rivendell-dev@lists.rivendellaudio.org

http://caspian.paravelsystems.com/mailman/listinfo/rivendell-dev



___
Rivendell-dev mailing list

Re: [RDD] jackd2 and DBUS

2021-12-03 Thread Alejandro olivan Alvarez


On 12/3/21 11:41 AM, Florent Peyraud wrote:


Hi Fred !

Le 02/12/2021 à 22:43, Fred Gleason a écrit :
On Dec 2, 2021, at 08:25, Florent Peyraud > wrote:


unfortunately, either promiscuous mode in jack or system-wide daemon 
in pulse-audio are configurations not recommended nor supported. And 
as I'm trying to provide a solution for average users and rivendell 
administrators, who are not necessarily system administrators, I 
would like to avoid as much as possible unsupported or not 
recommended solutions. Moreover, since it deals with shared memory, 
relaxing permissions on such files may introduce security flaws.


Well, it all depends on your use case. But first, the low-hanging 
fruit: PulseAudio.


The use case for which PulseAudio was designed is ‘general desktops’ 
—i.e. playing the various beeps, boops and other sound effects 
generated by a GUI in the course of its normal operation when running 
typical ‘office automation’ type applications (web browsers, word 
processors, etc). As such, it has no place on a system designed to 
handle pro audio. It’s one of the first things I typically disable on 
any new Rivendell system.


Well, I agree with you, it depends on the use case : Most of my 
customers are community radio stations. The computers they use are 
multi purpose. They can be used for office suites as well as sound 
editing with audacity as well as browsing the web, or use rdlibrary to 
encode carts. For them, it is quite common to have only the 
motherboard integrated sound card, and it is hard to cope with this 
device being exclusively used by caed with an alsa setup. They DO need 
to be able to listen to songs on the net, then integrate them in 
Rivendell and set markers in rdlibrary, all in the same session. For 
them, having a sound daemon in between allowing concurrent access to 
the sound device is a must. And sometimes, programs does not know how 
to speak JACK protocol, but they know how to speak alsa/pulseaudio 
language.


Hi, here I dare to add that, in my own experience (because often I do 
test in my own laptop) that's what I'm usually doing by combining two 
pieces:


Jackd in promiscuous mode is one of the pieces... because then, I can 
bridge my user-space jackd apps to and from Rivendell ... but still, I 
need to have a sound card for 'regular' apps.


Here comes the second part, my solution (no pulse audio here) is to 
start jackd against the laptop sound card (and not a dummy interface, as 
I do in my mockup Rivendell terminals), AND setup an ALSA-to-JACK bridge 
configuration (it is documented around in internet, it is done through 
an .asoundrc file that adds user-overrides to ALSA config). This second 
piece includes setting as ALSA's default audio interface the 
ALSA-to-JACK bridge virtual interface. This way, any non-jack-aware apps 
will happily play audio to jackd fully unaware/transparently :-)


The only caveat for this approach is that, for sound cards that do 
feature sub-devices (such ASI cards) jack only gets the physical 
ins/outs of first subdevice... but this is fine for an integrated 
mobo/laptop sound card.


With pulse audio (I don't use it) in theory all this should happen 
(AFAIK) automagically...


I could share my .asoundrc config file for alsa-to-jack bridge (also, 
that may need extra packages installed)


Cheers.

I agree, rivendell exclusive access to the sound device is also the 
way I usually sets rdairplay dedicated machines up, but it is less and 
less common for my customers to have this kind of dedicated machine.


As for JACK’s promiscuous mode, I’m not quite sure what you mean by 
calling it ‘unsupported’. It’s present in the stock tarballs and 
binary downloads available at the canonical JACK GitHub site, so it’s 
certainly ’supported’ by the primary JACK developers. Whether its use 
is *appropriate* in a given situation is a matter of professional 
judgement. Does it open new avenues by which a system could be 
compromised in some way? Sure. So does giving a user an account on 
the system. So does turning on the power on the computer in the first 
place. I think the more relevant question to ask is: does it provide 
additional capabilities sufficient to justify the additional risk? 
The standard security principle of ‘least privilege’ holds that a 
user should have no more power on a system than the minimum necessary 
to do their required tasks. Given that Rivendell's previous, 
“non-promiscuous mode” JACK setup required that users run all JACK 
audio applications as ‘root’, I have to imagine that this change 
makes for a vastly improved security posture in general.
Well. "unsupported' may not be the correct term. I've read some ML 
posts talking about this options not being supported, but probably 
they meant it did not represent the most widely used configuration. On 
the security matter, I agree with you, there is a trade-off to find, 
and after looking more closely to the 

Re: [RDD] jackd2 and DBUS

2021-12-02 Thread Alejandro olivan Alvarez

On 12/2/21 2:25 PM, Florent Peyraud wrote:

Hello !

I've just realized I didn't click on "send" button yesterday night, 
and since then, thins may have changed with v4.0.0beta4 ;) 
Hi! yep... now its me I'm waiting to learn about the orthodox 
rivendell-ish way to have the right integration! :-)

Never mind, I post it like this, hoping this is still relevant :)

Le 01/12/2021 à 10:43, Alejandro olivan Alvarez a écrit :



On 12/1/21 10:27 AM, Florent Peyraud wrote:

Hi everyone.

I'm trying to streamline the integration of Rivendell 4 on lubuntu 
or other debian based distros using modern tools such as systemd and 
DBus. Now, qjackctl and the packages jackd2 uses Dbus to launch jack 
daemon by default. This provides some cool features, notably the 
handshaking with pulseaudio in order to release the alsa device from 
pulse and let jack use it instead, and also the automatic connection 
of pulseaudio into jack as a client.


The way qjackctl launches jack is by issuing the "/usr/bin/jackdbus 
auto", then setups and actually starts jack through the DBUS 
interface with /usr/bin/jack_control


I would like to mimic this behavior in order to make rivendell 
service (well... caed) start Jack this way with an external scirpt, 
but it fails when trying to connect jack. The logfile says "Unable 
to communicate with JACK server". Obviously, the actual jack server 
may take too much time to launch and it is not ready when caed tries 
to connect. DBus provides a way to check the status of jack. Maybe 
just a pause could be sufficient to allow jack to start before 
trying to connect to it.


Would it be possible to take this way of launching jack through DBus 
into account so that it can be started at boot time with caed 
instead of waiting for a user session to begin ?


By the way, I tweaked systemd service for rivendell (sudo systemctl 
edit rivendell) in order to start the daemons with another user 
(actually the user who starts the session afterwards to use 
Rivendell tools) so that I can launch qjackctl or other tools with 
this user and modify the patching of clients without being forced to 
connect as root, which is not recommended on ubuntu/debian. Maybe, 
it could be useful to be able to select the user for each 
sub-service in rd.conf, and drop privileges while starting rivendell 
service according to this.


Thanks a lot for your answers/ideas. Take care

Florent


The way I do works just like a charm to me, where everything 
integrates an inter-operates to perfection: I'm using the jackd2 
PROMISCUOUS MODE feature to create a single, system-wide, 
user-interoperable, jackd service, that act as a hub to any jack 
client, of any user (thus Rivendell) on the whole system, allowing 
each user (the workstation user) to manage their GUI clients and/or 
applications using GUI tools and send/get audio to/from any other 
audio clients on the system.


In this mode, Rivendell automatically connects to the system-wide 
jackd server.


In the same way, qjackctl (or any other GUI applications, jack 
manager/client, etc... for instance, I use Ardour as Rivendell's 
mixer, and jamin as DSP) by means of X11/dbus does automatically 
detect and bind to the system-wide, shared, running jackd server... 
automatically.


I had posted specific setup details (Debian) before in this list if 
you're interested on.


Best regards.


Hi Alejandro

Thanks for your answer. I remember this discussion we used to have 
together ;)


I just had a look on it and as you said, you are an advanced user, 
system programmer, and don't rely necessarily on distros sound stack 
(pulse, dbus), which is perfectly fine in your case. The promiscuous 
mode also exist for pulse audio (well, a kind of promiscuous mode) in 
order to have a system wide daemon running.


unfortunately, either promiscuous mode in jack or system-wide daemon 
in pulse-audio are configurations not recommended nor supported. And 
as I'm trying to provide a solution for average users and rivendell 
administrators, who are not necessarily system administrators, I would 
like to avoid as much as possible unsupported or not recommended 
solutions. Moreover, since it deals with shared memory, relaxing 
permissions on such files may introduce security flaws.


By the way, I could not find a way to start Jackd in promiscuous mode 
through dbus. If you have any clue, I would be pleased to test it


Thanks and regards

Florent





___
Rivendell-dev mailing list
Rivendell-dev@lists.rivendellaudio.org
http://caspian.paravelsystems.com/mailman/listinfo/rivendell-dev

___
Rivendell-dev mailing list
Rivendell-dev@lists.rivendellaudio.org
http://caspian.paravelsystems.com/mailman/listinfo/rivendell-dev

___
Rivendell-dev mailing list
Rivendell-dev@lists.rivendellaudio.org
http://caspian.paravelsystems.com/

Re: [RDD] jackd2 and DBUS

2021-12-02 Thread Alejandro olivan Alvarez
I'm posting new reply on this thread since, to my joy, as of beta4 
commit 
https://github.com/ElvishArtisan/rivendell/commit/3c4e2bd6d7dda1a730d1d8f6fb6754bb76d1530d 
released tonight, the whole picture regarding Rivendell/Jackd 
integration in recent systems may very much change for some of us Jackd 
fans: Rivendell is coming now with out-of-the-box promiscuous mode 
support...  yay!!! :-D


So, it is time now to drop old hackish practices and switch to the 
intended/ortodox packaged ones for the jackd integration with 
promiscuous mode, which raises me some questions (at this point, I guess 
just Fred can answer) about overall how the new picture is:


- Does a rivendell handled jackd instance (defined in RDConfig) 
automatically run in promiscuous mode for the 'audio' GID? or has to be 
somehow 'enabled'?


- While regular users are already set as 'audio' members (very clever 
move selecting audio as the promiscuous GID!), now the package seems to 
be handling the environment variable part, pointing to the 'audio' GID, 
but... is it system wide? or does user-space launched applications have 
to initialize it?


Thank you very much for such a new feature!

Best regards.

On 12/1/21 10:27 AM, Florent Peyraud wrote:

Hi everyone.

I'm trying to streamline the integration of Rivendell 4 on lubuntu or 
other debian based distros using modern tools such as systemd and 
DBus. Now, qjackctl and the packages jackd2 uses Dbus to launch jack 
daemon by default. This provides some cool features, notably the 
handshaking with pulseaudio in order to release the alsa device from 
pulse and let jack use it instead, and also the automatic connection 
of pulseaudio into jack as a client.


The way qjackctl launches jack is by issuing the "/usr/bin/jackdbus 
auto", then setups and actually starts jack through the DBUS interface 
with /usr/bin/jack_control


I would like to mimic this behavior in order to make rivendell service 
(well... caed) start Jack this way with an external scirpt, but it 
fails when trying to connect jack. The logfile says "Unable to 
communicate with JACK server". Obviously, the actual jack server may 
take too much time to launch and it is not ready when caed tries to 
connect. DBus provides a way to check the status of jack. Maybe just a 
pause could be sufficient to allow jack to start before trying to 
connect to it.


Would it be possible to take this way of launching jack through DBus 
into account so that it can be started at boot time with caed instead 
of waiting for a user session to begin ?


By the way, I tweaked systemd service for rivendell (sudo systemctl 
edit rivendell) in order to start the daemons with another user 
(actually the user who starts the session afterwards to use Rivendell 
tools) so that I can launch qjackctl or other tools with this user and 
modify the patching of clients without being forced to connect as 
root, which is not recommended on ubuntu/debian. Maybe, it could be 
useful to be able to select the user for each sub-service in rd.conf, 
and drop privileges while starting rivendell service according to this.


Thanks a lot for your answers/ideas. Take care

Florent

___
Rivendell-dev mailing list
Rivendell-dev@lists.rivendellaudio.org
http://caspian.paravelsystems.com/mailman/listinfo/rivendell-dev

___
Rivendell-dev mailing list
Rivendell-dev@lists.rivendellaudio.org
http://caspian.paravelsystems.com/mailman/listinfo/rivendell-dev


Re: [RDD] jackd2 and DBUS

2021-12-01 Thread Alejandro olivan Alvarez



On 12/1/21 10:27 AM, Florent Peyraud wrote:

Hi everyone.

I'm trying to streamline the integration of Rivendell 4 on lubuntu or 
other debian based distros using modern tools such as systemd and 
DBus. Now, qjackctl and the packages jackd2 uses Dbus to launch jack 
daemon by default. This provides some cool features, notably the 
handshaking with pulseaudio in order to release the alsa device from 
pulse and let jack use it instead, and also the automatic connection 
of pulseaudio into jack as a client.


The way qjackctl launches jack is by issuing the "/usr/bin/jackdbus 
auto", then setups and actually starts jack through the DBUS interface 
with /usr/bin/jack_control


I would like to mimic this behavior in order to make rivendell service 
(well... caed) start Jack this way with an external scirpt, but it 
fails when trying to connect jack. The logfile says "Unable to 
communicate with JACK server". Obviously, the actual jack server may 
take too much time to launch and it is not ready when caed tries to 
connect. DBus provides a way to check the status of jack. Maybe just a 
pause could be sufficient to allow jack to start before trying to 
connect to it.


Would it be possible to take this way of launching jack through DBus 
into account so that it can be started at boot time with caed instead 
of waiting for a user session to begin ?


By the way, I tweaked systemd service for rivendell (sudo systemctl 
edit rivendell) in order to start the daemons with another user 
(actually the user who starts the session afterwards to use Rivendell 
tools) so that I can launch qjackctl or other tools with this user and 
modify the patching of clients without being forced to connect as 
root, which is not recommended on ubuntu/debian. Maybe, it could be 
useful to be able to select the user for each sub-service in rd.conf, 
and drop privileges while starting rivendell service according to this.


Thanks a lot for your answers/ideas. Take care

Florent


The way I do works just like a charm to me, where everything integrates 
an inter-operates to perfection: I'm using the jackd2 PROMISCUOUS MODE 
feature to create a single, system-wide, user-interoperable, jackd 
service, that act as a hub to any jack client, of any user (thus 
Rivendell) on the whole system, allowing each user (the workstation 
user) to manage their GUI clients and/or applications using GUI tools 
and send/get audio to/from any other audio clients on the system.


In this mode, Rivendell automatically connects to the system-wide jackd 
server.


In the same way, qjackctl (or any other GUI applications, jack 
manager/client, etc... for instance, I use Ardour as Rivendell's mixer, 
and jamin as DSP) by means of X11/dbus does automatically detect and 
bind to the system-wide, shared, running jackd server... automatically.


I had posted specific setup details (Debian) before in this list if 
you're interested on.


Best regards.



___
Rivendell-dev mailing list
Rivendell-dev@lists.rivendellaudio.org
http://caspian.paravelsystems.com/mailman/listinfo/rivendell-dev

___
Rivendell-dev mailing list
Rivendell-dev@lists.rivendellaudio.org
http://caspian.paravelsystems.com/mailman/listinfo/rivendell-dev


Re: [RDD] Rivendell and Network Monitoring Systems

2021-11-16 Thread Alejandro olivan Alvarez


On 11/16/21 12:53 PM, drew Roberts wrote:
Is anyone monitoring the "status" of a "Rivendell System/Network" 
using a network monitoring system like libreNMS, Munin, Nagios, etc? 
Especially the status of rdairplay and whatever logs it is playing...


If so, any thoughts/pointers?
As an broadcaster, I'm completely amateur, but as a sys admin, I've 
extensive experience monitoring networks of Linux-based machines/VMS. I 
never install a, non-monitored, machine...


For isolated/solo scenarios, there are plenty of tools... even GUI...I 
like using conky as/in desktop widget.


Munin is my very 'entry level' bare-minimum monitoring tool for a small 
network (I use it the most... maybe not the easiest to setup, but I like 
its very low resources footprint)


For a somehow more complex monitoring solution, I recommend OMD/Check_MK 
(based on Nagios core)


For a complex, full featured monitoring solution, what I implement Is an 
ELK cluster (elasticsearch) ... but this could easily be overkill.



Best regards!



--
Enjoy the *Paradise Island Cam* playing
*Bahamian Or Nuttin* - https://www.paradiseislandcam.com/ 



___
Rivendell-dev mailing list
Rivendell-dev@lists.rivendellaudio.org
http://caspian.paravelsystems.com/mailman/listinfo/rivendell-dev
___
Rivendell-dev mailing list
Rivendell-dev@lists.rivendellaudio.org
http://caspian.paravelsystems.com/mailman/listinfo/rivendell-dev


[RDD] DTMF detection in Rivendell

2021-11-16 Thread Alejandro olivan Alvarez

Hi list!

From what I've recently learn, audible tones (DTMF tones I've been 
told, although I recalled DTMF acronym to be telephony related...) in 
radio networks, due to its simplicity and, more importantly, low cost 
(drop satellites!) are becoming somehow by paradox (I've been told that 
for years, DTMF tones where considered a matter of 
amateur/non-profit/tiny radios... being satellites used for the 'pros') 
the preferred way to trigger events here (Spain)... Even top-tier, 
nation-wide radio networks, have switched to audible tones (I had not 
realized about that, but now, paying attention, I hear them!) and have 
dropped satellite signaling costs.


This triggered me a question immediatelly: On Windows-based automation 
systems, DTMF detection uses to be included as a feature, so... how does 
the Rivendell community users handle this!?!?!?!


Googling around, I've found this: 
http://wiki.rivendellaudio.org/index.php/How_to_trigger_events_from_tones_on_your_network


Although somehow old, and basically pointing to the usage of a Windows 
software under Wine, that tells me that the need, the use-case, is 
there... and has been dealt by someone.


I've also found references for some linux tools, like multimon and 
multimon-ng, even Node/NPM libraries, being able to detect audio tones 
under Linux, but not much user-friendly... so:


How do you handle this? What are your approaches to handle DTMF and 
trigger RMLs... Wouldn't be nice to have RDCatch to be able to 'catch' 
tones?



Cheers

___
Rivendell-dev mailing list
Rivendell-dev@lists.rivendellaudio.org
http://caspian.paravelsystems.com/mailman/listinfo/rivendell-dev


Re: [RDD] Understanding Fade-UP and Fade-Down markers

2021-10-28 Thread Alejandro olivan Alvarez


On 10/28/21 4:52 AM, Chuck wrote:

On Mo, 25 Oct 2021 10:11:02 -0700
Mike Carroll mailto:druidl...@gmail.com>> wrote:

To add to Fred's comments about the Fades: Ideally a station would modify
their songs for trims, fades, and levels before they are brought into
Rivendell. So the only thing the playback system would need to know about
is segue points.  However, that's a lot of work for us small stations, so
we take the easier way out and use the RDLibrary controls.


Adding a +1 for this comment.  I am no longer in the commercial end of 
the business, but rather, with a non-comm; however, I would think the 
fade up and down ability is more important than ever.  The 2 biggest 
radio chains operating in town have eliminated the job of production 
director and the production studios are no longer maintained with 
their switch to contract engineers, who are only called when something 
in the main studio dies completely.  Whereas the production director 
used to comb and massage every bit of audio that was carted, including 
the segue cue at a cart’s end, audio is now added with no production 
pre-prep at all.


Although out of original topic... this comment has caught very much my 
attention.


I don't work, directly (although I do indirectly, since I'm in charge of 
cloud/networking operations, mostly streaming services) with/for radio 
stations, but my colleagues of the automation-systems do... and I'm very 
much interested in their talks and experiences, and, from quite a long 
time, an important part of their comments go in that direction: costs 
saving via maximize efficiency, being a main way to achieve that by 
moving from more, specialized job profiles, to less, more flexible 
profiles paired with more automated/integrable/flexible tools... and 
this is having a HUGE impact in the radio automation market (AFAIK, here 
in Spain and parts of Latin America... some rumours of France somehow 
the same)


And that puts the radio automation system right on the spot, more 
specifically, the INTEGRATED MULTI-TRACK EDITOR feature... to the point 
that a few EU companies here (AEQ, Dalet, XFrame) along with RCS and 
OmniPlayer are getting the upper hand (with competitors such Hardata 
rushing to implement that) with contracts falling by absence/presence of 
that fancy feature. I barely know about it but it seems that it allows 
changing internal workflows, thus, enabling job cuts  is that the 
trend around?


Best regards.



In fact, we do not have a production department, either.  We don’t 
play the count-off or extraneous studio talk prior to the musical 
start of any song (except for “Daydream Believer”), and we fade out of 
any applause quickly.  All that is done with the fade up and down 
markers.  I would think with the contraction of jobs in commercial 
radio the ability to fade within Rivendell would be more important 
today than in the past, when everything on-air, first passed through a 
production department.


--Chuck

___
Rivendell-dev mailing list
Rivendell-dev@lists.rivendellaudio.org
http://caspian.paravelsystems.com/mailman/listinfo/rivendell-dev
___
Rivendell-dev mailing list
Rivendell-dev@lists.rivendellaudio.org
http://caspian.paravelsystems.com/mailman/listinfo/rivendell-dev


Re: [RDD] Understanding Fade-UP and Fade-Down markers

2021-10-26 Thread Alejandro olivan Alvarez


On 10/25/21 8:05 PM, Fred Gleason wrote:
On Oct 25, 2021, at 12:54, Alejandro olivan Alvarez 
<mailto:alejandro.olivan.alva...@gmail.com>> wrote:


What I have to figure up is whether Fade Up mark goes BEFORE Cut 
start, to achieve the fading UP or not.


And the inverse at the end of track: first Fade-down being reached, 
triggering fade down until reaching End-cut.




A fade up will go:  Start ==> FadeUp

A fade down will go: FadeDown ==> End

*Aall* Rivendell cuts have exactly one Start and End marker.

Cheers!


Hi!

Now I think I got it:

Start-Mark defines both, the point from which cut content will be played 
(discarding anything before it), and, if a Fade-Up Mark is set, it is 
also the starting point of a logarithmic fade-up span, that goes from 
the Start-Mark itself to the Fade-UP mark. Therefore only a Fade-Up mark 
can exist, and it is set after the Start-Mark. In the absence of the 
Fade-Up mark, audio will be played, at full level, right from the 
Start-Mark.


All this applies to the End/Fade-Down Marks, but conversely, in the 
sense that the Fade-Down Mark, if set, it is before the End-Mark, 
defining the starting point of a logarithmic fade-down span, that ends 
at the End-Mark. End-Mark acts as both, fade-down span end mark, and 
content boundary mark. In the absence of the Fade-Down mark, audio will 
be played, at nominal level, right to the End-Mark. Content after 
End-Mark is, therefore, never played anyways.


When setting up Fade Marks, in the Cut/mark editor, the actual 
pre-listening does not reproduce/perform the actual logarithmic fade-up 
effect that will be aired by RDAirPlay. A normal, not faded, pre-listen 
playout is played instead, just to help determine where, exactly in the 
waveform, the mark is set.



Thank you All!



|-|
| Frederick F. Gleason, Jr. |             Chief Developer       |
|                           |             Paravel Systems       |
|-|
|         A room without books is like a body without a soul.       |
|       |
|                                                         -- Cicero   |
|-|

___
Rivendell-dev mailing list
Rivendell-dev@lists.rivendellaudio.org
http://caspian.paravelsystems.com/mailman/listinfo/rivendell-dev
___
Rivendell-dev mailing list
Rivendell-dev@lists.rivendellaudio.org
http://caspian.paravelsystems.com/mailman/listinfo/rivendell-dev


Re: [RDD] Understanding Fade-UP and Fade-Down markers

2021-10-25 Thread Alejandro olivan Alvarez

Hi Fred!

On 10/25/21 6:38 PM, Fred Gleason wrote:
On Oct 25, 2021, at 11:19, Alejandro olivan Alvarez 
<mailto:alejandro.olivan.alva...@gmail.com>> wrote:


Regarding Fade-Down, I think this is the easy one: I understand that, 
whenever you put the mark on, RDAirplay, when reaching the mark, will 
start unconditionally to fade down, FROM that point, onwards... If 
that's the case, It's unclear to me to which level the fading down 
will reach (I asume -40dB , or whatever 'mute' level the machine is 
at) and how long will take the fading lasts (to the end of the song, 
linearly, for some amount of predefined time, linearly, etc). The way 
I imagine fade-down use-case, it is meant to be put close to the end 
of the song (so I can have a trailing bass drum base faded down)... 
any hints? Am I very wrong?


Regarding Fade-Up, I'm quite confused... what is supposed to happen 
in RDAirplay at this mark? if It will start fading up, to full level 
(0 db I guess) FROM that point on, what is the level before it? does 
the presence of such mark imply that everything before the mark gets 
muted? or, on the contrary, the mark indicates the point where/when 
full level is reached AT?... and, if so, where in time does the 
fading up starts? could someone clarify?


The ‘base points’ for FadeUp and FadeDown are the ‘Start’ and ‘End’ 
markers, respectively; with the ‘mute level’ being (rather 
arbitrarily) defined to be -46 dBFS (-30 dB from the “reference level” 
as shown by Rivendell’s meters. The fades (both up and down) are 
logarithmic, meaning that they should be perceived as being “uniform” 
to the typical human listener.


Nice to know! logarithmic fading.

What I have to figure up is whether Fade Up mark goes BEFORE Cut start, 
to achieve the fading UP or not.


And the inverse at the end of track: first Fade-down being reached, 
triggering fade down until reaching End-cut.




With all of that said, I’ve found that FadeUp and FadeDown are very 
seldom used at most Rivendell sites. There are a couple of niche 
cases, but they are quite rare. Were I redesigning the cart/cut model 
from scratch, I would very likely drop those two functions entirely.
Curiously, those marks (provide they do what I think... and/or I manage 
to learn how to use them correctly) would be very very useful to me (and 
for any Dance/Electronic music radiostation). Because, for some tune 
styles (mostly trance music, but also techno, minimal house, deep 
house anything non-commercial, either deep or chill) you don't want 
a 'radio edit'; there's nothing wrong to have a full, or almost-full, 
length track aired including most of its in/out bases... but you don't 
want them to start right at full level from the very first beat either, 
but rather a short, smooth fade up for the first bar.


Cheers!


|-|
| Frederick F. Gleason, Jr. |             Chief Developer         |
|                           |             Paravel Systems         |
|-|
|         A room without books is like a body without a soul.         |
|         |
|                                                         -- Cicero   |
|-|

___
Rivendell-dev mailing list
Rivendell-dev@lists.rivendellaudio.org
http://caspian.paravelsystems.com/mailman/listinfo/rivendell-dev
___
Rivendell-dev mailing list
Rivendell-dev@lists.rivendellaudio.org
http://caspian.paravelsystems.com/mailman/listinfo/rivendell-dev


Re: [RDD] Understanding Fade-UP and Fade-Down markers

2021-10-25 Thread Alejandro olivan Alvarez
Hi! Thenk you for your help... now a possible inter-relation between 
Start/End markers and Fade Up/Down markers pops up... Regarding the 
other marks, your explanation is a nice and clear explanation.


On 10/25/21 6:07 PM, Mike Carroll wrote:
I can't speak to the actual levels that are involved, but here's how 
we use the markers.


  * Cut Start - Airplay starts playing the cut wherever this marker is
placed; anything before the marker is ignored. We use this to drop
excessive intro chatter in live cuts, and in one case to drop out
an obscenity at the start of a song.
  * Cut End - Airplay ends playing the cut and starts the next cart.
We use this to drop bad edits on live cuts, where the start of the
next song is included in the cut.

The problem with the start/end markers is that the Airplay output 
level is at its normal setting. This can cause abrupt-sounding 
transitions from one song to the next.  The Fade settings can help 
with this.


  * Fade Up - Airplay starts playing the cut at "silence" level at the
beginning of the marker, then increases the level to normal by the
end of the marker.  We use this to soften the beginning of live
music, where there may be an abrupt edit between two cuts.

Ok... Here's the point, and my confusion, because I ONLY have 1 mark, 
the FadeUP mark, I don't see any possible interval... I quote your mail:


'Airplay starts playing the cut at "silence" level at the beginning of 
the marker'


...but which Marker? The Start Cut? or Fade-Up Marker itself?

Or do you mean I can put Fade-up mark BEFORE Cut-Start mark? defining, 
now with two marks, an effective fade UP interval? ... if so, my 
understanding of Cut-Start Mark is that, it sets the point where the 
content starts, ignoring anything before it UNLESS a Fade-Up Mark is 
define, in which case, Cut-start mark behaves differently... this is the 
point I don't understand



  * Fade Down - Airplay starts fading the cut at the beginning of the
marker, reaching "silence" level at the end of the marker.  We use
this to soften applause after live cuts, or to force a fade on a
song that ends abruptly.

Note that RDLibrary does not perform Fade Up or Down when you're 
playing a cut in the waveform editor (at least in Riv2).


The Segue settings give you more help with cart transitions.

  * Segue Start - Airplay starts fading the cut to "silence" at the
beginning of the marker.  This continues until Segue End.
  * Segue End - The cut is a "silence" level by this point. Airplay
ends playing the cut.

The difference between Segue Start/End and Fade Down is the Airplay 
will start playing the next cart at the beginning of Segue Start 
rather than at the end of Fade Down.  This allows you to overlap carts 
for segues.  Note that the Segue markers are ignored unless you have 
"segue" set as the cart transition in your logs.


These other markers aren't used by us:

  * Talk Start/End - This turns the Airplay time indicator blue at
Start, returning to normal color at End. This is used to let the
DJ know it's a good place to talk over the music.  The setting
doesn't do anything else that I can see.
  * Hook Start/End - This marks a section of the cut that will be
played in Airplay when a Sound Panel button is pressed.  It's
controlled by the "Play" setting on bottom of the Sound Panel -
"Play All" or "Play Hook".

Regards,
Mike



On Mon, Oct 25, 2021 at 8:20 AM Alejandro olivan Alvarez 
<mailto:alejandro.olivan.alva...@gmail.com>> wrote:


Hi list.

While trying to go as deep as I can in testing Rivendell, I'm finding
that I'm not understanding enough the underlying use-cases of certain
tools... particularly audio (waveforms) manipulation tools.

I've read the documentation... but is merely an statement (which I
semantically understand) but I fail to understand the working
principle/mechanism

Regarding Fade-Down, I think this is the easy one: I understand that,
whenever you put the mark on, RDAirplay, when reaching the mark, will
start unconditionally to fade down, FROM that point, onwards... If
that's the case, It's unclear to me to which level the fading down
will
reach (I asume -40dB , or whatever 'mute' level the machine is at)
and
how long will take the fading lasts (to the end of the song,
linearly,
for some amount of predefined time, linearly, etc). The way I imagine
fade-down use-case, it is meant to be put close to the end of the
song
(so I can have a trailing bass drum base faded down)... any hints?
Am I
very wrong?

Regarding Fade-Up, I'm quite confused... what is supposed to
happen in
RDAirplay at this mark? if It will start fading up, to full level
(0 db
I guess) FROM that point on, what is the level before it? does the
presence o

[RDD] Understanding Fade-UP and Fade-Down markers

2021-10-25 Thread Alejandro olivan Alvarez

Hi list.

While trying to go as deep as I can in testing Rivendell, I'm finding 
that I'm not understanding enough the underlying use-cases of certain 
tools... particularly audio (waveforms) manipulation tools.


I've read the documentation... but is merely an statement (which I 
semantically understand) but I fail to understand the working 
principle/mechanism


Regarding Fade-Down, I think this is the easy one: I understand that, 
whenever you put the mark on, RDAirplay, when reaching the mark, will 
start unconditionally to fade down, FROM that point, onwards... If 
that's the case, It's unclear to me to which level the fading down will 
reach (I asume -40dB , or whatever 'mute' level the machine is at) and 
how long will take the fading lasts (to the end of the song, linearly, 
for some amount of predefined time, linearly, etc). The way I imagine 
fade-down use-case, it is meant to be put close to the end of the song 
(so I can have a trailing bass drum base faded down)... any hints? Am I 
very wrong?


Regarding Fade-Up, I'm quite confused... what is supposed to happen in 
RDAirplay at this mark? if It will start fading up, to full level (0 db 
I guess) FROM that point on, what is the level before it? does the 
presence of such mark imply that everything before the mark gets muted? 
or, on the contrary, the mark indicates the point where/when full level 
is reached AT?... and, if so, where in time does the fading up starts? 
could someone clarify?


Thank yo very much.

Best regards.

___
Rivendell-dev mailing list
Rivendell-dev@lists.rivendellaudio.org
http://caspian.paravelsystems.com/mailman/listinfo/rivendell-dev


Re: [RDD] error from jack invocation

2021-09-20 Thread Alejandro olivan Alvarez


On 9/18/21 7:49 AM, Nick Vanderest wrote:

Hello all.  Thought I would throw my 2 bits in on the Riv/Jack stuff.

I found the working combination on CentOS for me was the following:

Add a startup entry into the Session manager to start QJackCtl with sudo.

Once QJackCtl starts up with its settings, in options, you can run 
some scripts.
I've run 'service rivendell stop' as the Execute script on Startup, 
and 'service rivendell start' as the Execute script after Startup.  
This allows jack to take over the alsa device.  I have disabled 
pulseaudio, and I think removed most of it without breaking dependencies.


Once QJackCtl runs, then you can start whatever riv apps you need.

I don't recall if I had the audio card selected or unselected in 
rdalsaconfig


I tried duplicating this setup in Ubuntu Studio to try and mess with 
the new Rivendell, but too many dependencies to work around to try and 
get QJackCtl working so you can see the patchbay to connect Riv to 
inputs and outputs.   May be another wet soggy weekend project.


I'm using Debian, not Ubuntu, and I'm having total success in using 
Jackd/Rivendell (I'm not sure, but think shared my setup on the list in 
the past) both in physical, virtualized and hybrid environments, by 
using a somehow 'dark' way of using Jackd: The PROMISCUOUS MODE.


Essentially, this mode breaks the default rule of jack users isolation. 
This way, while some Rivendell processes are ran by root, others by the 
logged-in user (others maybe by pypad, rivendell, or any other...) they 
all can transparently connect to a same, shared, jack daemon.


In fact, I setup a default, single, system-wide, root run, jackd systemd 
service... where rivendell connects to (transparently) and user 
applications too.


The PRO of this setup is that I can Integrate Rivendell with the mature, 
proven, and powerfull Linux Digital Audio Workstation way of working 
that the studio/musician Linux community users have enjoyed for years: 
In fact, the ONLY connections I do on Rivendell is to Ardour (to act as 
its DAW interface) so I could use any Mackie controller such as the Zoom 
R16 as a mixer, and I can use qjackctl WITHOUT starting a jack server 
(it detects and connects directly and automatically to the system's 
jackd server) to setup and save my patchbay. The user can, that way, 
through nice GUI tools, use transparently applications such as Jamin 
Sound Processor, GlassPlayer, GlassCoder, etc...


The 'CON' of this setup (as Fred once pointed out) is that all the 
configuration and work gets outside of Rivendell's database and, 
therefore, is not portable or saved.


Regards.


Nick



___
Rivendell-dev mailing list
Rivendell-dev@lists.rivendellaudio.org
http://caspian.paravelsystems.com/mailman/listinfo/rivendell-dev
___
Rivendell-dev mailing list
Rivendell-dev@lists.rivendellaudio.org
http://caspian.paravelsystems.com/mailman/listinfo/rivendell-dev


Re: [RDD] Pypad Now-Next update for Radioshow, Grid, Schedule metadata

2021-09-01 Thread Alejandro olivan Alvarez

Hi! Thanks for your help!

On 9/1/21 6:23 AM, Eric Adler wrote:
I'm guessing the places you see this are either using some sort of 
middleware magic that is taking the cut info from different sections 
of a program and the program is what the local automation is playing 
OR the program is provided in segments and each segment has that 
metadata that you see.
Maybe... the 'automation guys' I know are 100% Windows people. I don't 
know their way of work and/or hacks/tricks but, certainly, It could be 
very much possible that they use some kind of 3rd party programs, 
addons, etc... that does the magic, there's plenty of that stuff in 
Windows. I would be OTOH surprised they use any non-GUI approach.


You could approximate this in a few ways with rdairplay that I can 
think of off hand immediately, all end up putting the show name as 
part of cut metadata.
This is interesting... I'm wondering wether it could be possible to use 
an AuxLog Machine or an VLog Machine to have a pure do-nothing 
MACRO-cart log that just keeps track of the Station's Show/Grid/Schedule 
metadata. The thing is that I don't know wether you can differentiate in 
the pypad scripts metadata coming from one logmachine or another.


Alternatively you could make a custom pypad script that checks the 
current time against a program list or database and prepends the result.


Yep... the Linux people way :-)

Cheers!



Eric

On Tue, Aug 31, 2021, 11:36 AM Alejandro olivan Alvarez 
<mailto:alejandro.olivan.alva...@gmail.com>> wrote:


Hi list.

I don't know much about radio automation (Rivendell is my first
serious
approach) but I fairly know about streaming (that's part of my
job) and
the thing is that over the years I'm quite used to see our
customers to
include in their stream metadata (usually the current song on
Icecast2)
the name of the show, other radio/program data, together or as a
replacement with the classic artist - tittle song metadata.

For example, I'm used to see things such as "Morning Show by Johnny
Public - 06:00 to 12:00 - SomeArtist - SomeTitle" and complex things
like that.

When I asked the Automation guys from where does that stuff came for,
they naturally answered me something like: "that is generated from
the
automation system, the automation system has everything about the
radio
on its database: the program grid, the scheduling, every piece of
songs
or recording metadata, everything is there... so, it generates that,
much like classic RDS, etc ..." which I found fascinating (that
was my
first way to clearly appreciate a difference between the 'automation
system' and a regular playlist software).

Now... with Rivendell, I have learned how to use pypad scripts to
taylor
an artist - title (or some other cart metadata stuff) stream
metadata. I
also have learned how to use a MACRO and empty/bogus carts to put
now/next metadata even if no log machine is playing ... but, how
do you
guys manage to put your show info in the Now/Next data?

I don't find anything about that... can it get data from a clock
configuration? or how do you approach this?

Cheers!

___
Rivendell-dev mailing list
Rivendell-dev@lists.rivendellaudio.org
<mailto:Rivendell-dev@lists.rivendellaudio.org>
http://caspian.paravelsystems.com/mailman/listinfo/rivendell-dev
<http://caspian.paravelsystems.com/mailman/listinfo/rivendell-dev>

___
Rivendell-dev mailing list
Rivendell-dev@lists.rivendellaudio.org
http://caspian.paravelsystems.com/mailman/listinfo/rivendell-dev


[RDD] Pypad Now-Next update for Radioshow, Grid, Schedule metadata

2021-08-31 Thread Alejandro olivan Alvarez

Hi list.

I don't know much about radio automation (Rivendell is my first serious 
approach) but I fairly know about streaming (that's part of my job) and 
the thing is that over the years I'm quite used to see our customers to 
include in their stream metadata (usually the current song on Icecast2) 
the name of the show, other radio/program data, together or as a 
replacement with the classic artist - tittle song metadata.


For example, I'm used to see things such as "Morning Show by Johnny 
Public - 06:00 to 12:00 - SomeArtist - SomeTitle" and complex things 
like that.


When I asked the Automation guys from where does that stuff came for, 
they naturally answered me something like: "that is generated from the 
automation system, the automation system has everything about the radio 
on its database: the program grid, the scheduling, every piece of songs 
or recording metadata, everything is there... so, it generates that, 
much like classic RDS, etc ..." which I found fascinating (that was my 
first way to clearly appreciate a difference between the 'automation 
system' and a regular playlist software).


Now... with Rivendell, I have learned how to use pypad scripts to taylor 
an artist - title (or some other cart metadata stuff) stream metadata. I 
also have learned how to use a MACRO and empty/bogus carts to put 
now/next metadata even if no log machine is playing ... but, how do you 
guys manage to put your show info in the Now/Next data?


I don't find anything about that... can it get data from a clock 
configuration? or how do you approach this?


Cheers!

___
Rivendell-dev mailing list
Rivendell-dev@lists.rivendellaudio.org
http://caspian.paravelsystems.com/mailman/listinfo/rivendell-dev


Re: [RDD] Howto set UI Languaje/Translation

2021-08-05 Thread Alejandro olivan Alvarez

Hi Fred!

On 8/4/21 6:27 PM, Fred Gleason wrote:
On Aug 2, 2021, at 11:30, Alejandro olivan Alvarez 
<mailto:alejandro.olivan.alva...@gmail.com>> wrote:


This one is probably simple...but I'm failing to see it: how can I 
switch Rivendell UI to, let's say, Spanish?


Although I'm from Spain, I always work with En/Us system/Installs, 
I'm completely used to it ... but how if I would like to have the UI 
environment in, let's say, Spanish (or any other of the available 
translations)?


I don't see an option in RDAdmin at first glance... I'v googled 
around, and I've found an article on the wiki on howto create 
translations, which could be very interesting, but... how to 
apply/activate on of those translations?


For standard production setups, that’s an OS-level setting. The 
easiest way to do it on CentOS 7 to use the ‘system-config-language’ 
tool. You may need to install it; just do (from a root shell):


yum install system-config-language

However, if you’re just hacking Rivendell and don’t want to change the 
whole system over to a different locale, you can do it by setting the 
‘LANG’ environmental variable to the desired language. For example, to 
switch to Español, you could open a shell (non-root) and do something 
like:


export LANG=es_ES.UTF-8

Rivendell modules run from that same session will then attempt to use 
the appropriate translation.


Thanks for the feedback... Because I'm very influenced from MS windows 
apps philosophy when it comes to radio automation (I don't use windows 
personally :-) I was expecting the typical UI option... Then, soon after 
mailing, I actually though on just switching the terminal LANG env var 
to whathever, I set to deutsch, launched rdairplay and tada! 
german!... then french, spanish ... so simple, s linux, I love it!


While we’re on this subject: the translations currently in Rivendell 
are extremely long in the tooth, with the last updates done way back 
in the v2.x era, so I suspect that coverage for any given language is 
quite ragged. As we converge towards a production v4.x release, we’ll 
shortly be in a position to start soliciting volunteers to update 
translations. Stay tuned!


I actually read a little on the wiki about making translations ... I 
have to calmly refresh my rusted .po skills, re-read the 
language/translation documentation on rivendell, and evaluate whether I 
could help... I definitely would like very much to help translating to 
Spain-Spanish, Catalan (And eventually I know people that could also 
provide me translation to Euskera)



Cheers!


|-|
| Frederick F. Gleason, Jr. |             Chief Developer         |
|                           |             Paravel Systems         |
|-|
|         A room without books is like a body without a soul.         |
|         |
|                                                         -- Cicero   |
|-|

___
Rivendell-dev mailing list
Rivendell-dev@lists.rivendellaudio.org
http://caspian.paravelsystems.com/mailman/listinfo/rivendell-dev
___
Rivendell-dev mailing list
Rivendell-dev@lists.rivendellaudio.org
http://caspian.paravelsystems.com/mailman/listinfo/rivendell-dev


[RDD] Howto set UI Languaje/Translation

2021-08-02 Thread Alejandro olivan Alvarez

Hi list.

This one is probably simple...but I'm failing to see it: how can I 
switch Rivendell UI to, let's say, Spanish?


Although I'm from Spain, I always work with En/Us system/Installs, I'm 
completely used to it ... but how if I would like to have the UI 
environment in, let's say, Spanish (or any other of the available 
translations)?


I don't see an option in RDAdmin at first glance... I'v googled around, 
and I've found an article on the wiki on howto create translations, 
which could be very interesting, but... how to apply/activate on of 
those translations?


Thank you very much.

Best regards.

___
Rivendell-dev mailing list
Rivendell-dev@lists.rivendellaudio.org
http://caspian.paravelsystems.com/mailman/listinfo/rivendell-dev


[RDD] MD Macro minimum level

2021-07-19 Thread Alejandro olivan Alvarez

Hi list.

I've been testing the MD macro to 'duck' (In reality I'm using it to 
simulate automated 'fade' ins/outs) the MainLog machine (I've also 
tested with the Aux1 Log Machine)... and I would like to have a certain, 
valid, numeric range for the level value that the macro can be used 
with... I think we cannot happily put there any value, for instance, 
here's a situation I found:


Trying to simulate a 'fader-down' situation, I set the value to -40, and 
it seemed to work. Using -50 but, seems to make rivendell (caed?) 
unhappy and issues trigger in (RDAirplay acts weird, VUMeter goes red to 
clip... clearly -50 is a no-go), the thing is that, at -40 value, I can 
still hear some audio 'leaking' out... sure, I could test every value, 
one by one, but I guess it is better to ask and have an explanation on 
the the actual right values...could you help?


Conversely, to 'fadde-up' the logmachine to its nominal level, I used 
the 0 value, and no problem... but, I bet, positive values beyond 0 are 
not allowed... or are they?


Thank you very much in advance.

Best regards.


___
Rivendell-dev mailing list
Rivendell-dev@lists.rivendellaudio.org
http://caspian.paravelsystems.com/mailman/listinfo/rivendell-dev


Re: [RDD] RDAirplay Full Log View UI Details?

2021-07-16 Thread Alejandro olivan Alvarez

Hi!

On 7/16/21 3:05 PM, Fred Gleason wrote:
On Jul 16, 2021, at 08:51, Alejandro olivan Alvarez 
<mailto:alejandro.olivan.alva...@gmail.com>> wrote:


I've been keeping an eye on the changes on the Full Log View widget 
on RDAirplay for a while while it was playing and I think that 
there's more information there than the one I explained on the 
operations guide at pag.44 ... Has someone some information/guide 
about that?


I mean... I see played events get mid-grayed to the past, but skipped 
events get white... isn't it?


They remain white, because they are still playable (just do ‘make 
next’ to them), whereas greyed-out elements cannot be played (the log 
will skip over them if you try. I know of at least one ‘morning zoo’ 
type program that makes extensive use of this feature to keep track of 
which spots have been played while rearranging the play-out order of 
said spots in order to join to various external live elements (network 
news, etc) in a timely fashion.



Aaahhh ... nice! Haven't figured that out!

Thank you very much.

Best regards!



The deep-green is the playing one, OK, and the light green the next 7 
ones (For Main Log, the ones in the left side buttons)... but why do 
'T's in the bold-blue lines are removed, but not removed if the blue 
event is skipped?


They should probably be removed. Call it a bug.

Cheers!


|-|
| Frederick F. Gleason, Jr. |             Chief Developer         |
|                           |             Paravel Systems         |
|-|
|         A room without books is like a body without a soul.         |
|         |
|                                                         -- Cicero   |
|-|

___
Rivendell-dev mailing list
Rivendell-dev@lists.rivendellaudio.org
http://caspian.paravelsystems.com/mailman/listinfo/rivendell-dev
___
Rivendell-dev mailing list
Rivendell-dev@lists.rivendellaudio.org
http://caspian.paravelsystems.com/mailman/listinfo/rivendell-dev


[RDD] RDAirplay Full Log View UI Details?

2021-07-16 Thread Alejandro olivan Alvarez

Hi list.

I've been keeping an eye on the changes on the Full Log View widget on 
RDAirplay for a while while it was playing and I think that there's 
more information there than the one I explained on the operations guide 
at pag.44 ... Has someone some information/guide about that?


I mean... I see played events get mid-grayed to the past, but skipped 
events get white... isn't it? The deep-green is the playing one, OK, and 
the light green the next 7 ones (For Main Log, the ones in the left side 
buttons)... but why do 'T's in the bold-blue lines are removed, but not 
removed if the blue event is skipped?


Best regards!

___
Rivendell-dev mailing list
Rivendell-dev@lists.rivendellaudio.org
http://caspian.paravelsystems.com/mailman/listinfo/rivendell-dev


Re: [RDD] Send Now-Next MACRO behavior

2021-07-14 Thread Alejandro olivan Alvarez


On 7/14/21 6:29 PM, Fred Gleason wrote:
On Jul 13, 2021, at 11:33, Alejandro olivan Alvarez 
<mailto:alejandro.olivan.alva...@gmail.com>> wrote:


A curious case is when I schedule a macro cart in the log that stops 
the log machine and switches to an external audio source, the idea is 
to do a last now update so the resulting Icecast2 stream will 
display something like 'foo - is now live from bar' ... I can see the 
'SN now 1 1X' on the machine, but the pypad never 'catches' the 
update.


The PAD for the current ‘default Now & Next cart’ that the ‘SN’ macro 
sets is emitted only when the referenced log machine stops-down 
completely. It will not override the PAD sent by currently playing 
cart(s).


Hi! thank you so much for your help!

It's not entirely clear to me the 'machine stop-down completely' 
(probably still not enough radio/Rivendell jargon in my mind) maybe I'm 
wrong, but, translating it to me as 'completelly ending the current 
playback', that would somehow explain the behavior I experienced.


With that interpretation, the machine has to be running (well, what I 
think of 'running'.. executing the log... i mean, no PS), so, the SN 
cart that I execute NOW, will be sent to the server after/once the 
current song on the machine ends (and, therefore, it is time to send a 
new metadata to the streaming server).


Adding PS on the MACROs in my tests, seemed to do the trick... Now I 
explain that as those PS gave time to completely end the current song, 
and then update the streaming Server, and then, even issue a PS afterwards.


Best regards



Cheers!


|-|
| Frederick F. Gleason, Jr. |             Chief Developer         |
|                           |             Paravel Systems         |
|-|
|           Beware of Programmers who carry screwdrivers.       |
|         |
|                                             -- Leonard Brandwein   |
|-|


___
Rivendell-dev mailing list
Rivendell-dev@lists.rivendellaudio.org
http://caspian.paravelsystems.com/mailman/listinfo/rivendell-dev
___
Rivendell-dev mailing list
Rivendell-dev@lists.rivendellaudio.org
http://caspian.paravelsystems.com/mailman/listinfo/rivendell-dev


Re: [RDD] Updating scheduler codes via SQL

2021-07-14 Thread Alejandro olivan Alvarez


On 7/14/21 6:18 PM, Fred Gleason wrote:
On Jul 14, 2021, at 05:14, Alejandro olivan Alvarez 
<mailto:alejandro.olivan.alva...@gmail.com>> wrote:


I have messed a little with rivendell database, quite successfully, 
but only for query/read operations ... altering/writing directly the 
database of such a complex application is for the brave :-)


Just to amplify Alejandro’s point: directly modifying the Rivendell 
database is NOT A SUPPORTED METHOD for making changes in Rivendell! 
Specifically, the database schema CAN and DOES change between 
different versions of Rivendell; meaning that the update method that 
worked perfectly three months ago could end up NUKING YOUR DATABASE 
next time around.


A much better and safer method for making these sorts of site-specific 
bulk changes is to write a script that uses Rivendell’s WebAPI. See:


http://opsguide.rivendellaudio.org/apis/web_api.pdf 
<http://opsguide.rivendellaudio.org/apis/web_api.pdf>


Man, I missed the API completely during all this time ... thank you for 
the remind and the pdf link!




The Web API is a documented, public and above all stable interface; 
using it will allow you to write scripts that won’t break across 
different versions of Rivendell.


N.B. — If you insist on writing changes directly to the DB, be sure 
that you have a known good backup of it first. The sanity and gray 
hair (not to mention job) that you save may be your own.


Cheers!


|-|
| Frederick F. Gleason, Jr. |             Chief Developer         |
|                           |             Paravel Systems         |
|-|
|           Beware of Programmers who carry screwdrivers.       |
|         |
|                                             -- Leonard Brandwein   |
|-|


___
Rivendell-dev mailing list
Rivendell-dev@lists.rivendellaudio.org
http://caspian.paravelsystems.com/mailman/listinfo/rivendell-dev
___
Rivendell-dev mailing list
Rivendell-dev@lists.rivendellaudio.org
http://caspian.paravelsystems.com/mailman/listinfo/rivendell-dev


Re: [RDD] Updating scheduler codes via SQL

2021-07-14 Thread Alejandro olivan Alvarez

HI!

I have messed a little with rivendell database, quite successfully, but 
only for query/read operations ... altering/writing directly the 
database of such a complex application is for the brave :-)


On 7/13/21 10:14 PM, Dave B wrote:

I want to bulk update the scheduler codes for my songs based on the YEAR field, 
but I get an error when attempting to add songs to the CART_SCHED_CODES table. 
Sample SQL to add my 70s scheduler code to songs is:

Insert into CART_SCHED_CODES (CART_NUMBER, SCHED_CODE) values ((select NUMBER from 
CART where YEAR > str_to_date(‘1969’, ‘%Y’) and YEAR < str_to_date(‘1980’, 
‘%Y’)), ‘70s’);


At first glance, I bet you can just use LIMIT on the subquery... and the 
specific (first) problem you encountered should be bypassed BUT... I 
don't think that being a good idea.


At first glance, I see you're trying to insert TWO values into TWO 
fields (CART_NUMBER, SCHED_CODE) whereas you're subquerying for just ONE 
value (NUMBER) so I bet you'll need an additional field or the DBEngine 
may complain on that too.


Then for the subquery itself, consider that If there are more than one 
result/row, you should decide which one is the right one... the DBEngine 
will never consider itself powerfull enough to impersonate you and take 
that decission by you... you have to tell it the criteria for such 
decission and the criteria must throw a single row, so you'll never 
could blame on the DBEngine for selecting the wrong one :-P


Are all the subquery results equal? well... in that case the LIMIT trick 
could be enough, why not, but otherwise, you have to, at least try 
GROUPing BY and/or ORDERing BY the subquery results following your 
intended logic (and if the logic is complex maybe grouping/ordering 
wouldn't be enough... JOINining, etc... hopefully GROUing/ORDERing BY 
will be enough)


My advice is that, first, you JUST work on the subquery ( just SELECT) 
playing with grouping, ordering, limiting (or whatever be necessary) 
until you get just the TWO unequivocal values you want to insert, from a 
SINGLE unequivocal result row... then paste that final query as the 
subquery of your 'parent' query and it should execute.


Good luck, and best regards!



This throws an error because the sub query returns more than one row. Any 
suggestions for correct SQL or a better way of doing this?

Thanks,
Dave

Sent from my iPad
___
Rivendell-dev mailing list
Rivendell-dev@lists.rivendellaudio.org
http://caspian.paravelsystems.com/mailman/listinfo/rivendell-dev

___
Rivendell-dev mailing list
Rivendell-dev@lists.rivendellaudio.org
http://caspian.paravelsystems.com/mailman/listinfo/rivendell-dev


[RDD] Send Now-Next MACRO behavior

2021-07-13 Thread Alejandro olivan Alvarez

Hi list.

I'm experimenting with the SN macro to put arbitrary Current Song on 
Icecast2 streams (well, to any purposes I guess)... but my success is 
partial... the behaviour of the macro is somehow strange, since it seems 
like if the update of the NOW pypad metada gets 'queued' or is kinda 
async... I'm not sure, I don't understand the results.


What I've done is to create some carts (I think of them as 'stream 
metadata-only carts'), with arbitrary artist - title metadata (some 
carts have even no cuts at all within, some have just a 1sec pip tone) 
that I want to display as Icecast stream current song. I created an put 
into the log some macro carts which have, in its code : SN now 1 1X 
(where 1X represent one of those 'stream metadata cards')... and it 
works like partially...


I'm tailing syslog and look for the pypad updates trying to figure out 
the logic on how the thing works: it seems as if the macro execution 
conflicts somehow with the now of the actual log songs. Sometimes 
the now seems to be ignored, sometimes gets like 'queued' and upon 
some other event it finally gets executed.


A curious case is when I schedule a macro cart in the log that stops the 
log machine and switches to an external audio source, the idea is to do 
a last now update so the resulting Icecast2 stream will display 
something like 'foo - is now live from bar' ... I can see the 'SN now 1 
1X' on the machine, but the pypad never 'catches' the update.



How are you using that? is that conflicting with groups with now 
enabled? What is the realtionship with the status of the logmachine? I 
don't get this one..



Thank you very much.

Best regards.

___
Rivendell-dev mailing list
Rivendell-dev@lists.rivendellaudio.org
http://caspian.paravelsystems.com/mailman/listinfo/rivendell-dev


[RDD] Reporting and data purge automation?

2021-07-13 Thread Alejandro olivan Alvarez

Hi list.

Today I've created in RDAdmin a pair or report setups (I think that the 
documentation of the form is missing on the operations guide... I guess, it is 
probably all self-describing for experienced radio broadcasters, but I would 
like to have some points of what are those fields for) ... so far, so good, 
playing around a little, I managed to generate some reports in plain-text 
format (nice to see the path supports wildcards)...now:

- Could that be scheduled? ... I've not found an appropriate macro cart for 
that and there's not the option in RDCatch either

On the other hand, the operating guide states as a good practice to regularly 
clear old/unwanted report data (I guess that would prevent having an endless 
data feed into the database)... I couldn't agree more with that.

- But, could that be also somehow automated?

Thank you very much in advance.

Best regards.


___
Rivendell-dev mailing list
Rivendell-dev@lists.rivendellaudio.org
http://caspian.paravelsystems.com/mailman/listinfo/rivendell-dev


Re: [RDD] Troubleshooting setup of PyPAD

2021-07-06 Thread Alejandro Olivan Alvarez

Hi Fred.

Thank you for your help!

As an early note... just to point out that PyPad IS ACTUALLY working 
FLAWLESSLY  :-)  to the extend of my very little initial experiments 
(artist - title to Icecast2) once I overcome the mentioned issues:


Here the problem was: I'm a noob ... and I missed to enable the required 
feature (I don't remember the name) on the Groups... once I enabled 
that, boom! It worked!


Now, but, since I'm aware you're working hard on Debianizing Rivendell, 
I understand your worries.



On 7/3/21 4:01 PM, Fred Gleason wrote:
On Jul 2, 2021, at 07:54, Alejandro olivan Alvarez 
<mailto:alejandro.olivan.alva...@gmail.com>> wrote:



I'm playing with the PyPAD stuff of Rivendell.

So far, I've managed to have an script running... so far the problems 
I've had to evercome (Debian Stable Buster install) were:


- The documented (on this list) Centos/debianish misplacing of 
pypad.py which needs to be copied to /usr/lib64/rivendell/pypad


 cp /usr/lib/python3.7/site-packages/pypad.py /usr/lib64/rivendell/pypad


That doesn’t look right, on a couple of levels.

First, ‘/usr/lib64’ is a RedHat-ism. Ubuntu at least doesn’t seem to 
use that convention at all, but rather installs binary linkable 
objects under ‘/usr/lib’ regardless of the target arch. I’ve not 
actually checked on Debian, but I’d be somewhat surprised if things 
are different there as Ubuntu seems to copy Debian pretty closely in 
general file layout.


Second, while the PyPAD scripts themselves (think of them as ‘user 
programs’) do indeed need to go in ${libdir}/rivendell/pypad (which 
evaluates to ‘/usr/lib/rivendell/pypad’ on Debian-is setups), the 
PyPAD *library module* should go in the default system location so it 
will be in Python’s search path. On Ubuntu, this location is 
‘/usr/lib/python3/dist-packages’.


N.B. Python supports the concept of having multiple parallel 
installations of different versions, each of which get their own 
orthogonal module store. On my UbuntuStudio 20.04 setup, the default 
installation has installed no less than four different versions of 
Python, resulting separate module paths for each (in my case, 
‘/usr/lib/python2.7/dist-packages’, ‘/usr/lib/python3/dist-packages’, 
‘/usr/lib/python3.8/dist-packages’ and 
‘/usr/lib/python3.9/dist-packages’). These locations appear to be a 
Debian-ism inasmuch as Automake's AM_PATH_PYTHON() macro doesn’t 
recognize them, instead using the expected standard Python defaults. 
At present, there is a nasty hack in ‘configure.in’ (lines 290-305) 
that attempts to detect this situation and install things the ‘Debian 
way’ if necessary. I would love some feedback on how this works on 
various Debian-ish setups (or, even better, PRs that improve the 
heuristic).


My tests are being done on Rivendell master, using Debian packages that 
I barely build myself using debuild... So no surprise I doesn't install 
well being a RedHattish source.




I've created a copy of the included icecast2.py and also the related 
icecast2.exemplar. So far the script works, green dot and no errors. 
A ps on console shows the script running:


root@debian:~# ps aux | grep pypad
pypad 4095  3.9  0.1 285108 28624 ?    Sl   12:18   2:38 
/usr/sbin/rdpadengined
pypad 4097  4.2  0.1 211368 28412 ?    S    12:18   2:50 
/usr/sbin/rdrssd
pypad 9777  0.0  0.1  40812 23948 ?    S    12:25   0:00 
/usr/bin/python3 /usr/lib64/rivendell/pypad/pypad_icecast2_8000.py 
localhost 34289 $1

root 22462  0.0  0.0   6208 824 pts/1    S+   13:25   0:00 grep pypad

The TCP port for metadata appears listening:

root@debian:~# netstat -tnlp | grep 34289
tcp    0  0 0.0.0.0:34289 0.0.0.0:*   LISTEN  
4073/rdpadd



I've setup username/password/port/mountpoint on the configuration... 
apparently, OK... now, the problem:


I've no song update on the Icecast2 server


Ok, first thing to do is verify that your Icecast2 system will accept 
metadata updates from your PyPAD host. Icecast is famously picky in 
this regard; updates *must* originate (or appear to it to be be 
originating) from the same source IP address as the encoder client 
originating the stream; updates that fail to meet this criterion are 
ignored. A good way to test this is to attempt to send a metadata 
update *from the same system that is running the PyPAD script* 
manually via a curl(1) command of the form:


curl -u source: 
http://:/admin/metadata?mount==updinfo=


where:

- The hostname or IP address of the system running Icecast

- The TCP port number of the Icecast instance

- The mountpoint of the stream

 - The mount point password.

- The string to set, encoded as specified in Section 2 of RFC3986

For example, to set a string of "The Beatles - Hey Jude” at an Icecast 
instance running at "icecast.example.com:1234 
<http://example.com:1234>" with a

mountpoint of “MyStream” and a password of “hackme", the URL would be:

curl -u source:hack

[RDD] Troubleshooting setup of PyPAD

2021-07-02 Thread Alejandro olivan Alvarez

Hi list!

I'm playing with the PyPAD stuff of Rivendell.

So far, I've managed to have an script running... so far the problems 
I've had to evercome (Debian Stable Buster install) were:


- The documented (on this list) Centos/debianish misplacing of pypad.py 
which needs to be copied to /usr/lib64/rivendell/pypad


 cp /usr/lib/python3.7/site-packages/pypad.py /usr/lib64/rivendell/pypad

- Missing MySQL Python3 module/package

 apt-get install python3-mysqldb


I've created a copy of the included icecast2.py and also the related 
icecast2.exemplar. So far the script works, green dot and no errors. A 
ps on console shows the script running:


root@debian:~# ps aux | grep pypad
pypad 4095  3.9  0.1 285108 28624 ?    Sl   12:18   2:38 
/usr/sbin/rdpadengined
pypad 4097  4.2  0.1 211368 28412 ?    S    12:18   2:50 
/usr/sbin/rdrssd
pypad 9777  0.0  0.1  40812 23948 ?    S    12:25   0:00 
/usr/bin/python3 /usr/lib64/rivendell/pypad/pypad_icecast2_8000.py 
localhost 34289 $1

root 22462  0.0  0.0   6208   824 pts/1    S+   13:25   0:00 grep pypad

The TCP port for metadata appears listening:

root@debian:~# netstat -tnlp | grep 34289
tcp    0  0 0.0.0.0:34289 0.0.0.0:*   LISTEN  
4073/rdpadd



I've setup username/password/port/mountpoint on the configuration... 
apparently, OK... now, the problem:


I've no song update on the Icecast2 server

I've no feedback on syslog either... I'm thinking on reviewing the 
Icecast server log or try to check the connections to Icecast2 server



Any clue on what could I be missing?

Thank you very much in advance.

Best regards.





___
Rivendell-dev mailing list
Rivendell-dev@lists.rivendellaudio.org
http://caspian.paravelsystems.com/mailman/listinfo/rivendell-dev


[RDD] Local Audio Adapter Jackd Crosspoint gain

2021-06-28 Thread Alejandro olivan Alvarez

Hi List.

This weekend I've managed to setup a Head/National/main-terminal + 
Local/Regional/traffic-terminal lab  So far, so good, it works and 
I'm very happy, I'm learning a lot of this world! ... now but, comes the 
issue:


Since I don't have physical stuff, including an audio switcher (I'm 
using everything software: jack interface, Local Audio Switcher on Jack 
interface, audio sharing through jacktrip, and commands between head and 
terminal using essentially RML CC ... but, surprisingly, this all works 
very very well!!! I'm thinking that a fully virtualized radio network 
could be very much possible) my switcher is Rivendell Jackd interface as 
Local Audio Adapter. Here SA and SR macros do work. They're in fact the 
foundation of my setup: I can use SA/SR to program relaying audio from 
header or play local stuff instead.


My problem is that while SA does work, SX seems to not (or I'm failing 
completely somewhere). Ideally, What I would like is to be able to use 
SA to gradually (some seconds fading-up) return back to head/master 
audio content after a local traffic-break. I know this is not possible 
out-of-the-box, but I feel I could fake that using SX (or SL?) ... but 
they seem to not apply to my Jackd interface (Interface number 1) 
crosspoints. Here's a sample commands


- This works: switch from content coming from master (in enters in 
rivendell's jackd input 7L/R, so, input 8 on the switcher) and the 
removal/reverse command


SA 1 8 1

SR 1 8 1

- And this are my attempts on trying to control the crosspoint gain 
after SA it:


SX 1 8 1 -40! (try to set the crosspoint to -40 dBFs)

SX 1 8 1 0! (try to set it to 0)


Is that the way SX is intended to be used? wrong syntax on my own? Has 
anyone tried this or something similar?


Thanks, regards.


___
Rivendell-dev mailing list
Rivendell-dev@lists.rivendellaudio.org
http://caspian.paravelsystems.com/mailman/listinfo/rivendell-dev


Re: [RDD] Auto Mount of /var/snd On reboot Does Not Work

2021-06-28 Thread Alejandro olivan Alvarez

Hi All.

On 6/28/21 4:23 AM, wa7skg wrote:

Thanks, but nope. Still doesn't mount on reboot.

Michael


I would like to just drop some ideas here (hope not creating further 
confusion)


- First and foremost, in my (short) experience with Rivendell (using 
Debian as base OS), I initially used the traditional approach of fstab 
the /var/snd mount for the audio storage on the radio network 
mockup/labs  just to realize that, in reality, when acting as a 
client, rivendell manages by itself the mounting of /var/snd (this is 
not probably, enough documented or highlighted due to its importance, in 
the documentation) by means of AUTOFS (so, in debian, I had to install 
the autofs package). The autofs parameters (very very similar to those 
on a regular fstab) are provided in /etc/rd.conf ...here's an example:


[AudioStore]
MountSource=192.168.1.254:/var/snd
MountType=nfs
MountOptions=rw,rsize=8192,wsize=8192,timeo=14
CaeHostname=
XportHostname=

It works very well to me and it is the 'native' or 'rivendellish' way to 
mount /var/snd on the client terminals... Moreover, I think it is worth 
to investigate on the /etc/rivendell.d multi-config, rdselect and 
rdmonitor because it all it deals with multiple, remote, storage (and 
database) mounting/umounting very very nicely (I have learnt to have, on 
every terminal on the radio network, two configurations: a local DB and 
/var/snd storage config, so it can go 'standalone' , and the networked 
DB / NFS /var/snd config)


- Regarding pure fstab issues (again Debian here) I would like to share 
that I have had issues too in the recent past, as the operating system 
moved deeper and deeper into the realms of systemd management, and I 
discovered that classic _netdev and other tricks didn't work anymore, 
and some new fstab options are usually required to make systemd managed 
machines to mount shares at boot.


If your system is systemd handled (I guess it is) I would look for and 
give a try on some fstab options such as x-systemd.automount , 
x-systemd.device-timeout , etc...



Hope this could help

Best regards.




starrbuck1...@gmail.com wrote on 6/27/21 5:48 PM:

This works for me:

# Rivendell
{IP address of Rivendell Server}:/var/snd /var/snd nfs 
auto,nofail,noatime,nolock,intr,tcp,actimeo=1800 0 0


On Sun, Jun 27, 2021 at 5:09 PM wa7skg > wrote:


    Two machines in client/server configuration. CentOS7 and RD 3.5.

    Set up export stuff on rd1 and fstab on rd2.

    rd1:/var/snd         /var/snd      nfs  _netdev,defaults,auto   0 0

    However, if I reboot rd2, it does not mount /var/snd from rd1. If I
    'sudo mount -a' it mounts fine.

    I have inquired about this on other forums with various results
    including:

    "Your mount does not work because your network/nfs is not up at 
the time

    /etc/fstab is evaluated."

    "NOTE: you mount external /var/snd to local /var/snd which is
    definitely bad idea."

    "Use autofs"

    "Use systemd"

    "In your fstab replace “auto” with “noauto,x-systemd.automount”"

    Perhaps some of these comments may be useful, but I don't know 
how to

    implement any of them.

    I've been out of this for a few years, and the whole systemd 
thing is

    still confusing to me.


    I've been given a number of setup guides which all have fstab
    configurations, but they may be for older versions of stuff.

    Is anybody up to date with modern equipment on this?

    Thanks for any ideas.


    --     73,
    Michael WA7SKG

    "Any day you do not learn one new thing is a wasted day."
    ___
    Rivendell-dev mailing list
    Rivendell-dev@lists.rivendellaudio.org
    
http://caspian.paravelsystems.com/mailman/listinfo/rivendell-dev


___
Rivendell-dev mailing list
Rivendell-dev@lists.rivendellaudio.org
http://caspian.paravelsystems.com/mailman/listinfo/rivendell-dev

___
Rivendell-dev mailing list
Rivendell-dev@lists.rivendellaudio.org
http://caspian.paravelsystems.com/mailman/listinfo/rivendell-dev


Re: [RDD] Macro cart RML execution: parallel or sequential?

2021-06-17 Thread Alejandro olivan Alvarez

Hi.

Thank you so much for your help!

On 6/17/21 12:25 AM, Mike Carroll wrote:
They are run serially - but the operations may be asynchronous because 
the commands may be run by some other process.  Here's an example.  We 
load logs via RDCatch using a macro cart, and we want anything that's 
currently running to be faded and stopped before the new log gets 
loaded.  There are three commands:


*PS 1 4500! *
"Press stop on main machine, fading to silence after 4.5
seconds."  This command is run asynchronously by RDAirplay, so as
far as the RML interpreter is concerned the PS is complete as soon
as it's sent to RDAirplay. That means the next command in the
macro cart will run immediately.

*SP 5000!*

"Sleep for 5 seconds."  This command is run by the RML
interpreter, which forces it to pause executing commands for 5
seconds.  That allows the *PS* to complete, plus an extra .5
seconds of silence for listening space.

*LL 1 logname 0!*
"Load log in main machine and begin execution."  This command is
also run asynch by RDAirplay.


If we don't put the sleep command in the cart, the LL will begin 
executing immediately after the PS.


Man... That explanation, followed by that example, deserves to be in the 
documentation :-O ... crystal clear!




NN does nothing.  SP pauses the RML executor for the specified interval.

Not familiar with MT, sorry.

The RML appendix shows what process handles each command in its 
description.


Mike

MT, after your explanation, is also clearer to me: as the macro 
including MT reaches the MT line (sequentially) it will start a timer at 
the end of which, the provided macro-cart number will be, in turn, 
executed... My bet is that, following the logic, the MT line would be 
reached sequentially and then run asynchronously on its own, so the next 
line will be executed (and eventually even end) while the timer will be 
ticking. The MT invoked cart after the timer ends I assume will be a 
completely new and independent process on its own... What I'm not sure 
is whether the timer itself is run sync or async in respect to the MT 
container macro-cart (count down 'locking' the cart as in execution 
until it ends) I have to try it


On Wed, Jun 16, 2021 at 3:45 AM Alejandro olivan Alvarez 
<mailto:alejandro.olivan.alva...@gmail.com>> wrote:



Hi!

I'm not getting a clear picture on this... probably due to underlying
mis-undertanding of the following

The difference between the NN (No Operation) and SP (Sleep).

The implication when adding a MT (Macro timer) event after either
one of
the above.


Could you clarify? Are All macros on the cart started
simultaneously? Or
are they run sequentially?

... If so, I guess the SP would 'pause' the execution isn't it?

My guess is that NN is usefull to create a Blank/silent event,
isn't it?


Thank you very much in advance.

Best regards.

___
Rivendell-dev mailing list
Rivendell-dev@lists.rivendellaudio.org
<mailto:Rivendell-dev@lists.rivendellaudio.org>
http://caspian.paravelsystems.com/mailman/listinfo/rivendell-dev
<http://caspian.paravelsystems.com/mailman/listinfo/rivendell-dev>


Best regards.

___
Rivendell-dev mailing list
Rivendell-dev@lists.rivendellaudio.org
http://caspian.paravelsystems.com/mailman/listinfo/rivendell-dev


Re: [RDD] RML and RDAirPlay: cueing to next event based on clock

2021-06-16 Thread Alejandro olivan Alvarez



On 6/16/21 5:34 PM, David Klann wrote:

On 6/16/21 09:35, Alejandro olivan Alvarez wrote:

On 6/16/21 2:49 PM, David Klann wrote:

Hi Alejandro,

On 6/16/21 05:44, you wrote:

Hi list.

[ snip... ]


Yay! Clearly, deep down the rabbit hole!

Hey! thanks for your help!


[ snip ... ]

I've taken a look at your script (I'm not confident in perl) and I guess
from it you can query rivendell logs from CLI (my ignorance about that
is what lead me to raw SQL querying) ... clirdlogedit? ... where can I
get more info :-o !!!


man rdclilogedit


  >> [ snip ... ]

After the LL Macro, you need a MN Macro (Make Next). But you need to
calculate the time at which to start the Log outside of Rivendell, in
the script where you are sending the Macros. This is where it becomes
somewhat difficult. See the comments in the script I wrote (above) for
why it is kind of a guessing game.

So as mental recap: either with your script, some SQL query, that
mysterious rdlogeditcli, but EXTERNALLY to rivendell, you create a macro
cart that (or a set of themor one that calls others... I'm
processing that in my mind) that someway guesses the right LINE, then,
the easy part LL, MN line, PL etc ...


I think you have the basic concept down. Then, it's just a matter of
figuring out the timing. If you can make your way through the Perl
script, you will learn that the timing calculation is likely the most
complex part.

Two aspects I have not included in the time calculation are 1) Cart
Marker settings. I believe the Cart lengths reported by rdclilogedit(1)
come from the LENGTH column in the CUTS table. That does not take into
account "Cut Start", "Cut End" or "Segue Start" Markers, so the actual
times in any given Log (especially near the end of a day) may be off by
as much as several minutes. And 2) multiple Cuts in a Cart: my
understanding is that RDAirplay chooses which Cut to play in a multi-Cut
Cart at the time it plays that Cart in the Log. Maybe the Perl script
can predict which Cut will be played, but I haven't enough familiarity
with the C++ code to make that decision.


~David

Mmmm ... i didn't even though on those aspects... I was simply crashing 
against the very first issue, but now reading that, I realize about 
those other possible things.


Out of my noob-ignorance (we say here 'ignorance is the most daring') I 
think that, all I need is to get the Line ID of some key events in the 
log... since, every of my 'stop sets' starts with a first cart (I think 
it could be an 'ID' or a 'jingle' :-P) that has a Timed/Hard start time 
and a STOPPED transition, that (I guess) can be used to filter out the 
query looking at the database: For instance, in my experiments, the 
following command (requires a defaul/unsecured SQL install and root):


mysql Rivendell -e "SELECT LINE_ID as line, 
sec_to_time(floor(START_TIME/1000)) as time FROM LOG_LINES WHERE 
LOG_NAME = 'TEST-06162021' AND TIME_TYPE = 1 AND START_TIME != 0 AND 
sec_to_time(floor(START_TIME/1000))> NOW() LIMIT 1;"


Gets the very next-in-the-future Hard/Fixed Start time' event in a log 
from NOW() , using the TIME_TYPE field (seems to be 1 for Hard/fixed 
time), returning the Line_ID and scheduled time.


While, with this one, I can get the (in theory, seems to work) the 
closest (both past / future) Hard Time start event:


mysql Rivendell -e "SELECT LINE_ID as line, 
sec_to_time(floor(START_TIME/1000)) as time FROM LOG_LINES WHERE 
LOG_NAME = 'TEST-06162021' AND TIME_TYPE = 1 AND START_TIME != 0 ORDER 
BY ABS(TIMESTAMPDIFF(MINUTE, sec_to_time(floor(START_TIME/1000)), 
NOW())) LIMIT 1;"


I have opened an issue in Github posting a Feature request for a Macro 
that does all this.. being a macro addition, no GUI/Qt related, I don't 
think it being risky/disrupting on existing code... I wonder with 
something like Cue Next or Cue Closest ... LL 1 TEST-X! CN 1! and 
then PL :-)



Best regards!!!

___
Rivendell-dev mailing list
Rivendell-dev@lists.rivendellaudio.org
http://caspian.paravelsystems.com/mailman/listinfo/rivendell-dev


Re: [RDD] RML and RDAirPlay: cueing to next event based on clock

2021-06-16 Thread Alejandro olivan Alvarez

On 6/16/21 2:49 PM, David Klann wrote:

Hi Alejandro,

On 6/16/21 05:44, you wrote:

Hi list.

First, I'll show what I can mockup on this lab/test and why (that way,
since I may be approaching this in a totally wrong way you may help me
to get rid of what I'm strugling with)

I want to send an RML to a remote machine, so it loads a Log into
RDAirplay (This is no problem, I've passed this). Then, basically, i
want the log to be started at the closest event to the current clock.
Basically this tries to mimic the classic (AFAIK here in Spain)
situation where a header station terminal, signals a remote local
station to play a set of traffic carts (I'm learning radio jargon :-P)


Yay! Clearly, deep down the rabbit hole!


Hey! thanks for your help!



There may be other ways to solve this, but I'll address your specific
scenario. What you desire is actually kind of complicated in Rivendell.
It is fairly easy to load a Log and make that Log start at
*approximately* the current time of the day, but due to the nature of
RDAirplay playout, it's difficult to make the Log start at the exact
current time.

There has been previous discussion about this on the mailing list
(http://caspian.paravelsystems.com/pipermail/rivendell-dev/2015-November/023621.html),
and the script I have written
(https://github.com/opensourceradio/ram/blob/master/usr/local/bin/load-log-skip-to-current-time)
builds on that discussion and attempts to be more accurate in starting
the Log at the right time of day.


First and foremost... Is very useful to me: it helps me to stop looking 
for something that, surprisingly, is not actually possible by the 
software itself. I in fact gave-up as I posted for help on the list, and 
expended some time experimenting some SQL querying experiments with some 
early positive results getting the line_id of either the closest event 
in the future respect to query time, the closest both in the future and 
in the past, and also both but filtering to only Fixed Time Event (I 
someone is interested on the actual SQL SELECT queries let me know...but 
I guess that this has been discussed in the past)


I've taken a look at your script (I'm not confident in perl) and I guess 
from it you can query rivendell logs from CLI (my ignorance about that 
is what lead me to raw SQL querying) ... clirdlogedit? ... where can I 
get more info :-o !!!



I Can assume a basic situation where we know RML commands will arrive
BEFORE certain point in the clock... So, In my RDLogManager Clocks, I
have created a few events (lets say 5 event of 1 minute each) AFTER some
clock point (let's set at :00) and another set of 5 1 minute events
AFTER :30.


To state in a slightly different way: you have Clocks containing
five-minute "stop sets" (more radio jargon) at the top of the hour and
at the bottom of the hour, correct?


Noted down the 'stop set' concept :-P


Problems I'm struggling with:

1- Hour problem: If I RML LL the log, no matter the time it is, it will
cue at the first log event (the 00:00 event) even if I do LL at 10:00 in
the morning
  > 2- Minute problem: If I RML LL the log at :28, the log will not play
automatically start playing until :30 (using hard-time with STOP
transition)

Or, in other words, what i want is, if I RML the log at 10:28, I want it
to play the set of events scheduled from 10:30 to 10:35

I know I can specify a PL mach  ... but, how to know which of the
line to load based on the clock?


After the LL Macro, you need a MN Macro (Make Next). But you need to
calculate the time at which to start the Log outside of Rivendell, in
the script where you are sending the Macros. This is where it becomes
somewhat difficult. See the comments in the script I wrote (above) for
why it is kind of a guessing game.


So as mental recap: either with your script, some SQL query, that 
mysterious rdlogeditcli, but EXTERNALLY to rivendell, you create a macro 
cart that (or a set of themor one that calls others... I'm 
processing that in my mind) that someway guesses the right LINE, then, 
the easy part LL, MN line, PL etc ...





I know this is noob-level in radio automation... I read and re-read the
docs and searched in the list (I've found a 14 year old discussion on
the list...but very old and inconclussive) but I'm miserably failing on
this.

Could you help me please?

Hope this helps in your understanding of this task. My example may not
be an exact fit for your use case, but maybe it will spark a creative
solution for you!

~David Klann


Thank you very much in advance.

Best regards

___
Rivendell-dev mailing list
Rivendell-dev@lists.rivendellaudio.org
http://caspian.paravelsystems.com/mailman/listinfo/rivendell-dev


Thank you!
___
Rivendell-dev mailing list
Rivendell-dev@lists.rivendellaudio.org
http://caspian.paravelsystems.com/mailman/listinfo/rivendell-dev


[RDD] RML: mport what are they?

2021-06-16 Thread Alejandro olivan Alvarez

Hi list!

This is yet another piece on the puzzle:

RML documentation sometimes refer to 'mport' ... that sounds to me as 
'Machine Port' but I have no certain clue about that.


I've recalled the documentation and have not found anything about that ( 
vLog related?)


Any clue?

Thank you very much in advance.

Best regards.

___
Rivendell-dev mailing list
Rivendell-dev@lists.rivendellaudio.org
http://caspian.paravelsystems.com/mailman/listinfo/rivendell-dev


[RDD] Macro cart RML execution: parallel or sequential?

2021-06-16 Thread Alejandro olivan Alvarez



Hi!

I'm not getting a clear picture on this... probably due to underlying 
mis-undertanding of the following


The difference between the NN (No Operation) and SP (Sleep).

The implication when adding a MT (Macro timer) event after either one of 
the above.



Could you clarify? Are All macros on the cart started simultaneously? Or 
are they run sequentially?


... If so, I guess the SP would 'pause' the execution isn't it?

My guess is that NN is usefull to create a Blank/silent event, isn't it?


Thank you very much in advance.

Best regards.

___
Rivendell-dev mailing list
Rivendell-dev@lists.rivendellaudio.org
http://caspian.paravelsystems.com/mailman/listinfo/rivendell-dev


[RDD] RML and RDAirPlay: cueing to next event based on clock

2021-06-16 Thread Alejandro olivan Alvarez

Hi list.

First, I'll show what I can mockup on this lab/test and why (that way, 
since I may be approaching this in a totally wrong way you may help me 
to get rid of what I'm strugling with)


I want to send an RML to a remote machine, so it loads a Log into 
RDAirplay (This is no problem, I've passed this). Then, basically, i 
want the log to be started at the closest event to the current clock. 
Basically this tries to mimic the classic (AFAIK here in Spain) 
situation where a header station terminal, signals a remote local 
station to play a set of traffic carts (I'm learning radio jargon :-P)


I Can assume a basic situation where we know RML commands will arrive 
BEFORE certain point in the clock... So, In my RDLogManager Clocks, I 
have created a few events (lets say 5 event of 1 minute each) AFTER some 
clock point (let's set at :00) and another set of 5 1 minute events 
AFTER :30.


Problems I'm struggling with:

1- Hour problem: If I RML LL the log, no matter the time it is, it will 
cue at the first log event (the 00:00 event) even if I do LL at 10:00 in 
the morning


2- Minute problem: If I RML LL the log at :28, the log will not play 
automatically start playing until :30 (using hard-time with STOP 
transition)


Or, in other words, what i want is, if I RML the log at 10:28, I want it 
to play the set of events scheduled from 10:30 to 10:35


I know I can specify a PL mach  ... but, how to know which of the 
line to load based on the clock?



I know this is noob-level in radio automation... I read and re-read the 
docs and searched in the list (I've found a 14 year old discussion on 
the list...but very old and inconclussive) but I'm miserably failing on 
this.


Could you help me please?

Thank you very much in advance.

Best regards

___
Rivendell-dev mailing list
Rivendell-dev@lists.rivendellaudio.org
http://caspian.paravelsystems.com/mailman/listinfo/rivendell-dev


Re: [RDD] rdcatchd and caed crash when not run as root

2021-06-14 Thread Alejandro olivan Alvarez

Hi.

On 6/13/21 11:38 PM, Fred Gleason wrote:
On Jun 12, 2021, at 08:29, Alejandro Olivan Alvarez 
<mailto:alejandro.olivan.alva...@gmail.com>> wrote:



apt-get install snd-asihpi-dkms-4 python-audioscience alsa-utils qasmixer


What repo provides these packages? With the exception of ‘alsa-utils’, 
none of them appear to be in the stock repos for Ubuntu 20.04 LTS.


I have packaged my own HPI driver (packages ‘hpklinux’ and 
‘hpklinux-dev’, both available in 
https://software.paravelsystems.com/ubuntu/dists/focal/main/ 
<https://software.paravelsystems.com/ubuntu/dists/focal/main/>, 
enabled automatically by the Rivendell Ubuntu installer), but what 
exactly is in ‘python-audioscience’ and ‘qasimixer’?


Cheers!

Those packages are the official packages provided/builded from the 
scripts included in AudioScience Linux driver tar.gz.


Until very recently, Only Ubuntu was supported... thanks to Delio from 
AudioScience (maybe he's reading! :-) , his patience with me, and the 
solving of some hardware bugs on ASI 57xx cards (solved from hardware 
rev.G upwards) the package builds the packages on Oficial Debian Stable 
(currently 10/Buster) tool.


The packages are ALSO available from AudioScience's official Ubuntu PPA 
repository... So, I recommend for Ubuntu users to stick with them, as 
they're the official ones, and are regularly updated/maintained directly 
by the manufacturer.


For Debian 10/Buster, those PPA's packages are valid... although mixing 
Debian Repos with Ubuntu PPA's isn't recommended (For instance, I use 
them in Rivendell for my tests, but at Job I use the provided scripts to 
build our own pure Debian DKMS packages, and upload them to our own 
Debian private repo)


Python-audioscience is a package that provides the python API, which 
allows to interface with ASI cards using python (currently, there's a 
bug on that package when installed on Debian).


qasmixer has nothing to do with AudioScience... it is a Debian Packaged 
(and therefore availble on Debian based distros, such Ubuntu) 
lightweight, Qt based, ALSA GUI mixer (ideal in ligtweight/minimalistic 
desktop environments)



Best regards.



|-|
| Frederick F. Gleason, Jr. |             Chief Developer         |
|                           |             Paravel Systems         |
|-|
|         A room without books is like a body without a soul.         |
|         |
|                                                         -- Cicero   |
|-|


___
Rivendell-dev mailing list
Rivendell-dev@lists.rivendellaudio.org
http://caspian.paravelsystems.com/mailman/listinfo/rivendell-dev
___
Rivendell-dev mailing list
Rivendell-dev@lists.rivendellaudio.org
http://caspian.paravelsystems.com/mailman/listinfo/rivendell-dev


Re: [RDD] rdcatchd and caed crash when not run as root

2021-06-14 Thread Alejandro olivan Alvarez

Hi!

On 6/13/21 2:47 PM, Fred Gleason wrote:
On Jun 12, 2021, at 08:29, Alejandro Olivan Alvarez 
<mailto:alejandro.olivan.alva...@gmail.com>> wrote:


Also, recently, re-reading my emails with AudioScience engineer (I 
worked with them for an independent Linux project on my job) I 
realized the AudioScience ALSA driver provides BOTH (and not 'either' 
as I had on my mind) the HPI interface AND the ALSA interface,


Interesting! My understanding has always been that it’s ‘either/or’ as 
well.
Aha... It is fun if, upon having AudioScience ALSA package/driver 
installed (which conflicts whit HPI-only driver package)... You can use 
RDAlsaConfig as it detects and allows you to declare as ALSA useable any 
ASI card (that I have tested) in Rivendell Afterwards, you go to 
RDConfig -> Host -> Audio Resources and ...tada!!! you'll see the card 
twice!!! first as reachable through HPI API, and second through ALSA :-P



so I can use and AudioScience card as Jackd interface (as ALSA 
interface), AND let rivendell detect it as an HPI interface, AND 
enjoy the powerful Audiocience PCM internal routing abilities (I 
think, rivendell does not takes advantage of that, but you can 
harness all that power with any ALSA mixer)…


Rivendell in fact makes extensive use of that ‘anything to anywhere’ 
architecture, but does so *internally*. It most intentionally does 
*not* export the arbitrary capability to the end user, because doing 
so opens up all sorts of opportunities for the user to get the mixer 
subsystem into inconsistent states. For this reason, I would *not* 
recommend using the ALSA capabilities simultaneously with Rivendell,


Cheers!


I think I understand what you're refering to  The thing is that, 
through HPI, the number of Inputs/outputs do match 'only' the number of 
physical Inputs/outputs of the card, which, may or not (In my experience 
usually not) match the number of of actual PCM inputs / outputs 
supported by the card.


For instance, here I'm testing with an ASI5810 and an ASI5720, which 
both feature 4 PCM playbacks and 2 PCM records (although both having 
different number of physical in/out numbers and types), so, from an ALSA 
point of view, both feature 4 playback/outs and 2 record/ins, which can 
be used, and then routed, using the ALSA mixer tomanage the card 
internal router, to/from any of the card's analog/digital physical 
in/outs (Mostly the way Windows users know to use ASI cards through the 
ASI manager GUI)


By contrast, from HPI/Rivendell's point of view, apparently only 
'physical endpoints' seems to matter... So, ASI5810 has 'only' 2 inputs 
/ 1 output , and the ASI5720 fatures 'only' 2 inputs / 2 outputs.


I agree but, that, given Rivendell's perfect integration with Jack, 
providing plenty of in/out, the best approach is to completely forget 
about ALSA PCM<->physical routing stuff and stick to rivendell's native 
HPI support.





|-|
| Frederick F. Gleason, Jr. |             Chief Developer         |
|                           |             Paravel Systems         |
|-|
|         A room without books is like a body without a soul.         |
|         |
|                                                         -- Cicero   |
|-|


___
Rivendell-dev mailing list
Rivendell-dev@lists.rivendellaudio.org
http://caspian.paravelsystems.com/mailman/listinfo/rivendell-dev
___
Rivendell-dev mailing list
Rivendell-dev@lists.rivendellaudio.org
http://caspian.paravelsystems.com/mailman/listinfo/rivendell-dev


Re: [RDD] rdcatchd and caed crash when not run as root

2021-06-14 Thread Alejandro olivan Alvarez

Hi.

Thank you for the feed back!

On 6/13/21 11:50 PM, Fred Gleason wrote:
On Jun 12, 2021, at 08:10, Alejandro Olivan Alvarez 
<mailto:alejandro.olivan.alva...@gmail.com>> wrote:


- Now I will setup a systemd unit that will take care of providen a 
system service consisting on a 'root-driven-but-GID150-promiscuous' 
jackd instance. **NOTICE my unit is commented/templated so jackd can 
be setup against either a dummy card, or to a real ALSA interface. 
For the sake of example, I've let the card-independant dummy one, so 
a cut/paste of this unit will work.


Here's the contents of /etc/systemd/system/jackd.service

[Unit]
Description=Start the JACK server in promiscuous mode for GID 150
After=sound.target
StartLimitBurst=5
StartLimitIntervalSec=33

[Service]
Type=simple
Environment="JACK_PROMISCUOUS_SERVER=150"
UMask=0
# For ALSA device binding running mode:
#Environment="JACK_NO_AUDIO_RESERVATION=1"
#ExecStart=/usr/bin/jackd -R -d alsa -d hw:? [-r 48000] [-M] [-H]
# For a floating/independent jackd running mode:
ExecStart=/usr/bin/jackd -R --name default -d dummy -r 48000 -C 2 -P 2
Restart=always
RestartSec=5

[Install]
WantedBy=multi-user.target



A better approach might be to configure Rivendell itself to start the 
jackd(1) instance. See RDAdmin->ManageHosts->[hostname]->JACKSettings. 
That way, your jackd(1) configuration gets saved in the Rivendell 
database and hence will be included as part of the regular backup 
process, plus you eliminate the need to tweak the ‘rivendell.service’ 
unit file each time Rivendell is updated. The primary drawback of this 
approach is that you will need to restart the ‘rivendell’ systemd 
service every time those command-line parameters change. (While this 
is a bit of a bother during the initial system setup, it’s basically a 
non-issue once you’ve settled on the jackd(1) parameters that you want 
to use).


Cheers!


aha... today I will try that!

I didn't before because I'm not sure whether I could set the promiscuois 
environment variable that way, maybe it will get it from 
/etc/environment anyways... or maybe I can set it with an export command 
followed by a semicolon and then, the jackd command... I have to 
experiment... I used a Systmd Unit because, on the uncertainty/novelty 
of the rivendell stuff to me, I tend to stick with what I'm familiar to...


Regards.




|-|
| Frederick F. Gleason, Jr. |             Chief Developer         |
|                           |             Paravel Systems         |
|-|
|         A room without books is like a body without a soul.         |
|         |
|                                                         -- Cicero   |
|-|


___
Rivendell-dev mailing list
Rivendell-dev@lists.rivendellaudio.org
http://caspian.paravelsystems.com/mailman/listinfo/rivendell-dev


Re: [RDD] Switch Taking on ASI6114

2021-06-14 Thread Alejandro olivan Alvarez

Hi! Thanks for your incredible work!

On 6/13/21 3:01 PM, Fred Gleason wrote:
On Jun 12, 2021, at 08:47, Alejandro Olivan Alvarez 
<mailto:alejandro.olivan.alva...@gmail.com>> wrote:


Although, In my case, switch experiments over ASI card were 
successful, switching over Jackd Interface where troublesome... but, 
anyways, what I discovered is that, sometimes, you RESTART rivendell 
and a given, nonworking RML SA/SR, starts to work.


It is well documented that, upon re-congig/tweak on RDAdmin, a 
reivendell-restart could be needed (not always)... The thing is that, 
sometimes, a rivendell-restart seems not to be enough, and the RML 
SA/ST keeps having no effect whatsoever... so maybe even a full 
system reboot could be needed




With the exception of (some) things related to JACK, it should never 
be necessary to restart the rivendell service after making 
configuration changes in rdadmin(1). If you find a situation where 
that is necessary, please report it as a bug!
I'm aware this isn't the best time to test rivendell, since you're in 
the middle of a major version change going qt5 ( that will be a quite a 
milestone!), on top of that, I'm also aware that because of my lack of 
experience in managing the Rivendell ecosystem, together with the 
Debian/CentOS differences, I'm not in a good position to confidently 
report on bugs that, often, aren't nothing but simple mistakes.


Today but, I've reproduced the situation where an RML SA on a running 
rivendell terminal (Local Audio Adapter switch against the Jack 
interface) didn't apply or was silently ignored... and then, after a 
rivendell restart, a re-issue of the same RML SA set the crosspoint as 
expected.






(maybe for a full caed restart... I'm speculating here)


Restarting the ‘rivendell’ service *does* do a full caed(8) restart.


Yesterday I missed very very much any way to monitor the 
crosspoint/switching/routing status of a Switch device (Maybe there's 
some way to get it!?!?!)... but I didn't find it. Also, there seems 
to be not feed-back upon the RML execution... you throw it, and 
that's all... I found myself faithfully believing it was 
applied/working... so this part is incredibly hard to troubleshoot.


Agreed. There are some formidable practical obstacles however; 
starting with the fact that some of the supported devices —e.g. Grass 
Valley GVC 7000 protocol — provide no mechanism for reading the actual 
state of the switching matrix. For those devices, Rivendell itself is 
in the situation of having to fire off protocol messages in the pious 
hope that they actually work, with no means for determining that that 
is actually so.


Mmmm... I get the point... I have no experience on those devices, but I 
understand what you're depicting is kinda hard situation to handle from 
a sysadmin / programmer point of view... hopefully those things feature 
some way to check their status on their own.


I'm aware that, although easy to say, implementing even a basic cli 
capability of 'status report' on you internal audio routing/switcher 
daemon (I guess caed?) would imply rather hard-to-implement features, 
such as some kind of volatile or persistent storage on crosspoint 
status, levels, etc, etc... all that on a very 'core' part of rivendell, 
and not of much help (if any) on those 'autistic' devices.


It would be very nice but (let's dream! :-), in the future, to have some 
kind of equivalent to the GPIOMonitor  but for the internal audio 
routing/crosspoint (caed?) engine




Cheers!


|-|
| Frederick F. Gleason, Jr. |             Chief Developer         |
|                           |             Paravel Systems         |
|-|
|         A room without books is like a body without a soul.         |
|         |
|                                                         -- Cicero   |
|-|


___
Rivendell-dev mailing list
Rivendell-dev@lists.rivendellaudio.org
http://caspian.paravelsystems.com/mailman/listinfo/rivendell-dev


Best regards.


___
Rivendell-dev mailing list
Rivendell-dev@lists.rivendellaudio.org
http://caspian.paravelsystems.com/mailman/listinfo/rivendell-dev


Re: [RDD] Switch Taking on ASI6114

2021-06-12 Thread Alejandro Olivan Alvarez

HI.

Yesterday I was doing my first experiments precisely with that stufff: 
ST, SA, SR, etc... And I found exactly on the same boat:


Although, In my case, switch experiments over ASI card were successful, 
switching over Jackd Interface where troublesome... but, anyways, what I 
discovered is that, sometimes, you RESTART rivendell and a given, 
nonworking RML SA/SR, starts to work.


It is well documented that, upon re-congig/tweak on RDAdmin, a 
reivendell-restart could be needed (not always)... The thing is that, 
sometimes, a rivendell-restart seems not to be enough, and the RML SA/ST 
keeps having no effect whatsoever... so maybe even a full system reboot 
could be needed (maybe for a full caed restart... I'm speculating here)


Yesterday I missed very very much any way to monitor the 
crosspoint/switching/routing status of a Switch device (Maybe there's 
some way to get it!?!?!)... but I didn't find it. Also, there seems to 
be not feed-back upon the RML execution... you throw it, and that's 
all... I found myself faithfully believing it was applied/working... so 
this part is incredibly hard to troubleshoot.


Maybe someone could help with some clues/tricks about this 
ST/SA/SR/etc... matters.


Best regards.


On 6/12/21 7:31 AM, Ryan Kin wrote:
I've done so many taking sources of Rivendell through the computer in 
my time of using Rivendell but recently, I'm not able to take the 
source...
My soundcard is an ASI6114 and my line code is "ST 0 0 0!" and switch 
off code is "SR 0 0 0".

What am I missing?
Thanks in advance!

___
Rivendell-dev mailing list
Rivendell-dev@lists.rivendellaudio.org
http://caspian.paravelsystems.com/mailman/listinfo/rivendell-dev
___
Rivendell-dev mailing list
Rivendell-dev@lists.rivendellaudio.org
http://caspian.paravelsystems.com/mailman/listinfo/rivendell-dev


Re: [RDD] rdcatchd and caed crash when not run as root

2021-06-12 Thread Alejandro Olivan Alvarez

HI.

I'm not really an end-user, but more of a 'system-programmer', so I 
don't use default /full-blown desktop environments... so no pulse-audio 
, and jackdbus, well, I guess it is here, but more as a mere dependency 
on modern X11 envs.


My rivendell workstation approach consists of just ALSA (alsa-utils , 
etc.), over a bare-minimum X11 environment using (slim, as display 
manager, and openbox as window manager, and on top of that I add the 
typical compton, nitrogen, tint, etc stuff to taylor a pure/dedicated 
rivendell experience)


Also, recently, re-reading my emails with AudioScience engineer (I 
worked with them for an independent Linux project on my job) I realized 
the AudioScience ALSA driver provides BOTH (and not 'either' as I had on 
my mind) the HPI interface AND the ALSA interface, so I can use and 
AudioScience card as Jackd interface (as ALSA interface), AND let 
rivendell detect it as an HPI interface, AND enjoy the powerful 
Audiocience PCM internal routing abilities (I think, rivendell does not 
takes advantage of that, but you can harness all that power with any 
ALSA mixer)...So, in a nutshell, here's what I'm using (sound-wise):


apt-get install snd-asihpi-dkms-4 python-audioscience alsa-utils qasmixer


Regards.


On 6/11/21 5:45 PM, Florent Peyraud wrote:

Hi Alejandro

Interesting approach ! Thanks a lot for the sharing :)

Do you use Pulse Audio jack plugin and jackdbus ? Or maybe you just 
blacklist pulse audio, but in this case, how do you handle OS sounds ?


Regards

Florent

Le 11/06/2021 à 10:03, Alejandro olivan Alvarez a écrit :

Hi!

I've been for several weeks now playing with Rivendell (on Debian) 
too ... and I faced the same thing as you comment.


I have (IMHO) solved all jackd / root/non-root issues in a way that I 
consider the perfect/definitive one: I run jack IN PROMISCUOUS MODE 
(a mode designed, although rarely used by the average user, precisely 
to allow multi/cross-user client/server inter-operation/sharing, 
instead of jackd's default users compartimentalization. In this mode, 
as long as any user is on a given, same, POSIX group, declared as env 
variable by the user terminal starting Jackd, their jack-client 
instances are user-inter-operable with a common/shared jackd 
server... ), so, to my understanding, rivendell setup is a perfect 
use-case for a promiscuous-mode jackd deployment... here's what I do:


- Create a Systemd unit (jackd.service), that launches jackd in 
promiscuous mode for GID XXX (the unit has environment promiscuous 
variable set to GID XXX)


- Where XXX is rivendell group (I also assign statically rivendell 
user UID XXX)


- To further ensure that promiscuous environment variable present 
system wide, I add it to /etc/environment


- I setup jackd.service unit to be run on boot.. so jackd server, 
becomes a system-wide service, reachable to anyone in GID XXX


- I MODIFY rivendell.service systemd unit to be launched/depend on 
jackd.service unit so it is started AFTER jackd.


- I add root as memeber of group rivendell (GID XXX) , so rivendell 
process, owned by root, can connect to jack service


- I add the normal system user that logs in the terminal, to 
rivendell group (GID XXX), allowing him ant his jackd clients to 
connect to jackd service.



This way, the jackd stuff is totally and completelly user 
transparent/traversal ... rivendell connects to jack just as it 
starts, NO NEED to configure anything, it just works.


Logged user starts qjackctl and, tada!...  it connects automatically 
to the already running jackd server (no need to start jackd from 
qjackctl!)


Any jackd-client application launched by the user, appears in the 
patchbay, and can be connected to/from rivendell (run as root, member 
of XXX)... No problems, no issues, no conflicts, everything JUST WORKS



The only little inconvenience here is that, whenever I update 
rivendell, the rivendell systemd unit is reinstalled, and I have to 
modify it again to make it to 'want' jackd.service.



Hope this helps... If someone is interested on further details on how 
to do this, just let me know!


Best regards.



On 6/9/21 7:45 PM, Florent Peyraud wrote:

Hi everyone

I'm currently working on Ubuntu integration of Rivendell, which 
means dealing with systemd, pulseaudio and so on...


In order to make caed use pulse alsa plugin, or even jackd, one 
solution is to log in as root, which is evil.


The other solution would be to run caed as the logged in user. This 
is due to the fact that pulseaudio and jackd daemons are (normally) 
only accessible by the same user as the one that launched them. This 
is what I tried with this procedure :


---8<---

sudo systemctl edit rivendell

[Service]
User=radio

--->8---

then I start Rivendell with `systemctl start rivendell.service`, 
which usually succeed mostly. But caed and/or rdcatchd crash.


I have core dumps but not analyzed it yet. No evidence could be 
found in logs. I'll try to dig deeper and l

Re: [RDD] rdcatchd and caed crash when not run as root

2021-06-12 Thread Alejandro Olivan Alvarez
Hi!... OK... I'll do my best to keep this as concise as possible...if 
necessary, we could go deeper afterwards if needed-


Starting at some Ubuntu (I'm using Debian) install instructions I 
initially used as reference, lets consider rivendell system user is 
'rivendell' , with UID/GID 150 I will create a X11 regular 
system/pam user 'operator' that will use the rivendell terminal:


- 1st:

adduser --uid 150 --system --group --home=/var/snd rivendell
chgrp rivendell /var/snd
chmod g+w /var/snd

- and:

useradd -m -g rivendell -s /bin/bash -p $(openssl passwd -crypt 
VERYSECRET) operator

adduser operator audio
adduser operator dialout
adduser operator sudo


- At this point, I'm doing something that I think is not necessary, I've 
still not tested/confirmed this point, but I'm not 'fine tuning' 
Rivendell install at this point (I'm just learning how to use it at its 
very limits/capabilities). Essentially I will setup, system-wide, the 
necessary environment variable to ensure that, any terminal, virtual or 
interactive, spawned by any user, belonging to GID 150 (rivendell) will 
'participate' on the promiscuous Jackd 'party':


echo "JACK_PROMISCUOUS_SERVER=150" >> /etc/environment


- Now I will setup a systemd unit that will take care of providen a 
system service consisting on a 'root-driven-but-GID150-promiscuous' 
jackd instance. **NOTICE my unit is commented/templated so jackd can be 
setup against either a dummy card, or to a real ALSA interface. For the 
sake of example, I've let the card-independant dummy one, so a cut/paste 
of this unit will work.


Here's the contents of /etc/systemd/system/jackd.service

[Unit]
Description=Start the JACK server in promiscuous mode for GID 150
After=sound.target
StartLimitBurst=5
StartLimitIntervalSec=33

[Service]
Type=simple
Environment="JACK_PROMISCUOUS_SERVER=150"
UMask=0
# For ALSA device binding running mode:
#Environment="JACK_NO_AUDIO_RESERVATION=1"
#ExecStart=/usr/bin/jackd -R -d alsa -d hw:? [-r 48000] [-M] [-H]
# For a floating/independent jackd running mode:
ExecStart=/usr/bin/jackd -R --name default -d dummy -r 48000 -C 2 -P 2
Restart=always
RestartSec=5

[Install]
WantedBy=multi-user.target


- At this point, I have to tweak the rivendell Unit:

It must have to be launched wit proper Environment variable to it joins 
the promiscuous Jackd party.


sed -i '/^Type=.*/a Environment="JACK_PROMISCUOUS_SERVER=150"' 
/lib/systemd/system/rivendell.service



I want it to start after the jackd.service **NOTE: this last part, I 
think, can be further enhanced, I've not tested enough, but I think a 
bether systemd units inter-dependency can be achieved than just 'After' .


sed -i -e '/After/s/$/ jackd.service/' /lib/systemd/system/rivendell.service


- Finally, reload systemd and enable those services:

systemctl daemon-reload
systemctl enable jackd.service
systemctl enable rivendell.service


At this point, upon reboot, user 'operator' logs in, and launches 
qjackctl...what SHOULD happen:


- qjackctl instantly recognices and binds to the system-wide, 
already-running jackd instance.. NO NEED to start jack


- In patchbay/connections, rivendell should appear (connected to jack) 
and, although ran by root, its inputs /outputs connections can be freely 
managed


- Any rivendell restart, will result in instantaneous jackd 
re-connecting to the system-wide jackd.


- Any jack client application launched by 'operator' binds to jackd 
(jamin, glassplayer, glasscoder, linphone...) and, even being run by 
'operador', its in/outs can be freely connected/disconnected to/from 
rivendell


- Therefore, a patchbay config can be setup and enabled in qjackctl, 
100% GUI, to automate connections, no need to program/script jackd 
connections, the user is free to operate the thing on his own.


- The user can use Jacktrip GUI to send audio in/from rivendell 
instances, in separate workstations, over LAN/WAN very easily



Hope this works on other systems as does in my Debian Buster/Stable 
experiments... but it may be helpful anyways... also, as I mentioned, 
I'm aware all this could be further enhanced/fine-tuned


Best regards.


On 6/11/21 2:00 PM, Chester Graham wrote:
I would very much like to see more details on how to set this up. I am 
using the standard configuration on Centos 7.

Chester

On Fri, Jun 11, 2021 at 4:03 AM Alejandro olivan Alvarez 
<mailto:alejandro.olivan.alva...@gmail.com>> wrote:


Hi!

I've been for several weeks now playing with Rivendell (on Debian)
too
... and I faced the same thing as you comment.

I have (IMHO) solved all jackd / root/non-root issues in a way that I
consider the perfect/definitive one: I run jack IN PROMISCUOUS
MODE (a
mode designed, although rarely used by the average user, precisely to
allow multi/cross-user client/server inter-operation/sharing,
instead of
jackd's default users compartimentalization. In this m

Re: [RDD] Preferred VNC server for Rivendell

2021-06-11 Thread Alejandro olivan Alvarez

Hi

Although I'm a devoted Debianist... I think I could suggest a solution 
somehow platform independent (although installation of required packaged 
software varies, obviously) that I use and I'm very happy with: I get 
rid of direct VNC connections and I setup VNC over HTTP ... in other 
words, I setup the system in a way that the X11 terminal is accessed 
with any web browser (as long as you know the terminal IP/hostname)


The two parts of the solution imply the combination of two pieces of 
software, x11vnc and python-websockify (the Debian package includes a 
nice VNC javascript client ready-to use... a piece of cake)


I simply setup a pair of systemd units that, upon start:

- Create a x11vnc server connected to the display

- Launches websockify, connects to x11vnc instance, and serves the VNC 
javascript client on port 8080


then, on any browser: http://myrivendell-terminal:8080 ... done!


If someone is interested on further details... just let me know.

Best regards.


On 6/11/21 4:27 AM, wa7skg wrote:

Is there a preferred VNC server for Rivendell 3.5 on CentOS7?

I think I will try tigervnc-server, but wanting to know if something 
else is preferred.




___
Rivendell-dev mailing list
Rivendell-dev@lists.rivendellaudio.org
http://caspian.paravelsystems.com/mailman/listinfo/rivendell-dev


Re: [RDD] rdcatchd and caed crash when not run as root

2021-06-11 Thread Alejandro olivan Alvarez

Hi!

I've been for several weeks now playing with Rivendell (on Debian) too 
... and I faced the same thing as you comment.


I have (IMHO) solved all jackd / root/non-root issues in a way that I 
consider the perfect/definitive one: I run jack IN PROMISCUOUS MODE (a 
mode designed, although rarely used by the average user, precisely to 
allow multi/cross-user client/server inter-operation/sharing, instead of 
jackd's default users compartimentalization. In this mode, as long as 
any user is on a given, same, POSIX group, declared as env variable by 
the user terminal starting Jackd, their jack-client instances are 
user-inter-operable with a common/shared jackd server... ), so, to my 
understanding, rivendell setup is a perfect use-case for a 
promiscuous-mode jackd deployment... here's what I do:


- Create a Systemd unit (jackd.service), that launches jackd in 
promiscuous mode for GID XXX (the unit has environment promiscuous 
variable set to GID XXX)


- Where XXX is rivendell group (I also assign statically rivendell user 
UID XXX)


- To further ensure that promiscuous environment variable present system 
wide, I add it to /etc/environment


- I setup jackd.service unit to be run on boot.. so jackd server, 
becomes a system-wide service, reachable to anyone in GID XXX


- I MODIFY rivendell.service systemd unit to be launched/depend on 
jackd.service unit so it is started AFTER jackd.


- I add root as memeber of group rivendell (GID XXX) , so rivendell 
process, owned by root, can connect to jack service


- I add the normal system user that logs in the terminal, to rivendell 
group (GID XXX), allowing him ant his jackd clients to connect to jackd 
service.



This way, the jackd stuff is totally and completelly user 
transparent/traversal ... rivendell connects to jack just as it starts, 
NO NEED to configure anything, it just works.


Logged user starts qjackctl and, tada!...  it connects automatically to 
the already running jackd server (no need to start jackd from qjackctl!)


Any jackd-client application launched by the user, appears in the 
patchbay, and can be connected to/from rivendell (run as root, member of 
XXX)... No problems, no issues, no conflicts, everything JUST WORKS



The only little inconvenience here is that, whenever I update rivendell, 
the rivendell systemd unit is reinstalled, and I have to modify it again 
to make it to 'want' jackd.service.



Hope this helps... If someone is interested on further details on how to 
do this, just let me know!


Best regards.



On 6/9/21 7:45 PM, Florent Peyraud wrote:

Hi everyone

I'm currently working on Ubuntu integration of Rivendell, which means 
dealing with systemd, pulseaudio and so on...


In order to make caed use pulse alsa plugin, or even jackd, one 
solution is to log in as root, which is evil.


The other solution would be to run caed as the logged in user. This is 
due to the fact that pulseaudio and jackd daemons are (normally) only 
accessible by the same user as the one that launched them. This is 
what I tried with this procedure :


---8<---

sudo systemctl edit rivendell

[Service]
User=radio

--->8---

then I start Rivendell with `systemctl start rivendell.service`, which 
usually succeed mostly. But caed and/or rdcatchd crash.


I have core dumps but not analyzed it yet. No evidence could be found 
in logs. I'll try to dig deeper and let you know if I can find 
something but I'm interested in your feedback if you can reproduce it 
on another system (centos for instance...).


As far as you know, is there something in rdservice and its children 
which definitely need root rights (shared memory or something like 
this) ?


Or maybe it could be possible to run rdservice as root, and it could 
launch caed as another user ? I think this was done for pypad 
components at a certain time (this has been rollbacked IIRC)


Thanks for your feedback

Best Regards

Florent


___
Rivendell-dev mailing list
Rivendell-dev@lists.rivendellaudio.org
http://caspian.paravelsystems.com/mailman/listinfo/rivendell-dev

___
Rivendell-dev mailing list
Rivendell-dev@lists.rivendellaudio.org
http://caspian.paravelsystems.com/mailman/listinfo/rivendell-dev


Re: [RDD] Howto 'Legal copy' 'logger' continous recording...

2021-05-31 Thread Alejandro olivan Alvarez

Thank you all for the feedback!

So, in a nutshell, Rivendell is not meant to do that... it is meant (for 
understandable arguments) to rely on an external/independent recording 
solution (ffmpeg, rotter, whatever...)


Independently of that, nothing prevents externally recorded materials to 
be ingested in RDLibrary for availability of such materials... 
Considering that a Cart can hold 999 cuts, It wouldn't be hard to setup 
12 Dropbox/cart combos, that you can use toghether with rdimport to 
ingest hourly records into... once knowing the 'external way' is the way 
to go that's not a problem at all.


It would but, in my opinion, a nice feature to have (having the 
non-linux/IT confident user in mind)


Again, thank you all very much.

Best regards.




On 5/30/21 2:30 PM, Fred Gleason wrote:
On May 30, 2021, at 07:15, Alejandro Olivan Alvarez 
<mailto:alejandro.olivan.alva...@gmail.com>> wrote:


Hi list! ... I'm blowing my mind out of this, pretty standard radio 
automation feature (AFAIK systems): A continuous, segmented, in 
'Library' , recording of aired audio as means of 'legal copy' To my 
knowledge, this is a 'pro' feature on automation systems, and not all 
or 'lite' versions lack it and depend on an external tool for the 
task... My bet is Rivendell can do it!


It can, but not particularly easily. My own take on this has always 
been that the classic ‘audio logger’ is out-of-scope for Rivendell; 
the principal reason being that the primary purpose of a ‘logger’ is 
to keep track of some particular process (in this case, proper on-air 
play-out) so as to provide useful data for tracking down anomalies. 
That being the case, the logger should ideally reside in an entirely 
separate and independent system from the one being logged, otherwise 
anomalies in the logged system will tend to contaminate the data 
captured in the integrated logger as well.


Cheers!


|-|
| Frederick F. Gleason, Jr. |             Chief Developer         |
|                           |             Paravel Systems         |
|-|
|         A room without books is like a body without a soul.         |
|         |
|                                                         -- Cicero   |
|-|


___
Rivendell-dev mailing list
Rivendell-dev@lists.rivendellaudio.org
http://caspian.paravelsystems.com/mailman/listinfo/rivendell-dev
___
Rivendell-dev mailing list
Rivendell-dev@lists.rivendellaudio.org
http://caspian.paravelsystems.com/mailman/listinfo/rivendell-dev


[RDD] Help setting feeds in RDCastManager

2021-05-26 Thread Alejandro olivan Alvarez

Hi list!

I'm failing to setup an RSS feed in RDCastManager... Long history short: 
the form fails to submit showing a pop-up window stating: 'XML data 
upload failed!'


Syslog shows that rdexport.cgi script is being executed, but, as some 
point, something goes wrong... Here's its stdout to syslog:


May 26 18:17:34 debian rdxport.cgi: processing RDXPORT_COMMAND_POST_RSS
May 26 18:17:34 debian rdxport.cgi: posted RSS XML to 
"file://home/operador/test1.rss"

May 26 18:17:34 debian rdxport.cgi:  'podcasts.cpp' line 472

Online documentation seems too old... I readed PODCASTING.txt file, but 
still, I still don't fully understand how the podcast 'bussiness logic' 
works under the hood, I'm not sure on how to debug things here... I'm 
stuck in this one.


At first I blamed on the usage of fake HTTP and FTP URLs (maybe the code 
checking the validity/availability/connectivity of the URLs), so I 
cloned a mockup Apache2/proftp VM to have true ftp/web services up, 
right ftp creds and so on... but it didn't help... Now I'm just trying 
the file:// protocol as a safe way... still, no changes... I feel it is 
something more essential/basic that I'm really missing.


I've looked at the podcasts.cpp code , line, 472... but it is just the 
line that prompts exiting...so no clue beyond that, and that line 421 
was executed, but, at some point 'ret' was or became null/void


What could be happening here? Any clue on which fields are mandatory? 
what conditions could trigger that error?



Thank you very much in advance.

Best regards.

___
Rivendell-dev mailing list
Rivendell-dev@lists.rivendellaudio.org
http://caspian.paravelsystems.com/mailman/listinfo/rivendell-dev


Re: [RDD] Using Audacity On Rivendell Computer

2021-05-26 Thread Alejandro olivan Alvarez

Hi again.

You can, and you can not... I'll try to explain:

(At least in Debian world, and AFAIK) AudioScience cards can operate in 
two mutually exclusive modes:


1. An AudioScience 'native' audio engine mode, driven by its proprietary 
'libHPI' kernel module: In this mode, only applications programmed and 
compiled with AudioScience libHPI library can use the ASI sound card 
(Rivendell is such a program) directly, independently of any Linux audio 
engines such as ALSA.


2. ALSA audio engine mode. In this mode, the card loads a driver that 
makes it to work with the Linux 'normal' audio engine (ALSA here) ... 
becoming a normal sound card, and, therefore, any audio application will 
work. Notice that, Even in this ALSA mode, if you declare the card as 
managed by Rivendell (something you could do, as you can use any ALSA 
sound card with Rivendell, using RDAlsaConfig GUI program) in order to 
use it will  'take control' of it, making it unusable for other programs 
(or at least, conflicting)


I do not know for CentOS (I use Debian) , but for Debian, only one of 
the AudioScince kernel module packages (either ALSA or libHPI ) can be 
present/installed on a given computer. My guess is that, being something 
kernel related (The actual audio card will load a different firmware 
depending on which mode will it work upon booting) this limitation will 
apply to CenOS too... You may need a dedicated, separated, 'production' 
machine, even connected to Rivendell.


Best regards!


On 5/26/21 2:40 AM, wa7skg wrote:
We have a Rivendell workstation in the studio running Rivendell 3.5 on 
a CentOS7 platform. It has an Audioscience ASI 6540 card for audio and 
works fine with Rivendell.


We would like to do some production work on this machine using 
Audacity, however, Audacity does not show the ASI card as an available 
resource. It does show the onboard audio, however, I really don't want 
to fool with that, especially since the ASI card is already wired in 
and I don't have spare channels on the small mixer we are using.


So, any ideas on how to get the ASI card working with Audacity without 
blowing up Rivendell?



___
Rivendell-dev mailing list
Rivendell-dev@lists.rivendellaudio.org
http://caspian.paravelsystems.com/mailman/listinfo/rivendell-dev


Re: [RDD] Growing the Rivendell system

2021-05-26 Thread Alejandro olivan Alvarez

Hi!

I recently tested (and even had some issues that learnt hot to overcome) 
exactly what you're trying to do... I will try (I'm not an experienced 
Rivendell user, but quite an experienced Linux administration 
professional) give you the clues to achieve what you're looking for .


Rivendell has a pair of 'modules' (GUI programs) that do what you want 
to do: RDSelect and RDMonitor ... so, here you can start googling on 
them, but, in a nutshell, RDSelect is a GUI 'switching' program that 
allows you to 'switch' your database/storage combo target, so, yo can 
switch from 'local' to 'remote', or 'master' to 'backup1' or 'backup1' 
etc...


RDMonitor is a small floating app which tells you to which 
database/target combo are you currently connected to, and whether or not 
connection to the selected 'server' is successfull.


The key for this to work is to switch from a default installation where 
you have a unique/single config file: /etc/rd.conf to a setup where you 
create a folder named /etc/rivendell.d where you can have as many 
'switcheable/selectable' configurations as you want/need , for instance, 
/etc/rivendell.d/local-backup.conf and 
/etc/rivendell.d/remote-master.conf . In that scenario /etc/rd.conf 
becomes a soft link that switches to the selected/active 
/etc/rivendell.d/x.conf as requested.


Rivendell will 'detect' the presence on /etc/rivendell.d folder of 
.conf files (rd.conf files), and RDSelect will automate the 
deletion/creation of an appropriate soft-link to /etc/rd.conf along with 
services restarting when you 'switch' from config to config.


At this point, all you have to configure is, on every conf file within 
rivendell.d, the connection details to the database (that's where 
database connection details will differ from config to config, depending 
on wether the config is intended to target a remote database or a local 
database) and the filesystem mounting details into /var/snd... The parts 
of the .conf files that you have to 'play with' are the [mySQL] and 
[AudioStore] sections.


The mySQL one was quite straightforward, the AudioStore one was a little 
more obscure to me: being a Debianist, I had to figure out that the 
storage switching process was handled through autofs (so I had to 
install it on Debian) but, from that point on, It was a matter of a 
little googling abut it (I had some issues, but got help on the list :-)


Regarding your storage backup concerns... My advice as a Linux admin is 
to separate backup from High-availability concepts... both are 
necessary, but not the same... For example, I use as storage scenario a 
pair of DRBD + Keepalived clustered/HA servers for NFS storage, so I can 
survive loss of one server, while 'backup' is done with rsync to an 
external NAS. While for DB I use a MariaDB, three-node galera cluster 
for HA, so I can loss one server, while for backups I rsync sqldumps 
regularly to the external NAS.



Hope I helped clarifying the picture... Best regards!


On 5/26/21 2:32 AM, wa7skg wrote:

Not a lot of response last time.

Just got a new studio built and going from a standalone to a 
two-computer operation. The client-server instructions I received are 
apparently for an older version of everything I have.


Currently using CentOS7 and Rivendell 3.5. I have two computers 
essentially the same. They are both on the same network. I need to 
join them for a common audio library and database. I do want to have a 
backup of the audio on the studio computer so everything can run from 
there if I have to take the main machine down for any reason. I 
suppose that can be done via a morning rsync cron job after all the 
daily program downloads complete.


Is there any document for setting up the client/server stuff? Like 
mounting the library on the second computer and how to share the 
database? And whatever else I need to do to get this to work.


Thanks.



___
Rivendell-dev mailing list
Rivendell-dev@lists.rivendellaudio.org
http://caspian.paravelsystems.com/mailman/listinfo/rivendell-dev


Re: [RDD] Alternative /var/snd directory

2021-05-21 Thread Alejandro Olivan Alvarez
Very clever approach! ... How did i miss that!

That way, since you're setting a fs type on the config for autofs... It
will just work!
I'm thinking that adding lvm2 to the picture, could keep also some
partitioning flexibility in that scenario... Have to try that!

Thank you very much for your advice!
Best regards

El vie., 21 may. 2021 19:49, drew Roberts  escribió:

> Alejandro,
>
> I may be able to help with a possible solution for the local filesystem
> issue.
>
> On Fri, May 21, 2021 at 12:59 PM Alejandro olivan Alvarez <
> alejandro.olivan.alva...@gmail.com> wrote:
>
>> Really!?!?!
>>
>> hope this could be confirmed for current versions... since, toghether
>> with the rdselect config/hot-switching feature
>> (/etc/rivendell.d/x.conf) it would be a very very interesting and
>> potentially usefull feature (I'm thinking, for instance, on a
>> training/learning terminal).
>>
>> Although the rdselect/autofs mount switching works perfect for NFS, it
>> really doesn't (or I failed to make it to work) for local filesystems... As
>> of now, If I would like to have a multiple local filesystem and switch
>> between them, I would have to setup nfs-kernel-server and do localhost
>> export/mount to /var/snd
>>
>
> Let's consider the case of 3 "setups" or 3 configs.
>
> 1. Production
> 2. Beginning student
> 3. Advanced student
>
> Let's assume you know how to do everything else that is needed but are
> struggling to understand how to get 3 different "/var/snd"s for these 3
> setups.
>
> I am going to make a suggestion. If it can work for you, great, if it
> can't, perhaps it can give you the idea to allow you to move forward or ask
> more questions.
>
> 1. Set up a machine as normal, single user with either a small /var/snd
> partition or with /var/snd as a part of your /var partition.
> 2. Add another internal hard drive to the machine and make 3 partitions on
> it.
> 3. Mount and unmount one of these partitions at a time to be ("cover")
> /var/snd on the other disk.
>
> Is this clear? I am in #rivendell on irc if you want more interaction help.
>
> all the best,
>
> drew
>
>
>> Regards.
>>
>>
>> On 5/21/21 4:05 AM, Geoff Barkman wrote:
>>
>> I'm not sure about rivendell 3x versions. It works on rivendell 2x
>> versions.
>> But you can add lines to you /etc/rd.conf file
>> (Cae)
>> AudioRoot=/mnt/myalternativelocation
>>
>> Except use square brackets around the cae section.
>> Many thanks
>> Geoff barkman
>>
>>
>> On Wed, May 19, 2021, 11:36 PM Sojo Gold  wrote:
>>
>>> Hi all,
>>>
>>> I've got brain fog on this and seem to be unable to think it through.
>>> I want to use alternative storage space for */var/snd*
>>>
>>> For learning, I have setup a (Linux Mint 20.1) Libvirt/KVM Host on an
>>> 128GB SSD with 2 additional drives, 750GB (KVM Guests) and 3TB (Plex
>>> Library etc.).
>>> I built a Rivendell (3.5.x /Centos7) virtual machine and needed to keep
>>> /var to a minimum, but have enough space on 3TB for /var/snd.
>>>
>>> I attempted to setup an NFS share on the 3TB that Rivendell could use
>>> but somehow seem to have got it the wrong way round and was only giving
>>> access to the Rivendell /var/snd directory from the 3TB. When importing
>>> audio, Rivendell /var/snd was still taking up space on the virtual machine
>>> file system.
>>>
>>> Basically my thinking says it should be easy... simply instruct
>>> Rivendell to send imported audio to the 3TB drive instead.
>>> What am I missing...any help would be much appreciated.
>>> Thanks.
>>> Chris Perkins.
>>>
>>>
>>>
>>> ___
>>> Rivendell-dev mailing list
>>> Rivendell-dev@lists.rivendellaudio.org
>>> http://caspian.paravelsystems.com/mailman/listinfo/rivendell-dev
>>>
>>
>> ___
>> Rivendell-dev mailing 
>> listRivendell-dev@lists.rivendellaudio.orghttp://caspian.paravelsystems.com/mailman/listinfo/rivendell-dev
>>
>> ___
>> Rivendell-dev mailing list
>> Rivendell-dev@lists.rivendellaudio.org
>> http://caspian.paravelsystems.com/mailman/listinfo/rivendell-dev
>>
>
>
> --
> Enjoy the *Paradise Island Cam* playing
> *Bahamian Or Nuttin* - https://www.paradiseislandcam.com/
>
___
Rivendell-dev mailing list
Rivendell-dev@lists.rivendellaudio.org
http://caspian.paravelsystems.com/mailman/listinfo/rivendell-dev


Re: [RDD] Alternative /var/snd directory

2021-05-21 Thread Alejandro olivan Alvarez

Really!?!?!

hope this could be confirmed for current versions... since, toghether 
with the rdselect config/hot-switching feature 
(/etc/rivendell.d/x.conf) it would be a very very interesting and 
potentially usefull feature (I'm thinking, for instance, on a 
training/learning terminal).


Although the rdselect/autofs mount switching works perfect for NFS, it 
really doesn't (or I failed to make it to work) for local filesystems... 
As of now, If I would like to have a multiple local filesystem and 
switch between them, I would have to setup nfs-kernel-server and do 
localhost export/mount to /var/snd


Regards.


On 5/21/21 4:05 AM, Geoff Barkman wrote:
I'm not sure about rivendell 3x versions. It works on rivendell 2x 
versions.

But you can add lines to you /etc/rd.conf file
(Cae)
AudioRoot=/mnt/myalternativelocation

Except use square brackets around the cae section.
Many thanks
Geoff barkman


On Wed, May 19, 2021, 11:36 PM Sojo Gold > wrote:


Hi all,

I've got brain fog on this and seem to be unable to think it through.
I want to use alternative storage space for */var/snd*

For learning, I have setup a (Linux Mint 20.1) Libvirt/KVM Host on
an 128GB SSD with 2 additional drives, 750GB (KVM Guests) and 3TB
(Plex Library etc.).
I built a Rivendell (3.5.x /Centos7) virtual machine and needed to
keep /var to a minimum, but have enough space on 3TB for /var/snd.

I attempted to setup an NFS share on the 3TB that Rivendell could
use but somehow seem to have got it the wrong way round and was
only giving access to the Rivendell /var/snd directory from the
3TB. When importing audio, Rivendell /var/snd was still taking up
space on the virtual machine file system.

Basically my thinking says it should be easy... simply instruct
Rivendell to send imported audio to the 3TB drive instead.
What am I missing...any help would be much appreciated.
Thanks.
Chris Perkins.



___
Rivendell-dev mailing list
Rivendell-dev@lists.rivendellaudio.org

http://caspian.paravelsystems.com/mailman/listinfo/rivendell-dev



___
Rivendell-dev mailing list
Rivendell-dev@lists.rivendellaudio.org
http://caspian.paravelsystems.com/mailman/listinfo/rivendell-dev
___
Rivendell-dev mailing list
Rivendell-dev@lists.rivendellaudio.org
http://caspian.paravelsystems.com/mailman/listinfo/rivendell-dev


Re: [RDD] Re-Importing a cut after external edit

2021-05-19 Thread Alejandro olivan Alvarez
Ah wow! really?!  I'm not exactly sure on the procedure you 
commented but have to try this out!


In my early experiments, opening the acual cut under /var/snd through 
external editor and saving (overwriting) screwed the cut... Since I saw 
a hash field on every cut, my guess is that, sure, upon modifying the 
cut, the hash mismatches, and we got an ugly inconsistency.


So, now, your suggested path is:

1 - copy the original file out from /var/snd to a temporary location ...OK

2 - Then, open the copy, not the original, on the editor for work 
although, upon ending edit work, you replace the original file with the 
edited copy ... OK (although I fail to understand the difference on 
editing the original file directly)


3 - Now (I guess, with a screwed cut shown on RDLibrary) I just ignore 
anything about this cut and go directly to open the Edit Markers utility 
on it... there, either do nothing or, if needed, adjust the markers... 
Save... Tada! rivendell automagically refresh/rehash the cut out of the 
exiting (altered/edited) file


Isn't it?

Thank you very much for your help.

Regards.


On 5/19/21 4:32 PM, Chuck wrote:
We've been doing it this way for years over several Rivendell 
versions: take the WAV file cut directly from /var/snd/; operate on it 
with the external WAV editor; then copy the finished WAV file back to 
/var/snd. Open the cut in Edit Markers, and Rivendell updates the 
time; re-adjust the markers if necessary.


I have found that re-importing a file is somewhat destructive and 
compromises quality slightly, whereas with our method, there is only 
the loss that is instituted by the external editor.


Hope that helps.

--Chuck

On We, 19 May 2021 14:16:03 +0200
Alejandro olivan Alvarez <mailto:alejandro.olivan.alva...@gmail.com>> wrote:

To:rivendell-dev@lists.rivendellaudio.org  
<mailto:rivendell-dev@lists.rivendellaudio.org>
Subject: [RDD] Re-Importing a cut after external edit
Message-ID: <19d4a23b-820f-3f55-e15b-e5cc84927...@gmail.com  
<mailto:19d4a23b-820f-3f55-e15b-e5cc84927...@gmail.com>>
Content-Type: text/plain; charset=utf-8; format=flowed
Hi list.
I'm trying to add some enhanced external edit usability to my rivendell
mockup, by scripting somehow, what I know other systems do upon external
editing: Copy the actual audio to a temporary file, open the temporary
file in the editor and, upon returning from file edition, check whether
the file was actually modified and, if so, re-import/overwrite the
currently existing material (cart/cut here).
The concept in my tests involves audacity and rdimport... I would call
the script as the external editor, passing %f, and execute my logic
there... thats the easy part.
The problem is that , whenever I try to use rdimport , I'm facing a
GROUP issue: rdimport complains no group or bad group... but I don't
need/want any group change, just re-import.
How could I re-import the edited file to the same cart_cut? I don't find
in wiki or in man a prpper way to do what I want... Why do I need a
Group at all when I specify an existing cart? ... if the cart and cut
does exist, it belongs to some Group on DB ... Another approach is to
guess the group, but, how could I guess the target group out of the
cart/cut? (sure querying the DB, but that's overkill!), does the
external edit command passes other information along with %f -> file?
(such as %g for group)
Thank you very much in advance.
Best regards.
___
Rivendell-dev mailing list
Rivendell-dev@lists.rivendellaudio.org
http://caspian.paravelsystems.com/mailman/listinfo/rivendell-dev


[RDD] Re-Importing a cut after external edit

2021-05-19 Thread Alejandro olivan Alvarez

Hi list.

I'm trying to add some enhanced external edit usability to my rivendell 
mockup, by scripting somehow, what I know other systems do upon external 
editing: Copy the actual audio to a temporary file, open the temporary 
file in the editor and, upon returning from file edition, check whether 
the file was actually modified and, if so, re-import/overwrite the 
currently existing material (cart/cut here).


The concept in my tests involves audacity and rdimport... I would call 
the script as the external editor, passing %f, and execute my logic 
there... thats the easy part.


The problem is that , whenever I try to use rdimport , I'm facing a 
GROUP issue: rdimport complains no group or bad group... but I don't 
need/want any group change, just re-import.


How could I re-import the edited file to the same cart_cut? I don't find 
in wiki or in man a prpper way to do what I want... Why do I need a 
Group at all when I specify an existing cart? ... if the cart and cut 
does exist, it belongs to some Group on DB ... Another approach is to 
guess the group, but, how could I guess the target group out of the 
cart/cut? (sure querying the DB, but that's overkill!), does the 
external edit command passes other information along with %f -> file? 
(such as %g for group)


Thank you very much in advance.

Best regards.



___
Rivendell-dev mailing list
Rivendell-dev@lists.rivendellaudio.org
http://caspian.paravelsystems.com/mailman/listinfo/rivendell-dev


Re: [RDD] Alternative /var/snd directory

2021-05-19 Thread Alejandro olivan Alvarez

Hi.

I'm also learning Rivendell in the latests weeks... mostly playing with 
VMs... very successfully.


To may knowledge (still limited) /var/snd is quite 'hardcoded'... but, 
from a Linux Administration point of view, it is fairly easy to mount on 
/var/snd whatever remote or local filesystem you want:


For remote, I use NFS with no problems... I guess you could use CIFS (I 
have not tested though) or whatever indeed trasparently to Rivendell... 
but consider that you could do, in theory, do a BIND mount of another 
folder into /var/snd (check BIND mounting). I have but had problems 
using bind mounts while trying to setup multiple rivendell setups on a 
single machine (using rdselect/rdmonitor combo) since I'm not succeeding 
on making autofs to bind mount a local folder into /var/snd... Another 
approach I'm thinking of (also untested) is to just use a Soft/Hard link 
against the desired FS place... maybe its as simple as that.


From your info, I guess your best bet is to figure out what's 
preventing your VM to mount your remote NFS 3TB storage, because from 
waht you said, it wasn't really mounted (writes went to local 
filesystem)... probably some kind of firewalling or routing issue 
between your VM and the storage server is preventing the mount.


Best regards.


On 5/19/21 1:36 PM, Sojo Gold wrote:

Hi all,

I've got brain fog on this and seem to be unable to think it through.
I want to use alternative storage space for */var/snd*

For learning, I have setup a (Linux Mint 20.1) Libvirt/KVM Host on an 
128GB SSD with 2 additional drives, 750GB (KVM Guests) and 3TB (Plex 
Library etc.).
I built a Rivendell (3.5.x /Centos7) virtual machine and needed to 
keep /var to a minimum, but have enough space on 3TB for /var/snd.


I attempted to setup an NFS share on the 3TB that Rivendell could use 
but somehow seem to have got it the wrong way round and was only 
giving access to the Rivendell /var/snd directory from the 3TB. When 
importing audio, Rivendell /var/snd was still taking up space on the 
virtual machine file system.


Basically my thinking says it should be easy... simply instruct 
Rivendell to send imported audio to the 3TB drive instead.

What am I missing...any help would be much appreciated.
Thanks.
Chris Perkins.




___
Rivendell-dev mailing list
Rivendell-dev@lists.rivendellaudio.org
http://caspian.paravelsystems.com/mailman/listinfo/rivendell-dev
___
Rivendell-dev mailing list
Rivendell-dev@lists.rivendellaudio.org
http://caspian.paravelsystems.com/mailman/listinfo/rivendell-dev


[RDD] RDSelect rd.conf storage mount issues.

2021-05-17 Thread Alejandro olivan Alvarez

Hi list.

I'm making progress exploring Rivendell's features... but I'm stuck on 
RDSelect.


Initially I got segfaults, apparently due to SQL issues... but I'm not 
sure wehter they were totally unrelated (I missed the RDMONITOR.txt file 
where it explains the necessity of a linked rd.conf file, and the Label 
entry in rd.conf to differentiate/label difefrent setups).


Now RDSelect starts (needs root) but the switching between 
configurations do fail at storage level: I see no mount for the 
specified mounts:



For the sake of example, I have the following fstab (working 
individually, but commented so they don't conflict targetting /var/snd):


#192.168.1.2:/exports/snd    /var/snd    nfs 
_netdev,x-systemd.after=network-online.target,rw,auto,rsize=8192,wsize=8192,timeo=14 
0    0

#/home/operador/snd    /var/snd    none    bind    0    0

Now, on each of my rd.conf files under /etc/rivendell.d, local.conf and 
remote.conf y set the Audiostore sections


[AudioStore]
MountSource=/home/operador/snd
MountType=none
MountOptions=bind
CaeHostname=
XportHostname=


and

[AudioStore]
MountSource=192.168.1.2:/exports/snd
MountType=nfs
MountOptions=_netdev,x-systemd.after=network-online.target,rw,auto,rsize=8192,wsize=8192,timeo=14
CaeHostname=
XportHostname=


Upon switching, the link to /etc/rd.conf correctly switches, rivendell 
is restarted, and database cbinding to either remote or local database 
is satablished...so far, so good.


But no mounting of remote filesystem is performed sure I'm missing 
some detail somewhere!


Could someone help?


Thank you very much in advance.

Best regards.


___
Rivendell-dev mailing list
Rivendell-dev@lists.rivendellaudio.org
http://caspian.paravelsystems.com/mailman/listinfo/rivendell-dev


Re: [RDD] Local Audio Adapter GPIO: serial not active

2021-05-06 Thread Alejandro olivan Alvarez

I'm starting to feel maybe something is wrong here...

Looking just at the GPIO form, upon trying to add a Local Audio Adapter 
GPIO driver matrix, I realized that although correctly greyed out), on 
the Primary Connection section, 'Type' field, has the value: 'Serial'... 
while on Backup Connection section, field 'Type' is (I guess correctly), 
the value 'none' why the difference?, shouldn't both to be 'None' ?


My guess is that, If first field 'Type' (the 'primary') althoud 
disabled, is hardcoded to 'Serial', then, I guess, the following line of 
code: (line 1194 at edit_matrix.cpp): 
switch((RDMatrix::PortType)edit_porttype_box->currentItem()) { Gets 
value as a serial, instead on none...  and teherefore, line 1203, case 
RDMatrix::TtyPort: matches instead of 1214 case RDMatrix::NoPort: ... 
and then the error rises.


I have to dig further on from where do those default form values come 
from, they may be wrong for Local Audio Adapter...


___
Rivendell-dev mailing list
Rivendell-dev@lists.rivendellaudio.org
http://caspian.paravelsystems.com/mailman/listinfo/rivendell-dev


Re: [RDD] Local Audio Adapter GPIO: serial not active

2021-05-06 Thread Alejandro olivan Alvarez

Hi again list...

Since I digged and researched quite a lot about rivendell before messing 
with it, I had in my mind that I read somewhere in rivendell stuff about 
what I'm trying actually to do and I'm failing to ... Since now I have 
found the original document (Rivendell wiki!) here i put the URL to the 
document, so that may give a context on what I'm doing wrong:


http://wiki.rivendellaudio.org/index.php/How_do_I_make_Rivendell_play_Audio_from_the_%22Line_In%22_of_the_Sound_Card_on_the_air%3F

Specifically, the issue comes as I try to follow the advice stated there:

Configure a switcher using the 'local audio' device (rdadmin->manage 
hosts ->switchers/gpio), then the standard switcher commands can be used 
to switch to and away from the sat. feed. The best thing to do is 
probably to use a macro cart to switch and stop the main log at the 
appropriate time (fire it from rdcatch so you have gpi signals available).


"Local audio device" is Rivendell switcherese for a local soundcard, you 
configure it to function as a switcher just like an external one, but 
done in software.


Basically, a standard rivendell soundcard has inputs feeding a routing 
matrix with the outputs from the matrix summed with the output ports 
from the playback engine (Either in hardware, with ASI cards or in 
software within caed), when you define a matrix as being a "Local audio" 
that routing matrix becomes available as a switcher device to rivendell.


The problem is that, no matter what, I get the "serial device not 
active!" error.


maybe a caed problem?

Thanks, regards


On 5/5/21 6:43 PM, David Klann wrote:

Greetings Alejandro!

On 5/5/21 10:20, you wrote:

Hi list... first mail on the list, hope I performed subscription
correctly...


Looks like you subscribed correctly!


To the subject: I'm trying to setup a Local Audio Adapter GPIO in RDAdmin.

The problem is that no matter what, I can't proceed since I got a
RDAdmin Error pop-up window stating: "The primary serial device is no
active!"

I have tried declaring /dev/ttyS0 (the PC serial port as seen in /dev)
in RDAdmin in Serial Ports just in case.

I don't understand why the form cares about serial not being
active...what am I doing wrong?

Thank you very much in advance.


My first guess is this is a permissions problem.

On my systems "ls -l /dev/ttyS0" looks like this:

  crw-rw. 1 root dialout 4, 64 Apr  9 15:54 /dev/ttyS0

And I know that neither Linux user "rd", nor "rivendell" are in the
"dialout" group. Try this:

  sudo usermod -a -G dialout rd

Then log out and back in (or reboot). Please report back if this helps.

Best,

~David Klann

___
Rivendell-dev mailing list
Rivendell-dev@lists.rivendellaudio.org
http://caspian.paravelsystems.com/mailman/listinfo/rivendell-dev


[RDD] Rivendell Virtual Machine

2021-05-06 Thread Alejandro olivan Alvarez

Hi list.

I'm new to rivendell, but I have some years of experience in cloud 
computing and virtualization.


I'm using rivendell VMs (although everything just mockup/tests for 
learning) very successfully (to the moment) toghether wit physical 
rivendell PC, in a mixed physical / virtual mockup (I use PROXMOX for 
virtualization)... To 'move'/'share' audio between hosts my advice is to 
check JackTrip: https://github.com/jacktrip/jacktrip


It is meant (although not mandatory) to do exactly that, far, far easier 
than NetJack stuff  It is a 'normal' jackd server client application 
that allows to move audio very very easily between other jackd hosts, 
both over LAN, but also over WAN (with its logical limitations).


If you prefer GUI, check a branch on the repository called qjacktrip 
(still in development, but very much useable to my taste) which provides 
a nice GUI Qt application to handle jacktrip from the desktop.


As of Debian (I'm debianist) Buster, jacktrip packaged release is quite 
old and not much functional to my taste ( Bullseye/testing includes 
quite a recent 1.3.0 version)... So I have created a .deb package that 
provide both latest jacktrip and qjacktrip for debian 10 Buster if 
someone's interested.


Best regards.

___
Rivendell-dev mailing list
Rivendell-dev@lists.rivendellaudio.org
http://caspian.paravelsystems.com/mailman/listinfo/rivendell-dev


[RDD] Local Audio Adapter GPIO: serial not active

2021-05-06 Thread Alejandro olivan Alvarez
Hi list... my bad, too much time without using mailing lists, I missed 
to add the list address on replies... I'm sorry  :-(


I'm forwarding my replies to David Klann, who thankfully replied me, so 
they can be archived and be public to the list.


Regards.

 Forwarded Message 
Subject:Re: [RDD] Local Audio Adapter GPIO: serial not active
Date:   Wed, 5 May 2021 19:32:20 +0200
From:   Alejandro olivan Alvarez 
To: David Klann 



Hi. Thank you for your help.

I don't know enough about the rivendell ecosystem to guess whether its 
system-side issue (permissions a good candidate) or some Database issue 
(bug)


System side, with the exception pf the pypad daemon, it looks to me 
everything is 'root' driven:


root@rd-terminal-alex:~# ps aux | grep sbin/rd
root   489  3.9  0.7 211456 27884 ?    Ssl  18:07   2:32 
/usr/sbin/rdservice
root   586  4.9  2.7 211824 103120 ?   SL   18:07   3:11 
/usr/sbin/rdcatchd
root   587  0.0  0.6 136524 24948 ?    S    18:07   0:00 
/usr/sbin/rdpadd
pypad  588  4.1  0.7 211196 26376 ?    S    18:07   2:41 
/usr/sbin/rdpadengined
root   589  4.9  0.9 218348 36488 ?    S    18:07   3:11 
/usr/sbin/rdvairplayd
root   693  0.0  0.0   6208   888 pts/0    S+   19:12   0:00 grep 
sbin/rd


Anyways, I checked the existence of the ttyS0 device (although I don't 
understand why is it checked for a Sound Card based GPIO) and dialout perms:



root@rd-terminal-alex:~# ls -l /dev/ttyS0
crw-rw 1 root dialout 4, 64 May  5 18:07 /dev/ttyS0

root@rd-terminal-alex:~# cat /etc/group | grep dialout
dialout:x:20:operador,rivendell


Both look good  in the meantime, I investigated a little the source 
code and checked the Database table:


MariaDB [Rivendell]> select * FROM TTYS;
++-++--++---+---+---++-+
| ID | PORT_ID | ACTIVE | STATION_NAME | PORT   | BAUD_RATE | 
DATA_BITS | STOP_BITS | PARITY | TERMINATION |

++-++--++---+---+---++-+
|  1 |   0 | Y  | rd-terminal-alex | /dev/ttyS0 | 115200 
| 8 | 1 |  0 |   0 |
|  4 |   1 | N  | rd-terminal-alex | /dev/ttyS1 | 9600 | 
8 | 1 |  0 |   0 |
|  7 |   2 | N  | rd-terminal-alex | /dev/ttyS2 | 9600 | 
8 | 1 |  0 |   0 |
| 10 |   3 | N  | rd-terminal-alex | /dev/ttyS3 | 9600 | 
8 | 1 |  0 |   0 |
| 13 |   4 | N  | rd-terminal-alex |    | 9600 | 
8 | 1 |  0 |   0 |

++-++--++---+---+---++-+
6 rows in set (0.000 sec)

So the TTYs are there...  and, if I tick the checkbox to enable the 
serial port, the ACTIVE field switches Y/N.


Apparently the problem comes as rdedit_matrix.cpp seems to call Active() 
function of rdtty.cpp , I'm not sure about this...I digged just a little 
bit more there and ended at GetStringValue(const QString ) 
function, which queries de database like this:


MariaDB [Rivendell]> select ACTIVE from TTYS where 
STATION_NAME="rd-terminal-alex"&_ID=0;

++
| ACTIVE |
++
| Y  |
++
1 row in set (0.000 sec)


If the first Active() call fails, then the QMessageBox with the "The 
primary serial device is not active!" string is triggered , which I 
think is what I'm seeing (not really sure, but I bet is this)... why 
does Active() fails? I don't know ... hopefully I'm missing some obvious 
system-side detail.



Thank you very very much for your help!

Best regards!












On 5/5/21 6:43 PM, David Klann wrote:

Greetings Alejandro!

On 5/5/21 10:20, you wrote:

Hi list... first mail on the list, hope I performed subscription
correctly...


Looks like you subscribed correctly!

To the subject: I'm trying to setup a Local Audio Adapter GPIO in 
RDAdmin.


The problem is that no matter what, I can't proceed since I got a
RDAdmin Error pop-up window stating: "The primary serial device is no
active!"

I have tried declaring /dev/ttyS0 (the PC serial port as seen in /dev)
in RDAdmin in Serial Ports just in case.

I don't understand why the form cares about serial not being
active...what am I doing wrong?

Thank you very much in advance.


My first guess is this is a permissions problem.

On my systems "ls -l /dev/ttyS0" looks like this:

crw-rw. 1 root dialout 4, 64 Apr 9 15:54 /dev/ttyS0

And I know that neither Linux user "rd", nor "rivendell" are in the
"dialout" group. Try this:

sudo usermod -a -G dialout rd

Then log out and back in (or reboot). Please report back if this helps.

Best,

~David Klann

___
Rivendell-dev mailing list
Rivendell

[RDD] Local Audio Adapter GPIO: serial not active

2021-05-05 Thread Alejandro olivan Alvarez
Hi list... first mail on the list, hope I performed subscription 
correctly...


To the subject: I'm trying to setup a Local Audio Adapter GPIO in RDAdmin.

The problem is that no matter what, I can't proceed since I got a 
RDAdmin Error pop-up window stating: "The primary serial device is no 
active!"


I have tried declaring /dev/ttyS0 (the PC serial port as seen in /dev) 
in RDAdmin in Serial Ports just in case.


I don't understand why the form cares about serial not being 
active...what am I doing wrong?


Thank you very much in advance.

Best regards.

___
Rivendell-dev mailing list
Rivendell-dev@lists.rivendellaudio.org
http://caspian.paravelsystems.com/mailman/listinfo/rivendell-dev