58 : m_virtualfile(nullptr)
69 return std::make_shared<DiskIO>();
74 return std::make_shared<VcdIO>();
80 return std::make_shared<DvdIO>();
86 return std::make_shared<BlurayIO>();
91 return std::make_shared<DiskIO>();
127 static const std::string empty;
const std::string & path() const
Path to source file (without file name)
std::string m_path
Source path (directory without file name)
LPVIRTUALFILE virtualfile()
Get virtual file object.
LPVIRTUALFILE m_virtualfile
Virtual file object of current file.
void set_virtualfile(LPVIRTUALFILE virtualfile)
Set the virtual file object.
virtual VIRTUALTYPE type() const =0
Get type of the virtual file.
FileIO()
Create FileIO object.
static std::shared_ptr< FileIO > alloc(VIRTUALTYPE type)
Allocate the correct object for type().
const std::string & filename() const
Get source filename.
const std::string & remove_filename(std::string *filepath)
Remove filename from path. Handy dirname alternative.
FFMPEGFS_PARAMS params
FFmpegfs command line parameters.
Main include for FFmpegfs project.
VIRTUALTYPE
Virtual file types enum.
@ DISK
Regular disk file to transcode.
@ BLURAY
Blu-ray disk file.
int64_t m_segment_duration
Duration of one HLS segment file, in AV_TIME_BASE fractional seconds.
std::string m_destfile
Name and path of destination file.
std::string m_origfile
Sanitised name and path of original file.
uint32_t get_segment_count() const
Number of HLS segments in set.
int64_t m_duration
Track/chapter duration, in AV_TIME_BASE fractional seconds.
Video CD and Super Video CD I/O.