[vlc-devel] GSOC, me, vlc, phonon

Casian Andrei skeletk13 at gmail.com
Tue Mar 30 12:20:54 CEST 2010


Hello VLC developers,

I am an undergraduate student, 2nd year, Bucharest Polytechnic, Computers
Faculty. I would like to code for VLC this summer of code and hopefully
become a contributor some day.

I believe that you probably don't have time to read large mails like this
one. Therefore, I will split it up in parts:

   1. Skills* *- What I know and what I don't know (programming skills)
   2. Projects - Old projects and what I am working on now
   3. GSOC - What project I would prefer to work on, and why
   4. Planning - What I have done until now, and what I am planning to do
   for the next days
   5. The essential part


1. *Skills

*This is what I know:

   - *C / C++* acceptable
   - OpenGL ~good
   - GLSL basic
   - Freepascal / Delphi good (they're easy anyway)
   - *Qt* ~intermediate (1.5 years experience)
   - Java basic (don't like it)
   - CMake basic ~ intermediate
   - git / svn basic
   - Multi-threaded programming basic ~ intermediate
   - *Linux* (general) acceptable
   - Ancient 8086 16 bit assembly basic +

This is what I don't know at all, yet:

   - Muxers / demuxers, coders / decoders
   - Automake & friends
   - Communication protocols (low level networking)
   - Lua
   - MMX/SSE instruction set with 32-bit assembly integrated with a normal C
   project
   - < 0 c# asp .net vbasic winblows m$ stuff

Currently I have a basic understanding of the vlc, phonon-vlc and phonon
code.
By next week I plan to have the git documentation read, so git ->
intermediate :)
About MMX/SSE instruction set, that should be easy to learn, because I
already understand much of the asm's secrets.
We are learning about communication protocols at school. By summer, comm
proto's -> basic ~ intermediate


2. *Projects*

   - Web Geostatstics (https://sourceforge.net/projects/webgeostatistic) a
   fancy-graphics nice-looking simple data visualization application (mainly
   for statistics of website and application usage). Struggling to release a
   decent beta during the next weeks. Screen-shots
http://yfrog.com/0uwgs9p(no shaders) and
   http://yfrog.com/10wgswindosj (fancy graphics)
   - Web-remote, easy-to-use http based remote-desktop software (dead from
   lack of funds for a good enough http server) (old propaganda video
   http://www.youtube.com/watch?v=0tPHATUkwhI)
   - CemSpace, a draft space sim (it had missiles and planets and ships in
   orbit) (dead from loss of work due to hardware fail)
   - Sglui, OpenGL based user interface (it had scroll-bars, tables, images,
   everything resizeable, including a crude designer)
   - Medieval: Society, 3D OpenGL "adventure" game, the player would go
   around killing evil acolytes and peasants in a medieval village, and it had
   a smart economy system, with trade and free prices and stuff
   - Other irrelevant projects

Currently I am working on a beta for Web Geostatistics and a XBoard chess
engine (in Java :( , for school ), and of course, I am studying the VLC code
intensively.


3. *GSOC*

The idea(s) on the wiki that I feel most comfortable with are the Phonon
ideas. These are the most compatible with my current skills. However, I am
feeling capable of tackling some of the other projects, like shaders,
assembly optimizations, toolbar mode (and others). I learn quickly.

I tried of thinking about new innovative ideas for vlc, but I came out
empty, possibly because vlc is so complete, compared to other multimedia
software. I had an idea about a fancy playlist like Amarok has, but better
wait for SQLite to appear in the scene before planning on that.

In my opinion, Phonon is the future in terms of random applications that
need to handle multimedia things, therefore phonon-vlc is a sure way of
ensuring the world domination milestone will be completed. The power of
libvlc will be spread among many other applications, and this is a good
thing. Of course one can use libvlc directly, but for many developers
copy-pasting a bit of code (10 min) for using phonon will be more tempting.

Unfortunately trying to apply for other gsoc projects has failed. I tried
kwin, but a driver bug, a kde bug and a kwin bug and the code prevented me
from even trying to debug a nasty bug that appears on my system
configuration. So I am going all-in on vlc :) . I hope this is not a bad
decision.


4. *Planning

*Unfortunately during the past few days I haven't been able to study / work
about vlc at maximum capacity, because of stupid distractions like sleeping,
cooking, browsing, starcraft, stress, friends, and other. But the next days
I am sure I will concentrate better and do more things.

Until now I have compiled vlc, phonon and phonon-vlc and established a
nightly-build thing cron script. I have made a patch that has been merged
(after some issues because of me being a noob), and that was the
qualification task. I have gained a basic understanding of all the code, and
documented on some of the things I haven't heard of before (like pimpl). I
made a superprimitive application using phonon to see how it rolls. It
doesn't even have a makefile :P . Screen-shot http://yfrog.com/j3phonontestj

(1)
The following days I will concentrate on studying the code and plan ahead
about what is needed to be done for phonon-vlc, and hopefully on Thursday I
will submit the first version of my application. Then the application will
be improved until the deadline comes. Now I found out about using libvlc
wiki, and I will play with it tomorrow.

Oh, these phonon ideas I'm talking about are the capture-API, the
improvements and the effects. Either is good for me. With luck and support,
I am optimistic that I can do them all.

Currently I do not have a clear idea of exactly what needs to be done with
phonon and phonon-vlc and possibly libvlc, I will try clarify that in the
application (more code study is required). It's better that starting to
write about things that possibly don't exist :) .

5. *Essential part

*I would like to receive a green light from you on what I am planning to do
the next days (1), or just tell me it's not good what I'm doing and I
actually need to think about this and that. I need guidance, please :)

I will be especially happy if I receive word from the VLC / Phonon
mentor(s).

Best regards,
Casian
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mailman.videolan.org/pipermail/vlc-devel/attachments/20100330/db2ad58f/attachment.html>


More information about the vlc-devel mailing list