Пример #1
0
        /// <summary>
        /// Creates a new instance of <see cref="Mp3EncoderLame"/>.
        /// </summary>
        /// <param name="ChannelCount">Channel count.</param>
        /// <param name="SampleRate">Sample rate (in samples per second).</param>
        /// <param name="OutputBitRateKbps">Output bit rate (in kilobits per second).</param>
        /// <remarks>
        /// Encoder expects audio data in 16-bit samples.
        /// Stereo data should be interleaved: left sample first, right sample second.
        /// </remarks>
        public Mp3EncoderLame(int ChannelCount = 1, int SampleRate = 44100, int OutputBitRateKbps = 160)
        {
            _sharpAviLame = new SharpAviLame(ChannelCount, SampleRate, OutputBitRateKbps);

            WaveFormat = new WaveFormatExtra(SampleRate, 16, ChannelCount, _sharpAviLame.FormatSpecificData)
            {
                Encoding = WaveFormatEncoding.Mp3
            };
        }
Пример #2
0
 static Mp3EncoderLame()
 {
     SharpAviLame.SetLameDllLocation(Path.Combine(Path.GetDirectoryName(typeof(Mp3EncoderLame).Assembly.Location), $"lameenc{(Environment.Is64BitProcess ? 64 : 32)}.dll"));
 }