-
GAMEPOD.hu
Új hozzászólás Aktív témák
-
qestion
aktív tag
szabad_vagyok := [szerda];
rendel := [hetfo, szerda, pentek];
if rendel * szabad_vagyok <> [] then
Most ennek az utsó sornak mi az értelme?
Ha a rendel -szer szabad_vagyok nem egyenlő üreshalmaz, akkor :
?a pálya
-
emitter
őstag
válasz Jester01 #1498 üzenetére
emitter@LAPTOP:~/BME_nemet/Prog2/Nagyhazi$ ./wav2 hw:0,0
Szegmens hiba
emitter@LAPTOP:~/BME_nemet/Prog2/Nagyhazi$ gdb wav2
GNU gdb 6.3-debian
Copyright 2004 Free Software Foundation, Inc.
GDB is free software, covered by the GNU General Public License, and you are
welcome to change it and/or distribute copies of it under certain conditions.
Type ''show copying'' to see the conditions.
There is absolutely no warranty for GDB. Type ''show warranty'' for details.
This GDB was configured as ''i486-linux-gnu''...Using host libthread_db library ''/lib/tls/i686/cmov/libthread_db.so.1''.
(gdb) set args hw:0,0
(gdb) run
Starting program: /home/emitter/BME_nemet/Prog2/Nagyhazi/wav2 hw:0,0
[Thread debugging using libthread_db enabled]
[New Thread -1212152128 (LWP 9322)]
Program received signal SIGSEGV, Segmentation fault.
[Switching to Thread -1212152128 (LWP 9322)]
0xb7ea183c in snd_pcm_hw_param_set_near () from /usr/lib/libasound.so.2
(gdb) bt
#0 0xb7ea183c in snd_pcm_hw_param_set_near () from /usr/lib/libasound.so.2
#1 0xb7e98699 in snd_pcm_hw_params_set_rate_near () from /usr/lib/libasound.so.2
#2 0x08048a59 in main (argc=2, argv=0xbf935a74) at wav2.c:44
(gdb) quit
The program is running. Exit anyway? (y or n) y
emitter@LAPTOP:~/BME_nemet/Prog2/Nagyhazi$
a wav2 binárist az elején jó argumentummal indítottam?
mi az hogy szegmens hiba?
neked ez a progi működik?
itt van a jelenlegi wav2.c: [link] -
emitter
őstag
válasz Jester01 #1504 üzenetére
kirrály!!! megszólalt a hangszóróm! csak az egyetlen dolog ami beárnyékolja az örömömet, hogy végre sikerült hangot lejátszanom - az, hogy csak egy hangon zümmög, valami a bufferral nincs rendben
megnéznéd a wav2.c-t?
mekkora buffert érdemes foglalni neki, és milyen gyakran érdemes a kártyára küldeni a hangot? -
emitter
őstag
válasz emitter #1505 üzenetére
nagyon nem vagyok tisztában azzal, hogy végülis egy wavban milyen infó hol található (fejlécre gondolok), és hogy mi történik akkor, ha nem a neki megfelelő paraméterekkel játszom le... ez utóbbiról azt olvastam, h kárt is okozhat akár, szernecsére nekem csak idegesítő zaj jött a hangszórómból
itt találtam egy wav-felépítést: [link]
viszont nekem így néz ki a wav fájlom (eddig kettőt néztem meg, mindkettő fejléce azonos hosszú):
RIFF~DÝ^@^@WAVEfmt ^P^@^@^@^A^@^A^@^Q+^@^@''V^@^@^B^@^P^@data...
szóval a 40.-ik karakternél kezdődnek a tényleges adatok. Egyébként attól, hogy véletlenül a 44. karaktertől kezdem el lejátszani, attól még kéne szólnia, nem? csak legfeljebb ''kicsit'' később kezdve
segítsetek, mert egyedül nem tudok túljutni ezen a dolgon
ui: és arról sem találtam még infót, hogy mekkora buffert ajánlatos fenntartani, ez gondolom megegyezik azzal az adatmérettel, amit egyszerre kiküld a hangkártyának - ez mekkora legyen? próbálkoztam már 1-16384 bájtig, egyik se jött be, csak zümmögés...
mod: a wav fejlécénél ''fmt'' után egy szóköz van, és természetesen az egész fejléc egy sorban van
és felraktam a legújabb wav2.c-t
[Szerkesztve] -
Jester01
veterán
válasz emitter #1506 üzenetére
Az semmiképp nem egészséges, hogy minden buffert 10x játszol le
Amúgy úgy látom különbözõ library verziót használunk, mert nekem a rate beállító fv tényleg nem pointer vár (ezért is írtam tegnap, hogy nekem mûködött az eredeti változat). Cserébe viszont nekem nem szól
MOD: már legalább szól 16384 biztos sok volt neki. Alakulgat...
[Szerkesztve]Jester
-
Jester01
veterán
válasz Jester01 #1507 üzenetére
Múködik szépen.
Az snd_pcm_writei kereteket (frame) ír, vagyis oda feleakkora szám kell mint ahány minta (sample) van mert 2 csatornát használsz. Ha ezután sem jó, akkor ellenõrizd, hogy a teszt wav tényleg 44.1kHz (ez nem fontos, legfeljebb gyorsabb-lassabb lesz), stereo S16LE (ez fontos) formátumú:
> file t.wav
t.wav: RIFF (little-endian) data, WAVE audio, Microsoft PCM, 16 bit, stereo 44100 HzJester
-
emitter
őstag
válasz Jester01 #1508 üzenetére
nem értem ezt a paraméterezést!
pl. van egy PCM 16bit mono 11025Hz-es wavom, ezesetben mit mekkora értékűre állítsak?
snd_pcm_hw_params_set_format (playback_handle, hw_params, SND_PCM_FORMAT_S16_LE)
snd_pcm_hw_params_set_rate_near (playback_handle, hw_params, 11025, 0)
snd_pcm_hw_params_set_channels (playback_handle, hw_params, 2)
snd_pcm_writei (playback_handle, buf, 128)) !=128)
vagy egy másik wavnál: PCM 8bit mono 44100Hz - itt mekkorára állítsam a fentieket?
vagy tudnál adni egy linket, ahol ezek normálisan le vannak vezetve, hogy hova mekkora érték kell?
amúgy lejátsza a cuccot, csak kicsit érdekes hangon/gyorsasággal
és nem hw:0,0-val, hanem csal plughw:0,0-val (ez asszem konvertál, ha nem jók a paraméterek) -
emitter
őstag
válasz Jester01 #1510 üzenetére
hát eléggé nehezen tudtam rájönni a megoldásra, de szerencsére megvan a dolog
akkora buffer kell neki, amekkora a mintavét-freki kétszerese (mono 16bit esetben)
szóval most szépen lejátsza a wavokat, viszont lejátszás után ilyeneket ír ki:
write to audio interface failed (Unknown error 44096)
vagy
Szegmens hiba
a kód: [link]
egyébként azt nem nagyon értem, hogy hogyan tudja a wavot úgy lejátszani, hogy csak egyszer fread()-eli, és utána egyszer hívja az snd_pcm_writei()-t tehát nem is kell az egész köré a while(!feof(wav_handle)) {...}
ezt nem értem szóval hogyan fér bele a ~44kb-os pufferembe az egész hanganyag??
ui: most felraktam a puffer méretét 88200-ra, így szépen hiba nélkül lefut... viszont így egy nagyobb wav-stream esetében hogyan fogom megoldani tudni a álózaton való átküldést, ha ez egyszerre akarja kinyomni a hangkártyának a puffer tartalmát ... erre mi lehet a megoldás szerinted? -
emitter
őstag
válasz emitter #1511 üzenetére
az mitől lehet, hogy a progim más formátum-hosszt ismer fel egy adott wavnál, mint a 'file' progi
emitter@LAPTOP:~/BME_nemet/Prog2/Nagyhazi$ ./wav2 rexi.wav
Begin fileposition: 0
RIFF
10676
WAVE
fmt
format_length: 16
format_tag: 1
channels: 1
sample_rate: 44100
avg_bytes_sec: 44100
block_align: 0
bits_per_sample: 1
...
----------
emitter@LAPTOP:~/BME_nemet/Prog2/Nagyhazi$ file rexi.wav
rexi.wav: RIFF (little-endian) data, WAVE audio, Microsoft PCM, 8 bit, mono 44100 Hz
----------
és ezáltal persze rosszul is játsza le a rexi.wav-ot..
itt a kibővített kód [link], ugyanis átírtam, hogy ő olvassa ki a wav headerjéből az infókat... mindezt ezen az oldalon találtam: [link]
az az érdekes, hogy az írója szerint a 38.-ik bájttól már jön a wavban a 'data', szóval a hasznos rész, ezzel szemben az én wavomnál csak a 41.-ik bájt az első adatbájt
akkor a maradék 3 bájt mi lehet?
asszem erre az írásra mondtad Jester, hogy nem tudja a fazon, mit is csinál valójában, ez lehet, mert elég zavaros a dolog, pl szerinte köv. sor
fread(&bits_per_sample, sizeof(short), 1, fp); //8 bit or 16 bit file?
egy mintavétel méretét adja meg bitben. Ehhez képest nekem bits_per_sample: 1
mit javítsak a kódon, hogy jól felismerje a wav sample-méretét? -
Jester01
veterán
válasz emitter #1512 üzenetére
Mivel a te wavod a kiírás szerint csak 10676 byte így persze, hogy nem kell a ciklus hiszen egy bufferbe belefér Próbáld egy nagyobb fájllal.
Az snd_pcm_writei visszatérési értéke csak akkor hiba, ha kisebb mint 0. Egyébként a kiírt keretek számát adja vissza. Gondolom teljesen szabályos, ha alkalomadtán kevesebbet ír ki mint amennyit beadtál, ilyenkor feltehetõleg ciklusban újra kell próbálni. De olvasd el a doksit ezügyben.
Vszg azért kapsz segmentation fault-ot, mert többet íratsz ki a bufferbõl mint amekkora a mérete. Most már én is kezdek belezavarodni (persze én nem néztem utána), hogy minta (sample) vagy keret (frame) számot kell neki megadni.Jester
-
SimS
senior tag
válasz qestion #1499 üzenetére
Globális változót akkor ha azt cím szerint is átadod (functionokban és procedure-kban)...és az egész programod használja (meg az alprogram is)
Lokálist pedig csak az adott alprogram használja, tehát a külső programban nem szerepel, csak addig foglal a memóriában helyet ameddig az alprogi fut
[Szerkesztve]Your journey will not end well. You cannot change your fate... no man can BattleTag: hamboo#1540
-
emitter
őstag
válasz emitter #1512 üzenetére
tárgytalan a dolog, tényleg nagyon sz@r sorrendben és teljesen összevissza volt leírva a wav-file felépítése hogy lehet ilyen munkát kiadni valakinek a kezéből fejből, elméletben írta és soha ki nem próbálta
úgyhogy most szépen fut a progim, felismeri a wavokat - minden OK! [link]
most már csak annyi a problámám, hogy a lejátszás végén elég sokáig tart (5-6 mp), míg kilép a progiból... ez vajon mitől lehet?
mégegy dolog: szeretném kibővíteni majd a tudását mp3-ra is, tudtok mondani olyan libet, ami mp3-at tud dekódolni? mert eddig a neten sajna nem sok mindent találtam, persze keresek tovább, de azért ha tudtok kapásból ilyet, az jól jönne
emitter
mod: Jester, köszi szépen az infót, sokat segítettél ja, a kódom mostantól nem wav2.c, hanem a linkelt
[Szerkesztve] -
alienpapa
senior tag
Most kezdtem el javaval foglakozni de elakadtam. Próbálgatnék példaprogikat, de a Jcreator hibát ír ki mert extra csomag kell hozzájuk. Ez a csomag nekem meg is van, csak nem tudom hova kell bemásolni. Valaki tudna nekem segíteni?
''Science has failed our mother Earth.'' - S.O.A.D.
-
robisz
senior tag
válasz alienpapa #1517 üzenetére
Ha jar-ról van szó, akkor be kell tenni őket a CLASSPATH környezeti változóba.
Erre egészen biztos, hogy a JCreator is lehetőséget nyújt bár nem ismerem...
Vannak más lehetőségek is: a java.exe-nek megadhatod őket a -classpath
vagy -cp paraméterrel. (Egyébként kezdőként szerintem megéri csak a parancssoros
java-t használni mindenféle IDE nélkül, sokat lehet belőle tanulni )
Harmadik lehetőség, ha a jar-t bemásolod a jdk ''jre/lib/ext'' könyvtárába de ezt
nem ajánlom mert előbb utóbb rengeteg szemét lesz ott... -
emitter
őstag
válasz emitter #1515 üzenetére
méretesebb (100kb-nál nagyobb) wavoknál nem jó a lejátszás a buffer méretét nem sikerül eltalálni. Az a baj, hogy eddig sehol nem találtam normális leírást arról, hogy mekkora is kell legyen a puffer mérete - ami gondolom a mintavételi frekitől/ minták méretétől/ csatornák számától függ.
általában elkezdi lejátszani, és kis idő után - az első puffer kiírása után - elkezd akadozni, recsegni, stb...
most így néz ki a kód: [link]
amúgy és azt sem értem, hogy bármelyik wav végén mindig azt írja ki, hogy ''Hiba fajlolvasas kozben!'' Egy tipp: ez attól lehet, hogy a puffer mérete nem egész-számszorosa a hang-adat méretének, ezért picit hamarabb abbahagyja a lejátszást? Mondjuk ez néha hallható is, hogy nem fejezi be teljesen a wavot. -
Jester01
veterán
-
zordmorc
csendes tag
sziasztok.
Tudja valaki, hogy javaban az interruptedexception kivétel mikor váltodik ki.
Azt tudom hogy szálakhoz kel csak azt nem miért váltodhat ki -
robisz
senior tag
válasz zordmorc #1521 üzenetére
Röviden: az InterruptedException akkor váltódik ki, ha valaki meghívja
a szál interrupt() metódusát.
Bövebben: Ha egy szál blokkol állapotba kerül (a sleep, a wait vagy a join
metódus hatására) akkor meg lehet szakítani az interrupt metódus hívásával.
Az interrupt metódus hatására a szálban egy InterruptedException váltódik
ki, és a programozóra van bízva, hogy mit kezd vele...
Ha szeretnéd az interrupt metódussal megszakítani a szálat, akkor a
kivétel hatására lépj ki a szálból (''return'').
Ha nem használod az interrupt metódust, akkor a kivétel sosem fog bekövetkezni
tehát figyelmen kivül hagyható (egy üres catch blokkal.)
Remélem segített -
tkazmer
addikt
Szerintetek VB.neteben azt hogy csináljam meg, hogy a szövegdoboz tartalma azonos legyen a webbongésző url-jével?
Igy próbáltam:
TextBox1.Text= WebBrowser1.Url
ill fordítva, de a fordító(vb.net 2005 express edition) nem fogadta el, a vb.net fekete könyvemben meg nem találtam erre utaló részt, hogy hogy kell pontosan, ezért csak ezzel a sajátos lehetőséggel próbálkoztam.úgy tervezték, hogy kibirjon egy atomtámadást is. De nekünk komolyabb fegyvereink vannak, mint pl Béla bá, a földmunkagépkezelő
-
tkazmer
addikt
Ja, a TextBox1.Text= WebBrowser1.Url-t a form load eseménykezelőjébe vagy milyébe írtam
úgy tervezték, hogy kibirjon egy atomtámadást is. De nekünk komolyabb fegyvereink vannak, mint pl Béla bá, a földmunkagépkezelő
-
emitter
őstag
egy folyamat egyszerre csak egy porton tud kommunikálni?
azt szeretném valahogy megoldani, hogy a kliensprogim ne csak a wav-streamet küldje át a szervernek, hanem egyfajta vezérlőjeleket is, amivel tudnám utasítani mondjuk a wav megállítására, új wav lejátszására, stb.
mindezt persze valahogy párhuzamosan kéne megcsinálni, hogy épp lejátszás közben is tudjak más parancsot küldeni a szervernek.. -
s1ny1
tag
c programozásban lenne olyan kérdésem, hogy hogyan kell véletlen szám generálásnál megadni az intervallumot [-500, 500]? lehetőleg random függvénnyel kellenne, de ha csak a rand-dal megy az sem baj. kösz
-
emitter
őstag
válasz emitter #1531 üzenetére
hát nem teljesen világos ez a select:
ha 2 fájlleíró közül akarok selectelni, azt hogyan - szerver- és kliensoldalon is kell 1-1 select?
szerveren (ez fogadja az adatot) readfds, kliensen meg writefds?
a select milyen gyakran nézi meg, hogy melyik bemeneten jött adat?
és egyáltalán szintaktikailag hogyan kell használni? ez így jó lesz:
while(1){
select(sockfd1+1, &readfds, NULL, NULL, NULL);
if(IS_SET(sockfd1, &readfds)){...} //sockfd1 fogad adatot
else{...} //sockfd2 fogad adatot
} -
emitter
őstag
válasz emitter #1532 üzenetére
fel!
szóval az elképzelésem mégegyszer a következő:
-kliensprogi wav-játszás közben figyeli a select()-tel a standard inputot, ha mondjuk azt írom, hogy ''pause'', akkor a szervernek küld egy pasue-nek megfelelő vezérlőjelet, mire a szerver leállítja a wav-játszást, stb.
Szóval lenne két socketem, egy vezérlő- és egy adat-socket. Odáig rendben, hogy mind kliens-, mind szerveroldalon kell 1-1 select a fő-ciklusban, a kérdés, hogy konkrétan hogyan valósítsam meg a dolgot...
nem értem pontosan, hogyan is működik a select()... ez itt a baj -
Miracle
senior tag
válasz emitter #1534 üzenetére
Hello. Az a velemenyem, hogy nem tudsz programozni, es egy nagyon nagy faba vagtad a fejszed, eloszor meg kellene tanulni algoritmusokat alkotni magadtol, megerteni, hogyan mukodik legalabb a nyelv, es utana lehet ilyen dolgokkal foglalkozni, de szemmel lathatolag a C nyelvi ismereteid finoman szolva hianyosak, a programozasi kornyezetrol meg kevesebbet tudsz, az meg hogy olyan kerdesekkel allsz itt elo, hogy melyik cilusba mit kell tenni arra enged kovetkeztetni, hogy ugy altalaban veve nem tudsz programozni. Most lehet hogy en vagyok a fasz, de igy sosem fogsz megtanulni, amit muvelsz az heggesztes, es mivel fingod sincs mit csinalsz nem is tanulsz belbelole semmit. Tanulni normalis, emberi mertekben merheto lepcsokben kell, mashogy nem lehet, es szerintem erdemes volna eloszor legalabb a nyelvvel, a fejlesztesi/futtatasi kornyezettel annyira baratsagba kerulni, hogy hogy magadtol meg tudd nezni egy-egy fv. dokumentaciojat ahelyett hogy ide irnal olyan kerdeseket, amelyekre nagyjabol 3 sor elolvasasa utan tudnad a valaszolni.
értelmező késziszótár :: rekurzió --> lásd : rekurzió
-
emitter
őstag
válasz Miracle #1535 üzenetére
majdnem teljesen igazad van, de most már nem tudok ettől a vállalt feladattól visszalépni, és nem is igazán akarok, valahogy csak kiizzadom még van idő...
az lehet, hogy a select-nek nincs man-ja a gépemen? (2.6.12 kernel, g++ elfogadja, és működik is a programban), de man select nem működik
kerestem guglin egy csomó helyen a selectnek bármiféle doksiját, de nem találtam semmi jót... szóval ha tudtok, nyugodtan kisegíthettek ilyesmivel - persze közben még én is tovább keresek -
emitter
őstag
válasz emitter #1536 üzenetére
Úgy látom, mégsem biztos, hogy jó a select() az én helyzetemben, ugyanis ugye minden egyes ciklusiterációban meg kéne néznie a selectnek, hogy éppen melyik socket küld neki adatot (a vezérlő-, vagy az adat-socket), és ha utóbbi küldi, akkor fogadni, belerakni a pufferba, majd újra előlről kezdeni a figyelést... nem lesz ez túl lassú folyamat?
Ezt csak azért kérdezem, mert gőzöm sincs, hogy a processzor szempontjából ez mennyi időt vesz igénybe, nem fog-e egy idő után kiürülni a puffer az ''adatátvitel lassúsága'' miatt nemtudom, érhető-e a kétségem?
vagy inkább azt a megoldást válasszam, hogy az adatokat becsomagolom, mindig megvizsgálom a fejlécét, és ha vezérlőcsomag érkezik, akkor azalapján döntök a lejátszásról, stb...
melyik lenne a gyorsabb megoldás - vagy mindkettő megfelelő nekem? -
Jester01
veterán
válasz emitter #1537 üzenetére
Valami telepítési gubanc lehet nálad, ha nincs doksi.
info libc ''waiting for i/o'' vagy online itt: [link]
A select nem eszik procit. Arra kell vigyázni, hogy a hang lejátszás ne blokkolja a vezérlést. Igy hasraütésre nekem az egy adatfolyam beágyazott vezérlõjelekkel szimpatikusabb, talán kevesebb baj van vele.Jester
-
ALI_G
veterán
Hi!
Érdeklődnék, hogy egy .wav fájl fájl-t csatornákra szétbontani mennyire nehéz/egyszerű, egy objektum orientált nyelvben? -
ALI_G
veterán
válasz Jester01 #1541 üzenetére
Van egy rakat fajta kötprogi, és 4 fajta nyelv közül lehet választani: prolog (logikai), occam (párhuzamos), haskell (funkcionális) és smalltalk (OO).
A prologot nem merem választani, bár egyenlőre ezt értem a legjobban. Nem sok progit adnak meg, amihez ez a nyelv jól használható.
occam: na ezt még nem is vettük, ezért főleg nem merek ebből választani.
haskell: gyakon nem értettem meg igazán.
smalltalk: ezt felfogtam többé kevésbé, csak elsőre túlságosan OO-nak néz ki (még a számok is objektumok), ha jól emléxem, ez az OO nyelvek őse, de legalább is az egyik. Ebből merném bevállalni vmelyik kötprogit.
A gondom, hogy wav-hoz azon kívül, hogy lejátszom nem értek, de sejtem, hogy nem egy nehéz művelet lehet egy hangcsatornákra bontás.
Szóval OO-ban, hogy is nézne ki kb. röviden a csatornákra bontás, hogy kell neki kezdeni. Van erről vmi leírás magyarul, hogy a wav fájlok, hogy néznek ki belülről, mik választják el a dolgokat. stb. Ha logikailag adnátok egy kis tanácsot merre induljak, feltehetőleg magam is rájönnék (ez csak egy gyenge sejtés de remélem nem tévedek). -
Jester01
veterán
Emitter kollega fentebb pont wav fájlokat töltöget be, igaz c-ben.
Mindenesetre a wav file elején egy header van amibõl ki lehet olvasni a paramétereket.
Utána az adatok jönnek, minden mintavételi idõponthoz az összes csatorna egymás után.
Tehát pl. 16 bites 2 csatornás wav adatrészébõl úgy csinálsz 1 csatornát, hogy 2 byteot megtartasz és a következõ kettõt eldobod, sít. Értelemszerûen a fejlécben pedig átírod a csatornák számát 1-re. (Hozzáteszem, hogy a wavban nem csak tömörítetlen adatfolyam lehet, de gondolom a feladatban ezt feltételezheted.)
Aztán hogy ezt hogyan lehet beletuszkolni egy OO programnyelvbe azt sajnos nem tudom.Jester
-
Forest_roby
őstag
hi!
c nyelven irott alap progi:
#include <stdio.h>
#include <math.h>
int main(){
double x = 1;
for(x = 1; x<=10 ; x++){
printf(''%d\n'',sqrt(x));
}
}
forditas:
gcc -lm gyokx.c -o gyokx
gyok1, gyok2 ..... gyok10 -et akartam kiiratni, de vmi badarsagot irt ki.
A kerdes az, hogy mi a hiba? Valszeg az sqrt -t rosszul hasznalom, de hogy kell helyessen hasznalni?
Elore is koszi a segitsegeket!-=Legyél Laza!=- __ ''Have you tried turning it off and on again?'' __ ''Is it definitely plugged in?'' /o\ :D:D
-
Forest_roby
őstag
válasz Forest_roby #1544 üzenetére
megvan a hiba
%d helyett %f -et kellett volna irnom-=Legyél Laza!=- __ ''Have you tried turning it off and on again?'' __ ''Is it definitely plugged in?'' /o\ :D:D
-
emitter
őstag
getch() miért nem működik nekem linuxon?
olvastam, hogy a curses.h-val meg lehet csinálni, de hogyan...
nekem ilyet ír ki #include ''curses.h'' mellett a getch()-re:
emitter@LAPTOP:~/sdl-talk$ gcc -Wall -lSDL -lSDL_mixer -o mixer-demo mixer-demo.c
/tmp/cc0ENjYn.o: In function `main':
mixer-demo.c.text+0x86): undefined reference to `stdscr'
mixer-demo.c.text+0x8f): undefined reference to `wgetch'
collect2: ld returned 1 exit status
milyen opcióval fordítsam, hogy jó legyen?
thx -
emitter
őstag
és egy másik kérdés
nem nagyon értek sajnos a headre-fájlokhoz, ezért fordulok ide:
van ez az sdl_mixer.h [link]
ebben pedig a mixloadmus() fv
extern DECLSPEC Mix_Music * SDLCALL Mix_LoadMUS(const char *file);
viszont mixer.h a beinklúdolt többi headerjében nem igazán találom a fv definícióját... pedig szeretném megnézni, mit csinál pontosan - hol találhatom meg szerintetek ezt?
bocs ha láma a kérdés, és köszi előre is!
ui. egyébként azt akarom megtudni, melyik fv olvassa be - gondolom egy pufferből - a lejátszandó streamet, ugyanis ez az sdl (ha jól láttam) közvetlenül játsza a zenét, nem enged pufferszinten manipulálni - nekem pedig a hálózati átvitelhez pont ez kéne
mod: izé, kicsit utánajártam az előző kérdésemnek és -lncurses-sel jól efordul, viszont a getch() valami miatt nem működik nem csinálja azt, amit kéne, még ha utána entert ütök, se..
[Szerkesztve]
Új hozzászólás Aktív témák
● olvasd el a téma összefoglalót!
- Dell 5820: Intel Xeon W-2135, 64GB DDR4, 256GB NVMe SSD, Nvidia Quadro P600, USB 3.1 C/A, ÁFÁs
- Eladó alig használt benq Zowie xl 2411P kihasználatlanság miatt karcmentes, tökéletes állapotban
- Honor X6a 128GB, Kártyafüggetlen, 1 Év Garanciával
- Samsung Galaxy S23 Ultra 5G 256GB, Kártyafüggetlen, 1 Év Garanciával
- iPhone 15 Pro Max 256GB