Llink:synology: Difference between revisions

From Lundman Wiki
mNo edit summary
mNo edit summary
 
(28 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 the CS-406 model, firmware 518, 590 and 2.0-0598. 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|startup 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.


Generally, '''x06''' refers to the older 6-series, '''x07''' to the 7-series; for instance DS107, DS207, DS207+128, CS407.  
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.
[[Media:Llink-2.0.7-synology_x06_ppc.tar.gz|llink-2.0.7-synology_x06_ppc.tar.gz]] build 830 (Mon Jun  2 11:09:44 2008) (libdvdread), added 2008-06-06
[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




'''Older binaries'''
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.  
[[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
[[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]


Patches include:


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.
* 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)


=== Installation pre-requisites ===
Telnet/SSH-patch installed on the NAS.


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


=== Toolchains ===
  http://lundman.net/ftp/dvdread/libdvdread-4.2.0.plus.tar.gz
==== 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 ====
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/
# rsync -arv $YOUR_PATH/linux-2.6.15/include/linux/ linux/


=== Additional resources and references ===
 
NSLU2-Linux.org [http://www.nslu2-linux.org/wiki/Optware/Packages?from=Unslung.Packages]<br>
=== Patch 1: ===
flipflip's Diskstation site [http://oinkzwurgl.org/diskstation]<br>
 
Synology's official forum [http://www.synology.com/enu/forum/]
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