You are not logged in.

#1 2013-03-20 17:22:00

rolfijn
Member
Registered: 2010-02-05
Posts: 17

[Workaround] Xfce,tumbler,dbus:Thumbnail not inferred from content

Dear list,

Since about 4 months now I've had problems with creating thumbnails for video files on a network share (samba). Image thumbnails on this share is no problem and neither is creating local video thumbs. I use Xfce (and therefore tumbler). I can play these videos without problem (tried mplayer and parole). I googled for information about this but found none about this particular issue. After it bothered me enough I decided to reinstall my laptop last week to see if it would solve the problem. The problem however is still there. I started to read about the components involved and suspected it might be a problem in dbus. I discovered and ran the wonderful "dbus-monitor" utility while browsing with thunar to my smb share. In the bus-monitor output I see the following message for each video file (and therefore each file tumbler tries to make a thumbnail for): Thumbnail could not be inferred from file contents. Googling for this I only find references to source-code commits (which is beyond my current comprehension).

  • I have set the option in thunar to always create thumbnails

  • My server is called berlin, the share rolf (as is clear from the output below)

  • In this session I access a shared folder with 12 older Ali G episodes in different video formats.

  • When I copy the files to my local drive the thumbnails are created without problem.

I have the following (relevant?) packages installed:

  1. thunar 1.6.2-1

  2. ffmpegthumbnailer

  3. dbus 1.6.8-6

  4. dbus-glib 0.100.2-1

  5. gstreamer 1.0.5-1

  6. gstreamer0.10 0.10.36-1

  7. gstreamer0.10-bad 0.10.23-3

  8. gstreamer0.10-bad-plugins 0.10.23-3

  9. gstreamer0.10-base 0.10.36-1

  10. gstreamer0.10-base-plugins 0.10.36-1

  11. gstreamer0.10-ffmpeg 0.10.13-1

  12. gstreamer0.10-good 0.10.31-1

  13. gstreamer0.10-good-plugins 0.10.31-1

  14. gstreamer0.10-python 0.10.22-1

  15. gstreamer0.10-ugly 0.10.19-5

  16. gstreamer0.10-ugly-plugins 0.10.19-5

  17. ffmpeg 1:1.1.3-1

  18. ffmpegthumbnailer 2.0.8-2

  19. gstreamer0.10-ffmpeg 0.10.13-1


Hope someone can give me some triggers as to how further investigate this problem. Does anybody else have this problem?

Regards,
Rolf Deenen

Here is the complete dbus-monitor output (I cut it of after the first 3 errors. These are repeated for all files): It seems to "see" the files, and recognize their filetype.

method call sender=:1.3 -> dest=org.xfce.Xfconf serial=80 path=/org/xfce/Xfconf; interface=org.xfce.Xfconf; member=GetProperty
   string "thunar"
   string "/misc-full-path-in-title"
error sender=:1.1 -> dest=:1.3 error_name=org.xfce.Xfconf.Error.PropertyNotFound reply_serial=80
   string "Property "/misc-full-path-in-title" does not exist on channel "thunar""
method call sender=:1.23 -> dest=:1.39 serial=48 path=/org/gtk/vfs/Daemon; interface=org.gtk.vfs.Daemon; member=GetConnection
method return sender=:1.39 -> dest=:1.23 reply_serial=48
   string "unix:abstract=/dbus-vfs-daemon/socket-jdEvu1m4"
   string ""
