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

Для ясности: у меня нет USB, Ethernet и т.д. Разъем для наушников это. Поэтому, очевидно, мне нужен программный модем. Один существует?

4 ответа4

2

Это вполне возможно, хотя намного медленнее, чем вы привыкли.

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

Разновидностью этого может быть "сохранение" данных в виде аудио, точно так же, как можно было бы сохранить в кассетный магнитофон. (Вместо того, чтобы подключаться к кассетному магнитофону, вы должны подключиться к "линейному входу" на другом компьютере.) Другой компьютер будет настроен для "загрузки" данных из этого "линейного" соединения.

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

Оглядываясь вокруг, кажется, что этот вид технологии все еще интересен. На этой странице описывается minimodem (и как его получить), часть программного обеспечения для Linux, которая выглядит так, будто выполняет именно то, что вы просите.

2

Полностью выполнимо в современной системе Linux. Как уже упоминалось выше, Minimodem - это то, что вы хотите. Вы получите по крайней мере 2400 бит / с (2,4 Кбит / с), а может и больше, по замкнутому циклу. Если это тихая комната, вы можете сделать 100 бит / с только с динамиком, микрофоном и звуковыми волнами. Youtube видео здесь. Вам нужно ознакомиться с c-kermit для фактической передачи файлов.

0

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

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

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

0

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

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

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

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

Конечно, упоминание о каком-либо дополнительном инструменте, необходимом для декодирования, поднимает вопрос: как бы вы получили этот инструмент на вашем компьютере в первую очередь? (Это было бы верно и для программного модема.) Если вы собираетесь набирать программу на конечном компьютере, чтобы выполнить декодирование для вас, ну, библиотека JavaScript с открытым исходным кодом - не совсем ужасная идея.

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

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .