amiga-news ENGLISH VERSION
.
Links| Forum| Kommentare| News melden
.
Chat| Umfragen| Newsticker| Archiv
.

amiga-news.de Forum > Suche [ - Suche - Neue Beiträge - Registrieren - Login - ]

Erste << 34 35 36 37 38 -39- 40 41 Ergebnisse der Suche: 1229 Treffer (30 pro Seite)
Der_Wanderer   Nutzer

27.02.2007, 16:29 Uhr

[ - Direktlink - ]
Thema: Library für MODs
Brett: Programmierung

Hallo Alle!

Ich würde gerne Support für MODs in AB3 einbauen, und zwar via AHI, dass man keine Custom Chips benötigt.

Wenn ich den Audio Renderer nicht selbst schreiben will, bin ich auf eine Amiga Shared Library angewiesen, die audio Daten erzeugt und mir zur Verfügung stellt. D.h. ich suche keine klassische Replayer Library, die die Mods direkt über Paula abspielt.

Ich habe im Aminet ein bisschen rumgestöbert, aber nicht viel gefunden, ausser der ptplay.library.

Kenn jemand eine geeignete Library ? Oder eine Lib für OS4/MOS die man für 68k portieren könnte ?

Es gibt da noch die "dumblib" für C, das ist aber keine Amiga library. Evtl. könnte man die als Library convertieren.


--
Thilo Köhler, Author von:
HD-Rec, Samplemanager, ArTKanoid, Monkeyscript, Toadies, AsteroidsTR, TuiTED, PosTED, TKPlayer, TKUnpacker
Homepage: http://www.hd-rec.de

 
Der_Wanderer   Nutzer

26.02.2007, 18:58 Uhr

[ - Direktlink - ]
Thema: Swappen von Bitmaps
Brett: Programmierung

> Flackern oder Durchlauf? Ich wollt Dir sowieso mal ein kleines
> Programm schicken, das mit ChangeScreenBuffer() arbeitet und auf
> dem WinUAE sowie OS4 recht ordentlich aussieht. Ich hoffe, ich
> denke heut Nachmittag dran.
@whose

Danke. Sieht sehr smooth aus.
Um es richtig beurteilen zu können musste aber was Fullscreen scrollen.

Wie hast du das Timing gemacht? Macht ChangeScreenBuffer das automatisch ?

Ich habe gesehen, dass du zwei Screen Buffer allocierst, und die dblinfo auch noch selbst. Laut RKM brauch tman aber nur einen Screenbuffer, oder sehe ich das falsch ?

Ich schaue mir nochmal deinen Code genauer an, vielleicht bekomme ich es ja dann auch hin.

--
Thilo Köhler, Author von:
HD-Rec, Samplemanager, ArTKanoid, Monkeyscript, Toadies, AsteroidsTR, TuiTED, PosTED, TKPlayer, TKUnpacker
Homepage: http://www.hd-rec.de

 
Der_Wanderer   Nutzer

26.02.2007, 14:09 Uhr

[ - Direktlink - ]
Thema: Blade MP3 Library V1.0 fertig gestellt
Brett: Programmierung

Die ID3 Tags sind da.
Dann werde ich nochmal eine Runde debuggen müssen.

Noch eine Frage:
Die Sampleraten müssen stimmen (also 32000, 44100 oder 48000), die werden nicht konvertiert, oder?

also, wenn ich z.B. 22.05kHz angebe ?

--
Thilo Köhler, Author von:
HD-Rec, Samplemanager, ArTKanoid, Monkeyscript, Toadies, AsteroidsTR, TuiTED, PosTED, TKPlayer, TKUnpacker
Homepage: http://www.hd-rec.de

 
Der_Wanderer   Nutzer

26.02.2007, 13:40 Uhr

[ - Direktlink - ]
Thema: Blade MP3 Library V1.0 fertig gestellt
Brett: Programmierung

Hallo Micha!

Ich hab die blademp3 lib jetzt in Amiblitz3 eingebaut.

Ich habe allerdings noch ein Problem:

Bei der endodierten Datei fehlen immer ca. 0.5-1sec am Ende. Evtl. liegt der fehler bei mir, aber vielleicht geht auch in der Lib was schief. Hast du das mal eingehend getestet ?

Was mir auch noch aufgefallen ist, die GetError Funktion sollte den BALDEMP3_CTRL handle als Argument haben. Wenn die lib (hoffenlich) mal Multitasking fähig wird, ist das notwendig, sonst weiss die Funktion ja nicht welcher Encoding stream gemeint ist.

Auch wenn du es im Moment noch nicht brauchst, sollte das schonmal rein, damit man später die API gleich lassen kann.

Ansonsten tolle Arbeit, danke!

--
Thilo Köhler, Author von:
HD-Rec, Samplemanager, ArTKanoid, Monkeyscript, Toadies, AsteroidsTR, TuiTED, PosTED, TKPlayer, TKUnpacker
Homepage: http://www.hd-rec.de

 
Der_Wanderer   Nutzer

22.02.2007, 20:46 Uhr

[ - Direktlink - ]
Thema: AGA<->CyberGraphX: Buffer
Brett: Programmierung

Also die Grafikkarte sollte beim Zeichnen viel schneller als AGA sein. Das siehtst du schon daran, dass SetRast kaum was ausmacht auf der Graka.
Teste doch mal, wie lange Draw braucht bei dir.
Zeichne einfach 100000 Linien und gebe die Zeit aus. Oder messe das mit SysSpeed.

--
Thilo Köhler, Author von:
HD-Rec, Samplemanager, ArTKanoid, Monkeyscript, Toadies, AsteroidsTR, TuiTED, PosTED, TKPlayer, TKUnpacker
Homepage: http://www.hd-rec.de

 
Der_Wanderer   Nutzer

21.02.2007, 13:22 Uhr

[ - Direktlink - ]
Thema: Swappen von Bitmaps
Brett: Programmierung

Ich habe 5 DoubleBuffer Methoden implementiert:

- Single Buffering
- ScrollVP
- ChangeVPBitmap
- ChangeScreenBuffer
- BltBitmapRastPort

Das erste ist natürlich kein DoubleBuffering und flackert, aber der Informatiker braucht sowas halt ;-)

Auf WinUAE verhält es sich so:
ChangeScreenBuffer und ChangeVPBimtap sind gleich schnell (z.B. 100FPS), wobei ich ChangeScreenBuffer nie richtig hinbekommen habe, also so dass es nicht flackert. ChangeVPBitmap funktioniert tadellos.

ScrollVP ist noch einen Tick schneller (110 FPS), am schnellsten mit dem Screenhack (120 FPS), also 2x so hoher Screen statt zwei Bitmaps.

BltBitmapRastPort ist am langsamsten (80FPS), aber immer noch recht ordentlich, und scheint auf allen Systemen einigermassen gleich zu performen. Diese Method braucht man im Window modus.

Was man genau nutzt, kann man sich als Programmierer aussuchen.
Für BltBitmapRasPort gibt es noch einen "smart" modus, wo nur veränderte Bereiche geupdated werden. Das ist dann sehr schnell bei Spielen mit wenigen Objekten und ohne Scrolling. Bei vielen Objekten oder Scrolling muss man soweiso immer den ganzen Screen updaten.





--
Thilo Köhler, Author von:
HD-Rec, Samplemanager, ArTKanoid, Monkeyscript, Toadies, AsteroidsTR, TuiTED, PosTED, TKPlayer, TKUnpacker
Homepage: http://www.hd-rec.de

 
Der_Wanderer   Nutzer

21.02.2007, 12:09 Uhr

[ - Direktlink - ]
Thema: Swappen von Bitmaps
Brett: Programmierung

> "Wow!"
Danke!

Ja, ich habe schon viel mit Graka rumgespielt, und es ist schon erstaunlich wie "zerbrechlich" das System ist. Ein Flag falsch gesetzt und alles ist gleich nur noch halb so schnell.
Leider verhalten sich die verschiedenen Plattformen aber nicht gleich, deshalb ist es schwer eine Engine zu proggen die überall vernünftige FPS erreicht.

Das Ergebnis ist in die dbl.include eingeflossen, eine 2D Game API für Amiblitz. AsteroidsTR ist quasi das Demo Spiel dafür. BlackShoot ist glaube ich auch damit gemacht, sonst hat leider noch niemand was damit programmiert. Schade, denn damit ist es ziemlich leicht ein 2D Spiel zu proggen, was selbst auf einem Classic flüssig läuft in 640x480x16 und "smooth" scrollen kann, selbst im Window Modus auf der WB. Mit SDL kommt man nie so schnell, weil alles im RAM gebastelt wird und auf die Graka geschoben wird. Bei 320x240 ist da Schluss, zumindest auf dem Classic.

WritePixelArray solle aber auf jeden Fall gleich schnell oder schneller als ein CopyMem sein. Warum solle es langsamer sein ?
Es ist ja genau für diese Aufgabe gemacht und nutzt u.U. vorhandene Hardware Beschleunigung aus.

--
Thilo Köhler, Author von:
HD-Rec, Samplemanager, ArTKanoid, Monkeyscript, Toadies, AsteroidsTR, TuiTED, PosTED, TKPlayer, TKUnpacker
Homepage: http://www.hd-rec.de



[ Dieser Beitrag wurde von Der_Wanderer am 21.02.2007 um 12:11 Uhr geändert. ]
 
Der_Wanderer   Nutzer

21.02.2007, 11:27 Uhr

[ - Direktlink - ]
Thema: AGA<->CyberGraphX: Buffer
Brett: Programmierung

Mess doch mal wieviel Zeit du bei den Zeichenoperationen verbrauchst, und wieviel beim Blitten.
Die Graka sollte um Welten schneller sein als AGA.
Oder nehm mal den Code zum zeichnen raus, und messe nur das Double Buffering. Eine Graka sollte da mindestens auf 100FPS oder mehr kommen.
Ich würde auch, so wie ich weiter oben gepostet habe, einen Layer anlegen, damit du nicht ins Nirvana malst. Evtl. bringt das einen Slow-Down.
Auch das DISPALYABLE Flag würde ich gesetzt lassen.


--
Thilo Köhler, Author von:
HD-Rec, Samplemanager, ArTKanoid, Monkeyscript, Toadies, AsteroidsTR, TuiTED, PosTED, TKPlayer, TKUnpacker
Homepage: http://www.hd-rec.de

 
Der_Wanderer   Nutzer

20.02.2007, 19:20 Uhr

[ - Direktlink - ]
Thema: Anfängerfrage: Wie linke ich eine .a Datei ?
Brett: Programmierung

Ok, also meine test.library geht.

Ich linke jetzt allerdings mit dem GCC im aktuellen Verzeichnis:

GCC -noixemul -nostartfiles -o test.library #?.o

d.h. mein Library code stimmt schonmal.

Wenn ich genau so meine dumb.library linke, bekomme ich "nur" noch folgendes:

(die Link Fehler mit dem duh_... sind von mir, ich habe éine .o Datei noch nicht korrekt erzeugt, aber die Mathematischen Befehle und die Libbase Sachen stören mich...)

32.Work:Sourcecodes/dumb> gcc -noixemul -nostartfiles -o dumb.library #?.o libdumb68k.a
dumb_funcs.o(.text+0x8e): undefined reference to 'undload_duh'
dumb_funcs.o(.text+0xb0): undefined reference to 'duh_start_sigrenderer'
dumb_funcs.o(.text+0x176): undefined reference to 'duh_end_sigrenderer'
libdumb68k.a(.text+0x1160): undefined reference to 'duh_start_sigrenderer'
libdumb68k.a(.text+0x118a): undefined reference to 'duh_sigrenderer_get_n_channels'
libdumb68k.a(.text+0x11ea): undefined reference to 'duh_sigrenderer_generate_samples'
libdumb68k.a(.text+0x1342): undefined reference to 'duh_sigrenderer_get_n_channels'
libdumb68k.a(.text+0x135e): undefined reference to 'duh_sigrenderer_get_position'
libdumb68k.a(.text+0x137a): undefined reference to 'duh_end_sigrenderer'
libdumb68k.a(.text+0x2cea): undefined reference to 'exit'
libdumb68k.a(.text+0x553a): undefined reference to 'pow'
libdumb68k.a(.text+0x55ba): undefined reference to 'exp'
libdumb68k.a(.text+0x680a): undefined reference to 'pow'
libdumb68k.a(.text+0x687e): undefined reference to 'pow'
libdumb68k.a(.text+0xa70c): undefined reference to 'pow'
libdumb68k.a(.text+0xa7a6): undefined reference to 'pow'
libdumb68k.a(.text+0xa8a8): undefined reference to 'pow'
libdumb68k.a(.text+0xbb80): more undefined references to 'pow' follow
libdumb68k.a(.text+0xcd68): undefined reference to 'duh_encapsulate_raw_sigrenderer'
libdumb68k.a(.text+0xcd8c): undefined reference to 'duh_get_raw_sigrenderer'
libdumb68k.a(.text+0xd762): undefined reference to 'log'
libdumb68k.a(.text+0xd77a): undefined reference to 'log'
libdumb68k.a(.text+0xd7ae): undefined reference to 'floor'
libdumb68k.a(.text+0xd972): undefined reference to 'pow'
libdumb68k.a(.text+0x107e2): undefined reference to 'pow'
libdumb68k.a(.text+0x10812): undefined reference to 'pow'
libdumb68k.a(.text+0x11bc4): undefined reference to 'pow'
libdumb68k.a(.text+0x11be8): undefined reference to 'floor'
libdumb68k.a(.text+0x12850): undefined reference to 'floor'
libdumb68k.a(.text+0x1827c): undefined reference to 'floor'
libdumb68k.a(.text+0x1895a): undefined reference to 'floor'
libdumb68k.a(.text+0x189ae): undefined reference to 'floor'
libdumb68k.a(.text+0x1fcf6): more undefined references to 'floor' follow
/gg/lib/libnix/libnix.a(__mulsi3.o)(.text+0x8): undefined reference to '__UtilityBase'
/gg/lib/libnix/libnix.a(__stdio.o)(.text+0x40): undefined reference to 'exit'
/gg/lib/libnix/libnix.a(abort.o)(.text+0x38): undefined reference to 'exit'
/gg/lib/libnix/libnix.a(__floatsidf.o)(.text+0x4): undefined reference to '__MathIeeeDoubBasBase'
/gg/lib/libnix/libnix.a(__muldf3.o)(.text+0x6): undefined reference to '__MathIeeeDoubBasBase'
/gg/lib/libnix/libnix.a(__adddf3.o)(.text+0x6): undefined reference to '__MathIeeeDoubBasBase'
/gg/lib/libnix/libnix.a(__truncdfsf2.o)(.text+0x4): undefined reference to '__MathIeeeDoubTransBase'
/gg/lib/libnix/libnix.a(__subsf3.o)(.text+0x4): undefined reference to '__MathIeeeSingBasBase'
/gg/lib/libnix/libnix.a(__divsf3.o)(.text+0x4): undefined reference to '__MathIeeeSingBasBase'
/gg/lib/libnix/libnix.a(__eqsf2.o)(.text+0x4): undefined reference to '__MathIeeeSingBasBase'
/gg/lib/libnix/libnix.a(__mulsf3.o)(.text+0x4): undefined reference to '__MathIeeeSingBasBase'
/gg/lib/libnix/libnix.a(__addsf3.o)(.text+0x4): undefined reference to '__MathIeeeSingBasBase'
/gg/lib/libnix/libnix.a(__fixsfsi.o)(.text+0x4): more undefined references to '__MathIeeeSingBasBase' follow
/gg/lib/libnix/libnix.a(__divsi3.o)(.text+0x14): undefined reference to '__UtilityBase'
/gg/lib/libnix/libnix.a(__divdf3.o)(.text+0x6): undefined reference to '__MathIeeeDoubBasBase'
/gg/lib/libnix/libnix.a(__fixdfsi.o)(.text+0x4): undefined reference to '__MathIeeeDoubBasBase'
/gg/lib/libnix/libnix.a(__extendsfdf2.o)(.text+0x4): undefined reference to '__MathIeeeDoubTransBase'
/gg/lib/libnix/libnix.a(__udivsi3.o)(.text+0x14): undefined reference to '__UtilityBase'
/gg/lib/libnix/libnix.a(freopen.o)(.text+0x3a): undefined reference to '__DOSBase'
/gg/lib/libnix/libnix.a(freopen.o)(.text+0x4a): undefined reference to '__DOSBase'
/gg/lib/libnix/libnix.a(freopen.o)(.text+0x74): undefined reference to '__DOSBase'
/gg/lib/libnix/libnix.a(freopen.o)(.text+0x80): undefined reference to '__DOSBase'
/gg/lib/libnix/libnix.a(raise.o)(.text+0x82): undefined reference to 'exit'
/gg/lib/libnix/libnix.a(open.o)(.text+0x96): undefined reference to '__DOSBase'
/gg/lib/libnix/libnix.a(open.o)(.text+0xf0): undefined reference to '__DOSBase'
/gg/lib/libnix/libnix.a(open.o)(.text+0x108): undefined reference to '__DOSBase'
/gg/lib/libnix/libnix.a(open.o)(.text+0x146): undefined reference to '__DOSBase'
/gg/lib/libnix/libnix.a(open.o)(.text+0x180): undefined reference to '__DOSBase'
/gg/lib/libnix/libnix.a(open.o)(.text+0x1b0): more undefined references to '__DOSBase' follow
/gg/lib/libnix/libnix.a(open.o)(.text+0x26c): undefined reference to '_WBenchMsg'
/gg/lib/libnix/libnix.a(open.o)(.text+0x274): undefined reference to '__DOSBase'
/gg/lib/libnix/libnix.a(open.o)(.text+0x2c0): undefined reference to '__DOSBase'
/gg/lib/libnix/libnix.a(open.o)(.text+0x2d8): undefined reference to '__DOSBase'
/gg/lib/libnix/libnix.a(open.o)(.text+0x234): undefined reference to 'exit'
/gg/lib/libnix/libnix.a(__seterrno.o)(.text+0xc): undefined reference to '__DOSBase'
collect2: ld returned 1 exit status
32.Work:Sourcecodes/dumb>


