有没有人知道,如何使用JS将音频文件如何转换成base64格式的?
- 发布:2015-07-19 14:10
- 更新:2016-08-09 16:41
- 阅读:30661
最佳回复
通过读取文件 ,然后转码 .图片可以,其他文件一样可以的
// Read data from file
以www目录下audio/shake.wav为例:
plus.io.requestFileSystem(plus.io.PRIVATE_WWW,
function(fs) {
var rootEntry = fs.root;
var reader = null;
rootEntry.getFile('audio/shake.wav', {},
function(entry) {
entry.file(function(file) {
reader = new plus.io.FileReader();
reader.onloadend = function(e) {
plus.console.log("Read success");
// Get data
plus.console.log(e.target.result);
};
reader.readAsDataURL(file);
},
function(e) {
alert(e.message);
});
});
});
小闹 (作者)
我这边没有问题,你检查一下代码吧
-
你好,我用上面代码写的不执行,能给指导下吗?
<script>
var addr1 = document.getElementById("paoteooo1").src;
var addr2 = document.getElementById("paoteooo2").src;
function plusReady(){
plus.io.requestFileSystem(plus.io.PRIVATE_WWW,
function(fs) {
var rootEntry = fs.root;
var reader = null;
rootEntry.getFile(addr1, {},
function(entry) {
entry.file(function(file) {
reader = new plus.io.FileReader();
reader.onloadend = function(e) {
plus.console.log("Read success");
// Get data
plus.console.log(e.target.result);
};
reader.readAsDataURL(file);
},
function(e) {
alert(e.message);
});
});
});
}
if(window.plus){
plusReady();
}else{
document.addEventListener("plusready",plusReady,false);
}
</script>
2015-10-19 15:10
data:audio/amr;base64,IyFBTVIKPJEXFr5meeHgAeev8AAAAIAAAAAAAAAAAAAAAAAAAAA8SHcklmZ54eAB57rwAAAAwAAAAAAAAAAAAAAAAAAAADxVAIi2Znnh4AHnz/AAAACAAAAAAAAAAAAAAAAAAAAAPEj5H5ZmeeHgAeeK8AAAAMAAAAAAAAAAAAAAAAAAAAA8VP0ftmZ54eAB58/wAAAAgAAAAAAAAAAAAAAAAAAAADxI9R+WZnnh4AHnivAAAADAAAAAAAAAAAAAAAAAAAAAPFT9H7ZmeeHgAefP8AAAAIAAAAAAAAAAAAAAAAAAAAA8SPUflmZ54eAB54rwAAAAwAAAAAAAAAAAAAAAAAAAADxU/R+2Znnh4AHnz/AAAACAAAAAAAAAAAAAAAAAAAAAPEj1H5ZmeeHgAeeK8AAAAMAAAAAAAAAAAAAAAAAAAAA8VP0ftmZ54eAB58/wAAAAgAAAAAAAAAAAAAAAAAAAADxI9R+WZnnh4AHnivAAAADAAAAAAAAAAAAAAAAAAAAAPFT9H7ZmeeHgAefP8AAAAIAAAAAAAAAAAAAAAAAAAAA8SPUflmZ54eAB54rwAAAAwAAAAAAAAAAAAAAAAAAAADxU/R+2Znnh4AHnz/AAAACAAAAAAAAAAAAAAAAAAAAAPEj1H5ZmeeHgAeeK8AAAAMAAAAAAAAAAAAAAAAAAAAA8VP0ftmZ54eAB58/wAAAAgAAAAAAAAAAAAAAAAAAAADxI9R+WZnnh4AHnivAAAADAAAAAAAAAAAAAAAAAAAAAPFT9H7ZmeeHgAefP8AAAAIAAAAAAAAAAAAAAAAAAAAA8SPUflmZ54eAB54rwAAAAwAAAAAAAAAAAAAAAAAAAADxU/R+2Znnh4AHnz/AAAACAAAAAAAAAAAAAAAAAAAAAPARefZN0cQVxB5ZqgEQQYdv2klCY/5V3HSSQm+Oh+vA8ToFmlrgCIIAfOe8UKkCqkpAbIB2XyvoCa17yyCL5YDwCfSOOTog4QQZ7q0YK40KCwn0BhlAdcmNFfQL+jUxAPE5cf749XAHAloi/AttqEaxuVUCG5Rkg9Yw64hKrusA8AJJYi2FwCGFDUCpMfdh2z7sp9hYd3hLm1QEau4YPwDzeQHyjRQgCgB4qz9fyyiqHboEhczFrHlvaVvHtw/rAPAKTc/v9YWkAH2raj8AAJ/JbheabG0/Cw8PYE3/hvsA82EtxlLlkAwDCK7p5p6CQOKRnT4StknZVy4KyMGIOwDwQh2aJX2oYgFp6/304izKBo9Vew9a4//4xwvARL3WAPOC6Z7QxlICAPDw7+HBOM55aBsk8+8zdWPXlcBpGqQA8DHtsPtt5naA9O8ostWcYz8xL8FAfb5hmimfgqn00ADzgKXHnecRHwJdAeqKh6K767D68K0OA1D8S7yzFPVrAPBxvHZazxojgj3GK2p6Go8n236dsjiA/BKSov0Sl4KA8Dq1jPffETAFKUo+CdxUFhx3ORo8bBTNXMA4PyDFgoDwIb2f/81MqASx9X6UrBt2fr5yg/5teB0fCu/UEg1zAPBSpeanayQYBDqg6W7MbhOyvoKC2JgJ1vY4kxlWu5JA8Bmx/7A5TCGHCKopBqZ+z6n7VFWV3v79BFhwQvSkDQDzgW2ejSPCQQD08f1Yk7WOXrHt6fDNh8tIiLMKxYcCQPAh7a+dLXAXhDv16dR1wGuvM0E7EFTNiRruV9DAgSlA82GVkt9hoKACXcM+QfLgdtJPHZ29HyLrfb6sta7c/UDwErF7kp10aQYeGf0lQI8Sy90pbc8ELtAmnSWnx3uaAPODaX6X+PKyBSj2vks4JI5v7eMl43WIc2slzjWAxeaA8CHp/7gMsCmEO45/aeFTmg3dL/JMPFe7JEPQlqcGQkDwauH29/2gpIS1D74RoX3KTQnsVgJO0t681Cg/82PGAPARfbUH88MVAWw6qNBY2U9L9r+girgheatWhSOiICMA8GrthvaA4Q4Bb8r/cevyOne+uibRD/UkdD6vGqfXuIDwIqI1Gr7gDwFMoP76aaGim3DAyFe5WN9D/UltZC8DAPA7Gabz2+ChA8OE/KF8k37Wg1XN6rl1SlE6xAT+tawA8BrlpR3iVDIDT6m8Y1pyamvdaIxdEldcSRyhX5/jnIDwIuWW+6EwVAS3wH7awRVmeEUp9M1J8xWB2vKwYDTaAPA5fJOaqkhOBDvj/IoByqLxrrwtlMP1AAy15I66xrZA8CKhYrkwqkCCW5A8vHi0boWWLOqyUanOiBV2NJOfkEDwUbHGX+SoQwB/tCkvdpbH3TGjXcyZND6qFekOsSeZAPALGjUdV/MLBB0gPz8FVsI6e4F8SukBzlo22RZJeSaA8RMlntW0skECXubqSu9sc12CLFLSN7MKxHW5EaUPJQDwEyWWXWp4UgQ/lLzcCZ22yyL6rEsmnqhbEy50HpQ5APOC4e5XtnAdAl2+PYye/HYr5DB4ta0GQE3yYHTJ8bgA8BO1q5Kk0EIC1UHrw0Ngo/zF40Kc+U/qB1jYz45c94DwgsoCXr75tYHXCf3xxR9qC95hxsC68jeJdnUZ5BRCAPARDgf427TNhJKBfzYDPw79NVQNKtBQSXJw6qoe1ccA8DqCLO+ryEkFJxwpxEySKxAzpyONhvQ6ayfWpp0EpIDwCyXSz7bJSgYZ1vwJ0kGeavpxAOd3O5IXvuf4pAzFAPNjJKOd+yBDhDjj7tnaSqL8DzsDMDo0aUqY2aVU1LsA8BLtznhngY0AeeR+vdH41gzVKjOE2ffP+LZwQQo9H0DzgZHSOuPYTgLRLH2I+fyGdgl3W7AHkXgC0ZTs+BDLQPA6tdbYmeJpA8abaWFQNANfhmmIF/TnePNDcB5imDyA8CCJ6lr94FaBa8U/augpolrum7VKPA4RedfegnUmWgDwgiWz/XUgQoSjxWt+oqx/ljRDNRSOsyWH8m+qojZkQPAZoY6FeoAyAH7Hf3bZkE7oTVxX48yZl6Yw8QTNvl6A8HqEginQwDoFDPu+EMP7FtL7YsjXAESGvLeENoHStoDwIXF6+GjANoB8RLzWh8IKIFDPP826Y9cIyEkDYAncQPAaTKI/+0jVAW087CNBjW4rkJ5mH8aKwd/kmpYBEkoA8CExbn/+pMmEtbQ/0FZtfmv3dScEYh5LRyZF3MyK1wDzgiHuOUzwEoJYyPxOJQreRjp7hCbit/c9VScOBzUOAPAbIXbZBGC0hD6baA0cepd8n6nkWvJkr/rMqDMI12cA8GqkXlkken6FKFQ9gko3Qv7VjbcwetxBcrN/C8xy/wDwOYCGSQ3AUgQ74ml47qIvKjYhjj3vhOlDQS0VILM0QPOCt1p4PuhFBD7F4b2oaGxFqxv2eph7FTeZKnv4WIbA8Dnpjjf3cDSAfZdvPoTW7qMl94msHPRfxGM2BwltM0DwIVCy//nhCAD2xKl5HxHbk61+7XH/gEXfCO5tJAUXAPASSgY5hQliAlg9q84PK6dplkAZFmlj0Bqxwvi6eesA84GN4PkhQlAGGo/+RWRBmjDD3KywNXqY3mqtYZooQgDwIoWeLRmQcADjRapuS8oLqaLI/tsM5e7BBXtn7oidAPARuXo4R2QtBJNnIRqdKgx6lRm7yGoAOkTrgM0jUk4A8GrpjOOe6TcAfw1p2Gbhk5ob62w0cdK001vNe1GoxQDwO7I3//noQgQ6l33AEWPiCUf8GCRSApbnmg5bwWY/wPDS7KZBTmgBBwUp6QRwdiMFTpV86BPi6NiFlWkYIyVA8BJFmzpQUB2EOAupOLhiw+Y2uTsQ09EHwZXLb9h6AQDwePotPuuwBASSqP/YLcLWU/JRH96Tilxj3ehwvtM+APAi5X8NuOIHgW2WKKF0TSecB6FMCb6FvPMPDDZQfqwA8Tutz7W0UZyeB4FpRJkSf1uR1/aZKkkwS3/D1RlyyQDzgxnSzHswBgeMpSjTye6vowORbeRuLdlvDoVP4cuBgPBpxc0//UAHBeWmq1lIKdP5Q1hNMYldwB5q/GXXx2KA8BKkkievKAaHC+LolMh 这是我转换完的音频 播放不了,你们可以播放吗
趴趴熊
如果我想得到base64编码,应该是var v = reader.readAsDataURL(file)还是var v = e.target.result;还是其他的?
2015-10-20 11:34
stock2
var v = e.target.result
2015-10-20 13:15
趴趴熊
回复 stock2:谢谢
2015-10-20 15:36
stock2
不客气 :D
2015-10-20 18:05
奎子
为什么
reader.onloadend = function(e) {
plus.console.log("Read success");
// Get data
plus.console.log(e.target.result);
};
没法进入 这个方法里面??
2016-03-07 15:13
w***@163.com
为什么我用安卓的可以,用苹果的测试就取不到base64?
plus.io.requestFileSystem()这个都执行不了,是路径问题吗
2016-07-07 17:23
freedemon
回复 w***@163.com:对啊对啊 情况跟你一样,哥们你解决了吗
2016-08-09 16:43
freedemon
安卓没问题,为什么ios发的WAV却不行,查看了一下rootEntry.getFile方法进不了。
2016-08-09 16:45