Ctrl+K

ISoundReader

اعلان

public interface Strawberry.Sound.ISoundReader

رابطی برای خواندن و decode داده‌ی صوتی از یک stream تعریف می‌کند.

پیاده‌سازی: System.IDisposable

ویژگی‌ها

Stream abstract

stream زیرین حاوی داده‌ی صوتی را دریافت می‌کند.

Stream Stream { get }

BitsPerSample abstract

تعداد بیت به ازای نمونه (عمق بیت) داده‌ی صوتی را دریافت می‌کند (مثلاً 8، 16، 24).

int BitsPerSample { get }

SampleRate abstract

نرخ نمونه‌برداری داده‌ی صوتی را به نمونه بر ثانیه (Hz) دریافت می‌کند (مثلاً 44100، 48000).

int SampleRate { get }

Channels abstract

تعداد کانال‌های صوتی را دریافت می‌کند (مثلاً 1 برای مونو، 2 برای استریو).

int Channels { get }

DataSize abstract

کل اندازه‌ی داده‌ی صوتی خام را به بایت دریافت می‌کند.

int DataSize { get }

متدها

Read abstract

دنباله‌ای از بایت‌ها را از stream صوتی می‌خواند و موقعیت درون stream را به تعداد بایت‌های خوانده‌شده جلو می‌برد.

int Read(byte[] buffer, int offset, int count)

پارامترها:

نام نوع توضیحات
buffer System.Byte[] آرایه‌ای از بایت. وقتی این متد برمی‌گردد، بافر شامل آرایه‌ی بایت مشخص‌شده با مقادیر بین offset و (offset + count - 1) جایگزین‌شده با بایت‌های خوانده‌شده از منبع فعلی است.
offset System.Int32 انحراف بایت مبتنی بر صفر در buffer که از آن ذخیره‌سازی داده‌ی خوانده‌شده از stream فعلی آغاز می‌شود.
count System.Int32 بیشترین تعداد بایت برای خواندن از stream فعلی.

خروجی: کل تعداد بایت‌های خوانده‌شده در بافر. این مقدار می‌تواند کمتر از تعداد بایت درخواست‌شده باشد اگر آن تعداد بایت در حال حاضر در دسترس نباشد، یا صفر اگر به انتهای stream رسیده باشید.

Seek abstract

موقعیت درون stream داده‌ی صوتی را تنظیم می‌کند.

void Seek(long offset)

پارامترها:

نام نوع توضیحات
offset System.Int64 انحراف بایت برای seek.

ReadAll abstract

همه‌ی داده‌ی صوتی را از موقعیت فعلی تا انتهای stream می‌خواند.

byte[] ReadAll()

خروجی: آرایه‌ای از بایت حاوی همه‌ی داده‌ی صوتی باقی‌مانده.