LINUX.ORG.RU
ФорумTalks

гитарный тюнер


1

1

хочу написать гитарный тюнер под линукс. Да, уже есть. Но отстой.

1) Что бы вы хотели от гитарного тюнера, чего сейчас нет? (Если нормальный дизайн, юзабилити, эргономика - опишите что и как хочется. Если фичи - как именно должны работать).

2) какой тюнер используешь ТЫ, и за что ты выбрал именно его?

3) Java(SWT) или Mono(Gtk)? Натив не предлагать. У нас-то оба поделия стоят, а вот что удобней в установке обычному пользователю?



Последнее исправление: stevejobs (всего исправлений: 1)
Ответ на: комментарий от prischeyadro

Ой, да ладно: скажем, флажолет на седьмом ладу первой струны дает тот же звук, что флажолет на пятом ладу второй струны.

Eddy_Em
()
Ответ на: комментарий от Sadler

шумы всегда присутствуют

Их амплитуда очень мала по сравнению с основными частотами. В результате БПФ должно иметь вид одного большого пика и последовательности равноотстоящих мелких пиков со все уменьшающейся амплитудой.

Eddy_Em
()
Ответ на: комментарий от Eddy_Em

В результате БПФ должно иметь вид одного большого пика и последовательности равноотстоящих мелких пиков

На практике же в какой-то момент получается 2 больших пика, и, зачастую, второй больше первого.

kranky
()
Ответ на: комментарий от kranky

На практике же в какой-то момент получается 2 больших пика, и, зачастую, второй больше первого.

Подозреваю, что это будет только в том случае, если ты возьмешь флажолет. Или у тебя струны ржавые/дека кривая/etc (из-за чего гасится сначала основная гармоника).

Eddy_Em
()

Присмотрись к виндовому APGuitar tuner. Сам использую через вайн, потому как линуксовые у меня или тупили или звук не захватывали.

Использую потому что простой, показывает сразу где тон струны во всем строе и близость к ближайшей ноте. А так же пресеты строев.

Короче хотелось бы как тот только еще с поддержкой альсы, джека, осс, и пульсы.

djzielony
()
Ответ на: комментарий от Sadler

Ты видел формулу ряда Фурье? (Для примера, непрерывного.) Это ряд функций вида sin(x*k/T) и cos(x*k/T), то есть таких, которые укладываются целое число раз на взятом промежутке. Что тебе покажет преобразование фурье для синусоидального сигнала, не укладывающегося целое число раз на взятом промежутке, и что ты с этим будешь делать?

prischeyadro
()
Ответ на: комментарий от prischeyadro

Что тебе покажет преобразование фурье для синусоидального сигнала, не укладывающегося целое число раз на взятом промежутке, и что ты с этим будешь делать?

Поэтому я и говорю о большем буфере, чтобы любая волна укладывалась в этот промежуток. Если у тебя буфер в 44100 отсчётов, то, очевидно, при частоте дискретизации 44100, любая волна до 1 Гц туда уложится.

Sadler
()
Ответ на: комментарий от Sadler

Поэтому я и говорю о большем буфере, чтобы любая волна укладывалась в этот промежуток. Если у тебя буфер в 44100 отсчётов, то, очевидно, при частоте дискретизации 44100, любая волна до 1 Гц туда уложится.

А волна в 1000Гц? :)

dikiy
()
Ответ на: комментарий от Sadler

Ты не въезжаешь. Не «уложиться», а «уложиться целое число раз» это функция периодическая, и с ростом длины любая синусоида то укладывается, то не укладывается. :-)

prischeyadro
()

посмотри на TC Electronics Polytune и сделай так же

marvin_yorke
()
Ответ на: комментарий от dikiy

А волна в 1000Гц? :)

А в чём проблема с волной в 1000 Гц? Если она точно не попадёт, получим небольшое размытие. Поэтому после FFT нужна интерполяция частот, чтобы получить амплитуду конкретных нот.

Sadler
()
Ответ на: комментарий от prischeyadro

Ты не въезжаешь. Не «уложиться», а «уложиться целое число раз» это функция периодическая, и с ростом длины любая синусоида то укладывается, то не укладывается. :-)

По факту это даёт всего лишь размытие между двумя band-ами. Проблемы здесь возникают только у вас.

Sadler
()

1) Что бы вы хотели от гитарного тюнера, чего сейчас нет? (Если нормальный дизайн, юзабилити, эргономика - опишите что и как хочется. Если фичи - как именно должны работать).

