#
# nuvexportrc:
#
# This file contains the configuration for nuvexport, and should be
# installed as /etc/nuvexportrc. You can also copy this file to
# ~/.nuvexportrc, where nuvexport will look first, if you wish to create
# settings local to a specific user.
#
# I try to use this file to document all of the commandline options
# supported by nuvexport, but it is quite likely that a few slip through
# here and there unnoticed. Feel free to poke around in the code for
# add_arg() calls to see all of the available options.
#
#
# Anything placed within the <nuvexport> section will be interpreted as a
# global option. Use this section for options that don't relate
# specifically to any particular exporter.
#
<nuvexport>
#
# Set export_prog to ffmpeg, transcode or mencoder, depending on your
# preference of program for exports. This is equivalent to --ffmpeg,
# --transcode or --mencoder
#
# export_prog=ffmpeg
export_prog=transcode
#
# Any other parameters set in this file are equivalent to using the
# equivalent setting as a commandline option. For boolean options like
# --deinterlace (--nodeinterlace), use deinterlace=yes (or no, true or
# false) instead. Actual commandline options will override anything in
# this file.
#
#
# Preferred mode -- if you don't set this, nuvexport will ask you what you
# would like to do. Use --mode or any of the mode symlinks (like
# nuvexport-xvid) to override.
#
# mode=xvid
#
# Setting underscores to yes will convert whitespace in filenames to an
# underscore character (which some people seem to prefer)
#
underscores=no
#
# Setting require_cutlist to yes will tell nuvexport to show only those
# recordings that have a cutlist
#
# require_cutlist=no
#
# By default, nuvexport picks what it thinks is a good name for your file
# (doing its best to avoid printing "Untitled" into the filename).
# Setting name will let you change the output format of the filename
# generated by nuvexport. Even after this formatting, nuvexport will
# still do some basic replacements to make sure that illegal filename
# characters (eg. /\:*?<>|) are replaced with a dash (or " with a ').
# The following format variables are supported:
#
# %T -> Title (show name)
# %S -> Subtitle (episode name)
# %R -> Description
# %C -> Category
# %U -> RecGroup
# %hn -> Hostname of the machine where the file resides
# %c -> Channel: MythTV chanid
# %cn -> Channel: channum
# %cc -> Channel: callsign
# %cN -> Channel: channel name
# %y -> Recording start time: year, 2 digits
# %Y -> Recording start time: year, 4 digits
# %n -> Recording start time: month
# %m -> Recording start time: month, leading zero
# %j -> Recording start time: day of month
# %d -> Recording start time: day of month, leading zero
# %g -> Recording start time: 12-hour hour
# %G -> Recording start time: 24-hour hour
# %h -> Recording start time: 12-hour hour, with leading zero
# %H -> Recording start time: 24-hour hour, with leading zero
# %i -> Recording start time: minutes
# %s -> Recording start time: seconds
# %a -> Recording start time: am/pm
# %A -> Recording start time: AM/PM
# %ey -> Recording end time: year, 2 digits
# %eY -> Recording end time: year, 4 digits
# %en -> Recording end time: month
# %em -> Recording end time: month, leading zero
# %ej -> Recording end time: day of month
# %ed -> Recording end time: day of month, leading zero
# %eg -> Recording end time: 12-hour hour
# %eG -> Recording end time: 24-hour hour
# %eh -> Recording end time: 12-hour hour, with leading zero
# %eH -> Recording end time: 24-hour hour, with leading zero
# %ei -> Recording end time: minutes
# %es -> Recording end time: seconds
# %ea -> Recording end time: am/pm
# %eA -> Recording end time: AM/PM
# %py -> Program start time: year, 2 digits
# %pY -> Program start time: year, 4 digits
# %pn -> Program start time: month
# %pm -> Program start time: month, leading zero
# %pj -> Program start time: day of month
# %pd -> Program start time: day of month, leading zero
# %pg -> Program start time: 12-hour hour
# %pG -> Program start time: 24-hour hour
# %ph -> Program start time: 12-hour hour, with leading zero
# %pH -> Program start time: 24-hour hour, with leading zero
# %pi -> Program start time: minutes
# %ps -> Program start time: seconds
# %pa -> Program start time: am/pm
# %pA -> Program start time: AM/PM
# %pey -> Program end time: year, 2 digits
# %peY -> Program end time: year, 4 digits
# %pen -> Program end time: month
# %pem -> Program end time: month, leading zero
# %pej -> Program end time: day of month
# %ped -> Program end time: day of month, leading zero
# %peg -> Program end time: 12-hour hour
# %peG -> Program end time: 24-hour hour
# %peh -> Program end time: 12-hour hour, with leading zero
# %peH -> Program end time: 24-hour hour, with leading zero
# %pei -> Program end time: minutes
# %pes -> Program end time: seconds
# %pea -> Program end time: am/pm
# %peA -> Program end time: AM/PM
# %oy -> Original Airdate: year, 2 digits
# %oY -> Original Airdate: year, 4 digits
# %on -> Original Airdate: month
# %om -> Original Airdate: month, leading zero
# %oj -> Original Airdate: day of month
# %od -> Original Airdate: day of month, leading zero
# %f -> full path to the filename
# %% -> a literal % character
#
# filename=%T - %S
filename=%pY-%pm-%pd-%S
#
# By default, nuvexport uses an American-style date to represent showtimes
# in lists and filenames. Use --date to override that with the format of
# your choosing. See the UnixDate section `perldoc Date::Manip` for
# formatting options.
#
# date=%m/%d, %i:%M %p
#
# Nuvexport has the option to crop a percentage of the border of each
# recording in order to get rid of the unsightly edges of the tv signal.
# The default 1.5% approximates the overscan of an average TV, but you can
# alter this from 0 to 5% to fit your preferences. Please keep in mind
# that this amount is removed prior to making any aspect conversions like
# removing black bars from 4:3 recordings to make a 16:9 export.
#
crop_pct = 1.5
#
# Alternatively, you can override the general crop_pct to crop a different
# amount from specific sides of the recording.
#
# crop_top = 2
# crop_right = 2
# crop_bottom = 2
# crop_left = 2
#
# You can also override the output aspect ratio. This is useful in
# combination with crop_top=12.5 and crop_bottom=12.5 to remove the black
# bars from the top/bottom of recordings broadcast in fake widescreen.
#
# out_aspect = 16:9
#
#
# Export a matching .txt file, which mythvideo can use to import
# information about your exports, since it likely can't look them up in
# imdb.
#
# save_info = yes
#
# Include recordings from some special recgroups that wouldn't normally be
# available for export.
#
# show_deleted = yes
# show_livetv = yes
#
# Uncomment this setting to disable the encode's progress display. You
# should really only use this on the commandline for cron/user jobs where
# you don't want the progress updates to fill up a log or email.
#
# noprogress = yes
</nuvexport>
#
# The sections below work as above, with each more specific section
# overriding the more generic.
#
<generic>
#
# Default to export to the current directory
#
#path = .
#
# Use the cutlist (not to be confused with the commercial flag list) when
# exporting.
#
use_cutlist = yes
#
# Tell mythcommflag to generate a cutlist from the commercial flags before
# exporting. Don't forget to enable use_cutlist above, too.
#
# gencutlist = no
gencutlist = yes
#
# Contrary to popular belief, enabling multipass will not make your
# recordings look better. What it will do, however is guarantee that the
# bitrate you choose will be the average bitrate of your entire encode
# (meaning that your exports will end up being about the same size
# per-minute), and that you will receive the best overall quality for a
# files of the same size.
#
multipass = yes
#
# Disabling noise reduction can speed up your exports dramatically, but at the
# expense of some quality. For your convenience, this is also aliased on
# the commandline as --denoise (or --nodenoise), as well as
# --noise_reduction.
#
# noise_reduction = no
noise_reduction = yes
#
# Deinterlace the video so that it looks better on software players.
#
# deinterlace = yes
deinterlace = no
#
# Crop about 2% from the border of the recording before encoding. This is
# done to get rid of part of the broadcast signal that is usually
# obscured by the tv's overscan.
#
crop = yes
#
# You can create settings for each export module type. These are the
# second-most generic sections, and will only be reached if there are no
# matches in the full or generic module names.
#
# If you have a particularly dirty signal, you might want to try to disable
# fast_denoise (it's actually part of yuvdenoise, which both the ffmpeg
# and transcode exporters call). It can be almost twice as slow as the
# default "fast" normal noise reduction, but it considerably more
# effective. The latest version of yuvdenoise (which is called directly
# by the ffmpeg exporters) does not support this option, so it is ignored
# in that case.
#
fast_denoise = yes
#
# If nuvexport is having trouble detecting the *input* aspect ratio of your
# recordings (MythTV used to hard-code all software-encoded files as 1:1
# regardless of the true aspect), set this option to one of the
# following:
#
# force_aspect = [ 1:1 4:3 16:9 2.21:1 ]
</generic>
<ffmpeg>
#
# ffmpeg is almost twice as fast if you disable noise reduction
#
# noise_reduction = no
#
# By default, nuvexport's ffmpeg module lets ffmpeg handle deinterlacing.
# I've found that this provides the best results, but if you wish to let
# yuvdenoise do it instead, set deint_in_yuvdenoise to a true value.
#
# deint_in_yuvdenoise = no
#
</ffmpeg>
<transcode>
#
# Mythtranscode will always be used for nupplevideo recordings because
# transcode can't read them, but setting force_mythtranscode to yes will
# force nuvexport to call mythtranscode when using the transcode exporter
# for mpeg recordings, too. This may help problems that some people have
# been having with transcode not recognizing certain dvb recordings, as
# well as transcode not working properly on certain ivtv recordings.
#
force_mythtranscode = yes
#
# Setting both force_mythtranscode and mythtranscode_cutlist to yes will
# tell nuvexport to use mythtranscode's built-in cutlist functions,
# rather than having transcode use its own. I've found that the cutlists
# for a handful of ivtv recordings that do not work properly with
# transcode's internal cutlist handler.
#
mythtranscode_cutlist = yes
</transcode>
<mencoder>
</mencoder>
################################################################################
#
# You can also create settings for generic export module names. These will
# only be overridden by full module names.
#
<XviD>
vbr = yes # Enable vbr to get the multipass/quantisation options
# (enabling multipass or quantisation automatically enables vbr)
multipass = yes # You get either multipass or quantisation; multipass will override
quantisation = 6 # 4 through 6 is probably right... 1..31 are allowed (lower is better quality)
a_bitrate = 128 # Audio bitrate of 128 kbps
v_bitrate = 768 # Remember, quantisation overrides video bitrate
width = 512 # Height adjusts automatically to width, according to aspect ratio
height = auto
</XviD>
#
# The mp3 bitrate used by MythTV's software encoder is 128, so there is no
# real need to go any higher in exports. You can, of course, turn this
# up if you get your recordings from other sources.
#
<MP3>
bitrate = 128
</MP3>
################################################################################
#
# If you want to provide settings for a very specific export module, you can
# use its full name, and it will override any more generic settings.
#
#
# The MP4 encoder for ffmpeg has a few options unique to itself
#
<ffmpeg::MP4>
#
# Codec to use (mpeg4 or h264). Please note that h264 support requires the
# SVN version of ffmpeg (not CVS!). In fact, even the mpeg4 codec works
# better with the SVN version.
#
# Note: The h.264 files exported by nuvexport seem to play fine on
# ipods, but lack the atom necessary to be recognized by iTunes, so you
# will have to find other means to get the exports onto your ipod (gtkpod
# works great).
#
mp4_codec = h264
#
# Framerate to use: auto, 25, 23.97, 29.97. PAL will always be 25 fps,
# and auto will set 29.97 for everything over 320x288 and 23.97 for the
# rest.
#
mp4_fps = auto
#
# Enable ipod compatibility mode. Aside from forcing a max resolution of
# 640x480, this basically just sets motion detection reference frames
# (-refs) to 2 instead of 7 (the ipod can only handle 2), and thus a
# small drop in motion detection quality.
#
ipod = yes
</ffmpeg::MP4>
#
# As does the PSP exporter
#
<ffmpeg::PSP>
# PSP framerate (high=29.97, low=14.985)
psp_fps = low
# PSP resolution (320x240, 368x208 or 400x192)
psp_resolution = 320x240
# PSP video bitrate (high=768, low=384)
psp_bitrate = high
# Create a thumbnail to go with the PSP video export?
psp_thumbnail = yes
</ffmpeg::PSP>
#
# You can also add flags to the one and only mencoder option
#
<mencoder::XviD>
multipass = no
</mencoder::XviD>
################################################################################
#
# You can also make specific profiles called with the --profile parameter
# that will override other config options (but not commandline
# arguments).
#
# For example, you could make a profile that would encode your favorite
# show with your favorite settings.
#
<profile::sample>
title = test
export_prog = transcode
mode = xvid
confirm = true
</profile::sample>
#
# Or crop the black bars off of the top/bottom of fake widescreen shows.
#
<profile::samplewide>
title = test
export_prog = ffmpeg
mode = mp4
out_aspect = 16:9
crop_pct = 0
crop_top = 12.5
crop_bottom = 12.5
width = 528
height = 360
</profile::samplewide>