Llink:synology: Difference between revisions

From Lundman Wiki
mNo edit summary
mNo edit summary
 
(35 intermediate revisions by the same user not shown)
Line 1: Line 1:
[[Image:synology_logo.gif|Synoogy Inc. logo]] <br>
== libdvdread.plus ==
<p>The Synology NAS can host the [[llink]] server. It has been reported successfully installed on a CS-406, firmware 518 and 590.
The CS-406 has a PPC-based cpu which indicates that all Synology DS and RS NAS in the x06-series should be able to run the compiled binary below.</p>




=== Binaries ===
'''UPDATE'''
'''Latest binary'''<br>
This contains a startup script, a Synology installation guide and a prepared llink.conf that points to the Synology default /volume1/video share. Place this binary in the /volume1 directory, untar and open the "[[Llink:synology_readme|README-synology.txt]]" file with a text editor for further assistance.
[[Media:Llink-2.0.6-syno_x06.tar.gz|llink-2.0.6-syno_x06.tar.gz]] build 750 (Fri May 16 16:17:45 2008), added 2008-05-17
[http://www.lundman.net/ftp/llink/llink-2.0.6-syno_x07.tar.gz llink-2.0.6-syno_x07.tar.gz] build 750 (Fri May 21 16:17:40 2008), added 2008-05-21


Planned: create new libudfread library instead, just for reading UDF. Take the IFO part of dvdread into libifo. Retain compatibility with libdvdnav, and libdvdcss. Also work with libbluray.


'''Older binaries'''
[[Media:Llink-2.0.4-syno_x06.tar.gz|llink-2.0.4-syno_x06.tar.gz]] build 709 (Mon Apr 21 10:06:04 2008), added 2008-04-24 
[[Media:Llink-2.0.3-syno_x06.tar.gz|llink-2.0.3-syno_x06.tar.gz]] build 709 added 2008-04-21
[[Media:Llink-2.0.2-syno_x06.tar.gz|llink-2.0.2-syno_x06.tar.gz]]
[http://www.lundman.net/ftp/llink/llink-1.9.2-synology.tar.gz llink-1.9.2-synology.tar.gz]


I have made some patches to the regular '''libdvdread''' library used by many developers. Alas, I have had no luck in getting them accepted into the upstream repository, which has forced me to maintain a second version myself.


Once you've installed the binary you have to update the llink.conf file so it points to your media files, uses the right port etc.
Patches include:


=== Installation pre-requisites ===
* Bring UDF compatibility from base 1.92, to 2.50. This adds Bluray and BD5 ISO format.
Telnet/SSH-patch installed on the NAS.
* Properly handle UDF chains, instead of assuming they are contiguous, and without gap.
* Move filesizes from 32bit to 64bit.
* Add POSIX style '''opendir(3)''', '''readdir(3)''' API to add the ability to retrieve contents of ISO files & input-devices.
* Add POSIX style '''open(3)''' of non-DVD related files. (Reading playlists, certificates etc)
* Allow API call to set IO handlers. Allowing all IO to libdvdread be developer defined. (Adding RAR support, or FTP perhaps)


If you want to autostart llink from boot, you can use this [[Llink:synology_autostart|script]].<br>
Otherwise you must enter via telnet and start manually after shutdown or restart.


=== Additional resources and references ===
'''Download pre-patched source archive from:'''
NSLU2-Linux.org [http://www.nslu2-linux.org/wiki/Optware/Packages?from=Unslung.Packages]<br>
flipflip's Diskstation site [http://oinkzwurgl.org/diskstation]<br>
Synology's official forum [http://www.synology.com/enu/forum/]


=== x07 toolchain ===
http://lundman.net/ftp/dvdread/libdvdread-4.2.0.plus.tar.gz


If you use a Synology NAS from the x07-series there is a toolchain available for compiling source at [http://www.synology.com/wiki/index.php/Mods_for_Marvell_mv5281_ARM-based_Synology_Products#Toolchain Synology.com]


Unfortunately, this toolchain is missing the Linux headers required. asm->asm-arm, linux and asm-generic. One way to solve this is go download Linux-2.6.15 linux kernel. (There is one on NMT forum, probably one in my ftp somewhere - anyway, it is GPL and available everywhere).


Issue the following commands:


# sudo bash
If you wish to patch the original release yourself, the patches are located here:
  # cd /usr/local/arm-marvell-linux-gnu/arm-marvell-linux-gnu/include/
 
  # rsync -arv $YOUR_PATH/linux-2.6.15/include/asm-arm/ asm/
 
  # rsync -arv $YOUR_PATH/linux-2.6.15/include/asm-generic/ asm-generic/
=== Patch 1: ===
  # rsync -arv $YOUR_PATH/linux-2.6.15/include/linux/ linux/
 
Handle AD chains correctly, skip gaps, and give full end blocks
 
  http://lundman.net/ftp/dvdread/patches/README.patch1
  http://lundman.net/ftp/dvdread/patches/patch1
 
 
=== Patch 2: ===
 
File sizes from 32 bit to 64 bit. Handle new FileInfoExt.  
 
http://lundman.net/ftp/dvdread/patches/README.patch2
  http://lundman.net/ftp/dvdread/patches/patch2
 
 
=== Patch 3: ===
 
Add Directory Content access, reading DVD AACS/ Directory.
 
http://lundman.net/ftp/dvdread/patches/README.patch3
http://lundman.net/ftp/dvdread/patches/patch3
 
 
=== Patch 4: ===
 
Expose dvd_input handlers as API call.
 
  http://lundman.net/ftp/dvdread/patches/README.patch4
http://lundman.net/ftp/dvdread/patches/patch4

Latest revision as of 13:12, 21 July 2012

libdvdread.plus

UPDATE

Planned: create new libudfread library instead, just for reading UDF. Take the IFO part of dvdread into libifo. Retain compatibility with libdvdnav, and libdvdcss. Also work with libbluray.


I have made some patches to the regular libdvdread library used by many developers. Alas, I have had no luck in getting them accepted into the upstream repository, which has forced me to maintain a second version myself.

Patches include:

* Bring UDF compatibility from base 1.92, to 2.50. This adds Bluray and BD5 ISO format.
* Properly handle UDF chains, instead of assuming they are contiguous, and without gap.
* Move filesizes from 32bit to 64bit.
* Add POSIX style opendir(3), readdir(3) API to add the ability to retrieve contents of ISO files & input-devices.
* Add POSIX style open(3) of non-DVD related files. (Reading playlists, certificates etc)
* Allow API call to set IO handlers. Allowing all IO to libdvdread be developer defined. (Adding RAR support, or FTP perhaps)


Download pre-patched source archive from:

http://lundman.net/ftp/dvdread/libdvdread-4.2.0.plus.tar.gz



If you wish to patch the original release yourself, the patches are located here:


Patch 1:

Handle AD chains correctly, skip gaps, and give full end blocks

http://lundman.net/ftp/dvdread/patches/README.patch1
http://lundman.net/ftp/dvdread/patches/patch1


Patch 2:

File sizes from 32 bit to 64 bit. Handle new FileInfoExt.

http://lundman.net/ftp/dvdread/patches/README.patch2
http://lundman.net/ftp/dvdread/patches/patch2


Patch 3:

Add Directory Content access, reading DVD AACS/ Directory.

http://lundman.net/ftp/dvdread/patches/README.patch3
http://lundman.net/ftp/dvdread/patches/patch3


Patch 4:

Expose dvd_input handlers as API call.

http://lundman.net/ftp/dvdread/patches/README.patch4
http://lundman.net/ftp/dvdread/patches/patch4