Upload
ogslash
View
167
Download
3
Embed Size (px)
Citation preview
Doogg el “EKEKO”...Exiten 3 Tipos de PersonasLas que “Intentan” Matar al DragonLos que “Matan” DragonesY el los “Saben” que los Dragones no Exiten!!!
C.U. Gerardo A. [email protected]
NECESITO PRESENTACION
¿Alguno/a no me Conoce?
97% LIBRE Como el Aire3% Privativo
DedicadoA mi Hermano David Manuel por el Agunte...Amigos -Fernado ,Luis , Ale , Ricardo, Javier , Diego y MAS - SaltaLug -Miguel ,Matt, Oscar, Ricardo, y mas - !!!
Facultad de Cs. EXACTAS -TODOS - !!!
CAMBIECAMBIE MI forma de Pensar!!!
Hay vida mas alla de GNU/Linux...
Que estoy defendiendo o me e vuelto un purista?
Ser Legal implica que la Gente te Señale...
Que Deseo Hacer, estoy aportando ALGO UTIL...
reconocer si me equivoque?
¿ Qué Paso en “un año”?
COMO Llegue a GOOGLE
Y Wikimedia!!!
Google SOC“Google Summer of Code (en español: Verano de código Google) es un programa anual donde, la empresa Busca Proyectos y organizaciones . De Estudiantes Universitarios para Programar todo el verano...NADA MAL ..NO....
WikiMedia “Wikimedia es la Fundacion La misión de laFundación Wikimedia es facultar y animar
a la gente de todo el mundo a reunir y desarrollar contenido educativo neutral
bajo una licencia de contenido libre o en el dominio público,
y a difundirla de manera efectiva y global.
Corria el AÑO 2007
ME RECHAZARON!!!!!POR ALGO SERA …
No Estaba preparado...No Era mi Tiempo...Sabia que algo me
estaba esperando....
Title/Summary
Eclipse Plugins "GuiCo" para Superwaba
Organization Eclipse
Last Modified 2007/04/09 16:44:38 PDT Status Not Selected
AÑO 2009 Sip Me Aceptaron!!!Momento FELIZ !!!!!
Le METI PATA!!! Una vez MAS
Ya estaba maduro enconocimiento...
Y Sobre TodoHice Amigos
5600 Proyectos …Solo 1000 Lugares....
7 Argentinos!!!
SUERTE ¿?Google para 1000 SOCSe Realizan las propuestas
# Ranquean las propuesta dentro de las fundaciones
# Luego Google asigna cuantos SOC recibe la fundacion....
Mi nombres : Gerardo Antonio CaberoUniversidad : Univesidad Nacional de Salta - Unsa -Carrera : Lic en Analisis de sistema - Facultad de Ciencia Exactas..Proyecto : Doog " The New Cortado Applet Player " - Soportar VLC,Cortado, Flowpalyer ..Formtos soportado OGG , OGV...fundacion : Wikimedia
Mi nombres : Francisco TufróUniversidad : Universidad de Buenos Aires (UBA)Carrera : Lic. en Ciencias de la ConputaciónProyecto : Audio Refactoring and Comment Support for Tux Paint
Mi nombre: Eliel SardañonsUniversidad: CAECECarrera: Lic. en Ciencias de la ComputaciónProyecto: Generic data retrieval API for the Asterisk project.Fundacion Asterisk
Mi nombres : Emilio TaguaUniversidad : Universidad de MendozaCarrera : Ingenieria en InformáticaProyecto : "Integrate Arel into ActiveRecord" Orgnizacion "Ruby on Rails"
Nombre: Lucas AmadorUniversidad: UTN FRBACarrera: Ing en Sistemas de InformaciónProyecto: Rules refactoring para JBoss Drools - Jboss
Nombre: Alejandro SantosUniversidad: UNLPCarrera: Licenciatura en InformaticaProyecto: Mercurial on Py3k - Python
Nombre: Gerardo Huck.Carrera : Lic en Cs de la ComputacionUniversidad Nacional de RosarioProyecto "Cytoscape GPU Assisted Graph Layout Plugin",dentro de la organizacion GenMAPP.
Mi ¨PROPUESTA¨ Doogg EL EKEKO !!!
Doogg es la variant of the cortado applet java by embedding this applet in your website, you can give viewers access to streams from either streaming server or play a local file from your server without the need for a locally installed media player supporting the correct formats on the visitor’s computer applet for Ogg formats (Vorbis, Theora).
A
Que es lo que HAYTodos FLASH
# Mi Primer Plugins VLC CONTROL EKEKO# Es Basico!!!
En que Me InspireEn JS - VLC CONTROL
¨1er Contacto con¨ Michael Dale!!!
On 13th April 2009 21:24 Michael Dale wrote:
I am willing to mentor this project but the student will probably have to deviate substantially from what was originally proposed. If the student can contact me (very soon) ...... Also the student should give us some references to previous projects that shows some experience in this area.
On 14th April 2009 14:03 Gerardo Antonio Cabero wrote: Dear Michael DaleI just contact you email Gerard
CORTADO APPLET es BASICO!!!!!
Y me enseño lo Siguiente...
¨Mv EMBED¨ is a javascript – Jquery - library for easy
embedding of ogg theora/vorbis media with the html5 !!!
VLC (win,linux,mac) (firefox & IE)
Oggplay (win,linux,mac) (firefox only)
Java cortado (java based win, linux, mac)
Mplayer, Totem/gstreamer (linux firefox only)
Native html5 Opera and firefox
Native Safari, with xiph quicktime component
Flash Plugin (win, linux, mac)
WAPPER para los Siguiente Reproductores
¨Mi Trabajo¨ # Controlador de Volumen
# Skins EKEKO# MVConfig
#Busqueda Video Audio Relational !!!
DESAFIO EXTRA
IEXPLORER – SAFARI – Chrome – FF – OPERABueno ya se por que los WebMaster tiene Tantos Dolores de Cabeza
¨Algo del trabajo¨ 1 MES Control de Volumen
Muy Lindo – Muy Bello – Pero ....El ritmo de codificacion en estos Proyectos , es RE RE RE BESTIAL Y RAPIDO..
LA TECNOLOGIA :JavaSCRIPT – JQUERY
JSON – XML API - Wiki y de MAS
API – De Conextores – Contar Flow y HTML5CSS
CODIGO Function en MVEmbed!!!++ //Volumen Slider+ js_log(" should add slider binding: " + $j('#volume_bar_'+embedObj.id).length) ;+ //get_vol_vlc+ //$j('#volume_bar_'+embedObj.id).ready(function () {++ //$j('#' +embedObj.id).get(0).vol_slider(perc);++ //});+ // $j('#volume_bar_' +embedObj.id).get(0).updateVolume(30/100);+ $j('#volume_bar_'+embedObj.id).slider({+ range: "min",+ value: 30,+ min: 0,+ max: 100,+ start: function(event, ui){+ var id = (embedObj.pc!=null)?embedObj.pc.pp.id:embedObj.id;+ embedObj.userSlide=true;+ },+ slide: function(event, ui) {+ var perc = ui.value/100;+ $j('#' +embedObj.id).get(0).updateVolume(perc);+ $j('#volume_control_'+embedObj.id ).removeClass('ui-icon-volume-on').addClass('ui-icon-volume-off');+ if (perc==0) {+ $j('#volume_control_'+embedObj.id ).removeClass('ui-icon-volume-on').addClass('ui-icon-volume-off');+++ }+ else{++ $j('#volume_control_'+embedObj.id ).removeClass('ui-icon-volume-off').addClass('ui-icon-volume-on');+ }+ },+ change:function(event, ui){+ //only run the onChange event if done by a user slide: + if(embedObj.userSlide){+ embedObj.userSlide=false;+ embedObj.seeking=true;++ var perc = ui.value/100;
+ $j('#' +embedObj.id).get(0).updateVolume(perc);++ }+ } + });++ $j('#volume_bar_'+embedObj.id).append( ctrlBuilder.MvBufferVolHtml() );+ $j('#volume_bar_'+embedObj.id).addClass("ui-slider-handle");+$j('#vol_'+embedObj.id).click(function(){+ $j('#vol_'+embedObj.id).removeClass("ui-icon-volume-on");+ $j('#vol_'+embedObj.id).addClass("ui-icon-volume-off"); });
ALGO DE CODIGO VLC!!! onPause: function(){
this.parent_pause(); //update the inteface if paused via native control }, onStop: function(){
js_log('vlc:onStop:'); if(!this.seeking)
this.onClipDone();},
/* js hooks/controls */play : function(){
js_log('f:vlcPlay');this.getVLC();//call the parent
this.parent_play();if( this.vlc ){
//plugin is already being present send play call: // clear the message log and enable error loggingif( this.vlc.log ){
this.vlc.log.messages.clear();}if(this.vlc.playlist)
this.vlc.playlist.play();
this.monitor();this.paused=false;
}},stop : function(){
if(this.vlc){if(typeof this.vlc != 'undefined' ){
if(typeof this.vlc.playlist != 'undefined'){//dont' stop (issues all the plugin-stop actions) //this.vlc.playlist.stop();if( this.monitorTimerId != 0 ){
clearInterval(this.monitorTimerId);this.monitorTimerId = 0;
}}
}}//this.onStop();//do parent stopthis.parent_stop();
},
pause : function(){this.parent_pause(); //update the inteface if
paused via native controlif( this.vlc ){
this.vlc.playlist.togglePause();}
},toggleMute:function(){
this.parent_toggleMute();this.getVLC();if(this.vlc)
this.vlc.audio.toggleMute(); }, //@@ Suport UpDateVolumen updateVolumen:function(perc){ this.getVLC();
if(this.vlc)this.vlc.audio.volume = perc*100;
}, //@@ Get Volumen getVolumen:function(){ this.getVLC(); if(this.vlc) return this.vlc.audio.volume / 100; },
fullscreen : function(){if(this.vlc){
if(this.vlc.video)this.vlc.video.toggleFullscreen();
}},
ALGO DE CODIGO Native HTML 5 !!!pause : function(){
this.getVID();this.parent_pause(); //update interfaceif(this.vid){
this.vid.pause();}//stop updates: this.stopMonitor();
},play:function(){
this.getVID();this.parent_play(); //update interfaceif( this.vid ){
this.vid.play();//re-start the monitor: this.monitor();
}},toggleMute:function(){
this.parent_toggleMute();this.getVID();if(this.vid)
this.vid.muted = this.muted;},updateVolumen:function(perc){
this.getVID();if(this.vid)
this.vid.volume = perc; },
getVolumen:function(){this.getVID();if(this.vid)
return this.vid.volume; },getNativeDuration:function(){
if(this.vid)return this.vid.duration;
},load:function(){
this.getVID();if( !this.vid ){
//no vid loadedjs_log('native::load() ... doEmbed');this.onlyLoadFlag = true;this.doEmbedHTML();
}else{//won't happen offtenthis.vid.load();
}},
CSS ALGO .mv-player .volume_on {
background: url(images/player_volume_tag.png) 0 8px no-repeat;}.mv-player .volume_off{
background: url(images/player_volume_tag_off.png) 0 8px no-repeat;}
.mv-player .volume_knob {background: url(images/player_slider.png) 0 0 no-repeat;width: 14px;height: 14px;position: absolute;z-index: 2;margin: -1px 0 0 3px;cursor: pointer;
}.mv-player .vol_container{
z-index:99;width:23px;height:75px;width:23px;background: #CCC;
}.mv-player .vol_container_below{
top:30px;}.mv-player .vol_container_top{
top:-77px;}.mv-player .vol_container .volume-slider{
margin-top:5px;height:65px;width:10px;margin-left: auto ;margin-right: auto ;
}
Primer Periodo de Evaluacion
ES COMO # Comer Agujas – Clavos – Vidrio - Tomar Veneno de Cobra …
Primitive Video and Audio Relational Search
Nucleo del Video Relational Search !!!CORE + "wikiTitleKey":null,
En Funciones ++ if($j(video_element).attr('wikiTitleKey'))+ this.wikiTitleKey=$j(video_element).attr('wikiTitleKey');
+ mvVideoAudioSearch:function(){+ // Primitive Search en Wikimedia Coommons ///+ var url_search = 'http://commons.wikimedia.org/w/api.php';+ js_log('thum disp:'+ url_search );+ + js_log('switch video Relational' );+ var _this=this ++ var reqObj = {+ 'action':'query', + 'titles': this.wikiTitleKey ,+ 'generator':'categories'+ };++ var req_categories= new Array();++ do_api_req( {+ 'data':reqObj, + 'url': url_search+ }, function(data){ + var index=0;+ if(data.query && data.query.pages){+ for(var pageid in data.query.pages){+ var page = data.query.pages[pageid]; + req_categories[index]= page.title;+ index++;+ }+ }+ mv_getVideos(req_categories);+ });++ function mv_getVideos(categoria){+ for ( var i= 0 ; i<= categoria.length ;i++ ){+ categoria_relational= categoria[i];+ var reqObj = {+ 'action':'query', + 'list':'categorymembers' ,+ 'cmtitle': categoria_relational,+ };
# API DE WIKIMEDIA COMMONS y OTRAS WIKI
# JSON – JQUERY – DOM
# Numeros Randomicos Para generar la tirarada de Monedas
+ do_api_req( {+ 'data':reqObj, + 'url': url_search+ }, function(data){ + var _this=this;+ var videos="";+ if(data.query && data.query.categorymembers){+ for(var pageid in data.query.categorymembers){+ if( i != '-1' && i != '-2' ){+ var page = data.query.categorymembers[pageid];+ mvVideoRelatinal(page.title);+ }+ }+ }+ }+ );++ }+ }++ function mvVideoRelatinal(title){+ var video = title;+ var reqObj = {+ 'action':'query', + 'titles':video,+ 'prop' : 'imageinfo',+ 'iiprop' : 'url',+ 'iiurlwidth': '400'++ };+ do_api_req( {+ 'data':reqObj, + 'url': url_search+ }, function(data){ + //alert(video);+ var _this=this;+ var listavideos="";+ for(var i in data.query.pages){+ if( i != '-1' && i != '-2' && (Math.random()>=0.5) ){+ local_poster = data.query.pages[i]['imageinfo'][0].thumburl;+ if(local_poster == false){+ local_poster ="http://upload.wikimedia.org/wikipedia/commons/7/79/Wiki-commons.png";+ }+ local_description = data.query.pages[i]['imageinfo'][0].descriptionurl;+ if (local_description.match(/.png$|.gif$|.jpg$/gi)==null) {+ $j('ul').append('<li><a href="'+local_description+'" ><img src="'+local_poster+' "></a><div><span> '+video+' </span></br></br><a title="link" target="_blank" href="'+ local_description +'">link Video</a></div></li>') ;+ }+ }+ }; + }+ );+ }+},
++ onClipDone:function(){+ js_log('base:onClipDone');+ //stop the clip (load the thumbnail etc) + this.stop();+ this.seek_time_sec = 0;+ this.setSliderValue(0);+ var _this = this;
+ this.onClipDone_disp=true;+ this.thumbnail_disp=true;+ //make sure we are not in preview mode( no end clip actions in preview mode) + if( this.preview_mode )+ return ;+ $j('#img_thumb_'+this.id).css('zindex',1);+ $j('#big_play_link_'+this.id).hide();+ //add the liks_info_div black back + $j('#dc_'+this.id).append('<div id="liks_info_'+this.id+'" ' ++ 'style="width:' +parseInt(parseInt(this.width)/2)+'px;'++ 'height:'+ parseInt(parseInt(this.height)) +'px;'++ 'position:absolute;top:10px;overflow:auto'++ 'width: '+parseInt( ((parseInt(this.width)/2)-15) ) + 'px;'++ 'left:'+ parseInt( ((parseInt(this.width)/2)+15) ) +'px;">'++ '</div>' ++ '<div id="black_back_'+this.id+'" ' ++ 'style="z-index:-2;position:absolute;background:#000;' ++ 'top:0px;left:0px;width:'+parseInt(this.width)+'px;' ++ 'height:'+parseInt(this.height)+'px;">' ++ '</div>' ++ '<div class="widget" >' ++ '<h1>Video and Audio Relational </h1>'++ '<div class="widget_style">' ++ '<ul id="gerard" >' + '</br> ' ++ '</ul>' ++ '</div>' ++ '</div>' + );+ this.mvVideoAudioSearch();+ //start animation (make thumb small in upper left add in div for "loading"+ $j('#img_thumb_'+this.id).animate({+ width:parseInt(parseInt(_this.width)/2), height:parseInt(parseInt(_this.height)/2), top:20, left:10+ },+ 1000, + function(){+ //animation done.. add "loading" to div if empty+ if($j('#liks_info_'+_this.id).html()==''){+ $j('#liks_info_'+_this.id).html(gM('loading_txt')); } } ) + //now load roe if run the showNextPrevLinks+ if(this.roe && this.media_element.addedROEData==false){+ do_request(this.roe, function(data)+ { + _this.media_element.addROE(data);+ _this.getNextPrevLinks();+ }); else{+ this.getNextPrevLinks(); }},
/* Search Video */+.widget {+width:345px;+z-index:6663;+position: relative;+width: 400px;+height: 130px;+left: 0px;+top: 20px;+background : transparent url(images/bg_202020_90.png) repeat scroll 0 0;+overflow-x:auto;+}+.widget h1 {+border:medium none;+font-size:20px;+margin:4px 0px 4px 11px;+padding:0;+color:#F0F0F0;+font-family:arial,sans-serif;+}
++.widget_style li div {+float:right;+margin:5px 0 0 10px;+width:200px;+}++.widget_style img {+width:90px;+height:70px;+z-index:2;+border-bottom:3px solid #36393D;+border-top:3px solid #36393D; }
++.widget a.previous{+ float:left;+ display:block;+ width:20px;+ height:20px;+ margin-top:28px;+ margin-right:2px;+}+.widget a.next{+ float:right;+ display:block;+ width:20px;+ height:20px;+ margin-top:-31px;+}++.widget_style {+text-align:left;+padding:0px 0px 0px 0px;+}+++.widget_style ul {+margin:0;+padding:0;++list-style-image:none;+list-style-position:inside;+list-style-type:none;+margin:0;+padding:0;+}+++.widget_style li{+-x-system-font:none;+//background-color:red;+color:#FAFAFA;+display:table;+font-family:arial,sans-serif;+font-size:11px;+font-size-adjust:none;+font-stretch:normal;+font-style:normal;+font-variant:normal;+font-weight:normal;+line-height:normal;+margin:0 0 6px 35px;+padding:0;+}
VEAMOS
Si Corre en FF en ubuntu...
Un “Wikipedia Con Videos“ SIPI...
Proximo Paso:
Videos
Multimedia
Add Media Wizard
My OwnWiki.com
Shared javascript Remote Repository Search
Open Licensed Content Network:
●archive.org●metavid.org●commons.wikimedia.org●Flickr●Kaltura content network ●etc.
Wikimedia network of sitesProvides Media
Interfaces for:Sequencer:
Legislative VideoWikiProvides add media
wizard for in page insert
Client side firefog or image uploads
Add Media Wizard Enabled by search apis (json, rss) Insert / Import based on Context In-line edit & layout tools: crop, scale, filters, etc
Add Media Wizard
Selection of segments of videos from remote content source enabled by oggz_chop
Definicion...
;)Definicion...
;)Definicion...
Momentos Dificil !!!
Pienso que no estas listo para summer of code quisas debes tratar de investigar conceptos de programacion
por el año y quisas re-aplicar el año que vine?
Leccion Importante No vivir Atado !!!
Vivir como los Hijos de Dios sin que nadie nos Encadene
(ATE)
¨Y DESPUES QUE...¨ # Actual Manenedor Oficial de MVEmbed
# Audio Relational# Controladores para Audio
Soy Cobre... Y Brillo... Vos que sos Diamante …Con mas Razon tenes que Brillar...
Simplemente SI SE PUEDE!!!!