[Mplayer-cvslog] CVS: main/DOCS TODO,1.23,1.24 tech-hun.txt,1.7,1.8 AUTHORS,1.33,1.34

GEREOFFY arpi_esp at users.sourceforge.net
Thu May 24 20:33:53 CEST 2001


Update of /cvsroot/mplayer/main/DOCS
In directory usw-pr-cvs1:/tmp/cvs-serv28934

Modified Files:
	TODO tech-hun.txt AUTHORS 
Log Message:
some updates

Index: TODO
===================================================================
RCS file: /cvsroot/mplayer/main/DOCS/TODO,v
retrieving revision 1.23
retrieving revision 1.24
diff -C2 -r1.23 -r1.24
*** TODO	2001/05/24 16:22:18	1.23
--- TODO	2001/05/24 18:33:51	1.24
***************
*** 1,21 ****
  TO DO:
  ~~~~~~
- Urgent:
- - support for more codecs  (sample .avi files and .dll needed!) - HELP!
- - make a release!
- - change to libxmm
- - audio playback rate setting [Jelmer Feenstra]
- - further optimizations
  
- They Have Been Around For A Long Time:
- ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  High Priority:
  - finish ASF seeking (find next keyframe)
! - asterix.avi audio delays after 5-10 mins (bps mode only)
! - fix mp3lib to avoid segfault with some damaged .avi files (DONE!?)
  
  Medium Priority:
- - seeking support for broken avi files without index chunk (DONE!)
- - fix x11 driver to work without SHM (for remote playing etc)
  - show current frame number [Gabucino]
  - seek_to_frame and seek_to_index options
--- 1,13 ----
  TO DO:
  ~~~~~~
  
  High Priority:
  - finish ASF seeking (find next keyframe)
! - audio playback rate setting [Jelmer Feenstra]
! - asterix.avi audio delays after 5-10 mins (bps mode only) - DONE?
! - fix x11 driver to work without SHM (for remote playing etc)
! - further optimizations
  
  Medium Priority:
  - show current frame number [Gabucino]
  - seek_to_frame and seek_to_index options
***************
*** 23,27 ****
  
  Low Priority:
! - fix X4.0.x/DRI OpenGL (doesn't really work, at least mga & tdfx & nvidia)
  - support for MPEG TS (transport streams) - I need sample files!
! - integrating the gui?
--- 15,19 ----
  
  Low Priority:
! - fix X4.0.x/DRI OpenGL - DONE?  mga works with 4.0.3
  - support for MPEG TS (transport streams) - I need sample files!
! - integrating the gui? - DONE?

Index: tech-hun.txt
===================================================================
RCS file: /cvsroot/mplayer/main/DOCS/tech-hun.txt,v
retrieving revision 1.7
retrieving revision 1.8
diff -C2 -r1.7 -r1.8
*** tech-hun.txt	2001/04/20 11:56:41	1.7
--- tech-hun.txt	2001/05/24 18:33:51	1.8
***************
*** 1,15 ****
- [yes, this is hungarian. maybe someone will translate this to russian or
- something else...]
- 
  Nos, akkor leirom, hogyan is mûködik ez az egész.
  
- Az ékezetekkel majd lesz valami, nem nagyon vagyok hozzászokva az
- ékezetes gépeléshez...
- 
- A program felépítése alapjaiban logikus, de eleg gányul van megirva :)
- 
  A fõ modulok:
  
! 1. streamer.c: ez az input, azaz ez olvassa a filet vagy VCD-t.
     amit tudnia kell: megfelelõ sectoronkenti bufferelés, seek, skip funkciók,
  	 byte-onkénti ill. tetszõleges méretû blockonkénti olvasás.
--- 1,7 ----
  Nos, akkor leirom, hogyan is mûködik ez az egész.
  
  A fõ modulok:
  
! 1. streamer.c: ez az input layer, azaz ez olvassa a filet, VCD-t vagy stdin-t.
     amit tudnia kell: megfelelõ sectoronkenti bufferelés, seek, skip funkciók,
  	 byte-onkénti ill. tetszõleges méretû blockonkénti olvasás.
***************
*** 17,21 ****
  	 
  2. demuxer.c: ez végzi az input szétszedését audio és video csatornákra,
!    és a kiválasztott csatornák bufferelt package-nkénti olvasását.
  	 A demuxer.c inkább csak egy framework, ami közös minden input
  	 formátumra, és az egyes formátumokhoz (mpeg-es,mpeg-ps, avi, avi-ni, asf)
--- 9,13 ----
  	 
  2. demuxer.c: ez végzi az input szétszedését audio és video csatornákra,
!    és a kiválasztott csatornák bufferelt package-enkénti olvasását.
  	 A demuxer.c inkább csak egy framework, ami közös minden input
  	 formátumra, és az egyes formátumokhoz (mpeg-es,mpeg-ps, avi, avi-ni, asf)
***************
*** 27,34 ****
  	 memoriaban ezek lancolt listaban vannak, mivel kulonbozo meretuek.
  
! 2.b. demuxer stream, azaz ds. struct: demux_stream_t
     minden egyes csatornahoz (a/v) tartozik egy ilyen.
  	 ez tartalmazza a stream-hez tartozo packeteket (lasd. 2.a.)
! 	 egyelore demuxer-enkent 2 ilyen lehet, egy a hanghoz es egy a kephez.
  
  2.c. stream header. 2 fele van (egyelore): sh_audio_t es sh_video_t
--- 19,30 ----
  	 memoriaban ezek lancolt listaban vannak, mivel kulonbozo meretuek.
  
! 2.b. demuxer stream, azaz ds.
!    struct: demux_stream_t
     minden egyes csatornahoz (a/v) tartozik egy ilyen.
  	 ez tartalmazza a stream-hez tartozo packeteket (lasd. 2.a.)
! 	 egyelore demuxer-enkent 3 ilyen lehet:
! 	 - hang (d_audio)
! 	 - kep  (d_video)
! 	 - DVD felirat (d_dvdsub)
  
  2.c. stream header. 2 fele van (egyelore): sh_audio_t es sh_video_t
***************
*** 48,52 ****
     Pelda: van egy .asf fileunk, abban 6 db stream, ebbol 1 audio es 5 video.
     A header beolvasasakor letre fog jonni 6 db sh struct, 1 audio es 5 video.
!    Amikor elkezdi olvasni a packeteket, az elso talalt audio es video streamet
     kivalasztja, es ezekre allitja be a d_audio es d_video sh pointereit.
     Igy kesobbiekben mar csak ezeket a streameket olvassa, a tobbit nem.
--- 44,49 ----
     Pelda: van egy .asf fileunk, abban 6 db stream, ebbol 1 audio es 5 video.
     A header beolvasasakor letre fog jonni 6 db sh struct, 1 audio es 5 video.
!    Amikor elkezdi olvasni a packeteket, az elso talalt audio es video
!    packethez tartozo streamet
     kivalasztja, es ezekre allitja be a d_audio es d_video sh pointereit.
     Igy kesobbiekben mar csak ezeket a streameket olvassa, a tobbit nem.
***************
*** 61,65 ****
  	   (audio vagy video), mennyi byteot es hova (memoriacim) szeretnenk 
  		 beolvasni. ezt hivogatjak gyakorlatilag a codec-ek.
! 	 - ez megenzi,hogy az adott ds bufferében van-e valami, ha igen akkor 
  	   onnan olvas amennyit kell. ha nincs/nincs eleg, akkor meghivja
  		 a ds_fill_buffer()-t ami:
--- 58,62 ----
  	   (audio vagy video), mennyi byteot es hova (memoriacim) szeretnenk 
  		 beolvasni. ezt hivogatjak gyakorlatilag a codec-ek.
! 	 - ez megnezi,hogy az adott ds bufferében van-e valami, ha igen akkor 
  	   onnan olvas amennyit kell. ha nincs/nincs eleg, akkor meghivja
  		 a ds_fill_buffer()-t ami:
***************
*** 67,73 ****
  	   ha igen, akkor a legregebbit atrakja a bufferbe es olvas tovabb.
  		 ha ures a lancolt lista, akkor meghivja a demux_fill_buffer()-t:
! 	 - ez az input formatumnak megfelelo parset meghivja ami olvassa
  	   tovabb a filet, es a talalt csomagokat rakja be a megfelelo bufferbe.
! 		 na ha mondjuk audio csomagot szeretennk, de csak egy rakat video csomag
  		 van, akkor jon elobb-utobb a DEMUXER: Too many (%d in %d bytes) audio 
  		 packets in the buffer... hibauzenet.
--- 64,70 ----
  	   ha igen, akkor a legregebbit atrakja a bufferbe es olvas tovabb.
  		 ha ures a lancolt lista, akkor meghivja a demux_fill_buffer()-t:
! 	 - ez az input formatumnak megfelelo parser-t meghivja ami olvassa
  	   tovabb a filet, es a talalt csomagokat rakja be a megfelelo bufferbe.
! 		 na ha mondjuk audio csomagot szeretnenk, de csak egy rakat video csomag
  		 van, akkor jon elobb-utobb a DEMUXER: Too many (%d in %d bytes) audio 
  		 packets in the buffer... hibauzenet.
***************
*** 80,91 ****
     az idozites eleg erdekesen van megoldva, foleg azert mert minden
  	 fileformatumnal maskepp kell/celszeru, es neha tobbfele keppen is lehet.
  	 van egy a_frame es egy v_frame nevu float valtozo, ez tarolja az epp
  	 lathato/hallhato a/v poziciojat masodpercben.
! 	 akkor jelenit meg ujabb video frame-t, ha v_frame<a_frame, es akkor
! 	 dekodol tovabb hangot ha a_frame<v_frame.
  	 amikor lejatszik (hang/kep) akkor a lejatszott valami idotartamaval
! 	 noveli a megfelelo valtozot. videonal ez altalaban 1.0/fps, persze
! 	 meg kell jegyeznem hogy videonal nem igazna szamit az fps, asf-nel
! 	 pl. nincs is olyan, ahelyett duration van es framenkent valtozhat.
  	 mpeg2-nel pedig repeat_count van ami 1-2.5 idotartamban elnyujtja
  	 a framet... avi-nal van talan egyedul fix fps, meg mpeg1-nel.
--- 77,104 ----
     az idozites eleg erdekesen van megoldva, foleg azert mert minden
  	 fileformatumnal maskepp kell/celszeru, es neha tobbfele keppen is lehet.
+ 
  	 van egy a_frame es egy v_frame nevu float valtozo, ez tarolja az epp
  	 lathato/hallhato a/v poziciojat masodpercben.
! 	 
! 	 A lejatszo ciklus felepitese:
! 	 while(not EOF) {
! 	     fill audio buffer (read & decode audio) + increase a_frame
! 	     read & decode a single video frame + increase v_frame
! 	     sleep  (wait until a_frame>=v_frame)
! 	     display the frame
! 	     apply A-V PTS correction to a_frame
! 	     check for keys -> pause,seek,...
! 	 }
! 	 
  	 amikor lejatszik (hang/kep) akkor a lejatszott valami idotartamaval
! 	 noveli a megfelelo valtozot:
! 	 - audional ez a lejatszott byteok / sh_audio->o_bps
! 	 megj: i_bps = tomoritett byteok szama egy masodpercnyi hanghoz
! 	       o_bps = tomoritetlen byteok szama egy masodpercnyi hanghoz
! 	           (ez utobbi == bps*samplerate*channels)
! 	 - videonal ez altalaban az sh_video->frametime.
! 	 Ez altalaban == 1.0/fps, persze meg kell jegyeznem hogy videonal nem
! 	 igazan szamit az fps, asf-nel pl. nincs is olyan, ahelyett duration
! 	 van es framenkent valtozhat.
  	 mpeg2-nel pedig repeat_count van ami 1-2.5 idotartamban elnyujtja
  	 a framet... avi-nal van talan egyedul fix fps, meg mpeg1-nel.