method call sender=:1.3 -> dest=org.freedesktop.thumbnails.Thumbnailer1 serial=81 path=/org/freedesktop/thumbnails/Thumbnailer1; interface=org.freedesktop.thumbnails.Thumbnailer1; member=Queue
   array [
      string "smb://berlin/rolf/Videos/Ali%20G/da.ali.g.show.s01e01.law-ftv.mpg"
      string "smb://berlin/rolf/Videos/Ali%20G/da.ali.g.show.s01e02.war-ftv.mpg"
      string "smb://berlin/rolf/Videos/Ali%20G/da.ali.g.show.s01e03.politics-ftv.mpeg"
      string "smb://berlin/rolf/Videos/Ali%20G/da.ali.g.show.s01e04.art-ftv.mpg"
      string "smb://berlin/rolf/Videos/Ali%20G/da.ali.g.show.s01e05.science-ftv.mpg"
      string "smb://berlin/rolf/Videos/Ali%20G/da.ali.g.show.s01e06.belief-ftv.mpg"
      string "smb://berlin/rolf/Videos/Ali%20G/da.ali.g.show.s02e01.xvid-vfua.avi"
      string "smb://berlin/rolf/Videos/Ali%20G/da.ali.g.show.s02e02.xvid-vfua.avi"
      string "smb://berlin/rolf/Videos/Ali%20G/da.ali.g.show.s02e03-lol.avi"
      string "smb://berlin/rolf/Videos/Ali%20G/da.ali.g.show.s02e04-lol.avi"
      string "smb://berlin/rolf/Videos/Ali%20G/da.ali.g.show.s02e05-lol.avi"
      string "smb://berlin/rolf/Videos/Ali%20G/da.ali.g.show.s02e06-lol.avi"
   ]
   array [
      string "video/mpeg"
      string "video/mpeg"
      string "video/mpeg"
      string "video/mpeg"
      string "video/mpeg"
      string "video/mpeg"
      string "video/x-msvideo"
      string "video/x-msvideo"
      string "video/x-msvideo"
      string "video/x-msvideo"
      string "video/x-msvideo"
      string "video/x-msvideo"
   ]
   string "normal"
   string "foreground"
   uint32 0
method return sender=:1.27 -> dest=:1.3 reply_serial=81
   uint32 0
method call sender=:1.28 -> dest=org.freedesktop.DBus serial=22 path=/org/freedesktop/DBus; interface=org.freedesktop.DBus; member=StartServiceByName
   string "org.gtk.vfs.Daemon"
   uint32 0
method call sender=:1.28 -> dest=org.freedesktop.DBus serial=23 path=/org/freedesktop/DBus; interface=org.freedesktop.DBus; member=GetNameOwner
   string "org.gtk.vfs.Daemon"
method call sender=:1.28 -> dest=:1.7 serial=24 path=/org/gtk/vfs/mounttracker; interface=org.gtk.vfs.MountTracker; member=LookupMount
   struct {
      array of bytes [
         2f 56 69 64 65 6f 73 2f 41 6c 69 20 47 2f 64 61 2e 61 6c 69 2e 67 2e
         73 68 6f 77 2e 73 30 31 65 30 31 2e 6c 61 77 2d 66 74 76 2e 6d 70 67
         00
      ]
      array [
         dict entry(
            string "server"
            variant                array of bytes [
                  62 65 72 6c 69 6e 00
               ]
         )
         dict entry(
            string "share"
            variant                array of bytes [
                  72 6f 6c 66 00
               ]
         )
         dict entry(
            string "type"
            variant                array of bytes [
                  73 6d 62 2d 73 68 61 72 65 00
               ]
         )
      ]
   }
signal sender=:1.27 -> dest=:1.3 serial=7 path=/org/freedesktop/thumbnails/Thumbnailer1; interface=org.freedesktop.thumbnails.Thumbnailer1; member=Started
   uint32 0
method return sender=:1.7 -> dest=:1.28 reply_serial=24
   struct {
      string ":1.39"
      object path "/org/gtk/vfs/mount/1"
      string "rolf on berlin"
      string "smb-share:server=berlin,share=rolf"
      string ""
      string ". GThemedIcon folder-remote folder"
      string ". GThemedIcon folder-remote-symbolic folder-remote folder"
      string ""
      boolean true
      array of bytes [
         2f 72 75 6e 2f 75 73 65 72 2f 31 30 30 30 2f 67 76 66 73 2f 73 6d 62
         2d 73 68 61 72 65 3a 73 65 72 76 65 72 3d 62 65 72 6c 69 6e 2c 73 68
         61 72 65 3d 72 6f 6c 66 00
      ]
      struct {
         array of bytes [
            2f 00
         ]
         array [
            dict entry(
               string "server"
               variant                   array of bytes [
                     62 65 72 6c 69 6e 00
                  ]
            )
            dict entry(
               string "share"
               variant                   array of bytes [
                     72 6f 6c 66 00
                  ]
            )
            dict entry(
               string "type"
               variant                   array of bytes [
                     73 6d 62 2d 73 68 61 72 65 00
                  ]
            )
         ]
      }
      array of bytes [
         2f 00
      ]
   }
