[Mplayer-cvslog] CVS: main/DOCS/Spanish tech,1.6,1.7
GEREOFFY
arpi_esp at users.sourceforge.net
Sat Apr 14 18:02:15 CEST 2001
Update of /cvsroot/mplayer/main/DOCS/Spanish
In directory usw-pr-cvs1:/tmp/cvs-serv28599
Modified Files:
tech
Log Message:
I'm learning spanish :)
Index: tech
===================================================================
RCS file: /cvsroot/mplayer/main/DOCS/Spanish/tech,v
retrieving revision 1.6
retrieving revision 1.7
diff -C2 -r1.6 -r1.7
*** tech 2001/04/10 23:30:42 1.6
--- tech 2001/04/14 16:02:13 1.7
***************
*** 98,134 ****
los datos (mira el punto 2).
- 5.a Controlador del codec: el 'puzzle' msa grande del monton
- La libmpeg2 es tan inestable que no puedo creerlo. Obviamente no digo que sea
- un asco :) Mas bien, no acepta steams perfectos. Si hay algun error simplemente
- da una violacion de segmento ;) Y no empieces a reir, es bueno de este modo
- desde el punto de vista de la velocidad seria un 50-100% mas lento si estuviera
- lleno de verificaciones. Es por esto que lo solucionamos ejecutandolo en un
- proceso separado, y si muere, quien se preocupa?, simplemente inicia otro.
-
- De todos modos, algunas cosas son necesarias para esto:
- - El proceso de control del codec: un proceso separado, que duerme, pero si
- el hijo muere (el proceso de libmpeg2), rapidamente inicia otro. Asi MPlayer
- no debe preocuparse al respecto, simplemente vuelca los datos comprimidos
- al hijo, que los muesta.
- - shmem: Los datos comprimidos, y las imagenes descomprimidas se encuentran
- en memoria compartida, asi pues los 3 procesos (mplayer, codecontrol,
- codec libmpeg2) los ve, de modo que pueden pasarse datos mas deprisa.
- - FIFO se usa para la comunacion entre los procesos
- - Si el hijo muere durante la decodificacion, los datos decodificados no se
- pierden, son heredados por el nuevo hijo via la memoria compartida! Asi
- pues, unicamente, un pequeño error puede verse en el video. No desaparecera
- o se volvera verde, como en las viejas versiones
-
- El contrapunto de todo esto es que desde que libvo y libmpeg2 estan estrechamente
- relacionados libvo necesita trabajar en el mismo proceso que libmpeg2, en el que
- se ocupa de morir/renacer, y no en el que lleva el control, MPlayer. Esto causa
- un monton de problemas, la mayoria en el manejo de la ventana de libvo (tecleo,
- etc...). Asi que hay algunos truquitos varios por en medio, mucho FIFO, y trucos
- que se aprovechan del hecho de que las X no se preocupan sobre que proceso
- controla los eventos.
-
- Quisiera resolver esto en un futuro, y usar el metodo signal/longjump, otro
- puzlecito, desarroyado en la lista mpeg2dec-devel.
-
5. libvo: Este muestra la imagen, hay dos rutinas para ello
--- 98,101 ----
_______________________________________________
Mplayer-cvslog mailing list
Mplayer-cvslog at lists.sourceforge.net
http://lists.sourceforge.net/lists/listinfo/mplayer-cvslog
More information about the MPlayer-cvslog
mailing list