azerphoenix
@azerphoenix
Java Software Engineer

Как создать проигрыватель для гитарной табулатуры?

Добрый день!
Хотелось создать сайт для проигрывания табулатур созданных в guitar pro (gp5 и т.д.).
Есть ли готовая библиотека на Java или на Javascript? Сайт планирую создавать на основе Spring Boot (Java), но как я понимаю, мне нужна js библиотека для реализации подобного функционала... Никогда с подобным раньше не сталкивался... Интересуют мнения знатоков)
Интересуют сайты наподобие:
songsterr.com
ultimate-guitar.com
  • Вопрос задан
  • 178 просмотров
Решения вопроса 1
azerphoenix
@azerphoenix Автор вопроса, куратор тега Java
Java Software Engineer
В общем, я остановил свой выбор на данной библиотеке.
https://www.alphatab.net/
https://github.com/CoderLine/alphaTab
Как мне кажется, это самое адекватное бесплатное решение на данный момент)))
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 1
VariusRain
@VariusRain
музыкант-программист-конструктор
Готовых библиотек нет 100%, а если и можно найти что-то (в чём я лично сомневаюсь), то оно скорее всего будет платным.
Здесь нужно решить несколько задач:
1) Придумать как воспроизводить звук.
Средствами чистого JS и HTML5 это делается в одну строчку кода. Другой вопрос, какой звук нужно воспроизводить
Тут я виду два варианта:
  1. Использовать предзаписанные звуки нот - звучать будет скорее всего красиво, но тяжело и много подготовительной работы
  2. Воспроизводить звук средствами MIDI - легче и продуктивнее, можно посмотреть в сторону (midi.js)

2) Необходимо решить что именно воспроизводить. Так как табулатуры можно писать в разных программах, а не только гитарпро, то, скорее всего правильнее будет идти по пути универсализации. Так или иначе, gtp - это проприетарный формат и читать его на стороне JS будет дюже затратно. Как мне кажется необходимо на стороне сервера парсить загружаемый туда файл таб и преобразовывать в midi или какой-то собственный формат и уже его отдавать на воспроизведение.
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы