Author Topic: HowTo MovieSheets - the Way I made it work for me  (Read 75125 times)

April 15, 2010, 02:23:42 PM
Read 75125 times

Buhric

  • Hero Member

  • Offline
  • *****

  • 1050
Hi everyone,

I'll try to explain from A to Z how I managed to make my Movie Sheets work
Hopefully this will also help you
Just keep in mind that this is the way I made it work for ME... and what I found out by looking at the scripts


1. The Basics
First, you need to have v0.4.1.9-6 (or higher) of B-Rad's Firmware... Normal or EXT3 should work (dont know about Minimal)
Add the Following Line to your "S00custom-options" (or "/conf/S00user-script") file
Code: [Select]
#Enable Movie Sheets
config_tool -c SHOW_FILESIZE_SETTING=0
config_tool -c MSHEETMODE=sheet
config_tool -c VIDMSHEET=ON
config_tool -c GENMSHEET=ON
config_tool -c LISTMSHEET=ON

If you are using a Firmware based on original firmware v1.03 and up, then add the following lines
Code: [Select]
config_tool -c WDTVEXT=OFF
config_tool -c LINKSHEETS=ON
The reason is that the WDTVExt plugin extensions is only available on v1.02.21

MSHEETMODE can be = to sheet, wall or std
This enables sheet mode (Folder icons on the bottom), Wall mode (icons on the left of screen) or standard mode

You can also telnet into your WDTVLive (use putty or the WebFrontEnd) and run each line once
These commands do not need to be run every time the WDTVLive is rebooted.
They just set some parameters in your "/conf/config" file

2. My understanding of the way it all works
The way B-Rad's firmware populates the sheets is, when you plug a USB drive or when a drive is mounted,
either using xmount (/conf/net.mounts) or access a Shared drive via "Network Shares", a script is run.
That script name is "linksheets" located in the "/usr/bin/" folder of the WDTVLive.
The script scans the new drive for any movie sheets. It basically looks for a certain name and then
depending on the naming convention used it will symlink the sheet file to the appropriate movie or folder.
Threes quite a few naming conventions for the sheets, but I believe the one I used is the most simple one.
Just add "_sheet.jpg" to the end of a filename.

The place where "linksheets" stores the symlink information is in the "/msheets/" folder in the WDTVLive.
This makes a great place to troubleshoot why your sheets are not displayed. Just look inside that folder
(either using telnet or, preferably, a FTP software like Filezilla or CuteFTP) and search for the object
you wanted the sheet to appear for...
Look for " Batman.avi" in the "/msheets/" folder, and see to what file it linked to.. it should give you the
full path to the file.

If you want, you can specify an other folder for where the sheets symlink gets stored
just add the following line in the "S00custom-options" (or "/conf/S00user-script") file
Code: [Select]
config_tool -c MSHEETDIR=/fullpathtodirfullpathtodir is the full path to the folder you want the to store the sheets that gets scanned
you line should look something like this:
Code: [Select]
config_tool -c MSHEETDIR=/tmp/media/usb/USB1/3484-3301/MSheetsThis will not work with FAT32. I only tested with EXT3 partitions
If you are using the EXT3 boot version of B-Rad's firmware, you could create a new folder in it
and specify it as a destination folder for MSHEETDIR.

3. Creating you Movie Sheets
Contrary to popular knowledge, file / folder structure does not matter when creating Sheets.
the actual File Name used DOES.

The easiest way to name your sheets is append "_sheet.jpg" at the end of the file name you want a sheet for
i.e.:
you have a folder named "Avatar" and you want a sheet to show up when you have hovering on the folder
then create a Sheet and name it "Avatar_sheet.jpg" and you can save that file inside the "Avatar" folder for now

If you want to create a sheet of a movie file named "Batman.avi" then create a sheet
named "Batman.avi_sheet.jpg" and save it at the same folder level has the Movie file is.

There's quite a few tools out there to help you create a sheet. I personally use ThumbGen's application
combined with Dribbller1's templates.
There seams to be an issue with sheets displaying when file size is over a certain limit.
I'm trying to find the maximum file size that it will work with. Personally I limit my sheets to 300KB
and they seam to work fine.


4. Getting the Sheet to actually show up
This is the trickiest part. It depends on how you actually access your Movies
the most 3 common ways are: via a USB drive, using the "Network Shares" menu, or by xmounting a shared drive.

