<div dir="ltr"><div><br><div><div><div>Name: Mayank Jha<br></div>IRC Nicks: mjnovice,mapyth on freenode.<br></div>Email: <a href="mailto:mayank25080562@gmail.com" target="_blank">mayank25080562@gmail.com</a> <br>Blog: <a href="http://mjnovice.wordpress.com/" target="_blank">http://mjnovice.wordpress.com/</a><br>
</div><div><a href="https://github.com/mjnovice/" target="_blank">Github Profile</a> <br></div><div>KDE identity Username: jhamayank<br><br><div class=""><div id=":2kq" class="" tabindex="0"><img class="" src="https://mail.google.com/mail/u/0/images/cleardot.gif"></div>
</div><b><br>Why are you the right person for this task?</b><br>I
am a keen FOSS enthusiast and a regular contributor. Am well versed
with the languages and technologies used in ktp-telepathy, and am using
it for quite some time now. I am passionate and dedicated to the work I
undertake. <br><br><b>To what extent are you familiar with the software
you're proposing to work with? Have you used it? Have you read the
source? Have you modified the source?</b><br>I am very much familiar with telepathy, and have submitted 5-6 patches. Am fairly comfortable with the codebase of different components of telepathy.<br><b><br>How many hours are you going to work on this a week? 10? 20? 30? 40?</b><br>
I
can easily manage 45 hrs a week during my summer holidays (May 19 to
July 21, 2014), and 40 hrs a week when my college reopens. <br><b><br>Do
you have other commitments that we should know about? If so, please
suggest a way to compensate if it will take much time away from Summer
of Code.</b><br>I have no other commitments during the summer holidays,
ie May 19 to July 21, 2014. After that my classes would restart, but I
can manage, and easily devote the stipulated time to my work.<b><br><br>Are
you comfortable working independently under a supervisor or mentor who
is several thousand miles away, not to mention 12 time zones away? How
will you work with your mentor to track your work? Have you worked in
this style before?</b><br>I am perfectly comfortable with working under a
mentor sitting far away. I have worked before as a student for the
Google Summer of Code 2013.<br><br><b>If your native language is not
English, are you comfortable working closely with a supervisor whose
native language is English? What is your native language, as that may
help us find a mentor who has the same native language?</b><br>My native language is Hindi, but I perfectly comfortable and fluent in English.<b><br><br>Where do you live, and can we assign a mentor who is local to you so you can meet in a coffee shop for lunch? <br>
</b><div>I live in Forbesganj, India. It would be great if you could assign a mentor who lives near to my place.<br></div><br></div><div><br></div><b>Short Description:</b><br clear="all">
<div>Currently telepathy supports 1-to-1 video call
for various services like gmail, facebook, jabber. But it lacks
multiparty conference call support, where you could have a google
hangout like group video chat. This project aims at implementing a full
fledged video conferencing feature into telepathy.<br>
<br><b>Synopsis:<br></b></div><div>Telepathy does not have conference
call support. The libraries ( telepathy-qt, telepathy-farstream ) on
which it depends however has the necessary classes and methods to allow
you to integrate the conference feature into the main UI. The main
dependency telepathy-gabble also has most of the methods in it, and
might require some minor additions/changes. So, the UI needs to be done
properly to allow user to make conference calls.<br>
<br></div><div><b>Implementation Details:<br></b></div><div>To implement the conference calls, we need to rewrite the current code in ktp-call-ui, to accomodate for conference calls. <br>
<br>For the UI, what we could do is, have the mainVideoWidget (
from the qtgstreamer library ), as the main video widget, and the
participants of the conference (including me) have their thumbnails sort
of videoWidgets at the bottom of the call window arranged, and clicking
on any of the bottom widgets would allow you to see the enlarged view
on the mainVideoWidget. Also currently there is restriction on the frame
per seconds rate of the video being streamed ie 15. We could add a
menu, which can have options to modify the frame rate. <br>
</div><div>Since all of the work is done in Qt. So we would also need to
check while doing the User Interface, that the methods used are
optimum, and consistent, keeping in mind the efficiency of the feature.<br><br>The backend work, would involve rewriting the classes and the
methods of the ktp-call-ui to accomodate for multiple video streams. At
some places the fsconference is incomplete. This would involve
rewriting, the call-handlers and the call-managers, and also the classes
defined in ktp-call-ui/src/ as well as ktp-call-ui/libktpcall . <br>
<br><br>We might also need to make changes to
telepathy-gabble the main connection manager, to add support for
conference protocol if it lacks. <div><div><img src="https://mail.google.com/mail/u/0/images/cleardot.gif"><br></div><div>Finally
the conference feature needs to be tested rigourously through the
various test cases/scenarios. This I plan to do by making video calls
with an alias account, and prefereably with a second machine. And
eventually with real people.<br>
</div></div></div><div><br><p> <b>Phases/milestones with dates:</b></p><p>------------:Community Bonding Period:----------<br></p><p><i>21 April - 28 April</i> :<i> </i>I
am going to re-discuss my implementation plans with the telepathy
community, incorporating in the suggestions recieved, and clarifying the
design issues (if any). Most importantly I would test and judge the completeness of telepathy-gabble in terms of supporting conference video calls. I would use the test app, modifying it if required, to test the conference call functionality.<br>
</p>
<p><i>29 April - May 06</i> : Getting familiar with the telepathy
codebase in particular ktp-call-ui, solve few bugs and getting
acquainted with the coding style/conventions. <br></p><p><i>May 07 - May 14</i>
: Start using the classes/methods in telepathyqt, telepathy-farstream
libraries pertaining to conference such as fsconference, make test
scripts and get to know how they work. <br>
</p><p><i>May 15 - May 18 </i>: Planning out the changes needed as a
part of the rewrite of the call interface. Making small scale
integration of the methods into ktp-call-ui call handlers.<br></p>
<p><br></p><p>------------:Coding Period Begins:-------------</p><p><i>May 19 - May 26 </i>:
Make changes to the UI to incorporate multiple videoWidgets, and make
the neccessary changes to the callwindow, call managers to allow for
display of multiple video widgets.</p>
<p><i>May 27 - June 4</i> :<i> </i>Check if the multiple videoWidgets
made, work fine without crashing. Implementing support for multiple
audiosinks, and separate volume controllers for each audio/video sink
pairs. <br>
</p>
<br></div><div><i>June 5 - June 19</i> : Integrating the multiple videoWidgets and their respective audio/video sinks with callChannels, and rigourously testing it.<br><br></div><div><i>June 20 - June 23</i> : Testing for consistency and efficiency of the Qt methods used. Check for consistency in coding style/conventions.<i><br>
<br></i></div><div><i>June 24 - June 27</i> : Discussing with the mentors about the current development, and getting their reviews/comments on the reviewboard.<br><br></div><div>:::::::::::::Mid term deliverables:::::::::::;<br>
</div><div>The UI would be capable of handing multiple audio/video streamings.<br><br></div><div><i>June 28 - July 12 :</i>
Use protocols defined in telepathy-gabble to make video calls. Adding
in the missing methods for the wrappers for fsconference and related
methods defined in telepathy-qt and telepathy-farstream. <br>
<br></div><div><i>July 13 - July 20</i> : Rigourously testing the integration of the conference gabble into ktp-call-ui .<br><br></div><div><i>July 21 - August 1</i>
: Getting reviews/feedbacks from telepathy developers and making any
changes suggested (if any).Testing the code by making actual calls with
kde developer community, on <a href="http://kdetalk.net" target="_blank">kdetalk.net</a> <br>
<br></div><div><i>August 2 - August 5</i> : Documenting the code. Testing the code by making actual calls with kde developer community, on <a href="http://kdetalk.net" target="_blank">kdetalk.net</a> <br><br></div><div>
<i>August 5 - August 22</i> : Backup time for unforeseen delays.<br>
</div><div><br></div><div>Post GSoC ----------> Maintain ktp-call-ui and telepathy in general. Become a part of the telepathy community. <br><br></div><div><b>About Me</b>:<br></div><div>I
am a FOSS enthusiast and a rabid open source contributor. I am
currently a 3rd yr undergraduate pursuing Computer Science at NIT,
Durgapur, India . I believe in the core principle of FOSS. Since I was
introduced to the warm, loving and inspiring world of Open Source I am
in love with it, as they offer great opportunity to both learn and
teach. <br>
</div><div>I was a student for the Google Summer of Code 2013, with
Ankur India and developed a font-metric tool for Indic fonts which could
differentiate fonts on the basis of their aesthetic quality and allow
font developers to contribute more and better fonts. <br>
</div><div>I have regularly contributed patches to applications like <i>Konversation, Kate, Telepathy, Trojita, Rekonq.</i> I also made a plugin for the Geany IDE, which would allow people to submit their code online at SPOJ through the editor. <br>
</div><div>I have also explored the Telepathy source code, and submitted few patches too on the same.<br>
</div><div>I am skilled in C/C++, Qt, Python, HTML, JAVA, CSS and PHP.<br>I am very passionate and done to the task I take under, and I can devote 40 hours a week, to my work. <br></div><div>After
GSoC I would continue and maintain my code and be a part of the
telepathy community, helping new people to join in the community. <br>
</div>Apart from remaining stuck to my laptop, I love to eat chocolates, listen to Michael Jackson, sleeping and eating.<span class=""></span></div></div><div class="gmail_extra"><br><br><div class="gmail_quote">On Sat, Mar 8, 2014 at 3:14 PM, Mayank Jha <span dir="ltr"><<a href="mailto:mayank25080562@gmail.com" target="_blank">mayank25080562@gmail.com</a>></span> wrote:<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr"><div dir="ltr"><div class="">
<div><div><div><div>Name: Mayank Jha<br></div>IRC Nicks: mjnovice,mapyth on freenode.<br></div>Email: <a href="mailto:mayank25080562@gmail.com" target="_blank">mayank25080562@gmail.com</a> <br>Blog: <a href="http://mjnovice.wordpress.com/" target="_blank">http://mjnovice.wordpress.com/</a><br>
</div><div><a href="https://github.com/mjnovice/" target="_blank">Github Profile</a> <br></div><div>KDE identity Username: jhamayank<br></div><div><br></div><b>Short Description:</b><br clear="all">
</div><div>Currently kde telepathy supports 1-to-1 video call
for various services like gmail, facebook, jabber. But it lacks
multiparty conference call support, where you could have a google
hangout like group video chat. This project aims at implementing a full
fledged video conferencing feature into telepathy.<br>
<br><b>Synopsis:<br></b></div></div><div>Kde telepathy does not have conference
call support. The libraries ( telepathy-qt, telepathy-farstream ) on
which it depends however has the necessary classes and methods to allow
you to integrate the conference feature into the main UI. Main dependency telepathy-farstream is feature complete. I would be implementing video conference support with connection manager telepathy-gabble which also has most of the methods in it, and
might require some minor additions/changes. So, the UI needs to be done
properly to allow user to make conference calls.<br>
<br></div><div><div class="h5"><div><div><b>Implementation Details:<br></b></div><div>To implement the conference calls, we need to rewrite the current code in ktp-call-ui, to accomodate for conference calls. <br>
<br>For the UI, what we could do is, have the mainVideoWidget (
from the qtgstreamer library ), as the main video widget, and the
participants of the conference (including me) have their thumbnails sort
of videoWidgets at the bottom of the call window arranged, and clicking
on any of the bottom widgets would allow you to see the enlarged view
on the mainVideoWidget. Also currently there is restriction on the frame
per seconds rate of the video being streamed ie 15. We could add a
menu, which can have options to modify the frame rate. <br>
</div></div><div><div>Since all of the work is done in Qt. So we would also need to
check while doing the User Interface, that the methods used are
optimum, and consistent, keeping in mind the efficiency of the feature.<br><br></div>The backend work, would involve rewriting the classes and the
methods of the ktp-call-ui to accomodate for multiple video streams. At
some places the integration of fsconference is incomplete. This would involve
rewriting, the call-handlers and the call-managers, and also the classes
defined in ktp-call-ui/src/ as well as ktp-call-ui/libktpcall . <br>
<br><br>For the backend we would need to make changes to
telepathy-gabble the main connection manager, in call-muc-channel to add
support for
conference protocol if it lacks. However since the gabble MuC is
implemented over muji, and services like facebook and gmail does not
support, video conferencing over XMPP, as it is closed, so in the end we
would be having multi-party video conference on muji based service like
jabber.<div>
<br>
<div><div><img src="https://mail.google.com/mail/u/0/images/cleardot.gif"><br>
<br></div><div>Finally
the conference feature needs to be tested rigourously through the
various test cases/scenarios. This I plan to do by making video calls
with an alias account, and prefereably with a second machine. And
eventually with real people.<br>
</div></div></div></div><div><div><br><p> <b>Phases/milestones with dates:</b></p><p>------------:Community Bonding Period:----------<br></p><p><i>21 April - 28 April</i> :<i> </i>I
am going to re-discuss my implementation plans with the telepathy
community, incorporating in the suggestions recieved, and clarifying the
design issues (if any).</p>
</div><p><i>29 April - May 06</i> : Getting familiar with the telepathy-gabble
codebase and ktp-call-ui, solve few bugs and getting
acquainted with the coding style/conventions. <br></p><p><i>May 07 - May 14</i>
: Identifying the places in telepathy-gabble which might need rewrite
to complete the support for muc. Try to use muji over jabber MUC (chat
room). Start using the classes/methods in telepathyqt,
telepathy-farstream
libraries pertaining to conference such as fsconference, make test
scripts and get to know how they work. Also try to use muji over jabber
MUC (chat room). <br>
</p><div><p><i>May 15 - May 18 </i>: Planning out the changes needed as a
part of the rewrite of the call interface. Making small scale
integration of the methods into ktp-call-ui call handlers.<br></p>
<p><br></p><p>------------:Coding Period Begins:-------------</p></div><p><i>May 19 - May 26 </i>: Add missing Muji protocol features into call-muc-channel in gabble and add respective fsconference methods in ktp-call-ui. <br>
</p>
<p><i>May 27 - June 4</i> :<i> </i> Test the protocol implemented and add in missing stuff if any. <br>
</p>
</div><div><i>June 5 - June 19</i> :Implement multiple video widgets, in
the UI. Check if the multiple videoWidgets
made, work fine without crashing. Implementing support for multiple
audiosinks, and separate volume controllers for each audio/video sink
pairs. Integrating the multiple videoWidgets and their respective
audio/video sinks with callChannels, and rigourously testing it.<br><br></div><div><div><i>June 20 - June 23</i> : Testing for consistency and efficiency of the Qt methods used. Check for consistency in coding style/conventions.<i><br>
<br></i></div><div><i>June 24 - June 27</i> : Discussing with the mentors about the current development, and getting their reviews/comments on the reviewboard.<br><br></div><div>:::::::::::::Mid term deliverables:::::::::::;<br>
</div></div><div>The UI would be capable of handing multiple audio/video streamings in the UI.<br><br></div><div><i>June 28 - July 12 : </i>Rewriting call handlers, call managers in ktp-call-ui to accomodate for the conference feature.<div>
<br>
<br><i>July 13 - July 20</i> : Rigourously testing the integration of the conference gabble into ktp-call-ui .<br></div></div><div><div><br></div><div><i>July 21 - August 1</i>
: Getting reviews/feedbacks from telepathy developers and making any
changes suggested (if any).Testing the code by making actual calls with
kde developer community, on <a href="http://kdetalk.net" target="_blank">kdetalk.net</a> <br>
<br></div><div><i>August 2 - August 5</i> : Documenting the code. Testing the code by making actual calls with kde developer community, on <a href="http://kdetalk.net" target="_blank">kdetalk.net</a> <br><br></div><div>
<i>August 5 - August 22</i> : Backup time for unforeseen delays.<br><br></div></div><div>::::::::::::::::::End term deliverables:::::::::::::::::<br></div><div>Multi-party conference call integrated support for muji based jabber in ktp.<br>
</div><div><div><br></div><div>Post GSoC ----------> Maintain ktp-call-ui and telepathy in general. Become a part of the telepathy community. <br><br></div><div><b>About Me</b>:<br></div><div>I
am a FOSS enthusiast and a rabid open source contributor. I am
currently a 3rd yr undergraduate pursuing Computer Science at NIT,
Durgapur, India . I believe in the core principle of FOSS. Since I was
introduced to the warm, loving and inspiring world of Open Source I am
in love with it, as they offer great opportunity to both learn and
teach. <br>
</div><div>I was a student for the Google Summer of Code 2013, with
Ankur India and developed a font-metric tool for Indic fonts which could
differentiate fonts on the basis of their aesthetic quality and allow
font developers to contribute more and better fonts. <br>
</div><div>I have regularly contributed patches to applications like <i>Konversation, Kate, Telepathy, Trojita, Rekonq.</i> I also made a plugin for the Geany IDE, which would allow people to submit their code online at SPOJ through the editor. <br>
</div><div>I have also explored the Telepathy source code, and submitted few patches too on the same.<br>
</div><div>I am skilled in C/C++, Qt, Python, HTML, JAVA, CSS and PHP.<br>I am very passionate and done to the task I take under, and I can devote 40 hours a week, to my work. <br></div><div>After
GSoC I would continue and maintain my code and be a part of the
telepathy community, helping new people to join in the community. <br>
</div>Apart from remaining stuck to my laptop, I love to eat chocolates, listen to Michael Jackson, sleeping and eating.</div><div><div><img src="https://mail.google.com/mail/u/0/images/cleardot.gif"></div>
</div></div></div></div><div><div class="h5"><br><div class="gmail_extra"><br><br><div class="gmail_quote">On Sat, Mar 8, 2014 at 12:38 PM, Mayank Jha <span dir="ltr"><<a href="mailto:mayank25080562@gmail.com" target="_blank">mayank25080562@gmail.com</a>></span> wrote:<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div><div><div dir="ltr"><br><br><div class="gmail_quote">---------- Forwarded message ----------<br>
From: <b class="gmail_sendername">Mayank Jha</b> <span dir="ltr"><<a href="mailto:mayank25080562@gmail.com" target="_blank">mayank25080562@gmail.com</a>></span><br>
Date: Sat, Mar 8, 2014 at 12:38 PM<br>Subject: Re: Implementing Conference Calls in Telepathy -- Draft Proposal --<br>To: KDE Telepathy <<a href="mailto:kde-telepathy@kde.org" target="_blank">kde-telepathy@kde.org</a>><br>
<br><br><div dir="ltr">
<div><div><div><div>Name: Mayank Jha<br></div>IRC Nicks: mjnovice,mapyth on freenode.<br></div>Email: <a href="mailto:mayank25080562@gmail.com" target="_blank">mayank25080562@gmail.com</a> <br>Blog: <a href="http://mjnovice.wordpress.com/" target="_blank">http://mjnovice.wordpress.com/</a><br>
</div><div><a href="https://github.com/mjnovice/" target="_blank">Github Profile</a> <br></div><div>KDE identity Username: jhamayank<br></div><div><br></div><b>Short Description:</b><br clear="all">
</div><div>Currently kde telepathy supports 1-to-1 video call
for various services like gmail, facebook, jabber. But it lacks
multiparty conference call support, where you could have a google
hangout like group video chat. This project aims at implementing a full
fledged video conferencing feature into telepathy.<br>
<br><b>Synopsis:<br></b></div><div>Kde telepathy does not have conference
call support. The libraries ( telepathy-qt, telepathy-farstream ) on
which it depends however has the necessary classes and methods to allow
you to integrate the conference feature into the main UI. The main
dependency telepathy-gabble also has most of the methods in it, and
might require some minor additions/changes. So, the UI needs to be done
properly to allow user to make conference calls.<br>
<br></div><div><div><b>Implementation Details:<br></b></div><div>To implement the conference calls, we need to rewrite the current code in ktp-call-ui, to accomodate for conference calls. <br>
<br>For the UI, what we could do is, have the mainVideoWidget (
from the qtgstreamer library ), as the main video widget, and the
participants of the conference (including me) have their thumbnails sort
of videoWidgets at the bottom of the call window arranged, and clicking
on any of the bottom widgets would allow you to see the enlarged view
on the mainVideoWidget. Also currently there is restriction on the frame
per seconds rate of the video being streamed ie 15. We could add a
menu, which can have options to modify the frame rate. <br>
</div></div><div><div>Since all of the work is done in Qt. So we would also need to
check while doing the User Interface, that the methods used are
optimum, and consistent, keeping in mind the efficiency of the feature.<br><br></div>The backend work, would involve rewriting the classes and the
methods of the ktp-call-ui to accomodate for multiple video streams. At
some places the integration of fsconference is incomplete. This would involve
rewriting, the call-handlers and the call-managers, and also the classes
defined in ktp-call-ui/src/ as well as ktp-call-ui/libktpcall . <br>
<br><br>For the backend we would need to make changes to
telepathy-gabble the main connection manager, in call-muc-channel to add support for
conference protocol if it lacks. However since the gabble MuC is implemented over muji, and services like facebook and gmail does not support, video conferencing over XMPP, as it is closed, so in the end we would be having multi-party video conference on muji based service like jabber.<div>
<br>
<div><div><img src="https://mail.google.com/mail/u/0/images/cleardot.gif"><br>
<br></div><div>Finally
the conference feature needs to be tested rigourously through the
various test cases/scenarios. This I plan to do by making video calls
with an alias account, and prefereably with a second machine. And
eventually with real people.<br>
</div></div></div></div><div><div><br><p> <b>Phases/milestones with dates:</b></p><p>------------:Community Bonding Period:----------<br></p><p><i>21 April - 28 April</i> :<i> </i>I
am going to re-discuss my implementation plans with the telepathy
community, incorporating in the suggestions recieved, and clarifying the
design issues (if any).</p>
</div><p><i>29 April - May 06</i> : Getting familiar with the telepathy-gabble
codebase and ktp-call-ui, solve few bugs and getting
acquainted with the coding style/conventions. <br></p><p><i>May 07 - May 14</i>
: Identifying the places in telepathy-gabble which might need rewrite to complete the support for muc. Try to use muji over jabber MUC (chat room). Start using the classes/methods in telepathyqt, telepathy-farstream
libraries pertaining to conference such as fsconference, make test
scripts and get to know how they work. Also try to use muji over jabber MUC (chat room). <br>
</p><div><p><i>May 15 - May 18 </i>: Planning out the changes needed as a
part of the rewrite of the call interface. Making small scale
integration of the methods into ktp-call-ui call handlers.<br></p>
<p><br></p><p>------------:Coding Period Begins:-------------</p></div><p><i>May 19 - May 26 </i>: Add missing Muji protocol features into call-muc-channel in gabble and add respective fsconference methods in ktp-call-ui. <br>
</p>
<p><i>May 27 - June 4</i> :<i> </i> Test the protocol implemented and add in missing stuff if any. <br>
</p>
</div><div><i>June 5 - June 19</i> :Implement multiple video widgets, in the UI. Check if the multiple videoWidgets
made, work fine without crashing. Implementing support for multiple
audiosinks, and separate volume controllers for each audio/video sink
pairs. Integrating the multiple videoWidgets and their respective audio/video sinks with callChannels, and rigourously testing it.<br><br></div><div><div><i>June 20 - June 23</i> : Testing for consistency and efficiency of the Qt methods used. Check for consistency in coding style/conventions.<i><br>
<br></i></div><div><i>June 24 - June 27</i> : Discussing with the mentors about the current development, and getting their reviews/comments on the reviewboard.<br><br></div><div>:::::::::::::Mid term deliverables:::::::::::;<br>
</div></div><div>The UI would be capable of handing multiple audio/video streamings in the UI.<br><br></div><div><i>June 28 - July 12 : </i>Rewriting call handlers, call managers in ktp-call-ui to accomodate for the conference feature.<div>
<br>
<br><i>July 13 - July 20</i> : Rigourously testing the integration of the conference gabble into ktp-call-ui .<br></div></div><div><div><br></div><div><i>July 21 - August 1</i>
: Getting reviews/feedbacks from telepathy developers and making any
changes suggested (if any).Testing the code by making actual calls with
kde developer community, on <a href="http://kdetalk.net" target="_blank">kdetalk.net</a> <br>
<br></div><div><i>August 2 - August 5</i> : Documenting the code. Testing the code by making actual calls with kde developer community, on <a href="http://kdetalk.net" target="_blank">kdetalk.net</a> <br><br></div><div>
<i>August 5 - August 22</i> : Backup time for unforeseen delays.<br><br></div></div><div>::::::::::::::::::End term deliverables:::::::::::::::::<br></div><div>Multi-party conference call integrated support for muji based jabber in ktp.<br>
</div><div><div><br></div><div>Post GSoC ----------> Maintain ktp-call-ui and telepathy in general. Become a part of the telepathy community. <br><br></div><div><b>About Me</b>:<br></div><div>I
am a FOSS enthusiast and a rabid open source contributor. I am
currently a 3rd yr undergraduate pursuing Computer Science at NIT,
Durgapur, India . I believe in the core principle of FOSS. Since I was
introduced to the warm, loving and inspiring world of Open Source I am
in love with it, as they offer great opportunity to both learn and
teach. <br>
</div><div>I was a student for the Google Summer of Code 2013, with
Ankur India and developed a font-metric tool for Indic fonts which could
differentiate fonts on the basis of their aesthetic quality and allow
font developers to contribute more and better fonts. <br>
</div><div>I have regularly contributed patches to applications like <i>Konversation, Kate, Telepathy, Trojita, Rekonq.</i> I also made a plugin for the Geany IDE, which would allow people to submit their code online at SPOJ through the editor. <br>
</div><div>I have also explored the Telepathy source code, and submitted few patches too on the same.<br>
</div><div>I am skilled in C/C++, Qt, Python, HTML, JAVA, CSS and PHP.<br>I am very passionate and done to the task I take under, and I can devote 40 hours a week, to my work. <br></div><div>After
GSoC I would continue and maintain my code and be a part of the
telepathy community, helping new people to join in the community. <br>
</div>Apart from remaining stuck to my laptop, I love to eat chocolates, listen to Michael Jackson, sleeping and eating.</div><div><div><img src="https://mail.google.com/mail/u/0/images/cleardot.gif"></div>
</div></div><div class="gmail_extra"><br><br><div class="gmail_quote"><div><div>On Fri, Mar 7, 2014 at 11:13 PM, Martin Klapetek <span dir="ltr"><<a href="mailto:martin.klapetek@gmail.com" target="_blank">martin.klapetek@gmail.com</a>></span> wrote:<br>
</div></div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div><div><div dir="ltr"><div class="gmail_extra">Hey,</div><div class="gmail_extra"><br></div>
<div class="gmail_extra">thanks for that, looking good. Couple comments below.</div>
<div class="gmail_extra"><br></div><div class="gmail_extra">
<br><div class="gmail_quote"><div>On Fri, Mar 7, 2014 at 6:24 PM, Mayank Jha <span dir="ltr"><<a href="mailto:mayank25080562@gmail.com" target="_blank">mayank25080562@gmail.com</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-color:rgb(204,204,204);border-left-style:solid;padding-left:1ex">
<div dir="ltr"><div><div><div>Name: Mayank Jha<br></div>IRC Nicks: mjnovice,mapyth on freenode.<br></div>Email: <a href="mailto:mayank25080562@gmail.com" target="_blank">mayank25080562@gmail.com</a> <br>Blog: <a href="http://mjnovice.wordpress.com/" target="_blank">http://mjnovice.wordpress.com/</a><br>
</div><div><a href="https://github.com/mjnovice/" target="_blank">Github Profile</a> <br></div><div>KDE identity Username: jhamayank<br></div><div><br></div><b>Short Description:</b><br clear="all">
<div><div><div><div><div>Currently telepathy supports 1-to-1 video call for various services like gmail, facebook, jabber. But it lacks multiparty conference call support, where you could have a google hangout like group video chat. This project aims at implementing a full fledged video conferencing feature into telepathy.<br>
</div></div></div></div></div></div></blockquote><div><br></div></div><div>Note that "telepathy" is not the same as "kde-telepathy"/"ktp". I think you want to say "ktp" above.</div>
<div><div>
</div>
<blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-color:rgb(204,204,204);border-left-style:solid;padding-left:1ex"><div dir="ltr"><div><div><div><div><div><b>Synopsis:<br></b></div>
<div>Telepathy does not have conference call support. The libraries ( telepathy-qt, telepathy-farstream ) on which it depends however has the necessary classes and methods to allow you to integrate the conference feature into the main UI. The main dependency telepathy-gabble also has most of the methods in it, and might require some minor additions/changes. So, the UI needs to be done properly to allow user to make conference calls.<br>
</div></div></div></div></div></div></blockquote><div><br></div></div><div>Same here. I think Telepathy does have conference call support (in the spec at least anyway), so you want to say "KDE Telepathy" here again. Telepathy-gabble is on the other hand not a dependency of anything and we wouldn't use it directly in any way.</div>
<div>
<div> </div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-color:rgb(204,204,204);border-left-style:solid;padding-left:1ex"><div dir="ltr"><div><div><div><div><div><b>Implementation Details:<br>
</b></div><div>To implement the conference calls, we need to rewrite the current code in ktp-call-ui, to accomodate for conference calls. <br>
<br>For the UI, what we could do is, have the mainVideoWidget (
from the qtgstreamer library ), as the main video widget, and the
participants of the conference (including me) have their thumbnails sort
of videoWidgets at the bottom of the call window arranged, and clicking
on any of the bottom widgets would allow you to see the enlarged view
on the mainVideoWidget. Also currently there is restriction on the frame
per seconds rate of the video being streamed ie 15. We could add a
menu, which can have options to modify the frame rate. <br>
</div><div>Since all of the work is done in Qt. So we would also need to check while doing the User Interface, that the methods used are optimum, and consistent, keeping in mind the efficiency of the feature.<br><br>The backend work, would involve rewriting the classes and the
methods of the ktp-call-ui to accomodate for multiple video streams. At
some places the fsconference is incomplete. This would involve
rewriting, the call-handlers and the call-managers, and also the classes
defined in ktp-call-ui/src/ as well as ktp-call-ui/libktpcall . <br>
<br><br>We might also need to make changes to
telepathy-gabble the main connection manager, to add support for
conference protocol if it lacks. </div></div></div></div></div></div></blockquote><div><br></div></div><div>The above mixes several things together. "The backend" would be gabble here and you'd need to place all/most of the farstream code there I think. </div>
<div><br></div><div>"At some places the fsconference is incomplete. This would involve rewriting," --> do you mean rewriting fsconference?</div><div><br></div><div>Also I'd like to know 140% beforehand if there will be a need to edit gabble in any way because if yes, I think that will take lots and lots of your time as it's a completely strange GObject code and this would bump your timeline considerably, which might even result in your failure.</div>
<div><br></div><div>Finally, note that without any backend support (not sure if any connection manager has support or not) you won't be able to test this properly so in your timeline, backend work should imho come first or hand-in-hand with the UI changes so you can use one to test the other and vice-versa. Your proposal lists gabble work far too away imho (if needed).</div>
<div><br></div><div>Overall I think the proposal is a bit ambitious, though I'd like to have George's and Diane's input on it too. I may be wrong on things.</div><div><br></div></div><div>Cheers</div><span><font color="#888888">-- <br>
<div>
<span style="color:rgb(102,102,102)">Martin Klapetek | KDE Developer</span></div>
</font></span></div></div>
<br></div></div>_______________________________________________<br>
KDE-Telepathy mailing list<br>
<a href="mailto:KDE-Telepathy@kde.org" target="_blank">KDE-Telepathy@kde.org</a><br>
<a href="https://mail.kde.org/mailman/listinfo/kde-telepathy" target="_blank">https://mail.kde.org/mailman/listinfo/kde-telepathy</a><br>
<br></blockquote></div><div><br><br clear="all"><br>-- <br><div dir="ltr">Mayank Jha<br><a href="http://mjnovice.wordpress.com/" target="_blank">http://mjnovice.wordpress.com/</a><br></div>
</div></div>
</div><br><br clear="all"><br>-- <br><div dir="ltr">Mayank Jha<br><a href="http://mjnovice.wordpress.com/" target="_blank">http://mjnovice.wordpress.com/</a><br></div>
</div>
</div></div></blockquote></div><br><br clear="all"><br>-- <br><div dir="ltr">Mayank Jha<br><a href="http://mjnovice.wordpress.com/" target="_blank">http://mjnovice.wordpress.com/</a><br></div>
</div></div></div></div>
</blockquote></div><br><br clear="all"><br>-- <br><div dir="ltr">Mayank Jha<br><a href="http://mjnovice.wordpress.com/" target="_blank">http://mjnovice.wordpress.com/</a><br></div>
</div>