Как мне воспроизвести MP3-файл с помощью Lazarus на macOS

#macos #mp3 #lazarus

#macos #mp3 #lazarus

Вопрос:

Я хотел бы иметь возможность программно воспроизводить MP3-файл, используя Lazarus на macOS.

Lazarus 2.0 (fpc 3.0.4) на macOS отлично работает для меня, но одна вещь, которую я не могу сделать, — это воспроизвести MP3-файл программно.

Мне удалось скомпилировать и запустить демонстрационный проект OALSoundManager, но таким образом можно воспроизводить только файлы WAV.

Я потратил несколько часов, следуя различным указаниям с форума freepascal, но мне все еще не удавалось выполнить основные операции воспроизведения:

  1. Загрузите MP3-файл
  2. Начните его воспроизводить.
  3. Получить текущую позицию воспроизведения (например, во время таймера включения).
  4. Получать уведомления, когда он остановится.

Я согласен использовать любую распространенную библиотеку. Конечно, чем меньше зависимостей, тем лучше.

Как только я смогу воспроизвести файл, я смогу разобраться с остальным, но было бы здорово, если бы пример также показывал:

  1. Начать воспроизведение с заданной временной позиции
  2. Приостановка / перезапуск

Большое вам спасибо за любую помощь!

Ответ №1:

Возможно, вы сможете использовать Castle Engine и OpenAL.

Вы можете установить движок Castle Engine из встроенного Lazarus. В главном меню в разделе «Пакет» -> «Онлайн-менеджер пакетов» вы сможете отфильтровать и установить «castle».

Затем вы должны быть в состоянии открыть пример проекта:

https://github.com/castle-engine/castle-engine/blob/master/examples/audio/alplay.lpr

Удачи,