Использование vlcj с прокси

У меня есть видеофайл, который можно воспроизводить только с помощью прокси в проигрывателе vlc, когда я пытаюсь открыть его с помощью vlcj, я не могу подключиться к этому носителю - я пытался использовать параметр конфигурации http-прокси в mrl (http://path_to_media :http-proxy=proxy_address), но он у меня еще не сработало. Я также пробовал установить переменную окружения http_proxy, но у меня это тоже не сработало. Может ли кто-нибудь сказать мне, что я делаю не так? Может быть, не должно быть пробела между путем к носителю и параметром конфигурации? Может быть, параметры конфигурации не работают в Windows? Как мне получить доступ к этому видео (я знаю, что могу использовать для этого перекодирование, но это кажется излишним, я считаю, что должен быть более простой способ)


person mkubacki    schedule 12.11.2020    source источник
comment
Поделитесь, пожалуйста, журналами и кодом   -  person mfkl    schedule 13.11.2020


Ответы (2)


Как правило, если вы хотите передать такие параметры, как --http-proxy, то это способ сделать это:

MediaPlayerFactory factory = new MediaPlayerFactory("--http-proxy=<your settings");

Or:

String yourProxySettings = "http://whatever.com";
MediaPlayerFactory factory = new MediaPlayerFactory("--http-proxy", yourProxySettings);

Затем используйте этот заводской экземпляр для создания медиаплеера.

Я предполагаю, что вы используете этот механизм, а не параметры мультимедиа при вызове play (), потому что вы настраиваете сам экземпляр VLC, а не отдельные носители.

Предупреждение: в имеющихся у меня версиях VLC параметр --http-proxy не отображается как доступный параметр командной строки.

person caprica    schedule 14.11.2020

Вы можете сделать запрос на Java, получить поток и использовать https://github.com/caprica/vlcj/blob/de90d77bc288843b4d07dad84ff9d0515e906657/src/main/java/uk/co/caprica/vlcj/mediacallback/AbstractCallbackMedia.java, чтобы передать его vlcj для воспроизведения.

Редактировать:

Другое использование

--http-proxy=<string>      HTTP proxy
          HTTP proxy to be used It must be of the form
          http://[user@]myproxy.mydomain:myport/ ; if empty, the http_proxy
          environment variable will be tried.

из https://wiki.videolan.org/VLC_command-line_help/. Сначала попробуйте найти правильную команду с помощью обычного интерфейса командной строки VLC. Расскажите о своей попытке полностью здесь.

person mfkl    schedule 13.11.2020
comment
проблема в том, что я уже создал свой плеер, и я не очень хочу менять код в данный момент, поэтому я пробую альтернативные способы, которые берут на себя ответственность за проксирование потока в libVLC - person mkubacki; 13.11.2020