Llink: Difference between revisions

From Lundman Wiki
mNo edit summary
No edit summary
Line 1: Line 1:
== llink ==
'''llink is a media streamer''' that let's you play movies, view online trailers, browse images or play music over a network using the http protocol. It should work with most Syabas NMT hardware (NetworkedMediaTank middleware based players), such as the Popcorn Hour A- and B-series, HDX, iSTAR, Egreat a whole range of others, possibly even a couple of older ones like the LinkTheater. Some of the best reasons to run llink is that it can run on a great many platforms, including most popular NAS devices - even on the NMT player itself - and it can play media directly from RAR files.


llink is a media streamer using the HTTP protocol and should work with most Syabas middleware hardware (NetworkMediaTank; Popcorn Hour A-100, HDX900, DuneHD, ISTAR mini, Egreat EG-M31A), and possibly others (LinkTheater). Some of the best reasons to run llink is that it can run on a great many platforms, including most popular NAS devices, and can play media directly from RAR files.
 
[[Image:llink.screen2.jpg|right|thumb|100px|llink-2.2.0 aqua skin]]
[[Image:llink.screen3.jpg|right|thumb|100px|llink-1.9.9 jukebox skin]]
[[Image:llink.screen4.jpg|right|thumb|100px|llink-2.2.0 clterm skin]]
[[Image:llink.screen5.jpg|right|thumb|100px|llink-2.2.0 nmt skin]]
[[Image:Kamaishi_skies.jpg|right|thumb|100px|llink-2.2.0 kamaishi_skies skin]]
 
=== llink overview ===


* [[Llink:compatible_players|List of compatible players]]
* [[Llink:compatible_players|List of compatible players]]




* Parses vob, avi, ts, mkv, tp, mov, m2ts, evo.
* Parses various video containers: vob, avi, ts, mkv, tp, mov, m2ts, evo.
* Streams any file type the NMT player can handle: mp3, flac, jpeg, png etc.
* Can play straight '''from rar files''': no more need to unrar your media. (Comes with special unrar-3.7.8-seek.)
* SSDP / UPnP discovery support (although minimal).
* SSDP / UPnP discovery support (although minimal).
* [[Llink:skins|Skin support]]: make your own HTML templates  or choose from pre-built.  
* [[Llink:skins|Skin support]]: make your own html templates  or choose from pre-built.  
* Simple iMDb querying to look up media information for Jukebox skins.
* Simple iMDb querying to look up media information for Jukebox skins.
* Both HD and SD skins.
* Both HD and SD skins available.
* Light, tiny and clean code for Unix, OsX and Windows.
* Light, tiny and clean code for Unix, OsX and Windows.
* (external process support, like mencoder : incomplete).
* Paginating: support to send listings in pages, with tags for Next/Prev.
* Can play straight '''from RAR files''', no more need to unrar your media. Comes with special unrar-3.7.8-seek.
* Paginating. Support to send listings in pages, with tags for next/prev.
* PlayAll cgi tag, and PlayAllFrom.
* PlayAll cgi tag, and PlayAllFrom.
* External subtitles. Subtitle files can be consolidated in one directory.  
* External subtitles: subtitle files can be consolidated in one directory.  
* libdvdnav support (and libdvdcss) to play .iso and .img files (and from devices like a DVD drive)
* libdvdnav support (and libdvdcss): provides basic playback of DVD .iso and .img files and from DVD drives.
* Play movies, view images or play music.
* UDF 2.50 BD5-ISO support: provides basic playback of Bluray and HD-DVD.
* UDF 2.50 BD5-ISO support
* (External process support, like mencoder: incomplete).
 
[[Image:llink.screen2.jpg|right|thumb|100px|llink-2.2.0 aqua skin]]
[[Image:llink.screen3.jpg|right|thumb|100px|llink-1.9.9 jukebox skin]]
[[Image:llink.screen4.jpg|right|thumb|100px|llink-2.2.0 clterm skin]]
[[Image:llink.screen5.jpg|right|thumb|100px|llink-2.2.0 nmt skin]]
[[Image:Kamaishi_skies.jpg|right|thumb|100px|llink-2.2.0 kamishi_skies skin]]


<paypal></paypal>
<paypal></paypal>
Line 31: Line 32:




=== Todo ===


