avva: (Default)
[personal profile] avva
Ох, как же я измучился с этими плейерами и конвертерами разных видеоформатов за последние два дня.

Привык, что mplayer хоть и монстр, зато играет практически всё, что ему дают. Ну и хорошо. А тут скачал за последние пару дней много фильмов и мультфильмов. Некоторые из них хочу смотреть и другим показывать на телевизоре в гостиной, а не на компьютерном экране. Там у меня DVD-плейер; правда, DVD-writer'а у меня нет, но плейер умеет также показывать фильмы, записанные на CD в формате SVCD. Казалось бы, простая задача: есть исходный файл .AVI, нужно получить образ для записи SVCD на диск. Наверняка где-то должна быть умная программа, которой даёшь файл и она всё, что нужно делает, правда? Ага, как же.

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


ffmpeg -i input.avi -f yuv4mpegpipe - |yuvscaler -v 0 -n p -O SVCD -M WIDE2STD |mpeg2enc -v 0 -f 4 -n p -F 1 -o output.mpv


Эта последовательность команд вытаскивает видео-поток из input.avi, переводит его в промежуточный формат yuv пакета mjpegtools (ох, какую я ошибку допустил, попробовав вначале делать это через промежуточные файлы... этот .yuv съел у меня всё свободное место на диске за пару минут), потом yuvscaler переводит его в размеры, подходящие для SVCD, одновременно сжимая из формата 16:9 в телевизионный формат 4:3 (опция -M WIDE2STD), потом mpeg2enc переводит это всё в формат MPEG-2, причём надо ему ещё сказать правильный framerate (опция -F 1 в данном случае), который в промежуточном формате yuv не сохраняется, так что нужно самому посмотреть в исходном файле и подобрать нужную опцию. И ещё много всяких нужных опций подобрать.

Потом надо то же самое сделать для звука, только с mp2enc вместо yuvscaler и mpeg2enc, а потом ещё надо использовать mplex для мультиплексирования всего этого вместе в один файл, а потом vcdimager, чтобы из этого файла сделать образ для CD. Всего шесть программ.

Но тут ещё оказалось, что ffmpeg не умеет читать файлы субтитров (которые к данному фильму у меня лежат в формате VobSub отдельно). И вообще никто практически не умеет. Умеет mplayer, который их правильно показывает. Что ж, пришлось разбираться в опциях mplayer, чтобы заставить его вместо показа экспортировать видео и звук в каких-нибудь удобных форматах. Там свои сотни опций, но к счастью оказалось, что есть скрипт mencvcd, внутри пакета mplayer, который запускает все нужные программы: mplayer с опциями экспорта видео в yuv и аудио в wav, yuvscaler и mpeg2enc как описано выше, mp2enc для кодирования звука, и потом mplex и vcdimager. Правда, у этого скрипта свои 20 опций, которые он использует для того, чтобы правильно передавать опции всем остальным, но уже хотя бы только 20. После нескольких попыток он стал правильно переводить видео (сохраняя нужные размеры, а не искажая картинку при переводе в размеры SVCD), и сейчас корпит над этим злосчастным фильмом.

Но как это всё, простите, через задницу. И нигде нет нормального подробного guide'а, который объяснил бы процесс и все термины для новичков. Есть несколько страниц в сети, в разной степени устаревших, с очень плохими объяснениями или вообще без объяснений, с инструкциями типа "делай так и не задумывайся, что это делает и как работает". Одна из них рассказывает про то, как это всё делать с помощью transcode, ещё одного огромного пакета для перевода всего во всё; он у меня вообще работать отказался.

И с этими субтитрами дурацкими. Вот в моём случае я ужимаю широкоформатный (16:9) фильм к размеру 4:3 . Снизу и сверху от картинки на экране будут чёрные полосы. Вот туда же самое место субтитры поместить, чтобы не мешали картинке! Но не получается никак, потому что субтитры накладывает mplayer ещё до того, как yuvscaler пережимает картинку в новый размер и добавляет чёрные полосы. Если делать это правильно, то, по-моему, о субтитрах должен знать mplex, мультиплексер, который соединяет картинку и звук (а может и несколько картинок): ему бы эти файлы VobSub дать, чтобы он их поставил на чёрные полосы. Но он не умеет. И в Windows то же самое, кажется: субтитры накладывает программа-плейер до того, как программа-encoder получает картинку и меняет размерность.


