-
Mal ganz grob einige Java-Codefragmente. Man sollte aber wohl
Arrays statt Listen nehmen. Auf jedenfall keine LinkedList
Wave-Form lesen
Code java:1 2 3 4 5 6 7 8
List<Short> wave = new ArrayList<Short>() // Ab Byte 44 bis zum Ende der Datei 16bit Wörter lesen DataInputStream input = new DataInputStream( new FileInputStream( "input.wav" ) ); input.seek( 44 ); while( !input.eof() ) wave.add( input.readShort() );
Zwei Waves (Wellen) mischen (addieren)
Code java:1 2 3 4 5 6 7 8 9 10
void mix( List<Short> output, List<Short> sample, int offset ) { if( output.getSize() < offset + sample.getSize() ) // hier output mit nullen auffüllen for( int i = 0; i < sample.getSize(); i++ ) output.set( i + offset, output.get(i + offset) + sample.get(i) ); } }
-
Vielen Dank.
Aber jetzt hab ich noch eine Frage:
Ich weiß doch z.B. vor dem Einlesen der WAV gar nicht wie groß das Array sein muss... Oder soll ich die Liste erst nach dem Einlesen in ein Array umwandeln und dann damit weiter arbeiten?Man sollte aber wohl Arrays statt Listen nehmen.
-
Klar weißt du das...
Code java:1
int arraySize = (fileFile.length() - 44) / 2;
-
ah ok. Danke.
Kannst du mir noch erklären was die Zahlen bedeuten?
also 44 nehm ich mal an ist das Offset.
Aber warum halbiere ich das ganze? Hat das was mit Short und Byte zu tun?
Code java:1
int arraySize = (fileFile.length() - 44) / 2;
-
Genau. ein short (16 Bit) ist zwei Byte lang (jeweils 8 Bit)
-
Hallo liebe Coding-Quizzer,
vielen Dank für euer Feedback! Es ist mir sehr wichtig zu erfahren, wie die Aufgaben bei euch ankommen. Auf einige ausgewählte Kommentare möchte ich an dieser Stelle noch reagieren:
Die Sache ist halt immer die: es ist relativ zeitaufwändig, alle nötigen Informationen einzusammeln, zu sortieren und in eine übersichtliche Form zu bringen. Das ist Zeit, die ich momentan einfach nicht aufbringen kann
Diesen Spagat zu schaffen, ist nicht so einfach. Ich gebe mir aber immer die größte Mühe, die Aufgaben sowohl für nicht so erfahrene Benutzer als auch für die Cracks interessant und machbar zu gestalten. Diesmal ist mir das anscheinend leider nicht gelungen, da die "Grundaufgabe" schon zu anspruchsvoll war.
Danke für den Vorschlag, ich werde es mal im Hinterkopf behalten.
Da habe ich mich wohl ziemlich im Schwierigkeitsgrad verschätzt. Die Darstellung und Verarbeitung von Audiodaten sind wohl den meisten doch nicht geläufig bzw. schwerer zu verstehen als ich dachte.
Auf Grund dieser Rückmeldungen habe ich mich dazu entschlossen, das Regelwerk ab der nächsten Runde etwas zu modifizieren. Der Passus "Lösungsansätze können und dürfen auch schon vorab untereinander ausgetauscht und diskutiert werden, allerdings nicht öffentlich im Forum. Verwendet stattdessen bitte private Nachrichten oder schaut im Chat vorbei." wird gestrichen. Stattdessen soll es explizit erlaubt und erwünscht sein, dass Ideen direkt im Aufgabenthema ausgetauscht werden. Dies schließt insbesondere auch weiterführende/detailliertere Erklärungen zur Aufgabenstellung mit ein. Ich würde mir davon zweierlei versprechen:- Es soll nicht mehr so leicht vorkommen, dass jemand wegen einiger kleiner Stolpersteine überhaupt nicht an der Quizrunde teilnehmen kann. Wenn ein Benutzer bei der Bearbeitung der Aufgabe auf ein Problem stößt (sei es ein Verständnisproblem oder ein Problem mit der Programmiersprache o.ä.), sollte er sich diesbezüglich über einen öffentlichen Beitrag im Aufgabenthema an alle anderen Quizteilnehmer wenden können.
- Ich werde bei der Aufgabenstellung ein bisschen entlastet, indem ich nicht jedes Detail erklären muss. Das könnten dann andere Benutzer übernehmen, indem sie die Aufgabenstellung um zusätzliche Erläuterungen ergänzen (über Beiträge im Aufgabenthema). Das muss nicht unbedingt in Form einer seitenlangen Abhandlung geschehen, oft helfen auch ein paar informative Links schon weiter.
Bei Beiträgen, die allzu viel verraten, möchte ich euch aber darum bitten, den spoiler-Tag zu verwenden. Es sollte jeder selbst entscheiden können, wie viele Tipps er benötigt. Vollständige Lösungen vorab zu posten sollte auch nachwievor Tabu sein.
Wenn jemand irgendwelche Einwände gegen diese Neuregelung hat, sollte er sie bis zur nächsten Quizrunde (vermutlich morgen Abend, aber ich kann nichts versprechen) vorbringen oder für immer schweigen
Grüße,
Matthias
P.S.: Unabhängig davon freue ich mich natürlich jederzeit über Zusendungen mit (Ideen für) Aufgaben
Geändert von Matthias Reitinger (27.11.09 um 15:12 Uhr)
„Gib einem Menschen einen Fisch, und er wird für einen Tag satt. Lehre ihn Fischen, und er wird ein Leben lang satt.“
“For every complex problem, there is an answer that is short, simple and wrong.”
“Pessimism is safe, but optimism is a lot faster!”
Aktuelles Coding Quiz: #17 - Wörter kreuz und quer
-
*ping* .
-
hmm?
*pong*...
-
Hallo zusammen,
ich habe momentan keine Zeit, mich um das Coding Quiz zu kümmern. Es wird deshalb eine Winterpause geben, die vermutlich frühestens März 2010 endet.
Grüße,
Matthias
P.S.: Ihr könnt ja zwischenzeitlich eure Abgaben zu dieser Runde noch erweitern oder vervollständigen
Geändert von Matthias Reitinger (16.12.09 um 18:06 Uhr)
„Gib einem Menschen einen Fisch, und er wird für einen Tag satt. Lehre ihn Fischen, und er wird ein Leben lang satt.“
“For every complex problem, there is an answer that is short, simple and wrong.”
“Pessimism is safe, but optimism is a lot faster!”
Aktuelles Coding Quiz: #17 - Wörter kreuz und quer
-
Könntest du nicht einfach deine idee für 'ne Aufgabe wem anderes mitteilen, und der kümmert sich darum? Ich meine das Coding Quiz hängt doch nicht von dir allein ab oder?
Ich würd gern auch sonst die Aufgabe ausfomulieren + so... könnt mir sonst auch noch eine ausdenken, vielleicht.
-
@OnlyFoo: gern, bitte, niemand wird dich zurückhalten.
Wenn du Hilfe brauchst einfach einen Mod ansprechen oder im Chat crazyweasel (Alex) oder TerrorAlf (Markus) oder auch mich (Marco) ansprechen.
Grüße Marcokeep on smiling
www.smileyml.de
Typografie-Basiswissen | Grafik - Basiswissen
TypoWars | ...ja, auch im Chat
-
Dazu müsste ich aber erst mal die Zeit und Muse haben, mir die Idee auszudenken

Momentan ist es leider so, dass es ohne mich keine Aufgaben gibt. Abgesehen helfen aber noch einige Teammitglieder im Hintergrund mit, z.B. bei der Erstellung der hübschen Startseitenbilder für das Coding Quiz (Markus Kolletzky) und bei administrativen Aufgaben (Alexander Schuc). An dieser Stelle mal ein Dankeschön an die beiden für die Unterstützung
Gern, jederzeit. Ich habe auch kein Problem damit, wenn du mal ein paar Runden den Quizmaster machst. Wende dich dazu am besten an Alex, der kann dir dann die nötigen Rechte für die Forenstruktur hier vergeben. In Zukunft könnten wir uns dann mit den Aufgaben auch halbwegs abwechseln, wenn du Lust hast.
Grüße,
Matthias„Gib einem Menschen einen Fisch, und er wird für einen Tag satt. Lehre ihn Fischen, und er wird ein Leben lang satt.“
“For every complex problem, there is an answer that is short, simple and wrong.”
“Pessimism is safe, but optimism is a lot faster!”
Aktuelles Coding Quiz: #17 - Wörter kreuz und quer
-
Sorry! Ich hab hier rumgetönt ich mach das und dann kam nix... :/ Aaaaber ich setze mich jetzt gerade hin und schreib was auf, weil mir heute auf einer längeren Autofahrt durch das verschneite Hamburg zwei Ideen gekommen sind, die eigentlich umsetzbar sein müssten!
EDIT: Erste Aufgabe ist verschriftlicht. Samstag gehts dann wohl los.Geändert von OnlyFoo (05.01.10 um 20:20 Uhr)
Ähnliche Themen
-
Quiz?
Von MeisterLampion im Forum Office-AnwendungenAntworten: 12Letzter Beitrag: 03.11.06, 15:48 -
Quiz: Was bin ich?
Von MrTwister im Forum WerkstattAntworten: 3Letzter Beitrag: 05.04.06, 19:14 -
Quiz
Von JannyR im Forum PHPAntworten: 2Letzter Beitrag: 21.05.05, 15:58 -
Quiz
Von alkaline im Forum PHPAntworten: 0Letzter Beitrag: 27.09.04, 10:16 -
php Quiz
Von Sim im Forum PHPAntworten: 0Letzter Beitrag: 09.05.04, 12:43



7Danke




Login




