Просмотр в консоли документов MS Word и PDFДля просмотра и редактирования документов MS Word с успехом используется Open Office Writer, но иногда нам нужно быстро просмотреть документ (например, вспомнить номер телефона, указанный в конце документа), и запускать тяжеловесный OO Writer не хочется.
Для просмотра документов MS Word нам понадобятся две утилиты — wvWare и w3m. Первая — это конвертер документов Word в формат HTML (
wvware.sourceforge.net
), а вторая — универсальный браузер, которым мы будем просматривать полученный HTML-файл. Обе утилиты входят в состав современных дистрибутивов, правда, могут не устанавливаться по умолчанию.Итак, для просмотра документа
document.doc
введите команду (конвейер):$ wvWare -x /usr/lib/wv/wvHtml.xml document.doc | w3m -Т text/html
Если вы собираетесь пользоваться этой длиннющей командой часто, оформите ее как bash-сценарий
viewdoc
, не забыв сделать файл viewdoc
исполняемым. Поместите сценарий в каталог /usr/local/bin
, чтобы он был доступен всем пользователям системы.#!/bin/bash
wvWare -х /usr/lib/wv/wvHtml.xml $1 2>/dev/null | w3m -T text/html
Обратите внимание на перенаправление «
2>/dev/null
». Таким образом мы подавляем сообщения об ошибках, чтобы они не путались с выводом конвертера.Теперь для просмотра документа
document.doc
можете воспользоваться командой:$ viewdoc document.doc
Такой же сценарий можно написать и для просмотра PDF-документов. Конвертером в этом случае будет утилита pdftohtml (
http://pdftohtml.sourceforge.net
). Для просмотра созданного программой HTML-кода мы будем применять текстовый браузер elinks.Итак, для просмотра файла
file.pdf
будем используем команду:$ pdftohtml -q -noframes -stdout file.pdf | elinks
Опять создадим сценарий
/usr/local/bin/viewpdf
, автоматизирующий работу:#!/bin/bash
pdftohtml -q $1 ~/temp.html elinks ~/temp.html
А вот в дистрибутиве Fedora Core 4 таких фокусов проделывать не нужно: в него включен Evince — быстрый просмотрщик документов в формате PDF и PostScript.
Глава 5 Звук и видео в Linux
5.1. Почему воспроизведение аудио в Linux лучше, чем в Windows
Самыми распространенными аудиоподсистемами для Linux являются OSS (Open Sound System) и ALSA (Advanced Linux Sound Architecture). Обе системы поддерживают большое количество ISA- и PCI-звуковых карт, поэтому, скорее всего, вам не придется разыскивать в Интернете драйвер для своей звуковой карты. В последнее время чаше используется система ALSA, которая полностью совместима с системой OSS, но содержит много дополнительных функций.
Сейчас Linux, если не идеально, то, во всяком случае, подходит для работы со звуком. Когда Линусу Торвальдсу прислали первые патчи, оптимизирующие Linux для работы с аудиоинформацией (так называемые low latency-патчи), он не одобрил эту идею. В результате — отставание от Windows по работе со звуком как минимум на три года. В 1995 году насчитывалось 30-35 (сейчас насчитывается около 800) приложений для Linux, способных работать со звуком. Работать-то они работали, но довольно криво. Сейчас объясню, почему.
Для работы со звуком в реальном времени нужно минимизировать задержки (англ. latency — время ожидания). Latency в 100 мс вы уж точно услышите невооруженным ухом, задержку в 10 мс можно услышать в виде небольшого шума на фоне — тумана. Идеальное время задержки — 3 мс для аудио (WAV) и 1 мс для MIDI. Кстати, проблема latency — это проблема не только Linux, а всех операционных систем, не являющихся системами реального времени (RTOS — Real Time Operation System) — Windows, MacOS. До появления системы ALSA время задержки при работе с аудиоинформацией в Linux (использовалась система OSS/Free) составляло около 150 мс. Система ALSA снизила время задержки до 6 мс — результат лучше, чем у Windows 2000.
В настоящее время задержки (последняя версия ALSA) составляет 4.3 мс. Это довольно неплохо, что позволило Linux вырваться на второе место по обработке аудиоинформации среди не-RT операционных систем. На первом месте — MacOS X (CoreAudio API), на третьем — Windows 2000 (ASIO) и Mac OS 9.
В пользу ОС Linux говорит также ее надежность и стабильность при работе с любыми данными. Даже если взять непрофессиональную работу с мультимедиа-данными — прослушивание MP3: в Linux у меня еще ни разу не заикался Xmms, что бы я ни делал. В Windows же при открытии больших документов в том же Word наблюдаются искажения при проигрывании музыки с помощью WinAmp.
5.2. Прослушивание музыки
mpg123Это самая простая утилита, позволяющая слушать музыку в консольном режиме. Скачать ее можно с домашней страницы разработчика
www.mpg123.de
.В графическом режиме запускайте ее через виртуальный терминал:
$ mpg123 file.mp3
Программа позволяет прослушивать музыку, записанную в форматах MPEG 1.0/2.0 (уровни 1, 2 или 3). С помощью mpg123 вы можете как проигрывать отдельные песни, так и создавать списки песен:
$ mpg123 file-list.txt
В файле
file-list.txt
перечислите имена файлов (по одному в каждой строке), которые вы хотите прослушать. Можно указывать файлы, расположенные как на локальной машине, так и на удаленной, например:/home/den/mp3/track01.mp3
ftp://ftp.server.ru/pub/song.mp3
http://www.server.ru/audio/tracks.mp3
Еще одна полезная консольная программа — cplay (
http://www.tf.hut.fi/~flu/cplay
). Это оболочка для различных аудиоплейеров, позволяющая удобно создавать списки песен для проигрывания. Вы переходите в нужный вам каталог, выбираете песню, нажимаете Enter, и cplay запускает mpg123 для проигрывания выбранного файла. Использовать эту программу намного удобнее, чем mpg123, поскольку вам не нужно вручную создавать списки песен, к тому же cplay отображает индикатор проигрывания и время, прошедшее с начала проигрывания. Для выхода из программы нажмите клавишу .XmmsНаверное, самым знаменитым проигрывателем MPEG-файлов является Xmms — полный аналог популярной программы WinAmp (
http://www.xmms.org
). К сожалению, в дистрибутивах, основанных на Red Hat начиная с версии 8.0, из него исключена возможность проигрывания MP3. Программы с открытым исходным кодом оказались законодательно несовместимы с этим коммерческим форматом, и компания Red Hat переработала все мультимедийные приложения, удалив из них весь код, связанный с MP3.Пользователям таких дистрибутивов можно посоветовать скачать раннюю (1.2.7) версию пакета xmms с
ftp://ftp.sunet.se/pub/multimedia/xmms/1.2.x
и дополнить ее из http://mcmcc.bat.ru/RPMS/mpg123-xmms-1.2.7-13.p.i386.rpm
.Другие программыДля проигрывания MIDI-файлов в состав Linux (не во всех дистрибутивах) входят сразу две программы: KMid и AWE32 (полное название TkAWEMidi). Первая программа входит в состав KDE (пакет
kdemultimedia
), поэтому, если среда KDE у вас установлена, она всегда будет вам доступна. Кроме MIDI-файлов, KMid позволяет проигрывать и караоке (KAR-файлы).Также две программы предназначены для регулирования громкости — Aumix и KMix. Обе программы позволяют установить уровень громкости для всех аудиоустройств, установленных в системе.
В состав KDE входит аудиосервер aRts (демон artsd; в среде GNOME ту же роль играет eSound, esd). Как написано в документации по KDE, «звуковой сервер позволяет вам слышать системные звуки и при этом одновременно проигрывать mp3-файл или играть в игру с фоновой музыкой. С ее помощью системные звуки обогащаются различными эффектами, а программисты имеют возможность легко включать в программы поддержку звука».
Но не все так красиво, как кажется на первый взгляд. Если вы запустите сервер aRts, у вас не будет работать ни одна программа-проигрыватель, которая его не поддерживает. Любая программа, которая попытается обратиться к звуковой плате в обход aRts, получит сообщение, что устройство занято другой программой. Не поддерживают aRts уже рассмотренные проигрыватели mpg123 и Xmms.
ПримечаниеВ программу Xmms можно включить поддержку сервера aRts, добавив модуль aRts Driver 0.4 (libartsout.so). Этот модуль не устанавливается по умолчанию в некоторых дистрибутивах.
Поддерживает звуковой сервер MP-проигрыватель NoAtun, вводящий в состав KDE. Поэтому вам придется решить, какой проигрыватель использовать. Если вы хотите использовать Xmms, тогда вы не будете слышать системные звуки, или же вы будете использовать NoAtun, но будете слышать звуки KDE. Лично я предпочитаю первое: дело в том, что любая программа, поддерживающая aRts, «съедает» больше системных ресурсов, чем Xmms.
Рассмотрим пару полезных трюков, которые можно проделать с помощью NoAtun. Допустим, вы хотите слышать одну музыку, то есть вам нужно убрать голос исполнителя. Выполните команду меню Параметры→Эффекты и установите эффект VoiceRemoval.
Конечно, голос удаляется не всегда: иногда он все еще слышен, хотя и слабо. В этом случае нужно применить эффект VoiceRemoval несколько раз (два и более).
Вам также доступны эффекты реверберации, расширения стереобазы (ExtraStereo), питч (замедление и ускорение воспроизведения).
При запуске любой программы, использующей aRts, будет запущен сервер aRts, если он не был до этого запущен. Сервер aRts можно запускать и при загрузке KDE. Для этого запустите Центр управления KDE и перейдите в раздел Звук→Звуковой сервер. В этом разделе вы можете установить различные параметры звукового сервера — от метода ввода/вывода звука до частоты дискретизации. В качестве метода ввода/вывода звука вы можете выбрать один из методов: Open Sound System, Advanced Linux Sound Architecture, Threaded (многопотоковая) OSS или Автоопределение.
Вам уже надоело слушать MP3-файлы и теперь хочется прослушать компакт-диск? Проигрывать компакт-диски можно или с помощью специальной программы KsCD (входящей в пакет
kdemultimedia
), или используя какой-либо другой проигрыватель, который поддерживает компакт-диски (например, тот же Xmms).Вы можете редактировать названия песен с помощью редактора базы данных CD (FreeDB). По окончании редактирования вы можете сохранить названия песен локально или же на сервер FreeDB, чтобы другие пользователи не заполняли названия альбома и дорожек вручную. Впоследствии вы сами можете получить эти данные от сервера FreeDB. Однако эту возможность вы вряд ли будете использовать, разве что сами организуете свой сервер FreeDB и будете использовать его вместе со своими знакомыми.
5.2.1. Сравнение Xmms и NoAtun
Сегодня самыми популярными проигрывателями для Linux являются программы Xmms и NoAtun. Первая программа поставляется с большинством дистрибутивов, а вторая входит в состав KDE. Как вы используете программу Xmms? Скорее всего, просто для прослушивания музыки, а она много чего умеет. В этом параграфе мы поговорим о нестандартных возможностях программы Xmms — плагинах, скинах. Параллельно будем сравнивать возможности Xmms с возможностями программы NoAtun.
Полное название проигрывателя Xmms — X Multimedia System. Программа Xmms использует интерфейс WinAMP и поддерживает скины программы WinAMP. Xmms может воспроизводить звук, записанный в форматах MP3, WAVE, MOD, S3M и других. Версия 1.2.7 поддерживает плагины input, output, general и visualization.
Окно программы Xmms состоит из трех частей: главное окно, эквалайзер и редактор песен. На рис. 5.1 изображена программа Xmms в «полной комплектации».
Рис. 5.1. Проигрыватель Xmms
Как я уже отмечал, программа поддерживает форматы MPEG 1/2/3, WAVE, MOD, S3M, а также формат AudioCD. Таким обилием форматов не может похвастаться программа NoAtun. Честно говоря, меня не интересуют форматы MOD, S3M, CIN (ID Software), мне нужна поддержка только форматов MP1/2/3, WAVE и AudioCD.
Программе NoAtun очень не хватает поддержки AudioCD. Конечно, можно запустить проигрыватель AudioCD KsCD, но зачем — ведь есть Xmms. Если вы хотите узнать, какие еще форматы поддерживает ваш Xmms, откройте окно опций (нажмите Ctrl+P). На странице Звуковые модули Ввода/Вывода представлены все модули, отвечающие за поддержку тех или иных форматов.
В этом же окне вы можете выбрать модуль вывода: драйвер OSS, модуль вывода звука eSound или модуль записи на диск. Для нормального воспроизведения нужно использовать драйвер OSS. Нажав кнопку Настройка, вы можете настроить выбранный драйвер. Если у вас установлена звуковая карта Sound Blaster 16, ViBRA или AWE32/64, в настройках драйвера OSS вы можете установить трехмерное стереорасширение (3D Stereo Enhancement).
Теперь немного поговорим о модуле записи на диск. Если установить этот модуль в качестве основного модуля вывода, музыка не будет воспроизводиться с помощью драйвера OSS, а будет записываться на диск в виде WAVE-файла. А это значит, что любой формат, который поддерживается модулями ввода программы Xmms, вы можете конвертировать в WAVE.
Скорее всего, MP3 конвертировать в WAVE вам не придется: это просто неразумно. А вот «сграбить» пару компактов, не выходя из любимой программы — это можно. Откройте компакт-диск (для этого нажмите Shift+L, чтобы загрузить каталог, и выберите каталог
/mnt/cdrom
) и включите модуль записи на диск. Теперь нажмите кнопку Play. Процесс записи можно остановить в любой момент. Все! Все дорожки будут записаны на диск (в ваш домашний каталог) в виде WAVE-файлов. Имена файлов будут типа TrackN.wav
.Естественно, во время записи музыки вы не услышите, потому что модуль OSS не используется. Стоит заметить, что Xmms «грабит» компакты значительно быстрее, чем программа Grip (по крайней мере у меня). Потом эти файлы можно будет преобразовать в MP3 с помощью любого конвертера, например, lame или l3end. Преобразовать WAVE в MP3 можно так:
$ lame -b 128 input.wav output.mp3
Опция -b устанавливает скорость потока (bitrate) 128 Кбит/с. Более подробно о преобразовании WAVE в MP3 вы можете прочитать на страницах помощи программы lame, выполнив следующую команду:
$ man lame
Программа NoAtun также обладает модулем записи на диск. Его можно выбрать в окне Эффекты. Должен заметить, что в программе NoAtun этот модуль не работает. Впрочем, он и не нужен — все равно программа NoAtun не поддерживает AudioCD.
На странице Эффекты→Общие модули вы можете выбрать нужный вам эффект или дополнительный модуль. Например, модуль Смена песни позволяет установить команду, которая будет выполнена после воспроизведения песни, и команду, которая будет выполнена после воспроизведения всех песен. Первая команда может включать параметр %s, который будет заменен названием только что воспроизведенной песни. Эту возможность можно использовать для автоматического конвертирования WAVE в MP3. Вы будете слушать музыку, a Xmms будет конвертировать ее в формат MP3.
При воспроизведении музыки вы можете использовать один из эффектов:
♦ LADSPA (по умолчанию)
♦ SOX
♦ Модуль удаления голоса
♦ Улучшенное стерео (расширение стереобазы)
♦ Эхо.
Включив модуль удаления голоса, вы будете слышать только одну музыку. Конечно, качество работы этого модуля очень сильно зависит от качества записи вашего MP3. Этот модуль намного лучше работает с AudioCD — голос полностью удаляется.
Аналогичные эффекты поддерживает и программа NoAtun. К тому же в программе NoAtun имеется возможность применить один и тот же эффект несколько раз.
Теперь рассмотрим модули визуализации. Лично мне больше всех нравится модуль G-Force. Кроме обыкновенной визуализации, он обладает множеством дополнительных функций, например, функцией измерения скорости кадров (fps). Нажмите > в окне модуля, и вы увидите список функций модуля.
Модули визуализации поддерживаются и программой NoAtun, но почему-то они очень нестабильны, и их использование может вызвать сбой NoAtun.
Нам осталось рассмотреть только скины. Нажмите Alt+S, чтобы открыть окно просмотрщика «шкур» — так официально называется окно выбора скипа. У вас нет «шкур»? Где их взять? На официальном сайте
http://xmms.org
или на http://www.skinbase.org
. Подойдут также ваши «шкуры» от WinAmp'a. Zip-файлы скинов нужно скопировать в каталог /usr/share/xmms/Skins
. После этого установленные «шкуры» будут доступны всем пользователям системы. Если вы хотите, чтобы с трудом добытая «шкура» была доступна только вам или же если у вас нет прав на запись в каталог /usr/share
, установите «шкуру» и каталог ~/.xmms/Skins
.Как видите, программа NoAtun уступает программе Xmms практически по всем параметрам. Кроме того, NoAtun, работая через звуковой сервер aRts, требует больше памяти, чем Xmms, воспроизводящий звук непосредственно через
/dev/dsp
.Чтобы запустить Xmms сразу после окончания работы с NoAtun, остановите демон аудиосервера artsd, иначе вы получите сообщение, что звуковая плата занята другим приложением — а именно этим демоном.
5.3. «Ограбление» Audio-CD