Hello,
any chance to initiate (from client) a recording via SVDRP on a server?
For this, some information such as channel number, time/date should be parsed from a highlighted entry (submenu "program") to SVDRP. Is that in general possible (maybe via the unused blue key)?
uwe
Hi!
I'm using a quite "ugly" solution that might do the thing that you want!
I have a server with 4 DVB cards and all the HDD, and the I have a client connected to the server using streamdev. The servers video-directory is mounted using NFS to the client. Whan I want to record something on TV I just ad the timer on the client. The I have a script on the server that is run every minute that connects to the client using SVDRP and lists all timers, if it finds a timer it deletes it and adds the same timer on the server instead. If I start a "direct" recording on the client (presses red in the menu) the cleint starts to record immediately (in the video-directory thats mounted using NFS), after max 1 minute the timer is deleted from the client and moved to the server - the server continues to record in the same directory, so there is only maybe one second of video thats missing
It works quite well for me - drop me a mail if youre intrested of the Perl-script (it's really ugly and simple) - lars(at)jpl.se
/Lars
Thus spake Uwe Ortner (uwe.ortner@villa-flora.info):
Hello,
any chance to initiate (from client) a recording via SVDRP on a server?
For this, some information such as channel number, time/date should be parsed from a highlighted entry (submenu "program") to SVDRP. Is that in general possible (maybe via the unused blue key)?
uwe
vdr mailing list vdr@linuxtv.org http://www.linuxtv.org/cgi-bin/mailman/listinfo/vdr
On Mo, 2005-12-26 at 13:49 +0100, Lars Fredriksson wrote:
Hi!
I'm using a quite "ugly" solution that might do the thing that you want!
I have a server with 4 DVB cards and all the HDD, and the I have a client connected to the server using streamdev. The servers video-directory is mounted using NFS to the client.
same here ...
Whan I want to record something on TV I just ad the timer on the client. The I have a script on the server that is run every minute that connects to the client using SVDRP and lists all timers, if it finds a timer it deletes it and adds the same timer on the server instead.
script on client side would be great, because the server is always on. Made a quit test - just adding via "cat" the clients timers.conf to the server, but obviously this doesnt work
If I start a "direct" recording on the client (presses red in the menu) the cleint starts to record immediately (in the video-directory thats mounted using NFS), after max 1 minute the timer is deleted from the client and moved to the server - the server continues to record in the same directory, so there is only maybe one second of video thats missing
what happens if there are already timers on the server?
/uwe
It works quite well for me - drop me a mail if youre intrested of the Perl-script (it's really ugly and simple) - lars(at)jpl.se
/Lars
Thus spake Uwe Ortner (uwe.ortner@villa-flora.info):
Hello,
any chance to initiate (from client) a recording via SVDRP on a server?
For this, some information such as channel number, time/date should be parsed from a highlighted entry (submenu "program") to SVDRP. Is that in general possible (maybe via the unused blue key)?
uwe
On 26 Dec 2005 Lars Fredriksson lars@jpl.se wrote:
If I start a "direct" recording on the client (presses red in the menu) the cleint starts to record immediately (in the video-directory thats mounted using NFS), after max 1 minute the timer is deleted from the client and moved to the server - the server continues to record in the same directory, so there is only maybe one second of video thats missing
I modified the client VDR to never start a recording (beside some other modifications which makes a server VDR or a client VDR more usable).
It works quite well for me - drop me a mail if youre intrested of the Perl-script (it's really ugly and simple) - lars(at)jpl.se
I'm interested in the script too. Can you post it here?
Regards.
On Mo, 2005-12-26 at 18:13 +0000, Stefan Huelswitt wrote:
On 26 Dec 2005 Lars Fredriksson lars@jpl.se wrote:
If I start a "direct" recording on the client (presses red in the
menu)
the cleint starts to record immediately (in the video-directory
thats
mounted using NFS), after max 1 minute the timer is deleted from the client and moved to the server - the server continues to record in
the
same directory, so there is only maybe one second of video thats missing
I modified the client VDR to never start a recording (beside some other modifications which makes a server VDR or a client VDR more usable).
how did you do that? Is a timer entry although created?
It works quite well for me - drop me a mail if youre intrested of
the
Perl-script (it's really ugly and simple) - lars(at)jpl.se
I'm interested in the script too. Can you post it here?
Regards.
What will work is something like:
------------ TENTRY=$(svdrpsend.pl -d client -p 2001 lstt|grep 250| sed "s/250.* //g") svdrpsend.pl -d server -p 2001 NEWT "$TENTRY" svdrpsend.pl -d client -p 2001 delt 1 ------------
Numerating on server is done like "250-1" but on my client it is "250 1"
Any idea where this comes from?
/uwe
On Mo, 2005-12-26 at 21:04 +0100, Uwe Ortner wrote:
What will work is something like:
TENTRY=$(svdrpsend.pl -d client -p 2001 lstt|grep 250| sed "s/250.* //g") svdrpsend.pl -d server -p 2001 NEWT "$TENTRY" svdrpsend.pl -d client -p 2001 delt 1
I get a message "550 Timer "1" is recording" when I try to delete a running timer with "svdrpsend.pl DELT 1"
Is there a flag that can delete this timer?
/uwe
On Mon, Dec 26, 2005 at 10:22:14PM +0100, Uwe Ortner wrote:
On Mo, 2005-12-26 at 21:04 +0100, Uwe Ortner wrote:
What will work is something like:
TENTRY=$(svdrpsend.pl -d client -p 2001 lstt|grep 250| sed "s/250.* //g") svdrpsend.pl -d server -p 2001 NEWT "$TENTRY" svdrpsend.pl -d client -p 2001 delt 1
I get a message "550 Timer "1" is recording" when I try to delete a running timer with "svdrpsend.pl DELT 1"
Is there a flag that can delete this timer?
/uwe
Use the following SVDRP-command to deactivate the timer first:
MODT <timer-number> off
/Lars
Use the following SVDRP-command to deactivate the timer first:
MODT <timer-number> off
/Lars
Made a little shell script for this: ----------- SCMD="/usr/lib/vdrdevel/svdrpsend.pl" SPORT="2001" SCLT="localhost" SSRV="servername" SDIR="SERVER~"
IFS=" " for recording in $($SCMD -d $SCLT -p $SPORT LSTT | grep "^250"|sed "s/250.//g" )do IFS=":" check=($recording) #no=$(echo ${check[0]} | awk '{print $1}') check[0]=$(echo ${check[0]} | awk '{print $2}') NEWSTRING="${check[0]}:${check[1]}:${check[2]}:${check[3]}: ${check[4]}:${check[5]}:${check[6]}:${SDIR}${check[7]}" $SCMD -d $SSRV -p $SPORT NEWT "$NEWSTRING" $SCMD -d $SCLT -p $SPORT MODT 1 off $SCMD -d $SCLT -p $SPORT DELT 1 done -----------
Works, but needs further improvements, s.a. checking that server is able to do the recording (if there are already recordings on the server)
If someone is interested ....
/uwe
On 26 Dec 2005 Uwe Ortner uwe.ortner@villa-flora.info wrote:
On Mo, 2005-12-26 at 18:13 +0000, Stefan Huelswitt wrote:
I modified the client VDR to never start a recording (beside some other modifications which makes a server VDR or a client VDR more usable).
how did you do that?
In vdr.c there is this if-clause:
// Timers and Recordings: if (!ISCLIENT() && !Timers.BeingEdited()) { // Delete expired timers:
The ISCLIENT() a check if VDR has been started as client or server (selected from a commandline switch, so I can use the same binary for both). Without all my other stuff, you can simply comment of the complete if-clause.
If anybody is interested in the complete client-server stuff, I can provide a patch. But it's still work in progress and focused very much on my needs.
Is a timer entry although created?
Yes.
Numerating on server is done like "250-1" but on my client it is "250 1"
Any idea where this comes from?
AFAIR the '-' is the continuation mark i.e. for a multiline output.
Regards.