Сохранение короткого аудиофайла / потокового видео в приложении

Я планирую создать приложение, которое использует серверную часть Parse.com для аутентификации пользователя / сообщений / подписчиков / и т. Д. Я хочу, чтобы пользователи могли загружать образец музыкального файла в Parse (или альтернативное решение), а затем передавать или пусть другие смогут транслировать его. Мне сказали, что можно сохранить файл, используя PFFile, но как насчет потоковой передачи?

Также это будет противоречить правилам Apple, поскольку в конечном итоге это позволит пользователям покупать эти музыкальные файлы через приложение, или мне придется использовать какие-либо учетные записи / файлы iTunes?

Спасибо за помощь в продвижении

1 ответ

С точки зрения загрузки его для разбора:

PFObject *testObject = [PFObject objectWithClassName:@"TestObject"];

//get the audio in NSData format
NSString *filePath = [[NSBundle mainBundle] pathForResource:@"02 Interstellar Overdrive" ofType:@"m4a"];
NSData *audioData = [NSData dataWithContentsOfFile:filePath];

//create PFFile to store audio data
PFFile *audioFile = [PFFile fileWithName:@"02 Interstellar Overdrive.m4a" data:audioData];
testObject[@"audioFile"] = audioFile;

//save
[testObject saveInBackground];

С точки зрения потоковой передачи с серверов Parse используйте AVPlayer, который позволяет потоковую передачу. Вы можете использовать AVAudioPlayer, если хотите сначала скачать всю песню перед воспроизведением:

PFQuery *query = [PFQuery queryWithClassName:@"TestObject"];
[query whereKeyExists:@"audioFile"];
[query findObjectsInBackgroundWithBlock:^(NSArray *objects, NSError *error) {
    if (!error)
    {
        PFObject *testObject = [objects lastObject];
        PFFile *audioFile = testObject[@"audioFile"];
        NSString *filePath = [audioFile url];

        //play audiofile streaming
        self.avPlayer = [[AVPlayer alloc] initWithURL:[NSURL URLWithString:filePath]];
        self.avPlayer.volume = 1.0f;
        [self.avPlayer play];

    } else {

        NSLog(@"error = %@", [error userInfo]);
    }
}];

Не могу сказать, позволит ли Apple продавать музыку в вашем приложении или нет.

Другие вопросы по тегам