10 #include <QNetworkInterface>
16 gc->
setLabel(QObject::tr(
"IPv4 address"));
17 QList<QHostAddress> list = QNetworkInterface::allAddresses();
18 QList<QHostAddress>::iterator it;
19 for (it = list.begin(); it != list.end(); ++it)
21 if ((*it).protocol() == QAbstractSocket::IPv4Protocol)
26 gc->
setHelpText(QObject::tr(
"Enter the IP address of this machine. "
27 "Use an externally accessible address (ie, not "
28 "127.0.0.1) if you are going to be running a frontend "
29 "on a different machine than this one. Note, in IPv6 "
30 "setups, this is still required for certain extras "
38 gc->
setLabel(QObject::tr(
"IPv6 address"));
39 QList<QHostAddress> list = QNetworkInterface::allAddresses();
40 QList<QHostAddress>::iterator it;
41 for (it = list.begin(); it != list.end(); ++it)
43 if ((*it).protocol() == QAbstractSocket::IPv6Protocol)
47 #if defined(QT_NO_IPV6)
56 else if (list.contains(QHostAddress(
"::1")))
60 gc->
setHelpText(QObject::tr(
"Enter the IPv6 address of this machine. "
61 "Use an externally accessible address (ie, not "
62 "::1) if you are going to be running a frontend "
63 "on a different machine than this one."));
70 hc->
setLabel(QObject::tr(
"Listen on Link-Local addresses"));
72 hc->
setHelpText(QObject::tr(
"Enable servers on this machine to listen on "
73 "link-local addresses. These are auto-configured "
74 "addresses and not accessible outside the local network. "
75 "This must be enabled for anything requiring Bonjour to "
85 gc->
setHelpText(QObject::tr(
"Unless you've got good reason, don't "
93 gc->
setLabel(QObject::tr(
"Status port"));
95 gc->
setHelpText(QObject::tr(
"Port on which the server will listen for "
96 "HTTP requests, including backend status and MythXML "
104 gc->
setLabel(QObject::tr(
"IP address"));
106 gc->
setHelpText(QObject::tr(
"The IP address of the master backend "
107 "server. All frontend and non-master backend machines "
108 "will connect to this server. If you only have one "
109 "backend, this should be the same IP address as "
119 gc->
setHelpText(QObject::tr(
"Unless you've got good reason, "
120 "don't change this."));
127 gc->
setLabel(QObject::tr(
"Security PIN (required)"));
129 gc->
setHelpText(QObject::tr(
"PIN code required for a frontend to connect "
130 "to the backend. Blank prevents all "
131 "connections; 0000 allows any client to "
139 gc->
setLabel(QObject::tr(
"TV format"));
142 for (
int i = 0; i < list.size(); i++)
145 gc->
setHelpText(QObject::tr(
"The TV standard to use for viewing TV."));
152 gc->
setLabel(QObject::tr(
"VBI format"));
156 gc->
setHelpText(QObject::tr(
"The VBI (Vertical Blanking Interval) is "
157 "used to carry Teletext or Closed Captioning "
165 gc->
setLabel(QObject::tr(
"Channel frequency table"));
170 gc->
setHelpText(QObject::tr(
"Select the appropriate frequency table for "
171 "your system. If you have an antenna, use a \"-bcast\" "
179 gc->
setLabel(QObject::tr(
"Save original files after transcoding (globally)"));
181 gc->
setHelpText(QObject::tr(
"If enabled and the transcoder is active, the "
182 "original files will be renamed to .old once the "
183 "transcoding is complete."));
190 hc->
setLabel(QObject::tr(
"Delete files slowly"));
192 hc->
setHelpText(QObject::tr(
"Some filesystems use a lot of resources when "
193 "deleting large files. If enabled, this option makes "
194 "MythTV delete files slowly on this backend to lessen the "
202 gc->
setLabel(QObject::tr(
"Follow symbolic links when deleting files"));
204 gc->
setHelpText(QObject::tr(
"If enabled, MythTV will follow symlinks "
205 "when recordings and related files are deleted, instead "
206 "of deleting the symlink and leaving the actual file."));
213 "HDRingbufferSize", 25*188, 512*188, 25*188);
214 bs->
setLabel(QObject::tr(
"HD ringbuffer size (kB)"));
215 bs->
setHelpText(QObject::tr(
"The HD device ringbuffer allows the "
216 "backend to weather moments of stress. "
217 "The larger the ringbuffer (in kilobytes), the longer "
218 "the moments of stress can be. However, "
219 "setting the size too large can cause "
220 "swapping, which is detrimental."));
228 gc->
setLabel(QObject::tr(
"Storage Group disk scheduler"));
229 gc->
addSelection(QObject::tr(
"Balanced free space"),
"BalancedFreeSpace");
230 gc->
addSelection(QObject::tr(
"Balanced percent free space"),
"BalancedPercFreeSpace");
231 gc->
addSelection(QObject::tr(
"Balanced disk I/O"),
"BalancedDiskIO");
232 gc->
addSelection(QObject::tr(
"Combination"),
"Combination");
234 gc->
setHelpText(QObject::tr(
"This setting controls how the Storage Group "
235 "scheduling code will balance new recordings across "
236 "directories. 'Balanced Free Space' is the recommended "
237 "method for most users." ));
244 gc->
setLabel(QObject::tr(
"Disable automatic database backup"));
246 gc->
setHelpText(QObject::tr(
"If enabled, MythTV will not backup the "
247 "database before upgrades. You should "
248 "therefore have your own database backup "
249 "strategy in place."));
256 hc->
setLabel(QObject::tr(
"Disable FireWire reset"));
259 "By default, MythTV resets the FireWire bus when a "
260 "FireWire recorder stops responding to commands. If "
261 "this causes problems, you can disable this behavior "
270 he->
setLabel(QObject::tr(
"Miscellaneous status application"));
272 he->
setHelpText(QObject::tr(
"External application or script that outputs "
273 "extra information for inclusion in the "
274 "backend status page. See http://www.mythtv."
275 "org/wiki/Miscellaneous_Status_Information"));
282 gc->
setLabel(QObject::tr(
"EIT transport timeout (mins)"));
284 QString helpText = QObject::tr(
285 "Maximum time to spend waiting (in minutes) for listings data "
286 "on one digital TV channel before checking for new listings data "
287 "on the next channel.");
295 gc->
setLabel(QObject::tr(
"Master backend override"));
297 gc->
setHelpText(QObject::tr(
"If enabled, the master backend will stream and"
298 " delete files if it finds them in a storage directory. "
299 "Useful if you are using a central storage location, like "
300 "a NFS share, and your slave backend isn't running."));
307 gc->
setLabel(QObject::tr(
"Backend idle before EIT crawl (secs)"));
309 QString
help = QObject::tr(
310 "The minimum number of seconds after a recorder becomes idle "
311 "to wait before MythTV begins collecting EIT listings data.");
319 gc->
setLabel(QObject::tr(
"Delay between wake attempts (secs)"));
321 gc->
setHelpText(QObject::tr(
"Length of time the frontend waits between "
322 "tries to wake up the master backend. This should be the "
323 "time your master backend needs to startup. Set to 0 to "
331 gc->
setLabel(QObject::tr(
"Wake attempts"));
332 gc->
setHelpText(QObject::tr(
"Number of times the frontend will try to wake "
333 "up the master backend."));
341 gc->
setLabel(QObject::tr(
"Wake command"));
343 gc->
setHelpText(QObject::tr(
"The command used to wake up your master "
344 "backend server (e.g. sudo /etc/init.d/mythtv-backend restart)."));
351 gc->
setLabel(QObject::tr(
"Sleep command"));
353 gc->
setHelpText(QObject::tr(
"The command used to put this slave to sleep. "
354 "If set, the master backend will use this command to put "
355 "this slave to sleep when it is not needed for recording."));
362 gc->
setLabel(QObject::tr(
"Wake command"));
364 gc->
setHelpText(QObject::tr(
"The command used to wake up this slave "
365 "from sleep. This setting is not used on the master "
373 gc->
setLabel(QObject::tr(
"Backend stop command"));
374 gc->
setValue(
"killall mythbackend");
375 gc->
setHelpText(QObject::tr(
"The command used to stop the backend"
376 " when running on the master backend server "
377 "(e.g. sudo /etc/init.d/mythtv-backend stop)"));
384 gc->
setLabel(QObject::tr(
"Backend start command"));
386 gc->
setHelpText(QObject::tr(
"The command used to start the backend"
387 " when running on the master backend server "
388 "(e.g. sudo /etc/init.d/mythtv-backend start)."));
395 gc->
setLabel(QObject::tr(
"Idle shutdown timeout (secs)"));
397 gc->
setHelpText(QObject::tr(
"The number of seconds the master backend "
398 "idles before it shuts down all other backends. Set to 0 to "
399 "disable automatic shutdown."));
406 gc->
setLabel(QObject::tr(
"Maximum wait for recording (mins)"));
408 gc->
setHelpText(QObject::tr(
"The number of minutes the master backend "
409 "waits for a recording. If the backend is idle but a "
410 "recording starts within this time period, it won't "
418 gc->
setLabel(QObject::tr(
"Startup before recording (secs)"));
420 gc->
setHelpText(QObject::tr(
"The number of seconds the master backend "
421 "will be woken up before a recording starts."));
428 gc->
setLabel(QObject::tr(
"Wakeup time format"));
430 gc->
setHelpText(QObject::tr(
"The format of the time string passed to the "
431 "'Command to set wakeup time' as $time. See "
432 "QT::QDateTime.toString() for details. Set to 'time_t' for "
433 "seconds since epoch."));
440 gc->
setLabel(QObject::tr(
"Command to set wakeup time"));
442 gc->
setHelpText(QObject::tr(
"The command used to set the wakeup time "
443 "(passed as $time) for the Master Backend"));
450 gc->
setLabel(QObject::tr(
"Server halt command"));
452 gc->
setHelpText(QObject::tr(
"The command used to halt the backends."));
459 gc->
setLabel(QObject::tr(
"Pre-shutdown-check command"));
461 gc->
setHelpText(QObject::tr(
"A command executed before the backend would "
462 "shutdown. The return value determines if "
463 "the backend can shutdown. 0 - yes, "
464 "1 - restart idling, "
465 "2 - reset the backend to wait for a frontend."));
472 gc->
setLabel(QObject::tr(
"Block shutdown before client connected"));
474 gc->
setHelpText(QObject::tr(
"If enabled, the automatic shutdown routine will "
475 "be disabled until a client connects."));
482 gc->
setLabel(QObject::tr(
"Startup command"));
484 gc->
setHelpText(QObject::tr(
"This command is executed right after starting "
485 "the BE. As a parameter '$status' is replaced by either "
486 "'auto' if the machine was started automatically or "
487 "'user' if a user switched it on."));
494 gc->
setLabel(QObject::tr(
"Maximum simultaneous jobs on this backend"));
495 gc->
setHelpText(QObject::tr(
"The Job Queue will be limited to running "
496 "this many simultaneous jobs on this backend."));
504 gc->
setLabel(QObject::tr(
"Job Queue check frequency (secs)"));
505 gc->
setHelpText(QObject::tr(
"When looking for new jobs to process, the "
506 "Job Queue will wait this many seconds between checks."));
514 gc->
setLabel(QObject::tr(
"CPU usage"));
518 gc->
setHelpText(QObject::tr(
"This setting controls approximately how "
519 "much CPU jobs in the queue may consume. "
520 "On 'High', all available CPU time may be used, "
521 "which could cause problems on slower systems." ));
528 gc->
setLabel(QObject::tr(
"Job Queue start time"));
529 gc->
setHelpText(QObject::tr(
"This setting controls the start of the "
530 "Job Queue time window, which determines when new jobs "
531 "will be started."));
538 gc->
setLabel(QObject::tr(
"Job Queue end time"));
539 gc->
setHelpText(QObject::tr(
"This setting controls the end of the "
540 "Job Queue time window, which determines when new jobs "
541 "will be started."));
548 gc->
setLabel(QObject::tr(
"Run jobs only on original recording backend"));
550 gc->
setHelpText(QObject::tr(
"If enabled, jobs in the queue will be required "
551 "to run on the backend that made the "
552 "original recording."));
559 gc->
setLabel(QObject::tr(
"Run transcode jobs before auto commercial "
562 gc->
setHelpText(QObject::tr(
"If enabled, and if both auto-transcode and "
563 "commercial detection are turned ON for a "
564 "recording, transcoding will run first; "
565 "otherwise, commercial detection runs first."));
572 gc->
setLabel(QObject::tr(
"Start auto-commercial-detection jobs when the "
573 "recording starts"));
575 gc->
setHelpText(QObject::tr(
"If enabled, and Auto Commercial Detection is "
576 "ON for a recording, the flagging job will be "
577 "started as soon as the recording starts. NOT "
578 "recommended on underpowered systems."));
585 gc->
setLabel(QObject::tr(
"User Job #%1 command").arg(job_num));
587 gc->
setHelpText(QObject::tr(
"The command to run whenever this User Job "
588 "number is scheduled."));
596 gc->
setLabel(QObject::tr(
"User Job #%1 description").arg(job_num));
597 gc->
setValue(QObject::tr(
"User Job #%1").arg(job_num));
598 gc->
setHelpText(QObject::tr(
"The description for this User Job."));
605 gc->
setLabel(QObject::tr(
"Allow metadata lookup jobs"));
607 gc->
setHelpText(QObject::tr(
"If enabled, allow jobs of this type to "
608 "run on this backend."));
615 gc->
setLabel(QObject::tr(
"Allow commercial-detection jobs"));
617 gc->
setHelpText(QObject::tr(
"If enabled, allow jobs of this type to "
618 "run on this backend."));
625 gc->
setLabel(QObject::tr(
"Allow transcoding jobs"));
627 gc->
setHelpText(QObject::tr(
"If enabled, allow jobs of this type to "
628 "run on this backend."));
635 gc->
setLabel(QObject::tr(
"Transcoder command"));
637 gc->
setHelpText(QObject::tr(
"The program used to transcode recordings. "
638 "The default is 'mythtranscode' if this setting is empty."));
645 gc->
setLabel(QObject::tr(
"Commercial-detection command"));
647 gc->
setHelpText(QObject::tr(
"The program used to detect commercials in a "
648 "recording. The default is 'mythcommflag' "
649 "if this setting is empty."));
655 QString dbStr = QString(
"JobAllowUserJob%1").arg(job_num);
657 QString label = QObject::tr(
"Allow %1 jobs").arg(desc);
669 bc->
setHelpText(QObject::tr(
"If enabled, allow jobs of this type to "
670 "run on this backend."));
678 gc->
setLabel(QObject::tr(
"Include recordings in video list"));
680 gc->
setHelpText(QObject::tr(
"If enabled, the master backend will include"
681 " the list of recorded shows in the list of videos. "
682 " This is mainly to accommodate UPnP players which do not"
683 " allow more than 1 video section." ));
691 gc->
setLabel(QObject::tr(
"Video content to show a WMP client"));
695 gc->
setHelpText(QObject::tr(
"Which tree to show a Windows Media Player "
696 "client when it requests a list of videos."));
703 bc->
setLabel(QObject::tr(
"Automatically update program listings"));
705 bc->
setHelpText(QObject::tr(
"If enabled, the guide data program "
706 "will be run automatically."));
713 bs->
setLabel(QObject::tr(
"Guide data program execution start"));
715 bs->
setHelpText(QObject::tr(
"This setting and the following one define a "
716 "time period when the guide data program is allowed "
717 "to run. For example, setting start to 11 and "
718 "end to 13 would mean that the program would only "
719 "run between 11:00 AM and 1:59 PM."));
726 bs->
setLabel(QObject::tr(
"Guide data program execution end"));
728 bs->
setHelpText(QObject::tr(
"This setting and the preceding one define a "
729 "time period when the guide data program is allowed "
730 "to run. For example, setting start to 11 and "
731 "end to 13 would mean that the program would only "
732 "run between 11:00 AM and 1:59 PM."));
739 bc->
setLabel(QObject::tr(
"Run guide data program at time suggested by the "
742 bc->
setHelpText(QObject::tr(
"If enabled, allow a DataDirect guide data "
743 "provider to specify the next download time in order "
744 "to distribute load on their servers. Guide data program "
745 "execution start/end times are also ignored."));
752 be->
setLabel(QObject::tr(
"Guide data program"));
755 "Use 'mythfilldatabase' or the name of a custom "
756 "script that will populate the program guide info "
757 "for all your video sources."));
764 be->
setLabel(QObject::tr(
"Guide data arguments"));
766 be->
setHelpText(QObject::tr(
"Any arguments you want passed to the "
767 "guide data program."));
777 setLabel(QObject::tr(
"Program Schedule Downloading Options"));
799 server->
setLabel(QObject::tr(
"Host Address Backend Setup"));
801 localServer->
setLabel(QObject::tr(
"Local Backend") +
" (" +
825 masterServer->
setLabel(QObject::tr(
"Master Backend"));
836 locale->
setLabel(QObject::tr(
"Locale Settings"));
843 group2->
setLabel(QObject::tr(
"Miscellaneous Settings"));
846 fm->
setLabel(QObject::tr(
"File Management Settings"));
857 upnp->
setLabel(QObject::tr(
"UPnP Server Settings"));
867 group2a1->
setLabel(QObject::tr(
"EIT Scanner Options"));
873 group3->
setLabel(QObject::tr(
"Shutdown/Wakeup Options"));
886 group4->
setLabel(QObject::tr(
"Backend Wakeup settings"));
889 backend->
setLabel(QObject::tr(
"Master Backend"));
896 slaveBackend->
setLabel(QObject::tr(
"Slave Backends"));
903 backendControl->
setLabel(QObject::tr(
"Backend Control"));
909 group5->
setLabel(QObject::tr(
"Job Queue (Backend-Specific)"));
936 group6->
setLabel(QObject::tr(
"Job Queue (Global)"));
946 group7->
setLabel(QObject::tr(
"Job Queue (Job Commands)"));