1

Тема: Открытие видео в VLC из программы одной кнопкой

Товарищ vakul64 задал простой вопрос, как открыть ссылку на фильм подкаста в VLC из программы?

Действительно. Так вот это обработка даст такую возможность. После загрузки её в программу, будет возможность открыть выделенную ссылку в VLC и познакомиться с видео не отходя от кассы по нажатию горячей клавши F6 или по кнопке "Открыть в VLC".

Как загрузить обработку в программу показано здесь.

Если ссылка медиа-ресурса прямая на видео файл (не торрент или поток вещания), то такие видео могут с легкостью перематываться в самом VLC.

Некоторые видео могут запускаться не сразу, а некоторые далеко не сразу (например, торрент).

UPD 2016.11.04:
- Полностью переписана обработка "Запуск_в_VLC.cfg";
- Добавлен конфиг для устройства "VLC Media Player (8k, 16_9, 7680x4320).cfg", который можно загрузить для вашего HMS сервера (в списке устройств).

Конфиг для компьютера, где запускается VLC
Для того, чтобы в VLC открывались, по-возможности, прямые ссылки на медиа-ресурсы, желательно загрузить конфиг для устройства непосредственно вашего сервера HMS (по-сути, для компьютера, где запущен сам HMS).

+ открыть спойлер

https://hms.lostcut.net/img/help/config4hms.png


После загрузки обработки в HMS, справа на панели появится кнопка "Запуск в VLC".
Нужно выделить интересующую ссылку подкаста на видео и нажать эту кнопку, чтобы запустился VLC и можно было смотреть видео прям на компьютере.

Прикреплённые файлы сообщения

VLC Media Player (8k, 16_9, 7680x4320).cfg 44.62 kb, скачивалось 261 раз, начиная с 2016.11.04

Запуск_в_VLC.cfg 5 kb, скачивалось 286 раз, начиная с 2016.11.04

Sony Bravia KDL-32CX523
Спасибо сказали: mch, d1mas2

2

Re: Открытие видео в VLC из программы одной кнопкой

Полностью переписал и обновил обработку запуска видео в VLC.
Также, добавил конфиг настроек для устройства, который нужно (хотя не обязательно) загрузить для устройства, на котором запущен сам HMS.
Т.е. это конфиг для самого компьютера, где будет запускаться VLC.
Он нужен для того, чтобы не включалось транскодирование и в VLC передавалась напрямую ссылка на медиа-ресурс.
В этом конфиге просто указано, что наш комп понимает все форматы и транскодирование включалось только если ссылка нифига не ссылка на видео (а, например, параметры транскодирования, типа -i "<blabla>").

Sony Bravia KDL-32CX523
Спасибо сказали: d1mas, Oompaloomp2

3 (2018.01.13 14:11:57 отредактировано Oompaloomp)

Re: Открытие видео в VLC из программы одной кнопкой

WendyH, спасибо за кнопку
на основе вашего сделал для запуска видео в PotPlayer (может кому пригодиться).
Для тех кто будет ставить кнопку для запуска видео в Potplayer:
в скрипте необходимо будет изменить путь к исполняемому файлу плеера (т.к. мой плеер portable из сборки тотала), у меня "potplayermini.exe"

+ открыть спойлер

https://is.gd/4Y1N1y

воткрывшемся скрипте нажать сочетание клавиш ctrl+G(перейти к строке) ввести "52", изменить путь
если исполняемый файл отличный от "potplayermini.exe"
в 55й строке заменить на свой.
https://is.gd/uj1uZo

Прикреплённые файлы сообщения

Запуск_в_POT.cfg 5.25 kb, скачивалось 151 раз, начиная с 2018.01.13

LG 42LA644V/Philips 32PFL3605/60

4

Re: Открытие видео в VLC из программы одной кнопкой

WendyH, нужна ваша помощь в обработке получаемых значений для "Item" (хочу прикрутить кнопку для закачки файлов .torrent)

как для класса "sParam" из "sLink" вернуть часть пути без "torrent:"

+ открыть спойлер

https://is.gd/6ewzwV

LG 42LA644V/Philips 32PFL3605/60

5

Re: Открытие видео в VLC из программы одной кнопкой

Oompaloomp пишет:

как для класса "sParam" из "sLink" вернуть часть пути без "torrent:"

"Класс" - это такая обстракция, из которого можно получить объект, у которого будут свойства и методы этого класса.
Начинаются они на букву T, например TStringList. Можно создать объект:
TStringList LIST = TStringList.Create();
После чего переменная LIST будет объектом, у которого можно вызывать методы, типа LIST.Sort() и проч.

А sParam и sLink - это переменные с простым типом "строка" (string).
Т.е. это не объекты, а просто строки.

Это разъяснение про понятия о классах, объектах и типах.

Я очень люблю такие вопросы, потому что это говорит только о том, что человек реально что-то делает и пытается разобраться. Поэтому с удовольствием отвечу.

Если в sLink у нас значение с ненужными участками (лишнее "torrent:"), то я бы сделал просто, вырезал бы оттуда этот участок:

