[Haskell-cafe] Re: [Haskell] Google Summer of Code 2009

Don Stewart dons at galois.com
Wed Feb 11 18:31:51 EST 2009


Thanks for the analysis, this clarifies things greatly.
Feasibility and scope is a big part of how we determine what projects to
work on.

gtener:
> On Wed, Feb 11, 2009 at 21:00, Jamie <haskell at datakids.org> wrote:
> > Hi Gwern,
> >
> > On Wed, 11 Feb 2009, Gwern Branwen wrote:
> >
> >>> I just checked H.263 and it looks like it does not require patent
> >>> licensing
> >>> at all (it is created by ITU-T Video Coding Experts Group (VCEG)) so one
> >>> can
> >>> write H.263 in Haskell and release freely without patent licensing
> >>> issues.
> >>>
> >>> So writing H.263 in Haskell could be a good GSoC project.  One mentioned
> >>> that GHC produce slow code, well H.263 could be a good test case to
> >>> improve
> >>> GHC optimization over time.  In The Computer Language Benchmarks Game,
> >>> Haskell has some catching up to do. :)
> >>
> >> It does sound like a reasonably discrete task, and it sounds like you have
> >> a use for it; but I wonder if it's doable in a single summer?
> >
> > I have no idea, I have not dig deeper into H.263 C source code but I guess
> > it should be quite trivial as it is a black box with video frame input and
> > output with several parameters for encoding and just frame in/out for
> > decoding.
> 
> I didn't dig into the source code either, but I've just skimmed
> through Wikipedia page on that codec:
> http://en.wikipedia.org/wiki/H.263
> and in seems far from trivial. Anything that has 23 annexes is likely
> to be quite complex :-)
> Therefore I seriously doubt chances for success of such project. I did
> some checks: in libavcodec at least following files consist of
> implementation of H.263:
> 
> h263.c         h263data.h     h263dec.c      h263.h
> h263_parser.c  h263_parser.h
> 
> How many lines are there?
> 
> [Tener at laptener libavcodec]$ wc h263*
>   6295  19280 218932 h263.c
>    314   2117  10423 h263data.h
>    816   2171  26675 h263dec.c
>     46    217   2032 h263.h
>     91    282   2361 h263_parser.c
>     29    165   1047 h263_parser.h
>   7591  24232 261470 razem
> 
> In Haskell project one would also need to provide some additional
> utility code which is part of libavcodec.
> Fast grep shows the tip of an iceberg:
> 
> [Tener at laptener libavcodec]$ grep include h263* | grep -v "<"
> h263.c:#include "dsputil.h"
> h263.c:#include "avcodec.h"
> h263.c:#include "mpegvideo.h"
> h263.c:#include "h263data.h"
> h263.c:#include "mpeg4data.h"
> h263.c:#include "mathops.h"
> h263data.h:#include "mpegvideo.h"
> h263dec.c:#include "avcodec.h"
> h263dec.c:#include "dsputil.h"
> h263dec.c:#include "mpegvideo.h"
> h263dec.c:#include "h263_parser.h"
> h263dec.c:#include "mpeg4video_parser.h"
> h263dec.c:#include "msmpeg4.h"
> h263.h:#include "config.h"
> h263.h:#include "msmpeg4.h"
> h263_parser.c:#include "parser.h"
> h263_parser.h:#include "parser.h"
> 
> 
> 
> Bottom line: I don't think it is reasonable to assume anyone without
> previous knowledge of H.263 is able to fit that project into one
> summer. But! It's Haskell community, and people here see the
> impossible happen from time to time ;-)
> 
> All best
> 
> Christopher Skrzętnicki
> _______________________________________________
> Haskell-Cafe mailing list
> Haskell-Cafe at haskell.org
> http://www.haskell.org/mailman/listinfo/haskell-cafe
> 


More information about the Haskell-Cafe mailing list