Home

Реклама

История о контейнерах

  • 26 Янв, 2009 at 1:56 AM
Cray2
Что из себя представляет файл с видеофильмом. Грубо говоря это набор из видео потока (кодированного каким-то кодеком), нескольких (0,1 или много) аудио потоков (кодированных каким-то кодеком), нескольких субтитров (в каком-то формате). Все это запаковано в один ящик - контейнер. Контейнер не отвечает за качество видео или аудио - это не его функция. Это просто коробка.

Тем не менее эта коробка может налагать некоторые ограничения на хранящиеся в ней данные. Посмотреть сравнение контейнеров можно на wikipedia: http://en.wikipedia.org/wiki/Comparison_of_container_formats
Как мы видим, многие контейнеры. В частности такие популярные как mp4, avi, wmv налагают ограничения на используемые кодеки. Что это значит для пользователя: сейчас у нас популярен один контейнер, завтра другой.

Другие контейнеры более универсальны и позволяют хранить потоки в произвольном формате.

Среди них есть интересный нам mkv (матрешка). Интересен он за счет использования EBML, что позволяет его расширять по мере необходимости, а не менять периодически шило (avi) на мыло (mp4 или wmv). Так же сам формат - public domain, есть качественные свободные реализации. Так же mkv сейчас поддерживается аппаратными проигрывателями. Совокупность этих свойств делает его отличным контейнером для хранения своей видео коллекции.

Что делать с уже имеющейся коллекцией видео? Ее довольно просто можно конвертировать. Сделаем это в полуавтоматическом режиме в усложненном варианте.

Итак, у нас в директории ~/soap есть собственноручно снятый сериал. С двумя аудио дорожками (рус - дорожка 2 и en - дорожка 1) в avi контейнере. При этом, основной дорожкой стоит английская и языки дорожек не помечены. То есть при запуске плеера без явного выбора у нас будет английская дорожка. Это относится ко всем файлам-сериям в данной директории. Перекодировать мы ничего не собираемся, так как это и есть первоисточник, который мы имеем. Лучше сделать уже не получится - а ухудшить качество можно легко.

Исправим эту ситуацию.
1) Установим пакет mkvtoolnix
2) Запускаем mkvmerge-gui и открываем (add) первую серию. В окне tracks появились найденные дорожки (как видео так и аудио). По очереди их выбираем и правим нужные параметры (выбираем language для звука). Дорожку с русской озвучкой поднимаем наверх (up) - делаем ее основной.
Когда все нужные параметры выбрали жмем кнопку 'copy to clipboard'. Если нам нужно переконвертировать один файл - можно было бы уже жать 'start muxing'.
Закрываем mkvmerge-gui.
3) Из Klipper (управление clipboard в kde) вытаскиваем строку

"mkvmerge" -o "~/soap/S1.mkv" --language 1:eng --language 2:rus -a 1,2 -d 0 -S "~/soap/S1.avi" --track-order 0:0,0:2,0:1

Она нам корректно переконвертирует первую серию. Обобщим команду.
4) $ cd ~/soap
$ find -type f -iname "*.avi" | while read fname; do mkvmerge -o "${fname%%.avi}.mkv" --language 1:eng --language 2:rus -a 1,2 -d 0 -S "${fname}" --track-order 0:0,0:2,0:1; done;
5) Проверили что все в порядке
$ rm -f *.avi

Естественно, что с разными по структуре файлами так не получится. В одном у нас аудио дорожка #1 - русская, в другом - французская.

Переконвертация одного файла у меня заняла около 30 секунд. Так что чай вы попить не успеете.

Теперь о том, зачем мы проставляли языки дорожек. В конфигурационном файле mplayer (~/.mplayer/config) мы можем указать предпочитаемые языки:
alang=ru,en
Это значит, что при открытии файла mplayer будет пытаться найти русскую звуковую дорожку. Если не найдет - то английскую. Если уж ее не найдет - откроет дорожку по умолчанию.

