static async Task IndexMediaBatch(string containerName, List <Tuple <string, string> > mediaItems) { var container = new MediaAssetsContainer(StorageAccountConnectionString, containerName); var client = new VideoIndexerClient(Location, AccountId, ApiKey, true); foreach (var mediaItem in mediaItems) { Console.WriteLine($"Indexing: { mediaItem }"); string sasUrl = container.GetBlobReadSas(mediaItem.Item1); string result = await client.IndexAsync(sasUrl, mediaItem.Item2); Console.WriteLine(result); Thread.Sleep(15000); } }
static async Task UploadAndIndexMediaAsync(string containerName, string path, string blobName, string videoName) { var container = new MediaAssetsContainer(StorageAccountConnectionString, containerName); Console.WriteLine($"Uploading { blobName } to blob storage..."); await container.UploadFileAsync(path, blobName); Console.WriteLine("Creating SAS..."); string sasUrl = container.GetBlobReadSas(blobName); var client = new VideoIndexerClient(Location, AccountId, ApiKey, true); Console.WriteLine("Calling API..."); var response = await client.IndexAsync(sasUrl, videoName); Console.WriteLine(); Console.WriteLine(response); Console.WriteLine(); }