MythTV
master
|
This is the coordinating class of the Recorder Subsystem. More...
#include <libmythtv/tv_rec.h>
Public Member Functions | |
TVRec (int _inputid) | |
Performs instance initialization not requiring access to database. More... | |
~TVRec (void) override | |
Stops the event and scanning threads and deletes any ChannelBase, RingBuffer, and RecorderBase instances. More... | |
bool | Init (void) |
Performs instance initialization, returns true on success. More... | |
void | RecordPending (const ProgramInfo *rcinfo, std::chrono::seconds secsleft, bool hasLater) |
Tells TVRec "rcinfo" is the next pending recording. More... | |
RecStatus::Type | StartRecording (ProgramInfo *pginfo) |
Tells TVRec to Start recording the program "rcinfo" as soon as possible. More... | |
RecStatus::Type | GetRecordingStatus (void) const |
void | StopRecording (bool killFile=false) |
Changes from a recording state to kState_None. More... | |
void | FinishRecording (void) |
Tells TVRec to finish the current recording as soon as possible. More... | |
void | FrontendReady (void) |
Tells TVRec that the frontend's TV class is ready for messages. More... | |
void | CancelNextRecording (bool cancel) |
Tells TVRec to cancel the upcoming recording. More... | |
ProgramInfo * | GetRecording (void) |
Allocates and returns a ProgramInfo for the current recording. More... | |
bool | IsRunning (void) const |
Returns true if event loop has not been told to shut down. More... | |
void | Stop (void) |
Tells TVRec to stop event loop. More... | |
TVState | GetState (void) const |
Returns the TVState of the recorder. More... | |
bool | IsPlaying (void) |
Returns "state == kState_RecordingPreRecorded". More... | |
bool | IsRecording (void) |
Returns "state == kState_RecordingRecordedOnly". More... | |
bool | SetVideoFiltersForChannel (uint sourceid, const QString &channum) |
bool | IsBusy (InputInfo *busy_input=nullptr, std::chrono::seconds time_buffer=5s) const |
Returns true if the recorder is busy, or will be within the next time_buffer seconds. More... | |
bool | IsReallyRecording (void) |
Returns true if frontend can consider the recorder started. More... | |
float | GetFramerate (void) |
Returns recordering frame rate from the recorder. More... | |
long long | GetFramesWritten (void) |
Returns number of frames written to disk by recorder. More... | |
long long | GetFilePosition (void) |
Returns total number of bytes written by RingBuffer. More... | |
long long | GetMaxBitrate (void) const |
Returns the maximum bits per second this recorder can produce. More... | |
int64_t | GetKeyframePosition (uint64_t desired) const |
Returns byte position in RingBuffer of a keyframe according to recorder. More... | |
bool | GetKeyframePositions (int64_t start, int64_t end, frm_pos_map_t &map) const |
Returns byte position in RingBuffer of a keyframes according to recorder. More... | |
bool | GetKeyframeDurations (int64_t start, int64_t end, frm_pos_map_t &map) const |
void | SpawnLiveTV (LiveTVChain *newchain, bool pip, QString startchan) |
Tells TVRec to spawn a "Live TV" recorder. More... | |
QString | GetChainID (void) |
Get the chainid of the livetv instance. More... | |
void | StopLiveTV (void) |
Tells TVRec to stop a "Live TV" recorder. More... | |
void | PauseRecorder (void) |
Tells "recorder" to pause, used for channel and input changes. More... | |
void | ToggleChannelFavorite (const QString &changroupname) |
Toggles whether the current channel should be on our favorites list. More... | |
void | SetLiveRecording (int recording) |
Tells the Scheduler about changes to the recording status of the LiveTV recording. More... | |
QString | GetInput (void) const |
Returns current input. More... | |
uint | GetSourceID (void) const |
Returns current source id. More... | |
QString | SetInput (QString input) |
Changes to the specified input. More... | |
void | ChangeChannel (ChannelChangeDirection dir) |
Changes to a channel in the 'dir' channel change direction. More... | |
void | SetChannel (const QString &name, uint requestType=kFlagDetect) |
Changes to a named channel on the current tuner. More... | |
bool | QueueEITChannelChange (const QString &name) |
Queues up a channel change for the EITScanner. More... | |
std::chrono::milliseconds | SetSignalMonitoringRate (std::chrono::milliseconds rate, int notifyFrontend=1) |
Sets the signal monitoring rate. More... | |
int | GetPictureAttribute (PictureAttribute attr) |
int | ChangePictureAttribute (PictureAdjustType type, PictureAttribute attr, bool direction) |
Returns current value [0,100] if it succeeds, -1 otherwise. More... | |
bool | CheckChannel (const QString &name) const |
Checks if named channel exists on current tuner. More... | |
bool | ShouldSwitchToAnotherInput (const QString &chanid) const |
Checks if named channel exists on current tuner, or another tuner. More... | |
bool | CheckChannelPrefix (const QString &prefix, uint &complete_valid_channel_on_rec, bool &is_extra_char_useful, QString &needed_spacer) const |
Checks a prefix against the channels in the DB. More... | |
void | GetNextProgram (BrowseDirection direction, QString &title, QString &subtitle, QString &desc, QString &category, QString &starttime, QString &endtime, QString &callsign, QString &iconpath, QString &channum, uint &chanid, QString &seriesid, QString &programid) |
bool | GetChannelInfo (uint &chanid, uint &sourceid, QString &callsign, QString &channum, QString &channame, QString &xmltvid) const |
bool | SetChannelInfo (uint chanid, uint sourceid, const QString &oldchannum, const QString &callsign, const QString &channum, const QString &channame, const QString &xmltvid) |
uint | GetInputId (void) const |
Returns the inputid. More... | |
uint | GetParentId (void) const |
uint | GetMajorId (void) |
bool | IsErrored (void) const |
Returns true is "errored" is true, false otherwise. More... | |
void | RingBufferChanged (MythMediaBuffer *Buffer, RecordingInfo *pginfo, RecordingQuality *recq) |
void | RecorderPaused (void) |
This is a callback, called by the "recorder" instance when it has actually paused. More... | |
void | SetNextLiveTVDir (QString dir) |
uint | GetFlags (void) const |
void | AllGood (void) override |
Signal to be sent when you have a lock on all values. More... | |
void | StatusChannelTuned (const SignalMonitorValue &) override |
Signal to be sent with change change status. More... | |
void | StatusSignalLock (const SignalMonitorValue &) override |
Signal to be sent as true when it is safe to begin or continue recording, and false if it may not be safe. More... | |
void | StatusSignalStrength (const SignalMonitorValue &) override |
Signal to be sent with an actual signal value. More... | |
void | EnableActiveScan (bool enable) |
Static Public Member Functions | |
static TVRec * | GetTVRec (uint inputid) |
Static Public Attributes | |
static QReadWriteLock | s_inputsLock |
static QMap< uint, TVRec * > | s_inputs |
static constexpr std::chrono::milliseconds | kSignalMonitoringRate { 50ms } |
How many milliseconds the signal monitor should wait between checks. More... | |
static const uint | kFlagFrontendReady = 0x00000001 |
static const uint | kFlagRunMainLoop = 0x00000002 |
static const uint | kFlagExitPlayer = 0x00000004 |
static const uint | kFlagFinishRecording = 0x00000008 |
static const uint | kFlagErrored = 0x00000010 |
static const uint | kFlagCancelNextRecording = 0x00000020 |
static const uint | kFlagLiveTV = 0x00000100 |
final result desired is LiveTV recording More... | |
static const uint | kFlagRecording = 0x00000200 |
final result desired is a timed recording More... | |
static const uint | kFlagAntennaAdjust = 0x00000400 |
antenna adjusting mode (LiveTV without recording). More... | |
static const uint | kFlagRec = 0x00000F00 |
static const uint | kFlagEITScan = 0x00001000 |
final result desired is an EIT Scan More... | |
static const uint | kFlagCloseRec = 0x00002000 |
close recorder, keep recording More... | |
static const uint | kFlagKillRec = 0x00004000 |
close recorder, discard recording More... | |
static const uint | kFlagNoRec = 0x0000F000 |
static const uint | kFlagKillRingBuffer = 0x00010000 |
static const uint | kFlagWaitingForRecPause = 0x00100000 |
static const uint | kFlagWaitingForSignal = 0x00200000 |
static const uint | kFlagNeedToStartRecorder = 0x00800000 |
static const uint | kFlagPendingActions = 0x00F00000 |
static const uint | kFlagSignalMonitorRunning = 0x01000000 |
static const uint | kFlagEITScannerRunning = 0x04000000 |
static const uint | kFlagDummyRecorderRunning = 0x10000000 |
static const uint | kFlagRecorderRunning = 0x20000000 |
static const uint | kFlagAnyRecRunning = 0x30000000 |
static const uint | kFlagAnyRunning = 0x3F000000 |
static const uint | kFlagRingBufferReady = 0x40000000 |
static const uint | kFlagDetect = 0x80000000 |
Protected Member Functions | |
void | run (void) override |
Event handling method, contains event loop. More... | |
bool | WaitForEventThreadSleep (bool wake=true, std::chrono::milliseconds time=std::chrono::milliseconds::max()) |
Protected Member Functions inherited from SignalMonitorListener | |
virtual | ~SignalMonitorListener ()=default |
Private Types | |
enum | AutoRunInitType { kAutoRunProfile, kAutoRunNone } |
Private Member Functions | |
void | SetRingBuffer (MythMediaBuffer *Buffer) |
Sets "ringBuffer", deleting any existing RingBuffer. More... | |
void | SetPseudoLiveTVRecording (RecordingInfo *pi) |
Sets the pseudo LiveTV RecordingInfo. More... | |
void | TeardownAll (void) |
void | WakeEventLoop (void) |
void | TeardownRecorder (uint request_flags) |
Tears down the recorder. More... | |
DTVRecorder * | GetDTVRecorder (void) |
bool | CreateChannel (const QString &startchannel, bool enter_power_save_mode) |
void | CloseChannel (void) |
DTVChannel * | GetDTVChannel (void) |
V4LChannel * | GetV4LChannel (void) |
bool | SetupSignalMonitor (bool tablemon, bool EITscan, bool notify) |
This creates a SignalMonitor instance and begins signal monitoring. More... | |
bool | SetupDTVSignalMonitor (bool EITscan) |
Tells DTVSignalMonitor what channel to look for. More... | |
void | TeardownSignalMonitor (void) |
If a SignalMonitor instance exists, the monitoring thread is stopped and the instance is deleted. More... | |
DTVSignalMonitor * | GetDTVSignalMonitor (void) |
bool | HasFlags (uint f) const |
void | SetFlags (uint f, const QString &file, int line) |
void | ClearFlags (uint f, const QString &file, int line) |
void | HandleTuning (void) |
Handles all tuning events. More... | |
void | TuningShutdowns (const TuningRequest &request) |
This shuts down anything that needs to be shut down before handling the passed in tuning request. More... | |
void | TuningFrequency (const TuningRequest &request) |
Performs initial tuning required for any tuning event. More... | |
MPEGStreamData * | TuningSignalCheck (void) |
This checks if we have a channel lock. More... | |
void | TuningNewRecorder (MPEGStreamData *streamData) |
Creates a recorder instance. More... | |
void | TuningRestartRecorder (void) |
Restarts a stopped recorder or unpauses a paused recorder. More... | |
QString | TuningGetChanNum (const TuningRequest &request, QString &input) const |
bool | TuningOnSameMultiplex (TuningRequest &request) |
void | HandleStateChange (void) |
Changes the internalState to the desiredNextState if possible. More... | |
void | ChangeState (TVState nextState) |
Puts a state change on the nextState queue. More... | |
TVState | RemovePlaying (TVState state) const |
Returns TVState that would remove the playing, but potentially keep recording if we are watching an in progress recording. More... | |
TVState | RemoveRecording (TVState state) const |
If "state" is kState_RecordingOnly or kState_WatchingLiveTV, returns a kState_None, otherwise returns kState_Error. More... | |
void | HandlePendingRecordings (void) |
bool | WaitForNextLiveTVDir (void) |
bool | GetProgramRingBufferForLiveTV (RecordingInfo **pginfo, MythMediaBuffer **Buffer, const QString &channum) |
bool | CreateLiveTVRingBuffer (const QString &channum) |
bool | SwitchLiveTVRingBuffer (const QString &channum, bool discont, bool set_rec) |
RecordingInfo * | SwitchRecordingRingBuffer (const RecordingInfo &rcinfo) |
void | StartedRecording (RecordingInfo *curRec) |
Inserts a "curRec" into the database. More... | |
void | FinishedRecording (RecordingInfo *curRec, RecordingQuality *recq) |
If not a premature stop, adds program to history of recorded programs. More... | |
QDateTime | GetRecordEndTime (const ProgramInfo *pi) const |
Returns recording end time with proper post-roll. More... | |
void | CheckForRecGroupChange (void) |
Check if frontend changed the recording group. More... | |
void | NotifySchedulerOfRecording (RecordingInfo *rec) |
Tell scheduler about the recording. More... | |
void | InitAutoRunJobs (RecordingInfo *rec, AutoRunInitType t, RecordingProfile *recpro, int line) |
void | SetRecordingStatus (RecStatus::Type new_status, int line, bool have_lock=false) |
QString | LoadProfile (void *tvchain, RecordingInfo *rec, RecordingProfile &profile) const |
Static Private Member Functions | |
static bool | GetDevices (uint inputid, uint &parentid, GeneralDBOptions &gen_opts, DVBDBOptions &dvb_opts, FireWireDBOptions &firewire_opts) |
static QString | FlagToString (uint f) |
static bool | StateIsRecording (TVState state) |
Returns true if "state" is kState_RecordingOnly, or kState_WatchingLiveTV. More... | |
static bool | StateIsPlaying (TVState state) |
Returns true if we are in any state associated with a player. More... | |
Static Private Attributes | |
static QMutex | s_eitLock |
Friends | |
class | TuningRequest |
class | TVRecRecordThread |
This is the coordinating class of the Recorder Subsystem.
TVRec is used by EncoderLink, which in turn is used by RemoteEncoder which allows the TV class on the frontend to communicate with TVRec and is used by MainServer to implement portions of the MythTV Network Protocol on the backend.
TVRec contains an instance of RecorderBase, which actually handles the recording of a program. It also contains an instance of RingBuffer, which in this case is used to either stream an existing recording to the frontend, or to save a stream from the RecorderBase to disk. Finally, if there is a tuner on the hardware RecorderBase is implementing then TVRec contains a channel instance for that hardware, and possibly a SignalMonitor instance which monitors the signal quality on a tuners current input.
|
private |
|
explicit |
Performs instance initialization not requiring access to database.
_inputid |
Definition at line 86 of file tv_rec.cpp.
|
override |
Stops the event and scanning threads and deletes any ChannelBase, RingBuffer, and RecorderBase instances.
Definition at line 215 of file tv_rec.cpp.
bool TVRec::Init | ( | void | ) |
Performs instance initialization, returns true on success.
Definition at line 157 of file tv_rec.cpp.
Referenced by setupTVs().
void TVRec::RecordPending | ( | const ProgramInfo * | rcinfo, |
std::chrono::seconds | secsleft, | ||
bool | hasLater | ||
) |
Tells TVRec "rcinfo" is the next pending recording.
When there is a pending recording and the frontend is in "Live TV" mode the TVRec event loop will send a "ASK_RECORDING" message to it. Depending on what that query returns, the recording will be started or not started.
rcinfo | ProgramInfo on pending program. |
secsleft | Seconds left until pending recording begins. Set to -1 to revoke the current pending recording. |
hasLater | If true, a later non-conflicting showing is available. |
Definition at line 312 of file tv_rec.cpp.
Referenced by CancelNextRecording(), EncoderLink::RecordPending(), and RemoteRecordPending().
RecStatus::Type TVRec::StartRecording | ( | ProgramInfo * | pginfo | ) |
Tells TVRec to Start recording the program "rcinfo" as soon as possible.
Definition at line 438 of file tv_rec.cpp.
Referenced by EncoderLink::StartRecording().
RecStatus::Type TVRec::GetRecordingStatus | ( | void | ) | const |
Definition at line 712 of file tv_rec.cpp.
Referenced by EncoderLink::GetRecordingStatus(), and StartRecording().
Changes from a recording state to kState_None.
Definition at line 748 of file tv_rec.cpp.
Referenced by RemoteStopRecording(), StartRecording(), and EncoderLink::StopRecording().
|
inline |
Tells TVRec to finish the current recording as soon as possible.
Definition at line 161 of file tv_rec.h.
Referenced by EncoderLink::FinishRecording().
|
inline |
Tells TVRec that the frontend's TV class is ready for messages.
Definition at line 164 of file tv_rec.h.
Referenced by EncoderLink::FrontendReady().
void TVRec::CancelNextRecording | ( | bool | cancel | ) |
Tells TVRec to cancel the upcoming recording.
Definition at line 388 of file tv_rec.cpp.
Referenced by EncoderLink::CancelNextRecording(), and StartRecording().
ProgramInfo * TVRec::GetRecording | ( | void | ) |
Allocates and returns a ProgramInfo for the current recording.
Note: The user of this function must free the ProgramInfo this returns.
Definition at line 278 of file tv_rec.cpp.
Referenced by EncoderLink::GetRecording(), EncoderLink::MatchesRecording(), and ExternalChannel::Tune().
|
inline |
|
inline |
TVState TVRec::GetState | ( | void | ) | const |
Returns the TVState of the recorder.
If there is a pending state change kState_ChangingState is returned.
Definition at line 264 of file tv_rec.cpp.
Referenced by CreateChannel(), EncoderLink::GetState(), HandlePendingRecordings(), IsBusy(), RemoteGetState(), run(), SetSignalMonitoringRate(), StartRecording(), and StopRecording().
|
inline |
|
inline |
Returns "state == kState_RecordingRecordedOnly".
Definition at line 2509 of file tv_rec.cpp.
Referenced by DTVChannel::SetChannelByString(), and TuningNewRecorder().
bool TVRec::IsBusy | ( | InputInfo * | busy_input = nullptr , |
std::chrono::seconds | time_buffer = 5s |
||
) | const |
Returns true if the recorder is busy, or will be within the next time_buffer seconds.
Definition at line 2540 of file tv_rec.cpp.
Referenced by EncoderLink::IsBusy(), and RemoteIsBusy().
bool TVRec::IsReallyRecording | ( | void | ) |
Returns true if frontend can consider the recorder started.
Definition at line 2529 of file tv_rec.cpp.
Referenced by EncoderLink::IsReallyRecording().
float TVRec::GetFramerate | ( | void | ) |
Returns recordering frame rate from the recorder.
Definition at line 2608 of file tv_rec.cpp.
Referenced by EncoderLink::GetFramerate().
long long TVRec::GetFramesWritten | ( | void | ) |
Returns number of frames written to disk by recorder.
Definition at line 2623 of file tv_rec.cpp.
Referenced by FinishedRecording(), and EncoderLink::GetFramesWritten().
long long TVRec::GetFilePosition | ( | void | ) |
Returns total number of bytes written by RingBuffer.
Definition at line 2638 of file tv_rec.cpp.
Referenced by EncoderLink::GetFilePosition().
long long TVRec::GetMaxBitrate | ( | void | ) | const |
Returns the maximum bits per second this recorder can produce.
Definition at line 2698 of file tv_rec.cpp.
Referenced by EncoderLink::GetMaxBitrate().
int64_t TVRec::GetKeyframePosition | ( | uint64_t | desired | ) | const |
Returns byte position in RingBuffer of a keyframe according to recorder.
Definition at line 2654 of file tv_rec.cpp.
Referenced by EncoderLink::GetKeyframePosition().
bool TVRec::GetKeyframePositions | ( | int64_t | start, |
int64_t | end, | ||
frm_pos_map_t & | map | ||
) | const |
Returns byte position in RingBuffer of a keyframes according to recorder.
Definition at line 2671 of file tv_rec.cpp.
Referenced by EncoderLink::GetKeyframePositions().
bool TVRec::GetKeyframeDurations | ( | int64_t | start, |
int64_t | end, | ||
frm_pos_map_t & | map | ||
) | const |
Definition at line 2682 of file tv_rec.cpp.
Referenced by EncoderLink::GetKeyframeDurations().
void TVRec::SpawnLiveTV | ( | LiveTVChain * | newchain, |
bool | pip, | ||
QString | startchan | ||
) |
Tells TVRec to spawn a "Live TV" recorder.
Definition at line 2726 of file tv_rec.cpp.
Referenced by EncoderLink::SpawnLiveTV().
QString TVRec::GetChainID | ( | void | ) |
Get the chainid of the livetv instance.
Definition at line 2756 of file tv_rec.cpp.
Referenced by EncoderLink::GetChainID().
void TVRec::StopLiveTV | ( | void | ) |
Tells TVRec to stop a "Live TV" recorder.
Definition at line 2933 of file tv_rec.cpp.
Referenced by RemoteStopLiveTV(), and EncoderLink::StopLiveTV().
void TVRec::PauseRecorder | ( | void | ) |
Tells "recorder" to pause, used for channel and input changes.
When the RecorderBase instance has paused it calls RecorderPaused(void)
Definition at line 2980 of file tv_rec.cpp.
Referenced by EncoderLink::PauseRecorder().
void TVRec::ToggleChannelFavorite | ( | const QString & | changroupname | ) |
Toggles whether the current channel should be on our favorites list.
Definition at line 3008 of file tv_rec.cpp.
Referenced by EncoderLink::ToggleChannelFavorite().
void TVRec::SetLiveRecording | ( | int | recording | ) |
Tells the Scheduler about changes to the recording status of the LiveTV recording.
NOTE: Currently the 'recording' parameter is ignored and decisions are based on the recording group alone.
recording | Set to 1 to mark as RecStatus::Recording, set to 0 to mark as RecStatus::Cancelled, and set to -1 to base the decision of the recording group. |
Definition at line 2887 of file tv_rec.cpp.
Referenced by EncoderLink::SetLiveRecording().
QString TVRec::GetInput | ( | void | ) | const |
Returns current input.
Definition at line 3091 of file tv_rec.cpp.
Referenced by EncoderLink::GetInput().
uint TVRec::GetSourceID | ( | void | ) | const |
Returns current source id.
Definition at line 3101 of file tv_rec.cpp.
Referenced by run(), EITScanner::StartActiveScan(), and TuningSignalCheck().
QString TVRec::SetInput | ( | QString | input | ) |
Changes to the specified input.
You must call PauseRecorder(void) before calling this.
input | Input to switch to, or "SwitchToNextInput". |
Definition at line 3116 of file tv_rec.cpp.
Referenced by EncoderLink::SetInput().
|
inline |
Changes to a channel in the 'dir' channel change direction.
Definition at line 206 of file tv_rec.h.
Referenced by EncoderLink::ChangeChannel().
void TVRec::SetChannel | ( | const QString & | name, |
uint | requestType = kFlagDetect |
||
) |
Changes to a named channel on the current tuner.
You must call PauseRecorder() before calling this.
name | channum of channel to change to |
requestType | tells us what kind of request to actually send to the tuning thread, kFlagDetect is usually sufficient |
Definition at line 3142 of file tv_rec.cpp.
Referenced by EncoderLink::SetChannel().
bool TVRec::QueueEITChannelChange | ( | const QString & | name | ) |
Queues up a channel change for the EITScanner.
Unlike the normal SetChannel() this does not block until the channel change occurs to avoid a deadlock if EITScanner::StopActiveScan() is called with the stateChangeLock held while the EITScanner is calling TVRec::SetChannel().
Definition at line 3191 of file tv_rec.cpp.
Referenced by EITScanner::run().
std::chrono::milliseconds TVRec::SetSignalMonitoringRate | ( | std::chrono::milliseconds | rate, |
int | notifyFrontend = 1 |
||
) |
Sets the signal monitoring rate.
rate | The update rate to use in milliseconds, use 0 to disable signal monitoring. |
notifyFrontend | If 1, SIGNAL messages will be sent to the frontend using this recorder. |
Definition at line 2184 of file tv_rec.cpp.
Referenced by EncoderLink::SetSignalMonitoringRate().
int TVRec::GetPictureAttribute | ( | PictureAttribute | attr | ) |
Definition at line 3057 of file tv_rec.cpp.
Referenced by EncoderLink::GetPictureAttribute().
int TVRec::ChangePictureAttribute | ( | PictureAdjustType | type, |
PictureAttribute | attr, | ||
bool | direction | ||
) |
Returns current value [0,100] if it succeeds, -1 otherwise.
Changes brightness/contrast/colour/hue of a recording.
Note: In practice this only works with frame grabbing recorders.
Note: In practice this only works with frame grabbing recorders.
Definition at line 3075 of file tv_rec.cpp.
Referenced by EncoderLink::ChangePictureAttribute().
bool TVRec::CheckChannel | ( | const QString & | name | ) | const |
Checks if named channel exists on current tuner.
name | channel to verify against current tuner. |
Definition at line 2328 of file tv_rec.cpp.
Referenced by EncoderLink::CheckChannel().
bool TVRec::ShouldSwitchToAnotherInput | ( | const QString & | chanid | ) | const |
Checks if named channel exists on current tuner, or another tuner.
chanid | channel to verify against tuners. |
Definition at line 2238 of file tv_rec.cpp.
Referenced by EncoderLink::ShouldSwitchToAnotherInput().
bool TVRec::CheckChannelPrefix | ( | const QString & | prefix, |
uint & | complete_valid_channel_on_rec, | ||
bool & | is_extra_char_useful, | ||
QString & | needed_spacer | ||
) | const |
Checks a prefix against the channels in the DB.
If the prefix matches a channel on any recorder this function returns true, otherwise it returns false.
If the prefix matches any channel entirely (i.e. prefix == channum), then the inputid of the recorder it matches is returned in 'complete_valid_channel_on_rec'; if it matches multiple recorders, and one of them is this recorder, this recorder is returned in 'complete_valid_channel_on_rec'; if it isn't complete for any channel on any recorder 'complete_valid_channel_on_rec' is set to zero.
If adding another character could reduce the number of channels the prefix matches 'is_extra_char_useful' is set to true, otherwise it is set to false.
Finally, if in order for the prefix to match a channel, a spacer needs to be added, the first matching spacer is returned in needed_spacer. If there is more than one spacer that might be employed and one of them is used for the current recorder, and others are used for other recorders, then the one for the current recorder is returned. The spacer must be inserted before the last character of the prefix for anything else returned from the function to be valid.
Definition at line 2374 of file tv_rec.cpp.
Referenced by EncoderLink::CheckChannelPrefix().
void TVRec::GetNextProgram | ( | BrowseDirection | direction, |
QString & | title, | ||
QString & | subtitle, | ||
QString & | desc, | ||
QString & | category, | ||
QString & | starttime, | ||
QString & | endtime, | ||
QString & | callsign, | ||
QString & | iconpath, | ||
QString & | channum, | ||
uint & | chanid, | ||
QString & | seriesid, | ||
QString & | programid | ||
) |
Definition at line 3218 of file tv_rec.cpp.
Referenced by EncoderLink::GetNextProgram().
bool TVRec::GetChannelInfo | ( | uint & | chanid, |
uint & | sourceid, | ||
QString & | callsign, | ||
QString & | channum, | ||
QString & | channame, | ||
QString & | xmltvid | ||
) | const |
Definition at line 3344 of file tv_rec.cpp.
Referenced by EncoderLink::GetChannelInfo().
bool TVRec::SetChannelInfo | ( | uint | chanid, |
uint | sourceid, | ||
const QString & | oldchannum, | ||
const QString & | callsign, | ||
const QString & | channum, | ||
const QString & | channame, | ||
const QString & | xmltvid | ||
) |
Definition at line 3385 of file tv_rec.cpp.
Referenced by EncoderLink::SetChannelInfo().
|
inline |
Returns the inputid.
Definition at line 234 of file tv_rec.h.
Referenced by ASIRecorder::ASIRecorder(), ChannelBase::ChannelBase(), CetonRecorder::Close(), HDHRRecorder::Close(), DVBRecorder::Close(), V4L2encRecorder::Close(), ExternalRecorder::Close(), ASIRecorder::Close(), DVBChannel::DVBChannel(), HandleStateChange(), ChannelBase::InitializeInput(), HDHRRecorder::Open(), DVBRecorder::Open(), CetonRecorder::Open(), V4L2encRecorder::Open(), ExternalRecorder::Open(), ASIRecorder::Open(), MpegRecorder::run(), run(), EITScanner::StartActiveScan(), and TuningSignalCheck().
|
inline |
Definition at line 236 of file tv_rec.h.
Referenced by ChannelBase::GetMajorID().
|
inline |
void TVRec::RingBufferChanged | ( | MythMediaBuffer * | Buffer, |
RecordingInfo * | pginfo, | ||
RecordingQuality * | recq | ||
) |
Definition at line 3441 of file tv_rec.cpp.
Referenced by RecorderBase::CheckForRingBufferSwitch().
void TVRec::RecorderPaused | ( | void | ) |
This is a callback, called by the "recorder" instance when it has actually paused.
Definition at line 2999 of file tv_rec.cpp.
Referenced by NuppelVideoRecorder::doAudioThread(), NuppelVideoRecorder::DoV4L2(), NuppelVideoRecorder::doWriteThread(), SatIPRecorder::PauseAndWait(), IPTVRecorder::PauseAndWait(), DVBRecorder::PauseAndWait(), HDHRRecorder::PauseAndWait(), MpegRecorder::PauseAndWait(), CetonRecorder::PauseAndWait(), V4L2encRecorder::PauseAndWait(), FirewireRecorder::PauseAndWait(), ExternalRecorder::PauseAndWait(), and RecorderBase::PauseAndWait().
void TVRec::SetNextLiveTVDir | ( | QString | dir | ) |
Definition at line 4600 of file tv_rec.cpp.
Referenced by EncoderLink::SetNextLiveTVDir().
|
inline |
Definition at line 245 of file tv_rec.h.
Referenced by EncoderLink::GetFlags(), HandleStateChange(), and RemoteGetFlags().
Definition at line 4895 of file tv_rec.cpp.
Referenced by CreateChannel(), RemoteGetFlags(), RemoteGetState(), RemoteIsBusy(), RemoteRecordPending(), RemoteStopLiveTV(), RemoteStopRecording(), and setupTVs().
|
inlineoverridevirtual |
Signal to be sent when you have a lock on all values.
Note: Signals are only sent once the monitoring thread has been started.
Implements SignalMonitorListener.
|
inlineoverridevirtual |
Signal to be sent with change change status.
Note: Signals are only sent once the monitoring thread has been started.
Implements SignalMonitorListener.
|
inlineoverridevirtual |
Signal to be sent as true when it is safe to begin or continue recording, and false if it may not be safe.
Note: Signals are only sent once the monitoring thread has been started.
Implements SignalMonitorListener.
|
inlineoverridevirtual |
Signal to be sent with an actual signal value.
Note: Signals are only sent once the monitoring thread has been started.
Implements SignalMonitorListener.
void TVRec::EnableActiveScan | ( | bool | enable | ) |
Definition at line 4903 of file tv_rec.cpp.
|
overrideprotected |
Event handling method, contains event loop.
Definition at line 1351 of file tv_rec.cpp.
|
protected |
You MUST HAVE the stateChange-lock locked when you call this method!
Definition at line 1661 of file tv_rec.cpp.
Referenced by Init(), SetChannel(), SetSignalMonitoringRate(), SpawnLiveTV(), StartRecording(), StopLiveTV(), and StopRecording().
|
private |
Sets "ringBuffer", deleting any existing RingBuffer.
Definition at line 3424 of file tv_rec.cpp.
Referenced by CreateLiveTVRingBuffer(), RingBufferChanged(), SwitchLiveTVRingBuffer(), TeardownAll(), TuningNewRecorder(), and TuningShutdowns().
|
private |
Sets the pseudo LiveTV RecordingInfo.
Definition at line 365 of file tv_rec.cpp.
Referenced by CheckForRecGroupChange(), HandleStateChange(), run(), and StartRecording().
|
private |
Definition at line 234 of file tv_rec.cpp.
Referenced by run().
|
private |
Definition at line 251 of file tv_rec.cpp.
Referenced by ChangeState(), ClearFlags(), RecorderPaused(), SetFlags(), and WaitForEventThreadSleep().
|
staticprivate |
Definition at line 1776 of file tv_rec.cpp.
Referenced by Init().
|
private |
Tears down the recorder.
If a "recorder" exists, RecorderBase::StopRecording() is called. We then wait for "recorder_thread" to exit, and finally we delete "recorder".
If a RingBuffer instance exists, RingBuffer::StopReads() is called.
If request_flags include kFlagKillRec we mark the recording as being damaged.
Finally, if there was a recording and it was not damaged, schedule any post-processing jobs.
Definition at line 1189 of file tv_rec.cpp.
Referenced by TeardownAll(), TuningNewRecorder(), and TuningShutdowns().
|
private |
Definition at line 1244 of file tv_rec.cpp.
Referenced by SetupDTVSignalMonitor(), TuningFrequency(), TuningNewRecorder(), TuningOnSameMultiplex(), and TuningShutdowns().
Definition at line 95 of file tv_rec.cpp.
Referenced by Init().
|
private |
Definition at line 1249 of file tv_rec.cpp.
Referenced by TuningNewRecorder(), and TuningShutdowns().
|
private |
Definition at line 1263 of file tv_rec.cpp.
Referenced by run(), SetupDTVSignalMonitor(), TeardownRecorder(), TeardownSignalMonitor(), and TuningFrequency().
|
private |
Definition at line 1268 of file tv_rec.cpp.
Referenced by TeardownRecorder(), TuningNewRecorder(), and TuningRestartRecorder().
This creates a SignalMonitor instance and begins signal monitoring.
If the channel exists and there is something to monitor a SignalMonitor instance is created and SignalMonitor::Start() is called to start the signal monitoring thread.
tablemon | If set we enable table monitoring |
EITscan | if set we never look for video streams and we lock on encrypted streams even if we can't decode them. |
notify | If set we notify the frontend of the signal values |
Definition at line 2092 of file tv_rec.cpp.
Referenced by TuningFrequency().
Tells DTVSignalMonitor what channel to look for.
If the major and minor channels are set we tell the signal monitor to look for those in the VCT.
Otherwise, we tell the signal monitor to look for the MPEG program number in the PAT.
This method also grabs the ATSCStreamData() from the recorder if possible, or creates one if needed.
EITscan | if set we never look for video streams and we lock on encrypted streams even if we can't decode them. |
Definition at line 1912 of file tv_rec.cpp.
Referenced by SetupSignalMonitor().
|
private |
If a SignalMonitor instance exists, the monitoring thread is stopped and the instance is deleted.
Definition at line 2146 of file tv_rec.cpp.
Referenced by TeardownAll(), TuningShutdowns(), and TuningSignalCheck().
|
private |
Definition at line 2222 of file tv_rec.cpp.
Referenced by SetupDTVSignalMonitor(), SetupSignalMonitor(), TeardownSignalMonitor(), TuningFrequency(), TuningShutdowns(), and TuningSignalCheck().
Definition at line 287 of file tv_rec.h.
Referenced by EnableActiveScan(), FinishedRecording(), HandlePendingRecordings(), HandleStateChange(), HandleTuning(), IsReallyRecording(), run(), SetChannel(), SetRingBuffer(), SetSignalMonitoringRate(), TeardownRecorder(), TuningFrequency(), TuningNewRecorder(), TuningRestartRecorder(), TuningShutdowns(), TuningSignalCheck(), and ~TVRec().
|
private |
Definition at line 4488 of file tv_rec.cpp.
Referenced by CreateChannel(), HandleTuning(), run(), SetLiveRecording(), SpawnLiveTV(), StopRecording(), SwitchLiveTVRingBuffer(), SwitchRecordingRingBuffer(), TuningFrequency(), and TuningNewRecorder().
|
private |
Definition at line 4497 of file tv_rec.cpp.
Referenced by CreateLiveTVRingBuffer(), EnableActiveScan(), HandleStateChange(), HandleTuning(), NotifySchedulerOfRecording(), run(), SetChannel(), SetRingBuffer(), SetSignalMonitoringRate(), StartRecording(), StopRecording(), TeardownRecorder(), TuningFrequency(), TuningNewRecorder(), TuningRestartRecorder(), TuningShutdowns(), TuningSignalCheck(), and ~TVRec().
|
staticprivate |
Definition at line 4506 of file tv_rec.cpp.
Referenced by ClearFlags(), SetFlags(), and TuningRequest::toString().
|
private |
Handles all tuning events.
This method pops tuning events off the tuningState queue and does what needs to be done, mostly by calling one of the Tuning... methods.
Definition at line 3555 of file tv_rec.cpp.
Referenced by run().
|
private |
This shuts down anything that needs to be shut down before handling the passed in tuning request.
Definition at line 3631 of file tv_rec.cpp.
Referenced by HandleTuning(), and run().
|
private |
Performs initial tuning required for any tuning event.
This figures out the channel name, and possibly the input name we need to pass to "channel" and then calls channel appropriately.
Then it adds any filters and sets any video capture attributes that need to be set.
The signal monitoring is started if possible. If it is started the kFlagWaitForSignal flag is set.
The kFlagNeedToStartRecorder flag is ald set if this isn't an EIT scan so that the recorder is started or restarted as appropriate.
Definition at line 3720 of file tv_rec.cpp.
Referenced by HandleTuning().
|
private |
This checks if we have a channel lock.
If we have a channel lock this shuts down the signal monitoring.
Definition at line 3963 of file tv_rec.cpp.
Referenced by HandleTuning().
|
private |
Creates a recorder instance.
Definition at line 4233 of file tv_rec.cpp.
Referenced by HandleTuning().
|
private |
Restarts a stopped recorder or unpauses a paused recorder.
Definition at line 4423 of file tv_rec.cpp.
Referenced by HandleTuning().
|
private |
Definition at line 3464 of file tv_rec.cpp.
Referenced by HandleTuning().
|
private |
Definition at line 3503 of file tv_rec.cpp.
Referenced by HandleTuning().
|
private |
Changes the internalState to the desiredNextState if possible.
Note: There must exist a state transition from any state we can enter to the kState_None state, as this is used to shutdown TV in RunTV.
Definition at line 1055 of file tv_rec.cpp.
Referenced by run().
|
private |
Puts a state change on the nextState queue.
Definition at line 1167 of file tv_rec.cpp.
Referenced by CreateLiveTVRingBuffer(), run(), SpawnLiveTV(), StartRecording(), StopLiveTV(), StopRecording(), SwitchLiveTVRingBuffer(), TuningFrequency(), and TuningNewRecorder().
Returns true if "state" is kState_RecordingOnly, or kState_WatchingLiveTV.
state | TVState to check. |
Definition at line 775 of file tv_rec.cpp.
Referenced by RemoveRecording(), and StopRecording().
Returns true if we are in any state associated with a player.
state | TVState to check. |
Definition at line 785 of file tv_rec.cpp.
Referenced by RemovePlaying(), and run().
Returns TVState that would remove the playing, but potentially keep recording if we are watching an in progress recording.
state | TVState to check. |
Definition at line 811 of file tv_rec.cpp.
Referenced by run().
If "state" is kState_RecordingOnly or kState_WatchingLiveTV, returns a kState_None, otherwise returns kState_Error.
state | TVState to check. |
Definition at line 795 of file tv_rec.cpp.
Referenced by StopRecording().
|
private |
Definition at line 1698 of file tv_rec.cpp.
Referenced by run().
|
private |
Definition at line 4587 of file tv_rec.cpp.
Referenced by GetProgramRingBufferForLiveTV().
|
private |
Definition at line 4608 of file tv_rec.cpp.
Referenced by CreateLiveTVRingBuffer(), and SwitchLiveTVRingBuffer().
|
private |
Definition at line 4707 of file tv_rec.cpp.
Referenced by TuningFrequency(), and TuningNewRecorder().
Definition at line 4753 of file tv_rec.cpp.
Referenced by run(), TuningFrequency(), TuningNewRecorder(), and TuningRestartRecorder().
|
private |
Definition at line 4821 of file tv_rec.cpp.
Referenced by StartRecording().
|
private |
Inserts a "curRec" into the database.
curRec | Recording to add to database. |
Definition at line 831 of file tv_rec.cpp.
Referenced by GetProgramRingBufferForLiveTV(), StartRecording(), and SwitchRecordingRingBuffer().
|
private |
If not a premature stop, adds program to history of recorded programs.
If the recording type is kOneRecord this find is removed.
curRec | RecordingInfo or recording to mark as done |
recq | Information on the quality if the recording. |
Definition at line 857 of file tv_rec.cpp.
Referenced by RingBufferChanged(), SwitchLiveTVRingBuffer(), SwitchRecordingRingBuffer(), TeardownRecorder(), TuningNewRecorder(), TuningRestartRecorder(), and TuningShutdowns().
|
private |
Returns recording end time with proper post-roll.
Definition at line 375 of file tv_rec.cpp.
Referenced by RingBufferChanged(), SetLiveRecording(), StartRecording(), StopLiveTV(), and SwitchRecordingRingBuffer().
|
private |
Check if frontend changed the recording group.
This is needed because the frontend may toggle whether something should be kept as a recording in the frontend, but this class may not find out about it in time unless we check the DB when this information is important.
Definition at line 2771 of file tv_rec.cpp.
Referenced by HandlePendingRecordings(), SetLiveRecording(), and StopLiveTV().
|
private |
Tell scheduler about the recording.
This is needed if the frontend has marked the LiveTV buffer for recording after we exit LiveTV. In this case the scheduler needs to know about the recording so it can properly take overrecord into account, and to properly reschedule other recordings around to avoid this recording.
Definition at line 2805 of file tv_rec.cpp.
Referenced by SetLiveRecording(), and StopLiveTV().
|
private |
Definition at line 2851 of file tv_rec.cpp.
Referenced by FinishedRecording(), SetLiveRecording(), StartedRecording(), and TuningRestartRecorder().
|
private |
Definition at line 718 of file tv_rec.cpp.
Referenced by Init(), StartRecording(), StopRecording(), TuningFrequency(), TuningNewRecorder(), and TuningSignalCheck().
|
private |
Definition at line 4187 of file tv_rec.cpp.
Referenced by InitAutoRunJobs(), SetupDTVSignalMonitor(), SwitchRecordingRingBuffer(), and TuningNewRecorder().
|
friend |
Definition at line 146 of file tv_rec.h.
Referenced by HandlePendingRecordings(), HandleStateChange(), QueueEITChannelChange(), run(), SetChannel(), SetSignalMonitoringRate(), TuningFrequency(), and TuningSignalCheck().
|
private |
Definition at line 336 of file tv_rec.h.
Referenced by GetDTVRecorder(), GetFramerate(), GetFramesWritten(), GetKeyframeDurations(), GetKeyframePosition(), GetKeyframePositions(), HandleTuning(), IsReallyRecording(), PauseRecorder(), run(), SetVideoFiltersForChannel(), SwitchLiveTVRingBuffer(), SwitchRecordingRingBuffer(), TeardownRecorder(), TuningFrequency(), TuningNewRecorder(), and TuningRestartRecorder().
|
private |
Definition at line 337 of file tv_rec.h.
Referenced by ChangePictureAttribute(), CheckChannel(), CloseChannel(), CreateChannel(), CreateLiveTVRingBuffer(), GetChannelInfo(), GetDTVChannel(), GetInput(), GetNextProgram(), GetPictureAttribute(), GetProgramRingBufferForLiveTV(), GetSourceID(), GetV4LChannel(), HandleTuning(), IsBusy(), NotifySchedulerOfRecording(), run(), SetChannelInfo(), SetInput(), SetSignalMonitoringRate(), SetupDTVSignalMonitor(), SetupSignalMonitor(), SwitchLiveTVRingBuffer(), TeardownRecorder(), ToggleChannelFavorite(), TuningFrequency(), TuningGetChanNum(), TuningNewRecorder(), TuningOnSameMultiplex(), TuningRestartRecorder(), TuningSignalCheck(), and ~TVRec().
|
private |
Definition at line 338 of file tv_rec.h.
Referenced by GetDTVSignalMonitor(), SetupSignalMonitor(), TeardownSignalMonitor(), TuningFrequency(), TuningOnSameMultiplex(), and TuningSignalCheck().
|
private |
Definition at line 339 of file tv_rec.h.
Referenced by EnableActiveScan(), HandlePendingRecordings(), HandleStateChange(), run(), TeardownAll(), TuningShutdowns(), and TuningSignalCheck().
|
private |
Definition at line 341 of file tv_rec.h.
Referenced by TuningFrequency(), and TuningSignalCheck().
Definition at line 342 of file tv_rec.h.
Referenced by TuningFrequency(), and TuningSignalCheck().
|
private |
Definition at line 344 of file tv_rec.h.
Referenced by TuningFrequency(), and TuningSignalCheck().
|
private |
Definition at line 345 of file tv_rec.h.
Referenced by TuningFrequency(), and TuningSignalCheck().
|
private |
Definition at line 346 of file tv_rec.h.
Referenced by TuningFrequency(), and TuningSignalCheck().
Definition at line 347 of file tv_rec.h.
Referenced by TuningFrequency(), and TuningSignalCheck().
|
private |
Definition at line 348 of file tv_rec.h.
Referenced by TuningFrequency(), and TuningSignalCheck().
Definition at line 349 of file tv_rec.h.
Referenced by TuningFrequency(), and TuningSignalCheck().
|
private |
|
private |
Recorder thread, runs RecorderBase::run().
Definition at line 355 of file tv_rec.h.
Referenced by TeardownRecorder(), and TuningNewRecorder().
Definition at line 358 of file tv_rec.h.
Referenced by Init(), and InitAutoRunJobs().
Definition at line 359 of file tv_rec.h.
Referenced by Init(), and InitAutoRunJobs().
Definition at line 360 of file tv_rec.h.
Referenced by Init(), and InitAutoRunJobs().
|
private |
Definition at line 361 of file tv_rec.h.
Referenced by EnableActiveScan(), HandleStateChange(), Init(), run(), and TuningShutdowns().
|
private |
Definition at line 362 of file tv_rec.h.
Referenced by EnableActiveScan(), HandleStateChange(), Init(), run(), and TuningShutdowns().
|
private |
|
private |
|
private |
Definition at line 365 of file tv_rec.h.
Referenced by GetRecordEndTime(), and Init().
|
private |
Definition at line 366 of file tv_rec.h.
Referenced by GetRecordEndTime(), and Init().
|
private |
Definition at line 367 of file tv_rec.h.
Referenced by GetRecordEndTime(), and Init().
|
private |
Definition at line 370 of file tv_rec.h.
Referenced by CancelNextRecording(), CheckChannelPrefix(), CreateChannel(), EnableActiveScan(), FinishedRecording(), GetProgramRingBufferForLiveTV(), GetRecording(), HandlePendingRecordings(), HandleStateChange(), Init(), IsBusy(), NotifySchedulerOfRecording(), RecordPending(), run(), SetupDTVSignalMonitor(), SetupSignalMonitor(), ShouldSwitchToAnotherInput(), StartRecording(), TuningFrequency(), TuningGetChanNum(), TuningNewRecorder(), TuningRestartRecorder(), TuningShutdowns(), TuningSignalCheck(), TVRec(), and ~TVRec().
|
private |
Definition at line 371 of file tv_rec.h.
Referenced by CreateChannel(), and Init().
Definition at line 372 of file tv_rec.h.
Referenced by SpawnLiveTV(), and TeardownRecorder().
|
staticprivate |
Definition at line 375 of file tv_rec.h.
Referenced by HandleStateChange(), and run().
|
private |
Definition at line 376 of file tv_rec.h.
Referenced by HandleStateChange(), and Init().
|
private |
Definition at line 379 of file tv_rec.h.
Referenced by CloseChannel(), CreateChannel(), GetMaxBitrate(), GetProgramRingBufferForLiveTV(), Init(), LoadProfile(), run(), SetSignalMonitoringRate(), SetupDTVSignalMonitor(), SetupSignalMonitor(), SpawnLiveTV(), SwitchRecordingRingBuffer(), TuningFrequency(), TuningNewRecorder(), and TuningSignalCheck().
|
private |
Definition at line 380 of file tv_rec.h.
Referenced by CloseChannel(), CreateChannel(), Init(), and run().
|
private |
Definition at line 381 of file tv_rec.h.
Referenced by CreateChannel(), and Init().
|
private |
Definition at line 383 of file tv_rec.h.
Referenced by SetupDTVSignalMonitor(), SwitchRecordingRingBuffer(), and TuningNewRecorder().
|
mutableprivate |
Definition at line 386 of file tv_rec.h.
Referenced by QueueEITChannelChange(), and SetChannel().
|
mutableprivate |
Definition at line 387 of file tv_rec.h.
Referenced by ChangePictureAttribute(), ChangeState(), CheckForRecGroupChange(), ClearFlags(), GetFilePosition(), GetFramerate(), GetFramesWritten(), GetKeyframeDurations(), GetKeyframePosition(), GetKeyframePositions(), GetPictureAttribute(), GetRecording(), Init(), PauseRecorder(), QueueEITChannelChange(), RecordPending(), RingBufferChanged(), run(), SetChannel(), SetFlags(), SetInput(), SetLiveRecording(), SetRingBuffer(), SetSignalMonitoringRate(), SpawnLiveTV(), StartRecording(), StopLiveTV(), StopRecording(), TeardownRecorder(), ToggleChannelFavorite(), TuningNewRecorder(), TuningShutdowns(), and WaitForEventThreadSleep().
|
mutableprivate |
Definition at line 388 of file tv_rec.h.
Referenced by CancelNextRecording(), GetRecordingStatus(), HandlePendingRecordings(), IsBusy(), RecordPending(), run(), SetRecordingStatus(), and StartRecording().
|
private |
Definition at line 389 of file tv_rec.h.
Referenced by CheckForRecGroupChange(), GetState(), HandleStateChange(), run(), StartRecording(), StopLiveTV(), and TuningFrequency().
|
private |
Definition at line 390 of file tv_rec.h.
Referenced by ChangeState(), and HandleStateChange().
Definition at line 391 of file tv_rec.h.
Referenced by ChangeState(), GetRecording(), GetState(), HandleStateChange(), run(), and WaitForEventThreadSleep().
Definition at line 392 of file tv_rec.h.
Referenced by RecorderPaused(), and TeardownRecorder().
|
private |
Definition at line 393 of file tv_rec.h.
Referenced by ClearFlags(), and SetFlags().
|
private |
Definition at line 394 of file tv_rec.h.
Referenced by HandlePendingRecordings(), HandleStateChange(), HandleTuning(), QueueEITChannelChange(), run(), SetChannel(), SetSignalMonitoringRate(), TuningFrequency(), TuningSignalCheck(), and WaitForEventThreadSleep().
|
private |
Definition at line 395 of file tv_rec.h.
Referenced by HandleTuning(), SetChannel(), SetupDTVSignalMonitor(), and TuningNewRecorder().
|
private |
Definition at line 396 of file tv_rec.h.
Referenced by EnableActiveScan(), HandleStateChange(), run(), and TuningShutdowns().
|
private |
|
mutableprivate |
Definition at line 398 of file tv_rec.h.
Referenced by run(), and WakeEventLoop().
|
private |
Definition at line 399 of file tv_rec.h.
Referenced by run(), and WakeEventLoop().
Definition at line 400 of file tv_rec.h.
Referenced by run(), and WakeEventLoop().
|
mutableprivate |
Definition at line 401 of file tv_rec.h.
Referenced by run(), and WaitForEventThreadSleep().
|
private |
Definition at line 402 of file tv_rec.h.
Referenced by run(), and WaitForEventThreadSleep().
Definition at line 403 of file tv_rec.h.
Referenced by run(), and WaitForEventThreadSleep().
Definition at line 404 of file tv_rec.h.
Referenced by run(), SetRingBuffer(), and SwitchRecordingRingBuffer().
|
private |
Definition at line 405 of file tv_rec.h.
Referenced by GetRecordingStatus(), SetRecordingStatus(), and StartRecording().
|
private |
Definition at line 408 of file tv_rec.h.
Referenced by CheckForRecGroupChange(), CreateLiveTVRingBuffer(), GetRecording(), HandleStateChange(), RingBufferChanged(), run(), SetLiveRecording(), StartRecording(), StopLiveTV(), StopRecording(), SwitchLiveTVRingBuffer(), SwitchRecordingRingBuffer(), TeardownRecorder(), TuningFrequency(), TuningNewRecorder(), TuningRestartRecorder(), TuningShutdowns(), and TuningSignalCheck().
|
private |
Definition at line 409 of file tv_rec.h.
Referenced by RingBufferChanged(), run(), SetLiveRecording(), StartRecording(), StopLiveTV(), and SwitchRecordingRingBuffer().
|
private |
Definition at line 411 of file tv_rec.h.
Referenced by FinishedRecording(), and InitAutoRunJobs().
|
private |
Definition at line 415 of file tv_rec.h.
Referenced by CancelNextRecording(), HandlePendingRecordings(), IsBusy(), RecordPending(), run(), and StartRecording().
|
private |
Definition at line 418 of file tv_rec.h.
Referenced by CheckForRecGroupChange(), CreateLiveTVRingBuffer(), GetProgramRingBufferForLiveTV(), HandlePendingRecordings(), run(), SetLiveRecording(), SetPseudoLiveTVRecording(), StopLiveTV(), SwitchLiveTVRingBuffer(), TuningFrequency(), and TuningRestartRecorder().
|
private |
Definition at line 419 of file tv_rec.h.
Referenced by GetProgramRingBufferForLiveTV(), SetNextLiveTVDir(), and WaitForNextLiveTVDir().
|
private |
Definition at line 420 of file tv_rec.h.
Referenced by GetProgramRingBufferForLiveTV(), SetNextLiveTVDir(), and WaitForNextLiveTVDir().
|
private |
Definition at line 421 of file tv_rec.h.
Referenced by SetNextLiveTVDir(), and WaitForNextLiveTVDir().
|
private |
Definition at line 422 of file tv_rec.h.
Referenced by SpawnLiveTV(), and TuningGetChanNum().
|
private |
Definition at line 425 of file tv_rec.h.
Referenced by CreateLiveTVRingBuffer(), FinishedRecording(), GetChainID(), GetProgramRingBufferForLiveTV(), SetupDTVSignalMonitor(), SpawnLiveTV(), StartRecording(), StopLiveTV(), SwitchLiveTVRingBuffer(), TuningFrequency(), TuningNewRecorder(), and TuningRestartRecorder().
|
private |
Definition at line 428 of file tv_rec.h.
Referenced by GetFilePosition(), SetRingBuffer(), TeardownRecorder(), TuningFrequency(), TuningNewRecorder(), TuningRestartRecorder(), and TuningShutdowns().
|
private |
Definition at line 429 of file tv_rec.h.
Referenced by CreateChannel(), and StartedRecording().
|
static |
Definition at line 432 of file tv_rec.h.
Referenced by MainServer::connectionClosed(), MainServer::DoHandleStopRecording(), FillEncoderList(), Scheduler::FillRecordList(), HttpStatus::FillStatusXML(), V2Status::FillStatusXML(), Scheduler::getConflicting(), MainServer::GetCurrentMaxBitrate(), Dvr::GetEncoderList(), Scheduler::GetNextLiveTVDir(), MainServer::HandleAddChildInput(), MainServer::HandleAnnounce(), MainServer::HandleCheckRecordingActive(), MainServer::HandleFreeTuner(), MainServer::HandleGetFreeInputInfo(), MainServer::HandleGetRecorderFromNum(), MainServer::HandleGetRecorderNum(), Scheduler::HandleIdleShutdown(), MainServer::HandleIsRecording(), MainServer::HandleLockTuner(), MainServer::HandleRecorderQuery(), Scheduler::HandleRecording(), MainServer::HandleRemoteEncoder(), MainServer::HandleSetChannelInfo(), MainServer::HandleSetNextLiveTVDir(), HandleStateChange(), Scheduler::HandleWakeSlave(), Scheduler::PutInactiveSlavesToSleep(), MainServer::reconnectTimeout(), run(), AutoExpire::RunExpirer(), setupTVs(), Scheduler::SlaveConnected(), MainServer::UpdateSystemdStatus(), and Scheduler::WakeUpSlaves().
Definition at line 433 of file tv_rec.h.
Referenced by cleanup(), GetTVRec(), HandleStateChange(), V2Myth::ManageScheduler(), run(), TVRec(), and ~TVRec().
|
staticconstexpr |
How many milliseconds the signal monitor should wait between checks.
Definition at line 437 of file tv_rec.h.
Referenced by SetupSignalMonitor().
|
static |
Definition at line 440 of file tv_rec.h.
Referenced by FlagToString(), and run().
|
static |
Definition at line 441 of file tv_rec.h.
Referenced by FlagToString(), run(), and ~TVRec().
|
static |
Definition at line 442 of file tv_rec.h.
Referenced by FlagToString(), and run().
|
static |
Definition at line 443 of file tv_rec.h.
Referenced by FlagToString(), and run().
|
static |
Definition at line 444 of file tv_rec.h.
Referenced by CreateChannel(), and FlagToString().
|
static |
Definition at line 445 of file tv_rec.h.
Referenced by FlagToString(), NotifySchedulerOfRecording(), run(), SetLiveRecording(), SpawnLiveTV(), StartRecording(), and StopRecording().
|
static |
final result desired is LiveTV recording
Definition at line 449 of file tv_rec.h.
Referenced by FlagToString(), HandleStateChange(), HandleTuning(), SetSignalMonitoringRate(), TuningFrequency(), TuningGetChanNum(), and TuningNewRecorder().
|
static |
final result desired is a timed recording
Definition at line 451 of file tv_rec.h.
Referenced by FlagToString(), HandleStateChange(), HandleTuning(), and TuningNewRecorder().
|
static |
antenna adjusting mode (LiveTV without recording).
Definition at line 453 of file tv_rec.h.
Referenced by FlagToString(), HandleTuning(), SetSignalMonitoringRate(), TuningFrequency(), and TuningOnSameMultiplex().
|
static |
Definition at line 454 of file tv_rec.h.
Referenced by FlagToString(), SetChannel(), and TuningFrequency().
|
static |
final result desired is an EIT Scan
Definition at line 458 of file tv_rec.h.
Referenced by FlagToString(), HandleTuning(), QueueEITChannelChange(), SetChannel(), TuningFrequency(), and TuningShutdowns().
|
static |
close recorder, keep recording
Definition at line 460 of file tv_rec.h.
Referenced by FlagToString(), and HandleStateChange().
|
static |
close recorder, discard recording
Definition at line 462 of file tv_rec.h.
Referenced by FlagToString(), HandleStateChange(), StopRecording(), TeardownAll(), TeardownRecorder(), TuningFrequency(), and TuningNewRecorder().
|
static |
Definition at line 464 of file tv_rec.h.
Referenced by FlagToString(), HandlePendingRecordings(), HandleStateChange(), run(), SetChannel(), TuningShutdowns(), and TuningSignalCheck().
|
static |
Definition at line 465 of file tv_rec.h.
Referenced by FlagToString(), HandleStateChange(), and TuningShutdowns().
|
static |
Definition at line 468 of file tv_rec.h.
Referenced by FlagToString(), and HandleTuning().
|
static |
Definition at line 469 of file tv_rec.h.
Referenced by FlagToString(), HandleTuning(), TuningFrequency(), TuningShutdowns(), and TuningSignalCheck().
|
static |
Definition at line 470 of file tv_rec.h.
Referenced by FlagToString(), HandleTuning(), TeardownRecorder(), TuningFrequency(), TuningNewRecorder(), TuningRestartRecorder(), and TuningSignalCheck().
|
static |
Definition at line 471 of file tv_rec.h.
Referenced by CreateLiveTVRingBuffer(), FlagToString(), TuningNewRecorder(), and TuningShutdowns().
|
static |
Definition at line 474 of file tv_rec.h.
Referenced by FlagToString(), TuningFrequency(), TuningShutdowns(), and TuningSignalCheck().
|
static |
Definition at line 475 of file tv_rec.h.
Referenced by EnableActiveScan(), FlagToString(), HandlePendingRecordings(), HandleStateChange(), run(), TuningFrequency(), TuningShutdowns(), and TuningSignalCheck().
|
static |
Definition at line 477 of file tv_rec.h.
Referenced by FinishedRecording(), FlagToString(), IsReallyRecording(), SetRingBuffer(), TuningFrequency(), TuningNewRecorder(), TuningRestartRecorder(), and TuningShutdowns().
|
static |
Definition at line 478 of file tv_rec.h.
Referenced by FlagToString(), TeardownRecorder(), TuningNewRecorder(), and TuningShutdowns().
|
static |
Definition at line 479 of file tv_rec.h.
Referenced by FlagToString().
|
static |
Definition at line 480 of file tv_rec.h.
Referenced by FlagToString().
|
static |
Definition at line 483 of file tv_rec.h.
Referenced by FlagToString(), SetChannel(), SetSignalMonitoringRate(), SwitchLiveTVRingBuffer(), SwitchRecordingRingBuffer(), TuningFrequency(), and TuningNewRecorder().
|
static |
Definition at line 484 of file tv_rec.h.
Referenced by SetChannel().