Дополнительно
omxplayer не воспроизводится при загрузке
У меня есть скрипт python, который должен запустить omxplayer после завершения загрузки pi на последней версии Raspbian whit Pixel.
Я пробовал 3 различных метода из принятого ответа здесь : https://raspberrypi.stackexchange.com/questions/8734/execute-script-on-start-up
Скрипт выполняется, но видеоплеер не запускается. (На экране ничего не появляется)
Если я запускаю скрипт вручную, видео работает. Я пробовал как с включенным, так и с отключенным LXDE.
Как заставить omxplayer отображать видео при запуске после перезагрузки?
os.system(`killall omxplayer.bin`)
omxc = subprocess.Popen([`omxplayer`, `-b`, `dronesunset.mp4`])
0
3
Вы можете сделать это без необходимости создания графического интерфейса рабочего стола или входа в систему. Я использовал эту технику, чтобы RPi Zero 1.3 (без сети) загружался прямо в
omxplayer
, непрерывно зацикливая видео - в моем случае это был двухчасовой аквариум. Вот как я это сделал, используя `systemd:Создайте файл в
/etc/systemd/system/omxplayer.service
, содержащий:Включите службу с помощью
sudo systemctl enable omxplayer
.RPi должна загрузиться и запустить
omxplayer
в самом начале процесса загрузки. Консоль в этот момент бесполезна, а рабочий стол Pixel недоступен, если только вы не добавите что-нибудь для уничтоженияomxplayer
, когда это необходимо. Плеер работает в фоновом режиме, поэтому нажатие клавиши[esc]
не приведет к выходу из него. Если RPi подключен к сети, вы можете получить доступ к нему по сети обычным образом.Обратите внимание на использование параметров
omxplayer
:--vol -6000
для тишины (измените в соответствии с этим),-r
для настройки частоты кадров видео,--loop
для непрерывного цикла (с коротким пробелом между циклами, к сожалению), и-o hdmi
для принудительного вывода HDMI.Я не думаю, что вы можете воспроизводить видео, не войдя сначала в учетную запись. Однако вы можете создать новую учетную запись с автологином, чтобы сделать это:
Добавьте нового пользователя, если вы не хотите ставить автологин на свой личный аккаунт:
sudo adduser videouser
.Если вашему скрипту нужны права root: (пропустите, если вы используете свою учетную запись)
sudo visudo
Затем перейдите в самый низ и добавьте/отредактируйте: (пропустите, если вы используете свою учетную запись)
videouser ALL=(ALL) ALL
.После этого введите
nano ~/.bashrc
(может потребоваться sudo). Перейдите в самый низ. Любой правильный bash, который вы поместите сюда, будет запущен, когда учетная запись войдет в систему:omxplayer -b /absolute/path/to/video.mp4
.Что мне пришлось сделать, чтобы заставить его работать: вместо того, чтобы использовать .bashrc для запуска, я должен был:
запускать при загрузке в среду LXDE см.: https://raspberrypi.stackexchange.com/questions/8734/execute-script-on-start-up
и благодаря комментарию Shreyas, убедитесь, что путь к видео абсолютный, чтобы предотвратить путаницу в рабочей директории.