Good idea, definately want to have that one ;) /jan
-----Ursprüngliche Nachricht----- Von: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] Im Auftrag von den_RDC Gesendet: Samstag, 1. November 2003 01:34 An: [EMAIL PROTECTED] Betreff: [Freevo-devel] A new approach for dvdbackup : EncodingServer As Gustavo already mentioned, i am changing course on dvdbackup and am going (or at least trying) to make a EncodingServer. This will get rid of the cwd problems, and will allow people to encode things on a different computer then the one freevo is running on (very handy if the freevo box is a "slow" box like an epia, so u can keep loud powerfull pcs away from your living room). Initially it will only encode DVD's (from drive or HD), but i'll design it so that encoding video files and audio files will be easy to add (doing it all at once would mean it would take too long for me to code). Anyway, i already made a small list of methods that the server will export and how they will be handled, so u have an idea what i am going to and maybe have some constructive comments (and design first , then code is a good principle anyway :) The code will be a bit like recordserver, and each call will fx also return a true/false return code for success/failure. initEncodeJob(source, friendlyname) this initializes the process of qeueing an encoding source can be a DVD (wich is a device or a directory) or a file, this is autodetected. Friendly name is a nice name for the encoding job to be created. This method returns a unique id identifying the encoding job, so multiple clients can use the encodingserver at once without a problem, and qeueed jobs (that aren't executed yet) can be edited or removed setOutputCodec(id, codec, tgtsize) Sets the video output codec, initially, only xvid (and probly lavcodec will be supported). Tgtsize is the targetsize of the encoding in mbytes. setProcessing(id, deint=0, aspect=0) Sets wheter u want deinterlacing. 0 being none, 1 being the default interlacer or a string specifying a certain deinterlacer. Ascpect sets aspectratio (or rather initializes scaling/cropping). Default 0 is autodetect, with a string specifying an exact ratie (probably 4:3 16:9 and 2.35:1). More filters/operations can be added later) qeueIt(id, now) Adds the job with id to the encoding qeue. If now is specified it starts directly, otherwise it will start in a timeframe specified in the recordserver config (fx at night). I also think that for direct rips from dvd, encoding should always be started now. getProgress(id) Returns 0 if the job has not been started yet, or a tuple (pass, progress, trem) if the job is being executed. pass being a name describing the current pass (fx Audio, Video pass 1 etc). Progress is a number between 0-100 describing the progress, and trem is a string with the estimated time left for completing the current pass. removeJob(id) Removes a job from the encoding qeue listJobs() Returns a list of tuples, each tuple containg id and friendly name (id, friendlyname) What do u guys think? Mvg den_RDC ------------------------------------------------------- This SF.net email is sponsored by: SF.net Giveback Program. Does SourceForge.net help you be more productive? Does it help you create better code? SHARE THE LOVE, and help us help YOU! Click Here: http://sourceforge.net/donate/ _______________________________________________ Freevo-devel mailing list [EMAIL PROTECTED] https://lists.sourceforge.net/lists/listinfo/freevo-devel ------------------------------------------------------- This SF.net email is sponsored by: SF.net Giveback Program. Does SourceForge.net help you be more productive? Does it help you create better code? SHARE THE LOVE, and help us help YOU! Click Here: http://sourceforge.net/donate/ _______________________________________________ Freevo-devel mailing list [EMAIL PROTECTED] https://lists.sourceforge.net/lists/listinfo/freevo-devel