-
Mobilarena
Új hozzászólás Aktív témák
-
emitter
őstag
vajon miért nem működik az én kis pufferelő lejátszóm? belerakom a short típusú wav-adatokat egy listába, majd megvárom, míg eléggé feltöltődik, ezután elkezdem lejátszani
------
list<short> wavList;
...
if( ctrl == PLAY ){
numbytes = recv(data_fd, wav_buf, wi->bufsize*sizeof(short), 0);
if (numbytes == -1) {
perror(''recv'');
exit(0);
}
if (numbytes == 0){ //a kliens befejezte a beszelgetest
break;
}
if(buflevel > 16){
for(i=0; i < wi->bufsize; i++){
wav_buf = wavList.front();
wavList.pop_front();
}
if(snd_pcm_writei (wi->playback_handle, wav_buf, readbytes) < 0) {
cout << ''\nFehler\n'';
exit(0);
}
buflevel--;
}
for(i=0; i < wi->bufsize; i++){
wavList.push_back(wav_buf);
}
buflevel++;
}
...
---------
szóval: megvárom, míg 16 db lejátszanivaló adag összegyűlik a listában, ezután rakom vissza a listából
ha nem használok listát biztonsági pufferként, akkor rendesen lejátsza, de nekem kéne puffer
a másik, hogy ha a kliensben lepausézom a lejátszást, hirtelen megugrik a procihasználat és ott is marad - pedig a serverben és a kliensben is select-tel figyelem a hálózati aktivitást, és az elvileg nem eszik procit..
a források:
server: [link]
kliens: [link]
szerk: a pause funkció még nem okés, de sztem csak azért nem, mert nem működik még a biztonsági puffer, így ha pause-zott állapotában kap a server egy Play-jelet, előbb küldené a puffert a hangkártyának, mint átérkezett volna a friss adag wav...
[Szerkesztve]
Új hozzászólás Aktív témák
● olvasd el a téma összefoglalót!
- Polgári repülőgép-szimulátorok
- sziku69: Fűzzük össze a szavakat :)
- VR topik (Oculus Rift, stb.)
- Kerékpárosok, bringások ide!
- Sokat megélt veterán CPU-t hoz vissza a piacra az Intel
- Xiaomi 15 - kicsi telefon nagy energiával
- Everest / AIDA64 topik
- Soundbar, soundplate, hangprojektor
- Mini-ITX
- Foxpost
- További aktív témák...
- Acer TravelMate P214 i3-1115G4 16GB 512GB 14" FHD 1év garancia
- Azonnali készpénzes INTEL CPU AMD VGA számítógép felvásárlás személyesen / postával korrekt áron
- Samsung Galaxy S22+ 5G 128GB, Kártyafüggetlen, 1 Év Garanciával
- Gamer PC- Számítógép! Csere-Beszámítás! I3 10100F / RTX 2060 / 32GB DDR4 / 500GB SSD
- Lenovo V130-15IGM laptop (Pentium Silver N5000/8GB/256GB SSD
Állásajánlatok
Cég: PCMENTOR SZERVIZ KFT.
Város: Budapest
Cég: CAMERA-PRO Hungary Kft.
Város: Budapest