Объявление форума |
Если пользуетесь личными сообщениями и получили по электронной почте оповещение о новом письме, не отвечайте, пожалуйста, почтой. Зайдите на форум и ответьте отправителю через ЛС. |
Полигон-2 » Калькуляторы, арифмометры, PDA, HPC » Свисток для Д3-28 |
<<Назад Вперед>> | Страницы: 1 2 3 | Печать |
Sinus
Newbie
Откуда: СПб Всего сообщений: 30 Рейтинг пользователя: 0 Ссылка Дата регистрации на форуме: 7 авг. 2016 |
Профиль | Сообщить модератору
NEW! Сообщение отправлено: 17 мая 2018 0:58 Сообщение отредактировано: 18 мая 2018 13:20
xoiss Возможно на хорошей аппаратуре у кого-нибудь всё более-менее получится. Но у меня пока только самый первый блин не комом вышел: каким-то чудом первая попытка оказалась удачной (см. ниже отчёт). А все остальные копии, которые я сделал для набора статистики, получились с какими-то "непонятно что". Даже не могу никак толком объяснить эти артефакты; удивляюсь сам себе... Предполагаю пока, что АРУ (в магнитофоне и, может быть, в компюьтере) вызывает некие длительные пертурбации в тракте. Может быть и длительное нарастание (введение) "постоянного уровня" негативно повлияло. Во всяком случае, тот факт, что АРУ срабатывало, было слышно при записи. Надо придумать проверки и способы борьбы с АРУ, и ещё поэкспериментировать. Здесь отчёт: test-1_16-05-2018.pdf Поправка: на более чувствительном входе магнитофона резистивный делитель напряжения был не 30к/(82к+30к) (это меня склероз подвёл), а 30к/(13к+30к) - так нарисовано в схеме; параллельно к 30ком подключено управляемое сопротивление АРУ на полевиках. Качественно это количественное уточнение сути дела не меняет. К сожалению, я только после этого мероприятия заметил, что у меня в компе была включена галка "Auto Gain Control" (все эффекты отключил, а про эту АРУ я в суете или забыл или нечаянно включил, вместо того чтобы выключить). Завтра-послезавтра повторю без этой галки, и напишу, влияет ли она и как. |
xoiss
Advanced Member
Всего сообщений: 711 Рейтинг пользователя: 0 Ссылка Дата регистрации на форуме: 30 окт. 2013 |
... мда, как говорицца, непрокатило боюсь, "цифрой" это никак не улучшить... особенно на участках, где в канале длительное время нет активности "Романтик" у Вас какой? М-201С? М-309С? М-311? ... уточните, пожалуйста, модель — я хотел бы глянуть схему его канала записи // ну, или если есть сразу в готовом виде скан его принципиалки — то пришлите, пожалуйста |
Sinus
Newbie
Откуда: СПб Всего сообщений: 30 Рейтинг пользователя: 0 Ссылка Дата регистрации на форуме: 7 авг. 2016 |
xoiss Почему плохо записался маткадный сигнал "проба" с пологими фронтами, я пока ещё не понял. (Буду выяснять, опыты с пологими фронтами собираюсь продолжить.) Но уже убедился, что "прямоугольный" сигнал с частотой дискретизации 1000 Гц не годится: известная в ЦОС теорема Котельникова и практика ЦОС против таких сигналов резко протестуют; вот подтверждающие опыты: test-2_17-05-2018.pdf Это опыты без магнитофона, только с компом. Если у Вас будет желание и время, то попробуйте, пожалуйста, проделать их тоже: интересно посмотреть, как сильно зависит результат от звукового чипа в компьютере (или от звуковой карты, если она есть). xoiss написал: "Романтик М-309С-1"; схема есть здесь: "Романтик" у Вас какой? М-201С? М-309С? М-311? ... http://rw6ase.narod.ru/00/mg_kp1/romantik_m309.html |
xoiss
Advanced Member
Всего сообщений: 711 Рейтинг пользователя: 0 Ссылка Дата регистрации на форуме: 30 окт. 2013 |
Добрый день! (1) Да, я посмотрел Ваш отчёт — Вы всё правильно там изложили. Я не учёл, что в потоке может быть нечётное (три, например) количество сэмплов с одинаковым уровнем. Из-за этого возникает мгновенная инверсия фазы. Ну, если не вдаваться в детали, то это так. Разные реализации алгоритмов могут иметь свои сайд-эффекты в таком случае, когда приходится склеивать разрыв фазы. В частности, декодер ffmpeg (который в общем можно считать стандартом) в таком месте добавляет "лишний" импульс. Полагаю, аудио-чип у Вас в компьютере, порождает примерно похожий дефект. Ну, такой дефект — лишний импульс — конечно, никак нельзя устранить аналоговыми цепочками. Вот здесь этот дефект виден на отсчётах 1361 и 1650: https://yadi.sk/i/0dWD0doa3W7sPq - синий — это "эталонный" сигнал — сигнал, изначально синтезированный на 48000 Гц - оранжевый — это сигнал, синтезированный на 1000 Гц и потом ресемплированный при помощи ffmpeg на 48000 Гц ИТОГО: ---- Ок, согласен, 1000 Гц никак не годится. (2) Изначально, когда проверял это всё, я взял слишком короткий пример (емнип, что-то около 9 семплов), и в нём, увы, надо полагать, не было цепочки из трёх одинаковых битов подряд. Ну, вынужден признать, проглядел я этот дефект, а "чистую теорию" — наверное, уже подзабыл я все эти чётности-нечётности, тетроды-пентоды. ... и шо ж таперь делать??? Увеличивать размер файла в 48 раз (до 48000 Гц) и страдать? Ну уж нет!! Коли наши логарифмы не любят моментальную инверсию фазы — избавим их от этой напасти. Сделаем частоту дискретизации 2000 Гц вместо 1000 Гц. Как следствие непрерывные цепочки из нечётного числа одинаковых сэмплов более встречаться не будут — они все умножатся на 2 и станут чётными. Вот здесь это видно — "лишние" импульсы теперь не возникают, т.к. фаза теперь нигде на 180 градусов мгновенно не инвертируется: https://yadi.sk/i/9d_Lu4ZG3W7sPx - синий — "эталонный" сигнал, изначально синтезированный на 48000 Гц (как и в п.1) - оранжевый — это сигнал, синтезированный теперь уже на 2000 Гц и потом ресемплированный при помощи ffmpeg на 48000 Гц (3) Вот. Предлагаю Вам четыре файла, синтезированные на сетке 2000 Гц: 1-2-3--sample_rate=2000--soft_ends=True.wav https://yadi.sk/d/126v64hQ3W82jF 1-2-3--sample_rate=2000--soft_ends=False.wav https://yadi.sk/d/EpX0vqCw3W82j8 7-11-2017_tablo-XY-test__KP-637_N-36--sample_rate=2000--soft_ends=True.wav https://yadi.sk/d/7s6sveA93W82jU 7-11-2017_tablo-XY-test__KP-637_N-36--sample_rate=2000--soft_ends=False.wav https://yadi.sk/d/uTN6uZEc3W82jN Посмотрите, пожалуйста. Здесь: - soft_ends=True — вариант с плавным введением/выведением уровней в начале и конце записи - soft_ends=False — вариант со скачкообразным введением уровня в начале и удержанием неизменного уровня в конце записи // хотя, честно, я не думаю, что это будет иметь какое-либо влияние на "середину" файла — ну, таки пусть будет, уж если Вы спрашивали ранее (4) Какие ещё дефекты здесь остались? А вот такие: 1. заваливание фронта/среза импульса с огибающей 1000 Гц (для сетки дискретизации 2000 /в секунду) 2. постоянное +90° смещение фазы — т.е. постоянное опережающее смещение фронта/среза импульса в обоих каналах примерно на 30-50% от ширины импульса 3. небольшие гармонические выбросы на полках импульсов в направлении нуля -- 4. ---- устранён дефект "лишние импульсы" в точке инверсии фазы ---- Что с ними делать? Ну, примерно вот что: 1) усилитель записи в магнитофоне и так завалит резкие фронты/спады — поэтому, думаю, первый дефект не очень суть критичен. Максимум, что из-за него может быть, - это недостаточная амплитуда считанного импульса (недостаточная величина производной). Если это будет критическим моментом, то можно будет попробовать увеличить сетку синтезатора до 4, 6, 8... кГц 2) постоянное смещение всех перепадов в одном направлении в обоих каналах — это в принятой схеме кодирования вообще некритично 3) выбросы на полках импульсов — полагаю, их можно будет подчистить, просто введя усилитель записи магнитофона в режим перегрузки по входу (ну, хватит 30% перегрузки, думаю). Кстати, перегрузка усилителя записи по входу должна также помочь и против дефектов типа (1) и (2) Таким образом — универсальное решение: перегрузить усилитель записи по входу на 30-50%. (5) И чтоб дважды не вставать, высылаю Вам ещё четыре файла, синтезированные на сетке 48000 Гц: 1-2-3--sample_rate=48000--soft_ends=True.wav https://yadi.sk/d/Im6UnDV-3W6cL7 1-2-3--sample_rate=48000--soft_ends=False.wav https://yadi.sk/d/D35lGjWv3W6cL2 7-11-2017_tablo-XY-test__KP-637_N-36--sample_rate=48000--soft_ends=True.wav https://yadi.sk/d/_vPAsnDX3W6cLF 7-11-2017_tablo-XY-test__KP-637_N-36--sample_rate=48000--soft_ends=False.wav https://yadi.sk/d/s2hbmKHo3W6cLB Зачем? Ну, так, для сравнения с теми, что на 2000 Гц. // честно говоря, мне ОЧЕНЬ не хотелось бы поднимать частоту до 48 кГц без крайней на то надобности, ибо файлы получаются ну уж очень большими (6) В своей программе я немного подкрутил алгоритм — теперь можно устанавливать sample_rate любым, кратным 2000 (ну, частота, кратная 1000, нас не устраивает из-за чётностей-нечётностей). Это позволяет установить стандартные частоты, например, 48 кГц. Я не стал делать поддержку частот типа 44100 Гц или 22050 Гц, т.к. это потребовало бы значительную переделку алгоритма, который изначально был рассчитан на сетку 1000 Гц. А так я просто вместо одного кадра вставляю N копий такого кадра, чтобы получить N кГц вместо 1 кГц — простое решение. (7) Для всех научных опытов я использую программу ffmpeg — это такой аудио-видео-медиа "кухонный комбайн" — который может абсолютно всё, и даже то, чего не может Чак Норрис. // а если он чего-то всё-таки не может, то мы тут для него пишем плагины Собсна, самый простой опыт — это сделать с её помощью ресемплирование 2000 Гц-сигнала на 48000 Гц — и посмотреть, что получится: ffmpeg -i myfile_2000.wav -c:a pcm_u8 -ar 48000 myfile_resampled_2000_to_48000.wav Вот. ffmpeg в режиме ресемплера позволяет избежать необходимости стыковать две отдельные программы (плеер и рекордер) через аудиосистему компьютера. На выходе (файл) Вы получаете математически строгий результат, хотя и используете при этом не абстрактную матмодель, а вполне "промышленные" библиотеки аудио-кодеков. (8) Вот. Ну и ещё хотелось бы отметить такой момент: Как я и ожидал, в схеме усилителя записи "Романтика" есть элементы, подавляющие постоянную составляющую сигнала. Это крайне не дружит с битстримом, в котором могут наблюдаться ооооооооооочень длинные цепочки из одинаковых бит. В случае с Д3-28 получается следующее: - если есть участок памяти, забитый "0000", то за период XX * 9 бит (XX байт) в канале "1" не будет ни одной смены уровня - сотвесна, если после такого длинного участка в XX нулевых байт придёт байт, содержащий "1", то величина записанного импульса будет, ну, наверное, в два раза ниже, чем должна была бы быть Ну, будем надеяться, что это не повлечёт концептуальных проблем при воспроизведении. Однако, чисто на пробу высылаю Вам один файлик, в котором вот специально вставлены длинные цепочки "нулей" или "единиц": long-stalls.dat https://yadi.sk/d/zZao8-8W3W82sy long-stalls--sample_rate=2000--soft_ends=True.wav https://yadi.sk/d/rKXcsnB23W82uA long-stalls--sample_rate=48000--soft_ends=True.wav https://yadi.sk/d/DRwKodL03W82uy В этом файле вставлена цепочка "0000" из 4 байт, потом цепочка "1515" из 4 байт, потом такие же пары цепочек, но уже из 8 байт и из 16 байт ---- всего 6 цепочек. Цепочки разделены маркёрами "1010 0505". Спасибо! С уважением, Александр. |
Sinus
Newbie
Откуда: СПб Всего сообщений: 30 Рейтинг пользователя: 0 Ссылка Дата регистрации на форуме: 7 авг. 2016 |
Профиль | Сообщить модератору
NEW! Сообщение отправлено: 19 мая 2018 1:27 Сообщение отредактировано: 19 мая 2018 1:32
xoiss, спасибо. О результатах на моём компе: 1. Без магнитофона, вроде, всё нормальноно выглядит (если не обращать внимания на обсуждавшиеся выше "осцилляции Гиббса"). Картинки для разных примеров похожи, привожу только две, для: 1-2-3--sample_rate=2000--soft_ends=True.wav 1-2-3--sample_rate=48000--soft_ends=True.wav https://yadi.sk/i/_6TfPuJ33W9YFb (test-3_no_mag__18-05-2018.jpg) 2. С "Романтиком" плохо понимаю, что происходит. Трижды записывал (пока он, гад, ленту не зажевал). Сначала артефакты оставались, но когда я поменял плеер, и при записи (через менее чувствительный вход, т.е. с делителем 30/(820+30)) уровень громкости компьютера убавил наполовину, то вроде стало лучше. Но всё-таки кое-где артефакты появляются. Описывать результат в картинках поленюсь, вот сам конечный wav-файл, в который аудиоредактором записан сигнал с магнитофона: https://yadi.sk/d/3toggyID3W9YSY (test-3_18-05-2018.wav; примерно 2.5 мегабайта) Там 18=6·3 записей - на "Романтик" были записаны Ваши 6 сигналов (каждый сигнал по 3 раза подряд) в следующей последовательности: 1-2-3--sample_rate=2000--soft_ends=True.wav 7-11-2017_tablo-XY-test__KP-637_N-36--sample_rate=2000--soft_ends=True.wav 1-2-3--sample_rate=48000--soft_ends=True.wav 7-11-2017_tablo-XY-test__KP-637_N-36--sample_rate=48000--soft_ends=True.wav long-stalls--sample_rate=2000--soft_ends=True.wav long-stalls--sample_rate=48000--soft_ends=True.wav Для сигналов с soft_ends=False, как Вы и говорили, всё примерно так же (только с "щелчком" на концах, а "середина" такая же; поэтому результат не привожу). 3. Один канал в "Романтике" (верхний на рисунках, т.е. "канал нулей") работает хуже другого. Он и стирает хуже, и в нём между импульсами возникает паразитное низкочастотое переколебание ("горб"), на фоне которого величина полезных импульсов оказывается очень малой - машинка их не увидит. (Наверное, АРУ реагирует на паразитный НЧ "горб" между импульсами как на сигнал, поэтому полезный перепад уровня оказывается подавленным). Кроме того, может быть, когда в одном канале долго нет активности, то АРУ повышает его чувствительность, и в него начинает проникать помеха из другого канала. 4. Думаю в итоге, что Ваш метод работоспособен, однако нужен хороший магнитофон; желательно без АРУЗ, с ручной регулировкой уровня записи. И хорошо бы проверять результат на Д3-28: всё-таки машинка в этой игре главный судья. 5. Малый размер wav-файла, думаю, не должен быть самоцелью; качество записи важнее. Важно, чтобы самодельную запись на кассете хотя бы один раз удалось загрузить в Д3-28; тогда можно будет записать хорошие копии самой машинкой, в любом количестве. |
xoiss
Advanced Member
Всего сообщений: 711 Рейтинг пользователя: 0 Ссылка Дата регистрации на форуме: 30 окт. 2013 |
Sinus написал: Спасибо, но это мне нужно какое-то время взять, чтоб посмотреть. вот сам конечный wav-файл, в который аудиоредактором записан сигнал с магнитофона Sinus написал: Понятно. Да, наверное, надо искать магнитофон. Либо другой способ загрузки программ в Д3-28. Один канал в "Романтике" (верхний на рисунках, т.е. "канал нулей") работает хуже другого С магнитофоном, конечно, подкупает, что это встроенная функциональность Д3-28 — нажал кнопку и поехали. Но... у меня есть одна идея на этот счёт (не оригинальная, но есть!) Sinus написал: 30 минут записи на кассету: Малый размер wav-файла, думаю, не должен быть самоцелью; качество записи важнее. - WAV-файл с сеткой 48 кГц будет весить 165 МБайт - WAV-файл с сеткой 2 кГц будет весить 6,9 МБайт Ну, в принципе, 165 МБайт - это не так уж и много, если это не хранить, а создавать как tmp-файл для выгрузки на кассету. Да, можно не запариваться, и просто работать на сетке 48 кГц. // хотя ... // Но, главное, меня на самом деле больше интересовал чисто академический вопрос, исчезнут ли те "неприемлемые" искажения формы сигнала, если сетку с 1000 заменить на 2000. // Я так понял, что практика подтвердила теорию в данном случае — т.е. я могу удовлетвориться. Sinus написал: Ну, у меня есть пара-тройка идей на этот счёт, которые НЕ требуют использования кассет и магнитофонов с их непонятными пассиками и транзисторами. чтобы самодельную запись на кассете хотя бы один раз удалось загрузить в Д3-28; тогда можно будет записать хорошие копии самой машинкой Идея "А" ---- грузить файл данных в машинку не с магнитофона, а с цифрового входа. Я здесь пока ничего конкретного не скажу. Но апеллирую лишь к тому, что машинка умеет читать прошивку с перфоленты через FS-1500. А это означает, что вместо перфоленты и FS-1500 может быть какой-то адаптер к USB или даже со своей флешкой. Да, я понимаю, что там потребуется какой-то начальный загрузчик, и его надо будет как-то вводить в память машины — ну... что ж делать. Да и разъём там сзади не самый широко-легко-находибельный. // вот из-за двух замечаний я сам считаю эту идею - "так себе" в техническом плане Идея "Б" ---- развитие идеи "А". В общем, ничто не мешает нам открыть корпус машины и отсоединить провода, идущие от магнитной головки ЛПМ к модулю управления ЛПМ (вторая плата сверху в корзине)... ... и к этой плате вместо магнитной головки ЛПМ подключить провода от аудиовыхода компутера — ну и собсна "насвистывать" сигнал непосредственно на вход усилителя воспроизведения в Д3-28. Что-то мне подсказывает, что схема такого адаптера будет предельно простой. Возможно даже его можно будет сделать исключительно из пассивных элементов (резисторы и фильтры ВЧ). В принципе можно даже продумать вариант и с обратным направлением сигнала — т.е. принимать в компутер сигнал от Д3-28, который она как бы записывает на ленту. Единственный минус этой идеи — нужно как-то вывести провода наружу из корпуса, и ЛПМ будет выведен из работы — потеря аутентичности и всё такое. Идея "В" ---- ... а что если программу вводить всё-таки с клавиатуры? Известно, что модуль клавиатуры в Д3-28 — это ничто иное, как генератор байт-кодов. Суть, что мешает эту клавиатуру немножко автоматизировать? вернее, подключить к ней параллельно вторую "как-бы клавиатуру". В общем, внутрь корпуса Д3-28 можно спрятать ещё один миниатюрный модуль, включать его в разрыв кабеля, идущего к клавиатуре, и собсна сделать так, чтоб этот модуль имитировал быстрый-быстрый ручной набор программы. ... кстати, а насколько вообще "быстро" машинка умеет воспринимать программу, вводимую с клавиатуры неким "бесконечно-быстрым оператором"?? Минус этой идеи — программу можно будет только вводить. |
Sinus
Newbie
Откуда: СПб Всего сообщений: 30 Рейтинг пользователя: 0 Ссылка Дата регистрации на форуме: 7 авг. 2016 |
Профиль | Сообщить модератору
NEW! Сообщение отправлено: 19 мая 2018 18:11 Сообщение отредактировано: 20 мая 2018 15:32
xoiss написал: Да. По крайней мере, если на вход магнитофона с выхода компьютерного плеера идёт тот сигнал, который видит на выходе этого плеера программа-рекордер, то "неприемлемых" искажений формы у этого сигнала нет. А что получается на ленте (по крайней мере в одном конкретном "Романтике" ), для нас остаётся тайной; мы можем видеть только результат оцифровки того сигнала, в который превращается тайна с ленты опять-таки этим своевольным "Романтиком". // Но, главное, меня на самом деле больше интересовал чисто академический вопрос, исчезнут ли те "неприемлемые" искажения формы сигнала, если сетку с 1000 заменить на 2000. xoiss написал: Не обязательно бросаться в крайности. Большие файлы я тоже не люблю; да хрен со мной-то, их и Маткад не любит. (Например, с оцифровками больше 20-30 МБайт (при sample rate 44100) мой раскодировщик в Маткаде дико тормозит, так что обычно я перед раскодировкой сразу понижаю ресемплингом sample rate в оцифровках до 16000 и меньше.) Да, можно не запариваться, и просто работать на сетке 48 кГц. // хотя ... Начав с сетки 2 кГц, думаю, вполне стоит поискать оптимум (для качества записи на конкретном магнитофоне) на сетках 4, 6, 8 кГц, - как Вы и говорили; при этом размер файла не так уж страшно увеличится. А такая крайность как 48 кГц, конечно, не нужна (да и может появиться риск угодить в опасную близость с частотой ВЧ-подмагничивания в магнитофоне: вдруг полезут "артефакты" на разностной частоте; или ещё что-нибудь плохое: вспышки ВЧ-возбуда и т.п.). xoiss написал: Наверное, вполне осуществима. Народ похожие идеи реализовывал ещё в те самые 1980-е, как только машинка вошла в практику; в сети есть статья с примером (это не готовое решение для Вас, а просто пример того, как люди делали ввод данных через шину "Ввод" с небольшим загрузчиком): Идея "А" ---- грузить файл данных в машинку не с магнитофона, а с цифрового входа. https://yadi.sk/i/6Qzb1vtT3WCAu9 (PTE4198394-97_vvod_v_D3-28.pdf) Но Вы уже упомянули "но" против идей типа "А", "Б", "В", если в них не идёт речь об аппаратной эмуляции полностью НМЛ: "потеря аутентичности и всё такое", "программу можно будет только вводить". Полагаю, это будет серьёзная потеря, потому что в большинстве высокоуровневых программ для комплексов с Д3-28 того времени (т.е., можно сказать, в легендарных программах ) работа с НМЛ составляла очень важную часть всей деятельности. UPD: удалил свои эмоции. Добавил графики для фрагментов сигналов из оцифровки магнитофонных test-3-записей, упоминавшихся выше ( test-3_18-05-2018.wav ), в той форме, как их видит аудиоредактор, в котором оцифровывался выход магнитофона: https://yadi.sk/i/EFZZe-LM3WEZEQ (test-3__1.jpg) https://yadi.sk/i/XeyB6rRh3WEZLa (test-3__2.jpg) |
xoiss
Advanced Member
Всего сообщений: 711 Рейтинг пользователя: 0 Ссылка Дата регистрации на форуме: 30 окт. 2013 |
Профиль | Сообщить модератору
NEW! Сообщение отправлено: 21 мая 2018 0:42 Сообщение отредактировано: 21 мая 2018 0:51
Sinus написал: ... так, похоже, затея с введением начального уровня не имеет никакого выхлопа О результатах на моём компе:1. Без магнитофона, вроде, всё нормальноно выглядит (если не обращать внимания на обсуждавшиеся выше "осцилляции Гиббса"). Картинки для разных примеров похожи, привожу только две, для: 1-2-3--sample_rate=2000--soft_ends=True.wav1-2-3--sample_rate=48000--soft_ends=True.wavhttps://yadi.sk/i/_6TfPuJ33W9YFb(test-3_no_mag__18-05-2018.jpg) уровень на выходе всё равно зависает в середине диапазона, и первый фронт имеет только половинную амплитуду таким образом к проблеме потери постоянной составляющей сигнала в усилителе записи магнитофона добавляется ещё и такая же проблема на звуковом выходе компутера Sinus написал: ...перевёл файл в формат, более удобный для обработки "чем угодно" (да хоть бейсиком) (test-3_18-05-2018.wav; примерно 2.5 мегабайта)Там 18=6·3 записей - на "Романтик" были записаны Ваши 6 сигналов (каждый сигнал по 3 раза подряд) в следующей последовательности: https://yadi.sk/d/RHEZNZj43WFohx каждая строка — это один аудио-кадр — состоит из двух чисел: мгновенная амплитуда канала "0" и мгновенная амплитуда канала "1" // для перевода использовал утилиту od — кстати, рекомендую например: -j4096 — пропустить первые 4096 байт — там идут WAV-заголовки и паддинг od -j4096 -N2560184 -w4 -An -td2 -v test-3_18-05-2018.wav > test-3_18-05-2018.wav.txt -N2560184 — обработать следующие 2560184 байт — это байты данных — после них идёт финальный паддинг, который нам не нужен -w4 — четыре байта на строку — т.е. один аудио-фрейм будет записан в одну строку выходного текстового файла -An — не выводить колонку "адрес" -td2 — поток байт разбить по 2 байта и каждую пару рассматривать как 16-битное little endian число со знаком, и вывести его в десятичной системе -v — не вставлять "*" там, где встречаются повторяющиеся строки обычнай дамп можно получить и посмотреть так: обзорная картинка ---- od -Ax -tx1z -v myfile.wav | lesshttps://yadi.sk/i/1OKj_bkT3WFp5n пара картинок для файла "1-2-3" ---- https://yadi.sk/i/aHln1bCF3WFp5x пара картинок для файла "tablo-XY-test" ---- https://yadi.sk/i/x2joNHO63WFp64 пара картинок для файла "long-stalls" ---- https://yadi.sk/i/s0-JOS7V3WFp6M по этим трём парам я бы сказал, что вариант "sample_rate=2000" выглядит лучше... почему-то я имею в виду, что в варианте "48000" явно виден cross-talk между каналами ... причём в обе стороны — т.е. дефект нельзя списать на смещение оси ленты относительно магнитной головки ... причём файлы "=2000" и "=48000" перемежались на записи — т.е. дефект нельзя списать на "прогрев" усилителя записи в магнитофоне и т.п. с учётом того, что у нас сигнал импульсный (в отличие, например от Спектрумовских записей), думаю, следует насильственно ограничить спектр на уровне не выше 10 кГц // проще всего это ограничить выбором сетки 10 кГц... но можно и формой импульса, хотя это будет намного сложнее на второй и третьей парах картинок хорошо видно, что "какая-то авторегулировка" (АРУ это или ловилка нуля - не знаю) сильно "перехлёстывает" за ноль — максимум приходится примерно на 7..9-ый бит — т.е. если в этом месте в "уснувшем" канале проходит бит, то его амплитуда сокращается где-то так до 20..30% от максимально возможной (т.е. в 3..5 раз) вот тут под увеличением хорошо видно — в "синем" канале на отсчётах 4525 и 5337 https://yadi.sk/i/wx8ymZG83WFp6Z боюсь, без переделки схемы усилителя записи этот дефект устранить не получится — а это есть сильное вмешательство в магнитофон, которое (1) очспецифично от схемы конкретного имеющегося на руках у "страждущего" магнитофона, и (2) от возможности/желания/умения "страждущего" выполнить такую переделку — короче, это не вариант вообще если же этот дефект терпеть, то ... ну как бы понятно — результатом может быть д3-28-нечитабельная запись итого == имхо, с обычным магнитофоном - тупик слишком много проблем: - начиная от отсутствия магнитофона/кассет у широких масс — такого, чтоб хоть как-то в рабочем состоянии - необходимость подкручивать/регулировать головку - кросс-толк между каналами — который, кстати, у разных моделей может проявляться по-разному - эффекты авторегулировки нуля и ещё Ктулху-знает-чего — тоже специфично от модели имеющегося магнитофона вывод == надо подумать, что с этим делать моё предложение (ну, т.к. я уже "подумал") == отключать магнитную головку ЛПМ в Д3-28 от модуля управления НМЛ (от усилителя воспроизведения) и вместо головки подключать к этому модулю кабель от аудиовыхода компутера — это хоть как-то позволит грузить программы в Д3-28 — ну хотя бы первый раз сделать загрузку, а потом уже скинуть "файл" на кассету средствами самой Д3-28 (благо коммутация четырёх проводков магнитной головки НМЛ не требует отключения питания Д3-28... ну или в конце концов можно туда простейшую релюшку засунуть)... ну или вот вариант вводить программу, имитируя нажатия клавиш на клавиатуре (см. варианты Б и В, описанные мною выше) |
xoiss
Advanced Member
Всего сообщений: 711 Рейтинг пользователя: 0 Ссылка Дата регистрации на форуме: 30 окт. 2013 |
Sinus написал: да, посмотрел — ну, в общем и я примерно про эти же дефекты написал https://yadi.sk/i/EFZZe-LM3WEZEQ(test-3__1.jpg)https://yadi.sk/i/XeyB6rRh3WEZLa(test-3__2.jpg) только к Вашим комментариям на картинках добавлю, что на 48000 явно виден кросс-толк между каналами в обе стороны — надо спектр сигнала от компутера во время записи ограничивать Sinus написал: Ну, тут надо подумать. Потенциально есть две задачи: Но Вы уже упомянули "но" против идей типа "А", "Б", "В", если в них не идёт речь об аппаратной эмуляции полностью НМЛ: "потеря аутентичности и всё такое", "программу можно будет только вводить". Полагаю, это будет серьёзная потеря, потому что в большинстве высокоуровневых программ для комплексов с Д3-28 того времени (т.е., можно сказать, в легендарных программах ) работа с НМЛ составляла очень важную часть всей деятельности. 1. Скачать с сайта "дистрибутив", загрузить его как-то в свою Д3-28 хотя бы один раз,... а далее - либо так каждый раз и делать, либо записать на кассету и следующие разы грузить его с кассеты 2. Вообще в принципе обеспечить работу НМЛ Д3-28 — либо с настоящей кассетой, либо как-то ещё Я думаю, что для задачи "популяризации" Д3-28 первая задача является ну как бы безусловной. То есть, научиться именно загружать Д3-28 с компьютера. Вторая же задача с горем пополам ещё может быть решена, если есть парочка МК-60 кассет в наличии и НМЛ в своей Д3-28 исправен — тут в общем компьютер не помешал бы, но он не является суть безусловно необходимым. |
Sinus
Newbie
Откуда: СПб Всего сообщений: 30 Рейтинг пользователя: 0 Ссылка Дата регистрации на форуме: 7 авг. 2016 |
Профиль | Сообщить модератору
NEW! Сообщение отправлено: 23 мая 2018 1:28 Сообщение отредактировано: 23 мая 2018 12:48
На всякий случай отформатировал по описанному выше стандарту "myfile.dat" 5 реальных файликов для записи их в wav (может быть, если приготовить для народа такие wav-записи, это поспособствует владельцам Д3-28 в экспериментах с магнитофоном). https://yadi.sk/i/m2W49FOk3WNaEm 028-test_KP-73370_N-8921__dat.txt. Это тест ОЗУ и системы команд, более новый, чем упоминавшийся раньше в ветке про Д3-28; он умеет определять и выводить на табло машинки объём её ОЗУ (16, 32 или 128 килобайт); его описание дано в "Инструкции по эксплуатации 3.857.100 ИЭ". Оцифровку с кассеты из своей замечательной коллекции ПО выполнил и любезно предоставил Виталий К. aka 15a18. Для этой программки терминал не нужен. Загружается с МЛ обычным образом - кнопками на пульте машины С, СЛ. Запуск: С, "треугольник", S. Подразумевается, что каждая из программ, о которых здесь идёт речь, загружается в "свежевключённую" машинку; загрузка: С, СЛ; для проверки контрольной суммы программы надо нажать после загрузки, но до запуска, кнопку КП. Для работы остальных 4 программ к Д3-28 должен быть подключен терминал 15ИЭ-00-013: https://yadi.sk/i/cbl7sZb23WNaLF game_23spichki_KP-22571_N-1944__dat.txt - текстовая "игра 23 спички", скомпилированная в "Выстре" в имитаторе машинки. Запуск: С, S. https://yadi.sk/i/aRYq7HRd3WNaQb game_1war_KP-47573_N-4307__dat.txt - "подвижная" игра, скомпилированная в "Fortran-5M" в имитаторе. Такая же (почти, ещё и с "гудком") программка работала на реальной машинке. Запуск: С, S, после вывода на экран "R" нажать на клавиатуре терминала русскую С. Управление - с цифровой клавиатуры терминала: 9, 6 - вверх, вниз; 7,8 - влево, вправо; 2,3,1 - смена скорости; 0 - выход из игры. https://yadi.sk/i/hD-wewqK3WNaVS Basic_D3-28_v3A__KP-157107__N-11343__dat.txt - "Бэйсик вариант 3А для Д3-28". Запуск: С, S. На предложения в начальном диалоге надо отвечать нажатием ПС на клавиатуре терминала. Затем... см. описание этого Бэйсика; хорошая программа для начальных опытов с комплексом "машинка+ терминал". https://yadi.sk/i/YZUnYhJ53WNaaC Fortran-5m_KP-138177_N-10414__dat.txt - "Fortran-5M для Д3-28". Запуск: С, "треугольник" и ещё раз "треугольник". После вывода на экран "R" нажать русскую Т для работы с транслятором (либо нажать русскую З для изменения заданных по умолчанию параметров). Затем... см. описание для "Fortran-5M"; программа оч. хорошая, система программирования, позволяющая формировать библиотеки записей пользовательских фортран-программок на МЛ. |
<<Назад Вперед>> | Страницы: 1 2 3 | Печать |
Полигон-2 » Калькуляторы, арифмометры, PDA, HPC » Свисток для Д3-28 |
1 посетитель просмотрел эту тему за последние 15 минут |
В том числе: 1 гость, 0 скрытых пользователей |
Последние | |
[Москва] LIQUID-Акция. Сливаются разъемы CF МС7004 и 7004А на AT и XT Пайка термотрубок Проммать s478 PEAK 715VL2-HT ( Full-Size SBC) Подскажите по 386 материке по джамперам. |
Самые активные 5 тем | |