# #firebase #react-native #expo #firebase-storage
Вопрос:
Я использовал хранилище firebase для хранения своей музыки и напрямую передавал их с их аудиоадресов в свое приложение, но когда я транслирую около 5 песен, это говорит мне, что был использован целый гигабайт.Это мой код
const Tracks = [
{
id: 0,
track: {uri:'https://firebasestorage.googleapis._wind_trees_leaves_falling_qld_australia_56740.mp3?alt=mediaamp;token=5-436c-ad4b-1497110c3c2f'},
},
{
id: 1,
track: {uri:'https://firebasestorage.googleapis.cot.com/o/song files/Chocolate Cookie Jam - An Jone.mp3?alt=mediaamp;token=5-89ef-ec154734c584' },
},
{
id: 2,
track: {uri:'https://firebasestorage.googleapis.com/v0/b.com/o/song files/melatonin/Atch - All The Same.wav?alt=mediaamp;token=b4-403b-b455-cc1c115d463c' },
},
{
id: 3,
track: {uri:'https://firebasestorage.googleapis.co0files/(Sax, Dance) Luke Bergs - Dance [FTUM Release].wav?alt=mediaamp;token=613d4b05-4ec7bff3b453' },
] ...
export default function VibeScreen ({navigation, props}) {
const [Loaded, SetLoaded] = React.useState(false);
const [Loading, SetLoading] = React.useState(false);
const [CurrentSong, SetCurrentSong] = React.useState(Tracks[0]);
const sound = React.useRef(new Audio.Sound());
React.useEffect(() => {
LoadAudio();
return () => Unload();
}, [CurrentSong]);
const Unload = async () => {
await sound.current.unloadAsync();
};
const PlayAudio = async () => {
try {
const result = await sound.current.getStatusAsync();
if (result.isLoaded) {
if (result.isPlaying === false) {
sound.current.playAsync();
}
}
} catch (error) {
console.log(error);
}
}; ...<TouchableOpacity onPress={PlayAudio}>
Существует ли более эффективный способ потоковой передачи аудио с firebase без использования большого объема загрузки хранилища ? Извините, я все еще немного новичок в firebase и серверах.
Комментарии:
1. Вопрос немного расплывчатый, и, не зная конкретного размера каждой из 5 песен, мы бы просто предположили. Можете ли вы прояснить этот вопрос?
2. Извините за это, каждая песня длится около 2-3 минут, и я немного преувеличил с 1 ГБ. Но я только что протестировал его, и после воспроизведения 7 песен firebase говорит, что я уже использовал 315 МБ данных для хранения. Это нормально для потоковой передачи аудио, и вы думаете, что я должен хранить свое аудио в локальном хранилище приложений? Спасибо за вашу помощь
3. Спасибо за вашу помощь, но я только что преобразовал их из Wav в Mp3 и немного сжал, и теперь для воспроизведения 9 песен требуется всего 20 Мбайт! Качество, честно говоря, тоже едва заметно отличается.