예제 #1
0
 public AudioCodecSettings()
 {
     downmixMode     = ChannelMode.KeepOriginal;
     bitrateMode     = BitrateManagementMode.CBR;
     bitrate         = 128;
     delay           = 0;
     delayEnabled    = false;
     autoGain        = true;
     forceDirectShow = false;
     improveAccuracy = true;
 }
예제 #2
0
 public AudioCodecSettings(string id, AudioCodec codec, AudioEncoderType encoder, int bitrate, BitrateManagementMode mode)
 {
     this.id          = id;
     audioCodec       = codec;
     audioEncoderType = encoder;
     downmixMode      = ChannelMode.KeepOriginal;
     bitrateMode      = mode;
     this.bitrate     = bitrate;
     delay            = 0;
     delayEnabled     = false;
     autoGain         = true;
     forceDirectShow  = false;
     improveAccuracy  = true;
 }
예제 #3
0
 public AudioCodecSettings(string id, AudioCodec codec, AudioEncoderType encoder, int bitrate, BitrateManagementMode mode)
 {
     this.id          = id;
     audioCodec       = codec;
     audioEncoderType = encoder;
     downmixMode      = ChannelMode.KeepOriginal;
     bitrateMode      = mode;
     this.bitrate     = bitrate;
     autoGain         = false;
     applyDRC         = false;
     normalize        = 100;
     preferredDecoder = AudioDecodingEngine.NicAudio;
     timeModification = TimeModificationMode.KeepOriginal;
     sampleRate       = SampleRateMode.KeepOriginal;
 }
예제 #4
0
 public AudioTrackInfo(string language, string codec, int trackID)
 {
     base.TrackType        = TrackType.Audio;
     base.Language         = language;
     base.Codec            = codec;
     base.TrackID          = trackID;
     this.aacFlag          = -1;
     this.nbChannels       = "unknown";
     this.samplingRate     = "unknown";
     this.channelPositions = "unknown";
     this.bHasCore         = false;
     this.codecProfile     = string.Empty;
     this._bitrateMode     = BitrateManagementMode.CBR;
     this._type            = null;
     this._codec           = AudioCodec.UNKNOWN;
 }
예제 #5
0
        /// <summary>
        /// gets the avi container overhead for the given audio type and bitrate mode
        /// bitrate mode only needs to be taken into account for MP3 but it's there for all cases nontheless
        /// </summary>
        /// <param name="AudioType">the type of audio</param>
        /// <param name="bitrateMode">the bitrate mode of the given audio type</param>
        /// <returns>the overhead in bytes per frame</returns>
        public double getAviAudioOverhead(AudioType audioType, BitrateManagementMode bitrateMode)
        {
#warning overheads here are inconsistant with the ones on www.alexander-noe.com
            double audioOverhead = 0;
            if (audioType == AudioType.AC3)
            {
                audioOverhead = ac3Overhead;
            }
            else if (audioType == AudioType.MP3)
            {
                if (bitrateMode == BitrateManagementMode.CBR)
                {
                    audioOverhead = cbrMP3Overhead;
                }
                else
                {
                    audioOverhead = vbrMP3Overhead;
                }
            }
            else if (audioType == AudioType.VBRMP3)
            {
                audioOverhead = vbrMP3Overhead;
            }
            else if (audioType == AudioType.CBRMP3)
            {
                audioOverhead = cbrMP3Overhead;
            }
            else if (audioType == AudioType.RAWAAC)
            {
                audioOverhead = vbrMP3Overhead;
            }
            else if (audioType == AudioType.DTS)
            {
                audioOverhead = ac3Overhead;
            }
            else
            {
                audioOverhead = 0;
            }
            return(audioOverhead);
        }
예제 #6
0
 public AudioCodecSettings(string id, AudioCodec codec, AudioEncoderType encoder, int bitrate, BitrateManagementMode mode)
 {
     this.id = id;
     audioCodec = codec;
     audioEncoderType = encoder;
     downmixMode = ChannelMode.KeepOriginal;
     bitrateMode = mode;
     this.bitrate = bitrate;
     delay = 0;
     delayEnabled = false;
     autoGain = true;
     forceDirectShow = false;
     applyDRC = false;
     sampleRateType = 0;
     normalize = 100;
 }