-
Notifications
You must be signed in to change notification settings - Fork 0
/
index.json
197 lines (197 loc) · 75.1 KB
/
index.json
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
{
"api/index.html": {
"href": "api/index.html",
"title": "API Reference | NextAudio Documentation",
"keywords": "API Reference Welcome to NextAudio API reference. Select a class / method / property from the tree on the left side to see more."
},
"api/NextAudio.AudioDemuxer.html": {
"href": "api/NextAudio.AudioDemuxer.html",
"title": "Class AudioDemuxer | NextAudio Documentation",
"keywords": "Class AudioDemuxer Represents an Audio demuxer. Inheritance System.Object AudioStream ReadOnlyAudioStream AudioDemuxer MatroskaDemuxer Implements IDisposable Inherited Members ReadOnlyAudioStream.CanRead ReadOnlyAudioStream.CanWrite ReadOnlyAudioStream.SetLength(Int64) ReadOnlyAudioStream.Write(ReadOnlySpan<Byte>) ReadOnlyAudioStream.WriteAsync(ReadOnlyMemory<Byte>, CancellationToken) AudioStream._loggerFactory AudioStream.IsDisposed AudioStream.Length AudioStream.Position AudioStream.RecommendedSynchronicity AudioStream.Clone() AudioStream.Read(Byte[], Int32, Int32) AudioStream.Write(Byte[], Int32, Int32) AudioStream.ReadAsync(Byte[], Int32, Int32, CancellationToken) AudioStream.WriteAsync(Byte[], Int32, Int32, CancellationToken) AudioStream.Dispose(Boolean) AudioStream.DisposeAsyncCore() AudioStream.DisposeAsync() AudioStream.Dispose() AudioStream.CreateFromStream(Stream, StreamToAudioStreamOptions) AudioStream.CreateFromFile(String) AudioStream.CreateFromFile(String, FileStreamOptions) AudioStream.CreateFromFile(String, FileAudioStreamOptions) AudioStream.CastToStream(AudioStream, AudioStreamToStreamOptions) Namespace : NextAudio Assembly : NextAudio.dll Syntax public abstract class AudioDemuxer : ReadOnlyAudioStream Constructors | Improve this Doc View Source AudioDemuxer(Nullable<ILoggerFactory>) Creates an instance of AudioDemuxer . Declaration protected AudioDemuxer(ILoggerFactory? loggerFactory = null) Parameters Type Name Description System.Nullable < ILoggerFactory > loggerFactory A logger factory to log audio streaming info. Properties | Improve this Doc View Source CanSeek Declaration public override bool CanSeek { get; } Property Value Type Description System.Boolean Overrides AudioStream.CanSeek Methods | Improve this Doc View Source Demux(Span<Byte>) Demux the audio writing to the buffer . Declaration public abstract int Demux(Span<byte> buffer) Parameters Type Name Description Span < System.Byte > buffer The buffer to write the demuxed audio. Returns Type Description System.Int32 The number of bytes written to the buffer . | Improve this Doc View Source Demux(Byte[], Int32, Int32) Demux the audio writing to the buffer . Declaration public virtual int Demux(byte[] buffer, int offset, int count) Parameters Type Name Description System.Byte [] buffer The input buffer to write the demuxed audio. System.Int32 offset The offset position to use when writing to the buffer . System.Int32 count The max number of dumexed audio bytes to write in the buffer . Returns Type Description System.Int32 The number of bytes written to the buffer . | Improve this Doc View Source DemuxAsync(Memory<Byte>, CancellationToken) Asynchronously demux the audio writing to the buffer . Declaration public abstract ValueTask<int> DemuxAsync(Memory<byte> buffer, CancellationToken cancellationToken = null) Parameters Type Name Description Memory < System.Byte > buffer The input buffer to write the demuxed audio. CancellationToken cancellationToken The token to monitor for cancellation requests. Returns Type Description ValueTask < System.Int32 > The number of bytes written to the buffer . | Improve this Doc View Source DemuxAsync(Byte[], Int32, Int32, CancellationToken) Asynchronously demux the audio writing to the buffer . Declaration public virtual ValueTask<int> DemuxAsync(byte[] buffer, int offset, int count, CancellationToken cancellationToken = null) Parameters Type Name Description System.Byte [] buffer The input buffer to write the demuxed audio. System.Int32 offset The offset position to use when writing to the buffer . System.Int32 count The max number of dumexed audio bytes to write in the buffer . CancellationToken cancellationToken The token to monitor for cancellation requests. Returns Type Description ValueTask < System.Int32 > The number of bytes written to the buffer . | Improve this Doc View Source Read(Span<Byte>) Declaration public override int Read(Span<byte> buffer) Parameters Type Name Description Span < System.Byte > buffer Returns Type Description System.Int32 Overrides AudioStream.Read(Span<Byte>) | Improve this Doc View Source ReadAsync(Memory<Byte>, CancellationToken) Declaration public override ValueTask<int> ReadAsync(Memory<byte> buffer, CancellationToken cancellationToken = null) Parameters Type Name Description Memory < System.Byte > buffer CancellationToken cancellationToken Returns Type Description ValueTask < System.Int32 > Overrides AudioStream.ReadAsync(Memory<Byte>, CancellationToken) | Improve this Doc View Source Seek(Int64, SeekOrigin) Declaration public override long Seek(long offset, SeekOrigin origin) Parameters Type Name Description System.Int64 offset SeekOrigin origin Returns Type Description System.Int64 Overrides AudioStream.Seek(Int64, SeekOrigin) | Improve this Doc View Source SeekAsync(Int64, SeekOrigin, CancellationToken) When overridden in a derived class, asynchronously sets the position within the current stream. Declaration public override ValueTask<long> SeekAsync(long offset, SeekOrigin origin, CancellationToken cancellationToken = null) Parameters Type Name Description System.Int64 offset A byte offset relative to the origin parameter. SeekOrigin origin A value of type indicating the reference point used to obtaint he new position. CancellationToken cancellationToken The token to monitor for cancellation requests. The default value is . Returns Type Description ValueTask < System.Int64 > A that represents an asynchronous operation where the result is the new position within the current stream. Overrides AudioStream.SeekAsync(Int64, SeekOrigin, CancellationToken) Implements IDisposable Extension Methods AudioStreamExtensions.CastToStream(AudioStream, AudioStreamToStreamOptions)"
},
"api/NextAudio.AudioStream.html": {
"href": "api/NextAudio.AudioStream.html",
"title": "Class AudioStream | NextAudio Documentation",
"keywords": "Class AudioStream Represents an audio stream. Inheritance System.Object AudioStream ReadOnlyAudioStream WriteOnlyAudioStream Implements IDisposable Namespace : NextAudio Assembly : NextAudio.dll Syntax public abstract class AudioStream : IAsyncDisposable Constructors | Improve this Doc View Source AudioStream(Nullable<ILoggerFactory>) Creates an instance of AudioStream Declaration protected AudioStream(ILoggerFactory? loggerFactory = null) Parameters Type Name Description System.Nullable < ILoggerFactory > loggerFactory A logger factory to log audio streaming info. Fields | Improve this Doc View Source _loggerFactory A logger factory to log audio streaming info. Declaration protected readonly ILoggerFactory _loggerFactory Field Value Type Description ILoggerFactory Properties | Improve this Doc View Source CanRead Declaration public abstract bool CanRead { get; } Property Value Type Description System.Boolean | Improve this Doc View Source CanSeek Declaration public abstract bool CanSeek { get; } Property Value Type Description System.Boolean | Improve this Doc View Source CanWrite Declaration public abstract bool CanWrite { get; } Property Value Type Description System.Boolean | Improve this Doc View Source IsDisposed Indicates if this stream was disposed. Declaration protected bool IsDisposed { get; } Property Value Type Description System.Boolean | Improve this Doc View Source Length Declaration public abstract long Length { get; } Property Value Type Description System.Int64 | Improve this Doc View Source Position Declaration public abstract long Position { get; set; } Property Value Type Description System.Int64 | Improve this Doc View Source RecommendedSynchronicity The recommended synchronicity when using any read/write operation. Declaration public abstract RecommendedSynchronicity RecommendedSynchronicity { get; } Property Value Type Description RecommendedSynchronicity Remarks This doesn't define the synchronicity support, all must be supported. Methods | Improve this Doc View Source CastToStream(AudioStream, AudioStreamToStreamOptions) Casts a from an AudioStream . Declaration public static Stream CastToStream(AudioStream audioStream, AudioStreamToStreamOptions options = null) Parameters Type Name Description AudioStream audioStream The AudioStream to be cast. AudioStreamToStreamOptions options The options for the cast. Returns Type Description Stream A new created from the audioStream . | Improve this Doc View Source Clone() Creates a clone of this stream. Declaration public abstract AudioStream Clone() Returns Type Description AudioStream A new cloned stream. | Improve this Doc View Source CreateFromFile(String) Create an AudioStream from the specified file path. Declaration public static AudioStream CreateFromFile(string path) Parameters Type Name Description System.String path The specified file path to create the AudioStream . Returns Type Description AudioStream A new AudioStream from the specified path . | Improve this Doc View Source CreateFromFile(String, FileStreamOptions) Create an AudioStream from the specified file path with the chosen file options. Declaration public static AudioStream CreateFromFile(string path, FileStreamOptions options) Parameters Type Name Description System.String path The specified file path to create the AudioStream . FileStreamOptions options The chosen file options. Returns Type Description AudioStream A new AudioStream from the specified path with the chosen options . | Improve this Doc View Source CreateFromFile(String, FileAudioStreamOptions) Create an AudioStream from the specified file path with the chosen file stream options. Declaration public static AudioStream CreateFromFile(string path, FileAudioStreamOptions options) Parameters Type Name Description System.String path The specified file path to create the AudioStream . FileAudioStreamOptions options The chosen file stream options. Returns Type Description AudioStream A new AudioStream from the specified path with the chosen options . | Improve this Doc View Source CreateFromStream(Stream, StreamToAudioStreamOptions) Creates an AudioStream from a . Declaration public static AudioStream CreateFromStream(Stream stream, StreamToAudioStreamOptions options = null) Parameters Type Name Description Stream stream The to create from. StreamToAudioStreamOptions options The options for the cast. Returns Type Description AudioStream A new AudioStream created from the stream . | Improve this Doc View Source Dispose() Declaration public void Dispose() | Improve this Doc View Source Dispose(Boolean) Declaration protected abstract void Dispose(bool disposing) Parameters Type Name Description System.Boolean disposing | Improve this Doc View Source DisposeAsync() Declaration public async ValueTask DisposeAsync() Returns Type Description ValueTask | Improve this Doc View Source DisposeAsyncCore() Asynchronously releases the unmanaged resources. Declaration protected abstract ValueTask DisposeAsyncCore() Returns Type Description ValueTask A that represents the asynchronous dispose operation. | Improve this Doc View Source Finalize() Declaration protected void Finalize() | Improve this Doc View Source Read(Span<Byte>) Declaration public abstract int Read(Span<byte> buffer) Parameters Type Name Description Span < System.Byte > buffer Returns Type Description System.Int32 | Improve this Doc View Source Read(Byte[], Int32, Int32) Declaration public virtual int Read(byte[] buffer, int offset, int count) Parameters Type Name Description System.Byte [] buffer System.Int32 offset System.Int32 count Returns Type Description System.Int32 | Improve this Doc View Source ReadAsync(Memory<Byte>, CancellationToken) Declaration public abstract ValueTask<int> ReadAsync(Memory<byte> buffer, CancellationToken cancellationToken = null) Parameters Type Name Description Memory < System.Byte > buffer CancellationToken cancellationToken Returns Type Description ValueTask < System.Int32 > | Improve this Doc View Source ReadAsync(Byte[], Int32, Int32, CancellationToken) Asynchronously reads a sequence of bytes from the current stream, advances the position within the stream by the number of bytes read, and monitors cancellation requests. Declaration public virtual ValueTask<int> ReadAsync(byte[] buffer, int offset, int count, CancellationToken cancellationToken = null) Parameters Type Name Description System.Byte [] buffer The buffer to write the data into. System.Int32 offset The byte offset in buffer at which to begin writing data from the stream. System.Int32 count The maximum number of bytes to read. CancellationToken cancellationToken The token to monitor for cancellation requests. The default value is . Returns Type Description ValueTask < System.Int32 > A that represents the asynchronous read operation. The value of the TResult parameter contains the total number of bytes read into the buffer. The result value can be less than the number of bytes requested if the number of bytes currently available is less than the requested number, or it can be 0 (zero) if the end of the stream has been reached. | Improve this Doc View Source Seek(Int64, SeekOrigin) Declaration public abstract long Seek(long offset, SeekOrigin origin) Parameters Type Name Description System.Int64 offset SeekOrigin origin Returns Type Description System.Int64 | Improve this Doc View Source SeekAsync(Int64, SeekOrigin, CancellationToken) When overridden in a derived class, asynchronously sets the position within the current stream. Declaration public abstract ValueTask<long> SeekAsync(long offset, SeekOrigin origin, CancellationToken cancellationToken = null) Parameters Type Name Description System.Int64 offset A byte offset relative to the origin parameter. SeekOrigin origin A value of type indicating the reference point used to obtaint he new position. CancellationToken cancellationToken The token to monitor for cancellation requests. The default value is . Returns Type Description ValueTask < System.Int64 > A that represents an asynchronous operation where the result is the new position within the current stream. | Improve this Doc View Source SetLength(Int64) Declaration public abstract void SetLength(long value) Parameters Type Name Description System.Int64 value | Improve this Doc View Source Write(ReadOnlySpan<Byte>) Declaration public abstract void Write(ReadOnlySpan<byte> buffer) Parameters Type Name Description ReadOnlySpan < System.Byte > buffer | Improve this Doc View Source Write(Byte[], Int32, Int32) Declaration public virtual void Write(byte[] buffer, int offset, int count) Parameters Type Name Description System.Byte [] buffer System.Int32 offset System.Int32 count | Improve this Doc View Source WriteAsync(ReadOnlyMemory<Byte>, CancellationToken) Declaration public abstract ValueTask WriteAsync(ReadOnlyMemory<byte> buffer, CancellationToken cancellationToken = null) Parameters Type Name Description ReadOnlyMemory < System.Byte > buffer CancellationToken cancellationToken Returns Type Description ValueTask | Improve this Doc View Source WriteAsync(Byte[], Int32, Int32, CancellationToken) Asynchronously writes a sequence of bytes to the current stream, advances the current position within this stream by the number of bytes written, and monitors cancellation requests. Declaration public virtual ValueTask WriteAsync(byte[] buffer, int offset, int count, CancellationToken cancellationToken = null) Parameters Type Name Description System.Byte [] buffer The buffer to write data from. System.Int32 offset The zero-based byte offset in buffer from which to begin copying bytes to the stream. System.Int32 count The maximum number of bytes to write. CancellationToken cancellationToken The token to monitor for cancellation requests. The default value is . Returns Type Description ValueTask A that represents the asynchronous write operation. Operators | Improve this Doc View Source Implicit(AudioStream to Stream) Implicit cast a AudioStream in an Declaration public static implicit operator Stream(AudioStream audioStream) Parameters Type Name Description AudioStream audioStream The AudioStream to be cast. Returns Type Description Stream | Improve this Doc View Source Implicit(Stream to AudioStream) Implicit cast a in an AudioStream Declaration public static implicit operator AudioStream(Stream stream) Parameters Type Name Description Stream stream The to be cast. Returns Type Description AudioStream Implements IDisposable Extension Methods AudioStreamExtensions.CastToStream(AudioStream, AudioStreamToStreamOptions)"
},
"api/NextAudio.AudioStreamExtensions.html": {
"href": "api/NextAudio.AudioStreamExtensions.html",
"title": "Class AudioStreamExtensions | NextAudio Documentation",
"keywords": "Class AudioStreamExtensions Some extensions methods for AudioStream . Inheritance System.Object AudioStreamExtensions Namespace : NextAudio Assembly : NextAudio.dll Syntax public static class AudioStreamExtensions : object Methods | Improve this Doc View Source CastToStream(AudioStream, AudioStreamToStreamOptions) Casts a from an AudioStream . Declaration public static Stream CastToStream(this AudioStream audioStream, AudioStreamToStreamOptions options = null) Parameters Type Name Description AudioStream audioStream The AudioStream to be cast. AudioStreamToStreamOptions options The options for the cast. Returns Type Description Stream A new created from the audioStream ."
},
"api/NextAudio.AudioStreamToStreamOptions.html": {
"href": "api/NextAudio.AudioStreamToStreamOptions.html",
"title": "Class AudioStreamToStreamOptions | NextAudio Documentation",
"keywords": "Class AudioStreamToStreamOptions Options when creating a from an AudioStream . Inheritance System.Object AudioStreamToStreamOptions Namespace : NextAudio Assembly : NextAudio.dll Syntax public sealed class AudioStreamToStreamOptions : object Fields | Improve this Doc View Source Default The default options AudioStreamToStreamOptions instance. Declaration public static readonly AudioStreamToStreamOptions Default Field Value Type Description AudioStreamToStreamOptions Properties | Improve this Doc View Source DisposeSourceStream If the source audio stream should be disposed when the stream disposes. The default value is true . Declaration public bool DisposeSourceStream { get; set; } Property Value Type Description System.Boolean Methods | Improve this Doc View Source Clone() Creates a clone of the current AudioStreamToStreamOptions . Declaration public AudioStreamToStreamOptions Clone() Returns Type Description AudioStreamToStreamOptions A clone of the current AudioStreamToStreamOptions ."
},
"api/NextAudio.FileAudioStreamOptions.html": {
"href": "api/NextAudio.FileAudioStreamOptions.html",
"title": "Class FileAudioStreamOptions | NextAudio Documentation",
"keywords": "Class FileAudioStreamOptions Options when creating an AudioStream from a file. Inheritance System.Object FileAudioStreamOptions Namespace : NextAudio Assembly : NextAudio.dll Syntax public sealed class FileAudioStreamOptions : object Constructors | Improve this Doc View Source FileAudioStreamOptions() Creates a new instance of FileAudioStreamOptions . Declaration public FileAudioStreamOptions() | Improve this Doc View Source FileAudioStreamOptions(FileStreamOptions) Creates a new instance of FileAudioStreamOptions . Declaration public FileAudioStreamOptions(FileStreamOptions fileStreamOptions) Parameters Type Name Description FileStreamOptions fileStreamOptions The file stream options. Fields | Improve this Doc View Source Default The default options FileAudioStreamOptions instance. Declaration public static readonly FileAudioStreamOptions Default Field Value Type Description FileAudioStreamOptions Properties | Improve this Doc View Source Access A bitwise combination of the enumeration values that determines how the file can be accessed by the object. This also determines the values returned by the and properties of the object. The default value is . Declaration public FileAccess Access { get; set; } Property Value Type Description FileAccess | Improve this Doc View Source BufferSize The size of the buffer used by for buffering. The default buffer size is 4096. 0 or 1 means that buffering should be disabled. Negative values are not allowed. Declaration public int BufferSize { get; set; } Property Value Type Description System.Int32 | Improve this Doc View Source DisposeSourceStream If the source stream should be disposed when the audio stream disposes. The default value is true . Declaration public bool DisposeSourceStream { get; set; } Property Value Type Description System.Boolean | Improve this Doc View Source FileOptions A bitwise combination of the enumeration values that specifies additional file options. The default value is , which indicates synchronous IO. Declaration public FileOptions FileOptions { get; set; } Property Value Type Description FileOptions | Improve this Doc View Source LoggerFactory A logger factory to log audio streaming info. Declaration public ILoggerFactory LoggerFactory { get; set; } Property Value Type Description ILoggerFactory | Improve this Doc View Source Mode One of the enumeration values that determines how to open or create the file. The default value is . Declaration public FileMode Mode { get; set; } Property Value Type Description FileMode | Improve this Doc View Source PreallocationSize The initial allocation size in bytes for the file. A positive value is effective only when a regular file is being created or overwritten ( or ). Negative values are not allowed. In other cases (including the default 0 value), it's ignored. This value is a hint and is not a strong guarantee. It is not supported on Web Assembly (WASM) and FreeBSD (the value is ignored). For Windows, Linux and macOS we will try to preallocate the disk space to fill the requested allocation size. If that turns out to be impossible, the operation is going to throw an exception. The final file length (EOF) will be determined by the number of bytes written to the file. Declaration public long PreallocationSize { get; set; } Property Value Type Description System.Int64 | Improve this Doc View Source RecommendedSynchronicity The recommended synchronicity operation to use when read/write the source . Declaration public RecommendedSynchronicity RecommendedSynchronicity { get; set; } Property Value Type Description RecommendedSynchronicity | Improve this Doc View Source Share A bitwise combination of the enumeration values that determines how the file will be shared by processes. The default value is . Declaration public FileShare Share { get; set; } Property Value Type Description FileShare Methods | Improve this Doc View Source Clone() Creates a clone of the current FileAudioStreamOptions . Declaration public FileAudioStreamOptions Clone() Returns Type Description FileAudioStreamOptions A clone of the current FileAudioStreamOptions . | Improve this Doc View Source GetFileStreamOptions() Cast this instance to a . Declaration public FileStreamOptions GetFileStreamOptions() Returns Type Description FileStreamOptions A casted . | Improve this Doc View Source GetStreamToAudioStreamOptions() Cast this instance to a StreamToAudioStreamOptions . Declaration public StreamToAudioStreamOptions GetStreamToAudioStreamOptions() Returns Type Description StreamToAudioStreamOptions A casted StreamToAudioStreamOptions ."
},
"api/NextAudio.html": {
"href": "api/NextAudio.html",
"title": "Namespace NextAudio | NextAudio Documentation",
"keywords": "Namespace NextAudio Classes AudioDemuxer Represents an Audio demuxer. AudioStream Represents an audio stream. AudioStreamExtensions Some extensions methods for AudioStream . AudioStreamToStreamOptions Options when creating a from an AudioStream . FileAudioStreamOptions Options when creating an AudioStream from a file. ReadOnlyAudioStream Represents a readonly audio stream. StreamToAudioStreamOptions Options when creating an AudioStream from a . WriteOnlyAudioStream Represents an audio stream. Enums RecommendedSynchronicity The recommended synchronicity operation to use when reading/writing."
},
"api/NextAudio.Matroska.EbmlReader.html": {
"href": "api/NextAudio.Matroska.EbmlReader.html",
"title": "Class EbmlReader | NextAudio Documentation",
"keywords": "Class EbmlReader A reader for the Ebml notation. Inheritance System.Object EbmlReader Namespace : NextAudio.Matroska Assembly : NextAudio.Matroska.dll Syntax public static class EbmlReader : object Methods | Improve this Doc View Source ReadAsciiString(ReadOnlySpan<Byte>) Read an Ebml ascii string from the buffer . Declaration public static ReadOnlySpan<char> ReadAsciiString(ReadOnlySpan<byte> buffer) Parameters Type Name Description ReadOnlySpan < System.Byte > buffer The input buffer to read the Ebml ascii string. Returns Type Description ReadOnlySpan < System.Char > The parsed Ebml ascii string. | Improve this Doc View Source ReadDate(ReadOnlySpan<Byte>) Read an Ebml date from the buffer . Declaration public static DateTime ReadDate(ReadOnlySpan<byte> buffer) Parameters Type Name Description ReadOnlySpan < System.Byte > buffer The input buffer to read the Ebml date. Returns Type Description DateTime The parsed Ebml date. | Improve this Doc View Source ReadFloat(ReadOnlySpan<Byte>) Read an Ebml float from the buffer . Declaration public static double ReadFloat(ReadOnlySpan<byte> buffer) Parameters Type Name Description ReadOnlySpan < System.Byte > buffer The input buffer to read the Ebml float. Returns Type Description System.Double The parsed Ebml float. | Improve this Doc View Source ReadSignedInteger(ReadOnlySpan<Byte>) Read an Ebml signed integer from the buffer . Declaration public static long ReadSignedInteger(ReadOnlySpan<byte> buffer) Parameters Type Name Description ReadOnlySpan < System.Byte > buffer The input buffer to read the Ebml signed integer. Returns Type Description System.Int64 The parsed Ebml signed integer. | Improve this Doc View Source ReadUnsignedInteger(ReadOnlySpan<Byte>) Read an Ebml unsigned integer from the buffer . Declaration public static ulong ReadUnsignedInteger(ReadOnlySpan<byte> buffer) Parameters Type Name Description ReadOnlySpan < System.Byte > buffer The input buffer to read the Ebml unsigned integer. Returns Type Description System.UInt64 The parsed Ebml ynsigned integer. | Improve this Doc View Source ReadUtf8String(ReadOnlySpan<Byte>) Read an Ebml utf8 string from the buffer . Declaration public static ReadOnlySpan<char> ReadUtf8String(ReadOnlySpan<byte> buffer) Parameters Type Name Description ReadOnlySpan < System.Byte > buffer The input buffer to read the Ebml utf8 string. Returns Type Description ReadOnlySpan < System.Char > The parsed Ebml utf8 string. | Improve this Doc View Source ReadVariableSizeInteger(ReadOnlySpan<Byte>) Read an Ebml Variable Size Integer from the buffer . Declaration public static VInt ReadVariableSizeInteger(ReadOnlySpan<byte> buffer) Parameters Type Name Description ReadOnlySpan < System.Byte > buffer The input buffer to read the Ebml Variable Size Integer. Returns Type Description VInt The parsed Ebml Variable Size Integer. | Improve this Doc View Source ReadVariableSizeInteger(ReadOnlySpan<Byte>, Int32) Read an Ebml Variable Size Integer from the buffer of length length . Declaration public static VInt ReadVariableSizeInteger(ReadOnlySpan<byte> buffer, int length) Parameters Type Name Description ReadOnlySpan < System.Byte > buffer The input buffer to read the Ebml Variable Size Integer. System.Int32 length The length of the Ebml Variable Size Integer. Returns Type Description VInt The parsed Ebml Variable Size Integer. | Improve this Doc View Source ReadVariableSizeIntegerLength(Byte) Read the length of an Ebml Variable Size Integer from the inputByte . Declaration public static int ReadVariableSizeIntegerLength(byte inputByte) Parameters Type Name Description System.Byte inputByte The input byte to read the length. Returns Type Description System.Int32 The length of an Ebml Variable Size Integer."
},
"api/NextAudio.Matroska.html": {
"href": "api/NextAudio.Matroska.html",
"title": "Namespace NextAudio.Matroska | NextAudio Documentation",
"keywords": "Namespace NextAudio.Matroska Classes EbmlReader A reader for the Ebml notation. MatroskaDemuxer Represents a demuxer that demux Matroska files. MatroskaDemuxerOptions Represents some options of MatroskaDemuxer . Delegates TrackSelector Represents a delegate which selects a NextAudio.Matroska.Models.MatroskaTrack.TrackNumber to be demuxed."
},
"api/NextAudio.Matroska.MatroskaDemuxer.html": {
"href": "api/NextAudio.Matroska.MatroskaDemuxer.html",
"title": "Class MatroskaDemuxer | NextAudio Documentation",
"keywords": "Class MatroskaDemuxer Represents a demuxer that demux Matroska files. Inheritance System.Object AudioStream ReadOnlyAudioStream AudioDemuxer MatroskaDemuxer Implements IDisposable Inherited Members AudioDemuxer.SeekAsync(Int64, SeekOrigin, CancellationToken) NextAudio.AudioDemuxer.Read(Span<>) NextAudio.AudioDemuxer.ReadAsync(Memory<>, CancellationToken) NextAudio.AudioDemuxer.Demux(Span<>) AudioDemuxer.Demux(Byte[], Int32, Int32) NextAudio.AudioDemuxer.DemuxAsync(Memory<>, CancellationToken) AudioDemuxer.DemuxAsync(Byte[], Int32, Int32, CancellationToken) ReadOnlyAudioStream.CanRead ReadOnlyAudioStream.CanWrite ReadOnlyAudioStream.SetLength(Int64) NextAudio.ReadOnlyAudioStream.Write(ReadOnlySpan<>) NextAudio.ReadOnlyAudioStream.WriteAsync(ReadOnlyMemory<>, CancellationToken) AudioStream._loggerFactory AudioStream.IsDisposed AudioStream.Read(Byte[], Int32, Int32) AudioStream.Write(Byte[], Int32, Int32) AudioStream.ReadAsync(Byte[], Int32, Int32, CancellationToken) AudioStream.WriteAsync(Byte[], Int32, Int32, CancellationToken) AudioStream.DisposeAsync() AudioStream.Dispose() AudioStream.CreateFromStream(Stream, StreamToAudioStreamOptions) AudioStream.CreateFromFile(String) AudioStream.CreateFromFile(String, FileStreamOptions) AudioStream.CreateFromFile(String, FileAudioStreamOptions) AudioStream.CastToStream(AudioStream, AudioStreamToStreamOptions) Namespace : NextAudio.Matroska Assembly : NextAudio.Matroska.dll Syntax public sealed class MatroskaDemuxer : AudioDemuxer Constructors | Improve this Doc View Source MatroskaDemuxer(AudioStream, MatroskaDemuxerOptions) Creates a new instance of MatroskaDemuxer . Declaration public MatroskaDemuxer(AudioStream sourceStream, MatroskaDemuxerOptions options = null) Parameters Type Name Description AudioStream sourceStream The source stream with Matroska data to be demuxed. MatroskaDemuxerOptions options The options for this demuxer. Properties | Improve this Doc View Source CanSeek Declaration public override bool CanSeek { get; } Property Value Type Description System.Boolean Overrides AudioDemuxer.CanSeek | Improve this Doc View Source Length Declaration public override long Length { get; } Property Value Type Description System.Int64 Overrides AudioStream.Length | Improve this Doc View Source Position Declaration public override long Position { get; set; } Property Value Type Description System.Int64 Overrides AudioStream.Position | Improve this Doc View Source RecommendedSynchronicity The recommended synchronicity when using any read/write operation. Declaration public override RecommendedSynchronicity RecommendedSynchronicity { get; } Property Value Type Description RecommendedSynchronicity Overrides AudioStream.RecommendedSynchronicity Remarks This doesn't define the synchronicity support, all must be supported. | Improve this Doc View Source SelectedTrack The Matroska track selected using the TrackSelector . Declaration public MatroskaTrack SelectedTrack { get; } Property Value Type Description NextAudio.Matroska.Models.MatroskaTrack Methods | Improve this Doc View Source Clone() Creates a clone of this stream. Declaration public override MatroskaDemuxer Clone() Returns Type Description MatroskaDemuxer A new cloned stream. Overrides AudioStream.Clone() | Improve this Doc View Source Demux(Span<Byte>) Declaration public override int Demux(Span<byte> buffer) Parameters Type Name Description Span < System.Byte > buffer Returns Type Description System.Int32 | Improve this Doc View Source DemuxAsync(Memory<Byte>, CancellationToken) Declaration public override async ValueTask<int> DemuxAsync(Memory<byte> buffer, CancellationToken cancellationToken = null) Parameters Type Name Description Memory < System.Byte > buffer CancellationToken cancellationToken Returns Type Description ValueTask < System.Int32 > | Improve this Doc View Source Dispose(Boolean) Declaration protected override void Dispose(bool disposing) Parameters Type Name Description System.Boolean disposing | Improve this Doc View Source DisposeAsyncCore() Asynchronously releases the unmanaged resources. Declaration protected override async ValueTask DisposeAsyncCore() Returns Type Description ValueTask A that represents the asynchronous dispose operation. Overrides AudioStream.DisposeAsyncCore() | Improve this Doc View Source Seek(Int64, SeekOrigin) Declaration public override long Seek(long offset, SeekOrigin origin) Parameters Type Name Description System.Int64 offset SeekOrigin origin Returns Type Description System.Int64 Implements IDisposable"
},
"api/NextAudio.Matroska.MatroskaDemuxerOptions.html": {
"href": "api/NextAudio.Matroska.MatroskaDemuxerOptions.html",
"title": "Class MatroskaDemuxerOptions | NextAudio Documentation",
"keywords": "Class MatroskaDemuxerOptions Represents some options of MatroskaDemuxer . Inheritance System.Object MatroskaDemuxerOptions Namespace : NextAudio.Matroska Assembly : NextAudio.Matroska.dll Syntax public sealed class MatroskaDemuxerOptions : object Fields | Improve this Doc View Source Default The default instance of MatroskaDemuxerOptions . Declaration public static readonly MatroskaDemuxerOptions Default Field Value Type Description MatroskaDemuxerOptions Properties | Improve this Doc View Source DisposeSourceStream If the source stream should be disposed when the demuxer disposes. Declaration public bool DisposeSourceStream { get; set; } Property Value Type Description System.Boolean | Improve this Doc View Source LoggerFactory A logger factory to log audio streaming info. Declaration public ILoggerFactory LoggerFactory { get; set; } Property Value Type Description ILoggerFactory | Improve this Doc View Source TrackSelector The track selector to be used to choose which track will be demuxed. Declaration public TrackSelector TrackSelector { get; set; } Property Value Type Description TrackSelector Methods | Improve this Doc View Source Clone() Creates a clone of the current MatroskaDemuxerOptions . Declaration public MatroskaDemuxerOptions Clone() Returns Type Description MatroskaDemuxerOptions A clone of the current MatroskaDemuxerOptions ."
},
"api/NextAudio.Matroska.Models..html": {
"href": "api/NextAudio.Matroska.Models..html",
"title": "Class | NextAudio Documentation",
"keywords": "Class Represents some audio details for a Matroska Audio Track. Inheritance System.Object Implements System.IEquatable < NextAudio.Matroska.Models. > Namespace : NextAudio.Matroska.Models Assembly : NextAudio.Matroska.dll Syntax public class : object Implements System.IEquatable<>"
},
"api/NextAudio.Matroska.Models.EbmlValueType.html": {
"href": "api/NextAudio.Matroska.Models.EbmlValueType.html",
"title": "Enum EbmlValueType | NextAudio Documentation",
"keywords": "Enum EbmlValueType Enum which maps all Ebml value types. Namespace : NextAudio.Matroska.Models Assembly : NextAudio.Matroska.dll Syntax public enum EbmlValueType : int Fields Name Description AsciiString This element value is a string in the ASCII encoding. Binary This element value is binary data. Date This element value is a date. Float This element value is a floating point number. MasterElement This element value is a container for other EBML sub-elements. None None element, mapped because enum require default value, this type shouldn't exists. SignedInteger This element value is a signed integer. UnsignedInteger This element value is an unsigned integer. Utf8String This element value is a string in the UTF-8 encoding."
},
"api/NextAudio.Matroska.Models.html": {
"href": "api/NextAudio.Matroska.Models.html",
"title": "Namespace NextAudio.Matroska.Models | NextAudio Documentation",
"keywords": "Namespace NextAudio.Matroska.Models Classes NextAudio.Matroska.Models. Represents some audio details for a Matroska Audio Track. Structs MatroskaBlock Represents a Matroska block of data with 1 or more frames. MatroskaElement Represents a Matroska Element VInt Represents an Ebml Variable Signed Integer. Enums EbmlValueType Enum which maps all Ebml value types. MatroskaBlockLacingType Represents which lacing type a MatroskaBlock is using. MatroskaElementType Enum which map relevant matroska element types based on the Ebml Id. MatroskaTrackType Represents a Matroska track type."
},
"api/NextAudio.Matroska.Models.MatroskaBlock.html": {
"href": "api/NextAudio.Matroska.Models.MatroskaBlock.html",
"title": "Struct MatroskaBlock | NextAudio Documentation",
"keywords": "Struct MatroskaBlock Represents a Matroska block of data with 1 or more frames. Namespace : NextAudio.Matroska.Models Assembly : NextAudio.Matroska.dll Syntax public readonly struct MatroskaBlock Constructors | Improve this Doc View Source MatroskaBlock(MatroskaElement, UInt64, MatroskaBlockLacingType, Int32, Int32[]) Creates a new instance of MatroskaBlock . Declaration public MatroskaBlock(MatroskaElement element, ulong trackNumber, MatroskaBlockLacingType lacingType, int frameCount, int[] frameSizes) Parameters Type Name Description MatroskaElement element The element which this block is for. System.UInt64 trackNumber The track number which this block is for. MatroskaBlockLacingType lacingType The lacing type that block uses. System.Int32 frameCount The number of frames in this block. System.Int32 [] frameSizes All frames sizes in this block. Properties | Improve this Doc View Source Element The element which this block is for. Declaration public readonly MatroskaElement Element { get; } Property Value Type Description MatroskaElement | Improve this Doc View Source FrameCount The number of frames in this block. Declaration public readonly int FrameCount { get; } Property Value Type Description System.Int32 | Improve this Doc View Source LacingType The lacing type that block uses. Declaration public readonly MatroskaBlockLacingType LacingType { get; } Property Value Type Description MatroskaBlockLacingType | Improve this Doc View Source TrackNumber The track number which this block is for. Declaration public readonly ulong TrackNumber { get; } Property Value Type Description System.UInt64 Methods | Improve this Doc View Source GetFrameSizeByIndex(Int32) Get the frame size by the specified index . Declaration public readonly int GetFrameSizeByIndex(int index) Parameters Type Name Description System.Int32 index The index of the frame to be retained. Returns Type Description System.Int32 The frame size of the especified index ."
},
"api/NextAudio.Matroska.Models.MatroskaBlockLacingType.html": {
"href": "api/NextAudio.Matroska.Models.MatroskaBlockLacingType.html",
"title": "Enum MatroskaBlockLacingType | NextAudio Documentation",
"keywords": "Enum MatroskaBlockLacingType Represents which lacing type a MatroskaBlock is using. Namespace : NextAudio.Matroska.Models Assembly : NextAudio.Matroska.dll Syntax public enum MatroskaBlockLacingType : byte Fields Name Description Ebml The block uses ebml lacing type. FixedSize The block uses fixed size lacing type. No The block doesn't use any lacing type. Xiph The block uses xiph lacing type."
},
"api/NextAudio.Matroska.Models.MatroskaElement.html": {
"href": "api/NextAudio.Matroska.Models.MatroskaElement.html",
"title": "Struct MatroskaElement | NextAudio Documentation",
"keywords": "Struct MatroskaElement Represents a Matroska Element Namespace : NextAudio.Matroska.Models Assembly : NextAudio.Matroska.dll Syntax public readonly struct MatroskaElement Constructors | Improve this Doc View Source MatroskaElement(UInt64, Int32, Int64, Int32, Int32) Creates a new instance of MatroskaElement . Declaration public MatroskaElement(ulong id, int depth, long position, int headerSize, int dataSize) Parameters Type Name Description System.UInt64 id The Ebml id of the element. System.Int32 depth The depth of this element (elements can be inside each other). System.Int64 position The position of this element in the AudioStream . System.Int32 headerSize The size of the header containing in this element. System.Int32 dataSize The size of the data containing in this element. Properties | Improve this Doc View Source DataPosition The position of this element data in the AudioStream . Declaration public readonly long DataPosition { get; } Property Value Type Description System.Int64 | Improve this Doc View Source DataSize The size of the data containing in this element. Declaration public readonly int DataSize { get; } Property Value Type Description System.Int32 | Improve this Doc View Source Depth The depth of this element (elements can be inside each other). Declaration public readonly int Depth { get; } Property Value Type Description System.Int32 | Improve this Doc View Source EndPosition The end position of this element in the AudioStream . Declaration public readonly long EndPosition { get; } Property Value Type Description System.Int64 | Improve this Doc View Source HeaderSize The size of the header containing in this element. Declaration public readonly int HeaderSize { get; } Property Value Type Description System.Int32 | Improve this Doc View Source Id The Ebml id of the element. Declaration public readonly ulong Id { get; } Property Value Type Description System.UInt64 | Improve this Doc View Source Position The position of this element in the AudioStream . Declaration public readonly long Position { get; } Property Value Type Description System.Int64 | Improve this Doc View Source Type The mapped matroska element type according with the Id . Declaration public readonly MatroskaElementType Type { get; } Property Value Type Description MatroskaElementType | Improve this Doc View Source ValueType The Ebml value type of this element. Declaration public readonly EbmlValueType ValueType { get; } Property Value Type Description EbmlValueType Methods | Improve this Doc View Source GetRemaining(Int64) Get the remaining number of bytes from the position to the end of this element. Declaration public readonly long GetRemaining(long position) Parameters Type Name Description System.Int64 position The position of the stream to be checked. Returns Type Description System.Int64 The remaining number of bytes from the position to the end of this element."
},
"api/NextAudio.Matroska.Models.MatroskaElementType.html": {
"href": "api/NextAudio.Matroska.Models.MatroskaElementType.html",
"title": "Enum MatroskaElementType | NextAudio Documentation",
"keywords": "Enum MatroskaElementType Enum which map relevant matroska element types based on the Ebml Id. Namespace : NextAudio.Matroska.Models Assembly : NextAudio.Matroska.dll Syntax public enum MatroskaElementType : ulong Fields Name Description Audio Represents the Audio element type. BitDepth Represents the BitDepth element type. Block Represents the Block element type. BlockDuration Represents the BlockDuration element type. BlockGroup Represents the BlockGroup element type. Channels Represents the Channels element type. Cluster Represents the Cluster element type. CodecId Represents the CodecId element type. CodecPrivate Represents the CodecPrivate element type. CueClusterPosition Represents the CueClusterPosition element type. CuePoint Represents the CuePoint element type. Cues Represents the Cues element type. CueTime Represents the CueTime element type. CueTrack Represents the CueTrack element type. CueTrackPositions Represents the CueTrackPositions element type. DocType Represents the DocType element type. Duration Represents the Duration element type. Ebml Represents the Ebml element type. Info Represents the Info element type. Name Represents the Name element type. OutputSamplingFrequency Represents the OutputSamplingFrequency element type. ReferenceBlock Represents the ReferenceBlock element type. SamplingFrequency Represents the SamplingFrequency element type. Seek Represents the Seek element type. SeekHead Represents the SeekHead element type. SeekId Represents the SeekId element type. SeekPosition Represents the SeekPosition element type. Segment Represents the Segment element type. SimpleBlock Represents the SimpleBlock element type. Timecode Represents the Timecode element type. TimecodeScale Represents the TimecodeScale element type. TrackEntry Represents the TrackEntry element type. TrackNumber Represents the TrackNumber element type. Tracks Represents the Tracks element type. TrackType Represents the TrackType element type. TrackUid Represents the TrackUid element type. Unknown Any other unmapped ebml element type. Extension Methods MatroskaUtils.GetEbmlValueType()"
},
"api/NextAudio.Matroska.Models.MatroskaTrackType.html": {
"href": "api/NextAudio.Matroska.Models.MatroskaTrackType.html",
"title": "Enum MatroskaTrackType | NextAudio Documentation",
"keywords": "Enum MatroskaTrackType Represents a Matroska track type. Namespace : NextAudio.Matroska.Models Assembly : NextAudio.Matroska.dll Syntax public enum MatroskaTrackType : ulong Fields Name Description Audio The Matroska track type is an audio. Buttons The Matroska track type is buttons. Complex The Matroska track type is a complex. Control The Matroska track type is a control. Logo The Matroska track type is a logo. Metadata The Matroska track type is a metadata. Subtitle The Matroska track type is a subtitle. Unknown The Matroska track type is unknown (shouldn't appear). Video The Matroska track type is a video."
},
"api/NextAudio.Matroska.Models.VInt.html": {
"href": "api/NextAudio.Matroska.Models.VInt.html",
"title": "Struct VInt | NextAudio Documentation",
"keywords": "Struct VInt Represents an Ebml Variable Signed Integer. Namespace : NextAudio.Matroska.Models Assembly : NextAudio.Matroska.dll Syntax public readonly struct VInt Constructors | Improve this Doc View Source VInt(UInt64, Int32) Creates a new instance of VInt . Declaration public VInt(ulong encodedValue, int length) Parameters Type Name Description System.UInt64 encodedValue The encoded value. System.Int32 length The length of this integer. Properties | Improve this Doc View Source EncodedValue The encoded value. Declaration public readonly ulong EncodedValue { get; } Property Value Type Description System.UInt64 | Improve this Doc View Source Length The length. Declaration public readonly int Length { get; } Property Value Type Description System.Int32 | Improve this Doc View Source Value The parsed value. Declaration public readonly ulong Value { get; } Property Value Type Description System.UInt64"
},
"api/NextAudio.Matroska.TrackSelector.html": {
"href": "api/NextAudio.Matroska.TrackSelector.html",
"title": "Delegate TrackSelector | NextAudio Documentation",
"keywords": "Delegate TrackSelector Represents a delegate which selects a NextAudio.Matroska.Models.MatroskaTrack.TrackNumber to be demuxed. Namespace : NextAudio.Matroska Assembly : NextAudio.Matroska.dll Syntax public delegate ulong TrackSelector(IEnumerable<MatroskaTrack> tracks); Parameters Type Name Description IEnumerable < NextAudio.Matroska.Models.MatroskaTrack > tracks An enumerable of NextAudio.Matroska.Models.MatroskaTrack to be chosen. Returns Type Description System.UInt64 The NextAudio.Matroska.Models.MatroskaTrack.TrackNumber to be demuxed."
},
"api/NextAudio.Matroska.Utils.html": {
"href": "api/NextAudio.Matroska.Utils.html",
"title": "Namespace NextAudio.Matroska.Utils | NextAudio Documentation",
"keywords": "Namespace NextAudio.Matroska.Utils Classes MatroskaUtils Some matroska function utilities."
},
"api/NextAudio.Matroska.Utils.MatroskaUtils.html": {
"href": "api/NextAudio.Matroska.Utils.MatroskaUtils.html",
"title": "Class MatroskaUtils | NextAudio Documentation",
"keywords": "Class MatroskaUtils Some matroska function utilities. Inheritance System.Object MatroskaUtils Namespace : NextAudio.Matroska.Utils Assembly : NextAudio.Matroska.dll Syntax public static class MatroskaUtils : object Methods | Improve this Doc View Source GetEbmlValueType(MatroskaElementType) Cast MatroskaElementType in an EbmlValueType . Declaration public static EbmlValueType GetEbmlValueType(this MatroskaElementType type) Parameters Type Name Description MatroskaElementType type The MatroskaElementType to be cast. Returns Type Description EbmlValueType The casted EbmlValueType . | Improve this Doc View Source GetMatroskaElementType(UInt64) Cast an in an MatroskaElementType . Declaration public static MatroskaElementType GetMatroskaElementType(ulong id) Parameters Type Name Description System.UInt64 id The to be cast. Returns Type Description MatroskaElementType The casted MatroskaElementType (will be Unknown if id isn't mapped). | Improve this Doc View Source IsEbmlIdMappedForMatroskaElementType(UInt64) Check if the id was mapped in the MatroskaElementType enum. Declaration public static bool IsEbmlIdMappedForMatroskaElementType(ulong id) Parameters Type Name Description System.UInt64 id The Ebml id to be checked. Returns Type Description System.Boolean true if the id is mapped, otherwise false . | Improve this Doc View Source TryGetMatroskaElementType(UInt64, out MatroskaElementType) Try cast an in an MatroskaElementType . Declaration public static bool TryGetMatroskaElementType(ulong id, out MatroskaElementType matroskaElementType) Parameters Type Name Description System.UInt64 id The to be cast. MatroskaElementType matroskaElementType The casted MatroskaElementType (will be Unknown if the return be false ). Returns Type Description System.Boolean true if casted succesfully, otherwise false ."
},
"api/NextAudio.ReadOnlyAudioStream.html": {
"href": "api/NextAudio.ReadOnlyAudioStream.html",
"title": "Class ReadOnlyAudioStream | NextAudio Documentation",
"keywords": "Class ReadOnlyAudioStream Represents a readonly audio stream. Inheritance System.Object AudioStream ReadOnlyAudioStream AudioDemuxer Implements IDisposable Inherited Members AudioStream._loggerFactory AudioStream.IsDisposed AudioStream.CanSeek AudioStream.Length AudioStream.Position AudioStream.RecommendedSynchronicity AudioStream.Clone() AudioStream.Seek(Int64, SeekOrigin) AudioStream.SeekAsync(Int64, SeekOrigin, CancellationToken) AudioStream.Read(Span<Byte>) AudioStream.Read(Byte[], Int32, Int32) AudioStream.Write(Byte[], Int32, Int32) AudioStream.ReadAsync(Memory<Byte>, CancellationToken) AudioStream.ReadAsync(Byte[], Int32, Int32, CancellationToken) AudioStream.WriteAsync(Byte[], Int32, Int32, CancellationToken) AudioStream.Dispose(Boolean) AudioStream.DisposeAsyncCore() AudioStream.DisposeAsync() AudioStream.Dispose() AudioStream.CreateFromStream(Stream, StreamToAudioStreamOptions) AudioStream.CreateFromFile(String) AudioStream.CreateFromFile(String, FileStreamOptions) AudioStream.CreateFromFile(String, FileAudioStreamOptions) AudioStream.CastToStream(AudioStream, AudioStreamToStreamOptions) Namespace : NextAudio Assembly : NextAudio.dll Syntax public abstract class ReadOnlyAudioStream : AudioStream Constructors | Improve this Doc View Source ReadOnlyAudioStream(Nullable<ILoggerFactory>) Creates an instance of ReadOnlyAudioStream . Declaration protected ReadOnlyAudioStream(ILoggerFactory? loggerFactory = null) Parameters Type Name Description System.Nullable < ILoggerFactory > loggerFactory A logger factory to log audio streaming info. Properties | Improve this Doc View Source CanRead Declaration public override bool CanRead { get; } Property Value Type Description System.Boolean Overrides AudioStream.CanRead | Improve this Doc View Source CanWrite Declaration public override bool CanWrite { get; } Property Value Type Description System.Boolean Overrides AudioStream.CanWrite Methods | Improve this Doc View Source SetLength(Int64) Declaration public override void SetLength(long value) Parameters Type Name Description System.Int64 value Overrides AudioStream.SetLength(Int64) | Improve this Doc View Source Write(ReadOnlySpan<Byte>) Declaration public override void Write(ReadOnlySpan<byte> buffer) Parameters Type Name Description ReadOnlySpan < System.Byte > buffer Overrides AudioStream.Write(ReadOnlySpan<Byte>) | Improve this Doc View Source WriteAsync(ReadOnlyMemory<Byte>, CancellationToken) Declaration public override ValueTask WriteAsync(ReadOnlyMemory<byte> buffer, CancellationToken cancellationToken = null) Parameters Type Name Description ReadOnlyMemory < System.Byte > buffer CancellationToken cancellationToken Returns Type Description ValueTask Overrides AudioStream.WriteAsync(ReadOnlyMemory<Byte>, CancellationToken) Implements IDisposable Extension Methods AudioStreamExtensions.CastToStream(AudioStream, AudioStreamToStreamOptions)"
},
"api/NextAudio.RecommendedSynchronicity.html": {
"href": "api/NextAudio.RecommendedSynchronicity.html",
"title": "Enum RecommendedSynchronicity | NextAudio Documentation",
"keywords": "Enum RecommendedSynchronicity The recommended synchronicity operation to use when reading/writing. Namespace : NextAudio Assembly : NextAudio.dll Syntax public enum RecommendedSynchronicity : int Remarks This doesn't define the synchronicity support, all must be supported. Fields Name Description Any Any synchronicity can be used, the source stream supports any very well. Async The recommended synchronicity is asynchronous. Sync The recommended synchronicity is synchronous."
},
"api/NextAudio.StreamToAudioStreamOptions.html": {
"href": "api/NextAudio.StreamToAudioStreamOptions.html",
"title": "Class StreamToAudioStreamOptions | NextAudio Documentation",
"keywords": "Class StreamToAudioStreamOptions Options when creating an AudioStream from a . Inheritance System.Object StreamToAudioStreamOptions Namespace : NextAudio Assembly : NextAudio.dll Syntax public sealed class StreamToAudioStreamOptions : object Fields | Improve this Doc View Source Default The default options StreamToAudioStreamOptions instance. Declaration public static readonly StreamToAudioStreamOptions Default Field Value Type Description StreamToAudioStreamOptions Properties | Improve this Doc View Source DisposeSourceStream If the source stream should be disposed when the audio stream disposes. The default value is true . Declaration public bool DisposeSourceStream { get; set; } Property Value Type Description System.Boolean | Improve this Doc View Source LoggerFactory A logger factory to log audio streaming info. Declaration public ILoggerFactory LoggerFactory { get; set; } Property Value Type Description ILoggerFactory | Improve this Doc View Source RecommendedSynchronicity The recommended synchronicity operation to use when read/write the source . Declaration public RecommendedSynchronicity RecommendedSynchronicity { get; set; } Property Value Type Description RecommendedSynchronicity Methods | Improve this Doc View Source Clone() Creates a clone of the current StreamToAudioStreamOptions . Declaration public StreamToAudioStreamOptions Clone() Returns Type Description StreamToAudioStreamOptions A clone of the current StreamToAudioStreamOptions ."
},
"api/NextAudio.Utils.AudioStreamUtils.html": {
"href": "api/NextAudio.Utils.AudioStreamUtils.html",
"title": "Class AudioStreamUtils | NextAudio Documentation",
"keywords": "Class AudioStreamUtils Some AudioStream function utilities. Inheritance System.Object AudioStreamUtils Namespace : NextAudio.Utils Assembly : NextAudio.dll Syntax public static class AudioStreamUtils : object Methods | Improve this Doc View Source ReadFullyAudioStream(AudioStream, Span<Byte>) Read the stream until the total bytes reach the buffer length. Declaration public static int ReadFullyAudioStream(AudioStream stream, Span<byte> buffer) Parameters Type Name Description AudioStream stream The AudioStream to be read. Span < System.Byte > buffer The buffer to be used to read the stream . Returns Type Description System.Int32 The total of bytes read. | Improve this Doc View Source ReadFullyAudioStreamAsync(AudioStream, Memory<Byte>) Read the stream until the total bytes reach the buffer length. Declaration public static async ValueTask<int> ReadFullyAudioStreamAsync(AudioStream stream, Memory<byte> buffer) Parameters Type Name Description AudioStream stream The AudioStream to be read. Memory < System.Byte > buffer The buffer to be used to read the stream . Returns Type Description ValueTask < System.Int32 > A that represents an asynchronous operation where the result is the total of bytes read. | Improve this Doc View Source Seek(AudioStream, Int64, SeekOrigin, Int64) Seek the AudioStream if the stream doesn't support seek, try forcefully seek. Declaration public static long Seek(AudioStream stream, long offset, SeekOrigin origin, long position) Parameters Type Name Description AudioStream stream The AudioStream to be seeked. System.Int64 offset A byte offset relative to the origin . SeekOrigin origin A value of type indicating the reference point used to obtain the new position. System.Int64 position The current stream position. Returns Type Description System.Int64 The new position within the current stream . | Improve this Doc View Source SeekAsync(AudioStream, Int64, SeekOrigin, Int64) Seek the AudioStream if the stream doesn't support seek, try forcefully seek. Declaration public static async ValueTask<long> SeekAsync(AudioStream stream, long offset, SeekOrigin origin, long position) Parameters Type Name Description AudioStream stream The AudioStream to be seeked. System.Int64 offset A byte offset relative to the origin . SeekOrigin origin A value of type indicating the reference point used to obtain the new position. System.Int64 position The current stream position. Returns Type Description ValueTask < System.Int64 > A that represents an asynchronous operation where the result is Tthe new position within the current stream ."
},
"api/NextAudio.Utils.html": {
"href": "api/NextAudio.Utils.html",
"title": "Namespace NextAudio.Utils | NextAudio Documentation",
"keywords": "Namespace NextAudio.Utils Classes AudioStreamUtils Some AudioStream function utilities."
},
"api/NextAudio.WriteOnlyAudioStream.html": {
"href": "api/NextAudio.WriteOnlyAudioStream.html",
"title": "Class WriteOnlyAudioStream | NextAudio Documentation",
"keywords": "Class WriteOnlyAudioStream Represents an audio stream. Inheritance System.Object AudioStream WriteOnlyAudioStream Implements IDisposable Inherited Members AudioStream._loggerFactory AudioStream.IsDisposed AudioStream.CanSeek AudioStream.Length AudioStream.Position AudioStream.RecommendedSynchronicity AudioStream.Clone() AudioStream.Seek(Int64, SeekOrigin) AudioStream.SeekAsync(Int64, SeekOrigin, CancellationToken) AudioStream.SetLength(Int64) AudioStream.Write(ReadOnlySpan<Byte>) AudioStream.Read(Byte[], Int32, Int32) AudioStream.Write(Byte[], Int32, Int32) AudioStream.ReadAsync(Byte[], Int32, Int32, CancellationToken) AudioStream.WriteAsync(ReadOnlyMemory<Byte>, CancellationToken) AudioStream.WriteAsync(Byte[], Int32, Int32, CancellationToken) AudioStream.Dispose(Boolean) AudioStream.DisposeAsyncCore() AudioStream.DisposeAsync() AudioStream.Dispose() AudioStream.CreateFromStream(Stream, StreamToAudioStreamOptions) AudioStream.CreateFromFile(String) AudioStream.CreateFromFile(String, FileStreamOptions) AudioStream.CreateFromFile(String, FileAudioStreamOptions) AudioStream.CastToStream(AudioStream, AudioStreamToStreamOptions) Namespace : NextAudio Assembly : NextAudio.dll Syntax public abstract class WriteOnlyAudioStream : AudioStream Constructors | Improve this Doc View Source WriteOnlyAudioStream() Creates an instance of WriteOnlyAudioStream . Declaration protected WriteOnlyAudioStream() | Improve this Doc View Source WriteOnlyAudioStream(ILoggerFactory) Creates an instance of WriteOnlyAudioStream . Declaration protected WriteOnlyAudioStream(ILoggerFactory loggerFactory) Parameters Type Name Description ILoggerFactory loggerFactory A logger factory to log audio streaming info. Properties | Improve this Doc View Source CanRead Declaration public override bool CanRead { get; } Property Value Type Description System.Boolean Overrides AudioStream.CanRead | Improve this Doc View Source CanWrite Declaration public override bool CanWrite { get; } Property Value Type Description System.Boolean Overrides AudioStream.CanWrite Methods | Improve this Doc View Source Read(Span<Byte>) Declaration public override int Read(Span<byte> buffer) Parameters Type Name Description Span < System.Byte > buffer Returns Type Description System.Int32 Overrides AudioStream.Read(Span<Byte>) | Improve this Doc View Source ReadAsync(Memory<Byte>, CancellationToken) Declaration public override ValueTask<int> ReadAsync(Memory<byte> buffer, CancellationToken cancellationToken = null) Parameters Type Name Description Memory < System.Byte > buffer CancellationToken cancellationToken Returns Type Description ValueTask < System.Int32 > Overrides AudioStream.ReadAsync(Memory<Byte>, CancellationToken) Implements IDisposable Extension Methods AudioStreamExtensions.CastToStream(AudioStream, AudioStreamToStreamOptions)"
},
"articles/getting_started/installation.html": {
"href": "articles/getting_started/installation.html",
"title": "Installation | NextAudio Documentation",
"keywords": "Installation You can add NextAudio via nuget package manager. dotnet cli example: dotnet add package NextAudio OBS: This install only the core lib. The individual components may also be installed from NuGet . Stable The stable builds are available from NuGet . Unstable The development builds are availabe from Myget feed https://www.myget.org/F/next-audio/api/v3/index.json . These builds target the main branch."
},
"articles/getting_started/requirements.html": {
"href": "articles/getting_started/requirements.html",
"title": "Requirements | NextAudio Documentation",
"keywords": "Requirements NextAudio targets .NET 6. We recommend to use NextAudio in windows or any linux distribution, but we don't recognize any other OS limitations for now. NextAudio currently don't support ARM processors, if you wanna this support for your app please discuss in our repository . If you need some audio glossary concepts you can see then in glossary ."
},
"articles/getting_started/usage.html": {
"href": "articles/getting_started/usage.html",
"title": "Usage | NextAudio Documentation",
"keywords": "Usage AudioStream NextAudio uses AudioStream instead raw Stream class because Stream has a lot of unnecessary methods to coverage. The AudioStream also have an additional SeekAsync method for streams which support asynchronous seeking. Stream The AudioStream class has all implict casts if you need an AudioStream from a Stream , or you can do this manually with: AudioStream.CreateFromStream(stream); You can also pass some options for this AudioStream with the StreamToAudioStreamOptions class: AudioStream.CreateFromStream(stream, new StreamToAudioStreamOptions { DisposeSourceStream = true, RecommendedSynchronicity = RecommendedSynchronicity.Any, LoggerFactory = NullLoggerFactory.Instance, }); The default options will be used if you use any implicit cast. The inverse is true too, and you can use any implicit cast if you wanna a Stream from an AudioStream or you can do this manually with: audioStream.CastToStream(); // Or statically: AudioStream.CastToStream(audioStream); You can also pass some options for this Stream with the AudioStreamToStreamOptions class: audioStream.CastToStream(new AudioStreamToStreamOptions { DisposeSourceStream = true, }); The default options will be used if you use any implicit cast. File You can also create an AudioStream from a file path with: AudioStream.CreateFromFile(\"filePath\"); File audio streams supports the FileAudioStreamOptions options or the native class FileStreamOptions , we recommend the FileAudioStreamOptions because this class already cover all options present in FileStreamOptions . AudioStream.CreateFromFile(\"filePath\", new FileAudioStreamOptions { Mode = FileMode.Open, Access = FileAccess.Read, Share = FileShare.Read, FileOptions = FileOptions.None, PreallocationSize = 0, BufferSize = 4096, DisposeSourceStream = true, RecommendedSynchronicity = RecommendedSynchronicity.Sync, LoggerFactory = NullLoggerFactory.Instance, }); The default options will be used if you use the create method without any options set. AudioDemuxers Any container demuxer inherits from the AudioDemuxer class, this class has Demux or DemuxAsync methods instead Read and ReadAsync (yes, you can continue use these methods normally). Any Seek/SeekAsync operation for streams positions is not supported. RecommendedSynchronicity The property RecommendedSynchronicity is present in any AudioStream it says to you or for the internal lib what is the recommended synchronicity when reading from the AudioStream or writing in. Obs: The lib supports both synchronicitys but some streams don't recommend some synchronicitys, (e.g an async-only stream will have your sync operations using .GetAwaiter().GetResult() ). Manually reading/writing NextAudio will always use audio frame buffers for read/write operations. This makes the streaming data very easy. using var output = new MemoryStream(); using var file = AudioStream.CreateFromFile(\"test1.mkv\"); using var reader = new SomeAudioReadStreamType(file); var bytesRead = 0; Span<byte> buffer = new byte[1024]; // We recommend a buffer size at least 1024 bytes. while ((bytesRead = reader.Read(buffer)) > 0) { // Always slice the buffer to bytesRead, // the lib always will return an audio frame // when using a read operation. var frame = buffer.Slice(0, bytesRead); output.Write(frame); }"
},
"articles/introduction.html": {
"href": "articles/introduction.html",
"title": "Introduction | NextAudio Documentation",
"keywords": "Introduction NextAudio is a library focused in audio operations like encoding, decoding, muxing, demuxing, resampling, etc. It's designed to be to simple to use, but with streaming support and high performance. Why use NextAudio? All audio operations like encoding, demuxing, resampling and format conversions is a lot complex to do in your multimedia app, most solutions doesn't exists in the .NET ecosystem or not support platforms differents than windows. NextAudio is a multiplatform library with high performance that allows you to create audio apps without a lot of headache existing in the \"audio topic\"."
},
"articles/matroska/installation.html": {
"href": "articles/matroska/installation.html",
"title": "Installation | NextAudio Documentation",
"keywords": "Installation You can add this lib via nuget package manager. dotnet cli example: dotnet add package NextAudio.Matroska Stable The stable builds are available from NuGet . Unstable The development builds are availabe from Myget feed https://www.myget.org/F/next-audio/api/v3/index.json . These builds target the main branch."
},
"articles/matroska/introduction.html": {
"href": "articles/matroska/introduction.html",
"title": "Introduction | NextAudio Documentation",
"keywords": "Introduction NextAudio.Matroska is a component library for the Matroska Audio Container (.mkv/.webm). Currently this components only supports the demuxing operation. Features Demuxing Ebml values reading (from buffers) Thanks and References Matroska Website OlegZee/NEbml sedmelluq/lavaplayer hasenbanck/matroska-demuxer StefH/Matroska"
},
"articles/matroska/usage.html": {
"href": "articles/matroska/usage.html",
"title": "Usage | NextAudio Documentation",
"keywords": "Usage MatroskaDemuxer A MatroskaDemuxer can be created from any Matroska AudioStream : using var file = AudioStream.CreateFromFile(\"test1.mkv\"); using var demuxer = new MatroskaDemuxer(file); Matroska supports many tracks inside the container, NextAudio will always select the first audio track inside the container, you can change this behavior in the MatroskaDemuxerOptions#TrackSelector . using var file = AudioStream.CreateFromFile(\"test1.mkv\"); using var demuxer = new MatroskaDemuxer(file, new MatroskaDemuxerOptions() { DisposeSourceStream = false, TrackSelector = (tracks) => { foreach (var track in tracks) { if (track.Type == MatroskaTrackType.Audio && track.CodecID.Contains(\"OPUS\")) { return track.TrackNumber; } } return tracks.First().TrackNumber; }, LoggerFactory = NullLoggerFactory.Instance, }); In this example we select the first audio track with the Opus codec or return the first track. MatroskaDemuxer has a lot of debugging logging if you need, don't forget to pass the ILoggerFactory instance in the MatroskaDemuxerOptions options. Manually demuxing The lib will always use audio frame buffers for read/write operations. This makes the streaming data very easy. using var output = new MemoryStream(); using var file = AudioStream.CreateFromFile(\"test1.mkv\"); using var demuxer = new MatroskaDemuxer(file); var bytesRead = 0; Span<byte> buffer = new byte[1024]; while ((bytesRead = demuxer.Demux(buffer)) > 0) { // Always slice the buffer to bytesRead, // the lib always will return an audio frame // when using a read operation. var frame = buffer.Slice(0, bytesRead); output.Write(frame); }"
},
"CHANGELOG.html": {
"href": "CHANGELOG.html",
"title": "Changelog | NextAudio Documentation",
"keywords": "Changelog The versioning follow the semantic versioning The date format is dd-mm-yyyy [1.0.0] - 22-10-2022 Added #64 Created a base core lib design #40 Created an Ebml Reader #42 Support for demuxing Matroska streams Pull Requests Bump Microsoft.NET.Test.Sdk from 16.7.1 to 16.8.3 by @dependabot-preview in https://github.com/NextAudio/NextAudio/pull/2 Bump Microsoft.NET.Test.Sdk from 16.11.0 to 17.0.0 by @dependabot in https://github.com/NextAudio/NextAudio/pull/24 Feat create core lib files by @renanrcp in https://github.com/NextAudio/NextAudio/pull/23 Bump coverlet.collector from 3.1.0 to 3.1.2 by @dependabot in https://github.com/NextAudio/NextAudio/pull/27 Bump Microsoft.NET.Test.Sdk from 16.11.0 to 17.3.1 by @dependabot in https://github.com/NextAudio/NextAudio/pull/33 Add Pipeline for all branchs by @renanrcp in https://github.com/NextAudio/NextAudio/pull/34 Bump xunit from 2.4.1 to 2.4.2 by @dependabot in https://github.com/NextAudio/NextAudio/pull/31 Bump xunit.runner.visualstudio from 2.4.3 to 2.4.5 by @dependabot in https://github.com/NextAudio/NextAudio/pull/29 Create Matroska Projects by @renanrcp in https://github.com/NextAudio/NextAudio/pull/54 Create AudioStream and AudioDemuxer required files by @renanrcp in https://github.com/NextAudio/NextAudio/pull/56 Bump Microsoft.Extensions.Logging.Abstractions from 6.0.0 to 6.0.2 by @dependabot in https://github.com/NextAudio/NextAudio/pull/60 Update AudioStreams design to correctly support async Streams input and output by @renanrcp in https://github.com/NextAudio/NextAudio/pull/59 Create an Ebml Reader by @renanrcp in https://github.com/NextAudio/NextAudio/pull/61 build(deps): bump Microsoft.NET.Test.Sdk from 17.3.1 to 17.3.2 by @dependabot in https://github.com/NextAudio/NextAudio/pull/63 Create git commit rule by @renanrcp in https://github.com/NextAudio/NextAudio/pull/80 Add all missing nuget package info by @renanrcp in https://github.com/NextAudio/NextAudio/pull/66 Create the Code Of Conduct file by @renanrcp in https://github.com/NextAudio/NextAudio/pull/79 Improve the Contributing file by @renanrcp in https://github.com/NextAudio/NextAudio/pull/78 Create the Development Auto Deployment by @renanrcp in https://github.com/NextAudio/NextAudio/pull/81 Fully configure dependabot by @renanrcp in https://github.com/NextAudio/NextAudio/pull/77 Create CHANGELOG file by @renanrcp in https://github.com/NextAudio/NextAudio/pull/70 Write Matroska README by @renanrcp in https://github.com/NextAudio/NextAudio/pull/69 Fix and write README by @renanrcp in https://github.com/NextAudio/NextAudio/pull/67 Final AudioStream Design for the first release by @renanrcp in https://github.com/NextAudio/NextAudio/pull/65 Write docs guides by @renanrcp in https://github.com/NextAudio/NextAudio/pull/82 Create the Docs Auto Deployment by @renanrcp in https://github.com/NextAudio/NextAudio/pull/83 Create the Release Auto Deployment by @renanrcp in https://github.com/NextAudio/NextAudio/pull/84 New Contributors @dependabot-preview made their first contribution in https://github.com/NextAudio/NextAudio/pull/2 @dependabot made their first contribution in https://github.com/NextAudio/NextAudio/pull/24 @renanrcp made their first contribution in https://github.com/NextAudio/NextAudio/pull/23 Full Changelog : https://github.com/NextAudio/NextAudio/commits/v1.0.0"
},
"glossary.html": {
"href": "glossary.html",
"title": "Glossary | NextAudio Documentation",
"keywords": "Glossary Word Description Frame A frame is a single sample of audio data, which represents the signal's value for a single channel at a given point in time. Packet A packet is a group of frames, usually meant to be the set of frames for all channels at a given point in time. Buffer A buffer is a group of frames delivered for processing. Container A container format is a file format that allows multiple data streams to be embedded into a single file, usually along with metadata for identifying and further detailing those streams. Coding format A coding format is a content representation format for storage or transmission of audio. Codec A codec is a device or computer program which encodes or decodes a data stream. PCM PCM is a method used to digitally represent sampled analog signals. It is the standard form of digital audio in computers, compact discs, digital telephony and other digital audio applications."
},
"index.html": {
"href": "index.html",
"title": "NextAudio Documentation | NextAudio Documentation",
"keywords": "NextAudio Documentation NextAudio is a library focused in audio operations like encoding, decoding, muxing, demuxing, resampling, etc. It's designed to be to simple to use, but with streaming support and high performance. Getting Started If this is your first time using NextAudio, proceed to the Introduction in articles section. If you wanna see all objects provided by this library you can access the API Documentation . Features Basic features High performance, low memory allocation with Span<T> , Memory<T> , ArrayPool and lower GC pressure with ValueTask . Fully Sync and Async support. Per audio frame reading/writing. Logging with Microsoft.Extensions.Logging . Symbols debugging ( .snupkg ). Containers demuxing support: Matroska (.mkv/.webm) Goals OBS: Goals will change as new lib versions come out. Audio stream providers support: File (current supported by AudioStream.CreateFromFile ) Http (current supported by AudioStream.CreateFromStream but is not persistent) Youtube Containers demuxing support: Ogg (.ogg/.ogv/.oga/.ogx) Wav (.wav/.wave) MPEG-4 Part 14 (.mp4) Flac (.flac) Decoders support: Opus (.opus) Vorbis (.ogg/.oga) AAC (.m4a/.m4b/.m4p/.m4v/.m4r/.aac/.3gp/.mp4) MPEG-1/2 Audio Layer 3 (.mp3/.mp4) Encoders support: Opus (.opus) Containers probe support: Matroska (.mkv/.webm) Ogg (.ogg/.ogv/.oga/.ogx) Wav (.wav/.wave) MPEG-4 Part 14 (.mp4) Flac (.flac) Others audio operations Seeking (by timestamp) Volume Resampling Mono to Stereo Others Package with all lib individual components Audio Pipelines (less complexity when wanna a specific output format) Support for Microsoft.Extensions.DependencyInjection Writing to output formats ( PipelineWriter / Stream ) An Audio Player structure to control play/queue/pause/seek/volume operations Source and License NextAudio is licensed under MIT License . The repository containing the source code for this library is in Github . NextAudio is built by renanrcp ."
}
}