--
Thilo Köhler, Author von:
HD-Rec, Samplemanager, ArTKanoid, Monkeyscript, Toadies, AsteroidsTR, TuiTED, PosTED, TKPlayer, TKUnpacker
Homepage: http://www.hd-rec.de

 
Der_Wanderer   Nutzer

20.02.2007, 16:24 Uhr

[ - Direktlink - ]
Thema: Anfängerfrage: Wie linke ich eine .a Datei ?
Brett: Programmierung

Dann formuliere ich meine Frage anders:

Wie würdet ihr vorgehen, um dieses "dumb" Biest in eine library zu verwandeln?

Das Grüst einer Library habe ich bereits. Ich brauche auch nicht alle Funktionen der dumb lib, sondern nur eine handvoll, die ich als C Funktionen eingepackt habe.


--
Thilo Köhler, Author von:
HD-Rec, Samplemanager, ArTKanoid, Monkeyscript, Toadies, AsteroidsTR, TuiTED, PosTED, TKPlayer, TKUnpacker
Homepage: http://www.hd-rec.de

 
Der_Wanderer   Nutzer

20.02.2007, 16:20 Uhr

[ - Direktlink - ]
Thema: Anfängerfrage: Wie linke ich eine .a Datei ?
Brett: Programmierung

> Außerdem sind die Einsprungpunkte einer Link-Library nicht automatisch als Amiga-Libraryfunktionen verfügbar, ein solchermaßen kompiliertes Binary wäre komplett nutzlos.
Das ist mir klar. Ich schreibe auch nicht zum ersten mal eine Library. Den Function-Table etc. habe ich aufgestellt und Wrapper Funktionen geschrieben, die dann die Funktionen aus dem Dumblib Sourcecode/.a File aufrufen.


--
Thilo Köhler, Author von:
HD-Rec, Samplemanager, ArTKanoid, Monkeyscript, Toadies, AsteroidsTR, TuiTED, PosTED, TKPlayer, TKUnpacker
Homepage: http://www.hd-rec.de

 
Der_Wanderer   Nutzer

20.02.2007, 16:00 Uhr

[ - Direktlink - ]
Thema: Anfängerfrage: Wie linke ich eine .a Datei ?
Brett: Programmierung

