There is a branch called 'rate_control' in the schroedinger git repository. Here I have been testing my additions to the schro code.
As the name of the branch suggests, my original concern was to implement a different rate control algorithm. Constant bit-rate (CBR) encoding is very important to any video codec and dirac is no different. The ability to achieve the required target while maximising the video quality is critical to the success of the codec and we reckon that there is scope for improvements in schro. While sketching out the new rate control algorithm we (Dave Schleef, Thomas Davies and I, mostly, with inputs from the rest of the team) agreed on improving other areas first. Motion estimation and mode decision have been tackled first. The dirac specs allow the codec implementer to use a set of tools to get the best compression results; schro did not use them all in an effort to achieve maximum speed. My branch takes the opposite approach; implement all options, increase the search areas and try to achieve the maximum quality before optimising the parameters for speed. Other areas that will be investigated are: - new shot change detector - new handling of the GOP structure, adaptively changing the mini-group according to the quality of motion compensation. - and of course, rate control. Note that we have already tested all the algorithms and they have already proved to be well worth having in a dirac codec implementation. My work is 'solely' to port them into Dave Schleef''s code as we see schro as the most promising code base for dirac. Kind regards Andrea Tim Borer wrote: > Dirac, like other codecs, specifies the bit stream and the decoder. > The coder implementation is deliberately left as unconstrained as > possible so that implementers can design their version with the > characteristics they require. With an encoder you are typically > trading off compression quality, computational power, ease of > implementation, number of user settings, optimisation for particular > platforms versus cross platform implementation, clarity of code, and > in hardware, ease of hardware implementation, power consumption, > hardware resources etc. > > So each encoder is different to satisfy different requirements and > constraints. > > But codecs are all too often judged on the compression quality, > irrespective of any other factors. > > The design brief for the Schroedinger implementation of Dirac was to > produce a multithreaded, multicore, optimised efficient, cross > platform design, in C, suitable for end users. It is a big and > difficult job and David Schleef has done an excellent job getting it > this far. However the Schro architecture is different from > Dirac-research and some development is required to achieve the same > compression performance as the Dirac-research encoder (developed by > the BBC). Bear in mind that the Dirac-research encoder as been under > continuous development for five or more years. That doesn't mean that > it will take anywhere like as long for Schro to catch up in > compression performance. Some of the team here at the BBC are working > on it with David Schleef. We're hoping that we can get achieve nearly > the same, or even better, compression performance, than Dirac-research > coder by the end of the year. We wish to do this whilst retaining the > computational efficiency of Schro. > > Until we have got further with the work on Schro encoder it doesn't > make sense to do comparative tests of compression performance with it. > Until that time use the Dirac-research encoder (we are hoping to do > another release in the next month). > > I'll ask Andrea, one of the engineers here at the BBC, to maybe > outline a few of the issues that he is working on to improve Schro > compression performance. > > Tim > > At 18:10 31/07/2008, Klaus Bucher wrote: >> What is missing in the Schroedinger implementation compared to the >> BBC Dirac >> codec, >> not to get the same encoding quality? >> >> Thanks >> Best regards >> Klaus >> >> ----- Original Message ----- >> From: "Tim Borer" <[EMAIL PROTECTED]> >> To: "Simon Wagner" <[EMAIL PROTECTED]>; >> <[email protected]> >> Sent: Thursday, July 24, 2008 7:48 PM >> Subject: Re: [Schrodinger-devel] GST-Plugin - min-bitrate, >> max-bitrate and >> rate-control >> >> >> > At 16:33 22/07/2008, Simon Wagner wrote: >> > >I am trying to benchmark Dirac against Theora. As source I am >> using the >> > >first few minutes of Elephants Dream. >> > > >> > >I am trying to encode the video with the help of GStreamer and >> > >libschroedinger. >> > >> > At present the encoding quality of Schroedinger is not as good as >> the BBC >> > Dirac coder - so you will get misleading comparisions. >> > >> > I would suggst either using the BBC dirac encoder or waiting a few >> months >> > until the Shro encoder catches up. >> > >> > Ultimately we want to move the Schro encoder - but it's not there yet. >> > >> > Tim Borer >> > BBC Dirac Team leader >> > >> > >> > >> > >> ------------------------------------------------------------------------- >> >> > This SF.Net email is sponsored by the Moblin Your Move Developer's >> challenge >> > Build the coolest Linux based applications with Moblin SDK & win great >> prizes >> > Grand prize is a trip for two to an Open Source event anywhere in the >> world >> > http://moblin-contest.org/redirect.php?banner_id=100&url=/ >> > _______________________________________________ >> > Schrodinger-devel mailing list >> > [email protected] >> > https://lists.sourceforge.net/lists/listinfo/schrodinger-devel > > -- Andrea Gabriellini Senior Research Engineer BBC Research & Innovation Room A210, Kingswood Warren Tadworth - Surrey KT20 6NP T: 01737 8 (39833) F: 01737 8 (39667) M: 07711 910041 (071 39833) E: [EMAIL PROTECTED] ------------------------------------------------------------------------- This SF.Net email is sponsored by the Moblin Your Move Developer's challenge Build the coolest Linux based applications with Moblin SDK & win great prizes Grand prize is a trip for two to an Open Source event anywhere in the world http://moblin-contest.org/redirect.php?banner_id=100&url=/ _______________________________________________ Schrodinger-devel mailing list [email protected] https://lists.sourceforge.net/lists/listinfo/schrodinger-devel
