.\" Automatically generated by Pod::Man 4.07 (Pod::Simple 3.32) .\" .\" Standard preamble: .\" ======================================================================== .de Sp \" Vertical space (when we can't use .PP) .if t .sp .5v .if n .sp .. .de Vb \" Begin verbatim text .ft CW .nf .ne \\$1 .. .de Ve \" End verbatim text .ft R .fi .. .\" Set up some character translations and predefined strings. \*(-- will .\" give an unbreakable dash, \*(PI will give pi, \*(L" will give a left .\" double quote, and \*(R" will give a right double quote. \*(C+ will .\" give a nicer C++. Capital omega is used to do unbreakable dashes and .\" therefore won't be available. \*(C` and \*(C' expand to `' in nroff, .\" nothing in troff, for use with C<>. .tr \(*W- .ds C+ C\v'-.1v'\h'-1p'\s-2+\h'-1p'+\s0\v'.1v'\h'-1p' .ie n \{\ . ds -- \(*W- . ds PI pi . if (\n(.H=4u)&(1m=24u) .ds -- \(*W\h'-12u'\(*W\h'-12u'-\" diablo 10 pitch . if (\n(.H=4u)&(1m=20u) .ds -- \(*W\h'-12u'\(*W\h'-8u'-\" diablo 12 pitch . ds L" "" . ds R" "" . ds C` "" . ds C' "" 'br\} .el\{\ . ds -- \|\(em\| . ds PI \(*p . ds L" `` . ds R" '' . ds C` . ds C' 'br\} .\" .\" Escape single quotes in literal strings from groff's Unicode transform. .ie \n(.g .ds Aq \(aq .el .ds Aq ' .\" .\" If the F register is >0, we'll generate index entries on stderr for .\" titles (.TH), headers (.SH), subsections (.SS), items (.Ip), and index .\" entries marked with X<> in POD. Of course, you'll have to process the .\" output yourself in some meaningful fashion. .\" .\" Avoid warning from groff about undefined register 'F'. .de IX .. .if !\nF .nr F 0 .if \nF>0 \{\ . de IX . tm Index:\\$1\t\\n%\t"\\$2" .. . if !\nF==2 \{\ . nr % 0 . nr F 2 . \} .\} .\" ======================================================================== .\" .IX Title "SREVIEW-TRANSCODE 1p" .TH SREVIEW-TRANSCODE 1p "2018-05-17" "perl v5.24.1" "User Contributed Perl Documentation" .\" For nroff, turn off justification. Always turn off hyphenation; it makes .\" way too many mistakes in technical documents. .if n .ad l .nh .SH "NAME" sreview\-transcode \- transcode the output of sreview\-cut into production\-quality media files .SH "SYNOPSIS" .IX Header "SYNOPSIS" sreview-transcode \s-1TALKID\s0 .SH "DESCRIPTION" .IX Header "DESCRIPTION" \&\f(CW\*(C`sreview\-transcode\*(C'\fR performs the following actions: .IP "\(bu" 4 Look up the talk with id \s-1TALKID\s0 in the database. .IP "\(bu" 4 Create the preroll slide from the preroll template, after applying template changes to it .IP "\(bu" 4 If a postroll template is defined, create the postroll slide using the same process as for the preroll slide. If no postroll template is defined, use the statically configured preroll .IP "\(bu" 4 If an apology template is defined and the current talk has an apology note that is not zero length and not \s-1NULL,\s0 create the apology slide for this talk .IP "\(bu" 4 Convert the preroll slide, postroll slide, and (if any) apology slide to a 5\-second video with the same properties as the main raw video .IP "\(bu" 4 For each of the configured profiles, do a two-pass transcode of the concatenated version of preroll, apology (if available), main, and postroll videos to a production video .SH "CONFIGURATION" .IX Header "CONFIGURATION" \&\f(CW\*(C`sreview\-transcode\*(C'\fR considers the following configuration values: .IP "dbistring" 4 .IX Item "dbistring" The \s-1DBI\s0 string used to connect to the database .IP "pubdir" 4 .IX Item "pubdir" The directory in which to find the output of \f(CW\*(C`sreview\-cut\*(C'\fR .IP "outputdir" 4 .IX Item "outputdir" The top-level directory in which to store production output data .IP "output_subdirs" 4 .IX Item "output_subdirs" Array of fields on which to base subdirectories to be created under \&\f(CW\*(C`outputdir\*(C'\fR. The fields can be one or more of: .RS 4 .IP "eventid" 4 .IX Item "eventid" The \s-1ID\s0 number of the event that this talk was recorded at .IP "event" 4 .IX Item "event" The name of the event that this talk was recorded at .IP "room" 4 .IX Item "room" The name of the room in which this talk was recorded .IP "date" 4 .IX Item "date" The date on which this talk occurred .IP "year" 4 .IX Item "year" The year in which this talk occurred .RE .RS 4 .RE .IP "workdir" 4 .IX Item "workdir" The location where any temporary files are stored. Defaults to \f(CW\*(C`/tmp\*(C'\fR, but can be overridden if necessary. These temporary files are removed when \f(CW\*(C`sreview\-transcode\*(C'\fR finishes. .IP "preroll_template" 4 .IX Item "preroll_template" The name of an \s-1SVG\s0 template to be used for the preroll (i.e., opening credits). Required. .IP "postroll_template" 4 .IX Item "postroll_template" The name of an \s-1SVG\s0 template to be used for the postroll (i.e., closing credits). Either this option or \f(CW\*(C`postroll\*(C'\fR is required. .IP "postroll" 4 .IX Item "postroll" The name of a \s-1PNG\s0 file to be used for the postroll (i.e., closing credits). Either this option or \f(CW\*(C`postroll_template\*(C'\fR is required. .IP "apology_template" 4 .IX Item "apology_template" The name of an \s-1SVG\s0 template to be used for the apology slide (shown right after the opening credits if an apology was entered). Only required if at least one talk has an apology entered. .IP "output_profiles" 4 .IX Item "output_profiles" An array of profile names to be produced (see above for the details). Defaults to \f(CW\*(C`webm\*(C'\fR. .SH "SVG TRANSFORMATIONS" .IX Header "SVG TRANSFORMATIONS" The transformation performed over the \s-1SVG\s0 files is a simple \f(CW\*(C`sed\*(C'\fR\-like replacement of input tags in the template file. All data is XML-escaped first, however. .PP The following tags can be set inside the \s-1SVG\s0 file: .ie n .IP "@SPEAKERS@" 4 .el .IP "\f(CW@SPEAKERS\fR@" 4 .IX Item "@SPEAKERS@" The names of the speakers, in this format: .RS 4 .Sp .RS 4 Firstname Lastname, Firstname Lastname and Firstname Lastname .RE .RE .RS 4 .RE .ie n .IP "@ROOM@" 4 .el .IP "\f(CW@ROOM\fR@" 4 .IX Item "@ROOM@" The name of the room where the talk was held. .ie n .IP "@TITLE@" 4 .el .IP "\f(CW@TITLE\fR@" 4 .IX Item "@TITLE@" The title of the talk. .ie n .IP "@SUBTITLE@" 4 .el .IP "\f(CW@SUBTITLE\fR@" 4 .IX Item "@SUBTITLE@" The subtitle of the talk. .ie n .IP "@DATE@" 4 .el .IP "\f(CW@DATE\fR@" 4 .IX Item "@DATE@" The date on which the talk was held. .ie n .IP "@APOLOGY@" 4 .el .IP "\f(CW@APOLOGY\fR@" 4 .IX Item "@APOLOGY@" The apology note defined for this talk. .PP If one of these fields has no data for the given talk, then the tag will be replaced by the empty string instead. .SH "SEE ALSO" .IX Header "SEE ALSO" sreview-cut, sreview-previews, sreview-skip, sreview-config, SReview::Video::ProfileFactory .SH "POD ERRORS" .IX Header "POD ERRORS" Hey! \fBThe above document had some coding errors, which are explained below:\fR .IP "Around line 83:" 4 .IX Item "Around line 83:" =back without =over