Tags:

Zypper & metalink

  • 12 Дек, 2008 at 1:42 AM
Cray2
Уже достаточно давно в официальных репозитариях OpenSuse используется баллансировка зеркал. Все добавляют как источник пакетов ссылки на download.opensuse.org, а на самом деле закачка происходит с ближайшего зеркала.

Для пользователей в РФ это может представлять некоторую проблему - ближайшее к нам зеркало содержат Yandex, и оно иногда разочаровывает. То есть может внезапно замереть. Или в течении пары недель сразу после релиза отдавать на скорости 'ностальгия по 90ым'. На самом деле ситуация не так уж и плоха. Скорости интернета у нас сейчас не такие, чтобы ругать yandex зеркало в медлительности. Чаще всего оно со своими задачами справляется.

Для пользователей реально быстрого интернета одним из выходов было добавление ссылки не на download.opensuse.org, а напрямую на одно из немецких зеркал.

В OpenSuse 11.1 появилась возможность решить эту ситуацию более приемлемым способом. Теперь пофиг, что одно зеркало тормозит - есть еще десятки других. В новом zypper появилась возможность использовать metalink. Для этого просто добавляем стандартные пути к репозитариям, устанавливаем пакет aria2 и устанавливаем переменную окружения ZYPP_ARIA2C

Потестировать: export ZYPP_ARIA2C=1

Если понравилось и хотим использовать aria2 на постоянной основе:
В конец файла /etc/environment допишем строку "ZYPP_ARIA2C=1".

P.S. Проблема уже не актуальна. Но может возникнуть, например, при выходе нового релиза и массового обновления.

Кофейный лед

  • 6 Июл, 2008 at 2:09 PM
Cray2
В последнее время стал использовать телевизор в качестве будильника. Сотовый как-то слишком нежно будит и я его просто игнорирую. Так вот, с утра по ТВ время различных анонсов и полезных советов. В начале недели слушал про кофе и способы его приготовления. Какой-то лысый олух упомянул `кофейный лед`. Оказывается, если кофе заморозить в формочках для льда - вам будет зашибись.

Вчера так и сделал. Для эксперимента взял растворимый *** (не будем упоминать ™ в суе). Залил кофе в формочки, подождал пока остынет до комнатной температуры и засунул в морозилку.

Сегодня с утра полчаса плясал в трусах вокруг этого чуда кулинарии. Кофейный лед прочно примерз к форме. Стандартный прием с обычным льдом - скручивание - эффекта не приносил. Долго ковырял лед вилкой - откалывались только маленькие кусочки. Поливание теплой водой результата тоже не дало. Эти гады в ящике, забыли упомянуть, что к кофейному льду за завтраком необходимо подавать молоток и зубило в качестве столовых приборов.

Идеи закончились - полил форму кипятком, кубики за пару секунд потеряли ощутимую часть объема. После этого легко достал их вилкой. В итоге не понравились (пробовал с молоком).

Если у кого-то есть еще домашние рецепты холодного кофе - не стесняйтесь делиться.

Tags:

Запуск приложений в KDE

  • 4 Июл, 2008 at 8:10 PM
Cray2
Довольно часто стал наблюдать скриншоты молодых линуксоидов, с бардаком `иконок` на рабочем столе. Ужасное зрелище. Решил опубликовать свое мнение о быстром запуске приложений, чтобы потом, в случае необходимости, давать ссылки и не повторять это множество раз различным людям. Советы довольно общие, примеры даются с привязкой к KDE.

1) Начнем с кардинальных перемен. Мышка - это долго и неудобно. Самый
эффективный способ запуска приложений - HotKeys (горячие клавиши).

Заходим в `центр управления kde` -> `региональные и специальные
возможнсти` -> `комбинации клавиш`. Находим вкладку `комбинации команд`.

