private void buttonCustomPresetCopyEdit_Click(object sender, EventArgs e) { if (formThumbnail.ShowDialog() == DialogResult.OK) { encoderPresetThumbnail = formThumbnail.CustomSpritePreset; } }
private void PresetStandardEncoder_Load(object sender, EventArgs e) { DpiUtils.InitPerMonitorDpi(this); // to scale the bitmap in the buttons HighDpiHelper.AdjustControlImagesDpiScale(panel1); listboxPresets.Items.Add(new Item(EncoderNamedPreset.AdaptiveStreaming, EncoderNamedPreset.AdaptiveStreaming)); listboxPresets.Items.Add(new Item(EncoderNamedPreset.ContentAwareEncoding, EncoderNamedPreset.ContentAwareEncoding)); listboxPresets.Items.Add(new Item(EncoderNamedPreset.ContentAwareEncodingExperimental, EncoderNamedPreset.ContentAwareEncodingExperimental)); listboxPresets.Items.Add(new Item(EncoderNamedPreset.H264MultipleBitrate1080p, EncoderNamedPreset.H264MultipleBitrate1080p)); listboxPresets.Items.Add(new Item(EncoderNamedPreset.H264MultipleBitrate720p, EncoderNamedPreset.H264MultipleBitrate720p)); listboxPresets.Items.Add(new Item(EncoderNamedPreset.H264MultipleBitrateSD, EncoderNamedPreset.H264MultipleBitrateSD)); listboxPresets.Items.Add(new Item(EncoderNamedPreset.H264SingleBitrate1080p, EncoderNamedPreset.H264SingleBitrate1080p)); listboxPresets.Items.Add(new Item(EncoderNamedPreset.H264SingleBitrate720p, EncoderNamedPreset.H264SingleBitrate720p)); listboxPresets.Items.Add(new Item(EncoderNamedPreset.H264SingleBitrateSD, EncoderNamedPreset.H264SingleBitrateSD)); listboxPresets.Items.Add(new Item(EncoderNamedPreset.AACGoodQualityAudio, EncoderNamedPreset.AACGoodQualityAudio)); listboxPresets.SelectedIndex = 0; moreinfoprofilelink.Links.Add(new LinkLabel.Link(0, moreinfoprofilelink.Text.Length, Constants.LinkMoreInfoMediaEncoderBuiltIn)); textBoxDescription.Text = _existingTransformDesc; encoderPresetThumbnail = formThumbnail.CustomSpritePreset; // default thumbnail preset UpdateTransformLabel(); }
public override object ReadJson(JsonReader reader, Type objectType, object existingValue, JsonSerializer serializer) { if (reader.TokenType == Newtonsoft.Json.JsonToken.Null) { return(null); } var tokens = Newtonsoft.Json.Linq.JToken.ReadFrom(reader); var targetType = tokens["@odata.type"].ToString(); switch (targetType) { case "#Microsoft.Media.BuiltInStandardEncoderPreset": return(tokens.ToObject <BuiltInStandardEncoderPreset>()); case "#Microsoft.Media.AudioAnalyzerPreset": return(tokens.ToObject <AudioAnalyzerPreset>()); case "#Microsoft.Media.VideoAnalyzerPreset": return(tokens.ToObject <VideoAnalyzerPreset>()); case "#Microsoft.Media.StandardEncoderPreset": //return tokens.ToObject<StandardEncoderPreset>(); StandardEncoderPreset r = new StandardEncoderPreset(); JsonConverter[] jsonConverters = { new CodecConverter <Codec>(), new FormatConverter <Format>() }; //r.Filters = tokens["filters"].ToObject<>; r.Codecs = JsonConvert.DeserializeObject <List <Codec> >(tokens["codecs"].ToString(), jsonConverters); r.Formats = JsonConvert.DeserializeObject <List <Format> >(tokens["formats"].ToString(), jsonConverters); return(r); default: throw new NotSupportedException($"Type {targetType} is not supported in {nameof(Codec)}"); } }
private StandardEncoderPreset GetThumbnailPreset(int?thumbnailSpriteColumns) { StandardEncoderPreset thumbnailPreset = new StandardEncoderPreset() { Codecs = new Codec[] { new JpgImage() { Start = "0%", Step = "2%", Range = "100%", Layers = new JpgLayer[] { new JpgLayer() { Height = "10%", Width = "10%", Quality = 90 } } } }, Formats = new Format[] { new JpgFormat() { FilenamePattern = string.Concat(Constant.Media.Thumbnail.FileNamePrefix, Constant.Media.Thumbnail.FileNameSuffix) } } }; return(thumbnailPreset); }
private StandardEncoderPreset GetThumbnailGeneration(Image thumbnailCodec) { StandardEncoderPreset customEncoding = new StandardEncoderPreset { Codecs = new List <Codec>(), Formats = new List <Format>() }; JpgFormat thumbnailFormat = new JpgFormat() { FilenamePattern = string.Concat(Constant.Media.Thumbnail.FileNamePrefix, Constant.Media.Thumbnail.FileNameSuffix) }; customEncoding.Codecs.Add(thumbnailCodec); customEncoding.Formats.Add(thumbnailFormat); return(customEncoding); }
public Transform CreateTransform(string transformName, string transformDescription, MediaTransformOutput[] transformOutputs, int?thumbnailSpriteColumns) { Transform transform = null; bool defaultName = string.IsNullOrEmpty(transformName); List <TransformOutput> transformOutputPresets = new List <TransformOutput>(); foreach (MediaTransformOutput transformOutput in transformOutputs) { TransformOutput transformOutputPreset; switch (transformOutput.TransformPreset) { case MediaTransformPreset.AdaptiveStreaming: transformName = GetTransformName(defaultName, transformName, transformOutput); BuiltInStandardEncoderPreset standardEncoderPreset = new BuiltInStandardEncoderPreset(EncoderNamedPreset.AdaptiveStreaming); transformOutputPreset = GetTransformOutput(standardEncoderPreset, transformOutput); transformOutputPresets.Add(transformOutputPreset); break; case MediaTransformPreset.ThumbnailImages: transformName = GetTransformName(defaultName, transformName, transformOutput); StandardEncoderPreset thumbnailPreset = GetThumbnailPreset(thumbnailSpriteColumns); transformOutputPreset = GetTransformOutput(thumbnailPreset, transformOutput); transformOutputPresets.Add(transformOutputPreset); break; case MediaTransformPreset.VideoAnalyzer: transformName = GetTransformName(defaultName, transformName, transformOutput); VideoAnalyzerPreset videoAnalyzerPreset = (VideoAnalyzerPreset)GetAnalyzerPreset(false); transformOutputPreset = GetTransformOutput(videoAnalyzerPreset, transformOutput); transformOutputPresets.Add(transformOutputPreset); break; case MediaTransformPreset.AudioAnalyzer: transformName = GetTransformName(defaultName, transformName, transformOutput); AudioAnalyzerPreset audioAnalyzerPreset = (AudioAnalyzerPreset)GetAnalyzerPreset(true); transformOutputPreset = GetTransformOutput(audioAnalyzerPreset, transformOutput); transformOutputPresets.Add(transformOutputPreset); break; } } if (transformOutputPresets.Count > 0) { transform = _media.Transforms.CreateOrUpdate(MediaAccount.ResourceGroupName, MediaAccount.Name, transformName, transformOutputPresets.ToArray(), transformDescription); } return(transform); }
public static async Task <IActionResult> Run( [HttpTrigger(AuthorizationLevel.Function, "post", Route = null)] HttpRequest req, ILogger log) { log.LogInformation($"AMS v3 Function - ConvertMesPresetJson was triggered!"); string requestBody = new StreamReader(req.Body).ReadToEnd(); dynamic data = JsonConvert.DeserializeObject(requestBody); if (data.mesPresetJson == null) { return(new BadRequestObjectResult("Please pass mesPresetJson in the input object")); } string mesPresetJson = data.mesPresetJson; //MediaServicesConfigWrapper amsconfig = new MediaServicesConfigWrapper(); string presetString = null; JToken jt = null; try { //IAzureMediaServicesClient client = MediaServicesHelper.CreateMediaServicesClientAsync(amsconfig); JsonConverter[] v2JsonConverters = { new MESPresentSchemaJsonConverter() }; MESPresetSchema v2preset = JsonConvert.DeserializeObject <MESPresetSchema>(mesPresetJson, v2JsonConverters); StandardEncoderPreset v3preset = MediaServicesHelperMES.convertMESPreset(v2preset); JsonConverter[] v3JsonConverters = { new MediaServicesHelperJsonWriter(), new MediaServicesHelperTimeSpanJsonConverter() }; presetString = JsonConvert.SerializeObject(v3preset, v3JsonConverters); jt = JToken.Parse(presetString); } catch (ApiErrorException e) { log.LogError($"ERROR: AMS API call failed with error code: {e.Body.Error.Code} and message: {e.Body.Error.Message}"); return(new BadRequestObjectResult("AMS API call error: " + e.Message + "\nError Code: " + e.Body.Error.Code + "\nMessage: " + e.Body.Error.Message)); } catch (Exception e) { log.LogError($"ERROR: Exception with message: {e.Message}"); return(new BadRequestObjectResult("Error: " + e.Message)); } return((ActionResult) new OkObjectResult(new { preset = jt })); }
private void ListBoxOutputs_SelectedIndexChanged(object sender, EventArgs e) { TransformOutput output = _transform.Outputs.Skip(listBoxOutputs.SelectedIndex).Take(1).FirstOrDefault(); DGOutputs.Rows.Clear(); DGOutputs.Rows.Add("Preset type", output.Preset.GetType().ToString()); string presetJson; if (output.Preset.GetType() == typeof(BuiltInStandardEncoderPreset)) { BuiltInStandardEncoderPreset pmes = (BuiltInStandardEncoderPreset)output.Preset; presetJson = JsonConvert.SerializeObject(pmes, Newtonsoft.Json.Formatting.Indented); } else if (output.Preset.GetType() == typeof(AudioAnalyzerPreset)) { AudioAnalyzerPreset pmes = (AudioAnalyzerPreset)output.Preset; presetJson = JsonConvert.SerializeObject(pmes, Newtonsoft.Json.Formatting.Indented); } else if (output.Preset.GetType() == typeof(StandardEncoderPreset)) { StandardEncoderPreset pmes = (StandardEncoderPreset)output.Preset; presetJson = JsonConvert.SerializeObject(pmes, Newtonsoft.Json.Formatting.Indented); } else if (output.Preset.GetType() == typeof(VideoAnalyzerPreset)) { VideoAnalyzerPreset pmes = (VideoAnalyzerPreset)output.Preset; presetJson = JsonConvert.SerializeObject(pmes, Newtonsoft.Json.Formatting.Indented); } else if (output.Preset.GetType() == typeof(FaceDetectorPreset)) { FaceDetectorPreset pmes = (FaceDetectorPreset)output.Preset; presetJson = JsonConvert.SerializeObject(pmes, Newtonsoft.Json.Formatting.Indented); } else { presetJson = JsonConvert.SerializeObject(output.Preset, Newtonsoft.Json.Formatting.Indented); } textBoxPresetJson.Text = presetJson; DGOutputs.Rows.Add("Relative Priority", output.RelativePriority); }
private void listBoxOutputs_SelectedIndexChanged(object sender, EventArgs e) { TransformOutput output = _transform.Outputs.Skip(listBoxOutputs.SelectedIndex).Take(1).FirstOrDefault(); DGOutputs.Rows.Clear(); DGOutputs.Rows.Add("Preset type", output.Preset.GetType().ToString()); if (output.Preset.GetType() == typeof(BuiltInStandardEncoderPreset)) { BuiltInStandardEncoderPreset pmes = (BuiltInStandardEncoderPreset)output.Preset; DGOutputs.Rows.Add("Preset name", pmes.PresetName); } else if (output.Preset.GetType() == typeof(AudioAnalyzerPreset)) { AudioAnalyzerPreset pmes = (AudioAnalyzerPreset)output.Preset; DGOutputs.Rows.Add("Audio language", pmes.AudioLanguage); } else if (output.Preset.GetType() == typeof(StandardEncoderPreset)) { StandardEncoderPreset pmes = (StandardEncoderPreset)output.Preset; // DGOutputs.Rows.Add("Audio language", pmes.); } else if (output.Preset.GetType() == typeof(VideoAnalyzerPreset)) { VideoAnalyzerPreset pmes = (VideoAnalyzerPreset)output.Preset; DGOutputs.Rows.Add("Audio language", pmes.AudioLanguage); DGOutputs.Rows.Add("Insights To Extract", pmes.InsightsToExtract); } else if (output.Preset.GetType() == typeof(FaceDetectorPreset)) { FaceDetectorPreset pmes = (FaceDetectorPreset)output.Preset; DGOutputs.Rows.Add("Resolution", pmes.Resolution.HasValue ? pmes.Resolution.Value.ToString() : string.Empty); } DGOutputs.Rows.Add("Relative Priority", output.RelativePriority); }