[vlc-devel] google summer code
salavuddin ghousemohideen
ghouse1508 at gmail.com
Fri Apr 3 20:00:46 CEST 2009
Name :S.Ghouse Mohideen
Date of Birth :15th August 1989
Age :19 years
University :National Institute of Technology ,Trichy
Roll number :106106018
Year :presently 3rd year(6th sem)
Bio/overview :enclosed
*Coding Skills:*
What language are you familiar with? :C,C++
What platform are you developing on? :GNU-Linux,Windows
Show past projects and code examples of your own.
1.Solved 0-1 Knapsack problem.
Code and snippet of project: attachment
2.BrainFuck Language compiler.
Code :
#include <stdio.h>
int p, r, q;
char a[5000], f[5000], b, o, *s=f;
void interpret(char *c)
{
char *d;
r++;
while( *c ) {
switch(o=1,*c++) {
case '<': p--; break;
case '>': p++; break;
case '+': a[p]++; break;
case '-': a[p]--; break;
case '.': putchar(a[p]); fflush(stdout); break;
case ',': a[p]=getchar();fflush(stdout); break;
case '[':
for( b=1,d=c; b && *c; c++ )
b+=*c=='[', b-=*c==']';
if(!b) {
c[-1]=0;
while( a[p] )
interpret(d);
c[-1]=']';
break;
}
case ']':
puts("UNBALANCED BRACKETS"), exit(0);
case '#':
if(q>2)
printf("%2d %2d %2d %2d %2d %2d %2d %2d %2d
%2d\n%*s\n",
*a,a[1],a[2],a[3],a[4],a[5],a[6],a[7],a[8],a[9],3*p+2,"^");
break;
default: o=0;
}
if( p<0 || p>100)
puts("RANGE ERROR"), exit(0);
}
r--;
chkabort();
}
main(int argc,char *argv[])
{
FILE *z;
q=argc;
if(z=fopen(argv[1],"r")) {
while( (b=getc(z))>0 )
*s++=b;
*s=0;
interpret(f);
}
}
3.spoj rank 860
Handle ghouse1508
*VideoLAN and you *
1.Have you used VideoLAN software by the past?
I am using it in both Ubuntu and Windows
2.Why do you want to code for VideoLAN?
It’s a good media player and mainly it is used here to stream video in
a network. I want to enhance its features as a good media player and
some of its network shortcomings.
*Project*
I choose this work given in your mini project area
*Performant VLC streaming server *
There are many bottlenecks currently limiting the performance and
scalability of VLC as a streaming server:
- The I/O blocks are linear, which implies lots of avoidable memory
copying and dynamic memory allocations (particularly in the streaming
output).
- mdate() (the timestamping function) is invoked in too many places to
count them; but it is not a cheap operation on modern systems and should be
avoided on the fast path. Ideally, a single thread would only need to call
mdate() at most once per wake-up. In some case, mdate() is only used for
debugging purpose which is really inefficient.
- The HTTP/RTSP core is single-threaded. This prevents scaling to SMP
systems (which are the norm on server-side nowadays) properly. This also
implies not very scalable I/O event polling. Finally, this gets problematic
if one HTTP/RTSP client triggers a computationally intensive operation (such
as establishing a TLS context if HTTP/SSL is used).
- There are many dynamic memory allocations that could be avoided. Video
filters and codecs are very careful about this, but the stream output
plugins are not. In many case, a stack-based buffer can be used (stack
buffer, has constant time fast lock-less allocation, and needs not be freed
explicitly) instead.
- The messaging subsystems might be adding more locking (needs checking);
this should be avoided particularly if the message is anyway ignord (e.g.
debug message in non-debug mode).
I chose this project because I am a bit in networking and this problem
is pretty attractive to me.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mailman.videolan.org/pipermail/vlc-devel/attachments/20090403/0ddfde80/attachment.html>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: resume.doc
Type: application/msword
Size: 63488 bytes
Desc: not available
URL: <http://mailman.videolan.org/pipermail/vlc-devel/attachments/20090403/0ddfde80/attachment.doc>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: Combinatorial.doc
Type: application/msword
Size: 78848 bytes
Desc: not available
URL: <http://mailman.videolan.org/pipermail/vlc-devel/attachments/20090403/0ddfde80/attachment-0001.doc>
More information about the vlc-devel
mailing list