***************
*** 103,114 ****
  	 persze ez meg nem minden szinkron ugyben, van meg nemi gaz.
  	 pl. az hogy a hangkartya eleg rendesen kesleltet, ezt az mplayernek
! 	 korrigalnia kell: ezert kell neki az audio buffer merete. amit a
! 	 select()-e tud lemerni amit viszont nem tud minden kartya...
! 	 ilyenkor kell a -abs opcioval megadni.
! 	 
! 	 aztan van olyan gond is, hogy pl. mpegnel nem framenkent van PTS
! 	 hanem szektoronkent, ami tartalmazhat 10 framet is de 0.1-et is.
! 	 hogy ez ne csessze el az idozitest, atlagoljuk 5 framenkent a 
! 	 PTS-t es ezt az atlag erteket vesszuk figyelembe korrekcional.
  	 
  	 avi-nal sem egyszeru az elet. ott a 'hivatalos' idozitesi mod a
--- 116,133 ----
  	 persze ez meg nem minden szinkron ugyben, van meg nemi gaz.
  	 pl. az hogy a hangkartya eleg rendesen kesleltet, ezt az mplayernek
! 	 korrigalnia kell! Az osszes audio kesleltetes masodpercben ezek osszege:
! 	 - az utolso timestamp (PTS) ota beolvasott byteok:
! 	   t1 = d_audio->pts_bytes/sh_audio->i_bps
! 	 - Win32/ACM eseten az audio input bufferben tarolt byteok:
! 	   t2 = a_in_buffer_len/sh_audio->i_bps
! 	 - az audio out bufferben tarolt tomoritetlen byteok:
! 	   t3 = a_buffer_len/sh_audio->o_bps
! 	 - a hangkartya buffereben (vagy DMA bufferben) tarolt, meg nem
! 	   lejatszott byteok:
! 	   t4 = get_audio_delay()/sh_audio->o_bps
! 	 
! 	 Ezekbol kiszamolhato egeszen pontosan, hogy az epp hallhato hanghoz 
! 	 milyen PTS tartozik, majd ezt osszevetve a video-hoz tartozo PTS-el
! 	 meg is kapjuk az A-V eltereset!
  	 
  	 avi-nal sem egyszeru az elet. ott a 'hivatalos' idozitesi mod a
***************
*** 126,130 ****
  	 nem nagyon hasznlajak :) a masik sehol nincs leirva de hasznaljak, ezt
  	 csak merni lehet...