sLink = ReplaceStr(sLink, 'torrent:', '');

Функция ReplaceStr - это замена подстроки в строке. Т.е. в данном случае, в переменной sLink будет найдено и заменено значение "torrent:" на пустую строку "".

Можно, конечно, эту задачу решить разнообразными способами. От проверки на наличие ненужного с последующим обрезанием строки с помощью функции Copy (получить подстроку с указанного номера символа), до использования регулярок. Но нужно всегда стараться использовать самый простой способ.

Если что-то не понятно, попробую объяснить подробней.

Sony Bravia KDL-32CX523

6

Re: Открытие видео в VLC из программы одной кнопкой

WendyH,
спасибо за краткий ликбез
обрезка

sLink = ReplaceStr(sLink, 'torrent:', '');

рабтает, но в переменной sParam, после расширения .torrent привязался не нужный мусор
от знака ? и до конца

+ открыть спойлер
"D:\ProgramData\Home Media Server\Temp\HmsTemp\HmsTemp\HmsTemp\Torrents\ca6d817860ebea54f37314db7ceea2e3.torrent?index=2&savepath=D:\ProgramData\Home Media Server\Temp\HmsTemp\HmsTemp\HmsTemp\Torrents"
LG 42LA644V/Philips 32PFL3605/60

7

Re: Открытие видео в VLC из программы одной кнопкой

Oompaloomp пишет:

от знака ? и до конца

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

1) Вариант для тех, кто в регулярных выражениях ничего не понимает:

  int nPosition = Pos('?', sParam);      // Получаем позицию знака вопроса
  sParam = Copy(sParam, 1, nPosition-1); // Получаем ту часть строки, которая ДО позиции знака вопроса


2) Вариант для тех, кто любит регулярочки:

  HmsRegExMatch('^(.*?)\\?', sParam, sParam); // Получаем значение с начала строки и до символа вопроса и кладём в ту же переменную

Тут во втором варианте, в строке шаблона регулярного выражения двойной слеш, потому что это C++Script и там слеш экранирует следующий символ. Поэтому его делать нужно двойным. В случае использования PascalScript - слеш будет одинарный.

Sony Bravia KDL-32CX523

8 (2017.01.30 19:16:47 отредактировано Oompaloomp)

Re: Открытие видео в VLC из программы одной кнопкой

Без сомнения 2й вариант самый изящный и лаконичный.
Не редко передо мной возникают вопросы редактирования файлов, которые можно было бы решить с помощью регулярных выражений.
Но так полностью разобраться в этом полезном функционале никак не удается. Поэтому ещё одна просьба, ткните, если есть куда, где можно было бы почитать/посмотреть об регулярках для таких чайников как я.

UPD

вроде начинаю понимать =)

+ открыть спойлер
\?(.*?)$

\ - захватить(скорее вырезать) от символа ? все символы (.*?) до конца строки $
результат вывода:

D:\ProgramData\Home Media Server\Temp\HmsTemp\HmsTemp\HmsTemp\Torrents\ca6d817860ebea54f37314db7ceea2e3.torrent

захваченная часть:

?index=2&savepath=D:\ProgramData\Home Media Server\Temp\HmsTemp\HmsTemp\HmsTemp\Torrents
^(.*?)\?

от начала строки ^, все символы (.*?), \ - захватить(скорее вырезать) до символа ?
результат вывода:

index=2&savepath=D:\ProgramData\Home Media Server\Temp\HmsTemp\HmsTemp\HmsTemp\Torrents

захваченная часть:

D:\ProgramData\Home Media Server\Temp\HmsTemp\HmsTemp\HmsTemp\Torrents\ca6d817860ebea54f37314db7ceea2e3.torrent?

проверял в Notepad++

UPD2
запилил в HMS заработало
WendyH, спасибо за помощь.

LG 42LA644V/Philips 32PFL3605/60

9

Re: Открытие видео в VLC из программы одной кнопкой

Доброго времени суток,
у меня такой вопрос, кнопка - "Запуск текущего выделенного элемента в VLC плеере" c torrent файлами работает на все 100, но вот с подкастами в которых стоит профиль транскода - AceStream ... и ссылками типа - "acestream://", появляются проблемы.
Плеер запускается и воспроизводит ace steam контент только после того как прибить в диспетчере задач дерево процессов РИС 3

+ Скрины

РИС 1
https://is.gd/nrqv8X

РИС 2
https://is.gd/6Lrxot

РИС 3
https://is.gd/8EuCwO

Как исправить?

LG 42LA644V/Philips 32PFL3605/60

10 (2018.10.01 20:15:21 отредактировано Oompaloomp)

Re: Открытие видео в VLC из программы одной кнопкой

Открыл для себя новое в HMS)
Из подкаста TorentRover c помощью кнопки "Запуск ACE плеере" сделанной  на основе обработки "открытие видео в VLC" можно слушать mp3 треки.
Удивительно, но воспроизведение музыки работает и на устройстве, с транскодом - Фильмы -  МУЗЫКА

LG 42LA644V/Philips 32PFL3605/60