Использование audioqueue для потоковой передачи аудио. Как узнать длину аудиофайла до окончания воспроизведения? - PullRequest
0 голосов
/ 25 августа 2009

Уже закончил реализацию плеера. Я хочу реализовать индикатор выполнения. Но мне интересно, возможно ли это сделать, так как мы транслируем музыку. Если нам не предоставлена ​​длина песни перед раздачей.

Пожалуйста, мне нужен ваш совет по этому вопросу.

Ответы [ 2 ]

3 голосов
/ 25 августа 2009

Если вы заранее не указали размер (или длительность) аудиофайла, вы не сможете установить диапазон индикатора выполнения (у вас не будет максимума).

1 голос
/ 28 августа 2009

На самом деле, я нашел способ сделать это, и мне это удалось. Что вы рассчитываете количество кадров в пакете песни и средний размер пакета (в байтах). Используйте NSHTTPConnection, чтобы получить размер файла, и используйте эту формуляр:

totalFrames = (fileSize * framesPerPacket / средний размер пакета)

когда у вас есть общее количество кадров, просто разделите его на битрейт, тогда вы получите общее время !!

...