public async Task <OnVifCameraProfile> getVideoEncodingInternalAsync(int nProfileIdx) { OnVifCameraProfile profile = getOnVifProfile(nProfileIdx); if (profile == null) { return(profile); } if (this.m_OnVif1Media != null) { Profile cameaProfile = getCamera1Profile(nProfileIdx); if (cameaProfile == null) { return(profile); } if (cameaProfile.VideoEncoderConfiguration == null) { return(profile); } var videoEncoderConfiguration = await this.m_OnVif1Media.getVideoEncodingsAsync(cameaProfile.VideoEncoderConfiguration.token); if (videoEncoderConfiguration != null) { profile.VideoProfileEncoding.VideoEncoderConfiguration = videoEncoderConfiguration; profile.VideoProfileEncoding.VideoEncoder2Configuration = null; } } else if (this.m_OnVif2Media != null) { MediaProfile cameaProfile = getCamera2Profile(nProfileIdx); if (cameaProfile == null) { return(profile); } if (cameaProfile.Configurations == null) { return(profile); } if (cameaProfile.Configurations.VideoEncoder == null) { return(profile); } // var videoEncoderConfiguration = await this.m_OnVif2Media.getVideoEncodingsAsync(cameaProfile.Configurations.VideoEncoder.token); var videoEncoderConfiguration = await this.m_OnVif2Media.getVideoEncodingsAsync(cameaProfile.Configurations.VideoEncoder.token, cameaProfile.token); if (videoEncoderConfiguration != null) { profile.VideoProfileEncoding.VideoEncoderConfiguration = null; profile.VideoProfileEncoding.VideoEncoder2Configuration = videoEncoderConfiguration.Configurations; } } return(profile); }
public async Task <OnVifCameraProfile> getVideoEncodingConfigurationOptionsInternalAsync(int nProfileIdx) { OnVifCameraProfile profile = getOnVifProfile(nProfileIdx); if (profile == null) { return(profile); } if (this.m_OnVif1Media != null) { Profile cameaProfile = getCamera1Profile(nProfileIdx); if (cameaProfile == null) { return(profile); } if (cameaProfile.VideoEncoderConfiguration == null) { return(profile); } var videoEncoderConfiguration = await this.m_OnVif1Media.getVideoEncodingConfigurationOptionsAsync(cameaProfile.VideoEncoderConfiguration.token); if (videoEncoderConfiguration != null) { profile.VideoProfileEncodingConfiguration.VideoEncoder2ConfigurationOptions = null; profile.VideoProfileEncodingConfiguration.VideoEncoderConfigurationOptions = videoEncoderConfiguration; profile.VideoProfileEncodingConfiguration = profile.VideoProfileEncodingConfiguration; // for updating RaisePropertyChanged } } else if (this.m_OnVif2Media != null) { MediaProfile cameaProfile = getCamera2Profile(nProfileIdx); if (cameaProfile == null) { return(profile); } if (cameaProfile.Configurations == null) { return(profile); } if (cameaProfile.Configurations.VideoEncoder == null) { return(profile); } var videoEncoderConfiguration = await this.m_OnVif2Media.getVideoEncodingConfigurationOptionsAsync(cameaProfile.Configurations.VideoEncoder.token, cameaProfile.token); if (videoEncoderConfiguration != null) { profile.VideoProfileEncodingConfiguration.VideoEncoder2ConfigurationOptions = videoEncoderConfiguration.Options; profile.VideoProfileEncodingConfiguration.VideoEncoderConfigurationOptions = null; profile.VideoProfileEncodingConfiguration = profile.VideoProfileEncodingConfiguration; // for updating RaisePropertyChanged } } return(profile); }
public async Task <OnVifCameraProfile> getAudioEncodingConfigurationOptionsInternalAsync(int nProfileIdx) { OnVifCameraProfile profile = getOnVifProfile(nProfileIdx); if (profile == null) { return(profile); } if (this.m_OnVif1Media != null) { Profile cameaProfile = getCamera1Profile(nProfileIdx); if (cameaProfile == null) { return(profile); } if (cameaProfile.AudioEncoderConfiguration == null) { return(profile); } var AudioEncoderConfiguration = await m_OnVif1Media.getAudioEncodingConfigurationOptionsAsync(cameaProfile.AudioEncoderConfiguration.token); if (AudioEncoderConfiguration != null) { profile.AudioProfileEncodingConfiguration.Options = AudioEncoderConfiguration.Options; profile.AudioProfileEncodingConfiguration.Options2 = null;; } } else if (this.m_OnVif2Media != null) { MediaProfile cameaProfile = getCamera2Profile(nProfileIdx); if (cameaProfile == null) { return(profile); } if (cameaProfile.Configurations == null) { return(profile); } if (cameaProfile.Configurations.AudioEncoder == null) { return(profile); } var AudioEncoderConfiguration = await m_OnVif2Media.getAudioEncodingConfigurationOptionsAsync(cameaProfile.Configurations.AudioEncoder.token, cameaProfile.token); if (AudioEncoderConfiguration != null) { profile.AudioProfileEncodingConfiguration.Options = null; profile.AudioProfileEncodingConfiguration.Options2 = AudioEncoderConfiguration.Options; } } return(profile); }
public OnVifCameraProfile getOnVifProfile(int nProfileIdx) { OnVifCameraProfile profile = null; if (nProfileIdx < this.m_ProfileEncodings.Count) { profile = this.m_ProfileEncodings[nProfileIdx]; } return(profile); }
public IList <OnVifCameraProfile> createProfiles() { this.m_ProfileEncodings.Clear(); for (int i = 0; i < this.getNummberOfProfileTokens(); i++) { OnVifCameraProfile profile = new OnVifCameraProfile(i); this.m_ProfileEncodings.Add(profile); } return(this.m_ProfileEncodings); }
public async Task <IDictionary <string, IList <string> > > ReadMediaUrisAsync(int nProfileIdx) { Dictionary <string, IList <string> > profileUrls = new Dictionary <string, IList <string> >(); OnVifCameraProfile profile = getOnVifProfile(nProfileIdx); if (profile == null) { return(profileUrls); } if (this.m_OnVif1Media != null) { Profile cameaProfile = getCamera1Profile(nProfileIdx); if (cameaProfile == null) { return(profileUrls); } IList <string> urlList = await this.m_OnVif1Media.getStreamURIAsync(cameaProfile.token); if (urlList != null) { profileUrls.Add(cameaProfile.Name, urlList); } } else if (this.m_OnVif2Media != null) { MediaProfile cameaProfile = getCamera2Profile(nProfileIdx); if (cameaProfile == null) { return(profileUrls); } IList <string> urlList = await this.m_OnVif2Media.getStreamURIAsync(cameaProfile.token); if (urlList != null) { profileUrls.Add(cameaProfile.Name, urlList); } } return(profileUrls); }
public async Task <Boolean> writeAudioEncodingInternalAsync(int nProfileIdx) { OnVifCameraProfile profile = getOnVifProfile(nProfileIdx); if (profile == null) { return(false); } Boolean written = false; if (this.m_OnVif1Media != null) { Profile cameaProfile = getCamera1Profile(nProfileIdx); if (cameaProfile == null) { return(false); } if (cameaProfile.VideoEncoderConfiguration == null) { return(false); } var AudioEncoderConfiguration = await this.m_OnVif1Media.getAudioEncodingsAsync(cameaProfile.VideoEncoderConfiguration.token); if (AudioEncoderConfiguration != null) { AudioEncoderConfiguration.Bitrate = profile.AudioProfileEncoding.Bitrate; AudioEncoderConfiguration.SampleRate = profile.AudioProfileEncoding.SampleRate; written = await this.m_OnVif1Media.SetAudioEncodingsAsync(AudioEncoderConfiguration); profile.IsVideoProfileChanged = written; } } else if (this.m_OnVif2Media != null) { MediaProfile cameaProfile = getCamera2Profile(nProfileIdx); if (cameaProfile == null) { return(false); } if (cameaProfile.Configurations == null) { return(false); } if (cameaProfile.Configurations.AudioEncoder == null) { return(false); } var AudioEncoderConfiguration = await this.m_OnVif2Media.getAudioEncodingsAsync(cameaProfile.Configurations.AudioEncoder.token, cameaProfile.token); if (AudioEncoderConfiguration != null) { OnVifServices.OnvifMedia20.AudioEncoder2Configuration findencoding = null; if (AudioEncoderConfiguration.Configurations.Length > 0) { findencoding = AudioEncoderConfiguration.Configurations[0]; } if (findencoding != null) { findencoding.Bitrate = profile.AudioProfileEncoding.Bitrate; findencoding.SampleRate = profile.AudioProfileEncoding.SampleRate; written = await this.m_OnVif2Media.SetAudioEncodingsAsync(findencoding); profile.IsAudioProfileChanged = written; } } } return(written); }
public async Task <Boolean> writeVideoEncodingInternalAsync(int nProfileIdx) { OnVifCameraProfile profile = getOnVifProfile(nProfileIdx); if (profile == null) { return(false); } Boolean written = false; if (this.m_OnVif1Media != null) { Profile cameaProfile = getCamera1Profile(nProfileIdx); if (cameaProfile == null) { return(false); } var videoEncoderConfiguration = await this.m_OnVif1Media.getVideoEncodingsAsync(cameaProfile.VideoEncoderConfiguration.token); if (videoEncoderConfiguration != null) { videoEncoderConfiguration.Resolution.Height = profile.VideoProfileEncoding.Resolution.Height; videoEncoderConfiguration.Resolution.Width = profile.VideoProfileEncoding.Resolution.Width; videoEncoderConfiguration.RateControl.BitrateLimit = profile.VideoProfileEncoding.BitrateLimit; videoEncoderConfiguration.RateControl.FrameRateLimit = (int)profile.VideoProfileEncoding.FrameRateLimit; videoEncoderConfiguration.RateControl.EncodingInterval = profile.VideoProfileEncoding.EncodingInterval; written = await this.m_OnVif1Media.SetVideoEncodingsAsync(videoEncoderConfiguration); profile.IsVideoProfileChanged = !written; } } else if (this.m_OnVif2Media != null) { MediaProfile cameaProfile = getCamera2Profile(nProfileIdx); if (cameaProfile == null) { return(false); } if (cameaProfile.Configurations == null) { return(false); } if (cameaProfile.Configurations.VideoEncoder == null) { return(false); } var videoEncoderConfiguration = await this.m_OnVif2Media.getVideoEncodingsAsync(cameaProfile.Configurations.VideoEncoder.token, cameaProfile.token); if (videoEncoderConfiguration != null) { OnVifServices.OnvifMedia20.VideoEncoder2Configuration findencoding = null; if (videoEncoderConfiguration.Configurations.Length > 0) { findencoding = videoEncoderConfiguration.Configurations[0]; } if (findencoding != null) { findencoding.GovLength = profile.VideoProfileEncoding.GovLength; findencoding.GovLengthSpecified = profile.VideoProfileEncoding.GovLengthSpecified; findencoding.Resolution.Height = profile.VideoProfileEncoding.Resolution.Height; findencoding.Resolution.Width = profile.VideoProfileEncoding.Resolution.Width; findencoding.RateControl.ConstantBitRateSpecified = profile.VideoProfileEncoding.ConstantBitRateSpecified; findencoding.RateControl.ConstantBitRate = profile.VideoProfileEncoding.ConstantBitRate; findencoding.RateControl.BitrateLimit = profile.VideoProfileEncoding.BitrateLimit; findencoding.RateControl.FrameRateLimit = profile.VideoProfileEncoding.FrameRateLimit; findencoding.Resolution.Height = profile.VideoProfileEncoding.Resolution.Height; findencoding.Resolution.Width = profile.VideoProfileEncoding.Resolution.Width; written = await this.m_OnVif2Media.SetVideoEncodingsAsync(findencoding); profile.IsVideoProfileChanged = !written; } } } return(written); }