Я стараюсь следовать этой статье: https://azure.microsoft.com/en-us/documentation/articles/media-services-custom-mes-presets-with-dotnet/#overlay.Как добавить наложение с помощью Media Encoder Standard
Каждый раз, когда я запускаю задание, возникает ответ: Ошибка: TransientSystem: произошла переходная ошибка. Приносим свои извинения за доставленные неудобства. Пожалуйста, попробуйте еще раз.
Это мой заказ заранее (я кладу также элемент Источники в конце из этого ответа: https://stackoverflow.com/a/34094014/5940469):
{
"Version": 1.0,
"Codecs": [
{
"KeyFrameInterval": "00:00:03",
"SceneChangeDetection": true,
"H264Layers": [
{
"Profile": "High",
"Level": "4",
"Bitrate": 8500,
"MaxBitrate": 8500,
"BufferWindow": "00:00:05",
"Width": 1920,
"Height": 1080,
"BFrames": 3,
"ReferenceFrames": 3,
"AdaptiveBFrame": true,
"Type": "H264Layer",
"FrameRate": "0/1"
}
],
"Type": "H264Video"
},
{
"Profile": "AACLC",
"Channels": 2,
"SamplingRate": 48000,
"Bitrate": 192,
"Type": "AACAudio"
}
],
"Outputs": [
{
"FileName": "{Basename}_hi.mp4",
"Format": {
"Type": "MP4Format"
}
}
],
"Sources": [
{
"Streams": [ ],
"Filters": {
"VideoOverlay": {
"Position": {
"X": 100,
"Y": 100,
"Width": 100,
"Height": 106
},
"AudioGainLevel": 0.0,
"MediaParams": [
{
"OverlayLoopCount": 1
},
{
"IsOverlay": true,
"OverlayLoopCount": 1,
"InputLoop": true
}
],
"Source": "logo.jpg",
"Clip": {
"Duration": "00:00:05"
},
"FadeInDuration": {
"Duration": "00:00:01"
},
"FadeOutDuration": {
"StartTime": "00:00:03",
"Duration": "00:00:04"
}
}
},
"Pad": true
}
]
}
Без элемента Источники задания полного правильно.
Это код, который я использую для создания задания:
var job = context.Jobs.Create("New Job");
var processor = find the processor that has name "Media Encoder Standard"...
var preset = readtextfromjson...
var task = job.Tasks.AddNew("Video with overlay", processor, preset, TaskOptions.None);
task.InputAssets.Add(videoAsset);
task.InputAssets.Add(logoAsset);
task.OutputAssets.AddNew("Output files", AssetCreationOptions.None);
await job.SubmitAsync();
await job.GetExecutionProgressTask(cancellationToken);
logoAsset имеет assetFile назвал "logo.jpg".
Я пробовал, но он не работает. Такая же ошибка, как и раньше. – Alex
Можете ли вы дать мне json, который будет работать на вас? – Alex
Привет Алекс, Мы обнаружили две отдельные ошибки в компоненте наложения: 1. Код ошибка, что неправильно обработка предустановленных настроек, в результате чего некоторые задания закодировать к сбою 2. Неправильное обращение случая, когда оверлейное изображение находится в отдельном исходном активе Можете ли вы поделиться идентификатором задания вашего последнего сбоя, используемым центром обработки данных и ок. время провалилось? Затем мы можем подтвердить, что ваш код попадает в проблему №1. Инженер работает над исправлением, поскольку я пишу это ... Благодарим за ваше терпение! – johndeu