|
MythTV master
|
#include <libmythtv/io/mythavformatwriter.h>
Public Member Functions | |
| MythAVFormatWriter ()=default | |
| ~MythAVFormatWriter () override | |
| bool | Init (void) override |
| bool | OpenFile (void) override |
| bool | CloseFile (void) override |
| int | WriteVideoFrame (MythVideoFrame *Frame) override |
| int | WriteAudioFrame (unsigned char *Buffer, int FrameNumber, std::chrono::milliseconds &Timecode) override |
| int | WriteTextFrame (int VBIMode, unsigned char *Buffer, int Length, std::chrono::milliseconds Timecode, int PageNumber) override |
| int | WriteSeekTable (void) override |
| bool | SwitchToNextFile (void) override |
| bool | NextFrameIsKeyFrame (void) |
| bool | ReOpen (const QString &Filename) |
Public Member Functions inherited from MythMediaWriter | |
| MythMediaWriter ()=default | |
| virtual | ~MythMediaWriter ()=default |
| virtual bool | Init (void)=0 |
| virtual bool | OpenFile (void)=0 |
| virtual bool | CloseFile (void)=0 |
| virtual int | WriteVideoFrame (MythVideoFrame *Frame)=0 |
| virtual int | WriteAudioFrame (unsigned char *Buffer, int FrameNumber, std::chrono::milliseconds &Timecode)=0 |
| virtual int | WriteTextFrame (int VBIMode, unsigned char *Buffer, int Length, std::chrono::milliseconds Timecode, int PageNumber)=0 |
| virtual int | WriteSeekTable (void)=0 |
| virtual bool | SwitchToNextFile (void)=0 |
| void | SetFilename (const QString &FileName) |
| void | SetContainer (const QString &Cont) |
| void | SetVideoCodec (const QString &Codec) |
| void | SetVideoBitrate (int Bitrate) |
| void | SetWidth (int Width) |
| void | SetHeight (int Height) |
| void | SetAspect (float Aspect) |
| void | SetFramerate (double Rate) |
| void | SetKeyFrameDist (int Dist) |
| void | SetAudioCodec (const QString &Codec) |
| void | SetAudioBitrate (int Bitrate) |
| void | SetAudioChannels (int Channels) |
| void | SetAudioFrameRate (int Rate) |
| void | SetAudioFormat (AudioFormat Format) |
| void | SetThreadCount (int Count) |
| void | SetTimecodeOffset (std::chrono::milliseconds Offset) |
| void | SetEncodingPreset (const QString &Preset) |
| void | SetEncodingTune (const QString &Tune) |
| long long | GetFramesWritten (void) const |
| std::chrono::milliseconds | GetTimecodeOffset (void) const |
| int | GetAudioFrameSize (void) const |
Private Member Functions | |
| bool | openFileHelper () |
| AVStream * | AddVideoStream (void) |
| bool | OpenVideo (void) |
| AVStream * | AddAudioStream (void) |
| bool | OpenAudio (void) |
| AVFrame * | AllocPicture (enum AVPixelFormat PixFmt) |
| void | Cleanup (void) |
| AVRational | GetCodecTimeBase (void) |
Static Private Member Functions | |
| static bool | FindAudioFormat (AVCodecContext *Ctx, const AVCodec *Codec, AVSampleFormat Format) |
Private Attributes | |
| MythAVFormatBuffer * | m_avfBuffer { nullptr } |
| MythMediaBuffer * | m_buffer { nullptr } |
| AVOutputFormat | m_fmt { } |
| AVFormatContext * | m_ctx { nullptr } |
| MythCodecMap | m_codecMap |
| AVStream * | m_videoStream { nullptr } |
| const AVCodec * | m_avVideoCodec { nullptr } |
| AVStream * | m_audioStream { nullptr } |
| const AVCodec * | m_avAudioCodec { nullptr } |
| AVFrame * | m_picture { nullptr } |
| AVFrame * | m_audPicture { nullptr } |
| unsigned char * | m_audioInBuf { nullptr } |
| unsigned char * | m_audioInPBuf { nullptr } |
| QList< std::chrono::milliseconds > | m_bufferedVideoFrameTimes |
| QList< int > | m_bufferedVideoFrameTypes |
| QList< std::chrono::milliseconds > | m_bufferedAudioFrameTimes |
Additional Inherited Members | |
Protected Attributes inherited from MythMediaWriter | |
| QString | m_filename |
| QString | m_container |
| QString | m_videoCodec |
| int | m_videoBitrate { 800000 } |
| int | m_width { 0 } |
| int | m_height { 0 } |
| float | m_aspect { 1.333333F } |
| double | m_frameRate { 29.97 } |
| int | m_keyFrameDist { 15 } |
| QString | m_audioCodec |
| int | m_audioBitrate { 0 } |
| int | m_audioChannels { 2 } |
| int | m_audioFrameRate { 48000 } |
| AudioFormat | m_audioFormat { FORMAT_S16 } |
| int | m_audioFrameSize { -1 } |
| int | m_encodingThreadCount { 1 } |
| long long | m_framesWritten { 0 } |
| std::chrono::milliseconds | m_startingTimecodeOffset { -1ms } |
| QString | m_encodingPreset |
| QString | m_encodingTune |
Definition at line 17 of file mythavformatwriter.h.
|
default |
|
override |
Definition at line 46 of file mythavformatwriter.cpp.
|
private |
Definition at line 567 of file mythavformatwriter.cpp.
Referenced by Init().
|
private |
Definition at line 420 of file mythavformatwriter.cpp.
Referenced by Init().
|
private |
Definition at line 677 of file mythavformatwriter.cpp.
Referenced by OpenVideo().
|
private |
Definition at line 177 of file mythavformatwriter.cpp.
Referenced by OpenFile(), and ~MythAVFormatWriter().
|
overridevirtual |
Implements MythMediaWriter.
Definition at line 185 of file mythavformatwriter.cpp.
Referenced by ~MythAVFormatWriter().
|
staticprivate |
Definition at line 601 of file mythavformatwriter.cpp.
Referenced by OpenAudio().
|
private |
Definition at line 699 of file mythavformatwriter.cpp.
Referenced by AddAudioStream(), and AddVideoStream().
|
overridevirtual |
Implements MythMediaWriter.
Definition at line 58 of file mythavformatwriter.cpp.
| bool MythAVFormatWriter::NextFrameIsKeyFrame | ( | void | ) |
Definition at line 200 of file mythavformatwriter.cpp.
|
private |
Definition at line 624 of file mythavformatwriter.cpp.
Referenced by Init().
|
overridevirtual |
Implements MythMediaWriter.
Definition at line 133 of file mythavformatwriter.cpp.
|
private |
Definition at line 143 of file mythavformatwriter.cpp.
Referenced by OpenFile().
|
private |
Definition at line 538 of file mythavformatwriter.cpp.
Referenced by Init().
| bool MythAVFormatWriter::ReOpen | ( | const QString & | Filename | ) |
Definition at line 412 of file mythavformatwriter.cpp.
|
overridevirtual |
Implements MythMediaWriter.
Definition at line 407 of file mythavformatwriter.cpp.
|
overridevirtual |
Implements MythMediaWriter.
Definition at line 289 of file mythavformatwriter.cpp.
|
overridevirtual |
Implements MythMediaWriter.
Definition at line 402 of file mythavformatwriter.cpp.
|
overridevirtual |
Implements MythMediaWriter.
Definition at line 396 of file mythavformatwriter.cpp.
|
overridevirtual |
Implements MythMediaWriter.
Definition at line 206 of file mythavformatwriter.cpp.
|
private |
Definition at line 58 of file mythavformatwriter.h.
Referenced by OpenAudio(), WriteAudioFrame(), and ~MythAVFormatWriter().
|
private |
Definition at line 59 of file mythavformatwriter.h.
Referenced by OpenAudio(), WriteAudioFrame(), and ~MythAVFormatWriter().
|
private |
Definition at line 54 of file mythavformatwriter.h.
Referenced by Init(), OpenAudio(), and WriteAudioFrame().
|
private |
Definition at line 57 of file mythavformatwriter.h.
Referenced by OpenAudio(), WriteAudioFrame(), and ~MythAVFormatWriter().
|
private |
Definition at line 55 of file mythavformatwriter.h.
Referenced by Init().
|
private |
Definition at line 47 of file mythavformatwriter.h.
Referenced by Cleanup(), CloseFile(), and openFileHelper().
|
private |
Definition at line 53 of file mythavformatwriter.h.
Referenced by AddAudioStream(), GetCodecTimeBase(), Init(), and WriteAudioFrame().
|
private |
Definition at line 48 of file mythavformatwriter.h.
Referenced by Cleanup(), openFileHelper(), and ReOpen().
|
private |
Definition at line 62 of file mythavformatwriter.h.
Referenced by WriteAudioFrame().
|
private |
Definition at line 60 of file mythavformatwriter.h.
Referenced by WriteVideoFrame().
|
private |
Definition at line 61 of file mythavformatwriter.h.
Referenced by NextFrameIsKeyFrame(), and WriteVideoFrame().
|
private |
Definition at line 51 of file mythavformatwriter.h.
Referenced by AddAudioStream(), AddVideoStream(), OpenAudio(), OpenVideo(), WriteAudioFrame(), and WriteVideoFrame().
|
private |
Definition at line 50 of file mythavformatwriter.h.
Referenced by AddAudioStream(), AddVideoStream(), CloseFile(), Init(), openFileHelper(), WriteAudioFrame(), and WriteVideoFrame().
|
private |
Definition at line 49 of file mythavformatwriter.h.
Referenced by Init(), and openFileHelper().
|
private |
Definition at line 56 of file mythavformatwriter.h.
Referenced by OpenVideo(), WriteVideoFrame(), and ~MythAVFormatWriter().
|
private |
Definition at line 52 of file mythavformatwriter.h.
Referenced by Init(), OpenVideo(), WriteAudioFrame(), and WriteVideoFrame().