Теперь я знаю о таких вещах, как AVI, MPEG-2, SVCD, NTSC/PAL (резолюции разные у них в SVCD! 480x480 и 480x576), aspect ratio, framerate, MP2, и ещё многих словах и сокращениях, гораздо больше, чем мне хотелось бы знать.

В Windows, кстати, здесь рассказывают, как то же самое сделать (перевести divx записанный в avi в образ SVCD, наложив субтитры VobSub при этом). Тоже не подарочек, между прочим.

А ещё у меня есть очень наивный вопрос. Что мне нужно, чтобы я мог видео-файлы играть на компьютере (причём стандартными какими-нибудь плейерами, тем же mplayer в Линуксе, или Windows Media Player в Windows) а показывались они при этом чтобы сразу на телевизоре? Такое ведь делается как-то? Что нужно для этого купить с точки зрения hardware, что куда воткнуть, что установить с точки зрения software (особенно в Линуксе было бы полезно)? Если кто-то расскажет или даст ссылку хорошую, буду благодарен.

Date: 2004-05-18 05:01 pm (UTC)
From: [identity profile] alexmoskalyuk.livejournal.com
Что мне нужно, чтобы я мог видео-файлы играть на компьютере (причём стандартными какими-нибудь плейерами, тем же mplayer в Линуксе, или Windows Media Player в Windows) а показывались они при этом чтобы сразу на телевизоре?

На ноутбуке я подключаю ПК+телевизор через S-Video, плюс ПК к саунд-системе 5.1. После этого в свойствах дисплея на Windows говорим ему, что появился телевизор и картинка с экрана начинает транслироваться заодно на ТВ (у меня 1024x768 максимум, видимо, нужен HDTV для более высоких разрешений).

Там еще есть такой маразм под Windows, что на каждый плейер картинку воспроизведет на TV-экран с AVI/MPEG/WMV-файла. Т.е. вроде на мониторе показывает, а на телевизоре пустое место. Итого приходится хранить джентльменский набор из Windows Media Player, WinAmp, IrfanView с кодеками, Media Player Classic и Real Player, так как иногда картинку удачно на ТВ транслирует только один из них.

Date: 2004-05-18 09:09 pm (UTC)
From: [identity profile] kibirov.livejournal.com
Т.е. вроде на мониторе показывает, а на телевизоре пустое место.

В свойствах видеокарты надо просто указать, какой из дисплеев primary, какой secondary. Видеопоток обычно выводится на primary. Это может называться по-разному в зависимости от видеокарточки, конечно, но общая идея именно такая. Поверьте человеку, уже года три обеспечивающему техподдержку научных конференций, на которых то и дело кому-нибудь приспичивает показать с ноутбука бесценные видеокадры :)

Date: 2004-05-19 04:17 am (UTC)
From: [identity profile] arsa.livejournal.com
Надо просто выставить поддержку fullscreen-приложений на secondary. Все мультиэкранные видеокарты это могут.

Date: 2004-05-18 05:23 pm (UTC)
From: [identity profile] kitya.livejournal.com
к сожалению, хоть в Виндах, хоть в Линуксе а если хочешь работать с видео то надо разобраться с 10-ком программ и кучей терминов, иначе никак.

и все эти программы, как всегда, хоть там хоть там будут не совершенны. это соврешенно понятно почему, кстати, формата ДВД, к примеру, никто не знает, этот большой секрет выдается только под NDA за деньги, что, естественно, вообще не позволяет легально написать нормальный свободный двд проигрыватель или там утилиты для создания или разбора ДВД. Соотвественно все программы что у нас есть - это то что получено через reverse engineering, так что надежность у них соотвественная. www.doom9.org - лучший сайт для видолюбителей, кстати.

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

Date: 2004-05-18 09:26 pm (UTC)
From: [identity profile] simonff.livejournal.com
VLC - бесплатный и даже, похоже, легальный проигрыватель DVD и кучи других форматов.

