J'essaie de lire un fichier audio avec un format de chaîne binaire renvoyé par Amazon Polly. Pour cela, j'utilise 'react-native-fetch-blob' et je lis un flux, mais j'obtiens toujours des erreurs du pont en disant 'Invalid data message - tout doit être de longueur: 8'. Il arrive quand je tente d'ouvrir le flux:Réagir Native. MP3 Binary String (Uint8Array (9549)) pour diffuser ou enregistrer
Voici le code:
//polly config
const params = {
LexiconNames: [],
OutputFormat: "mp3",
SampleRate: "8000",
Text: "All Gaul is divided into three parts",
TextType: "text",
VoiceId: "Joanna"
};
Polly.synthesizeSpeech(params, function(err, data) {
let _data = "";
RNFetchBlob.fs.readStream(
// file path
data.AudioStream,
// encoding, should be one of `base64`, `utf8`, `ascii`
'ascii'
)
.then((ifstream) => {
ifstream.open()
ifstream.onData((chunk) => {
_data += chunk
})
ifstream.onError((err) => {
console.log('oops', err.toString())
})
ifstream.onEnd(() => {
//pasing _data to streaming player or normal audio player
ReactNativeAudioStreaming.play(_data, {showIniOSMediaCenter: true, showInAndroidNotifications: true});
})
})
});
Une autre solution, j'ai aussi essayé est d'enregistrer le flux dans un fichier pour le charger plus tard, mais je eu des bugs similaires. RNFetchBlob.fs.createFile("myfile.mp3", dataG.AudioStream, 'ascii');
merci énormes à l'avance
Où '_data' est-il défini? Pouvez-vous inclure le chemin d'accès complet au fichier audio à Question? – guest271314
Pourquoi demandez-vous un 'Blob' si vous attendez de lire un flux de' Uint8Array's en morceaux? – guest271314
@ guest271314 Merci de votre aide à ce sujet. – user2956369