Llink:user guide
llink user guide
This is a wiki, if you think there is room for improvement and additions, please make your contribution!
Configuration
It all starts with a configuration before you can start the llink media server. There are two files, llink.conf
and jukebox.conf
, located in the llink directory.
Open them with a text editor and follow the instructions to make llink work to your specifications.
If you run llink from a another directory than where the llink binary is located, you must specify this when starting:
llink -f /path/to/llink.conf -w /path/to/skin/
Read the .conf files carefully and update them correctly.
When using a normal browser on a PC to use llink it is recommended to use the Moon skin. Other skins may be difficult to navigate and click on links.
A simple guide for Windows is located here: llink windows installation
It may be useful for people using other OS too.
In *nix systems you can use symlinks to help organize your media. On Windows you can use a tool called "Junctions" for NTFS drives. There is a binary with the lundftpd binary for Windows. But with multiple ROOT command support in the config files, there should be no need for symlinks.
Starting llink
Normally you launch llink by double clicking the llink.exe (Windows) or typing ./llink
in shell (*nix).
This would start llink with the configurations as specified in the llink.conf.
Turning to your TV/Projector screen, llink should be auto-discovered by the NMT and display as "llink-daemon" or similar in the media source list. Then you navigate to it and click Enter on the remote to launch.
If the "llink-daemon" doesn't show up, you may be able to launch llink via one of the available Web Services on the NMT.
Add <IP of your source>:<port, default 8001>, ex: 192.168.1.2:8001
, and then you should be able to start via the Web Service menu.
On *nix machines with multiple ethernet interfaces (gateway/router) running llink, add a route for SSDP for the internal interface to get the "llink-daemon" to show up in the media sources.
route add -net 239.0.0.0 netmask 255.0.0.0 eth1
Replace eth1 with the interface serving the NMT, you may like to add the line to "local.start" or similiar depending on distribution.
Command line
/llink - Media server engine. ./llink [-hd] [-f file] [...] options: -h : display usage help (this output) -d : stay in foreground, do not detach -v : enable verbose debug information -f <file> : set configuration file to read (default: llink.conf -w <path> : Change to directory after starting -x : Scan ROOTs for media to generate XML files for jukebox skin -X : Same as -x, but XML files are saved in redirect path -s : Syabas subtitle bug that sends filename.sub$garbage -L : disable LinkTheater fix, don't close keep-alive for errors
Verbose output options
Start with ./llink -v <Level>
Level Debug description 0 this message 1 general debug messages 2 ssdp debug 4 http requests and header replies 8 unrar messages 16 skin messages 32 root messages 60 medium verbose messages 64 extnfo messages 128 xmlscan messages 255 very verbose 256 query messages (replies to SSDP) 512 libdvdread messages 1024 visited db messages 2048 external script messages
Browsing your media
Use the color buttons on the Popcorn Hour A-100 remote control to browse through the media directories.
- Red = Parent directory. Pressing it many times will eventually take you to the media root
- Green = Refresh
- Yellow = Previous page
- Blue = Next page
- Navigation buttons 'Up / Down' = Go up and down in media list (A-100)
- Enter button = Enter directory/Play media (central round button on the A-100)
- Play button = Play all media in the current directory
- Setup button = Sort all presented media
Sorting media
Define as many sorting styles as wanted, and llink will cycle them when requested to change. The first one is the default way llink will use when started. Press the 'Setup' button on the remote control to sort, and toggle with additional key press.
llink default sort cycle is:
SORT| by name | newest first | by reverse name | oldest first
# The list flags are: # # -t Sort list in date order # -N Sort list in name order # -r Reverse sorting order # -D Sort directories before files. (Like Windows) # -s Sort list in size order # -C Case insensitive sorting. (Like Windows) # -a Show dot-files # -W Show directory content size instead of block count (expensive) # -G If found ".genre" file, display this instead of group field. # #SORT|SET="-CND"|SET="-Ct"|SET="-CNDr"|SET="-Ctr" SORT|SET="-WCND"|SET="-WCt"|SET="-WCNDr"|SET="-WCtr"
Subtitles
As specified in the configuration, you can place supported subtitle files either in the same directory as the movie, or in a separate directory just for subs, e.g. a re-direct folder which is specified in the llink configuration file. In either case, the sub file must have the exact same name as the movie file, apart from the extension.
Example: myMovie.avi
gives myMovie.srt
When using external subtitles with ISO, IMG or TS_folder, you must rename the subtitle file to the same as the movie file played, for instance an ISO called Some.Movie.iso will not play a subtitle file called Some.Movie.srt, instead you need to see what the actually played file is called inside the ISO.
Example: TS_VTS_01.vob
gives TS_VTS_01.srt
.
The subtitle format support follows what Syabas NMT supplies in their firmware. For the A-100 model look here: PopcornHour.com
At the time of writing this documentation, there is a bug in the NMT firmware that incorrectly replaces the extension with .SUB without string termination. (Garbage follows the filename.) You can use llink -s to enable a work around until Syabas can fix said bug.
Skins with cover art and media info
The file jukebox.conf holds the configuration needed to run the cover art & media info skin "Jukebox". Another jukebox style skin is "Kamishi_skies". Normally we only want to see movies from a Jukebox skin, which the jukebox.conf is optimized for.
The movie information is stored in xml files, one for each movie. You will need to download cover art and populate an xml file with movie meta information - llink can display the supported tags listed here: Llink:macros.
Creating xml's manually can be tedious work on large volume media libraries, so luckily we can use various utilities to scrape information from the imdb site.
Note: just like the default configuration file llink.conf
you have to edit the jukebox.conf
file before you start llink!
- Set the path(s) to your media ROOT's
- Set the path to the xml re-direct folder, e.g. create a directory with both read/write permissions where llink can store the additional files needed.
Scrapers
- llink should be compatible with the MyMovies application (Windows only, free for personal use), which can auto-generate xml files for your collection.
- Another tool is the open source java based imdbit, originally created by Wesley Elder.
- Yet another option is to use PiXL. Popeys's Imdb to Xml for Llink, which is a web service for manual or scripted media scraping. More detailed information and scripts can be found here.
- llink features it's own basic command line imdb scraper too. To run that type:
./llink -d -X -f jukebox.conf
or./llink -d -x -f jukebox.conf
depending upon if you use a re-direct folder or not. (Skip the ./ if you work in Windows environment). This will start a process where you can choose an imdb code listed that correspond to your media files and trigger download of album art and media information. If none is suggested just search www.imdb.com in a browser and enter the imdb code manually.
If you have movies that are not properly indexed in imdb you can always edit the xml files manually. Under normal circumstances this should hopefully be a matter of a few exceptions.
Once you are done, or if you already have your xml's and album art files in place, just start llink normally with the corresponding conf file, for instance: ./llink -f jukebox.conf
Menu
Pressing the Menu button on the remote control invokes a special llink menu (from v2.0.8).
Default contents:
- Play All: Play all media in a directory.
- Delete: Deletes file or directory. Note: recursive delete may be enabled, check your conf file!
- Unrar: Unrar's a RAR archive. May take some time if used on a small resource device such as a NAS. Note: [info]
- Mount: Mounts an iso file. This is a WISH item to be added to, ntfs-3g etc.
- Enter PIN: Sets a pin code PIN that enables the display of hidden .directories until you clear the PIN, or a 15 minute timeout. Default pin is: 1234
- Clear PIN: Remove pin access on a file or directory
- Quit llink: Tries to quit llink gracefully. Useful when running llink from a mounted share, for instance a USB stick.
You can add or remove items in the menu by editing the skin html files, for example adding custom user scripts.
Parental control with pincode
Put the movies you want to protect in .directories, eg directories where the name begins with a '.' (dot) such as .Horror
. Then add "-a" in your ROOTs list option and define the PIN number in the conf file. Windows users can use Windows style $Horror$ names as well.
Multiple instances
EXPERIMENTAL: If you want to run more than one instance of llink, for example one with jukebox skin and another with the Aquarius, make jukebox.conf and llink.conf (or whatever you name the conf files) to use distinct port numbers. The default for llink is 8001, and Jukebox 8002. Also make sure the NAME=llink-daemon
is unique in each conf file, ie call one llink-daemon, the other llink-jukebox.
With this you can start two instances, or as many as you want.
Other functionalities
Watching live TV
With some minor changes, you can watch live TV streams via llink on your NMT device. Read more here: Llink:Live_TV
Using external jukeboxes
There are attempts to run external jukeboxes such as YAMJ with llink.
http://code.google.com/p/moviejukebox/wiki/Using_YAMJ_With_LLink