⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 imediaseeking.cs

📁 摄像管理系统
💻 CS
字号:
namespace dshow.Core
{
	using System;
	using System.Runtime.InteropServices;

	// IMediaSeeking interface
	//
	// Contains methods for seeking to a position within a stream,
	// and for setting the playback rate
	//
	[ComImport,
	Guid("36B73880-C2C8-11CF-8B46-00805F6CEF60"),
	InterfaceType(ComInterfaceType.InterfaceIsIUnknown)]
	public interface IMediaSeeking
	{
		// Retrieves all the seeking capabilities of the stream
		[PreserveSig]
		int GetCapabilities(
			out SeekingCapabilities pCapabilities);

		// Queries whether a stream has specified seeking capabilities
		[PreserveSig]
		int CheckCapabilities(
			[In, Out] ref SeekingCapabilities pCapabilities);

		// Determines whether a specified time format is supported
		[PreserveSig]
		int IsFormatSupported(
			[In] ref Guid pFormat);

		// Retrieves the preferred time format for the stream
		[PreserveSig]
		int QueryPreferredFormat(
			[Out] out Guid pFormat);

		// Retrieves the current time format
		[PreserveSig]
		int GetTimeFormat(
			[Out] out Guid pFormat);

		// Determines whether a specified time format
		// is the format currently in use
		[PreserveSig]
		int IsUsingTimeFormat(
			[In] ref Guid pFormat);

		// Sets the time format
		[PreserveSig]
		int SetTimeFormat(
			[In] ref Guid pFormat);

		// Retrieves the duration of the stream
		[PreserveSig]
		int GetDuration(
			out long pDuration);

		// Retrieves the time at which the playback will stop,
		// relative to the duration of the stream
		[PreserveSig]
		int GetStopPosition(
			out long pStop);

		// Retrieves the current position, relative to the
		// total duration of the stream
		[PreserveSig]
		int GetCurrentPosition(
			out long pCurrent);

		// Converts from one time format to another
		[PreserveSig]
		int ConvertTimeFormat(
			out long pTarget,
			[In] ref Guid pTargetFormat,
			long Source, 
			[In] ref Guid pSourceFormat);

		// Sets the current position and the stop position
		[PreserveSig]
		int SetPositions(
			[In, Out] ref long pCurrent,
			SeekingFlags dwCurrentFlags,
			[In, Out] ref long pStop,
			SeekingFlags dwStopFlags);

		// Retrieves the current position and the stop position,
		// relative to the total duration of the stream
		[PreserveSig]
		int GetPositions(
			out long pCurrent,
			out long pStop);

		// Retrieves the range of times in which seeking is efficient
		[PreserveSig]
		int GetAvailable(
			out long pEarliest,
			out long pLatest);

		// Sets the playback rate
		[PreserveSig]
		int SetRate(
			double dRate);

		// Retrieves the playback rate
		[PreserveSig]
		int GetRate(
			out double pdRate);

		// Retrieves the amount of data that will be queued before
		// the start position
		[PreserveSig]
		int GetPreroll(
			out long pllPreroll);
	}
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -