Find Jobs
Hire Freelancers

Port MiniDLNA to Windows / OS X

$1500-3000 USD

Închis
Data postării: peste 13 ani în urmă

$1500-3000 USD

Plata la predare
I am looking for someone to port the MiniDLNA server program to Windows and Mac OS X. MiniDLNA is a minimal, open-source DLNA server for Linux. The goal of this job is to port MiniDLNA so that it can be run and conveniently used on both OS X and a modern Windows PC (Windows XP and newer). Further the external dependencies of MiniDLNA should be reduced to simplify the build process. You can obtain MiniDLNA from here: [login to view URL] More information on DLNA is here: [login to view URL] The two targets OS X and Windows require a very different amount of work: OS X is a much closer target to Linux than Windows. And most important: A working MiniDLNA port to OS X already exists! It just resides in a separate branch and was not yet integrated into MiniDLNA's main branch. I therefore propose to tackle the project by the following four sub-steps: 1) Integrate existing OS X port into main branch The existing MiniDLNA OS X port resides in the "osx_port" development branch. You can read more about it here: [login to view URL] I'm not sure by how far the osx_port branch is out of sync with the main branch but it should be ok. Some code of the osx_port branch might be OS X specific and the build script probably incomplete. See here: [login to view URL] Goal of this first step is to merge the code of the osx_port and the main branch as well as update the build scripts so that MiniDLNA can be compiled out of the box on both Linux and OS X from one code base. 2) Windows CLI port MiniDLNA can run as a daemon under Linux or as a normal command-line application (for debug purposes). In this first step, the MiniDLNA server just needs to properly run in application-mode on Windows - not as a service. MiniDLNA's makefile and build scripts should be extended so that they also support a MinGW target and the MiniDLNA CLI application becomes compilable for win32 target using MinGW compiler. Preliminary analysis indicates that the major hurdle to achieve the initial Windows port should be the inotify syscall()'s used in the MiniDLNA source code. This functionality must be re-implemented using the Windows ReadDirectoryChangesW API. 3) Porting to Windows Service Implement the MiniDLNA server as a Windows Service: Just as MiniDLNA can be started as a deamon under Linux the windows port should also run as a windows service. In addition, there should be the possibility to check the status or start/stop/restart the MiniDLNA server either via a tray icon or shortcuts under Start->Programs menu. Because MiniDLNA is an open-source program under GPL license you could reuse code from other GPLed programs that run as Windows Service. There are several such open-source projects that seem to use code derived from sample code in the Windows Platform SDK. 4) Trim down external dependencies In the source file "metadata.c", MiniDLNA parses input media files for meta data like title, artist or playback duration. MiniDLNA requires a rather large number of external libraries for this task like libjpeg, libid3tag, libexif, libavformat and libavcodec. Especially, libavformat and libavcodec are full-featured (and large!) container muxing/demuxing and video/audio de- and encoder libraries. MiniDLNA however doesn't use any de- or encoding functionality at all. Therefore, the meta data parsing in "metadata.c" should be changed to interface with libmediainfo, which provides the necessary functionality: [login to view URL] At least the references to libavformat and libavcodec should be replaced by libmediainfo. However, libmediainfo has potential to replace also other dependencies (like libid3tag, libjpeg, libvorbis, etc.). So the goal of this step is to reduce the number of external dependencies as much as reasonably possible. Please only bid if you have read and understood the project description!
ID-ul proiectului: 942444

Despre proiect

8 propuneri
Proiect la distanță
Activ: 13 ani în urmă

Vrei să câștigi bani?

Avantajele de a licita pe platforma Freelancer

Stabilește bugetul și intervalul temporal
Îți primești plata pentru serviciile prestate
Evidențiază-ți propunerea
Te înregistrezi și licitezi gratuit pentru proiecte
8 freelanceri plasează o ofertă medie de $7.075 USD pentru proiect
Avatarul utilizatorului
Can help... I am an expert... please check my reviews, qualifications and latest projects i have worked on... please provide more details so that i can give you an accurate bid...
$9.800 USD în 120 zile
5,0 (4 recenzii)
3,6
3,6
Avatarul utilizatorului
Dear client, Thanks for your posting on www.freelancer.com. I've gone with your specification & will port the MiniDLNA server program to Windows and Mac OS X that will run conveniently when used on both OS X and a modern Windows PC Pl feel free to respond anytime with your suggestions or concerns if any Many Thanks!! Jimm
$1.800 USD în 18 zile
0,0 (0 recenzii)
0,0
0,0
Avatarul utilizatorului
Hi, i can port it wo any windows OS in the moment. Porting it to mac would be possible at a later stage. If you need my help porting the server let me know. best regards Oliver
$3.000 USD în 10 zile
0,0 (0 recenzii)
0,0
0,0
Avatarul utilizatorului
hi,please give me a chance as i m an experince
$2.500 USD în 23 zile
0,0 (0 recenzii)
0,0
0,0
Avatarul utilizatorului
German Software-Developer with 15+ years of experience living in Los Angeles - fluent in english and german. See PM for further details.
$6.000 USD în 30 zile
0,0 (0 recenzii)
0,0
0,0
Avatarul utilizatorului
You have given almost all the details required for completing the job. I can try completing this job meeting your requirements in the given time line.
$3.000 USD în 15 zile
0,0 (0 recenzii)
0,0
0,0
Avatarul utilizatorului
Hi, I've worked on MS Technologies extensively. Pl check PM for more details. Regards
$5.500 USD în 45 zile
0,0 (0 recenzii)
0,0
0,0

Despre client

Steagul GERMANY
Hof, Germany
0,0
0
Metoda de plată a fost confirmată
Membru din nov. 1, 2010

Verificarea clientului

Mulțumim! Ți-am trimis prin e-mail linkul pe care trebuie să-l accesezi pentru a revendica creditul gratuit.
A apărut o eroare la trimiterea e-mailului. Încearcă din nou.
Utilizatori înregistrați Totalul proiectelor postate
Freelancer ® is a registered Trademark of Freelancer Technology Pty Limited (ACN 142 189 759)
Copyright © 2024 Freelancer Technology Pty Limited (ACN 142 189 759)
Se încarcă previzualizarea
S-a oferit permisiunea de depistare a locației.
Ți-a expirat sesiunea pentru conectare sau te-ai deconectat. Conectează-te din nou.