Ставим горячие клавиши на самые частоиспользуемые приложения. Такие как
браузер, эмулятор терминала и др. Главное не увлекаться - чем больше
hotkeys - тем сложнее их запомнить. Со временем количество быстрых комбинаций к приложениям и стандартным действиям у вас будет расширяться. Комбинации необходимо такие, которые не будут использоваться в приложениях. Например, Ctrl+C, очевидно, не пригоден для быстрого вызова какого-либо приложения, так как у нас будет конфликт.

2) Второй по скорости путь к запуску приложений : через командную строку
KDE (по умолчанию Alt+F2). Выучите иена некоторых частоиспользуемых приложений. Например, утилита для записи дисков называется `k3b` - легко запомнить, быстро набрать команду.
За счет того, что командная строка ведет историю - как правило, не нужно
набирать всю команду. Например адресная книга KDE - kaddressbook. После
пары запусков полной командой, в последующие разы хватит просто `kad`.

3) Третий способ может в некоторых случаях состязаться со вторым, если у
человека очень сильно развит навык работы с мышью. Но если у вас touchpad -
то этот способ сильно проигрывает второму.
Аплеты быстрого запуска на панели KDE (в KDE3 эта панель называется kicker).
RightClick по панели -> добавить приложение на панель. Выбираем, ставим.
Теперь RightClick по иконке (обратите внимание - здесь можно удалить эту
кнопку) -> переместить кнопку -> двигаем ее в понравившееся место ->
LeftClick.

Иконки на поверхности рабочего стола в windows стиле не эргономичны. Они
перекрываются окнами. Чтобы до них добраться зачастую приходится
сворачивать окна. Панель же окнами не перекрывается (за исключением
fullscreen окон). Избегайте иконок на рабочем столе - выносите их на
панель.

4) Через меню KDE.

Tags:

Acorp W442G Port Forwarding

  • 29 Июн, 2008 at 6:06 AM
Cray2
Поставил себе IRC баунсер. Открыл порт. Долго тупил почему у меня Konversation перестал подключаться к irc.freenode.org. На подобные грабли я уже пару раз напарывался, поэтому, чтобы не забыть о них опять, решил запостить.

При добавлении форвардинга с Acorp W422G на машину в локальной сети через web интерфейс, это инженерное чудо почему-то добавляет правило, запрещающее локальной машине отправлять пакеты по этому порту в мир.

pktsbytestargetprotoptinoutsourcedestination
3160DROPtcp--br0any192.168.1.2anywheretcp dpt:6667


Зачем - я не понял. Если это правило убрать - вроде все прекрасно работает.

Если я что-то сделал не так - расскажите что.

Tags:

сокращения в konqueror

  • 27 Май, 2008 at 5:10 AM
Cray2
В последнее время в локальной news рассылке накопилось множество мелких полезных советов, сейчас решил постепенно их перетащить сюда.

Первая статья о веб сокращениях в konqueror. Многие им пользуются, но удивительно, что не многие смотрели его настройки. Сейчас на примере сервиса youtube.com расскажу об одной очень полезной возможности.

Для начала откроем страницу youtube.com и введем строку поиска. Например поищем клипы с Лэнсом Армстронгом в категории Videos. В ответ нас переведут по ссылке http://youtube.com/results?search_query=lance+armstrong&search_type=

Очевидно, что для поиска по ключевому слову word можно просто пойти по ссылке http://youtube.com/results?search_query=word&search_type= , минуя главную страницу. В это и есть суть сокращений.

В настройках konqueror "сокращения веб" включаем их, если они выключены. Добавляем новое.
Имя поисковой системы : не имеет значение, напишем YouTube
URI для поиска: http://youtube.com/results?search_query=\{@}\&search_type=
\{@}\ - сюда будет подставлена ключевая строка.
Сокращения: URI: yt
Кодировка: оставляем `по умолчанию`. Подразумевается что все уже давно на utf8.
Применяем настройки.

Теперь для поиска роликов достаточно просто написать в адресной строке "yt:lance armstrong"

Tags: