{
    "version": "https:\/\/jsonfeed.org\/version\/1.1",
    "title": "Копытов Иван: заметки с тегом vlc",
    "_rss_description": "Блог ленивого сисадмина",
    "_rss_language": "ru",
    "_itunes_email": "",
    "_itunes_categories_xml": "",
    "_itunes_image": "",
    "_itunes_explicit": "",
    "home_page_url": "https:\/\/kini24.ru\/tags\/vlc\/",
    "feed_url": "https:\/\/kini24.ru\/tags\/vlc\/json\/",
    "icon": false,
    "authors": [
        {
            "name": "Копытов Иван",
            "url": "https:\/\/kini24.ru\/",
            "avatar": false
        }
    ],
    "items": [
        {
            "id": "187",
            "url": "https:\/\/kini24.ru\/all\/kodirovanie-video-2\/",
            "title": "Кодирование видео",
            "content_html": "<p>Сейчас на очереди мульсериал «Битлджус». Qeven почти ожидаемо «споткнулся» на нем, выдавая не до конца перекодированные файлы. Настала очередь VLC. Я бы его назвал комбайном за то количество функций, которые он может проделывать. Убив несколько часов на подбор параметров, обнаружил, что даже будучи запущенным из командной строки, он «нормально» реагирует на команды с пульта дистанционного управления, что мне было совершенно не нужно. Если, например, я нажимаю на паузу, то процесс перекодирования тоже встает на паузу. Не дай бог в процессе нажать на кнопку выключения... :-)<br \/>\nНо и одновременно с перекодированием файлов мне хотелось смотреть фильмы. К сожалению, однозначной команды вроде <i>disable-lirc<\/i> у него нет, поэтому пришлось пойти на хитрость и использовать параметр командной строки <i>lirc-file<\/i>, который задает файл с командами, выполняемыми при нажатии кнопки на пульте. Указав в качестве параметра корневой каталог системы, я получил возможность смотреть фильмы, управляя пультом, и перекодировать видеофайлы.<br \/>\nКодек DivX 3 тоже подвел, но, возможно, что тут также виноват пульт. Пришлось остановиться на MPEG2. В итоге конечная команда выглядела так:<\/p>\n<pre class=\"e2-text-code\"><code class=\"\">for a in *.mkv; do vlc -I dummy &quot;$a&quot; --sout=&quot;#transcode{vcodec=mp2v,vb=4096,fps=25,acodec=mp3,ab=128,samplerate=44100,channels=2,deinterlace,audio-sync}:standard{access=file,mux=avi,dst=\\&quot;$a.avi\\&quot;}&quot; --lirc-file &quot;\/&quot; vlc:\/\/quit; done;<\/code><\/pre><p>Запускать, конечно, надо из каталога. где находятся файлы для конвертации. Файлы, полученные в результате обработки, будут находиться в том же каталоге.<\/p>\n",
            "date_published": "2018-04-15T15:27:09+07:00",
            "date_modified": "2018-04-15T16:43:25+07:00",
            "tags": [
                "dvd",
                "vlc",
                "видео",
                "командная строка",
                "перекодирование",
                "плеер",
                "проблема",
                "пульт",
                "решение"
            ],
            "_date_published_rfc2822": "Sun, 15 Apr 2018 15:27:09 +0700",
            "_rss_guid_is_permalink": "false",
            "_rss_guid": "187",
            "_e2_data": {
                "is_favourite": false,
                "links_required": [
                    "highlight\/highlight.js",
                    "highlight\/highlight.css"
                ],
                "og_images": []
            }
        },
        {
            "id": "181",
            "url": "https:\/\/kini24.ru\/all\/upravlenie-pleerom-vlc-s-pulta\/",
            "title": "Управление плеером VLC с пульта",
            "content_html": "<p><b>Предыстория<\/b>.<br \/>\nВсе началось с того, что меня попросили записать несколько мультсериалов на диски. Плеер оказался капризным, документация не соответствовала действительности, пришлось помучиться с подбором воспринимаемых им кодеков. В процессе захотелось посмотреть некоторые из этих сериалов — я начинал их смотреть в детстве, но до конца их так и не посмотрел. Серии короткие, в среднем по 20 минут, и вскакивать каждый раз, чтобы переключить на следующую, мне было лень. Поэтому на аукционе был приобретен универсальный пульт, который мне предстояло настроить на управление VLC.<\/p>\n<div class=\"e2-text-picture\">\n<img src=\"https:\/\/kini24.ru\/pictures\/ik-pult-vieta@2x.jpg\" width=\"220\" height=\"565\" alt=\"Пульт Vieta\" \/>\n<div class=\"e2-text-caption\">Вот такой вот симпатичный пульт<\/div>\n<\/div>\n<p>Я бы еще долго его «настраивал» по причине лени, но в прошедшую пятницу меня практически свалил с ног приступ хандроза. Нормально дышать я не мог — каждый вдох отдавался болью в груди, поэтому всякие физические нагрузки мне были противопоказаны. В субботу вспомнил про него и решил, что пора устроить себе постельный режим.<\/p>\n<p><b>Переходим к настройке<\/b>.<br \/>\nLirc у меня на компьютере уже был установлен, дело было только за настройкой пульта. В процессе выяснилось множество деталей, пульт тоже оказался немного «капризным», поэтому пришлось немного отойти от стандартного пути настройки. В итоге все выглядело следующим образом.<br \/>\nДля начала записываем коды клавиш пульта. Мне пришлось форсировать raw-режим записи:<\/p>\n<pre class=\"e2-text-code\"><code class=\"\"># irrecord -f --device=\/dev\/lirc0<\/code><\/pre><p>Далее жмем Enter и немного ждем как просит программа. Вводим название пульта без пробелов, у меня это Vieta. Потом начинаем нажимать разные кнопки пульта с такой скоростью, чтобы появилась хотя бы одна точка и их было бы не больше 10. В результате irrecord определяет его параметры и затем начинается процесс ввода кнопок. Вводим название кнопки, затем, когда программа попросит, нажимаем саму кнопку. Названия лучше брать стандартные, узнать их можно выполнив следующую команду:<\/p>\n<pre class=\"e2-text-code\"><code class=\"\"># irrecord -l<\/code><\/pre><p>После того как введена последняя кнопка, при запросе имени очередной кнопки нужно просто нажать Enter. Процесс записи завершен, о чем irrecord и проинформирует, указав имя файла, в который были записаны данные. Конечно, можно использовать и получившийся в результате файл (наверное), но выглядит он не очень эстетично, поэтому лучше привести его в более читабельный вид:<\/p>\n<pre class=\"e2-text-code\"><code class=\"\"># irrecord -a Vieta.lircd.conf<\/code><\/pre><p>В конце выполнения этой команды будет предложено ввести имя файла, в который будет сохранен результат. Вводим имя и продолжаем.<br \/>\nПолучившийся в результате файл копируем в папку \/etc\/lirc\/lircd.conf.d. «Плюсом» в этой папке является то, что туда можно скопировать множество файлов от разных пультов и все они будут использоваться lirc. Перезапускаем службу:<\/p>\n<pre class=\"e2-text-code\"><code class=\"\"># service lircd restart<\/code><\/pre><p>Половина работы сделана, осталось настроить VLC. Для этого нужно будет создать еще один файл, в который будут записаны действия, выполняемые в ответ на нажатие соответствующей кнопки. Этот файл один для множества программ, но меня пока что интересует только плеер. Формат у файла следующий:<\/p>\n<pre class=\"e2-text-code\"><code class=\"\">begin\n    button = KEY_PLAYPAUSE\n    prog = vlc\n    config = key-play-pause\nend<\/code><\/pre><p>Здесь <i>KEY_PLAYPAUSE<\/i> — это название кнопки из ранее созданного файла vieta.lircd.conf, <i>vlc<\/i> — название программы, а <i>key-play-pause<\/i> — действие в плеере. Список действий VLC можно посмотреть на вики проекта, но лучше использовать следующую команду:<\/p>\n<pre class=\"e2-text-code\"><code class=\"\">vlc -H --advanced 2&gt;&amp;1 |sed -n &#039;\/--key\/ {s\/^\\ *--\/\/; s\/^\\(.*\\) &lt;[^&gt;]*&gt;\\ *\\(.*\\)$\/\\2 -&gt; \\1\/; h}; \/^.*[^ ].*-&gt; key\/ p; \/^ -&gt; key\/ { n; s\/^[ \\t\\n]*\/\/M; G; s\/\\n\/\/; p}&#039;<\/code><\/pre><p>Далее, по документации к lirc нам нужно запустить программу irexec, которая и будет «нажимать» кнопки в системе в ответ на нажатие на пульте. Но, как оказалось в случае с VLC, нам она не нужна. Осталось только настроить сам плеер на удаленное управление. Запускаем его и идеи в настройки программы и в левом нижнем углу выбираем пункт «Все». Для начала включаем управление пультом<\/p>\n<div class=\"e2-text-picture\">\n<img src=\"https:\/\/kini24.ru\/pictures\/vlc-lirc01@2x.png\" width=\"520\" height=\"413\" alt=\"Подключение lirc в VLC\" \/>\n<div class=\"e2-text-caption\">Подключение lirc в VLC<\/div>\n<\/div>\n<p>Затем указываем имя файла конфигурации. Он у меня называется .lircrc и лежит в домашнем каталоге. Чтобы он мне не мешался, я сделал его скрытым.<\/p>\n<div class=\"e2-text-picture\">\n<img src=\"https:\/\/kini24.ru\/pictures\/vlc-lirc02@2x.png\" width=\"520\" height=\"413\" alt=\"Путь к файлу lircrc\" \/>\n<div class=\"e2-text-caption\">Указываем полный путь к файлу lircrc<\/div>\n<\/div>\n<p>Всё, сохраняем настройки и перезапускаем плеер. Теперь можно пробовать управлять VLC с пульта.<br \/>\nСразу он у меня не заработал, пришлось проверять, что компьютер вообще принимает команды с пульта:<\/p>\n<pre class=\"e2-text-code\"><code class=\"\"># irw<\/code><\/pre><p>Если после нажатия кнопки на пульте на экране появляются коды кнопок и их названия, которые были введены в файл vieta.lircd.conf, то пульт и приемник работают нормально. У меня реакции не было никакой, но после выполнения команды<\/p>\n<pre class=\"e2-text-code\"><code class=\"\"># mode2<\/code><\/pre><p>все странным образом заработало.<br \/>\nОсобо меня порадовала кнопка Language на пульте. На нее я повесил переключение звуковой дорожки. Например, в том же «Доктор Хауз» звуковых дорожек с русским переводом несколько, но нравится мне только один. С этой кнопкой не нужно заморачиваться каждый раз при переключении.<br \/>\nДа, весь процесс настройки немного муторный, нужно вводить много текста, но делается это один раз, поэтому придется потерпеть.<br \/>\nЕще одним «минусом» , с которым мне пришлось столкнутся — ИК-излучатель в моем пульте совсем чуть-чуть торчит из корпуса, вследствие чего угол, под которым можно управлять плеером, очень мал. Надо достаточно точно направлять пульт на приемник. Впрочем, это устранимо :-)<br \/>\nКстати, счастливые обладатели телефона с ИК-передатчиком, могут использовать его для управления плеером или вообще компьютером. Да, я знаю, что есть множество других программ для управления компьютером, но почему бы не использовать и такой вариант?<\/p>\n<p><b>P.S<\/b>. Пока искал как lirc различает короткое и длинное нажатие на клавишу пульта, наткнулся на недокументированный (по крайней мере, на официальном сайте его описание я не нашел) параметр <i>ignore_first_events<\/i>, который позволяет реализовать реакцию на долгое нажатие кнопки. В ходе тестирования оказалось, что сначала идет реакция на короткое нажатие, затем, если кнопка не была отпущена, то выполняется действие, запрограммированное на долгое. Чтобы было понятней, покажу на примере. Например, в файле lircrc заданы следующие секции:<\/p>\n<pre class=\"e2-text-code\"><code class=\"\">begin\n    button = KEY_FORWARD\n    prog = vlc\n    config = key-jump+short\nend\n\nbegin\n    button = KEY_FORWARD\n    prog = vlc\n    config = key-jump+medium\n    ignore_first_events = 10\nend<\/code><\/pre><p>Если зажать кнопку примерно на три секунды, то сначала выполнится первая секция — плеер переместится на 10 секунд вперед, затем, спустя 10 повторов от пульта, выполнится вторая секция — плеер перейдет на 60 секунд вперед. То есть, в сумме, плеер перейдет на 70 секунд вперед.<\/p>\n",
            "date_published": "2018-04-01T10:35:59+07:00",
            "date_modified": "2018-04-01T12:52:39+07:00",
            "tags": [
                "lirc",
                "vlc",
                "настройка",
                "пульт",
                "управление"
            ],
            "image": "https:\/\/kini24.ru\/pictures\/ik-pult-vieta@2x.jpg",
            "_date_published_rfc2822": "Sun, 01 Apr 2018 10:35:59 +0700",
            "_rss_guid_is_permalink": "false",
            "_rss_guid": "181",
            "_e2_data": {
                "is_favourite": false,
                "links_required": [
                    "highlight\/highlight.js",
                    "highlight\/highlight.css"
                ],
                "og_images": [
                    "https:\/\/kini24.ru\/pictures\/ik-pult-vieta@2x.jpg",
                    "https:\/\/kini24.ru\/pictures\/vlc-lirc01@2x.png",
                    "https:\/\/kini24.ru\/pictures\/vlc-lirc02@2x.png"
                ]
            }
        },
        {
            "id": "38",
            "url": "https:\/\/kini24.ru\/all\/podklyuchenie-videokamery-k-kompyuteru\/",
            "title": "Подключение видеокамеры к компьютеру",
            "content_html": "<p>Появилась у меня необходимость подключить видеокамеру к компьютеру для дальнейшей записи происходящего в общем коридоре. Взял на работе завалявшуюся Sony KPC-S190S, принес из дома ТВ-тюнер и приступил к экспериментам. В качестве компьютера выступил старенький, собранный из того, что было, компьютер. Он у меня зачастую выступает в качестве подопытного.<br \/>\nДля подключения нам понадобится:<\/p>\n<ol start=\"1\">\n<li>Собственно камера;<\/li>\n<li>пара штекеров типа «тюльпан»;<\/li>\n<li>переходник с «молекса» на «тюльпан» для питания камеры;<\/li>\n<li>любая карта захвата видео. У меня это стал AverTV Studio 507.<\/li>\n<\/ol>\n<p>Установил недостающие драйверы в систему: видеокарта, ТВ-тюнер, звуковая карта и т. д. Установил для пробы видеоплеер VLC, он позволяет, помимо всего прочего, также осуществлять захват с любого устройства. Распаял кабели, подключил камеру к ТВ-тюнеру и начал экспериментировать с настройками захвата. Мне понадобилось около 10 минут, чтобы разобраться что к чему, после чего просмотр видео с камеры настраивался буквально за одну минуту.<br \/>\nНа самом деле настройки в VLC нужны минимальные. Выбираем в меню «Медиа» пункт «Открыть устройство захвата...». В открывшемся окне в списке «Название видеоустройства» находим пункт «AverMedia BDA Analog Capture». Затем чуть ниже нажимаем кнопку «Другие...» и ставим там одну галочку «Настройки устройства». Далее нажимаем «ОК» и «Воспроизвести». В первом диалоге нам предлагается выбрать видеодекодер. Все равно, что вы выберете, я оставил предложенный по умолчанию NTSC_M. В следующем диалоге поставил максимальный размер на выходе, все остальное не трогал. Так как камера не имеет аудиоканала, то следующий диалог можно просто закрыть. А вот теперь наступает самый важный момент — выбор входного канала видео. На единственной вкладке «Crossbar» в списке «Input» выбираем пункт «Video Composite In», так как камера у нас подключена к композитному входу с разъемом типа «тюльпан». На остальные настройки наплевать, жмем «ОК». И сразу же видим картинку, поступающую с камеры.<br \/>\nНе знаю с чем это связано, но картинка несколько запаздывает, задержка небольшая — около 0,5 секунды — но все равно заметно. Скорее всего, это время тратится на обработку видеосигнала процессором камеры.<br \/>\nЕсли кто раньше не имел дела с видеокамерами, то не пугайтесь, что они несколько греются — это нормально. Но обеспечить им хорошее охлаждение никогда не помешает.<br \/>\nСтандартная распайка кабелей у подобных видеокамер:<\/p>\n<ul>\n<li>— желтый — видеосигнал;<\/li>\n<li>— красный — +12В;<\/li>\n<li>— черный — общий.<\/li>\n<\/ul>\n<p>Красный и черный подключаются, соответственно, к +12В и к Ground блока питания (например, компьютерного), а желтый и черный подключаются, соответственно, к центральному и внешнему контактам штекера.<br \/>\nВ первый раз я перепутал полярность и камера не работала, но после того, как я исправил свою ошибку, она все-таки заработала.<br \/>\nНемного поигравшись с ней, понял, что для домашнего видеонаблюдения ее более, чем достаточно. Осталось дело за «малым» — провести провода в квартире, приобрести какой-нибудь PCIe ТВ-тюнер, подключить ее к домашнему серверу и пустить трансляцию в локальную сеть. Благо что в Linux есть консольная версия VLC, которая позволяет это сделать.<\/p>\n",
            "date_published": "2017-01-11T16:18:29+07:00",
            "date_modified": "2017-01-13T10:58:02+07:00",
            "tags": [
                "avermedia",
                "avertv",
                "kpc-s190s",
                "sony",
                "studio 507",
                "vlc",
                "видео",
                "захват",
                "камера",
                "просмотр",
                "тюнер"
            ],
            "_date_published_rfc2822": "Wed, 11 Jan 2017 16:18:29 +0700",
            "_rss_guid_is_permalink": "false",
            "_rss_guid": "38",
            "_e2_data": {
                "is_favourite": false,
                "links_required": [],
                "og_images": []
            }
        }
    ],
    "_e2_version": 4134,
    "_e2_ua_string": "Aegea 11.3 (v4134)"
}