The easiest way is when movies are in a USB drive. When you plug in the drive the "linksheets" script is run on
the drive, and it will symlink the sheets found with the movies if you used the "filename.ext" + "_sheet.jpg"
naming format, your sheets can be stored anywhere on the USB drive.

If you are accessing your movie by xmounting a shared folder, in other words, you have a "net.mounts" file
then making the sheets work is also fairly simple. Again the "linksheets" script is ran automaticaly when
a xmount is performed from boot up (when it processes the "net.mounts" file).
So once again, just have the sheets anywhere in the xmounted shared drive.

If you access your Movies using the "Network Shares" menu of the WDTVLive, there’s 2 thinks you need to know.
First, there’s a bug in the original firmware; when you access Video from "Network Shares" all the
media in the folder is shown... This means that if you have JPG and AVI in the same folder,
The WDTVLive will list everything. starting with the JPG and then the AVI... so it will look like the Sheets
are not working becasue you are actualy over a .JPG file, and not the Actual movie file.
So make sure to scroll all the way to the end and sure you have the .AVI selected

Second, the "linksheets" script is supposed to run when you first access a "Network Shares", but this is not always true,
I found that out the hard way. The best way to see if it worked, is by FTPing to your WDTVLive and look inside
the "/msheets/" folder. If there’s any file/folder there, then the drive was scanned, and the Sheets should work.
But if it still does not, do the Following:

From the WDTVLive Menu, play a movie in your "Network Shares", let it run a few sec, then stop it
exit all the way back to the initial menu of the WDTVLive
Again from FTP, delete EVERYTHING in the "/msheets/" folder.
Telnet to the WDTVLive, using putty or the WebFrontEnd telnet utility
and run the following command
Code: [Select]
linksheets <FullPathToSheets> 5<FullPathToSheets> should be something like  "/tmp/ComputerName/SharedFolder"
ComputerName name of the device that is sharing the folder, has it shows in the WDTVLive menu after selecting "Network Shares"
SharedFolder name of the shared folder, has it shows in the WDTVLive menu after selecting "Network Shares"

While the "linksheets" script is running, the power led will blink... wait until it stops before continuing
From FTP, confirm that files where symlinked by looking in the "/msheets/" folder, if they are there,
Try and access the "Network Shares" again and select a file was showing in the "/msheets/" folder

To avoid all this messing around in Telnet and FTP, an other way to make Sheets work on a "Network Shares"
is to xmount that share using "net.mounts" even if you do not have a USB connected to the WDTVLive it will still
mount that drive and run the "linksheets" script on it. The only difference is that you will not be accessing the
mounted drive, but the "Network Shares" and since the sheets are symlinked they will still show up.

I also found 1 thing (possible bug ?) if you xmount a shared folder, without specifying a username / password
and then try to access that Shared drive through "Network Shares" the mounted drive will get unmounted.
So make sure you specify a username / password when you xmount the drive in "net.mounts"

5. XMOUNT
In case you want to use the xmount way of doing this, here’s how to proceed.
With NotePad, create a file named "net.mounts" on your computer. Make sure the name is
"net.mounts" and NOT "net.mounts.txt"
put the following line in it:
Code: [Select]
xmount "//IPOfComputer/SharedFolder" "ShareName" cifs "user=username,pass=password"IPOfComputer is the IP address of the Computer that is sharing the Movie Folder
SharedFolder is the Name of the shared Folder on the computer
ShareName is the Name that you want this share to show up as, once mounted
username only used if your Shared folder required authentication, i.e.: can be your Windows UserNAme
password only used if your Shared folder required authentication, i.e.: can be your Windows password

So the complete line could look something like this:
Code: [Select]
xmount "//192.168.1.2/Movies" "Movies From My Computer" cifs "user=Buhric,pass=MyPassword"Add 1 line per Shared drive you want, and the ShareName must be unique
For more option with "net.mounts" please take a look at the file that is included with B-Rad's firmware

Then you will need to save this file in the Root of a USB device that will be plugged in the WDTVLive, and then Power cycle the WDTVLive
so that the shares can be xmounted.
Alternatively, you can save the "net.mounts" file into the "/conf/" folder of the WDTVLive
So that it gets executed at every boot, even without any USB attached


