v17 SOLVED Arch Linux Video playback not working (mbox_property:ioctl_set_msg failed: -1)
#1
EDIT: Updated log and transferred to pastebin

Hi, new forum member here. Smile

Previously in Kodi Jarvis, video playback on my Pi was working flawlessly.
I decided to try out the Krypton version, now I can't play any video at all.
A black screen just shows up then hangs, with a crash log generated.

The crash log's last line shows:
Code:
ERROR: mbox_property: ioctl_set_msg failed: -1

I tried playing with settings but still can't seem to make it work.
The video file however plays properly using omxplayer. Is there anyone
who was able to make Kodi Krypton work for the Pi?

Device: Raspberry Pi 2 B
OS Info: Arch Linux ARM

Here is the crash log from pastebin:
http://pastebin.com/cVHDnMfT
Reply
#2
Please don't post logs to the forum, use a pastebin site (eg pastebin.com) and post the link.

Also, your crashlog has no backtrace as you don't have gdb installed. Install gdb and reproduce the crash, then you'll have a more useful crashlog.
Texture Cache Maintenance Utility: Preload your texture cache for optimal UI performance. Remotely manage media libraries. Purge unused artwork to free up space. Find missing media. Configurable QA check to highlight metadata issues. Aid in diagnosis of library and cache related problems.
Reply
#3
Oops sorry about that. Updated post and included update pastebin logs.
Reply
#4
I think you might be better off asking on an Arch forum.
At a guess you have some problems with the permission of vcio/vcsm.
Code:
$ ls -l /dev/vcio /dev/vcsm
crw-rw---- 1 root video 249, 0 Oct 15 14:17 /dev/vcio
crw-rw---- 1 root video 246, 0 Oct 15 14:17 /dev/vcsm
$ groups pi
pi : pi adm dialout cdrom sudo audio video plugdev games users input netdev spi i2c gpio
Note the user running must be in the video group.
Reply
#5
yes the user is a member the correct group.
Alright I'll also try posting on the Arch forums. Thanks!
Reply
#6
I just found out, the vcio and vcsm devices do NOT have video group permissions.
Both are accessible by root only:
Code:
$ ls -l /dev/vcio /dev/vcsm
crw------- 1 root root 249, 0 Oct 10 05:25 /dev/vcio
crw------- 1 root root 246, 0 Oct 10 05:26 /dev/vcsm

So, I tried chowning them to root:video with file perm 660 (read+write for user/group).
...The video played! Big Grin

However after a reboot, the permissions reset to the previous
state above. Is there a proper way to permanently set the permissions for the device files?
I want to avoid running a script at startup just to update the permissions.
Reply
#7
(2016-10-16, 05:45)shishai Wrote: However after a reboot, the permissions reset to the previous
state above. Is there a proper way to permanently set the permissions for the device files?
I want to avoid running a script at startup just to update the permissions.

Yes, udev, as ARCH user you should know about it Wink

That's what I use on my pi3 in my OS (stolen from raspbian and/or LE) , adapt to suit your need

cat /etc/udev/rules.d/55-rpi.rules
Code:
SUBSYSTEM=="vchiq",GROUP="video",MODE="0660"
SUBSYSTEM=="bcm2708_vcio",GROUP="video",MODE="0660"
SUBSYSTEM=="vc-sm",GROUP="video",MODE="0660"
SUBSYSTEM=="input", GROUP="input", MODE="0660"
SUBSYSTEM=="i2c-dev", GROUP="i2c", MODE="0660"
SUBSYSTEM=="spidev", GROUP="spi", MODE="0660"
SUBSYSTEM=="bcm2835-gpiomem", GROUP="gpio", MODE="0660"
SUBSYSTEM=="tty", KERNEL=="tty[0-9]*", GROUP="tty", MODE="0660"

SUBSYSTEM=="gpio*", PROGRAM="/bin/sh -c '\
    chown -R root:gpio /sys/class/gpio && chmod -R 770 /sys/class/gpio;\
    chown -R root:gpio /sys/devices/virtual/gpio && chmod -R 770 /sys/devices/virtual/gpio;\
    chown -R root:gpio /sys$devpath && chmod -R 770 /sys$devpath\
'"

KERNEL=="ttyAMA[01]", PROGRAM="/bin/sh -c '\
    ALIASES=/proc/device-tree/aliases; \
    if cmp -s $ALIASES/uart0 $ALIASES/serial0; then \
        echo 0;\
    elif cmp -s $ALIASES/uart0 $ALIASES/serial1; then \
        echo 1; \
    else \
        exit 1; \
    fi\
'", SYMLINK+="serial%c"

KERNEL=="ttyS0", PROGRAM="/bin/sh -c '\
    ALIASES=/proc/device-tree/aliases; \
    if cmp -s $ALIASES/uart1 $ALIASES/serial0; then \
        echo 0; \
    elif cmp -s $ALIASES/uart1 $ALIASES/serial1; then \
        echo 1; \
    else \
        exit 1; \
    fi \
'", SYMLINK+="serial%c"
Reply
#8
Yes i forgot about udev haha. I was able to make it work by adding just the following 2 lines in my udev rules:
Code:
SUBSYSTEM=="vchiq",GROUP="video",MODE="0660"
SUBSYSTEM=="bcm2708_vcio",GROUP="video",MODE="0660"

Thanks for the help!
Reply
#9
Thanks for this thread.. it helped me solve a problem with an older DIV3 encoded file crashing. Note that I needed a different udev rule though, see: http://forum.kodi.tv/showthread.php?tid=...pid2447010
Need help programming a Streamzap remote?
Reply
#10
I didn't notice I posted the wrong string for one of the rules above. It should be "vc-sm", not "vchiq":
Code:
SUBSYSTEM=="vc-sm", MODE="0660", GROUP="video"
SUBSYSTEM=="bcm2708_vcio", MODE="0660", GROUP="video"

Thanks for noticing this! Smile
Reply

Logout Mark Read Team Forum Stats Members Help
SOLVED Arch Linux Video playback not working (mbox_property:ioctl_set_msg failed: -1)1