Zer0Galaxy 2 187 Опубликовано: 13 ноября, 2015 (изменено) В состав мода Computronics входит блок стример, о котором я хочу рассказать. Чтобы подключить стример к компьютеру, просто установите его вплотную или соедините при помощи кабеля. После подключения стример становится виден как компонент под именем tape_drive. Стример позволяет записывать данные на кассеты, считывать эти данные, а так же, если данные записаны в определенном формате, воспроизводить звук, записанный на кассете. Кассеты различаются по количеству записываемой на них информации. Ниже приводится зависимость времени звучания кассеты и её объема. | Цвет корпуса | Время (мин) | объем(кБ) | |================|=============|===========| | Коричневый | 2 | 480 | | Светло-серый | 4 | 960 | | Темно-серый | 6 | 1440 | | Желтый | 8 | 1920 | | Желтый | 16 | 3840 | | Голубой | 32 | 7680 | | Розовый | 64 | 15360 | | Розовый | 128 | 30720 | Чтобы вставить кассету в стример, кликните ПКМ по стримеру и в открывшемся интерфейсе переместите кассету в стример. Стример, как компонент, предоставляет следующие функции: isReady() – возвращает true, если в стример вставлена кассета. isEnd() – возвращает true, если до конца кассеты осталось меньше четверти секунды. getSize() – возвращает количество информации в байтах, которое может быть записано на кассету (не свободное место, а всего). getLabel() – возвращает строку, содержащую метку кассеты или пустую строку, если метка не назначена. setLabel(label) – принимает строку и устанавливает ее в качестве новой метки кассеты. getState() – возвращает текущее состояние стримера. Возможные значения: “PLAYING” - воспроизведение, “REWINDING” – перемотка назад, “FORWARDING” – перемотка вперед, “STOPPED” – остановлено. setSpeed(speed) – принимает число в диапазоне 0.25 – 2.0 и устанавливает скорость воспроизведения аудио. Нормальная скорость соответствует 1.0 setVolume(volume) – принимает число в диапазоне 0.0 – 1.0 и устанавливает громкость воспроизведения аудио. seek(amount) – осуществляет перемотку кассеты на заданное параметром число байт. Если параметр amount отрицательный, перемотка осуществляется назад. Функция возвращает количество байт, на которое кассета была реально перемотана. read([count]) – если параметр count не задан, функция считывает с кассеты один байт и возвращает его в виде числа. При заданном count, функция считывает заданное число байт и возвращает их в виде строки. write(data) – осуществляет запись данных на кассету. Параметр data может быть строкой или числом в диапазоне 0-255. play() – запускает кассету на воспроизведение. stop() – останавливает воспроизведение кассеты. Однако, в большинстве случаев для управления стримером достаточно утилиты tape, которая становится доступной после подключения стримера к компьютеру. tape play - запускает кассету на воспроизведение. tape pause - останавливает воспроизведение кассеты. tape stop - останавливает воспроизведение и перематывает кассету в начало. tape rewind - перематывает кассету в начало. tape label [name] - если параметр name задан, устанавливает его в качестве новой метки кассеты. Иначе выводит текущую метку. tape speed <speed> - устанавливает скорость воспроизведения кассеты. Значение speed должно быть в диапазоне между 0.25 и 2.0. tape volume <volume> - устанавливает громкость воспроизведения кассеты. Значение volume должно быть в диапазоне между 0.0 и 1.0. tape write <path_file> - осуществляет запись содержимого файла на кассету. Если path_file представляет собой URL-ссылку, файл будет скачан из Интернета. Однако для этого Вам потребуется интернет-карта. Дополнительные опции утилиты: --address=<address> определяет первые несколько символов адреса устройства. Требуется, если к компьютеру подключено более одного стримера. --b=<bytes> определяет размер блоков данных при записи файла на кассету. По умолчанию этот параметр равен 2048. Честно говоря, не знаю зачем его менять. И наконец, что же собственно нужно, что бы наслаждаться любимой мелодией не только в реальном мире, но и в мире Minecraft? Для этого необходимо выполнить несколько несложных шагов: Берем аудио-файл в каком-нибудь из известных форматов и конвертируем его в WAV-файл при помощи онлайн-конвертера или любым другим способом. Качаем утилиту LionRay по ссылке. Запускаем LionRay. В окно ”Input File:” вводим имя wav-файла (ленивые могут воспользоваться кнопкой “Browse”), а в окно ”Output File:” – имя, под которым файл будет сохранен после конвертации в формат dfpwm. Жмем кнопку ”Convert”. Полученный dfpwm-файл заливаем на диск ОС-компьютера (если играем в сингле) или размещаем на каком либо интернет-ресурсе. Заходим в Minecraft. Вставляем в стример кассету объемом не менее, чем размер dfpwm-файла, и перематываем ее в начало. Запускаем утилиту tape write <path_file>, где path_file – имя dfpwm-файла на диске ОС-компьютера или URL. Ждем. Заходим в интерфейс стримера, снова перематываем кассету в начало и жмем кнопку «Воспроизведение». Наслаждаемся. Плюсуем Zer0Galaxy на форуме. Конечно, качество звучания оставляет желать лучшего. Ну, а чего вы хотели? Уже после написания вынужден признать, что данная статья частично дублирует гайд @Fingercompа по моду Computronics. Видать меня склероз попутал. Изменено 16 ноября, 2015 пользователем Zer0Galaxy 11 Цитата Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах
Volmeh 10 Опубликовано: 14 ноября, 2015 Мои бедные уши, качество звука оставляет желать лучшего. Вместо песен и мелодий я слышу какую-то хрень, напоминающую телевизор, который теряет сигнал. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах
Alex 4 683 Опубликовано: 14 ноября, 2015 Мои бедные уши, качество звука оставляет желать лучшего. Вместо песен и мелодий я слышу какую-то хрень, напоминающую телевизор, который теряет сигнал. Терпи или не слушай, кто тебя заставляет?=). Не факт, что ты все правильно сделал и нормального качества у тебя там был исходник WAV и пр. Качество там средне-паршивенькое, но слушать можно. А лучше напрямую через радио FM-ку приконектиться клиентом к высококачественному потоку. Сайтик с миллионом жанров, стилей и направлений. Слушай, что хочешь, и удобнее в миллиард раз, так как ФМ-ка имеет гуишку. А можно и программно на лету миллион радиостанций переключать на выбор через ОС-ку. http://streaming.radionomy.com/100-HIT-radio http://streaming.radionomy.com/Dance90 http://streaming.radionomy.com/Dance80 http://streaming.radionomy.com/90s-Dance-Classics http://streaming.radionomy.com/Goth-N-Metal http://streaming.radionomy.com/Radio-Progressive http://streaming.radionomy.com/Radio-Mozart ... Цитата Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах
KelLiN 49 Опубликовано: 14 ноября, 2015 Первое что на ум приходит это как в Half-life спавнить игрока при первом заходе в тележке и катить по тоннелю озвучивая вводный курс молодого бойца. 3 Цитата Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах
Volmeh 10 Опубликовано: 14 ноября, 2015 Терпи или не слушай, кто тебя заставляет?=). Не факт, что ты все правильно сделал и нормального качества у тебя там был исходник WAV и пр. Качество там средне-паршивенькое, но слушать можно. А лучше напрямую через радио FM-ку приконектиться клиентом к высококачественному потоку. Сайтик с миллионом жанров, стилей и направлений. Слушай, что хочешь, и удобнее в миллиард раз, так как ФМ-ка имеет гуишку. А можно и программно на лету миллион радиостанций переключать на выбор через ОС-ку. http://streaming.radionomy.com/100-HIT-radio http://streaming.radionomy.com/Dance90 http://streaming.radionomy.com/Dance80 http://streaming.radionomy.com/90s-Dance-Classics http://streaming.radionomy.com/Goth-N-Metal http://streaming.radionomy.com/Radio-Progressive http://streaming.radionomy.com/Radio-Mozart ... Чтож, ну хотя бы я получил то, что хотел http://www.radionomy.com/en/radio/monstercat24-7radio Цитата Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах
LeshaInc 625 Опубликовано: 14 ноября, 2015 (изменено) .................. А депрессивно-суицидальный блэк метал умеет воспроизводить? Изменено 14 ноября, 2015 пользователем LeshaInc Цитата Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах
davial 1 972 Опубликовано: 15 ноября, 2015 А депрессивно-суицидальный блэк метал умеет воспроизводить? В аду и обычный хорошо смотрится. Всмысле - слушается. Кстати, загляни в игре в ад. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах
Mecopy6ka 366 Опубликовано: 16 ноября, 2015 (изменено) А депрессивно-суицидальный блэк метал умеет воспроизводить?Тебе помех недостаточно?)Для меня это достаточно депрессивно-суицидально Первое что на ум приходит это как в Half-life спавнить игрока при первом заходе в тележке и катить по тоннелю озвучивая вводный курс молодого бойца.Ага, мод на гравийган благо есть, так что - почему бы и нет?) Зеро спасибо, долго пробовал разобраться. Разобрался, однако - но гайд лень было делать, да и думал что никто музыку в майне не слушает Изменено 16 ноября, 2015 пользователем Mecopy6ka Цитата Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах
Fingercomp 4 409 Опубликовано: 16 ноября, 2015 Мммм... http://computercraft.ru/blog/3/entry-402-oc-add-ons-computronics-polnyi-obzor-versii-155-2-standartnye-bloki/ Цитата Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах
Quant 442 Опубликовано: 16 ноября, 2015 да и думал что никто музыку в майне не слушает А некоторые пытаются послушать число Пи... 1 Цитата Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах
Totoro 3 563 Опубликовано: 16 ноября, 2015 А некоторые пытаются послушать число Пи... Оно красиво звучит. 3 Цитата Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах
Quant 442 Опубликовано: 16 ноября, 2015 Я немного не про это. Помню, кто-то сыграл его на пианино, теперь я пытаюсь сыграть его на нотном блоке в майне 1 Цитата Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах
Mecopy6ka 366 Опубликовано: 16 ноября, 2015 Бесконечный bgm, который не просто крутит по кругу мелодию, а сам ее... вычисляет Вспоминаю, давненько на ХР друг показывал мастер-класс по музыке - зажал бакспасе на пустой строке. Все математики себе на базу такой проигрыватель числа поставят. Кстати, если несколько таких поставить - вообще будет супер музыка. И да, это еще не верх - я как то по ошибке модельку 3д на ленту записал =) Цитата Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах
Zer0Galaxy Автор темы 2 187 Опубликовано: 16 ноября, 2015 https://www.youtube.com/watch?v=Bri_-x-ZMMA Так вот откуда название инструмента - PIанино 4 Цитата Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах
Zer0Galaxy Автор темы 2 187 Опубликовано: 17 ноября, 2015 Конечно, качество звучания оставляет желать лучшего. Ну, а чего вы хотели? Обнаружен способ улучшить качество воспроизводимого звука. 1. При конвертировании WAV-файла утилитой LionRay, устанавливаем значение Samplerate равным 65535 2. Перед воспроизведением кассеты, устанавливаем удвоенную скорость воспроизведения. Но, при этом на тоже время звучания расходуется вдвое больше пленки. 2 Цитата Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах
WOSAJ 0 Опубликовано: 29 июня, 2020 (изменено) Гайд годный для пользователей OpenOS, для пользователей MineOS Хватает только скачать прогу Control Tape. А прикольно бы было записывать файлы на кассету (Самая большая кассета вмешает аш 8МБ!), я порылся в API и нашёл функцию считывания байтов с кассеты, так что думаю что скоро такая программа появится! Интересный факт- на кассету можно записать всё что угодно! Хоть Init.lua, хоть что то своё! Изменено 1 июля, 2020 пользователем WOSAJ Цитата Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах
ProgramCrafter 544 Опубликовано: 29 июня, 2020 Немного допилил стандартный tape.lua, чтобы он мог считывать файл с кассеты: pastebin get pTVnhYwp /usr/bin/tape.lua Замечание: в исходном файле не должно быть нулевых байт. 1 Цитата Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах
eu_tomat 2 154 Опубликовано: 29 июня, 2020 50 минут назад, ProgramCrafter сказал: Немного допилил стандартный tape.lua, чтобы он мог считывать файл с кассеты: pastebin get pTVnhYwp /usr/bin/tape.lua Замечание: в исходном файле не должно быть нулевых байт. Интересное дополнение, хотя и спорное. Во-первых, проще было бы не втискиваться в рамки стандартной утилиты, а написать свою, специально предназначенную для записи на ленту и чтения с неё файлов с произвольными данными. И ориентироваться не по нулевому байту, а по размеру файла, заданному в заголовке. Во-вторых, непонятна применимость подобного подхода. Обычные жёсткие диски по причине их малого объёма не позволяют задействовать весь потенциал ленты. Думаю, полезной была бы архивная файловая система с ограниченными функциями: произвольное чтение любого из уже записанных на ленту файлов и дописывание в конец ленты новых файлов. 2 Цитата Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах
VyaCHACHsel 0 Опубликовано: 14 мая, 2021 (изменено) В 29.06.2020 в 21:59, eu_tomat сказал: ...проще было бы не втискиваться в рамки стандартной утилиты, а написать свою... Если немного "потанцевать с бубном", можно отделить функционал в отдельную утилиту. В 29.06.2020 в 21:59, eu_tomat сказал: ...жёсткие диски по причине их малого объёма не позволяют задействовать весь потенциал ленты... Можно в ОЗУ загружать программы, и если на протяжении n функций какая-то часть кода не используется, выгружать её, если опять потребуется, найти его на самой кассете, снова загрузить и выполнить. И вообще (если брать самую большую кассету на 128) - пока ещё никому не нужно 30 мегабайт на ОДНУ программу. В 29.06.2020 в 21:59, eu_tomat сказал: И ориентироваться не по нулевому байту... Вот тут ты прав. Потому что так только ОДНУ программу запишешь. А если она требует польз. библиотеку? А если ей нужны какие-то равники (сырые данные)? Изменено 14 мая, 2021 пользователем VyaCHACHsel уточнил куда именно грузить программы Цитата Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах
eu_tomat 2 154 Опубликовано: 14 мая, 2021 47 минут назад, VyaCHACHsel сказал: Если немного "потанцевать с бубном", можно отделить функционал в отдельную утилиту. ... Можно в ОЗУ загружать программы, и если на протяжении n функций какая-то часть кода не используется, выгружать её, если опять потребуется, найти его на самой кассете, снова загрузить и выполнить. И вообще (если брать самую большую кассету на 128) - пока ещё никому не нужно 30 мегабайт на ОДНУ программу. Можно. Но для этого потребуется реализовать на ленте хотя бы подобие файловой системы, чтобы не запутаться, на каком участке ленты находится тот или иной фрагмент кода. И простого отделения функционала от стандартной библиотеки будет совершенно недостаточно. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах