|
MythTV master
|
#include <mythtranscode/mythtranscodeplayer.h>
Public Member Functions | |
| MythTranscodePlayer (PlayerContext *Context, PlayerFlags Flags=kNoFlags) | |
| void | SetTranscoding (bool Transcoding) |
| void | InitForTranscode () |
| void | SetCutList (const frm_dir_map_t &CutList) |
| bool | TranscodeGetNextFrame (int &DidFF, bool &KeyFrame, bool HonorCutList) |
Public Member Functions inherited from MythPlayer | |
| MythPlayer (PlayerContext *Context, PlayerFlags Flags=kNoFlags) | |
| ~MythPlayer () override | |
| virtual int | OpenFile (int Retries=4) |
| virtual bool | InitVideo (void) |
| virtual void | ReinitVideo (bool ForceUpdate) |
| virtual void | InitFrameInterval () |
| void | SetLength (std::chrono::seconds len) |
| void | SetFramesPlayed (uint64_t played) |
| void | SetEof (EofState eof) |
| void | SetWatchingRecording (bool mode) |
| void | SetKeyframeDistance (int keyframedistance) |
| virtual void | SetVideoParams (int w, int h, double fps, float aspect, bool ForceUpdate, int ReferenceFrames, FrameScanType=kScan_Ignore, const QString &codecName=QString()) |
| void | SetFileLength (std::chrono::seconds total, int frames) |
| void | SetDuration (std::chrono::seconds duration) |
| void | SetFrameRate (double fps) |
| QSize | GetVideoBufferSize (void) const |
| QSize | GetVideoSize (void) const |
| float | GetVideoAspect (void) const |
| float | GetFrameRate (void) const |
| bool | IsAudioNeeded (void) |
| int | GetFreeVideoFrames (void) const |
| Returns the number of frames available for decoding onto. More... | |
| int | GetFFRewSkip (void) const |
| float | GetPlaySpeed (void) const |
| AudioPlayer * | GetAudio (void) |
| float | GetNextPlaySpeed (void) const |
| std::chrono::seconds | GetLength (void) const |
| uint64_t | GetTotalFrameCount (void) const |
| uint64_t | GetCurrentFrameCount (void) const |
| uint64_t | GetFramesPlayed (void) const |
| virtual uint64_t | GetBookmark (void) |
| QString | GetError (void) const |
| QString | GetEncodingType (void) const |
| QString | GetXDS (const QString &key) const |
| bool | IsPaused (void) const |
| bool | GetLimitKeyRepeat (void) const |
| EofState | GetEof (void) const |
| bool | IsErrored (void) const |
| bool | IsPlaying (std::chrono::milliseconds wait_in_msec=0ms, bool wait_for=true) const |
| bool | AtNormalSpeed (void) const |
| bool | IsReallyNearEnd (void) const |
| Returns true iff really near end of recording. More... | |
| bool | IsNearEnd (void) |
| Returns true iff near end of recording. More... | |
| bool | HasTVChainNext (void) const |
| bool | IsWatchingInprogress (void) const |
| virtual InteractiveTV * | GetInteractiveTV () |
| MythVideoOutput * | GetVideoOutput (void) |
| virtual bool | SwitchTitle (int) |
| virtual bool | NextTitle (void) |
| virtual bool | PrevTitle (void) |
| virtual bool | SwitchAngle (int) |
| virtual bool | NextAngle (void) |
| virtual bool | PrevAngle (void) |
| MythVideoFrame * | GetNextVideoFrame (void) |
| Removes a frame from the available queue for decoding onto. More... | |
| void | DeLimboFrame (MythVideoFrame *frame) |
| virtual void | ReleaseNextVideoFrame (MythVideoFrame *buffer, std::chrono::milliseconds timecode, bool wrap=true) |
| Places frame on the queue of frames ready for display. More... | |
| void | DiscardVideoFrame (MythVideoFrame *buffer) |
| Places frame in the available frames queue. More... | |
| void | DiscardVideoFrames (bool KeyFrame, bool Flushed) |
| Places frames in the available frames queue. More... | |
| DecoderBase * | GetDecoder (void) |
| Returns the stream decoder currently in use. More... | |
| virtual bool | HasReachedEof (void) const |
| void | SetDisablePassThrough (bool disabled) |
| void | ForceSetupAudioStream (void) |
| virtual bool | PrepareAudioSample (std::chrono::milliseconds &timecode) |
| virtual CC708Reader * | GetCC708Reader (uint=0) |
| virtual CC608Reader * | GetCC608Reader (uint=0) |
| virtual SubtitleReader * | GetSubReader (uint=0) |
| virtual TeletextReader * | GetTeletextReader (uint=0) |
| void | EnableForcedSubtitles (bool enable) |
| bool | GetAllowForcedSubtitles (void) const |
| virtual void | tracksChanged (uint TrackType) |
| void | CheckTVChain () |
| void | FileChangedCallback () |
| virtual int | GetNumChapters (void) |
| virtual int | GetCurrentChapter (void) |
| virtual void | GetChapterTimes (QList< std::chrono::seconds > ×) |
| virtual int | GetNumTitles (void) const |
| virtual int | GetCurrentTitle (void) const |
| virtual std::chrono::seconds | GetTitleDuration (int) const |
| virtual QString | GetTitleName (int) const |
| virtual int | GetNumAngles (void) const |
| virtual int | GetCurrentAngle (void) const |
| virtual QString | GetAngleName (int) const |
| virtual bool | IsInStillFrame () const |
| bool | PosMapFromEnc (uint64_t start, frm_pos_map_t &posMap, frm_pos_map_t &durMap) |
| void | SaveTotalDuration (void) |
| void | ResetTotalDuration (void) |
| void | SaveTotalFrames (void) |
| void | SetErrored (const QString &reason) |
Additional Inherited Members | |
Signals inherited from MythPlayer | |
| void | CheckCallbacks () |
| void | SeekingSlow (int Count) |
| void | SeekingComplete () |
| void | SeekingDone () |
| void | PauseChanged (bool Paused) |
| void | RequestResetCaptions () |
Static Public Attributes inherited from MythPlayer | |
| static const int | kNightModeBrightenssAdjustment = 10 |
| static const int | kNightModeContrastAdjustment = 10 |
| static const double | kInaccuracyNone = 0 |
| static const double | kInaccuracyDefault = 0.1 |
| static const double | kInaccuracyEditor = 0.5 |
| static const double | kInaccuracyFull = -1.0 |
| static const double | kSeekToEndOffset = 1.0 |
Protected Member Functions inherited from MythPlayer | |
| void | OpenDummy (void) |
| virtual long long | CalcMaxFFTime (long long ff, bool setjump=true) const |
| CalcMaxFFTime(ffframes): forward ffframes forward. More... | |
| long long | CalcRWTime (long long rw) const |
| CalcRWTime(rw): rewind rw frames back. More... | |
| std::chrono::milliseconds | TranslatePositionFrameToMs (uint64_t position, bool use_cutlist) const |
| uint64_t | TranslatePositionMsToFrame (std::chrono::milliseconds position, bool use_cutlist) const |
| uint64_t | TranslatePositionAbsToRel (uint64_t position) const |
| uint64_t | TranslatePositionRelToAbs (uint64_t position) const |
| float | ComputeSecs (uint64_t position, bool use_cutlist) const |
| uint64_t | FindFrame (float offset, bool use_cutlist) const |
| void | SetAutoCommercialSkip (CommSkipMode autoskip) |
| void | SkipCommercials (int direction) |
| void | SetCommBreakMap (const frm_dir_map_t &NewMap) |
| CommSkipMode | GetAutoCommercialSkip (void) |
| virtual void | ResetPlaying (bool resetframes=true) |
| virtual void | StopPlaying (void) |
| bool | PauseDecoder (void) |
| void | UnpauseDecoder (void) |
| bool | Pause (void) |
| bool | Play (float speed=1.0, bool normal=true, bool unpauseaudio=true) |
| virtual bool | FastForward (float seconds) |
| virtual bool | Rewind (float seconds) |
| virtual bool | JumpToFrame (uint64_t frame) |
| void | JumpChapter (int chapter) |
| virtual bool | PrebufferEnoughFrames (int min_buffers=0) |
| void | SetBuffering (bool new_buffering) |
| virtual void | VideoEnd (void) |
| virtual void | DecoderStart (bool start_paused) |
| virtual void | DecoderLoop (bool pause) |
| virtual void | DecoderEnd (void) |
| virtual void | DecoderPauseCheck (void) |
| virtual void | AudioEnd (void) |
| bool | GetEditMode (void) const |
| bool | IsInDelete (uint64_t frame) |
| bool | FlagIsSet (PlayerFlags arg) |
| void | SetPlayingInfo (const ProgramInfo &pginfo) |
| void | SetPlaying (bool is_playing) |
| void | ResetErrored (void) |
| void | PauseVideo (void) |
| void | UnpauseVideo (void) |
| void | PauseBuffer (void) |
| void | UnpauseBuffer (void) |
| virtual void | CreateDecoder (TestBufferVec &TestBuffer) |
| void | SetDecoder (DecoderBase *dec) |
| Sets the stream decoder, deleting any existing recorder. More... | |
| const DecoderBase * | GetDecoder (void) const |
| Returns the stream decoder currently in use. More... | |
| virtual void | DoFFRewSkip (void) |
| bool | DecoderGetFrame (DecodeType decodetype, bool unsafe=false) |
| bool | DoGetFrame (DecodeType DecodeType) |
| Get one frame from the decoder. More... | |
| bool | UpdateFFRewSkip (float ffrewScale=1.0F) |
| virtual void | ChangeSpeed (void) |
| bool | DoFastForward (uint64_t frames, double inaccuracy) |
| bool | DoRewind (uint64_t frames, double inaccuracy) |
| void | DoJumpToFrame (uint64_t frame, double inaccuracy) |
| void | WaitForSeek (uint64_t frame, uint64_t seeksnap_wanted) |
| void | ClearAfterSeek (bool clearvideobuffers=true) |
| This is to support seeking... More... | |
| virtual bool | DoJumpChapter (int chapter) |
| virtual int64_t | GetChapter (int chapter) |
| void | WrapTimecode (std::chrono::milliseconds &timecode, TCTypes tc_type) |
| void | SetFrameInterval (FrameScanType scan, double frame_period) |
Protected Attributes inherited from MythPlayer | |
| DecoderBase * | m_decoder {nullptr} |
| QRecursiveMutex | m_decoderChangeLock |
| MythVideoOutput * | m_videoOutput {nullptr} |
| const VideoFrameTypes * | m_renderFormats { &MythVideoFrame::kDefaultRenderFormats } |
| PlayerContext * | m_playerCtx {nullptr} |
| MythDecoderThread * | m_decoderThread {nullptr} |
| QThread * | m_playerThread {nullptr} |
| PlayerFlags | m_playerFlags |
| QWaitCondition | m_decoderThreadPause |
| QWaitCondition | m_decoderThreadUnpause |
| QMutex | m_decoderPauseLock |
| QMutex | m_decoderSeekLock |
| QMutex | m_bufferPauseLock |
| QMutex | m_videoPauseLock |
| QMutex | m_pauseLock |
| int64_t | m_decoderSeek {-1} |
| bool | m_totalDecoderPause {false} |
| bool | m_decoderPaused {false} |
| bool | m_inJumpToProgramPause {false} |
| bool | m_pauseDecoder {false} |
| bool | m_unpauseDecoder {false} |
| bool volatile | m_killDecoder {false} |
| bool | m_decodeOneFrame {false} |
| bool | m_renderOneFrame {false} |
| bool | m_needNewPauseFrame {false} |
| bool | m_bufferPaused {false} |
| bool | m_videoPaused {false} |
| bool | m_allPaused {false} |
| bool | m_playing {false} |
| QWaitCondition | m_playingWaitCond |
| QMutex | m_vidExitLock |
| QMutex | m_playingLock |
| QMutex | m_errorLock |
| QString | m_errorMsg |
| Reason why NVP exited with a error. More... | |
| int | m_errorType {kError_None} |
| bool | m_liveTV {false} |
| bool | m_watchingRecording {false} |
| bool | m_transcoding {false} |
| bool | m_hasFullPositionMap {false} |
| bool | m_limitKeyRepeat {false} |
| int | m_jumpChapter {0} |
| uint64_t | m_bookmarkSeek {0} |
| int | m_endExitPrompt |
| long long | m_ffTime {0} |
| If m_ffTime>0, number of frames to seek forward. More... | |
| int | m_videobufRetries {0} |
| How often we have tried to wait for a video output buffer and failed. More... | |
| uint64_t | m_framesPlayed {0} |
| uint64_t | m_totalFrames {0} |
| std::chrono::seconds | m_totalLength {0s} |
| std::chrono::seconds | m_totalDuration {0s} |
| long long | m_rewindTime {0} |
| std::chrono::milliseconds | m_latestVideoTimecode {-1ms} |
| MythPlayerAVSync | m_avSync |
| double | m_videoFrameRate {29.97} |
| Video (input) Frame Rate (often inaccurate) More... | |
| QString | m_codecName |
| Codec Name - used by playback profile. More... | |
| QSize | m_videoDispDim {0,0} |
| Video (input) width & height. More... | |
| QSize | m_videoDim {0,0} |
| Video (input) buffer width & height. More... | |
| int | m_maxReferenceFrames {0} |
| Number of reference frames used in the video stream. More... | |
| float | m_videoAspect {4.0F / 3.0F} |
| Video (input) Apect Ratio. More... | |
| float | m_forcedVideoAspect {-1} |
| uint | m_keyframeDist {30} |
| Video (input) Number of frames between key frames (often inaccurate) More... | |
| bool | m_buffering {false} |
| QTime | m_bufferingStart |
| QTime | m_bufferingLastMsg |
| uint | m_vbiMode {VBIMode::None} |
| VBI decoder to use. More... | |
| int | m_ttPageNum {0x888} |
| VBI page to display when in PAL vbimode. More... | |
| SubtitleReader | m_subReader |
| TeletextReader | m_ttxReader |
| bool | m_captionsEnabledbyDefault {false} |
| This allows us to enable captions/subtitles later if the streams are not immediately available when the video starts playing. More... | |
| bool | m_enableForcedSubtitles {false} |
| bool | m_disableForcedSubtitles {false} |
| bool | m_allowForcedSubtitles {true} |
| CC608Reader | m_cc608 |
| CC708Reader | m_cc708 |
| AudioPlayer | m_audio |
| CommBreakMap | m_commBreakMap |
| bool | m_forcePositionMapSync {false} |
| DeleteMap | m_deleteMap |
| QRecursiveMutex | m_decoderLock |
| Lock for next_play_speed and next_normal_speed. More... | |
| float | m_nextPlaySpeed {1.0F} |
| float | m_playSpeed {1.0F} |
| std::chrono::microseconds | m_frameInterval {microsecondsFromFloat(1000000.0F / 30)} |
| always adjusted for play_speed More... | |
| int | m_fpsMultiplier {1} |
| used to detect changes More... | |
| int | m_ffrewSkip {1} |
| int | m_ffrewAdjust {0} |
| offset after last skip More... | |
| float | m_ffrewScale {1.0F} |
| scale skip for large gops More... | |
| bool | m_fileChanged {false} |
| bool | m_nextNormalSpeed {true} |
| bool | m_normalSpeed {true} |
| tctype_arr | m_tcWrap {} |
| std::chrono::milliseconds | m_savedAudioTimecodeOffset {0ms} |
| bool | m_isDummy {false} |
| int | m_bufferingCounter {0} |
Definition at line 7 of file mythtranscodeplayer.h.
|
explicit |
Definition at line 8 of file mythtranscodeplayer.cpp.
| void MythTranscodePlayer::InitForTranscode | ( | ) |
Definition at line 24 of file mythtranscodeplayer.cpp.
| void MythTranscodePlayer::SetCutList | ( | const frm_dir_map_t & | CutList | ) |
Definition at line 44 of file mythtranscodeplayer.cpp.
| void MythTranscodePlayer::SetTranscoding | ( | bool | Transcoding | ) |
Definition at line 13 of file mythtranscodeplayer.cpp.
Definition at line 49 of file mythtranscodeplayer.cpp.
Referenced by VideoDecodeBuffer::run().