method call sender=:1.28 -> dest=:1.39 serial=25 path=/org/gtk/vfs/Daemon; interface=org.gtk.vfs.Daemon; member=GetConnection
method return sender=:1.39 -> dest=:1.28 reply_serial=25
   string "unix:abstract=/dbus-vfs-daemon/socket-qhfklRIj"
   string ""
signal sender=:1.27 -> dest=:1.3 serial=8 path=/org/freedesktop/thumbnails/Thumbnailer1; interface=org.freedesktop.thumbnails.Thumbnailer1; member=Error
   uint32 0
   array [
      string "smb://berlin/rolf/Videos/Ali%20G/da.ali.g.show.s01e01.law-ftv.mpg"
   ]
   int32 2
   string "Thumbnail could not be inferred from file contents"
signal sender=:1.27 -> dest=:1.3 serial=9 path=/org/freedesktop/thumbnails/Thumbnailer1; interface=org.freedesktop.thumbnails.Thumbnailer1; member=Error
   uint32 0
   array [
      string "smb://berlin/rolf/Videos/Ali%20G/da.ali.g.show.s01e02.war-ftv.mpg"
   ]
   int32 2
   string "Thumbnail could not be inferred from file contents"
signal sender=:1.27 -> dest=:1.3 serial=10 path=/org/freedesktop/thumbnails/Thumbnailer1; interface=org.freedesktop.thumbnails.Thumbnailer1; member=Error
   uint32 0
   array [
      string "smb://berlin/rolf/Videos/Ali%20G/da.ali.g.show.s01e03.politics-ftv.mpeg"
   ]
   int32 2
   string "Thumbnail could not be inferred from file contents"
...etc

Last edited by rolfijn (2013-05-04 08:52:06)

Offline

#2 2013-05-04 08:50:40

rolfijn
Member
Registered: 2010-02-05
Posts: 17

Re: [Workaround] Xfce,tumbler,dbus:Thumbnail not inferred from content

Haven't been able to figure this one out, and it still doesn't work. Also not now that I have moved to gnome (3.8). As a workaround, which for me works very well, I now define the shares in /etc/fstab and mount them in my user sessions. This is what I did. Just wrinting this down in case someone stummbles on this thread:

Define the shares in /etc/fstab (as root):

//server/share1a /home/user1/Share1a cifs users,noauto,credentials=/home/user1/Share1a/.share.creds,workgroup=WORKGROUP,ip=1.2.3.4 0 0
//server/share1b /home/user1/Share1b cifs users,noauto,credentials=/home/user1/Share1b/.share.creds,workgroup=WORKGROUP,ip=1.2.3.4 0 0
//server/share2a /home/user2/Share2a cifs users,noauto,credentials=/home/user2/Share2a/.share.creds,workgroup=WORKGROUP,ip=1.2.3.4 0 0

It basicly allows user1 to mount the share "share1a" on folder ".share1a" in it's homedirectory and use a file (share.creds in this case) to read the credentials from. User1 can also mount the share share1b, but not share 2a. This can be done by user2.  This works fine:

  • Thunar (xfce) and nautilus (gnome) will show the share as mountable in the sidebar. Just click it to mount it.

  • They will only show the mounts that you can mount (i.e. shares that will get mounted beneath your homedirectory) and not all shares available to other users. This is relevant when you have a lot of users on your computer.

The .share.creds file looks as follows:

username=user1
password=ThePa$$word

Hope this will be of some assistence to someone having the same issues.

Rolf

PS. Beware of "rm -r *" though...
PPS Edited the post. Mounting on a hidden directory is possible, but they won't show up in your filemanager (nautilus at least) for easy mounting...

Last edited by rolfijn (2013-05-11 08:29:30)

Offline

Board footer

Powered by FluxBB