Ubuntu สามารถเล่นวิดีโอผ่านงาน cron ได้หรือไม่


7

ฉันกำลังพัฒนาระบบการแสดงผลสำหรับร้านขายสี
ฉันได้ตั้งค่าคอมพิวเตอร์กับ Ubuntu เพื่อเรียกใช้วิดีโอและแสดงบนทีวีโดยใช้สคริปต์ PHP ที่ควรอัปเดตวิดีโอทุกชั่วโมงผ่านทางอินเทอร์เน็ต

สคริปต์ถูกตั้งค่าให้ทำงานผ่าน cron ดำเนินการทุก ๆ ชั่วโมง (@ ชั่วโมง) เกือบทั้งสคริปต์ทำงานได้อย่างสมบูรณ์แบบ แต่บรรทัดสุดท้ายที่เรียกใช้งาน VLC Media Player เพื่อแสดงวิดีโอล้มเหลวอย่างเงียบ ๆ หากสคริปต์รันผ่านบรรทัดคำสั่ง ( php /path/to/cron.php) VLC Media Player จะเริ่มต้นอย่างสมบูรณ์แบบ แต่เมื่อมันทำงานใน cron มันไม่ได้

ความคิดที่ฉันได้รับคืองานที่ทำงานผ่าน cron นั้นไม่มีความสามารถในการเรียกใช้แอพพลิเคชั่นด้วย GUI ที่มองเห็นได้

โปรดช่วยฉันแคร็กอันนี้!

คำตอบ:


6

ในการแสดงบางสิ่งบนเซิร์ฟเวอร์ X ไคลเอนต์ X (เช่นvlc) ต้องการตัวแปรสภาพแวดล้อมDISPLAYที่จะตั้งค่าซึ่งกำหนดที่อยู่เครือข่ายของเซิร์ฟเวอร์ X ในเกือบทุกกรณี (หนึ่งเซิร์ฟเวอร์เอ็กซ์ท้องถิ่น) :0ก็ควรจะได้รับมอบหมายให้

คุณสามารถตั้งค่าตัวแปรนั้นจากสคริปต์ของคุณหรือเพียงแค่เรียกใช้bash -c "DISPLAY=:0 vlc $vlcopts"แทน (แน่นอนแทนที่$vlcopts)


1
มันยอดเยี่ยมมาก! ฉันไม่เคยคิดถึงตัวแปร DISPLAY คุณอาจคิดว่านี่ไม่ใช่เรื่องยาก แต่คุณต้องแก้ไขปัญหาของฉัน ขอบคุณมาก!
Sune Rasmussen

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.