Использование VLCJ для тюнера DVB-T

В нашей стране есть DVB частота 570000000 с 3 каналами/программами; 16,17,18

Это mrl, который я использую для изменения канала для vlc через пакетный файл, заменив значение :program.

"C:\Program Files (x86)\VideoLAN\VLC\vlc.exe" dvb-t://frequency=570000000:bandwidth=8 :dvb-adapter=0 :live-caching=1000 :program=16

Но когда я использую тот же mrl через VLCJ, кажется, что :program не имеет никакого эффекта и случайным образом показывает канал без изменения кода.

import uk.co.caprica.vlcj.discovery.NativeDiscovery;
import uk.co.caprica.vlcj.player.MediaPlayer;
import uk.co.caprica.vlcj.player.MediaPlayerFactory;


public class VLCJTest {

    public static void main(String[] args) throws Exception {
        new NativeDiscovery().discover();

        final MediaPlayerFactory factory = new MediaPlayerFactory();
        final MediaPlayer mediaPlayer = factory.newHeadlessMediaPlayer();

        String str = "dvb-t://frequency=570000000 :bandwidth=8 :dvb-adapter=0 :live-caching=1000 :program=16";

        mediaPlayer.playMedia(str);

        Thread.currentThread().join();
    }
}

Может ли кто-нибудь помочь мне решить, как изменить канал / программу цифрового телевидения через VLCJ mrl?

Спасибо.


person AllBirth    schedule 07.03.2016    source источник


Ответы (1)


Строка должна быть разделена на MRL и отдельные «параметры»:

String mrl = "dvb-t://frequency=570000000";
String[] options = {
    ":bandwidth=8",
    ":dvb-adapter=0",
    ":live-caching=1000",
    ":program=16"
};
mediaPlayer.playMedia(mrl, options);
person caprica    schedule 07.03.2016