in src/AIHub/Controllers/AudioTranscriptionController.cs [131:168]
public async Task<IActionResult> UploadFile(IFormFile audioFile, string prompt)
{
// Check no audio file was uploaded
if (CheckNullValues(audioFile))
{
ViewBag.Message = "You must upload an mp3 audio file";
return View("AudioTranscription");
}
// Upload file to azure storage account
string url = audioFile.FileName.ToString();
// Console.WriteLine(url);
url = url.Replace(" ", "");
// Console.WriteLine(url);
BlobClient blobClient = containerClient.GetBlobClient(url);
var httpHeaders = new BlobHttpHeaders
{
ContentType = "audio/mpeg",
};
await blobClient.UploadAsync(audioFile.OpenReadStream(), new BlobUploadOptions { HttpHeaders = httpHeaders });
// Get the url of the file
Uri blobUrl = blobClient.Uri;
if (CheckImageExtension(blobUrl.ToString()))
{
ViewBag.Message = "You must upload an audio file with .mp3 extension";
return View("AudioTranscription", model);
}
// Call EvaluateImage with the url
await TranscribeAudio(blobUrl.ToString());
ViewBag.Waiting = null;
// return View("AudioTranscription", model);
return Ok(model);
}