6. Some Interesting stuff
Did you know that on B-Rad's Firmware v0.4.1.9-6 you don't need to have the sheets in the same folder has
the Movie files. Because of the way "linksheets" works, and if you used the
"filename.ext" + "_sheet.jpg" naming convention, then You can Regroup
all the sheets on the same Folder, and make sure that this folder is on the shared folder
Using that naming convention for the sheets cause the following behaviour in "linksheets":
For every file named "*_sheet.jpg[/color" it will symlink it with:
1. the folder it was found in
2. the the name of the file without the "_sheet.jpg"
i.e.:
Code: [Select]
.\Movies\Avatar\Avatar_sheet.jpg  --> Will be simlinked with
1. Folder Avatar
2. Avatar (folder again)
.\Movies\Batman\Batman.avi_sheet.jpg  --> will be simlinked with
1. Folder Batman
2. file Batman.avi
And if a symlink already exist, it get overwrited by the new one
I don't know if this was a wanted behaviour or not, but this causes that If you only have a Movie sheet, (no specific sheet for folder)
it gets linked with the Folder and the Avi

Also when using xmount and a USB plugged, you can have a sheet for the mounted drive, just give the sheet the following name "ShareName_sheet.jpg"
and put it with the other sheets or on the root of your shared folder.
Same thing with "Network Shares", just create a sheet with the same name as your Shared folder and append "_sheet.jpg" to it.

Possible bug with "linksheets": if you use the "filename.ext" + "_sheet.jpg" naming convention
and create the folder sheet gets scanned before the movie sheet, meaning if sorted alphabetically,
the folder sheet comes up before the movie sheet, the movie sheet symlink will overwrite the folder symlink...
i.e.:
Code: [Select]
-1.Avatar  <-- folder
--1.Avatar_sheet.jpg
--folder.jpg
--Avatar.avi
--Avatar.avi_sheet
--Avatar.jpg

Color Code:
Folders or/and Files Located in the WDTVLive
Script File in the WDTVLive
Menu Item from WDTVLive Interface
Folder or/and Files located on computer

Hope this helps!
« Last Edit: July 20, 2011, 03:35:20 PM by Buhric »

April 15, 2010, 10:26:34 PM
Reply #1

thumbgen

  • Hero Member

  • Offline
  • *****

  • 1544
    • ThumbGen
This should be made sticky!  Thanks for the effort ;)
Get ThumbGen!
If you like ThumbGen then buy me a coffee

April 16, 2010, 07:59:49 AM
Reply #2

pash

  • Newbie

  • Offline
  • *

  • 5
linksheet ist NOT located in "/usr/lib" it's in "/usr/bin" !!

April 16, 2010, 05:55:02 PM
Reply #3

rfracing

  • Newbie

  • Offline
  • *

  • 1
Thank you, finally understand it enough to get it working!!  Thanks ;D

April 16, 2010, 06:04:02 PM
Reply #4

Buhric

  • Hero Member

  • Offline
  • *****

  • 1050
linksheet ist NOT located in "/usr/lib" it's in "/usr/bin" !!

My Bad!... I actualy wrote this by memory.... did it with on my free time at work...
Corrected

If there any other errors, let me know... I also will be revising it...

April 16, 2010, 06:36:16 PM
Reply #5

Whoheart

  • Hero Member

  • Offline
  • *****

  • 756
Hm, so essentially it doesn't work with shares -you have to perform a lot of work arounds?
I know people who wouldn't be able to figure that out. Would have been cool it if could just have picked it up from the folder you were looking at (as it does on the USB)

Sometimes i think WD programmed in things to make shares less desirable than harddrives.
If you think there is something wrong with your WD device contact them and then act upon that: Either wait or move on - don't whine here - this is not WD's board. If you have a problem, start a thread and ask - perhaps someone knows the answer.

April 16, 2010, 07:31:14 PM
Reply #6

bobmac27

  • Newbie

  • Offline
  • *

  • 23
Hm, so essentially it doesn't work with shares -you have to perform a lot of work arounds?
I know people who wouldn't be able to figure that out. Would have been cool it if could just have picked it up from the folder you were looking at (as it does on the USB)

Sometimes i think WD programmed in things to make shares less desirable than harddrives.

Ah, but the shares are located where??  They make either way.

April 16, 2010, 08:24:16 PM
Reply #7

Buhric

  • Hero Member

  • Offline
  • *****

  • 1050
Hm, so essentially it doesn't work with shares -you have to perform a lot of work arounds?

Well it should work with shares with no messing arround in telnet or using net.mounts.
When you access a "Network Shares" the linksheets script should also run...
But I noticed that it did not run every time... dunno why.