! 	 
  4. codecek. ezek kulonbozo lib-ek szanaszet mindenfelol.
     mint pl. libac3, libmpeg2, xa/*, alaw.c, opendivx/*, loader, mp3lib.
--- 145,170 ----
  	 nem nagyon hasznlajak :) a masik sehol nincs leirva de hasznaljak, ezt
  	 csak merni lehet...
! 
! 3.a. audio playback:
! 	 par szo az audio lejatszasrol:
! 	 az egeszben nem maga a lejatszas a nehez, hanem:
! 	 1. hogy tudjuk mikor lehet irni a bufferbe, blocking nelkul
! 	 2. hogy tudjuk, mennyit jatszott mar le abbol amit a bufferbe irtunk
! 	 Az 1. az audio dekodolashoz kell, valamint hogy a buffert mindig teli
! 	 allapotban tudjuk tartani (igy sose fog megakadni a hang).
! 	 A 2. pedig a korrekt idoziteshez szukseges, ugyanis nemely hangkartya
! 	 akar 3-7 masodpercet is kesleltet, ami azert nem elhanyagolhato!
! 	 Ezek megvalositasara az OSS tobbfele lehetoseget is kinal:
! 	 - ioctl(SNDCTL_DSP_GETODELAY): megmondja hany lejatszatlan byte
! 	   varakozik a hangkartya bufferjeben -> idoziteshez kivallo,
! 	   de nem minden driver tamogatja :(
! 	 - ioctl(SNDCTL_DSP_GETOSPACE): megmondja mennyit irhatunk a kartya
! 	   bufferebe blocking nelkul. ha a driver nem tudja a GETODELAY-t,
! 	   akkor ezt hasznalhatjuk arra is, hogy megtudjuk a kesleltetest.
! 	 - select(): meg kene mondja, hogy irhatunk-e a kartya bufferebe
! 	   blocking nelkul. azt, hogy emnnyit irhatunk, nem mondja meg :(
! 	   valamint sok driverrel egyaltalan nem, vagy rosszul mukodik :((
! 	   csak akkor hasznalom, ha egyik fenti ioctl() sem mukodik.
! 
  4. codecek. ezek kulonbozo lib-ek szanaszet mindenfelol.
     mint pl. libac3, libmpeg2, xa/*, alaw.c, opendivx/*, loader, mp3lib.
***************
*** 174,177 ****
--- 214,222 ----
    init() - ez hivodik meg a legelso frame kirakasa elott - bufferek foglalasa
             stb a celja.
+ 	   van egy flags parameter is (regen fullscreen volt a neve):
+ 	   0x01 - fullscreen (-fs)
+ 	   0x02 - vidmode switch (-vm)
+ 	   0x04 - scaling enabled (-zoom)
+ 	   0x08 - flip image (upside-down)
  
    draw_slice(): ez planar YV12 kepet rak ki (3 db plane, egy teljes

Index: AUTHORS
===================================================================
RCS file: /cvsroot/mplayer/main/DOCS/AUTHORS,v
retrieving revision 1.33
retrieving revision 1.34
diff -C2 -r1.33 -r1.34
*** AUTHORS	2001/05/23 08:51:44	1.33
--- AUTHORS	2001/05/24 18:33:51	1.34
***************
*** 4,7 ****
--- 4,10 ----
  ====================== The MPlayer project: ===========================
  
+ NOTE: Do NOT send bugreports, help & feature requests directly to the authors!
+ ===== Read DOCS/BUGREPORTS and subscribe to mplayer-users mailing lists.
+ 
  Árpád Gereöffy (A'rpi/ESP-team):  <arpi at thot.banki.hu>
  - player code (mpeg stream demultiplexer and avi/asf parser, A-V sync, seek...)
***************
*** 15,19 ****
  - opendivx decoder speed optimizations (see opendivx/ChangeLog)
  - OSD & SUB display code
- - everything that isn't listed elsewhere
  
  Zoltán Ponekker (Pontscho/Fresh!):  <pontscho at makacs.poliod.hu> 
--- 18,21 ----
***************
*** 33,37 ****
  
  Gábor Bérczi (Gabucino):  <gabucino at k2.jozsef.kando.hu>
! - documentation maintainer, hun-eng translator
  - documentation hungarian translation
  - webpage maintainer
--- 35,39 ----
  
  Gábor Bérczi (Gabucino):  <gabucino at k2.jozsef.kando.hu>
! - documentation maintainer
  - documentation hungarian translation
  - webpage maintainer
***************
*** 40,44 ****
  
  Szabolcs Berecz: <szabi at inf.elte.hu>
! - codecs.conf file, config file and command line parser
  - mga_vid fixes, module option stc.
  - fbdev support in libvo
--- 42,47 ----
  
  Szabolcs Berecz: <szabi at inf.elte.hu>
! - codecs.conf file parser
! - config file and command line parser
  - mga_vid fixes, module option stc.
  - fbdev support in libvo
***************
*** 80,84 ****
  - memcpy optimizations for AMD K7 and Intel Pentium III  (fastmemcpy.h)
  - CDROM tune info
! - further 3DNow! optimizations into mp3lib
  - russian DOCS translation
  
--- 83,87 ----
  - memcpy optimizations for AMD K7 and Intel Pentium III  (fastmemcpy.h)
  - CDROM tune info
! - further 3DNow! optimizations into mp3lib and libac3
  - russian DOCS translation
  
***************
*** 124,128 ****
  
  Mark Podlipec:
! - xanim author    [I'm using its aLaw audio decoder]
  
  Jutta Degener and Carsten Bormann:
--- 127,131 ----
  
  Mark Podlipec:
! - xanim author    [I'm using its aLaw+uLaw audio decoder]
  
  Jutta Degener and Carsten Bormann:


_______________________________________________
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