Я хочу изучать аудиопрограммирование [закрыто]

Нужно отметить, что unset() сохранит индексы нетронутыми, который является тем, что Вы ожидали бы при использовании индексов строк (массив как хеш-таблица), но можете быть довольно удивительными при контакте с целочисленными индексными массивами:

$array = array(0, 1, 2, 3);
unset($array[2]);
var_dump($array);
/* array(3) {
  [0]=>
  int(0)
  [1]=>
  int(1)
  [3]=>
  int(3)
} */

$array = array(0, 1, 2, 3);
array_splice($array, 2, 1);
var_dump($array);
/* array(3) {
  [0]=>
  int(0)
  [1]=>
  int(1)
  [2]=>
  int(3)
} */

Так array_splice() может использоваться, если требуется нормализовать целочисленные ключи. Другая опция использует array_values() после unset() :

$array = array(0, 1, 2, 3);

unset($array[2]);
$array = array_values($array);
var_dump($array);
/* array(3) {
  [0]=>
  int(0)
  [1]=>
  int(1)
  [2]=>
  int(3)
} */

18
задан Community 23 May 2017 в 11:44
поделиться

2 ответа

«Звуковое программирование» - очень широкое поле. Во-первых, это определенно выполнимый предмет, но, поскольку вам нужно втиснуть материал в один семестр, вам нужно будет ограничить объем. Я вижу, что вы ищете место для начала, поэтому вот несколько идей, которые заставят вас задуматься.

Поскольку вы упомянули как «как звук работает в информатике», так и «синтезаторы», стоит указать на разницу между аналоговым звуком , сэмплированным звуком и синтезированным звуком. Звук , так как это разные понятия. Я кратко объясню их здесь.

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

Сэмплированный звук - это звуковое представление, которое хорошо подходит для обработки с помощью компьютера. Люди больше всего знакомы с сэмплированным звуком через компакт-диски и другие музыкальные записи. Аналоговый сигнал дискретизируется с некоторой частотой (например, 44,1 кГц для записи CD). Таким образом, дискретизированный звуковой сигнал является дискретным во временной области. Если сигнал квантован , то он будет дискретным и в амплитудной области. Форматы, такие как MP3, являются выборочными форматами. Если вам интересно, есть много вещей, которые можно изучить в этой области, например, восстановление (удаление статического и т. Д.) И сжатие (опять же, кодеки MP3, Ogg Vorbis). Это очень весело, потому что есть много экспериментов и кода.

Как аналоговый, так и дискретизированный звук глубоко копаются в поле, называемом Цифровая обработка сигналов . Google для этого, чтобы почувствовать, что это такое. Его часто преподают в качестве курса в университетах, поэтому, если вы действительно заинтересованы, вы можете взглянуть на некоторые слайды лекции или даже попробовать некоторые из более ранних, более простых проектов.

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

Итак, основываясь на том, что я написал - выберите направление, которое вас больше интересует, поищите в Google и уточните свой вопрос.

РЕДАКТИРОВАТЬ

Хорошая книга для чтения - эта . Вероятно, вы можете просмотреть похожие заголовки в Amazon и найти что-то более новое, но прошло уже много времени с тех пор, как я совершил покупки по обработке аудио.

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

22
ответ дан 30 November 2019 в 08:20
поделиться

Я бы порекомендовал эту книгу: http://mitpress.mit.edu/catalog/item/default.asp?ttype=2&tid=8218 (часть ее доступна здесь: http://books.google.com/books?id=nZ-TetwzVcIC&printsec=frontcover&dq=computer+musical+tutorial&hl=pt-BR&ei=D-dKTaKsBMOB8gbF4KDcDg&sa=X&oi=book_result& ; ct = result & amp; resnum = 1 & amp; ved = 0CDgQ6AEwAA # v = onepage & amp; q = computer% 20musical% 20tutorial & amp; f = false )

Еще одна вещь, которую вы можете посмотреть, это puredata, это графическая среда с открытым исходным кодом для звукового программирования, и она отлично подходит для начинающих. ( http://puredata.info/ )

2
ответ дан 30 November 2019 в 08:20
поделиться
Другие вопросы по тегам:

Похожие вопросы: