-
Notifications
You must be signed in to change notification settings - Fork 3
/
nuvexportrc
445 lines (374 loc) · 14.2 KB
/
nuvexportrc
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
#
# 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 or mencoder, depending on your
# preference of program for exports. This is equivalent to --ffmpeg or
# --mencoder
#
export_prog=ffmpeg
#
# 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
#
# 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 mythutil to generate a cutlist from the commercial flags before
# exporting. Don't forget to enable use_cutlist above, too.
#
# gencutlist = no
#
# 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
#
# Deinterlace the video so that it looks better on software players.
#
deinterlace = yes
#
# 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 the ffmpeg
# 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>
<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.
#
<ffmpeg::H264>
x264_profile = high # x264 profile: baseline, main, high, high10, high422, high444
x264_preset = slower # x264 preset: ultrafast, superfast, veryfast, faster, fast, medium, slow, slower, veryslow, placebo
x264_tune = default # x264 tuning: film, animation, grain, stillimage, psnr, ssim, fastdecode, zerolatency
</ffmpeg::H264>
#
# The MP4 encoder for ffmpeg has a few options unique to itself
#
<ffmpeg::MP4>
#
# 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 mencoder option
#
<mencoder::XviD>
multipass = no
</mencoder::XviD>
<mencoder::H264MP3>
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
</mencoder::H264MP3>
################################################################################
#
# 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 = ffmpeg
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>