Date: 2004-05-18 10:21 pm (UTC)
From: [identity profile] kitya.livejournal.com
по американским законам скорее не легальный, по законам других стран - может быть. ни один бесплатный проигрыватель не может быть легальным, если ты расспростараняешь исходные тесты - то тем самым нарушаешь NDA если даже лицензию на двд ты купил, а если ты не купил то ты использовал reverse engineering что противорчит лицензионным соглашением программ которые ты reversил.
Они сами (про VideoLAN) на своей странице пишут
"The use and distribution of the libdvdcss library is controversial in a few countries such as the United States because of a law called the DMCA (Digital Millennium Copyright Act). If you are unsure about the legality of using and distributing this library in your country, please consult your lawyer. "

Date: 2004-05-18 05:52 pm (UTC)
From: [identity profile] jinxli.livejournal.com
[livejournal.com profile] kitya совершенно прав, doom9 - лучший источник сказок про то, как это всё в windows делается. мой выбор в плане конверсии видео - gordian knot (см. соотв. разделы в guides), что касаемо плеера - bsplayer (google it) или zoom player (google it)

что там под линуксом - не знаю, но подозреваю, что такой же страшенный бардак :)

пробовал искать себе на работу софт под макинтоши - вообще всё плохо :) там даже нормального mp3-encoder'а (или хотя бы frontend-а к LAME) днём с огнём не найти - я как-то раз три свободных вечера на research убил - nihil

Date: 2004-05-18 10:23 pm (UTC)
From: [identity profile] kitya.livejournal.com
мой любимый плейр под виндоуз - mpc (media player classic), лучший набор кодеков - K-Lite codec pack, а лучший швейцарский нож конечно gordian knot. Если мак - это MacOS X то там все точно так же как в линуксе, просто линуксячие программы запускаются и все.

Date: 2004-05-18 07:44 pm (UTC)
From: [identity profile] aarongutang.livejournal.com
по последнему вопросу - есть такая умная датская машинка, KiSS (http://www.kiss-technology.com/). Аппарат умеет, в числе прочего, показывать divx, mpeg4, avi, vcd на ТВ как с компуктера, так и с CD/DVD +-R(W) дисков.

в самых общих чертах:

Date: 2004-05-18 07:57 pm (UTC)
From: [identity profile] krace.livejournal.com
- если нет "двухголовой" видеокарты -- купить и поставить, рекомендую ATI Radeon поновее, но можно и многое другое. затраты $40-$150, по крайней мере в Штатах.

- если уже есть "двухголовая" видеокарта -- подключить видеовыход [низкочастотный, a.k.a. RCA или "тюльпан"; или S-Video; со SCARTами на видеокартах на сталкивался] к видеовходу на ТВ/Видео, потом включить видеовыход [драйвера, control panel, может потребоваться перезагрузка]; удостовериться, что в телевизоре есть картинка. если картинки нет -- биться головой обо всё подряд, пока нужная картинка не появится.  ;)

- некоторые карты умеют работать в разных режимах: "clone" и "multiple head" [на видеовыход поступает либо та же картинка, что и на основной монитор, либо "вторая голова"] -- выбрать наиболее удобный. в принципе, вполне подойдёт clone [тогда будет работать любой софт]

- поиграться с настройками разрешения и sync rates, пока картинка не станет искомого размера/качества [рекомендую не включать разрешение выше 800x600, качество может пострадать]

- перепробовать имеющийся софт на предмет умения играть на "второй голове" [обычно умеет. если не умеет -- скорее всего, помойка]. этот шаг можно пропустить, если включён "clone".

- не забыть про звук: выход саундкарты подключить к аудиовходу ТВ/Видео [обратить внимание на уровни сигналов, если используется speaker out, а не line out]. есть ещё тонкости вроде многоканального звука, но со старыми мультиками об этом можно смело забыть.  ;)

если нет охоты так евозиться, можно купить т.н. scan converter. с ними всё проще -- чётко по инструкции и без возни со всякими драйверами/софтом. выход с монитора на вход скан-конва, выход скан-конва на вход ящика, минимум настроек, отдельно звук -- и готово. нюанс: скан-конвы обычно стоят довольно дорого, как минимум не дешевле приличной видеокарты. с дешёвыми моделями возможны неприятные сюрпризы из-за качества изображения. если в .il так бывает -- купить, попробовать, вернуть в магазин если не понравится.

