Я пытаюсь создать фильтр для потока, в основном просто для его обрезки. Актив соответствует живому потоку, который все еще продолжается.
Это мой звонок через .net sdk (Microsoft.Azure.Management.Media, версия = 2.0.1.0), который завершается с 400 и без дополнительной информации:
await _client.AssetFilters.CreateOrUpdateAsync(_config.ResourceGroup, _config.AccountName,
_assetName, filterName, new AssetFilter()
{
PresentationTimeRange = new PresentationTimeRange()
{
StartTimestamp = 100000000,
EndTimestamp = 150000000,
LiveBackoffDuration = 0,
Timescale = 10000000,
ForceEndTimestamp = false
},
Tracks = new List<FilterTrackSelection>()
});
Попытка сделать то же самое с помощью http-запроса завершается успешно, фильтр создается и может использоваться:
var uri =
$"https://management.azure.com/subscriptions/{_config.SubscriptionId}/resourceGroups/{_config.ResourceGroup}/providers/Microsoft.Media/mediaServices/streaming/assets/{_assetName}/assetFilters/{filterName}?api-version=2018-07-01";
httpClient.DefaultRequestHeaders.Authorization = new AuthenticationHeaderValue("Bearer", Token);
var assetFilter = JsonConvert.SerializeObject(new AssetFilter()
{
PresentationTimeRange = new PresentationTimeRange()
{
StartTimestamp = 100000000,
EndTimestamp = 150000000,
LiveBackoffDuration = 0,
Timescale = 10000000,
ForceEndTimestamp = false
},
Tracks = new List<FilterTrackSelection>()
});
HttpRequestMessage request = new HttpRequestMessage(HttpMethod.Put, uri);
request.Content = new StringContent(assetFilter, Encoding.UTF8, "application/json");
await httpClient.SendAsync(request);
Я отправляю один и тот же объект AssetFilter в обоих случаях, есть предложения относительно того, почему первый вызов не будет выполнен?
Любая помощь будет оценена.
Спасибо!