Последние несколько дней я боролся с самыми отправными точками веб-приложения, которое пытался создать.
Намерение состоит в том, чтобы оно захватывало аудиофайлы. которые уже находятся на сервере, выполнить с ними некоторые действия (объединить, микшировать и т. д.) в соответствии с требованиями пользователя и опубликовать выходной файл .mp3, который пользователь затем сможет загрузить.
Тем не менее, это первая часть, с которой я боролся. Что бы я ни делал, я просто не могу понять, как получить файл .wav или любого другого аудиоформата с сервера.
Я пытался получить его через Http.GetAsyncStream. ("path/to/file.wav"); вызов, но это застревает в данных потока мусора, которые я не могу преобразовать ни во что другое, поскольку в NAudio отсутствует mfplat.dll на сервере Github Pages.
Я пробовал другие методы Http GetAsync, но в результате мне оставалось еще меньше возможностей для работы.
Я пробовал просто попробовать чтобы прочитать файл напрямую через var first = new AudioFileReader("path/to/file.wav"); и это постоянно выдает ошибку с System.IO.DirectoryNotFoundException: IO_PathNotFound_Path, /sounds/testing/switch.wav , хотя он абсолютно находится в корневой папке сервера, и Javascript-сторона Blazor действительно может его прочитать.
Через несколько дней Погуглив и пытаясь разобраться в этом сам, я застрял. Мне явно не хватает чего-то базового в работе Blazor, но я понятия не имею, что именно.
Любая помощь? Пожалуйста?
РЕДАКТИРОВАТЬ:
В соответствии с просьбой, вот несколько моих попыток.
Код: Выделить всё
public void ConcatAudio()
{
audioTest = new WaveFileReader("sounds/testing/switch.wav");
}
Вместо этого возникла ошибка с исключением System.IO.DirectoryNotFoundException: IO_PathNotFound_Path, /sounds/testing /switch.wav ошибка.
Я тоже пробовал несколько вариантов.
Код: Выделить всё
protected override async Task OnInitializedAsync()
{
audioTest = (WaveFormatConversionStream) await Http.GetStreamAsync("sounds/testing/switch.wav");
}
These either error out with an invalid cast error, or, as the only one where I somewhat succeeded, gave me a System.IO.Stream that I couldn't really do anything with, as I needed it specifically in a format that NAudio would accept.
If required, here's a link to the full code repo, though 99% of it is the starting Blazor project.
https://github.com/DestinyPlayer/Project-Biovocoder
Источник: https://stackoverflow.com/questions/781 ... azor-setup
Мобильная версия