Llink:synology: Difference between revisions

From Lundman Wiki
mNo edit summary
mNo edit summary
 
(34 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 syno_x06 binary below.</p>




=== Binaries ===
'''UPDATE'''
'''Latest binary'''<br>
This contains a [[Llink:synology_autostart|atartup script]], a Synology installation guide ([[Llink:synology_readme|README-Synology.txt]]) 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 <code>README-synology.txt</code> file with a text editor for further assistance. Note: the startup script and the installation guide was written for the syno_x06 in mind.
[[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.


=== Toolchains ===
'''Download pre-patched source archive from:'''
==== x06 ====
For the syno_x06 compiles, the toolchain for DS1010g has been used successfully, found  at [http://www.nslu2-linux.org/wiki/DS101/HomePage NSLU2-linux.org].


==== x07 ====
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
# 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/
# rsync -arv $YOUR_PATH/linux-2.6.15/include/linux/ linux/


=== Additional resources and references ===
If you wish to patch the original release yourself, the patches are located here:
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/]
=== 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

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