единственное чего бы я хотел - хорошая точность и устойчивость к помехам.

2) какой тюнер используешь ТЫ, и за что ты выбрал именно его?

исключительно железный. Потому, что настроить гитару надо быстро и идти к компу, подключать ее туда - тупняк.

тем более, что в железячных еще и микрофон встроенный. Ну и я уже молчу о том, что многим надо настраивать на сцене.

3) Java(SWT) или Mono(Gtk)? Натив не предлагать. У нас-то оба поделия стоят, а вот что удобней в установке обычному пользователю?

если будет жаба или моно, то я даже на попробовать ставить не буду.

dikiy
()
Ответ на: комментарий от Eddy_Em

Кварта, равная 3/4 октавы (флажолет на 5 ладу делит струну на 4 части, на 7 ладу - на 3 части) - это натуральная кварта. Она отличается от равномерно темперированной на 1,96 цента. Открой уже статью на википедии, что ли.

prischeyadro
()
Ответ на: комментарий от Sadler

А волна в 1000Гц? :)

А в чём проблема с волной в 1000 Гц? Если она точно не попадёт, получим небольшое размытие. Поэтому после FFT нужна интерполяция частот, чтобы получить амплитуду конкретных нот.

мы получим не небольшое размытие, а большое. Причем оно может быть настолько большим, что соседнии гармоники захватит.

Поэтому после FFT нужна интерполяция частот

это как?

dikiy
()
Ответ на: комментарий от dikiy

это как?

Вот так, расчитываем интерполированное значение в точке с частотой, соответствующей ноте.

мы получим не небольшое размытие, а большое. Причем оно может быть настолько большим, что соседнии гармоники захватит.

УМВР

Sadler
()
Ответ на: комментарий от Sadler

это как?

Вот так, расчитываем интерполированное значение в точке с частотой, соответствующей ноте.

ты получил размытый спектр. Что ты там интерполировать собрался?

мы получим не небольшое размытие, а большое. Причем оно может быть настолько большим, что соседнии гармоники захватит.

УМВР

знаю я, как у тебя ВР :) Я с этой проблемой сталкивался очень плотно.

dikiy
()
Ответ на: комментарий от dikiy

знаю я, как у тебя ВР :) Я с этой проблемой сталкивался очень плотно.

Ну сталкивался и сталкивался. А у меня таких проблем не было.

ты получил размытый спектр. Что ты там интерполировать собрался?

Давай, до свидания!

Sadler
()
Ответ на: комментарий от dikiy

это ты так сливаешь?

Я уже тебе три раза говорил, что нет у меня проблем с размытием, прями руки.

Sadler
()
Ответ на: комментарий от Eddy_Em

Это называется «ложные биения» и возникает даже на самых прямых и дорогих инструментах с самыми чистыми струнами.

kranky
()
Ответ на: комментарий от dikiy

Я сразу понял, о чём речь. Но при этом данных для тюнера более, чем достаточно. Не вижу причин заморачиваться с решением этого, если и так всё работает, гитара строится. Если тебе хочется порешать какие-то абстрактные задачи, конечно, развлекайся. А я на практике и так реализую, и всё будет работать.

Sadler
()
Ответ на: комментарий от Eddy_Em

Ну и разница тогда? Чего спорить?

Видимо, есть ценители.

Sadler
()
Ответ на: комментарий от Sadler

Я сразу понял, о чём речь. Но при этом данных для тюнера более, чем достаточно. Не вижу причин заморачиваться с решением этого, если и так всё работает, гитара строится. Если тебе хочется порешать какие-то абстрактные задачи, конечно, развлекайся. А я на практике и так реализую, и всё будет работать.

увеличение буфера тебе от утечки спектра не поможет. Что поможет - так это интерполяция _сигнала_ для его передискретизации с нужной частотой.

dikiy
()
Ответ на: комментарий от dikiy

для его передискретизации с нужной частотой.

А какая нужная? Вот хочу я получить спектр. Какую частоту я должен поставить, чтобы гарантированно не получить размытия?

Sadler
()
Ответ на: комментарий от Sadler

А какая нужная? Вот хочу я получить спектр. Какую частоту я должен поставить, чтобы гарантированно не получить размытия?

если ты заранее хочешь получить 440Гц, то и выбираешь соответствующую.

dikiy
()
Ответ на: комментарий от dikiy

если ты заранее хочешь получить 440Гц, то и выбираешь соответствующую.

