Navigation
API > API/Plugins > API/Plugins/TmvMedia
Abstract interface for demuxing media samples from a container.
Workflow:
Open() the container (from file path or from memory buffer).
GetTrackCount() / GetTrackInfo() to enumerate available tracks.
ReadSample() to iterate through samples on a given track.
Seek() to jump to a particular time or keyframe.
Close() when done.
The demuxer extracts raw coded samples (access units) from the container that can then be fed into ITmvMediaDecoder for decoding.
Thread safety: implementations are NOT internally synchronized. Callers must serialize all calls to the same demuxer instance (e.g. with a mutex).
| Name | ITmvMediaDemuxer |
| Type | class |
| Header File | /Engine/Plugins/Media/TmvMedia/Source/TmvMedia/Public/Decoder/ITmvMediaDemuxer.h |
| Include Path | #include "Decoder/ITmvMediaDemuxer.h" |
Syntax
class ITmvMediaDemuxer
Destructors
| Name | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|
virtual ~ITmvMediaDemuxer() |
Decoder/ITmvMediaDemuxer.h |
Functions
Public
| Name | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|
void Close() |
Close the container and release resources. | Decoder/ITmvMediaDemuxer.h | |
FString GetLastError() |
Returns a human-readable error message if the last operation failed. | Decoder/ITmvMediaDemuxer.h | |
int32 GetTrackCount() |
Returns the number of tracks found in the container. | Decoder/ITmvMediaDemuxer.h | |
ETmvMediaContainerResult GetTrackInfo
(
int32 InTrackIndex, |
Retrieve metadata for a specific track. | Decoder/ITmvMediaDemuxer.h | |
ETmvMediaContainerResult OpenBuffer
(
TConstArrayView< uint8 > InData |
Open a container from an in-memory buffer. | Decoder/ITmvMediaDemuxer.h | |
ETmvMediaContainerResult OpenFile
(
const FString& InFilePath |
Open a container from a file path. Parses the container structure and prepares track metadata. | Decoder/ITmvMediaDemuxer.h | |
ETmvMediaContainerResult ReadSample
(
int32 InTrackIndex, |
Read the next sample from the specified track. Advances the internal read position for that track. | Decoder/ITmvMediaDemuxer.h | |
ETmvMediaContainerResult ReadSampleInfo
(
int32 InTrackIndex, |
Read only the sample metadata (no data copy) from the specified track. | Decoder/ITmvMediaDemuxer.h | |
ETmvMediaContainerResult Seek
(
int32 InTrackIndex, |
Seek to a keyframe at or before the given time. | Decoder/ITmvMediaDemuxer.h | |
ETmvMediaContainerResult SeekToSample
(
int32 InTrackIndex, |
Seek to a specific sample number. | Decoder/ITmvMediaDemuxer.h |
Public Virtual
| Name | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|
virtual TOptional< FString > GetStartTimecode () |
Returns the start timecode as a formatted string (e.g., "01:00:00:00"), if available. | Decoder/ITmvMediaDemuxer.h | |
virtual TOptional< FString > GetStartTimecodeRate () |
Returns the start timecode frame rate as a string (e.g., "30000/1001"), if available. | Decoder/ITmvMediaDemuxer.h |