PDA

Просмотр полной версии : Пауза изменяемая во времени


сандро
09.10.2012, 21:31
Только что вернулся из будогощи с аудиоматериаллм по собакам. Вопрос касается стука колес, точнее его имитация в МСТС. В отлчии от реальных маршрутах, у нас колеса, в МСТС, стучат не на стыках, а сами по себе. Собственно хочется предельного реализма. В основной своей массе, аудиоматериал (ТЭД и остальной шум сюда не приплетаю - там все предельно ясно) содержит стук колес по сварному пути. Я свою очередь хочу сделать так, чтобы расстояние между стыками было одинаковое. Когда скорость 120км/ч длина аудиозаписи (я имею в виду продолжительность звучания) равна примерно 30 секунд, а когда 12км/ч? 300 секунд? Не повесится ли МСТС от такой длины? Вопрос - как сделать паузу привязанную к скорости закономерно? Чем выше скорость, тем короче пауза.

Должно выглядеть так: стук___пауза___стук___пауза____и.т.д.

Виктор
10.10.2012, 10:15
Я реализовал это дело так.
По скорости и частоте стуки разбиты на несколько частей (потоков), чтобы не было искажений. Проигрываемый файл - это только стуки на несколько секунд. При малой скорости сделаны вырезы шума качения между каждым стуком, на большой скорости вырезов нет, так как шум качения почти не слышен и не напрягает.
Пауза по времени собственно и задает интервал стука. Также я пробовал ставить паузу, зависящую от пройденного расстояния - работает, но по времени мне понравилось больше, сейчас уже не вспомню почему.
Для разнообразия у меня 5 видов стуков - ведь не свегда одинаковое количество стыков, и есть один длинный файл (long) - это звук стыкового пути, причем время звучания файла 24 секунды, чтобы не было накладок с временной паузой. Соответственно звучит длинный файл редко - вероятность выбора мала - он 1 на 9 коротких.

Stream (
Priority ( 6 )
Volume ( 1.0 )
Triggers ( 8

Random_Trigger ( Delay_Min_Max ( 25 35 ) Volume_Min_Max ( 0.95 1.0 ) PlayOneShot ( 10 File ( "stuk_45-65_1.wav" -1 )
File ( "stuk_45-65_2.wav" -1 )
File ( "stuk_45-65_3.wav" -1 )
File ( "stuk_45-65_3.wav" -1 )
File ( "stuk_45-65_3.wav" -1 )
File ( "stuk_45-65_4.wav" -1 )
File ( "stuk_45-65_long.wav" -1 )
File ( "stuk_45-65_2.wav" -1 )
File ( "stuk_45-65_3.wav" -1 )
File ( "stuk_45-65_4.wav" -1 ) SelectionMethod ( RandomSelection ) ) )

Initial_Trigger ( DisableTrigger( 1 ) )
Variable_Trigger ( Speed_Inc_Past 6.5 EnableTrigger ( 1 ))
Variable_Trigger ( Speed_Dec_Past 6.45 DisableTrigger ( 1 ))
Variable_Trigger ( Speed_Inc_Past 10.5 EnableTrigger ( 1 ))
Variable_Trigger ( Speed_Dec_Past 10.45 DisableTrigger ( 1 ))

)
FrequencyCurve(
SpeedControlled
CurvePoints ( 9
-17.900 23025
-15.000 21025
-10.000 19525
-8.500 19525
0.000 19025
8.500 19525
10.000 19525
15.000 21025
17.900 23025
)
Granularity ( 100 )
)

VolumeCurve(
SpeedControlled
CurvePoints ( 11
-17.95 0.0
-17.9 0.6
-15.0 0.5
-12.7 0.4
-12.65 0.0
0.000 0.0
12.65 0.0
12.7 0.4
15.0 0.5
17.9 0.6
17.95 0.0
)
Granularity ( 0.05 )
)
)
P.S. Если интересно, могу показать свой вариант звуков для квадратной ЭР2. Сделано только для кабины. Правда в неупакованном виде это весит около 50 Мб

сандро
10.10.2012, 10:31
Покажи, лучше в приват, я тоже звуки эр2 делаю (вернее аудиоматериал от 0 до 120 есть по всему - надо нарезать)..........