If by chance it did run at least once. the sheets will work... but remember that because of a bug in WD original firmware.
when you access a folder it will show all the files in that folder... meaning all JPG MP3 and AVI...
creating a mess!!

Hopefully WD will fix this in a future update.
« Last Edit: April 16, 2010, 08:34:36 PM by Buhric »

April 16, 2010, 08:33:48 PM
Reply #8

Buhric

  • Hero Member

  • Offline
  • *****

  • 1050
Ah, but the shares are located where??  They make either way.

Well when you access a shared folder via "Network Shares" the WDTVLive mounts it in a folder in its "/tmp" folder
i.e.: if you have a Computer named "Buhric" sharing a folder named "Movies" and would access it once from the "Network Shares" menu
the WDTVLive would mount it as "/tmp/Buhric/Movies"

If you use a USB drive... it also gets mounted in the "/tmp" folder
it would be like this "/tmp/media/usb/USB#/IDCode/"
USB# --> can be USB1 or USB2 depending on which USB connector the drive is plugged to
IDCode --> ID code that the WDTVLive assings to USB device... not sure how to find it whitout FTP into the WDTVLive....

April 17, 2010, 07:49:49 PM
Reply #9

bobmac27

  • Newbie

  • Offline
  • *

  • 23
Hm, so essentially it doesn't work with shares -you have to perform a lot of work arounds?
I know people who wouldn't be able to figure that out. Would have been cool it if could just have picked it up from the folder you were looking at (as it does on the USB)

Sometimes i think WD programmed in things to make shares less desirable than harddrives.

Ah, but the shares are located where??  They make either way.

I was refering to the fact that the "Shares" are also located on a Hard Drive.  So WD makes out either way.

April 21, 2010, 12:29:04 AM
Reply #10

ko01u

  • Newbie

  • Offline
  • *

  • 14
My problem with the network-shares is, that if I use the xmount -method  together with an inserted USB-Stick
and want to play it from the local Disk-(Share) - It takes more than a minute till he starts playing the movie and if
I stop and want to play it again - I have to wait again...

If I use the XMount (net.mounts) without the Stick and go over the Network-Shares Menu. I have my sheets too, but here he plays always instantly !
But- I dont want to go over the Network-Shares menu because I only want to see my movie and no *.jpg thumbnail-files ..


ko01u


April 21, 2010, 12:48:57 AM
Reply #11

Buhric

  • Hero Member

  • Offline
  • *****

  • 1050
Strange....

When you access the mounted share throught the "local drive"...
Is the Power LED still blinking ?
Do you go to "all movies" or to "Folders" to select a movie ?
Does browsing the mounted share feels sluggish?
Does it take some time to update the sheets when changing folder / movies ?


April 21, 2010, 01:00:02 AM
Reply #12

ko01u

  • Newbie

  • Offline
  • *

  • 14
Quote
When you access the mounted share throught the "local drive"...
Is the Power LED still blinking ?

No - the Power LED is not blinking anymore, only during startup

Quote
Do you go to "all movies" or to "Folders" to select a movie ?

I go to "Folders"

Quote
Does browsing the mounted share feels sluggish?

No, browsing is normal

Quote
Does it take some time to update the sheets when changing folder / movies ?

No it doesnt take time

Only After pressing "Play" I can see the Wait-Cursor for about 1 Second and then after 80 Seconds the Movie starts


ko01u


April 21, 2010, 01:10:35 AM
Reply #13

Buhric

  • Hero Member

  • Offline
  • *****

  • 1050
Really strange....
you're using v0.4.1.9-6 of the firmware ?

did you setup the xmount with a username and password ?
go to settings and disable the "Auto Login to network shares" option
then when you access your movies via "Network Shares" what is the default username that shows up on the login page?
default is "anonymous" with a blank password....


April 21, 2010, 01:27:24 AM
Reply #14

ko01u

  • Newbie

  • Offline
  • *

  • 14
Yes, I use the v0.4.1.9-6

Thank you very much- you pointed me in  the right direction.
I used 2 diffferent Logins (admin and user)
In my net.mounts I had:

xmount "//192.168.200.4/Public" "NAS" cifs "user=admin,pass=xxxx"

After disabling Auto-Login, The Menu-Dialog showed me "User",
so I changed to:

xmount "//192.168.200.4/Public" "NAS" cifs "user=user,pass=yyyy"

And now the Movie starts instantly as it should ! Problem solved.

many thanks

ko01u