=== Todo ===
In no particular order:
In no particular order:
* <s>Add goto percentage bookmark which may be what WizD uses</s> Appears to only work for MPEG.
* <s>Add goto percentage bookmark which may be what WizD uses</s> Appears to only work for MPEG.
Line 43: Line 43:
* Proposed [[llink:menus|menus]].
* Proposed [[llink:menus|menus]].
* Configuration via web page.
* Configuration via web page.
* [http://www.teamavalaunch.com/ Avalaunch] style backgrounds. (fetch [http://apod.nasa.gov/apod/archivepix.html] every 30s and refresh) for mp3/playlists.
* [http://www.teamavalaunch.com/ Avalaunch] style backgrounds. (Ex. fetch picture from [http://apod.nasa.gov/apod/archivepix.html NASA] every 30s and refresh) for mp3/playlists.
* Already watched DB. <s>Stage 1: in memory,</s> Stage 2: bdb on disk. How do we visually represent it?  
* Already watched DB. <s>Stage 1: in memory,</s> Stage 2: bdb on disk. How do we visually represent it?  
* Playing mp3s, and photos from RAR files don't appear to work.
* Playing mp3s, and photos from RAR files don't appear to work.
Line 51: Line 51:
* Support [http://www.antp.be/software/moviecatalog ANT's Movie Database] .xml files.
* Support [http://www.antp.be/software/moviecatalog ANT's Movie Database] .xml files.
* Remote skin support, e.g. invoke play from an iPhone or any other web enabled device.
* Remote skin support, e.g. invoke play from an iPhone or any other web enabled device.
* Support Unix builds to handle "~/". It is expanded by getpwuid(getuid())->pw_home;


=== Additional resources  ===
=== Additional resources  ===


* [[llink:macros|Macros]] supported by the HTML engine in llink
Feel free to contribute to the wiki documentation:
* [[Llink:Windows_installation|Installation guide]] for Windows
 
* [[llink:Linux_installation|Installation guide]] for Linux
* [[Llink:user_guide|User guide]] for functions.
* [[Llink:user_guide|User guide]] for functions
* [[Llink:Windows_installation|Installation guide]] for Windows.
* [[llink:Samples|Sample Files]] for configuring llink
* [[llink:Linux_installation|Installation guide]] for Linux.
* [[llink:macros|Macros]] supported by the HTML engine in llink.
* [[llink:Samples|Sample Files]] for configuring llink Jukebox xml.
* [[llink:Compiling|Compiling]] Guide for compiling, cross-compiling and compiling on Windows.
* [[llink:Compiling|Compiling]] Guide for compiling, cross-compiling and compiling on Windows.


=== Binaries ===
Updated 20 June 2008


Platforms and Architectures:
=== Download binaries ===
 
Note: if you are in luck, a devices not listed here may share platform and architecture.
Please report your success/failure.
 
* [[llink:windows|Windows]] 2.2.0 Binaries for Windows OS.
* [[llink:osx|OsX]] 2.2.0 Binaries for Apple Macintosh Os X (Universal).
* [[llink:nmt|nmt]] 2.2.0 Binaries for the Network Media Tank. (Popcornhour A-100).
* [[llink:linux|Linux]] 2.2.0 Binaries for Linux OS, Intel (add more if you can).
* [[llink:readynas|ReadyNAS]] 2.2.0 Binaries and instructions for Infrant ReadyNAS.
* [[llink:synology|Synology]] 2.2.0 Binaries and instructions for Synology NAS.
* [[llink:asus_wl-500gl|Asus WL-500GL]] Binaries for Asus router running OpenWrt.
* [[llink:Asus WL-500g Premium|Asus WL-500g Premium]] Binaries for Asus router running Oleg's firmware.
* [[llink:landisk|landisk]] Binaries for IO-Data landisk uhdl-av, cpu-SH4.
* "[[llink on a stick]]" let's you run llink from a USB stick or external USB drive.
* [[Llink:dlink_dns323|D-Link DNS-323]] Binaries and instructions for D-Link NAS.
 
''(Compilers, you can upload new versions directly in the wiki, see Synology page as example)''


* [[llink:windows|Windows]] 2.2.0 Binaries for Windows OS
* [[llink:osx|OsX]] 2.2.0 Binaries for Apple Macintosh Os X (Universal)
* [[llink:nmt|nmt]] 2.2.0 Binaries for the Network Media Tank. (Popcornhour A-100)
* [[llink:linux|Linux]] 2.2.0 Binaries for Linux OS, Intel (add more if you can)
* [[llink:readynas|ReadyNAS]] 2.2.0 Binaries and instructions for Infrant ReadyNAS
* [[llink:synology|Synology]] 2.2.0 Binaries and instructions for Synology NAS
* [[llink:asus_wl-500gl|Asus WL-500GL]] Binaries for Asus router running OpenWrt
* [[llink:Asus WL-500g Premium|Asus WL-500g Premium]] Binaries for Asus router running Oleg's firmware
* [[llink:landisk|landisk]] Binaries for IO-Data landisk uhdl-av, cpu-SH4
* "[[llink on a stick]]" let's you run llink from a USB stick or external USB drive
* [[Llink:dlink_dns323|D-Link DNS-323]] Binaries and instructions for D-Link NAS
''(Compilers, you can upload new versions directly, see Synology page)''


=== Sources ===
=== Sources ===


* [[llink:sources|Sources]] Build your own for your platform. Includes autoconf for Unix and project files for Windows Visual Studio
* [[llink:sources|Sources]] Build your own for your platform. Includes autoconf for Unix and project files for Windows Visual Studio.
* libdvdcss sources are [http://download.videolan.org/pub/libdvdcss/1.2.10/ libdvdcss-1.2.10.tar.gz]
* libdvdcss sources are: [http://download.videolan.org/pub/libdvdcss/1.2.10/ libdvdcss-1.2.10.tar.gz]
* [[llink:mime|mime.types]] defining MIME types, generally not needed, only if you use it with a browser.
* [[llink:mime|mime.types]] defining MIME types, generally not needed, only if you use it with a browser.
* <s>libdvdnav sources are [http://www.mplayerhq.hu/MPlayer/releases/dvdnav/ libdvdnav-4.1.2] </s> Now included
* <s>libdvdnav sources are: [http://www.mplayerhq.hu/MPlayer/releases/dvdnav/ libdvdnav-4.1.2]</s> ''libdvdnav sources now included.''
* <s>libdvdread with MSVC++ Project files. [http://www.lundman.net/ftp/llink/libdvdread-0.9.7-win32.tar.gz </s>
* <s>libdvdread with MSVC++ Project files: [http://www.lundman.net/ftp/llink/libdvdread-0.9.7-win32.tar.gz</s>
* <s>libdvdread sources are [http://www.dtek.chalmers.se/groups/dvd/downloads.shtml libdvdread-0.9.7.tar.bz] Only for 2.0.8 - 2.1.1 version </s>
* <s>libdvdread sources for llink v2.0.8 to 2.1.1 only are: [http://www.dtek.chalmers.se/groups/dvd/downloads.shtml libdvdread-0.9.7.tar.bz]</s>
 


=== Known issues ===
=== Known issues ===
Line 107: Line 115:
'''llink-NMT network connections'''<br>
'''llink-NMT network connections'''<br>
Due to a limitation in the NMT device it will only open one of the connections at startup, not all. Browse to the share via the NMT GUI first, then open llink if you need to browse another share than the NMT default.
Due to a limitation in the NMT device it will only open one of the connections at startup, not all. Browse to the share via the NMT GUI first, then open llink if you need to browse another share than the NMT default.


=== Changelog ===
=== Changelog ===


 
The [[llink:changelog|llink changelog]] contains the basic release notes history.
[[llink:changelog|changelog]]

Revision as of 12:39, 29 January 2009

llink is a media streamer that let's you play movies, view online trailers, browse images or play music over a network using the http protocol. It should work with most Syabas NMT hardware (NetworkedMediaTank middleware based players), such as the Popcorn Hour A- and B-series, HDX, iSTAR, Egreat a whole range of others, possibly even a couple of older ones like the LinkTheater. Some of the best reasons to run llink is that it can run on a great many platforms, including most popular NAS devices - even on the NMT player itself - and it can play media directly from RAR files.


llink-2.2.0 aqua skin
llink-1.9.9 jukebox skin
llink-2.2.0 clterm skin
llink-2.2.0 nmt skin
llink-2.2.0 kamaishi_skies skin

llink overview


  • Parses various video containers: vob, avi, ts, mkv, tp, mov, m2ts, evo.
  • Streams any file type the NMT player can handle: mp3, flac, jpeg, png etc.
  • Can play straight from rar files: no more need to unrar your media. (Comes with special unrar-3.7.8-seek.)
  • SSDP / UPnP discovery support (although minimal).
  • Skin support: make your own html templates or choose from pre-built.
  • Simple iMDb querying to look up media information for Jukebox skins.
  • Both HD and SD skins available.
  • Light, tiny and clean code for Unix, OsX and Windows.
  • Paginating: support to send listings in pages, with tags for Next/Prev.
  • PlayAll cgi tag, and PlayAllFrom.
  • External subtitles: subtitle files can be consolidated in one directory.
  • libdvdnav support (and libdvdcss): provides basic playback of DVD .iso and .img files and from DVD drives.
  • UDF 2.50 BD5-ISO support: provides basic playback of Bluray and HD-DVD.
  • (External process support, like mencoder: incomplete).

<paypal></paypal>


Todo

In no particular order:

  • Add goto percentage bookmark which may be what WizD uses Appears to only work for MPEG.
  • Add a transparent FTP fs layer? this would be well nice if it worked with RAR.
  • Convert other playlist (.m3u .pls) formats to Syabas playlist.
  • Scraping/parsing of .NFO files (for media info).
  • mms:// protocol support (libmms looks ok, but has own select() call, needs deeper inspection).
  • Scrape/look for subtitles (ex. http://www.subtitlesource.org/title/tt0325710/).
  • Proposed menus.
  • Configuration via web page.
  • Avalaunch style backgrounds. (Ex. fetch picture from NASA every 30s and refresh) for mp3/playlists.
  • Already watched DB. Stage 1: in memory, Stage 2: bdb on disk. How do we visually represent it?
  • Playing mp3s, and photos from RAR files don't appear to work.
  • When playing music, allow to specify pictures to view.
  • Add ROOT that is just a A HREF link somewhere (to support integration of YAMJ and other jukeboxes).
  • Explore what more power we get from libdvdnav.
  • Support ANT's Movie Database .xml files.
  • Remote skin support, e.g. invoke play from an iPhone or any other web enabled device.
  • Support Unix builds to handle "~/". It is expanded by getpwuid(getuid())->pw_home;


Additional resources

Feel free to contribute to the wiki documentation:


Download binaries

Note: if you are in luck, a devices not listed here may share platform and architecture. Please report your success/failure.

  • Windows 2.2.0 Binaries for Windows OS.
  • OsX 2.2.0 Binaries for Apple Macintosh Os X (Universal).
  • nmt 2.2.0 Binaries for the Network Media Tank. (Popcornhour A-100).
  • Linux 2.2.0 Binaries for Linux OS, Intel (add more if you can).
  • ReadyNAS 2.2.0 Binaries and instructions for Infrant ReadyNAS.
  • Synology 2.2.0 Binaries and instructions for Synology NAS.
  • Asus WL-500GL Binaries for Asus router running OpenWrt.
  • Asus WL-500g Premium Binaries for Asus router running Oleg's firmware.
  • landisk Binaries for IO-Data landisk uhdl-av, cpu-SH4.
  • "llink on a stick" let's you run llink from a USB stick or external USB drive.
  • D-Link DNS-323 Binaries and instructions for D-Link NAS.

(Compilers, you can upload new versions directly in the wiki, see Synology page as example)


Sources


Known issues

Special character combinations in directory and file names
Valid from llink 2.0.3 the character combination "&d=" or "&f=" will pass on to unrar and cause problems when trying to play, but ampersands and equal signs can be used in file and directory names. In previous versions you will not be able to play movies with the ampersand (&) or the equals sign (=) characters in the directory- or file name. Note: If no RAR support is needed, it's possible to make a workaround for it.

ISO limitations
Playing ISO has currently three limitations, valid up to llink 2.1.1:

1. Does not play straight from RAR
This function is in the works but not yet supported. This feature now works in 2.1.2 and up

2. Does not autoplay ISO
You must select the individual VOB inside the ISO to play the movie, it will not start automatically when pressing Play or Enter on the ISO file.

3. Does not handle the DVD menu
It is not possible to change the default audio track or embedded subtitles or other features selected in the DVD menu. However it is possible to use external subs, using the redirect function (found in the llink.conf) by using the same name as the VOB-file, for instance TS_VIDEO_01.VOB gives TS_VIDEO_01.srt.

llink-NMT network connections
Due to a limitation in the NMT device it will only open one of the connections at startup, not all. Browse to the share via the NMT GUI first, then open llink if you need to browse another share than the NMT default.


Changelog

The llink changelog contains the basic release notes history.