private static bool GetTrackMute(IMAudioTrack pMAudioTrack, int channel) { int nMute = 0; pMAudioTrack.TrackMuteGet(channel, out nMute); return(nMute == 1); }
private static double GetTrackGain(IMAudioTrack pMAudioTrack, int channel) { double dblGain = 0; pMAudioTrack.TrackGainGet(channel, out dblGain); return(dblGain); }
private static int GetTrackOutputChannels(IMAudioTrack pMAudioTrack) { int nChIn, nChOut, nChOutIdx; pMAudioTrack.TrackChannelsGet(out nChIn, out nChOutIdx, out nChOut); return(nChOut); }
private IMAudioTrack GetAudioTrackByIndex(int index) { string strTrack; IMAudioTrack pMAudioTrack = null; m_pMAudio.AudioTrackGetByIndex(index, out strTrack, out pMAudioTrack); return(pMAudioTrack); }
private static eMAudioTrackMode GetTrackMode(IMAudioTrack pMAudioTrack) { int nAdd; double dblAddGain; eMAudioTrackMode eMode; pMAudioTrack.TrackModeGet(out eMode, out nAdd, out dblAddGain); return(eMode); }
private void UpdateControl(int trackIndex) { if (m_pMAudio != null) { //if (m_pMAudioTrack != null) //{ // Marshal.ReleaseComObject(m_pMAudioTrack); // m_pMAudioTrack = null; //} try { m_pMAudioTrack = GetAudioTrackByIndex(trackIndex); // Get number of channels int nChOut = GetTrackOutputChannels(m_pMAudioTrack); // Update track mode eMAudioTrackMode eMode = GetTrackMode(m_pMAudioTrack); var modeText = eMode.ToString().Substring(5); for (int i = 0; i < comboBoxMode.Items.Count; i++) { if (object.Equals(modeText, comboBoxMode.Items[i])) { comboBoxMode.SelectedIndex = i; break; } } // if track disabled -> 0 real track channels // TODO: Exclusive modes if (eMode == eMAudioTrackMode.eMAT_Disabled || eMode == eMAudioTrackMode.eMAT_Disabled_AddTo) { nChOut = 0; } channelPanel.Children.Clear(); for (int i = 0; i < nChOut; i++) { var channelControl = CreateChannelControl(i); channelPanel.Children.Add(channelControl); } m_nCurrentTrack = trackIndex; this.InvalidateVisual(); } catch (System.Exception ex) { } } }
private void SetAudioGain(MItemClass mItem, int gain) { string empty = string.Empty; IMAudioTrack iMAudioTrack = null; mItem.AudioTrackGetByIndex(0, out empty, out iMAudioTrack); if (iMAudioTrack != null) { iMAudioTrack.TrackGainSet(-1, (double)gain, 0.1); } }
private void SetAudioGain(MItemClass mItem, int gain) { int audioTracks = -1; ((MItemClass)mItem).AudioTracksGetCount(out audioTracks); if (audioTracks > 0) { string empty = string.Empty; IMAudioTrack iMAudioTrack = null; mItem.AudioTrackGetByIndex(0, out empty, out iMAudioTrack); if (iMAudioTrack != null) { iMAudioTrack.TrackGainSet(-1, (double)gain, 0.1); } } }
private static void GetTrackLoudness(IMAudioTrack pMAudioTrack, out M_AUDIO_TRACK_LOUDNESS loudOrg, out M_AUDIO_TRACK_LOUDNESS loudOut) { pMAudioTrack.TrackLoudnessGet(out loudOrg, out loudOut); }
private static void SetTrackMute(IMAudioTrack pMAudioTrack, int nChannel, bool mute) { pMAudioTrack.TrackMuteSet(nChannel, mute ? 1 : 0, 0.1); }
private static void SetTrackGain(IMAudioTrack pMAudioTrack, int nChannel, double gain) { pMAudioTrack.TrackGainSet(nChannel, gain, 0.1); }