Для тюнера это неприемлемо. У нас много частот во всём спектре нот гитары. Вот поэтому я и не знаю, насколько такая техника применима. Можно, конечно, подогнать частоту дискретизации так, чтобы какая-то часть нот хорошо легла в неё. Вопрос лишь в том, какая часть и стоит ли овчинка выделки.

Sadler
()
Ответ на: комментарий от Sadler

Просто не надо играть на убитых уралах - и всё будет ок.

на классике, что на нейлоне, что на металле - с этим проблемы. Особенно на металле, ведь у классики не подстроишь мензуру.

а еще ты явно играешь медиатором. Потому что, например, если играть пальцами апояндо на электрухе, отклонение может быть на всю длительность ноты. Я вот с этим мучаюсь - когда быстро играю перебором все звуки как раз попадают в зону искажения, в результате чтобы звучало нормально - нужно специально настраивать чуть ниже (что на плохих колках и без машинок - адовый ат)

stevejobs
() автор топика
Ответ на: комментарий от dikiy

Потому, что настроить гитару надо быстро и идти к компу, подключать ее туда - тупняк.

так всё равно без ноута сейчас играть нереально, разве что играешь в группе, где всё есть (и у людей на ушах нет мониторов со внешними мониторингами и метрономами, иначе всё равно нужен ноут). А если все равно на сцене есть как минимум один ноут, почему бы не юзать нормальный умный тюнер?

stevejobs
() автор топика

хочется реалистичности

и богатства тембров

kto_tama 🤡
()
Ответ на: комментарий от stevejobs

Потому, что настроить гитару надо быстро и идти к компу, подключать ее туда - тупняк.

так всё равно без ноута сейчас играть нереально, разве что играешь в группе, где всё есть (и у людей на ушах нет мониторов со внешними мониторингами и метрономами, иначе всё равно нужен ноут).

Ахренеть, ты с какой планеты? Я за все время видел только _одну_ группу с ноутом. Да и тот был только для электроники всякой.

ноут на сцене не нужен вообще. Каждый подключается к своему комбарю/педалькам и пошла музыка.

А если все равно на сцене есть как минимум один ноут, почему бы не юзать нормальный умный тюнер?

во-первых - ноут на сцене не понятно зачем вообще. Во-вторых - даже если он и есть как генератор музыки какой-то/драм-машина. Но никто уж точно не будет к нему лезть пыриться на экран, чтобы настроить гитару. У каждого есть свой тюнер.

dikiy
()
Ответ на: комментарий от stevejobs

кто сказал что гитара - электро?!

Нормальная акустика ничем не хуже.

Sadler
()
Ответ на: комментарий от Sadler

если ты заранее хочешь получить 440Гц, то и выбираешь соответствующую.

Для тюнера это неприемлемо

если бы ты видел тюнеры, то ты бы знал, что там можно выставлять руками какую конкретно ноту ты сейчас будешь строить.

dikiy
()
Ответ на: комментарий от stevejobs

а еще ты явно играешь медиатором. Потому что, например, если играть пальцами апояндо на электрухе, отклонение может быть на всю длительность ноты.

Я тебе не про длительность отклонения, а про его значимость. Если отклонение 5-10 cents, это неважно. Я играю и пальцами, и медиатором.

Sadler
()
Ответ на: комментарий от dikiy

если бы ты видел тюнеры, то ты бы знал, что там можно выставлять руками какую конкретно ноту ты сейчас будешь строить.

Всё с тобой ясно, потонул в костылях, называется.

Sadler
()
Ответ на: комментарий от dikiy

если у них цель одна, то пофиг.

Не пофиг. Если уж в железном есть какая-то необходимость в выборе той самой ноты, то в софтовом куда эффективнее просто показывать текущую звучащую ноту. По крайней мере, такая схема куда гибче.

Sadler
()
Ответ на: комментарий от Sadler

Не пофиг. Если уж в железном есть какая-то необходимость в выборе той самой ноты, то в софтовом куда эффективнее просто показывать текущую звучащую ноту. По крайней мере, такая схема куда гибче.

в железном есть два режима - автомат и с выбором. Тот, что с выбором точнее. Неужели ты думаешь, что в софтовом будет по-другому? :)

dikiy
()
Ответ на: комментарий от dikiy

У софтового мощей поболее. Если уже применять ту схему, то проще параллельно мониторить несколько нот, каждую своим FFT.

Sadler
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.