Include
#include "ILMDVRSink.h"
Syntax
C Syntax | HRESULT ILMDVRSink_GetTimedFragmentAlignment(pILMDVRSink, startOffset, endOffset, timeThreshold, pAlignedStartOffset, pAlignedEndOffset, pAlignedDuration) | |
C++ Syntax | HRESULT GetTimedFragmentAlignment(startOffset, endOffset, timeThreshold, pAlignedStartOffset, pAlignedEndOffset, pAlignedDuration) |
ILMDVRSink *pILMDVRSink; | pointer to an interface | |
[in]double startOffset; | starting byte offset | |
[in]double endOffset; | ending byte offset | |
[in]double timeThreshold; | minimum time of the fragments to find | |
[out]double *pAlignedStartOffset; | pointer storing offset of first transport fragment | |
[out]double *pAlignedEndOffset; | pointer storing the time of the transport fragments found |
Summary
Takes the user-supplied byte range and scans for transport fragment boundaries.
Parameters
Parameter | Description | |
---|---|---|
pILMDVRSink; | A pointer to an ILMDVRSink interface. | |
startOffset; | Specifies the byte offset at which to begin scanning for transport fragments. | |
endOffset; | Specifies the byte offset at which to stop scanning for transport fragments. | |
timeThreshold; | Specifies the minimum time (in seconds) of the fragments to find. | |
pAlignedStartOffset; | A pointer to a double variable, storing the offset of the start of the first transport fragment found. | |
pAlignedEndOffset; | A pointer to a double variable, storing the offset of the end of the last transport fragment. | |
pAlignedDuration; | A pointer to a double variable, storing the time (in seconds), of the transport fragments found. |
Remarks
Takes the user-supplied byte range and scans for transport fragment boundaries. It will only return the minimum number of fragments that meet or exceed the timeThreshold.
Use this function along with ILMDVRSink::CopyBufferToFile to save a completely intact MPEG transport fragment.
Set up the MPEG multiplexer used for recording to DVR by calling put_OutputType(Mpg2MxT_OutputType_HLS). Doing so guarantees that fragment boundaries start with synchronization frames. Specify the boundary time interval by calling put_ResyncInterval(intervalTime).
Returns
S_OK | No error. | |
S_FALSE | No transport fragment found: pAlignedStartOffset and pAlignedEndOffset are set equal to startOffset, and indicate an empty search. |
Required DLLs and Libraries
LMDVRSink
For a listing of the exact DLLs and Libraries needed, based on the toolkit version, refer to Files To Be Included With Your Application.
Win32, x64
Example
For a C++ example, refer to ILMDVRSink::GetTimedFragmentAlignment Example For C++
ILMDVRSink::GetAvailabilityInfo
Introduction to the LEADTOOLS MPEG-2 Transport Module
How to Use the DVR Sink Object to Control Capture Buffer Settings (c++)
How to Set Capture Buffers on More Than One Physical Disk
How to Copy Buffered DVR Data to a New File
Example
Raster .NET | C API | C++ Class Library | JavaScript HTML5
Document .NET | C API | C++ Class Library | JavaScript HTML5
Medical .NET | C API | C++ Class Library | JavaScript HTML5
Medical Web Viewer .NET