Как использовать wavesurfer.js в формах xamarin для Android? У кого-нибудь может быть идея?
Сейчас я пытаюсь загрузить файл с внутреннего устройства,
Working code:
enter code here
wavesurfer.load('file:///assests_content/rooster.wav');
alert('hi2');
Не работает код:
wavesurfer.load('file:///storage/emulated/0/new/rooster.wav');
alert('hi2');
1 ответ
Этот код работает отлично, я исправил его, загрузив файл в виде BLOB-объекта.
"<html>
<head>
<script src=""https://unpkg.com/wavesurfer.js""></script>
<script src=""wavesurfer.spectrogram.js""></script>
</head>
<body>
<h1>Xamarin.Forms</h1>
<p>Welcome to WebView.</p>
<div id=""waveform""></div>
<div id=""spectrogm""></div>
<div id=""MyTest"">my divs</div>
<script>
try{
alert('hi');
var wavesurfer = WaveSurfer.create({
container: '#waveform',
waveColor: 'violet',
progressColor: 'purple',
plugins: [
WaveSurfer.spectrogram.create({
wavesurfer: wavesurfer,
container: ""#spectrogm""
})
]
});
alert('hi2');
}
catch(err)
{
alert(err.message);
}
function readTextFile(file)
{
try
{
var blob = null;
var rawFile = new XMLHttpRequest();
rawFile.open(""GET"", file);
rawFile.responseType = ""blob"";//force the HTTP response, response-type header to be blob
rawFile.onload = function()
{
blob = rawFile.response;//xhr.response is now a blob object
alert('blob');
wavesurfer.loadBlob(blob);
}
rawFile.send();
alert('completed');
}
catch(err)
{
alert('error');
alert(err);
}
}
readTextFile('file:///storage/emulated/0/new/rooster.wav');