diff --git a/examples/ggwave-js/index-tmpl.html b/examples/ggwave-js/index-tmpl.html
index 2b4d9b4..440f142 100644
--- a/examples/ggwave-js/index-tmpl.html
+++ b/examples/ggwave-js/index-tmpl.html
@@ -137,7 +137,9 @@
recorder.onaudioprocess = function (e) {
var source = e.inputBuffer;
var res = ggwave.decode(instance, convertTypedArray(new Float32Array(source.getChannelData(0)), Int8Array));
+
if (res && res.length > 0) {
+ res = new TextDecoder("utf-8").decode(res);
rxData.value = res;
}
diff --git a/tests/test-ggwave.js b/tests/test-ggwave.js
index 48e40ec..19876c0 100644
--- a/tests/test-ggwave.js
+++ b/tests/test-ggwave.js
@@ -13,7 +13,7 @@ factory().then(function(ggwave) {
// decode the audio waveform back to text
var res = ggwave.decode(instance, waveform);
- if (res != payload) {
+ if (new TextDecoder("utf-8").decode(res) != payload) {
process.exit(1);
}
});