bonus level: если хочется выеособенно отличиться, можно купить ещё вот такого типа мульку и передавать изображение без проводов на телевизор в соседней комнате. качество изображения будет зависеть от наличия помех и качества самой железки. в противном случае, в соседнюю комнату можно просто протянуть длинный шланг. да, про шланги не забывать all the way: зайти в местный аналог RadioShack'а и купить достаточной длины и количества (самое главное -- с нужными разъёмами!).

hope this helps. если есть более конкретные вопросы -- возможно, смогу помочь.

Date: 2004-05-18 08:23 pm (UTC)
From: [identity profile] 109.livejournal.com
хммм... а я как-то для превращения avi в svcd одним TMPGEnc-ом обхожусь...

Date: 2004-05-18 08:36 pm (UTC)
From: [identity profile] avva.livejournal.com
А субтитры из VobSub он вставлять умеет?

Date: 2004-05-19 04:19 am (UTC)
From: [identity profile] arsa.livejournal.com
Nero тоже отлично справляется.

Date: 2004-05-18 08:27 pm (UTC)
From: [identity profile] bish0nen.livejournal.com
То, что ffmpeg выдаёт на выходе, обычно приводит виндовозные плейеры в тихий ужас, и они немедленно выпадают в осадок. Больший успех сопутствует использованию transcode (http://www.theorie.physik.uni-goettingen.de/~ostreich/transcode/), который, как водится, тоже со своими тараканами.

Date: 2004-05-18 10:15 pm (UTC)
From: [identity profile] mocker-bat.livejournal.com
А еще проще купить что-нибудь вроде этого (http://www.ncix.com/products/index.php?sku=10986&vpn=LVD-2002) или этого (http://www.onlybestrated.com/)
И ничего перекодировать не надо. Оно вроде само все играет
Про субтитры правда не скажу - не узнавал

Date: 2004-05-18 11:49 pm (UTC)
stas: (Default)
From: [personal profile] stas
Сдаётся мне, раньше везде будут DVD-плееры, понимающие DivX и прочее - они, собственно, уже стоят начиная с ниже 600 шекелей - чем будет нормальный софт для этого. Я как-то пытался то же самое сделать на windows - это проще с точки зрения опций, но я посмотрел,сколько времени занимает перекодировка одного фильма и отчаялся.

Что касается комп->TV, то, насколько я понимаю, надо карточку с видеовыходом и шнурок соответствующий к ней и всё. Этого, вроде бы, достаточно. Есть, впрочем, внешние конверторы выхода на дисплей в ТВ, но они довольно дорогие.

Date: 2004-05-19 12:15 am (UTC)
From: [identity profile] lz.livejournal.com
Чтобы смотреть на телевизоре, нужна карточка с Video Out. Я в игрушки трехмерные не играю, поэтому всегда пользуюсь видеокартами Matrox. Для 2D лучше, кажется, не бывает.

.www.dvd2dvd.org

Date: 2004-05-19 01:43 am (UTC)
From: [identity profile] kkk-ddd.livejournal.com
Никто не вспомнил DVD2SVCD (www.dvd2dvd.org). Там все более/менее стабильно на входе DVD или AVI и subtitles, на выходе - BIN/CUE образ SVCD/DVD диска. Использует "внешние" кодеры (tmpenc, canopus procoder, cinema craft encoder)

TV out для Линукса

Date: 2004-05-19 04:02 am (UTC)
From: [identity profile] iratus.livejournal.com
Возможности проигрывать видео на ТВ в Линуксе есть и не плохие.
как конкретно это делать зависит от карточки
рассмотрим 2 варианта

НВИДИА
бинарные драйвера НВИДИА от производителя отлично поддерживают ТВ-оут как еще один
дисплей. Есть несколько вариантов конфигурации. все они хорошо описаны
вот тут http://www.bog.pp.ru/work/linux_nvidia.html

я лично создаю еще один Х-сервер с ТВ как монитором и просто запускаю мплайер или ксин на него.
есть так же программа
http://sourceforge.net/projects/nv-tv-out/

которая по идее от драйвера не зависит
у меня с первого тыка не заработала... не разбирался

АТИ

если у тебя старая карточка АТИ ( по Радеон включительно) и ты пользуешься
ванилла драйвером тогда тебе нужно это :
http://www.stud.uni-hamburg.de/users/lennart/projects/atitvout/

если у тебя относительно новая карточка RADEON™ 8500 series и выше
тогда тебе нужен ATI's proprietary Linux driver
(доступен у производителя)
описание конфигурации для ТВ-оут находится тут:
http://www2.ati.com/drivers/linux/Linux_376_Release_Notes.html

желаю удачи

ПЫСЫ.
Вообще-то я профессионально занимаюсь разработкой программ обработки видео под Линуксом, так если есть вопросы по поводу енк/транс кодирования, то милости прошу

Для Windows

Date: 2004-05-19 11:06 am (UTC)
From: [identity profile] relyef.livejournal.com
практически все что нужно, можно найти здесь (http://www.videohelp.com/). Удивительно даже, что никто еще не упомянул. И очень хорошо документированно (особенно если цель не изучать документацию, а смотреть фильм).

VLC

Date: 2004-05-19 01:21 pm (UTC)
From: [identity profile] fyysik.livejournal.com
videolan.org

пользуюсь на всех своих платформах, Windows, Linux, BeOS.

практически для всех форматов, начиная от "закрытого" макинтошевского QuickTime-Sorensen и заканчивая отрытыми и стопроцентно легальными видео и аудиоформатами OGG
From: (Anonymous)
Все решается гораздо проще: нужно просто не иметь телевизора :) У меня его нет, а компьютеров три, один как раз в гостиной (специально собирал "семейный" - очень тихий, экран большой). Дисков сотни, все играется mplayer'ом с полтыка. Проблем нет никогда никаких.

Date: 2004-05-19 10:51 pm (UTC)
From: [identity profile] madfire.livejournal.com
*озадаченно* а поможет ли xine_lib + kaffeine... буду посмотреть вечером

Date: 2004-05-24 08:33 pm (UTC)
From: [identity profile] azot.livejournal.com
Что мне нужно, чтобы я мог видео-файлы играть на компьютере (причём стандартными какими-нибудь плейерами, тем же mplayer в Линуксе, или Windows Media Player в Windows) а показывались они при этом чтобы сразу на телевизоре? Такое ведь делается как-то?

Расскажу о своём скромом "форточкином" опыте. Вынь ХР, древнейший дешевый кастрированный 2ой джифорс с видеовыходом (большинство современных карточек его имеют тоже), TvTool - софт для вывода не телевизор (хотя можно и стандартными драйверами выводить, просто мороки больше), стандартный WindowsMediaPlayer, халявный кодек с divx.com. Всё. 90-95% всего видео при таком раскладе можно смотреть на телевизоре - проблемы в основном с хитрыми кодировками аудио. Если поставить на винду Nimo Codec Pack - то смотреть можно вообще практически всё.
з.ы. забыл! Еще есть кабель от видеокарточки до телевизора. S-Video, или как его в народе называют, S-VHS - покупается легко в любом компьютерном/видео магазине.

MacOS X

Date: 2004-05-27 10:58 pm (UTC)
From: [identity profile] vzaliva.livejournal.com
На MacOS X я использую
iVCD (http://www.mireth.com/pub/ivme.html).

Конечно можно скопилить все программы приведенный выше и ими
делать, но честно говоря мне проще заплатить $25 и не мучаться.

Date: 2006-09-07 08:43 am (UTC)
From: [identity profile] ex-xagor.livejournal.com
Простите пожалуйста за столь несвоевременный комментарий. Я лишь надеюсь, что вы меня поймете в силу того, что я как раз сейчас взялся за проблему похожую на ту, что вы описывали в этом посте.
Из того что там написано мне все ясно, кроме одного. Где взять mpeg2enc? Вроде он должен входить в состав mjpegtools. Я поставил их, но mpeg2enc не появился. И в составе rpm-пакета его нет.
Вы слчайно не знаете, что я думаю не так?

December 2025

S M T W T F S
  123 4 56
78 9 10 11 1213
1415 1617181920
21 22 23 24 2526 27
2829 30 31   

Most Popular Tags

Style Credit

Expand Cut Tags

No cut tags
Page generated Jan. 2nd, 2026 06:42 am
Powered by Dreamwidth Studios