Не вижу где пауза привязана к скорости.

1 p.s. Я хочу 3х12,5м и 800м пауза. Мне так легче, для начала. Да и шум качения колес надо отдельно делать.

2 p.s Я так понимаю пауза не будет укорачиваться, если скорость будет расти? Ведь мы ставим время задержки, а не скорость?

Виктор
10.10.2012, 13:53
Не вижу где пауза привязана к скорости. Я же и написал, что делал по расстоянию - есть такая команда (типа distanse travel min max) тоже на рандомном триггере. Чем выше/ниже скорость, тем быстрее/медленнее проходим заданный отрезок в триггере и соответственно пауза растет или убавляется.

сандро
10.10.2012, 14:00
Ааааааааааа. Те расстояние в твоем случае от мин до макс рэндомно? Пришли пример звуков

p.s Ты привел пример: Random_Trigger ( Delay_Min_Max ( 25 35 ) Volume_Min_Max ( 0.95 1.0 ) PlayOneShot ( 10 File ( "stuk_45-65_1.wav" -1 )

Random_Trigger означает что воспроизведение будет произведено случайным образом,а ( Delay_Min_Max ( 25 35 ) о задержке по времени, а не о расстоянии.

Виктор
11.10.2012, 12:25
Вот нашел
Dist_Travelled_Trigger ( Dist_Min_Max ( 50 100 ) Volume_Min_Max ( 0.9 1.0 ) PlayOneShot ( 5 .... и т.д.
Этот триггер отвечает за воспроизведение от пройденного расстояния

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

сандро
11.10.2012, 19:07
Понятно. Да ладно? можешь не выкладывать, я в принципе то я разобрался. 50 100 это метры?

Виктор
12.10.2012, 09:31
50 100 это метры? Да, в метрах

сандро
12.10.2012, 12:46
Ясно

Seafarer
20.10.2012, 23:30
Вот нашел
Dist_Travelled_Trigger ( Dist_Min_Max ( 50 100 ) Volume_Min_Max ( 0.9 1.0 ) PlayOneShot ( 5 .... и т.д.
Этот триггер отвечает за воспроизведение от пройденного расстояния

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

А под этим тригерром и патчем 1.8хххххх вагоны на станции не стучат после остановки?

сандро
21.10.2012, 09:33
А как они будут стучать если прописать пи скорости 1-0км/ч громкость 0!

сандро
23.10.2012, 21:33
Ну и чего спрашивается надо?
http://s019.radikal.ru/i604/1210/cf/0d8c0ec79d44.jpg

SIMISA@@@@@@@@@@JINX0x1t______

Tr_SMS (
ScalabiltyGroup ( 5
Activation (
ExternalCam ()
Distance (1000)
)
Deactivation (
CabCam ()
PassengerCam ()
Distance (1000)
)
Volume(0.7)
Streams ( 1
Skip ( *** STUK-KOLES *** )
Stream (
Priority ( 6 )
Triggers ( 4
Dist_Travelled_Trigger ( Delay_Min_Max ( 25 50 ) Volume_Min_Max ( 0.0 0.3 ) PlayOneShot ( 1 File ( "stuk-15-20.wav" -1 ) SelectionMethod (SequentialSelection) ) )
Initial_Trigger ( DisableTrigger( 1 ) )
Variable_Trigger ( Speed_Inc_Past 0.0 EnableTrigger ( 1 ))
Variable_Trigger ( Speed_Dec_Past 4.166 DisableTrigger ( 1 ))
Variable_Trigger ( Speed_Inc_Past 4.166 EnableTrigger ( 1 ))
Variable_Trigger ( Speed_Dec_Past 0.0 DisableTrigger ( 1 ))
)
FrequencyCurve(
SpeedControlled
CurvePoints ( 4
-2.0 23200
-0.0 15742
0.0 15742
2.0 23200
)
Granularity ( 0.2 )
)
VolumeCurve(
SpeedControlled
CurvePoints ( 4
-4.166 0.3
-0.0 0.0
0.0 0.0
4.166 0.3
)
Granularity ( 0.11 )
)
)

)
)
)
)