Ok, mit -nixemul und -nostartfiles kann ich alles zusammenlinken.
Das Ergebnis lässt sich aber nicht als library öffnen :-(
Irgendwas habe ich wohl noch falsch gemacht. Ich werde die lib Funktionalität mal mit ein paar Dummy funktionen testen.

--
Thilo Köhler, Author von:
HD-Rec, Samplemanager, ArTKanoid, Monkeyscript, Toadies, AsteroidsTR, TuiTED, PosTED, TKPlayer, TKUnpacker
Homepage: http://www.hd-rec.de

 
Der_Wanderer   Nutzer

20.02.2007, 15:08 Uhr

[ - Direktlink - ]
Thema: Anfängerfrage: Wie linke ich eine .a Datei ?
Brett: Programmierung

@gni

Also diese lib ist extra als lib konzipiert, nicht als Amiga Shared lib, aber sie benutzt keine systemabhängigen Sachen, und der Code sollte re-entrant sein.

Aber so weit komme ich ja gar nicht.

Wie linkt ihr ein Program, das fopen, malloc etc. nutzt ?

--
Thilo Köhler, Author von:
HD-Rec, Samplemanager, ArTKanoid, Monkeyscript, Toadies, AsteroidsTR, TuiTED, PosTED, TKPlayer, TKUnpacker
Homepage: http://www.hd-rec.de

 
Der_Wanderer   Nutzer

20.02.2007, 14:27 Uhr

[ - Direktlink - ]
Thema: Anfängerfrage: Wie linke ich eine .a Datei ?
Brett: Programmierung

Dann darf ich aber vermutlich auch nicht mit -noixemul compilieren, oder ?
-lnix wird nicht gefunden. Im Order GG:lib/libnix/ gibt es die aber. Evtl. muss ich noch den Pfad dazu etzen ?

--
Thilo Köhler, Author von:
HD-Rec, Samplemanager, ArTKanoid, Monkeyscript, Toadies, AsteroidsTR, TuiTED, PosTED, TKPlayer, TKUnpacker
Homepage: http://www.hd-rec.de

 
Der_Wanderer   Nutzer

20.02.2007, 14:07 Uhr

[ - Direktlink - ]
Thema: Anfängerfrage: Wie linke ich eine .a Datei ?
Brett: Programmierung

Ich habe jetzt (fast) alles Compilieren können.
Beim Linken bekomme ich aber noch massig unknown references.

Hautsächlich Dinge wie malloc, free, fopen etc.

Wie linke ich die dazu ?

-lamiga habe ich schon angegeben.

--
Thilo Köhler, Author von:
HD-Rec, Samplemanager, ArTKanoid, Monkeyscript, Toadies, AsteroidsTR, TuiTED, PosTED, TKPlayer, TKUnpacker
Homepage: http://www.hd-rec.de

 
Der_Wanderer   Nutzer

20.02.2007, 13:33 Uhr

[ - Direktlink - ]
Thema: Anfängerfrage: Wie linke ich eine .a Datei ?
Brett: Programmierung

@gni

Es soll eine library werden. Deshalb denke ich brauche ich keinen Startup Code. Die Parameter habe ich von einem anderen Projekt abgeschaut, das libraries erzeugt.

Aber ich weiss jetzt das es PPC Code ist und deshalb nicht geht.

Jetzt versuche ich den Kompletten Source nochmal zu kompilieren.

Das makefile meckert, es findet sed und mv nicht. Sind das CLI Tools?
--
Thilo Köhler, Author von:
HD-Rec, Samplemanager, ArTKanoid, Monkeyscript, Toadies, AsteroidsTR, TuiTED, PosTED, TKPlayer, TKUnpacker
Homepage: http://www.hd-rec.de

 
Der_Wanderer   Nutzer

20.02.2007, 13:10 Uhr

[ - Direktlink - ]
Thema: Anfängerfrage: Wie linke ich eine .a Datei ?
Brett: Programmierung

Die Datei gibts im Aminet:

http://us.aminet.net/pub/aminet/dev/lib/libdumb.readme

Ich Depp habe aber übersehen, dass es für OS4 kompiliert worden ist. :glow:

D.h. ich muss wohl den Source neu kompilieren. Das wollte ich vermeiden ...

BTW, die dumb lib ist eine Bibliothek zum Umwandeln von MOD in Audio.
Es werden sehr viele Formate unterstützt und die Qualität soll sehr gut sein. Ich wollte daraus eine .library machen, damit man das überall benutzen kann. Dadurch könnte man sehr leicht OS freundlichen Support für MODs in Amiblitz3 einbauen.
Evtl. hat ja jemand Lust dabei zu helfen.

--
Thilo Köhler, Author von:
HD-Rec, Samplemanager, ArTKanoid, Monkeyscript, Toadies, AsteroidsTR, TuiTED, PosTED, TKPlayer, TKUnpacker
Homepage: http://www.hd-rec.de

 
Der_Wanderer   Nutzer

20.02.2007, 12:07 Uhr

[ - Direktlink - ]
Thema: Welche Bitrate ist für MP3's optimal?
Brett: Get a Life

Fast wichtiger als die Bit Rate ist der verwendete Encoder.

Die besten Erfahrungen habe ich mit LAME gemacht.
Mit den richtigen Einstellungen bekommt man auch mit 128kbs sehr gute mp3s hin, bei denen man kaum einen Unterschied hört.
192kbs ist wirklich ordentlich. Viel mehr braucht man höchstens bei extrem-Material, wie z.B. bei Wind Rauschen, aber nicht bei tonalen Geräuschen wie eben Musik oder Stimmen.

Denk auch immer dran, 50% sind Einbildung. du kannst ja mal ein experiment machen. Packe einen Song mit 128, 192 und 256, dann lasse es in einer Playlist laufen mit der original .wav, und errate die Bitrate ohne hinzugucken. am besten wenn dir jemand hilft.

In dem Fall musst du über 25% richtig-geraten liegen, sonst ist es Zufall.

Variable Bitrate würde ich nicht unbedingt nehmen. Zumindest Amiga Player haben probleme damit, die Zeit richtig anzuzeigen.

--
Thilo Köhler, Author von:
HD-Rec, Samplemanager, ArTKanoid, Monkeyscript, Toadies, AsteroidsTR, TuiTED, PosTED, TKPlayer, TKUnpacker
Homepage: http://www.hd-rec.de

 
Der_Wanderer   Nutzer

20.02.2007, 11:33 Uhr

[ - Direktlink - ]
Thema: Anfängerfrage: Wie linke ich eine .a Datei ?
Brett: Programmierung

Habe ich auch probiert, geht nicht. Die Referenzen werden nicht gefunden, aber ld meckert nicht.

Ein

nm libdumb.a

listet mir alle möglichen .o Dateien auf, mit dem Kommentar "Unknown File Format".

objdumb sage aber, dass es 68K wäre.

Hier der Consolen Output:

11.Work:Sourcecodes/dumb> ld libdumb.a dumb_funcs.o dumblib_init.o -noixemul -nostartfiles -lamiga
dumb_funcs.o(.text+0xd6): undefined reference to 'dumb_it_callback_terminate'
dumb_funcs.o(.text+0xec): undefined reference to 'dumb_it_callback_terminate'
dumb_funcs.o(.text+0xe): undefined reference to 'load_duh'
dumb_funcs.o(.text+0x24): undefined reference to 'dumb_load_it'
dumb_funcs.o(.text+0x3a): undefined reference to 'dumb_load_xm'
dumb_funcs.o(.text+0x50): undefined reference to 'dumb_load_s3m'
dumb_funcs.o(.text+0x66): undefined reference to 'dumb_load_mod'
dumb_funcs.o(.text+0x8e): undefined reference to 'undload_duh'
dumb_funcs.o(.text+0xb0): undefined reference to 'duh_start_sigrenderer'
dumb_funcs.o(.text+0xc8): undefined reference to 'duh_get_it_sigrenderer'
dumb_funcs.o(.text+0xe0): undefined reference to 'dumb_it_set_loop_callback'
dumb_funcs.o(.text+0xf6): undefined reference to 'dumb_it_set_xm_speed_zero_callback'
dumb_funcs.o(.text+0x116): undefined reference to 'duh_get_length'
dumb_funcs.o(.text+0x152): undefined reference to 'duh_render'
dumb_funcs.o(.text+0x176): undefined reference to 'duh_end_sigrenderer'

11.Work:Sourcecodes/dumb> objdump --info libdumb.a
BFD header file version 2.9.1
amiga
(header little endian, data little endian)
m68k
UNKNOWN!
a.out-amiga
(header big endian, data big endian)
m68k
srec
(header endianness unknown, data endianness unknown)
m68k
symbolsrec
(header endianness unknown, data endianness unknown)
m68k
tekhex
(header endianness unknown, data endianness unknown)
m68k
binary
(header endianness unknown, data endianness unknown)
m68k
ihex
(header endianness unknown, data endianness unknown)
m68k

amiga a.out-amiga srec symbolsrec tekhex binary ihex
m68k amiga a.out-amiga srec symbolsrec tekhex binary ihex

11.Work:Sourcecodes/dumb> nm libdumb.a
nm: atexit.o: File format not recognized
nm: duhlen.o: File format not recognized
nm: duhtag.o: File format not recognized
nm: dumbfile.o: File format not recognized
nm: loadduh.o: File format not recognized
nm: makeduh.o: File format not recognized
nm: rawsig.o: File format not recognized
nm: readduh.o: File format not recognized
nm: register.o: File format not recognized
nm: rendduh.o: File format not recognized
nm: rendsig.o: File format not recognized
nm: unload.o: File format not recognized
nm: clickrem.o: File format not recognized
nm: memfile.o: File format not recognized
nm: resample.o: File format not recognized
nm: sampbuf.o: File format not recognized
nm: silence.o: File format not recognized
nm: stdfile.o: File format not recognized
nm: itload.o: File format not recognized
nm: itread.o: File format not recognized
nm: itload2.o: File format not recognized
nm: itread2.o: File format not recognized
nm: itrender.o: File format not recognized
nm: itunload.o: File format not recognized
nm: loads3m.o: File format not recognized
nm: reads3m.o: File format not recognized
nm: loadxm.o: File format not recognized
nm: readxm.o: File format not recognized
nm: loadmod.o: File format not recognized
nm: readmod.o: File format not recognized
nm: loads3m2.o: File format not recognized
nm: reads3m2.o: File format not recognized
nm: loadxm2.o: File format not recognized
nm: readxm2.o: File format not recognized
nm: loadmod2.o: File format not recognized
nm: readmod2.o: File format not recognized
nm: xmeffect.o: File format not recognized
nm: itorder.o: File format not recognized
nm: itmisc.o: File format not recognized
11.Work:Sourcecodes/dumb>


--
Thilo Köhler, Author von:
HD-Rec, Samplemanager, ArTKanoid, Monkeyscript, Toadies, AsteroidsTR, TuiTED, PosTED, TKPlayer, TKUnpacker
Homepage: http://www.hd-rec.de

 
Der_Wanderer   Nutzer

20.02.2007, 11:19 Uhr

[ - Direktlink - ]
Thema: AGA<->CyberGraphX: Buffer
Brett: Programmierung

Also du solltest folgendes probieren:

1. Öffne den Screen in der Tiefe, die vom ASL Requester kommt.
Eine 24bit modus mit Tiefe 1 zu öffnen ist schonmal ziemlich ineffizient.

2. Allociere die Bitmap auch in der gleichen Tiefe.
Ich allociere die Bitmaps so:

code:
... screen öffnen ....
*scr.Screen = ...

d.l = GetBitMapAttr_(*scrBitMap,#BMA_DEPTH)
If d<=0 Then d=24

*bmap.BitMap = AllocBitMap_(*scrWidth,*scrHeight,d,#BMF_DISPLAYABLE,*scrBitMap)
*layerinfo.LayerInfo  = NewLayerInfo_()
If *layerinfo Then *layer.Layer  = CreateUpfrontHookLayer_ (*layerinfo ,*bmap ,0,0,*scrWidth-1,*scrHeight-1,0,#LAYERS_NOBACKFILL,0)
If *layer Then *rp.RastPort  = *layerrp


Und du hast einen sauber allocierten RastPort zum zeichnen.
Bei mir ist das sehr schnell, auch auf einem Classic mit ZorroII
bekommst du 50Hz bei 16bit hin.

Das mit der Tiefe 1 ist keine gute Idee denke ich, und die Daten müssen jedesmal konvertiert werden und durch den Zorro Bus gedrückt werden, der langsamer ist als ChipMem.
eine Grafikkarte unterstützt normalerweise keine 1Bit Mode. Das sind einfach 8bit Modi.

--
Thilo Köhler, Author von:
HD-Rec, Samplemanager, ArTKanoid, Monkeyscript, Toadies, AsteroidsTR, TuiTED, PosTED, TKPlayer, TKUnpacker
Homepage: http://www.hd-rec.de

 
Der_Wanderer   Nutzer

20.02.2007, 11:02 Uhr

[ - Direktlink - ]
Thema: Swappen von Bitmaps
Brett: Programmierung

Also die Riesenhintergrundbitmap ist so gross wie der Screen, z.B. 640x480.
Sie zu unterteilen ist eine gute Idee, nur dann bekomme ich Probleme nahtlos darauf herumzumalen, bzw. ich müsste immer mit verschiedenen offsets auf alle 4 Bitmaps blitten/malen (mit ClipRegion).

Das mit dem Lock:

Während man einen Lock hält, wird die Bitmap natürlich nicht verschoben, damit man darin herum malen kann. Aber es kann natürlich sein, dass sie ins Fastram geschoben wird wenn man den Lock anfordert.
Ausserdem muss man den Lock schnellst möglich wieder frei geben, um das Grafiksystem nicht zu blockieren. Ich denke das ist keine gute Lösung, um das Swappen zu verhindern. Manche hier haben ja geschrieben, dass gerade ein Lock dafür sorgt, dass die Bitmap ins RAM geholt wird.


--
Thilo Köhler, Author von:
HD-Rec, Samplemanager, ArTKanoid, Monkeyscript, Toadies, AsteroidsTR, TuiTED, PosTED, TKPlayer, TKUnpacker
Homepage: http://www.hd-rec.de

 
Der_Wanderer   Nutzer

20.02.2007, 10:51 Uhr

[ - Direktlink - ]
Thema: Anfängerfrage: Wie linke ich eine .a Datei ?
Brett: Programmierung

Ich benutze GCC.

Die Datei heisst "libdumb.a".

Wenn ich -llibdumb mache, bekomme ich einen Fehler: Datei nicht gefunden.
Die Datei libdumb.a habe ich ins Hauptverzeichnis/aktuelle Verzeichnis kopiert.
Wo soll die Datei hin ? Oder wie sage ich GCC, wo er die Datei finden kann ?

Meine Frage war auch, ob ich überhaupt richtig denke, dass eine ".a" Datei eine vorkompiliertes Binary ist dass man dazu linken kann.

Sorry, hab noch nicht viel mit GCC gemacht. Ich programmiere sonst nur unter VisualC++, dort ist alles ein wenig einfacher.



--
Thilo Köhler, Author von:
HD-Rec, Samplemanager, ArTKanoid, Monkeyscript, Toadies, AsteroidsTR, TuiTED, PosTED, TKPlayer, TKUnpacker
Homepage: http://www.hd-rec.de

 
Der_Wanderer   Nutzer

19.02.2007, 22:20 Uhr

[ - Direktlink - ]
Thema: Anfängerfrage: Wie linke ich eine .a Datei ?
Brett: Programmierung

Hallo !

Habe mir einen interessanten Code gesaugt (dumblib).
Dort ist eine .a Datei zu finden.
Jetzt habe ich alle Funktionen in eine .library gebaut, und kann auch kompilieren.
Beim Linken bekomme ich, dass es keine Refrenz gibt auf die dumblib spezifischen Funktionen. Ich denke, dass sie in der .a Datei stecken.
Wie linke ich die dazu ?

--
Thilo Köhler, Author von:
HD-Rec, Samplemanager, ArTKanoid, Monkeyscript, Toadies, AsteroidsTR, TuiTED, PosTED, TKPlayer, TKUnpacker
Homepage: http://www.hd-rec.de

 
Der_Wanderer   Nutzer

19.02.2007, 16:33 Uhr

[ - Direktlink - ]
Thema: Swappen von Bitmaps
Brett: Programmierung

Die einzige Lösung ist dann wohl ein größeren Hammer nehmen (sprich, mehr Graka RAM als Mindestvorraussetzung).

--
Thilo Köhler, Author von:
HD-Rec, Samplemanager, ArTKanoid, Monkeyscript, Toadies, AsteroidsTR, TuiTED, PosTED, TKPlayer, TKUnpacker
Homepage: http://www.hd-rec.de

 
Der_Wanderer   Nutzer

19.02.2007, 11:10 Uhr

[ - Direktlink - ]
Thema: Swappen von Bitmaps
Brett: Programmierung

Ich habe eine Game Engine geschrieben, mit Double Buffering, d.h. ich male auf einer unsichtbaren Bitmap herum und swappe sie dann auf den sichtbaren Screen, entweder durch BltBitmapRastport() oder durch ChangeVPBitmap(). Das Problem hierbei ist, dass sie Speed natürlich enorm einbricht wenn die Hintergrund Bitmap ins FastRam geswapped wird.
Es wäre besser, wenn z.B. Objekte, die beblittet werden, nicht ins Graka RAM geschoben werden und dafür die Hintergrund Bitmap bleibt.
Das Grafiksystem kann ja nicht wissen, was ich vorhabe, und kann das nicht optimieren, so wie ich es könnte.

Ein Trick ist, einen 2x so hohen Screen anzulegen wie der sichtbare Bereich ist. Dadurch zwingt man die untere Hälfte, auf der man malt, im Graka RAM zu liegen. Ok, es ist keine Garantie, aber zumindest auf WinUAE mit Picasso funktioniert das. Aber das ist natürlich hacky, und geht auch z.B. im Window-Modus nicht, sondern nur Full Screen.


--
Thilo Köhler, Author von:
HD-Rec, Samplemanager, ArTKanoid, Monkeyscript, Toadies, AsteroidsTR, TuiTED, PosTED, TKPlayer, TKUnpacker
Homepage: http://www.hd-rec.de

 
Der_Wanderer   Nutzer

18.02.2007, 19:40 Uhr

[ - Direktlink - ]
Thema: AGA<->CyberGraphX: Buffer
Brett: Programmierung

@whose

Aber die Screenbitmap MUSS im Graka RAM liegen, solange der Screen sichtbar ist, sonst sieht man nur ein schwatzes Bild ;-)
Wenn das nicht ins Graka RAM passt, würde der Screen sich nicht öffnen lassen.

--
Thilo Köhler, Author von:
HD-Rec, Samplemanager, ArTKanoid, Monkeyscript, Toadies, AsteroidsTR, TuiTED, PosTED, TKPlayer, TKUnpacker
Homepage: http://www.hd-rec.de

 
Der_Wanderer   Nutzer

18.02.2007, 19:35 Uhr

[ - Direktlink - ]
Thema: Swappen von Bitmaps
Brett: Programmierung

Schade. Habe ich mir aber schon fast gedacht.
Sowas wie ein NoSwap Flag wäre toll.

--
Thilo Köhler, Author von:
HD-Rec, Samplemanager, ArTKanoid, Monkeyscript, Toadies, AsteroidsTR, TuiTED, PosTED, TKPlayer, TKUnpacker
Homepage: http://www.hd-rec.de

 
Der_Wanderer   Nutzer

18.02.2007, 19:34 Uhr

[ - Direktlink - ]
Thema: AGA<->CyberGraphX: Buffer
Brett: Programmierung

@Holgher

Stimmt, es ist nicht garantiert. Ich meine sogar beobachtet zu haben, dass Picasso unter Low-Memory Bedingungen tatsächlich den nicht-sichtbaren Teil swapped. Aber es passiert sehr sehr viel seltener als wenn es eigenständige Bitmaps sind.

Bei eigenen Bitmaps kommt das swappnen sehr häufig vor, auch oft wenn es gar nicht notwendig scheint, bzw. wenn man viele kleine Objekte blittet. Dann werden die Objekte ins Graka RAM verschoben, und die "fette" Hintergrundbitmap herausgenommen. Es wäre aber wesentlich performanter, die Hintergurndbitmaps drin zu lassen und jedesmal die kleinen Bitmaps zu schieben. Das kann Picasso aber ja nicht wissen.

Einmal ins Swappen gekommen, wird soz. immer im Kreis geswapped und die FPS brechen auf 25% ein oder noch mehr.
Deshalb drehen sich in AsteroidsTR die Asteroiden nicht in der Light Version. Dadruch werden weniger Graka RAM gebraucht und swappen wird unwahrscheinlicher.

Bei WinUAE kann ich nur empfehlen, 32MB Graka RAM einzustellen. Dann wird kaum noch geswapped.

--
Thilo Köhler, Author von:
HD-Rec, Samplemanager, ArTKanoid, Monkeyscript, Toadies, AsteroidsTR, TuiTED, PosTED, TKPlayer, TKUnpacker
Homepage: http://www.hd-rec.de

 
Der_Wanderer   Nutzer

18.02.2007, 17:48 Uhr

[ - Direktlink - ]
Thema: AGA<->CyberGraphX: Buffer
Brett: Programmierung

Also meine DBL.include funktioniert so, und macht mehr als 200FPS unter WinUAE auf meinem Laptop bei 24bit.
Auch eine Cybervision 64 3D mit einem 60er bringt es auf mehr als 50FPS bei 640x480x16.

Wichtig ist, dass die Friendbitmap natürlich genau der Screenbitmap entspricht, also auch von der Tiefe her. Ich vermute mal, dass deine WB nicht auf 2 Farben läuft.

Für Fullscreen gibt es noch einen Trick, nähmlich einen Screen zu allocieren, der Doppelt so hoch ist wie sichtbar. So ist auf jeden Fall garantiert, dass die versteckte Bitmap im Graka RAM liegt, ohne das Cybergfx oder Picasso die Bitmap swappen kann. Ist allerdings etwas unsauber.

Für Fullscreen sollte man aber ChangeScreenBuffer oder ChangeVPBitmap benutzen, oder ScrollVP. Die sind noch schneller als ein BltBitmapRasport, aber geht nur Full screen.

--
Thilo Köhler, Author von:
HD-Rec, Samplemanager, ArTKanoid, Monkeyscript, Toadies, AsteroidsTR, TuiTED, PosTED, TKPlayer, TKUnpacker
Homepage: http://www.hd-rec.de

 
Der_Wanderer   Nutzer

15.02.2007, 20:03 Uhr

[ - Direktlink - ]
Thema: Swappen von Bitmaps
Brett: Programmierung

Hallo !

Kann man Picasso oder CGX irgendwie daran hindern, eine Bitmap zwischen Graka RAM und normalem RAM zu swappen ?


--
Thilo Köhler, Author von:
HD-Rec, Samplemanager, ArTKanoid, Monkeyscript, Toadies, AsteroidsTR, TuiTED, PosTED, TKPlayer, TKUnpacker
Homepage: http://www.hd-rec.de

 
 
Erste << 34 35 36 37 38 -39- 40 41 Ergebnisse der Suche: 1229 Treffer (30 pro Seite)

Suchbegriffe
Schlüsselwörter      Benutzername
Suchoptionen
Nur in diesen Foren suchen
   nur ganze Wörter
Nur Titel anzeigen
alle Treffer anzeigen

.
Impressum | Datenschutzerklärung | Netiquette | Werbung | Kontakt
Copyright © 1998-2024 by amiga-news.de - alle Rechte vorbehalten.
.