Encode() public method

Encode audio samples.
public Encode ( byte srcPcmSamples, int srcOffset, byte dstOutputBuffer, int dstOffset, int sampleCount ) : int
srcPcmSamples byte PCM samples to be encoded.
srcOffset int The zero-based byte offset in srcPcmSamples at which to begin reading PCM samples.
dstOutputBuffer byte An array of bytes. When this method returns, the buffer contains the specified byte array with the values starting at offset replaced with encoded audio data.
dstOffset int The zero-based byte offset in dstOutputBuffer at which to begin writing encoded audio.
sampleCount int The number of samples, per channel, to encode.
return int
Beispiel #1
0
        public byte[] Encode(ArraySegment <byte> pcm)
        {
            var samples       = pcm.Count / sizeof(ushort);
            var numberOfBytes = _encoder.FrameSizeInBytes(samples);

            byte[] dst = new byte[numberOfBytes];
            _encoder.Encode(pcm.Array, pcm.Offset, dst, 0, samples);

            return(dst);
        }
Beispiel #2
0
        public byte[] Encode(ArraySegment <byte> pcm)
        {
            var samples       = pcm.Count / sizeof(ushort);
            var numberOfBytes = _encoder.FrameSizeInBytes(samples);

            byte[] dst          = new byte[numberOfBytes];
            int    encodedBytes = _encoder.Encode(pcm.Array, pcm.Offset, dst, 0, samples);

            //without it packet will have huge zero-value-tale
            Array.Resize(ref dst, encodedBytes);

            return(dst);
        }