IMVMultiFileWriter
The IMVMultiFileWriter Interface contains methods an properties to control the MV Multi File Writer filter.
Methods:
| AudioEncoderDisplayName | Displayname from the audio encoder. |
| CurrentFileDuration | Duration since the filter records into the current output file. |
| CurrentFileSize | Size of the current output file in bytes. |
| CurrentOutputFile | Path of the curent output file. |
| CurrentVideoFrameCount | Count of recorded video frames from the current files. |
| FileNameOption | How to create the output file name. |
| FilePrefix | The prefix for the output files. |
| GetAudioEncoderInterfaces | Get the IUnknown interface from the two audio encoders. |
| GetAVIMultiplexerInterfaces | Get the IUnknown interface from the two avi multiplexer. |
| GetFreeDiskSpace | Get the total and available disk space in MB. |
| GetVideoEncoderInterfaces | Get the IUnknown interface from the two video encoders. |
| NewFileOnStop | New file on stop signal. |
| NextFileOption | Create a new output file options. |
| NextFilePeriod | The time period of an output file. |
| NextFileSize | The maximum size of an output file. |
| NextFileTimeOption | Create a new output file on time option. |
| NextOutputFile | Switch to the next output file. |
| OutputFolder | The folder for the output video files. |
| Recording | Recording status from the filter. |
| RenderCaptureGraphs | Render the hidden recording filter graphs. |
| StartRecording | Start recording into AVI files. |
| StopRecording | Stop Recording. |
| VideoEncoderDisplayName | Displayname from the video encoder. |
Header file:
IMVMultiFileWriter.h
Interface definition language file: IMVMultiFileWriter.idl
Typelib: MVMultiFileWriter
Interface ID: IID_IMVMultiFileWriter
Property IMVMultiFileWriter::AudioEncoderDisplayName
Declaration: Property Get/Put AudioEncoderDisplayName As StringDisplayname from the audio encoder.
C Prototype:HRESULT put_AudioEncoderDisplayName(BSTR newVal);
HRESULT get_AudioEncoderDisplayName(BSTR *pVal);
Property IMVMultiFileWriter::CurrentFileDuration
Declaration: Property Get CurrentFileDuration As DoubleDuration since the filter records into the current output file.
C Prototype:HRESULT get_CurrentFileDuration(DOUBLE *pVal);
Property IMVMultiFileWriter::CurrentFileSize
Declaration: Property Get CurrentFileSize As DoubleSize of the current output file in bytes.
C Prototype:HRESULT get_CurrentFileSize(DOUBLE *pVal);
Property IMVMultiFileWriter::CurrentOutputFile
Declaration: Property Get CurrentOutputFile As StringPath of the curent output file.
C Prototype:HRESULT get_CurrentOutputFile(BSTR *pVal);
Property IMVMultiFileWriter::CurrentVideoFrameCount
Declaration: Property Get CurrentVideoFrameCount As LongCount of recorded video frames from the current files.
C Prototype:HRESULT get_CurrentVideoFrameCount(LONG *pVal);
Property IMVMultiFileWriter::FileNameOption
Declaration: Property Get/Put FileNameOption As LongOutput file name option.
C Prototype:
Option Value Description MV_OUTPUT_FILENAME_PREFIX_INDEX 0
Create the output file name with the FilePrefix and an index MV_OUTPUT_FILENAME_DATE_INDEX 1
Create the output file name with the current date and an index. MV_OUTPUT_FILENAME_DATE_TIME 2
Create the output file name with the current date, time and an index. HRESULT put_FileNameOption(LONG newVal);
HRESULT get_FileNameOption(LONG *pVal);
Property IMVMultiFileWriter::FilePrefix
Declaration: Property Get/Put FilePrefix As StringThe prefix for the output files.
C Prototype:HRESULT put_FilePrefix(BSTR newVal);
HRESULT get_FilePrefix(BSTR *pVal);
Method IMVMultiFileWriter::GetAudioEncoderInterfaces
Declaration: Sub GetAudioEncoderInterfaces(UnkFirst As Unknown, UnkSecond As Unknown)Get the IUnknown interface from the two audio encoders. The filter uses two equal hidden filter graphs to write the media streams. Setup both encoder whith the same parameters to get consistently output files.
Parameter:
C Prototype:
UnkFirst Interface from the first audio encoder filter. UnkSecond Interface from the second audio encoder. HRESULT GetAudioEncoderInterfaces(IUnknown* UnkFirst, IUnknown* UnkSecond);
Method IMVMultiFileWriter::GetAVIMultiplexerInterfaces
Declaration: Sub GetAVIMultiplexerInterfaces(UnkFirst As Unknown, UnkSecond As Unknown)Get the IUnknown interface from the two avi multiplexer. The filter uses two equal hidden filter graphs to write the media streams. Setup both multiplexer whith the same parameters to get consistently output files.
Parameter:
C Prototype:
UnkFirst Interface from the first AVI multiplexer filter. UnkSecond Interface from the second AVI multiplexer filter. HRESULT GetAVIMultiplexerInterfaces(IUnknown* UnkFirst, IUnknown* UnkSecond);
Method IMVMultiFileWriter::GetFreeDiskSpace
Declaration: Sub GetFreeDiskSpace(FreeSpace As Double, DiskSize As Double)Get the total and available disk space in MB.
Parameter:
C Prototype:
FreeSpace Free available disk space. DiskSize Total available disk space. HRESULT GetFreeDiskSpace(DOUBLE* FreeSpace, DOUBLE* DiskSize);
Method IMVMultiFileWriter::GetVideoEncoderInterfaces
Declaration: Sub GetVideoEncoderInterfaces(UnkFirst As Unknown, UnkSecond As Unknown)Get the IUnknown interface from the two video encoders. The filter uses two equal hidden filter graphs to write the media streams. Setup both encoder whith the same parameters to get consistently output files
Parameter:
C Prototype:
UnkFirst Interface from the first video encoder filter. UnkSecond Interface from the second video encoder filter. HRESULT GetVideoEncoderInterfaces(IUnknown* UnkFirst, IUnknown* UnkSecond);
Property IMVMultiFileWriter::NewFileOnStop
Declaration: Property Get/Put NewFileOnStop As BooleanNew file on stop signal.
Parameter:
C Prototype:
- - HRESULT put_NewFileOnStop(VARIANT_BOOL newVal);
HRESULT get_NewFileOnStop(VARIANT_BOOL *pVal);
Property IMVMultiFileWriter::NextFileOption
Declaration: Property Get/Put NextFileOption As LongThe new output file option property could be one or more of the following values.
C Prototype:
Option Value Description MV_NEXT_FILE_MANUAL 1
Next output file on calling the NextOutputFile method MV_NEXT_FILE_SIZE 2
Next output file if the current file size is greater than the NextFileSize property. MV_NEXT_FILE_TIME 4
Next output on the time option from the NextFileTimeOption property. HRESULT put_NextFileOption(LONG newVal);
HRESULT get_NextFileOption(LONG *pVal);
Property IMVMultiFileWriter::NextFilePeriod
Declaration: Property Get/Put NextFilePeriod As LongThe time period of an output file.
C Prototype:HRESULT put_NextFilePeriod(LONG newVal);
HRESULT get_NextFilePeriod(LONG *pVal);
Property IMVMultiFileWriter::NextFileSize
Declaration: Property Get/Put NextFileSize As LongThe maximum size of an output file in MByte. Minimum value is 1 MByte.
C Prototype:HRESULT put_NextFileSize(LONG newVal);
HRESULT get_NextFileSize(LONG *pVal);
Property IMVMultiFileWriter::NextFileTimeOption
Declaration: Property Get/Put NextFileTimeOption As LongCreate a new output file on time option.
C Prototype:
Option Value Description MV_NEXT_FILE_TIME_PERIOD 0
Next output file if the current file recording time is greater than the NextFilePeriod property. MV_NEXT_FILE_TIME_NEW_HOUR 1
Next output file on every new hour. MV_NEXT_FILE_TIME_NEW_DAY 2
Next output file on every new day. HRESULT put_NextFileTimeOption(LONG newVal);
HRESULT get_NextFileTimeOption(LONG *pVal);
Method IMVMultiFileWriter::NextOutputFile
Declaration: Sub NextOutputFileSwitch to the next output file.
C Prototype:HRESULT NextOutputFile();
Property IMVMultiFileWriter::OutputFolder
Declaration: Property Get/Put OutputFolder As StringThe folder for the output video files.
C Prototype:HRESULT put_OutputFolder(BSTR newVal);
HRESULT get_OutputFolder(BSTR *pVal);
Property IMVMultiFileWriter::Recording
Declaration: Property Get Recording As BooleanRecording status from the filter.
C Prototype:HRESULT get_Recording(VARIANT_BOOL *pVal);
Method IMVMultiFileWriter::RenderCaptureGraphs
Declaration: Sub RenderCaptureGraphsRender the hidden recording filter graphs.
C Prototype:HRESULT RenderCaptureGraphs();
Method IMVMultiFileWriter::StartRecording
Declaration: Sub StartRecordingStart recording into AVI files.
C Prototype:HRESULT StartRecording();
Method IMVMultiFileWriter::StopRecording
Declaration: Sub StopRecordingStop recording.
C Prototype:HRESULT StopRecording();
Property IMVMultiFileWriter::VideoEncoderDisplayName
Declaration: Property Get/Put VideoEncoderDisplayName As StringDisplayname from the video encoder.
C Prototype:HRESULT put_VideoEncoderDisplayName(BSTR newVal);
HRESULT get_VideoEncoderDisplayName(BSTR *pVal);