cron 작업에서 VLC 헤드리스를 실행하려고 합니다. 아이디어는 2분마다 RTSP 스트림에서 개별 이미지를 가져온 다음 (나중에 다른 스크립트에서) 원격 시스템으로 ftp를 전송하는 것입니다. 내가 사용하는 명령줄은 다음과 같습니다(명확성을 위해 줄 바꿈이 추가됨).
vlc -I dummy rtsp://somesourceaddress/
--rate=1 --vout=dummy
--video-filter=scene --start-time=0 --stop-time=1 --scene-format=png --scene-prefix=img1 --scene-path=/tmp/ --scene-replace
vlc://quit
그러나 X 세션 내의 터미널 창에서는 제대로 작동하지만 cron에서 실행하면 다음과 같은 오류 메시지가 나타납니다.
[0x81d1154] inhibit interface error: Failed to connect to the D-Bus
session daemon: Unable to autolaunch a dbus-daemon
without a $DISPLAY for X11
[0x81d1154] main interface error: no suitable interface module
[0x81d15fc] main interface error: no suitable interface module
[0x80503fc] main libvlc error: interface "globalhotkeys,none"
initialization failed
[0x81d15fc] dummy interface: using the dummy interface module...
그렇다면 $DISPLAY에 적절한 값이 없으면 어디서 적절한 값을 얻을 수 있나요? 아니면 DBUS 연결을 수동으로 생성하는 방법은 무엇입니까?
답변1
이러한 실수는 정말 치명적일까요? 즉, 여전히 원하는 출력을 얻을 수 있습니까?
- 오류
$DISPLAY
메시지는 다음만을 참조할 수 있습니다.화면 보호기 억제,추가--no-disable-screensaver
할 수 있다수정하세요(그렇지 않으면 무시해도 됩니다. 치명적이지 않습니다). VLC는 원하는 작업을 수행하기 위해 D-Bus 연결이 필요하지 않습니다. cvlc
인터페이스를 사용하지 않는 것으로 보이는 (관련된 것처럼 들리는) 을 사용해 볼 수도 있습니다 .