Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/mpc-hc/mpc-hc.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorXhmikosR <xhmikosr@users.sourceforge.net>2010-04-09 18:12:59 +0400
committerXhmikosR <xhmikosr@users.sourceforge.net>2010-04-09 18:12:59 +0400
commitefbc9d9043ff8ff92716ddd00a5f61412d535593 (patch)
tree8f3e621f756cf1f5b4d64d97964c7e7abd8aaf08 /include/ITrackInfo.h
parentdf6b139a6d9027156f614b68687e039e3a5854db (diff)
revert r1783
git-svn-id: https://mpc-hc.svn.sourceforge.net/svnroot/mpc-hc/trunk@1785 10f7b99b-c216-0410-bff0-8a66a9350fd8
Diffstat (limited to 'include/ITrackInfo.h')
-rw-r--r--include/ITrackInfo.h83
1 files changed, 39 insertions, 44 deletions
diff --git a/include/ITrackInfo.h b/include/ITrackInfo.h
index 314343bbf..59310d032 100644
--- a/include/ITrackInfo.h
+++ b/include/ITrackInfo.h
@@ -1,66 +1,61 @@
#pragma once
-typedef enum TrackType
-{
- TypeVideo = 1,
- TypeAudio = 2,
- TypeComplex = 3,
- TypeLogo = 0x10,
- TypeSubtitle = 0x11,
- TypeControl = 0x20
+typedef enum TrackType {
+ TypeVideo = 1,
+ TypeAudio = 2,
+ TypeComplex = 3,
+ TypeLogo = 0x10,
+ TypeSubtitle = 0x11,
+ TypeControl = 0x20
};
#pragma pack(push, 1)
-struct TrackElement
-{
+struct TrackElement {
WORD Size; // Size of this structure
BYTE Type; // See TrackType
- BOOL FlagDefault; // Set if the track is the default for its TrackType.
- BOOL FlagLacing; // Set if the track may contain blocks using lacing.
- UINT MinCache; // The minimum number of frames a player should be able to cache during playback.
- UINT MaxCache; // The maximum cache size required to store referenced frames in and the current frame. 0 means no cache is needed.
- CHAR Language[4]; // Specifies the language of the track, in the ISO-639-2 form. (end with '\0')
+ BOOL FlagDefault; // Set if the track is the default for its TrackType.
+ BOOL FlagLacing; // Set if the track may contain blocks using lacing.
+ UINT MinCache; // The minimum number of frames a player should be able to cache during playback.
+ UINT MaxCache; // The maximum cache size required to store referenced frames in and the current frame. 0 means no cache is needed.
+ CHAR Language[4]; // Specifies the language of the track, in the ISO-639-2 form. (end with '\0')
};
-struct TrackExtendedInfoVideo
-{
- WORD Size; // Size of this structure
- BOOL Interlaced; // Set if the video is interlaced.
- UINT PixelWidth; // Width of the encoded video frames in pixels.
- UINT PixelHeight; // Height of the encoded video frames in pixels.
- UINT DisplayWidth; // Width of the video frames to display.
- UINT DisplayHeight; // Height of the video frames to display.
- BYTE DisplayUnit; // Type of the unit for DisplayWidth/Height (0: pixels, 1: centimeters, 2: inches).
- BYTE AspectRatioType; // Specify the possible modifications to the aspect ratio (0: free resizing, 1: keep aspect ratio, 2: fixed).
+struct TrackExtendedInfoVideo {
+ WORD Size; // Size of this structure
+ BOOL Interlaced; // Set if the video is interlaced.
+ UINT PixelWidth; // Width of the encoded video frames in pixels.
+ UINT PixelHeight; // Height of the encoded video frames in pixels.
+ UINT DisplayWidth; // Width of the video frames to display.
+ UINT DisplayHeight; // Height of the video frames to display.
+ BYTE DisplayUnit; // Type of the unit for DisplayWidth/Height (0: pixels, 1: centimeters, 2: inches).
+ BYTE AspectRatioType; // Specify the possible modifications to the aspect ratio (0: free resizing, 1: keep aspect ratio, 2: fixed).
};
-struct TrackExtendedInfoAudio
-{
- WORD Size; // Size of this structure
- FLOAT SamplingFreq; // Sampling frequency in Hz.
- FLOAT OutputSamplingFrequency; // Real output sampling frequency in Hz (used for SBR techniques).
- UINT Channels; // Numbers of channels in the track.
- UINT BitDepth; // Bits per sample, mostly used for PCM.
+struct TrackExtendedInfoAudio {
+ WORD Size; // Size of this structure
+ FLOAT SamplingFreq; // Sampling frequency in Hz.
+ FLOAT OutputSamplingFrequency; // Real output sampling frequency in Hz (used for SBR techniques).
+ UINT Channels; // Numbers of channels in the track.
+ UINT BitDepth; // Bits per sample, mostly used for PCM.
};
#pragma pack(pop)
[uuid("03E98D51-DDE7-43aa-B70C-42EF84A3A23D")]
-interface ITrackInfo :
-public IUnknown
+interface ITrackInfo : public IUnknown
{
- STDMETHOD_(UINT, GetTrackCount)() = 0;
+ STDMETHOD_(UINT, GetTrackCount) () = 0;
- // \param aTrackIdx the track index (from 0 to GetTrackCount()-1)
- STDMETHOD_(BOOL, GetTrackInfo)(UINT aTrackIdx, struct TrackElement* pStructureToFill) = 0;
+ // \param aTrackIdx the track index (from 0 to GetTrackCount()-1)
+ STDMETHOD_(BOOL, GetTrackInfo) (UINT aTrackIdx, struct TrackElement* pStructureToFill) = 0;
- // Get an extended information struct relative to the track type
- STDMETHOD_(BOOL, GetTrackExtendedInfo)(UINT aTrackIdx, void* pStructureToFill) = 0;
+ // Get an extended information struct relative to the track type
+ STDMETHOD_(BOOL, GetTrackExtendedInfo) (UINT aTrackIdx, void* pStructureToFill) = 0;
- STDMETHOD_(BSTR, GetTrackCodecID)(UINT aTrackIdx) = 0;
- STDMETHOD_(BSTR, GetTrackName)(UINT aTrackIdx) = 0;
- STDMETHOD_(BSTR, GetTrackCodecName)(UINT aTrackIdx) = 0;
- STDMETHOD_(BSTR, GetTrackCodecInfoURL)(UINT aTrackIdx) = 0;
- STDMETHOD_(BSTR, GetTrackCodecDownloadURL)(UINT aTrackIdx) = 0;
+ STDMETHOD_(BSTR, GetTrackCodecID) (UINT aTrackIdx) = 0;
+ STDMETHOD_(BSTR, GetTrackName) (UINT aTrackIdx) = 0;
+ STDMETHOD_(BSTR, GetTrackCodecName) (UINT aTrackIdx) = 0;
+ STDMETHOD_(BSTR, GetTrackCodecInfoURL) (UINT aTrackIdx) = 0;
+ STDMETHOD_(BSTR, GetTrackCodecDownloadURL) (UINT aTrackIdx) = 0;
};