The OpenNET Project / Index page

[ новости /+++ | форум | wiki | теги | ]

Настройка TV-Out в Movix для начинающих (tv_out x11 linux video)


<< Предыдущая ИНДЕКС Правка src / Печать Следующая >>
Ключевые слова: tv_out, x11, linux, video,  (найти похожие документы)
From: Владимир Попов <popov@ukrpost.net.> Date: Wed, 14 Apr 2006 18:21:07 +0000 (UTC) Subject: Настройка TV-Out в Movix для начинающих Оригинал: http://www2.ldc.net/~popov/tvout.html TV-Out для маленьких или о подключении телевизора к IBM PC на уровне идиотизма Случилось мне как-то поучаствовать в разработке и тестировании MoviX (http://movix.sf.net). И хоть знаком я был с этим пакетом давно (и даже делился своими впечатлениями о нём на страницах Up-а), но... одно дело - оценивать продукт, а другое - участвовать в его разработке. Уровень критичности возрастает: хочется проверить всё, а не только то, что представляется интересным тебе лично. Именно поэтому, наверное, в какой-то момент мне захотелось проверить декларируемую MoviX возможность вывода изображения на TV. Стыдно признаться, но, работая и отдыхая в окружении компьютеров уже не первый десяток лет, соединяя их, по долгу службы, со всевозможными устройствами (от индикаторных панелей до автоматизированных цехов), я по сию пору не удосужился подключить к IBM PC обычный телевизор. Ну, не принадлежу я к любителям кинематографа, каюсь. А тут вот - случилась такая оказия. Тем более, что современные видеокарты практически "поголовно" предоставляют возможность вывода на TV, а стоят при этом начиная от 30-ти условных... Нужно сказать, что сам я уже третий год использую исключительно TFT-мониторы и дома, и на работе, и каждый раз, при столкновении с необходимостью воспользоваться ЭЛТ-монитором, замечаю, что предпочтение моё укрепляется. Однако мимо моего внимания не прошли высказывания о том, что фильмы смотреть всё же лучше по телевизору. Одним словом: пришло время пробовать. О чём и хочу поведать. Включаем Чтобы читателю стало понятным название данной заметки, процитирую анекдот: Только недавно я понял, что фотографировать, входить в Интернет и звонить по мобильному телефону - элементарно! Всё-таки самое приятное в прогрессе то, что он развивается в сторону нас, идиотов. К числу таких же "элементарных" вещей принадлежит и подключение телевизора к IBM PC (если видеокарта его поддерживает, разумеется). То есть, я хочу сказать, что ЛЮБАЯ видеокарта с TV-Out выводит изображение на телевизор и для этого ей не требуются никакие драйвера и вообще программное обеспечение, за исключением, разве что, прошитого в BIOS видеокарты и компьютера. Только для того, чтобы пользоваться возможностью, задуманной конструкторами "для всех" (начиная от детей и идиотов), нужно вести себя соответственно. То есть: подключить видеовход телевизора к телевизионному выходу видеокарты и потом включить компьютер. Не получилось? Бывает. А монитор вы тоже подключили? Напрасно. Конструкторы, очевидно, не предполагали, что у вас есть и монитор, и телевизор. При наличии монитора вашу принадлежность к вышеуказанной категории пользователей можно подвергнуть сомнению. Так что: отключите-ка монитор. Насколько мне известно, не существует видеокарт с TV-Out, которые при наличии подключённого телевизора и отсутствии подключённого монитора не выводили бы изображение на телевизор. Но справедливо и следующее утверждение: существуют видеокарты, которые по включению синхронно выводят изображение и на TV, и на VGA выходы. Это, правда, не всегда хорошо: в этом режиме видеокарта ведёт себя, обычно, несколько иначе, чем при отсутствии монитора. Возможное неприятное следствие: ОС будет перестраиваться каждый раз, когда вы загрузитесь после подключения или отключения телевизора. На этом этапе вас может подстерегать только одна неприятность: несоответствие телевизионных стандартов телевизора и видеокарты (PAL, SECAM, NTSC - слышали, наверное?). Телевизоры нынче всё больше мультисистемные, но вероятность такой ситуации всё же существует. Выглядит это как нарушение строчной и кадровой развёрток и отсутствие цвета. Карту, как правило, можно перестроить, но делается это уже с помощью какой-нибудь программки, и если в Linux вам не составит труда набрать что-то вроде nvtv -S PAL даже "вслепую", то найти соответствующее окошко/кнопочку под MS Windows может оказаться весьма затруднительным... Однако, я, кажется, несколько поторопился. Вернёмся к загрузке. Если вы оказались достаточно удачливы и проблема несоответствия стандартов обошла вас стороной, то вы увидите то же, что и всегда при включении компьютера: сообщения BIOS видеокарты и материнской платы, результаты работы POST и, наконец, сообщения начального загрузчика. В простейшем случае, если у вас установлена одна операционная система одного известного производителя, загрузчик (MS- или NTLoader) попытается её запустить. Если же вы знаете (и даже используете) мультизагрузчик, то вам и так понятно, что происходит. Так или иначе, мы подошли к загрузке операционной системы, и здесь вариантов развития событий может быть столько, сколько этих самых систем разместилось на вашем винчестере. MS Windows Приверженцев MS-DOS я хочу поздравить и разочаровать одновременно: * поздравить с тем, что для использования телевизора вместо монитора им ничего более не требуется; * разочаровать тем, что достойных внимания средств просмотра видео под MS-DOS, кажется, не существует. Если же вы предполагали работать, используя телевизор вместо монитора, то могу только посочувствовать: большая размытость и меньшая контрастность изображения, так "кстати" скрашивающие изъяны видеоряда, делают работу за телевизором в качестве монитора почти невозможной. Однако много ли сейчас найдётся приверженцев MS-DOS?... Правильно. Поэтому переходим немедля к MS Windows. Здесь, собственно, рассказывать особенно нечего. Считайте, что вы поставили новую видеокарту с препаршивым, можно сказать, монитором. Напоминаю: пока речь идёт о загрузке без VGA-монитора. Ну, сами знаете: стандартный VGA режим, установка драйвера, пару раз перезагрузиться для пущей важности - и вот они, любимые "окошки". Теперь меняем свойства экрана... Опаньки! Это может расстроить: для многих видеокарт может оказаться, что недоступно не только разрешение 1024х768, но и 800х600. Справедливости ради, нужно отметить, что для воспроизведения видео хватило бы и 640х480 (а для всеми любимых avi-шек с Горбушки и того меньше), но попробуйте управлять при таком разрешении окнами "Свойств экрана", "Проводника" или проигрывателя! Да и просто плохо видно, если речь не о видео, а о вашем "Рабочем столе". Добавим к этому, что при возврате к работе с монитором, нужно будет заново настроить разрешение и частоту кадровой развёртки, привести в порядок расположение иконок на "Рабочем столе" (хорошо, если это занятие принадлежит к вашим любимым). Н-да. Придётся признать, что из-под MS Windows смотреть видео без монитора можно, но не совсем удобно. А монитор, как необходимое условие управления компьютером, когда вы собрались кино посмотреть, выглядит, как досадное "излишество". Есть ли альтернатива? Linux Представьте - есть. Только не ждите обычного обсуждения "MS Windows vs Linux": что-то не хочется. Да и нечего тут сравнивать: MS Windows - система "из коробки", придуманная и сделанная для продажи. Linux - только ядро, используемое во множестве систем: от микроконтроллеров до кластеров суперкомпьютеров. Так что представлять Open Source в рамках обсуждаемой темы лучше всего могут только какие-нибудь системы, ориентированные исключительно на использование в качестве мультимедиа-станций. Кроме уже упомянутого итальянского Movix, мне известен французский GeexBox (http://www.geexbox.org), возможно, есть и другие. Или - будут. Попытаюсь объяснить, почему мне так кажется. Не потому, что в Linux проще воспользоваться алгоритмами обхода региональной защиты и шифрования DVD. И не потому, что в Linux есть несколько весьма конкурентоспособных медиа-проигрывателей, некоторые из которых работоспособны при самых скромных ресурсах системы. Но потому, что экран телевизора, даже если удаётся заставить его работать с разрешением 1024х768, по качеству отображения алфавитно-цифровой информации приблизительно соответствует экрану терминала (80х25 символов). Можно ли эффективно управлять в таких условиях какой-нибудь другой системой, кроме Linux? Боюсь, что нет. Всё это достаточно хорошо можно проиллюстрировать на примере всё того же Movix. Именно консольного Movix, а не описанного мной когда-то MoviX2, использующего графическую среду X-Window. И пусть вас не пугает определение "консольный". Всё те же меню и мышь, только без излишних на экране телевизора окон с их обрамлением, заголовками, тулбарами и т.п. На примере Movix удобно также обсудить сложность использования той или иной системы. Не имеет значения, насколько сложен Movix "изнутри". Я считаю: прост, с точки зрения пользователя MS Windows - сложен, наверное, но факт, что запустить его, в подавляющем большинстве случаев, можно практически без каких-либо подготовительных операций. Вывод на TV, решённый почти исключительно аппаратными средствами видеокарты - одна из демонстраций этого. На этом рассказ о TV-out можно было бы и закончить, но, на самом деле, оканчивается только рассказ на "детском" уровне. Мне представляется, что в данном случае "детский" уровень вполне соответствует и наиболее рациональному. Судите сами: если вы собрались смотреть кино, то работать в то же самое время, очевидно, не будете? А если вы предполагали смотреть кино на экране телевизора, удобно расположившись в кресле или, скажем, лёжа на диване, то зачем вам в это время монитор? Не правда ли? Однако для полноты картины мы всё-таки коснёмся некоторых аспектов вывода на телевизор при подключённом мониторе. Ещё один шаг Итак, как уже было сказано, большинство видеокарт прекращают передачу изображения на TV-выход, если при загрузке обнаруживают подключённый монитор. Не стоит упрекать за это конструкторов: обеспечивать полноценный вывод одновременно на монитор и на телевизор могут далеко не все видеокарты, какой же может быть выход? Только предоставить пользователю управление TV-out, по умолчанию используя в качестве устройства отображения монитор. ...Вот так мы и становимся заложниками драйверов и операционных систем. Для начала выясним, что же такое есть у видеокарты, снабжённой TV-выходом, "внутри", для чего требуется специальное программное обеспечение. Прежде всего - средства управления. Упомянутый выше стандарт телевизионного сигнала, размеры изображения, так называемое "перекрытие" (превышение размера, предполагаемого видеосигналом над размером реально выводимой "картинки", составляющее для телевизионных приёмников около 10%), смещения вправо-влево и вверх-вниз, не говоря уже об обычных яркости, контрастности и цветонасыщенности. О менее существенных настройках умолчим, но очевидно, что всё это вещи хотя и полезные, но не необходимые (за исключением стандарта, пожалуй). Гораздо важнее доступ к средствам включения/выключения выводом на TV. Вы ведь не забыли, что при загрузке с подключённым монитором с вероятностью около 90% телевизор выводит идеально чистую картинку успокаивающего голубого цвета и без "вмешательства извне" ничего более интересного не покажет? Тут-то нам без специальной программной поддержки и не обойтись. Поддержка эта может быть в виде драйвера (обычно поставляемого производителем), отдельной программы или и того и другого. В MS Windows или Linux с X-Window для начала хватит драйвера от NVidia или ATI, для консольной реализации Linux - программ nvtv (http://sourceforge.net/projects/nv-tv-out) или atitvout ( http://www.stud.uni-hamburg.de/users/lennart/projects/atitvout). Ну, а если интерес ваш на этом не иссякнет, то стоит обзавестись tvtool для MS Windows или собрать ту же nvtv "в графической ипостаси" для X-Window. Как раз на этом этапе уже можно проверить, насколько "умна" ваша видеокарта: более умные имеют две головы (я не шучу: так это и называется: HEAD) - по штуке на канал видео вывода, поглупее - одну. С одной головой никакой драйвер не заставит вашу видеокарту вывести независимые (и с разными разрешением, частотой и т.п.) изображения. Выглядит это так, что драйвер предлагает вам выбрать ОДНО устройство вывода, иногда любезно предоставляя возможность настроить (и проверить) его характеристики ещё до переключения. Спасибо, конечно, но обидно как-то... Особенно если о карте известно, что она может выводить два независимых изображения. Бывает. Вспомните, что вы теперь в заложниках производителей драйвера и ОС со всеми вытекающими последствиями, как-то: ошибки в новых драйверах, отсутствие нужной локализованной версии и тому подобное. Деваться, однако, некуда: отправляйтесь к ним на сайты и почти наверняка нужный драйвер окажется существующим, просто у вас его почему-то не оказалось. Положим, "миновала вас чаша сия" и в опциях драйвера замелькали всякие Twinview, Clone и Dual, как бы намекая, что чего-то у вас стало больше. Так и есть: можно включить вывод на TV, как правило, дополнительно его настроив. Под Clone понимается, как вы, возможно, догадались, дублирование на экране телевизора изображения на мониторе (но с другими свойствами - в соответствии с возможностями телевизора и настройками драйвера). Альтернатива: сделать экран телевизора "продолжением" экрана монитора, что позволит в одном окне (на экране телевизора) смотреть кино, а в другом (на экране монитора) в Excel подсчитывать убытки за день, например. Как по мне: сомнительной ценности перспектива, но - интересно. Поскольку в данном случае и в MS Windows, и в X-Window, как правило, используются драйвера одних и тех же производителей, то разница определяется только подходом: если в MS Windows ваша задача состоит в том, чтобы найти, понять и правильно использовать "менюшки-кнопочки" и другие элементы "интуитивно понятного интерфейса", то в X-Window нужно прочитать прилагаемую документацию и в соответствии с этим отредактировать /etc/XF86Config. "О вкусах не спорят". Более подробно описывать операции настройки драйвера смысла не вижу: они отличаются не только для драйверов разных производителей, но и от версии к версии. "Ищите и обрящете..." Ещё одно отличие использования TV-out под MS Windows или X-Window состоит в том, что драйвер в данном случае позволяет полнее реализовать возможности видеокарты. Среди этих возможностей 3D-ускорение, абсолютно бесполезное при просмотре видео, и 32-х битный цвет, отличить который от 24-битного true color, обеспечиваемого в Linux-консоли, мне не удаётся. В случае X-Window для вывода видео можно попробовать различные драйвера видеовывода, но и в этом случае мне не удалось наблюдать изображение, сколько-нибудь заметно лучшее, чем обеспечивает тот же Movix, например. Во избежание споров напомню, что имеется в виду изображение на экране телевизора. Упомянутые выше tvtool, nvtv и atitvout изрядно выходят за пределы рассказа "для маленьких", поэтому на сей раз мы о них умолчим. Таким образом... Итоги Лично мне возня с компьютером сама по себе часто доставляет удовольствие. Многие, из читающих эти строки, наверное, поймут меня. Интерес, однако, - хорошее дело, но не всё, что можно сделать, делать действительно нужно. Нужно ли, например, подключать телевизор к компьютеру? Для себя я определил только один случай, когда это уместно: "мочи нет ни монитор, ни, вообще, рабочее место видеть! Кино хочу. Лёжа." Откуда слабый интерес к клонированию десктопов и сомнения в ценности "многоголовых" видеокарт. Хотя, случаи, конечно, разные бывают. Определив однажды, что перенос компьютера к телевизору не отнимает у меня и двух минут (напомню, что для Movix, кроме системного блока, достаточно одного устройства ввода: клавиатуры, мыши или дистанционки - на ваше усмотрение), я посмотрел за неделю 4 фильма, что ровно в четыре раза больше, чем за весь предыдущий год. Дальше - больше. Первый просмотр DVD произвёл впечатление, но стоит ли покупать DVD player? Потом пришла в голову мысль послушать mp3 через музыкальный центр, ввиду его почтенного возраста всяческие mp3-фокусы напрочь игнорирующий. Благо расположен он рядом с телевизором - тоже неплохо получилось. Следующая мысль: а не увеличить ли число компьютеров в доме ещё на один, вменив ему в обязанности "работать", прежде всего, в качестве мультимедиа-центра? Стоп. Это, кажется, уже лишнее. Около двух сотен стоит так называемый barebone - промышленная, можно сказать, реализация этой же идеи: тот же мультимедиа-PC, но какой красивый... За 70 у.е. можно купить безымянно-китайский PC-dvd-player и он тоже будет проигрывать и DVD, и mp3. Только вот компьютером он никогда не станет... Также, как barebone от MicroStar никогда не станет "вечным конструктором", за которым можно проводить в экспериментах долгие зимние вечера... Очевидно, и здесь: "на вкус и цвет - товарищей нет". Это хорошо, что есть выбор: каждому - по потребностям. С учётом возможностей, правда. Приобщим золотушных компьютерщиков в высотам мирового кинематографа! Ура. Ну, и традиционные для Upgrade "вставки": Не праздный вопрос: а каковы требования к конфигурации IBM PC, чтобы имело смысл его использовать для просмотра видео? В общем, не такие уж "страшные". Нужно учитывать, что для получения хорошего качества при качественном "первоисточнике" (DVD, например) от компьютера требуется меньше, а максимальный результат на полном экране из mpeg-файла с исходным разрешением 300х120 достижим уже только для достаточно мощного компьютера. Итак: * можно предположить, что к винчестеру и CD/DVD ROM претензий у вас, скорее всего, не будет. Были бы они исправны и более-менее современны; * сколько памяти нужно MS Windows - сами знаете. Movix может работать в 64Мб. Но в 128-ми - лучше. А кого это сейчас пугает? * может показаться странным, но к видеокарте особенных пожеланий не будет - не считая наличия TV-out. Во всяком случае, 3-х летняя ATI, ещё не знавшая необходимости в принудительном охлаждении, выведет изображение на телевизор не хуже, чем какая-нибудь MX460 от NVidia, снабжённая вентилятором не хуже процессорного. Могут быть трудности с драйверами, но для этого мы и обращаем внимание на "чистый" TV-вариант; * со звуком проблемы могут быть только у Linux. Но и о них в последнее время слышно всё реже; * и, наконец, процессор. Тут всё просто, хотя и не так оптимистично: чем больше, тем лучше. Для обычных файлов avi граница "приемлемости" лежит где-то на уровне 700МГц. Дефектов изображения можно даже не заметить, но mplayer честно признается, что для сохранения синхронизации кадры иногда приходилось пропускать. Численная оценка затруднительна: если для декодирования mpeg-4 процессору потребовалось, например 10% мощности, то на масштабирование изображения (если этого не делает аппаратно видеокарта) может потребоваться столько же, а на пост-процессорную обработку, весьма желательную после декодирования - и того больше. Суммарная цифра в 40-50%, как будто, не пугает, но при такой средней загрузке процессора наверняка встретятся фреймы, которые он не успеет обработать. Одним словом: мощность CPU лишней не будет. Так под какой ОС смотреть видео всё-таки лучше? Если на экране телевизора, то, пожалуй, под Linux. Под Movix или GeexBox, если быть точным. Если результат их автоконфигурации окажется достаточным. Если нет, то плохо знакомому с Linux вряд ли удастся преодолеть отсутствие звука или, тем более, изображения. В данном случае, к сожалению, нельзя утверждать, что всё, сказанное о Linux, справедливо и для других ОС UNIX-клона. То есть можно, если речь идёт об X-Window, но нельзя, если о консольном режиме: framebuffer, "родной" для Solaris и почти "родной" для Linux, отсутствует или плохо реализован в BSD-системах (говорят). Не всё "безоблачно" и под MS Windows. Мало того, что "окошки" плохо видно на экране телевизора, так ещё и драйвера, задуманные как предельно дружественные к пользователю, норовят лишить его и так не слишком большой свободы выбора. Перестроившись после загрузки с одним телевизором, драйвер может не только не выводить изображение на монитор при последующем "нормальном" включении, но и не предложить вам возможности перестроиться. Ищите: где-то там должна быть возможность переопределения внешних устройств... Ещё один плюс названных систем Linux-происхождения - это то, что они, в принципе, сделаны как Live CD. И Movix (20Мб), и GeexBox (менее 5Мб) загружаются с CD, "располагаются" в памяти и к носителю собственному больше не обращаются. Такую систему невозможно ни повредить, ни инфицировать, да и MS Windows на вашем винчестере "целее будет". При этом желающие могут перенести содержимое Live CD на винчестер, а особо любопытные - переделать его на своё усмотрение: все необходимые для этого средства доступны. Для Movix - внутри дистрибутива, для GeexBox - на сайте авторов. Отдельный совет линуксоидам: создайте вариант загрузки вашей системы с framebuffer 640х480 без автозапуска X-Window. Позаимствуйте у Movix конфигурацию mplayer: OSD-меню, help, шрифты субтитров и тегов mp3 - и вас будет довольно симпатичный мультимедиа-центр с выводом на телевизор, системой помощи, субтитрами и тегами в кодировке cp-1251: ведь именно её они используют, несмотря на безусловную перспективность unicode и "привычность" koi-8. Невозможно не признать, что мультимедиа-PC на базе barebone-а выглядит более презентабельно, чем обычный для нас tower юго-восточного происхождения. Одно из главных преимуществ такого "красавца" - дистанционное управление. Выясняется, однако, что в этом плане "самоделкиным" есть что предложить: LIRC (http://www.lirc.org) - Linux Infrared Remote Control. Замечательная идея: научить ИК-приёмник компьютера принимать сигналы ЛЮБОГО пульта дистанционного управления. Разве не тем компьютер отличается от телевизора или видеомагнитофона, что его-то как раз и можно "научить"? Как следует из названия, родился LIRC в среде линуксоидов, но идея настолько хороша, что уже существует и windows-реализация. Чего не пробовал - хвалить не буду, но Linux-версия работает замечательно. Ладно, дистанционку взяли, скажем, от видеомагнитофона: не собирались же вы одновременно смотреть и DVD с помощью компьютера, и кассету с помощью видеомагнитофона? Но приёмник-то где взять? По порядку (к уже имеющим в компьютере ИК-порт это не относится): * ИК-приёмник/передатчик можно купить. Какой-нибудь IRM-100 от ASUStek стоит около 15 у.е. Только нужна уверенность, что на мат. плате есть разъём для ИК-порта, а BIOS подразумевает его включение. Цоколёвка разъёма, если m/b не ASUS, наверняка не совпадёт, но в четырёх контактах (+5V, Ground и два сигнальных) запутаться трудно. Боитесь? А я и не говорю, что этот путь - для всех. Зато какое удовольствие получают те, немногие! * ИК-приёмник можно собрать. В простейшем случае - из трёх деталей, практически: интегрального приёмника (TSOP 1738, например), ёмкости 4.7Мкф и резистора 100ком. И подключить его к последовательному порту, благо последний нынче практически не используется. Проще - некуда! Подробности на сайте LIRC. Программная часть LIRC исключительно "прозрачна". Возможно, вам так не покажется, если до сих пор вы пользовались только прекомпилированными дистрибутивами. Но надо же когда-то начинать? Так вот, в качестве первых "самосборных" модуля и демонов LIRC вполне подходит. В заключение: несколько слов о многократно упомянутом MoviX. Рекомендую версию 0.8.2, которая вот-вот появится на movix.sf.net. Наконец-то остались в прошлом проблемы с субтитрами и тегами в кириллице. Наконец-то я избавился от орфографических ошибок в русском варианте. Надеюсь. А русская версия iso даже инструкции загрузки будет содержать на "великом и могучем". Пользователям MS Windows тоже, возможно, интересно будет попробовать: как Live CD, MoviX нуждается только в возможности загрузки с CD ROM. "Лиха беда - начало": почему бы не увидеть Linux-продукт во-первых "в деле", а, во-вторых, без установки на винчестер? Кстати, возможность переноса MoviX на винчестер существует и под MS Windows. Вот только запуск его в этом случае осуществляется с помощью loadlin.exe, а это, как известно, DOS-приложение. Для Win'9X это не страшно: выход в DOS-prompt известен всем, а вот если ваша ОС - ХР, да ещё и разделы отформатированы в NTFS... Будут трудности. Раз уж была речь о LIRC, то нужно сказать, что в состав MoviX он включён. Только не нужно рассчитывать, что MoviX сам определит, какая именно у вас дистанционка. На сайте LIRC можно найти конфигурационные файлы для сотен пультов, но вашего может и не оказаться. На мой взгляд, проще создать такие файлы самому, чем искать подходящие в ftp-архиве LIRC. Подробнее - на www.lirc.org.

<< Предыдущая ИНДЕКС Правка src / Печать Следующая >>

 Добавить комментарий
Имя:
E-Mail:
Заголовок:
Текст:




Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2024 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру