ANNOUNCEMENT - tvpvrd 1.2.5
=========================
This is to announce the release of the GPL 3.0 published multi-threaded
recording/transcoding GNU-Linux daemon 'tvpvrd' - TV Personal Video recorder
for ivtv. Which is now believed to be feature rich enough and stable for a wider
audience.
Release: v1.2.5 (stable)
Sourceforge: http://sourceforge.net/projects/tvpvrd/
(The daemon is available as a traditional tar-package source and as prebuilt RPM
for OpenSuSE 11.1 and 11.2)
NOTE: This is only for GNU-Linux NOT for any versions of Windows.
CREDITS:
========
To all developers of ivtv-driver that has made this possible.
GOAL OF PROJECT
================
To provide the most stable and user friendly client/server command line based
recorder/transcoder for ivtv-supported capture cards available on GNU-Linux.
RATIONALE
==========
In mailing lists and on the ivtv-wiki there are questions on how to do scheduled
recording using a capture card. Usually the reply on the wiki and on the mailing
lists is to use either a) some cron/at shell script or b) install a full fledged
media center (e.g. MythTV).
This daemon solves this recording/scheduling problem by offering a clean method
to schedule both recording and optional transcodings (using ffmpeg) by the means
of a resident Unix/Linux daemon for those who do no want/need a full fledged
media center but still wants more easy of use and flexibility than is possible
with amnually added cron jobs.
The daemon manage an internal database of recordings. By starting the daemon one
can then add/delete/modify/transcode recordings and files by the means of a
standard TCP/IP connection to the server.
The dameon is capable of making use of multiple cards and will automatically
choose the first free card at the specified time for a recording
This offers an alternative to have to install a large and complex media center
server and focus on the recording process and gives much more flexibility than a
manually crafted shell script. This also easily give the added benefit of
controlling recording while "on-the-road" as long as a normal TVP/IP connection
can be established to the server.
BENEFITS
========
* Client server architecture with automatic client arbitration
* Multi threaded, multi process architecture
* Basic master /slave option for how to run the server which makes it possible
to run as a slave to do transcoding on a server that doesnät have a capture
card.
* Full UTF-8 support for names of recordings
* Very small footprint
* Simultaneous recording using multiple capture cards
* Multi transcoding of the same video with user defined profiles
* Self contained XML based recording database (no need to install or setup a
separate database)
* Intelligent load balancing for transcoding
* Small footprint and efficient TCP/IP port command interface.
* Recordings can be manipulated from anywhere as long as it is possible to login
to the server running tvpvrd.
* Large File Support (LFS) to enable recorded files with sizes >2GB
* Easy to use support for recurring recordings, daily, weekly, workdays, etc
* Intelligent time/date specification
* Extensive Unix manpage documentation (as well as PDF version)
* Extensive customization possible via INI-file
* Supports transcoding of previous recorded video
EXAMPLE1
=========
To schedule a recording for the coming Wed at 20:00 on BBC1 one gives the
command (after logging in to the daemon for example via telnet) with the default
name, duration and transcoding profile
>a BBC1 wed 20:00
This will schedule a recording for the next Wednesday with default recording
time (0:59 min) and a name based on the channel, date and time and use the
default transcoding profile.
EXAMPLE2
=========
To schedule a recording of the news at 06:00-06:30 every workday and use the
base name "Morning news" on channel3 and transcode to a suitable format for a
mobile phones one could use the command
>ar f 50 channel3 06:00 06:30 Morning news @mobile
This command should be interpreted
ar - Add recurrent recording
f - Every Mon.-Fri
50 - 50 Occurrences
06:00 - Start time
06:30 - End time
Morning ...- Base name of recording
@mobile - Use the 'mobile' profile for transcoding
DETAILS
========
As an example of the possibilities with the server the list below shows the
currently supported commands by the server.
Commands:
a - Add recording
ar - Add repeated recording
d - delete single recording
dp - display all settings for specified profile
dr - delete all repeated recording
h - help
i - print detailed information on recording
kt - kill all ongoing transcoding(s)
ktf - set/unset kill transcoding flag at shutdown
l - list all pending recordings
lc - list all controls for the capture card
log n -show the last n lines of the logfile
ls - list all stations
lp - list all profiles
lq n - list queued transcodings
n - list the immediate next recording on each video
o - list the ongoing recording(s)
ot - list the ongoing transcoding(s)
q - quick recording
rst - reset all statistics
rp - refresh transcoding profiles from file
s - print server status
sp - set transcoding profile for specified recording
st - print profile statistics
t - print server time
tf - transcode specified file
tl - read list of videos to transcode from file
td - transcode all videos in directory
u - force update of database with recordings
v - print version
vc <n> - print information on TV-Card <n>
x - view database (in XML format) with recordings
z - display all settings from ini-file
! <n> - cancel ongoing recording
Type h <cmd> for syntax of each command
TECHNICAL INFORMATION
======================
'tvpvrd' is a threaded (pthreads) GNU-Linux daemon consisting of ~13k LOC C-code
with GNU C-source extensions. It has been written in a traditional Unix daemon
style with a heavy focus on stability, memory usage minimization and safety from
malicious users.
The build structure is a traditonal autoconf/automake which should make it easy
to compile and install.
The source code has been manually and programatically checked for possible
memory leaks or safety issues by the means of static code analyzers and v1.2.5
is to date believed to have no major vulnerabilities or memory issues.
Happy Recording!
Johan
_______________________________________________
ivtv-users mailing list
ivtv-users@ivtvdriver.org
http://ivtvdriver.org/mailman/listinfo/ivtv-users
=========================
This is to announce the release of the GPL 3.0 published multi-threaded
recording/transcoding GNU-Linux daemon 'tvpvrd' - TV Personal Video recorder
for ivtv. Which is now believed to be feature rich enough and stable for a wider
audience.
Release: v1.2.5 (stable)
Sourceforge: http://sourceforge.net/projects/tvpvrd/
(The daemon is available as a traditional tar-package source and as prebuilt RPM
for OpenSuSE 11.1 and 11.2)
NOTE: This is only for GNU-Linux NOT for any versions of Windows.
CREDITS:
========
To all developers of ivtv-driver that has made this possible.
GOAL OF PROJECT
================
To provide the most stable and user friendly client/server command line based
recorder/transcoder for ivtv-supported capture cards available on GNU-Linux.
RATIONALE
==========
In mailing lists and on the ivtv-wiki there are questions on how to do scheduled
recording using a capture card. Usually the reply on the wiki and on the mailing
lists is to use either a) some cron/at shell script or b) install a full fledged
media center (e.g. MythTV).
This daemon solves this recording/scheduling problem by offering a clean method
to schedule both recording and optional transcodings (using ffmpeg) by the means
of a resident Unix/Linux daemon for those who do no want/need a full fledged
media center but still wants more easy of use and flexibility than is possible
with amnually added cron jobs.
The daemon manage an internal database of recordings. By starting the daemon one
can then add/delete/modify/transcode recordings and files by the means of a
standard TCP/IP connection to the server.
The dameon is capable of making use of multiple cards and will automatically
choose the first free card at the specified time for a recording
This offers an alternative to have to install a large and complex media center
server and focus on the recording process and gives much more flexibility than a
manually crafted shell script. This also easily give the added benefit of
controlling recording while "on-the-road" as long as a normal TVP/IP connection
can be established to the server.
BENEFITS
========
* Client server architecture with automatic client arbitration
* Multi threaded, multi process architecture
* Basic master /slave option for how to run the server which makes it possible
to run as a slave to do transcoding on a server that doesnät have a capture
card.
* Full UTF-8 support for names of recordings
* Very small footprint
* Simultaneous recording using multiple capture cards
* Multi transcoding of the same video with user defined profiles
* Self contained XML based recording database (no need to install or setup a
separate database)
* Intelligent load balancing for transcoding
* Small footprint and efficient TCP/IP port command interface.
* Recordings can be manipulated from anywhere as long as it is possible to login
to the server running tvpvrd.
* Large File Support (LFS) to enable recorded files with sizes >2GB
* Easy to use support for recurring recordings, daily, weekly, workdays, etc
* Intelligent time/date specification
* Extensive Unix manpage documentation (as well as PDF version)
* Extensive customization possible via INI-file
* Supports transcoding of previous recorded video
EXAMPLE1
=========
To schedule a recording for the coming Wed at 20:00 on BBC1 one gives the
command (after logging in to the daemon for example via telnet) with the default
name, duration and transcoding profile
>a BBC1 wed 20:00
This will schedule a recording for the next Wednesday with default recording
time (0:59 min) and a name based on the channel, date and time and use the
default transcoding profile.
EXAMPLE2
=========
To schedule a recording of the news at 06:00-06:30 every workday and use the
base name "Morning news" on channel3 and transcode to a suitable format for a
mobile phones one could use the command
>ar f 50 channel3 06:00 06:30 Morning news @mobile
This command should be interpreted
ar - Add recurrent recording
f - Every Mon.-Fri
50 - 50 Occurrences
06:00 - Start time
06:30 - End time
Morning ...- Base name of recording
@mobile - Use the 'mobile' profile for transcoding
DETAILS
========
As an example of the possibilities with the server the list below shows the
currently supported commands by the server.
Commands:
a - Add recording
ar - Add repeated recording
d - delete single recording
dp - display all settings for specified profile
dr - delete all repeated recording
h - help
i - print detailed information on recording
kt - kill all ongoing transcoding(s)
ktf - set/unset kill transcoding flag at shutdown
l - list all pending recordings
lc - list all controls for the capture card
log n -show the last n lines of the logfile
ls - list all stations
lp - list all profiles
lq n - list queued transcodings
n - list the immediate next recording on each video
o - list the ongoing recording(s)
ot - list the ongoing transcoding(s)
q - quick recording
rst - reset all statistics
rp - refresh transcoding profiles from file
s - print server status
sp - set transcoding profile for specified recording
st - print profile statistics
t - print server time
tf - transcode specified file
tl - read list of videos to transcode from file
td - transcode all videos in directory
u - force update of database with recordings
v - print version
vc <n> - print information on TV-Card <n>
x - view database (in XML format) with recordings
z - display all settings from ini-file
! <n> - cancel ongoing recording
Type h <cmd> for syntax of each command
TECHNICAL INFORMATION
======================
'tvpvrd' is a threaded (pthreads) GNU-Linux daemon consisting of ~13k LOC C-code
with GNU C-source extensions. It has been written in a traditional Unix daemon
style with a heavy focus on stability, memory usage minimization and safety from
malicious users.
The build structure is a traditonal autoconf/automake which should make it easy
to compile and install.
The source code has been manually and programatically checked for possible
memory leaks or safety issues by the means of static code analyzers and v1.2.5
is to date believed to have no major vulnerabilities or memory issues.
Happy Recording!
Johan
_______________________________________________
ivtv-users mailing list
ivtv-users@ivtvdriver.org
http://ivtvdriver.org/mailman/listinfo/ivtv-users