En fallstudie och implementering av parsning och översättning av MIDI-filer
|
|
- Sandra Sundström
- för 9 år sedan
- Visningar:
Transkript
1 Dokumentstrukturer 27 januari 2004 TNM047 En fallstudie och implementering av parsning och översättning av MIDI-filer Rasmus Ewehag, David Kästel,
2 Syfte Att titta, på hur SMF, standard midi formatet, är strukturerat, att tolka och översätta en midifil till en form av XML som programmet Griff kan läsa samt utreda vad som är på gång inom musikutbytesformatområdet. Bakgrund En bekant som sysslar en del med musik använder på sin PocketPC ett program som heter Griff. Detta är ett sequencerprogram för att skapa och spela upp musik i samma anda som Cubase, fast något förenklat och lättare programmerat för att kunna köras på en relativt begränsad maskin. När man sparar filer i detta program sparas dem som i de allra flesta program i ett eget internt format. Man kan dock exportera och importera egna XML-filer med hjälp av Griff. Däremot kan endast ett fåtal musikprogram till stationära datorer exportera filer till något XML-format. Inte ett enda klarar hittills hantera Griffs XML-format. Den relativt begränsade skara Griffanvändare som finns har uttryckt en önskan om en funktion för att importera midi till Griff. Två medieteknikstudenter med liknande intresse bestämde sig för att samarbeta och lösa detta dokumentstrukturproblem. Arbetets gång Vi började samla på oss litteratur och internetkällor som avhandlade hur midiformatet är uppbyggt och vad som sker inom musikbranschen beträffande dokumentstrukturer. Vi fick också av min griffanvändande kompis ett antal filer som exporterats från Griff i dess XML-format och deras korresponderande midifiler. Öppnar man en av Griffs exporterade XML-filer får man ganska snabbt en känsla för vad som krävs för att Griff skall kunna importera en XMLfil. Något senare fick vi också tag på en PocketPC för att kunna utföra tester av vad som måste vara med i XML-filen för att den skall vara giltig i Griffs import. Vi började läsa om midiformatets uppbyggnad om bitströmmarna och hur man skulle tolka dessa och började hårdkoda i java. Vi tillverkade ett program som åtminstone läste all headerinformation. Sedan hittade vi javakod som översatte mididatan till ren text, detta visade sig användbart och vi fick en känsla för vilken typ av information som fanns i midifilen och vad i denna som var intressant för oss i detta projekt. Vi fann också en phpbaserad midi till XML-översättare. En tysk vid namn Valentin Schmidt hade gjort en sådan och varit vänlig nog att dela med sig av koden. Vi bestämde oss helt enkelt för att basera vår midi till GriffXMLöversättare på denna kod. 2
3 Innehållsförteckning Syfte... 2 Bakgrund... 2 Arbetets gång... 2 Att översätta midi till något som går att förstå... 6 Att översätta midi till någon form av XML... 6 Att översätta midi till XML som Griff förstår... 7 Griffs upplägg... 7 Anpassningar och begränsningar vid översättning... 8 Att skapa ett pattern... 8 Att skapa en section... 8 Att skapa en song... 8 Övrigt... 8 En närmare titt på vad vår översättare gör... 9 Utgångspunkt... 9 Översättarens arbetssätt... 9 Formatering Tidsformatet som Griff använder sig av Resultat Diskussion Referenser: Bilagor 3
4 SMF, Standard Midi Format Här kommer en relativt översiktlig beskrivning över hur standardmidiformatet är uppbyggt. Generellt om midi, se Diskussion nedan och för ingående beskrivning av filformatet midi kan vi rekommendera kapitlet Understanding midi messages i boken Midi: A comprehensive introduction, av Joseph Rothstein. Fig.1 En midifil har följande övergripande struktur Header: byte header chunk tag 4 byte chunk total size 2 byte midi format type (0,1,2) 2 byte number of tracks ( ) 2 byte time division Eventlist: byte track chunk tag 4 byte track chunk size x byte track event data Huvudet med beteckningen Header chunk är den tagg som alltid kommer först i filen. Denna tolkas med fördel som ASCII-tecken och heter då Mthd. Följande fyra byte kommer att tala om hur mycket utrymme hela huvudtaggen tar, hur många byte med huvudinformation man skall förvänta sig innan det kommer en midispårstagg (Track chunk tag). Taggen som beskriver storleken på headern är alltid 6 byte. Av dessa 6 byte är de två första en indikation på vilken formattyp som midifilen har. Ar det en fil av typen noll så är alla tonvärden sparade i samma spår. Är den av typen 1, ligger varje instrument eller stämma lagrade i separata spår. Det finns också ett format av typen 2, men det är inte så vanligt och vi har valt att inte titta närmre på det. När dessa 6 byte har passerat kommer en midispårstagg som, likt huvudtaggen, består av 4 stycken ASCII-tecken Mtrk. Efter denna tagg följer 4 byte med information om hur många byte man kan förvänta sig att midispåret innehåller. Innehåller midifilen ett längre stycke kan denna lista med spårdata bli riktigt lång. Det är först efter detta som den egentliga notbilden förmedlas. Nu följer en lista med olika midimeddelanden som vi kallar händelser (events). Det som är lite trixigt här är att meddelandena bara använder så många bitar de behöver, vilket gör att dessa kommer att vara av olika storlek (variable-length). Fig. 2 Så här ser en händelse i händelseinformationsströmmen typiskt ut deltatid händelsetyp midikanal parameter 1 parameter 2 variable-length 4 bits 4 bits 1 byte 1 byte Alla händelser, oavsett typ, har ett tidsvärde. En midiklocka räknar med s.k. ticks. Varje midifil har en upplösning där man anger hur många ticks det går på ett slag. I ovan nämnda huvudtagg finns information om upplösningens storlek i enheten ticks/slag eller, mer ovanligt, ticks/ruta (främst för synkronisering mot bildinformation). Slagen kan tolkas som fjärdelsnoter och tempot (bpm) för att översätta till verklig tid anges i händelselistans första spår (track 0, för alla format-1-midifiler). Där finns även annan information om stycket, tonart, taktart (3/4, 4/4 osv = hur många fjärdedelsnoter/takt) osv. 4
5 Enligt figur 1 är tickvärdet angiven som deltatid. Det är standard och definieras av ett värde med variabel längd (max 4 bytes), vilket bestämmer när en händelse skall uppträda relativt midispårets senaste händelse. Om värdet inte är noll anger deltavärdet väntetiden för denna händelses start relativt föregående händelses slut. Händelser som inte är tidsberoende föregås ändå av en deltatid som bör sättas till 0. Dessa bör också komma först i midispårets händelseström. Exempel på denna sortens händelser kan vara spår- och instrumentnamn eller copyrightinformation. Oftast är man intresserad av absoluttiden, när någonting börjar eller slutar relativt styckets start. Anledningen till användning av deltatid kan dock vara att skaparna av midiformatet ville hålla nere filstorleken, då absoluttid vid långa musikstycken ger stora värden, vilket kräver fler bytes. Fig. 3 Exempel på olika typer av händelser som kan förekomma händelsetyp värde parameter 1 parameter 2 Note Off 0x8 note number velocity Note On 0x9 note number velocity Note Aftertouch 0xA note number aftertouch value Controller 0xB controller number controller value Program Change 0xC program number not used Channel Aftertouch 0xD aftertouch value not used Pitch Bend 0xE pitch value (LSB) pitch value (MSB) Figuren ovan visar de sju grundläggande händelsetyperna som är definierade i midiformatet. Det finns åtskilligt mer definierat i midiformatets specifikation bland annat metahändelser och systemhändelser. Nämnas kan också att händelsetypen Controller har 128 olika kontrollhändelser att välja mellan. Eftersom detta är något som inte varit intressant att titta på i vårt projekt, har vi inte grävt ner oss i det. 5
6 Att översätta midi till något som går att förstå Försöker man öppna en midifil i en godtycklig texteditor kommer man ganska snart att upptäcka att midifilen inte innehåller särskilt mycket text. Istället får man försöka översätta de bytestycken som dyker upp enligt de bestämda tolkningsregler som vi berättat om tidigare. Dessa beskriver relativt ingående hur man skall tolka de åtabitarsord man tar emot. När man har översatt den data som finns i midifilens bytestycken kan man få ut någonting på följande form: Fig. 4 Midifil översatt till text med hjälp av metoder ur klassbiblioteket javax.sound.midi (JDK 1.4.1) File: YourSong.mid Length: ticks Duration: microseconds DivisionType: PPQ Resolution: 480 ticks per beat Track 0: tick 0: Sysex message: F0 7E 7F F7 tick 0: SMTPE Offset: 96:0:0.0.0 tick 0: Set Tempo: bpm tick 0: Time Signature: 4/4, MIDI clocks per metronome tick: 24, 1/32 per 24 MIDI clocks: 8 tick 0: Key Signature: C major tick 0: End of Track Track 1: tick 0: Sequence/Track Name: Piano tick 0: unknown Meta event: 00 tick 0: MIDI Channel Prefix: 0 tick 0: [B0 07 7F] channel 1: control change 7 value: 127 tick 0: [B0 0A 40] channel 1: control change 10 value: 64 tick 0: [B ] channel 1: control change 0 value: 56 tick 0: [B ] channel 1: control change 32 value: 1 tick 0: [C0 00] channel 1: program change 0 tick 0: [90 4B 52] channel 1: note On D#5 velocity: 82 tick 0: [ ] channel 1: note On A#4 velocity: 82 tick 0: [ E] channel 1: note On G4 velocity: 62 tick 0: [ A] channel 1: note On D#2 velocity: 74 tick 10: [B0 40 7F] channel 1: control change 64 value: 127 tick 245: [ ] channel 1: note Off A#4 velocity: 64 tick 260: [ ] channel 1: note Off G4 velocity: 64 tick 340: [80 4B 40] channel 1: note Off D#5 velocity: 64 tick 480: [ ] channel 1: note On G4 velocity: 34 tick 685: [ ] channel 1: note Off G4 velocity: 64 tick 720: [ ] channel 1: note On A#4 velocity: 66 tick 850: [ ] channel 1: note Off A#4 velocity: 64 tick 960: [ ] channel 1: note On D#3 velocity: 54 Att översätta midi till någon form av XML Varför skulle man vilja översätta midi till XML Svaret är egentligen ganska självklart om man tittar på innehållet i en XML-fil. Det har en väldigt enkel och lättläst struktur och XML-standarden är en standard som har väl dokumenterade regler. I vårt fall vill vi gärna ha över vår midifil till någon form av XML för att kunna importera denna genererade XML-fil i Griff. 6
7 Att översätta midi till XML som Griff förstår Griffs XML-format är upplagt på ett sätt, som naturligtvis baseras pa dess behov av parameterlagring. Griffs upplägg I ett tonmönsterparti ett s.k. pattern kan man lägga vilken typ av noter man önskar. Längden på ett pattern bestämmer hur många takter detta varar. I en s.k. section anger man var i tiden en eller flera patterns ska placeras. Nästa steg är att sätta samman sina olika sections till en song. Man kan på så vis återanvända patterns och sections, helt enligt denna typ av loopbaserat musikskapande. För att tonerna i ett pattern skall spelas upp krävs att man lägger till ett instrument i sin mixer. Fig. 5. Från vänster överst: pattern och sectionview Nedan från vänster: songview och mixerview 7
8 Anpassningar och begränsningar vid översättning Vad som gör saken lite komplicerad är att midi inte jobbar med samma typ av indelning som Griff gör. I midi har man bara ett eller flera olika midispår. I ett midispår ligger all information om en stämma som en lång rad av händelser. Att skapa ett pattern Tiden i en pattern är självständig och startar alltid på 0 (takt ett). Längden har vi i översättningen bestämt till sista tonens slut. Att skapa en section Den eventuella paus som kan finnas i ett midispår och som ignoreras när patternlängden sätts, används i stället när vi ska skapa vår section. Finns en inledande paus kommer denna att förvandlas till ett offsetvärde, dvs. startvärde för vårt pattern. Alla patterns offset+längd sparas varefter längden på vår section (som bara är en, se nedan) sätts till största värdet bland dessa. På så vis kan vi få någon form av struktur i vår section. Att skapa en song Den sista nivå som finns i Griff är det som kallas song. Denna kan innehålla flera olika sections som i sin tur innehåller flera olika patterns. Detta för att man ska kunna strukturera upp en låt i en slags övergripande struktur, exempelvis: Intro, vers, refräng, vers, vers. refräng, refräng, slut. I midifilen finns ingen motsvarighet till denna indelning, vilket gör att vårt program endast kommer att skapa en section som är lika lång som vår song. Övrigt Tempo, taktart och tonart är tre andra saker som vi måste ta hänsyn till när vi gör översättaren. Mer om dessa i beskrivningen nedan. Alla andra händelser i eventlistan ignoreras av vår översättare för att de inte förstås av Griff. Det omvända gäller för de Griffspecifika taggar som inte kan beskrivas i midiformatet. Däremot är vi tvungna att ha med ett visst antal grifftaggar för att det ska fungera. 8
9 En närmare titt på vad vår översättare gör Utgångspunkt Under arbetet med en befintlig java till midiparser fann vi en liknande php-driven klass. Någon hade roat sig med att göra en hel klass med metoder för att exportera och importera midi till en rad format. Däribland MIDI XML, som beskrivs i diskussion nedan. Utifrån denna parser kunde vi lägga till funktionen mid2griffxml (se bilaga för kod) i klassen midi.class.php. Översättarens arbetssätt Vår översättare räknar antalet spår som finns i midifilen, är filen av format 0 är det givet att man bara har ett spår, det ingår i definitionen. Är filen av format av 1 räknas antalet spår. Vi plockar också ut värden för timebase (pulses per quarter note), beats per bar och bpm (beats per minute). Varför just dessa värden? Jo, det är saker som vi kommer att använda när vi skapar vår GriffXML. Nu kommer vi till den information som utgör själva notbilden, det som finns i de händelser som är uppradade efter midifilens midispårstagg (Mtrk). För varje midispårs tonanslag plockas notvärde, velocity och kanal ut. En ton beskrivs med en NoteOnhändelse och en NoteOff-händelse. För att kunna få reda på hur lång en hel ton är krävs alltså att vi läser båda händelserna och jämför deras tidsvärden. Differensen mellan de två händelserna kommer att ge oss längden på tonen. Vi antog till en början också att en ton bara kan anslås på nytt efter att den har avslutats.(något som vi fick ompröva lite senare.) Till saken hör att en ton inte nödvändigtvis avslutas i händelsen efter att den anslagits. Vi kom att behöva någon typ av datastruktur för att lagra notvärden för NoteOnhändelser. Det första som vi testade var en array där värdena bara sparades, söktes och raderades sekventiellt med händelselistan. Denna array blir dock alldeles för stor och ohanterbar, vilket ledde till php-krasch. Vi fann då en phpklass som skapar en länkad lista och har metoder för att söka, lägga till och radera. Finns den aktuella NoteOnhändelsens värde inte i listan läggs det till, annars är det redan inlagt och bör ej dyka upp igen. När dess korresponderande NoteOff-händelses notvärde senare dyker upp kollar man detta mot listans värden och om träff finnes räknar man ut tiden, sparar undan resultatet med relaterade attribut och raderar NoteOn-händelsens notvärde ur listan. Därefter har vi klarat av en ton. Efter ett antal tester upptäckte vi att det inte var fullt så enkelt som vi trodde. Midiformatet är inte bara obsolet, det är också nyckfullt. Toner behöver inte avslutas genom en NoteOff-händelse, det går lika bra att avsluta en ton genom att ge ytterligare en NoteOn-händelse med samma notvärde men denna gång med velocity=0. Detta kräver ytterligare en if-sats som ska arbeta på samma sätt som vårt NoteOff-fall är upplagt. Får vi en NoteOn-händelse med velocity=0 kollar vi efter dess notvärde i listan och vid träff sparar vi undan tonens alla attribut (som sedan skall användas i skapandet av GriffXML-koden) samt raderar notvärdet ur listan. När vi börjat komma in på mer avancerade stycken upptäckte vi ytterligare en detalj som ställde till det för oss. En viss ton avslutas alltid senast vid samma tidpunkt som densamma anslås igen, men i händelselistan kan den nya NoteOn-händelsen komma innan den gamla har avslutats. Vi löste detta genom att skapa ytterligare en länkad lista och en kontroll till. Om aktuella notvärdet redan finns i första listan och tonen inte är avslutad stoppas det nya anslagets notvärde in i en ny lista i väntan på att det första skall avslutas. När det första anslagets NoteOff-händelse dyker upp letar vi först bland första listans notvärden, i andra hand bland andra listans notvärden. Detta gör att vi kommer att kunna hantera detta problem. Allteftersom tonerna är avklarade sparas de undan för att sedan skrivas ut antingen till en XML-fil eller direkt ut på skärmen. 9
10 Formatering En GriffXML-fil bör inte ha färre olika taggar än följande exempel: <GriffDocument Version="2"> <Studio> <Sequencer Tempo="120" BeatsPerBar="4" PulsesPerQuarterNote="480"> <PatternList> <Pattern Name="Pattern" Offset="001:01:001" Length="004:00:000" Colour="#6B8087"> <EventList> <Note Offset="001:01:480" Pitch="60" Velocity="64" Length="000:00:240"/> </EventList> </Pattern> <Pattern Offset="001:01:001" Length="004:00:000" Colour="#B3BD59"> <EventList> <Note Offset="001:01:001" Pitch="60" Velocity="64" Length="000:00:240"/> </EventList> </Pattern> </PatternList> <SectionList> <Section Offset="001:01:001" Length="004:00:000" Colour="#407A38"> <Pattern Name="Pattern2" Offset="001:01:001"> <Target Name="instrument 2" Class="Instrument"/> </Pattern> <Pattern Name="Pattern" Offset="001:01:001"> <Target Name="instrument 1" Class="Instrument"/> </Pattern> </Section> </SectionList> <Song Name="" Offset="001:01:001" Length="016:00:000"> <Section Name="Section" Offset="001:01:001"/> </Song> </Sequencer> <InstrumentList> <Instrument Name="instrument 1" Engine="mSyn" SampleRate="44100" Channels="1"> </Instrument> <Instrument Name="instrument 2" Engine="mSyn" SampleRate="44100" Channels="1"> </Instrument> </InstrumentList> </Studio> <ViewList/> </GriffDocument> Taggarna GriffDocument, Studio och viewlist definierar XML-dokumentets kropp. En sequencertagg bestämmer tempo, beats per bar och pulses per quarter note som skall råda igenom de olika vyer vi hierarkiskt har under song. Vi definierar vilken offset varje pattern skall ha samt hur långt det ska vara. (Närmre beskrivning av vilket format Griff önskar få offsettiden på beskrives i nästa avsnitt.) Inom patterntaggarna finns händelsetaggar. I vårt fall översätter vi egentligen bara rena notrelaterade händelser, inga instrumentbyten, glissando eller vibraton. Detta är information som midifilerna kan innehålla men som vi valt bort till förmån för viktigare detaljer. Velocity reglerar hur hårt anslag man gör, 127 är max, velocity 0 betyder att tonen upphör. När vårt/våra pattern är slut följer en nivå upp i hierarkin sectionlist, som innehåller de olika sections vi har. I varje section bör definieras vilka patterns som skall finnas i denna section samt vilken offset de skall ha i förhållande till starten på vår section. Slutligen följer songtaggen vari man talar om vilken/vilka sections denna skall innehålla. För att Griff skall lägga till instrument i mixervyn i programmet, så att respektive spår får ett instrument som det kan spelas upp med, krävs en instrumentlista. 10
11 Tidsformatet som Griff använder sig av Griff önskar få alla offset- och längdvärden på formatet xxx:xx:xxx. Första taltrippeln anger hela antalet takter, följande talpar motsvarar hela antalet fjärdedelsnoter och sista tre värdena anger vilket tick man är på. Denna uträkning förlade vi till funktioner i den länkade listans phpklassfil. Resultat Vår översättare fungerar ypperligt. Vid test matades ett otal olika typer av midifiler in. Det viktigaste för griffanvändarna var att toninnehållet skulle bibehållas, vilket efterlevs. Tillvägagångssättet är självklart ämne för en diskussion. Vi kunde med stor sannolikhet ha byggt vidare i javamiljö med samma resultat. Koden och strukturen hade kanske blivit mer överskådlig, dels beroende på att så mycket redan fanns färdigt och dels för det fulla stödet för objektorienterad programmering. Däremot såg vi fördelar i ett php-drivet system. En webbaserad bara lösning ger vår uppdragsgivare och andra griffanvändare lätt tillgång till en översättare. På gott och ont är php också väldigt förlåtande i utvecklingsammanhang. Samtidigt kan felsökning vara ganska svår. 11
12 Diskussion Behovet av ett språk för att styra elektroniska instrument uppstod när instrumenttillverkare insåg att elektroniska instrument inte längre endast behövde utgöra en del av en ensemble, de kunde utgöra själva grunden i den. Med detta kom samtidigt önskningar från musiker att kunna kontrollera mer än två instrument samtidigt, något som är svårt att klara av som ensam musiker. Ett antal instrumenttillverkare gick 1981 samman för att utreda möjligheterna till ett sådant gränssnitt föddes Midi, en hel arkitektur för att arbeta med digitala instrument tillsammans med datorer. I takt med att man ville spara sina alster och redigera i efterhand krävdes att den momentana bitströmmen blev till en fil. Midi blev således en branschstandard och är så än i dag. Väldokumenterat, kompakt och välanvänt, men något svårbegriplig och inte särskilt intuitivt. Redan tidigt sneglade notsättarbranschen på olika lösningar för lämpliga datarepresentationer av noter. Midi visar sig då innehålla en del begränsningar och de flesta program jobbar med interna och slutna format. Kvarstår gör midi som ett utbytesformat, mellan program och plattformar. Det fungerar ganska bra. Ett problem vi stötte på var de mänga olika tolkningarna och användningarna av just midiformatet. Filer kan genereras mer eller mindre noggrant, enligt standarden. På senare år har man dock utrett möjligheterna till ett ännu mer standardiserat och komplett språk för att beskriva musik. Liksom för midi handlar det i första hand om syntetiserad musik. Flera projekt med namn som: SMDL - Standard Music Description Language som bygger på SGML, Music Encoding Initiative (MEI), extensible Score Language (XScore) m.fl 1. Gemensamt för många är någon form av märkordspråkssyntax. Där har på senare år XML flitigt debatterats och standardiserats. Flera forskargrupper och företag har skapat egna XML-dialekter för att märka upp musik och noter. Några som kommit väldigt långt och redan implemeneterat plugins till de stora notskrivningsprogrammen är Recordare med formatet MusicXML. Det verkar lämpa sig väldigt bra för just notskrivning. Här kommer vi till dilemmat. Att skapa ett format, läsbart och användbart för alla, med uppfyllda krav för alla verkar svårt. Exempelvis blev midifiler på ett tiotal kilobyte som översätts av vår applikation flera hundratals kb stor som färdig GriffXML. Då tappar man kompaktheten för ett strängt resurssnålhetskrav. Midi Manufacturers Association har även de tagit fram en XML-dtd för att definiera en XML struktur det s.k. MIDI XML. Användningen och utbredningen av denna är för oss okänd. Men för att förstå midiformatets uppbyggnad kan denna struktur vara till hjälp. (Det stöds av ursprungsklassen till vår översättare.) Här tror vi att XML har en styrka. Formatet är självförklarande och ypperligt för lagring och kanske även som ett utbytesformat. Men dess framtid och ett eventuellt enande av en standard är oviss. 1 För komplett lista med beskrivningar se 12
13 Referenser: Projektet: Om midiformatet: Om musicxml och dylikt: 05.htm#N Kodkällor: Litteratur: Midi: A comprehensive Introduction, Joseph Rothstein, 1992, Oxford University Press, Oxford. Proffessional PHP programming, Castagnetto, Jesus, et.al., 1999, Wrox Press Ltd., Birmingham 13
Användarhandledning Version 1.2
Användarhandledning Version 1.2 Innehåll Bakgrund... 2 Börja programmera i Xtat... 3 Allmänna tips... 3 Grunderna... 3 Kommentarer i språket... 4 Variabler... 4 Matematik... 5 Arrayer... 5 på skärmen...
Projekt Rapport. RaidPlanner. Jeanette Karlsson UD10
Projekt Rapport RaidPlanner Jeanette Karlsson UD10 Abstrakt: Denna rapport handlar om mitt projekt i kursen Individuellt Mjukvaruutvecklings projekt. Rapporten kommer att ta upp hur jag gått tillväga,
Demo Handbok Sibelius 4
Demo Handbok Sibelius 4 Detta är ett utdrag ur handboken. Det som är markerat med blått i innehållsförteckningen går att välja. I rutan Bokmärken till vänster finns följande val: Innehåll Tillbaka Sök
Bakgrunds info Installation Musik. Koreografi Optioner Verktyg Nästa version. Agenda
SqView Bakgrunds info Installation Musik Texter Koreografi Optioner Verktyg Nästa version Agenda SqView Historia Började skriva programmet 1999 Första versionen var bara för att visa koreografi Spela musik
En snabb titt på XML LEKTION 6
LEKTION 6 En snabb titt på XML Bokstaven x i Ajax står för XML, ett mycket användbart beskrivningsspråk som gör det möjligt för Ajax-tillämpningar att hantera komplex strukturerad information. I den här
[SLUTRAPPORT: DRAWPIXLZ (ANDROID-APP)] Slutrapport. Författare: Zlatko Ladan. Program: Utvecklare av Digitala Tjänster 180P
Slutrapport Författare: Zlatko Ladan Program: Utvecklare av Digitala Tjänster 180P Kurs: Individuellt Mjukvaruprojekt Z l a t k o L a d a n Sida 1 Abstrakt: Denna rapport handlar om mitt projekt som jag
MIDI. grunder och tillämpning
MIDI grunder och tillämpning 2007-04-04 per.mattsson@miun.se Innehållet får ej kopieras eller återgivas utan skriftligt tillstånd från upphovsmannen. 1 MIDI is the language of gods Lesser life forms communicate
extensible Markup Language
Datavetenskap Opponenter: Björn Olsson Andreas Svensson Respondenter: Sanaa Al-abuhalje Afrah Al-abuhalje XML extensible Markup Language Oppositionsrapport, C-nivå 2007:06 1 Sammanfattat omdöme av examensarbetet
Introduktion Schenker-BTL AB, Stab IT Beskrivning över informationsintegreringmed Schenker, metodbeskrivning version 1.
Schenker har interna system som handhar information som är av intresse för våra kunder/partners. Idag finns ett flertal av dem tillgängliga via Internet, sk Online-tjänster. Dessa erbjuder inte bara hämtning
Delrapport DP3. FGS för paketstruktur för e-arkiv Bilaga 1 METS
Delrapport DP3 FGS för paketstruktur för e-arkiv Bilaga 1 METS Karin Bredenberg & Mats Berggren IT/SoU 010-476 71 23 2013-01-14 2.0 1(9) INNEHÅLLSFÖRTECKNING 1. BILAGA 1: METS...3 1.1 INTRODUKTION...3
PKS5000PC hjälpmedel uppföljning
1 PKS5000PC Allmänt PKS5000PC är ett hjälpmedel och ett administrativt verktyg för PKS5000 systemet. Det hjälper och underlättar plockhanteringen, gör att ansvariga kan göra produktionsuppföljningar och
Laboration i datateknik
KUNGLIGA TEKNISKA HÖGSKOLAN Laboration i datateknik Felsökning och programmering av LEGO NXT robot Daniel Willén 2012 09 06 dwill@kth.se Introduktionskurs i datateknik II1310 Sammanfattning Syftet med
Bildbaskontoret. Bruksanvisning. Handitek. anpassar tekniken till människan BRUX\...\809082 BILDBASKONTORET
Bildbaskontoret Bruksanvisning Handitek BRUX\...\809082 BILDBASKONTORET anpassar tekniken till människan Innehållsförteckning Introduktion... 3 Datorkrav...3 Om bildbaser... 4 Vad är en bildbas?...4 Varför
Bakgrund och motivation. Definition av algoritmer Beskrivningssätt Algoritmanalys. Algoritmer. Lars Larsson VT 2007. Lars Larsson Algoritmer 1
Algoritmer Lars Larsson VT 2007 Lars Larsson Algoritmer 1 1 2 3 4 5 Lars Larsson Algoritmer 2 Ni som går denna kurs är framtidens projektledare inom mjukvaruutveckling. Som ledare måste ni göra svåra beslut
1 Försnack och ordlista
1 9 Välkommen till denna guide in i Cubase underbara värld - en värld full av musik, menyer, ångest, glädje, kortkommandon och kreativitet. Cubase historia går långt bak i tiden grunden lades redan 1984
» RSS - Bygg din egen RSS!
1 of 5 29.4.2006 18:46» RSS - Bygg din egen RSS! Sett en orange liten skylt med vita bokstäver som antingen sagt XML eller RSS nyligen utan att direkt koppla varför den finns där? Du är antagligen inte
Addera ett nytt Arranger Track. Skapa Arranger Events
Datorstudion med Cubase Johan Axelsson 69 Arrangera med Arranger Track Det finns ett annat sätt att arrangera dina projekt, alltså att lägga upp ordningen och längden på intron, verser, refränger, stick
MIDI. grunder och tillämpning
MIDI grunder och tillämpning 2005-04-04 per.mattsson@miun.se Innehållet får ej kopieras eller återgivas utan skriftligt tillstånd från upphovsmannen. MIDI is the language of gods Lesser life forms communicate
Harry Peronius. ilife
Harry Peronius ilife Del 4 GARAGEBAND 21. Skapa ett GarageBand-projekt... 75 22. Spela in via mikrofon... 83 23. Redigera regioner... 88 24. Tillämpa effekter... 92 25. Exportera till itunes... 94 26.
Inledande programmering med C# (1DV402) Introduktion till C#
Introduktion till C# Upphovsrätt för detta verk Detta verk är framtaget i anslutning till kursen Inledande programmering med C# vid Linnéuniversitetet. Du får använda detta verk så här: Allt innehåll i
RÖDA TRÅDEN MUSIK ÅK 1 ÅK
RÖDA TRÅDEN MUSIK ÅK 1 ÅK 5 ÅK 1 Musicerande och musikskapande ÅK 2 Sång i olika former, unison sång, kanon och växelsång Spel i olika former, ensemblespel Imitation och improvisation med rörelser, rytmer
Introduktion till CUBASIS VST v 0.9.2 Patrik Eriksson 2002
Introduktion till CUBASIS VST v 0.9.2 Patrik Eriksson 2002 Cubasis är ett ljud- och musikarrangemangsprogram som kan hantera såväl samplat ljud som musikinformation via MIDI. Cubasis är en lättare version
RemoteBud. Inlämnas: Patrik Johnsson, e01pjo Viktor Karlsson, e01vk
RemoteBud Inlämnas: 2005-02-01 Patrik Johnsson, e01pjo Viktor Karlsson, e01vk Abstract Skulle du också vilja styra dina lampor och rulla ner dina persienner med hjälp av din TV-fjärrkontroll? Remotebud
Programmering. Den första datorn hette ENIAC.
Programmering Datorn är bara en burk. Den kan inget själv. Hur får man den att göra saker? Man programmerar den. Människor som funderar ut program som fungerar. Datorn förstår bara ettor och nollor och
Avancerade Webbteknologier
Projektledning, Business Knowledge Användbarhet & Layout Avancerade Webbteknologier Lkti Lektion 1 Kommunikation Tobias Landén tobias.landen@chas.se Avancerade webbteknologier del 1 (4 KY poäng) Syfte
Nyheterna i Visma Tendsign 4.0
Användarmanual Nyheterna i Visma Tendsign 4.0 Uppdaterad 2014-05-21 VISMA COMMERCE AB +46 13 47 47 500 tendsignsupport@visma.com www.tendsign.com Innehållsförteckning 1. Visma TendSign 4.0... 2 2. Grafiskt
FrontPage Express. Ämne: Datorkunskap (Internet) Handledare: Thomas Granhäll
FrontPage Express I programpaketet Internet Explorer 4.0 och 5.0 ingår också FrontPage Express som installeras vid en fullständig installation. Det är ett program som man kan använda för att skapa egna
Frekvenstabell över tärningskast med C#
Instruktion Frekvenstabell över tärningskast med C# Introduktionsuppgift Författare: Mats Loock Kurs: Inledande programmering med C# Kurskod:1DV402 Innehåll Du ska följa steg för steg -instruktionen i
Abstrakta datatyper Laboration 2 GruDat, DD1344
Abstrakta datatyper Laboration 2 GruDat, DD1344 Örjan Ekeberg (fritt från en idé av Henrik Eriksson) 27 oktober 2008 Målsättning Målet med denna laboration är att ge en inblick i hur man kan använda abstrakta
RÖDA TRÅDEN MUSIK ÅK 1 ÅK
RÖDA TRÅDEN MUSIK ÅK 1 ÅK 5 ÅK 1 Musicerande och musikskapande ÅK 2 Sång i olika former, unison sång, kanon och växelsång Spel i olika former, ensemblespel Imitation och improvisation med rörelser, rytmer
En Von Neumann-arkitektur ( Von Neumann-principen i föreläsning 1) innebär:
Lösningsförslag för 725G45-tentan 3/11-10 1. Vad menas med Von Neumann-arkitektur? (2p) En Von Neumann-arkitektur ( Von Neumann-principen i föreläsning 1) innebär: Data och instruktioner lagras i samma
Extramaterial till Matematik X
LIBER PROGRMMERING OCH DIGITL KOMPETENS Extramaterial till Matematik X NIVÅ TRE Programmering LÄRRE I den här uppgiften får du och dina elever en introduktion till programmering. Uppgiften vänder sig först
Föreläsning 1: Intro till kursen och programmering
Föreläsning 1: Intro till kursen och programmering Kursens hemsida http:www.it.uu.se/edu/course/homepage/prog1/vt11 Studentportalen http://www.studentportalen.uu.se Lärare: Tom Smedsaas, Tom.Smedsaas@it.uu.se
RÖDA TRÅDEN MUSIK ÅK 1 ÅK
RÖDA TRÅDEN MUSIK ÅK 1 ÅK 5 ÅK 1 Musicerande och musikskapande ÅK 2 Sång i olika former, unison sång, kanon och växelsång Spel i olika former, ensemblespel Imitation och improvisation med rörelser, rytmer
KUNSKAPSSTEGE FÖR VALTHORNSSPEL vid Musikinstitutet Kungsvägen
KUNSKAPSSTEGE FÖR VALTHORNSSPEL vid Musikinstitutet Kungsvägen Elevens självutvärdering och mål Arbetsgrupp: Kalle Hassinen, MIK INLEDNING I den här så kallade "Kunskapsstegen", har vi försökt precisera
Aktivitetsstöd Importfunktion
Utbildningsmaterial Aktivitetsstöd Importfunktion Sidan 1 (20) Datum: 2011-10-05 Version 1.2 Innehållsförteckning 1. Inledning... 3 2. Importera en fil med medlemmar i Aktivitetsstöd... 4 3. Lägga till
Model View Controller. Objekt-orienterad programmering och design (DIT952) Niklas Broberg, 2016
Model View Controller Objekt-orienterad programmering och design (DIT952) Niklas Broberg, 2016 Model View Controller Model View Controller (MVC) är ett design pattern (architectural pattern) som är väldigt
Objektorienterad Programkonstruktion
Objektorienterad Programkonstruktion Föreläsning 9 Projektuppgift Collection, Iterator, Composite Christian Smith ccs@kth.se 1 Projektuppgift IM, skickar meddelanden mellan datorer En lite större labbuppgift,
Nyheter i. Solen Administration 6.6
Nyheter i Solen Administration 6.6 Solen Administration Nyheter och förbättringar Office oberoende. Vi använder SolenReportGenerator (SRG) för alla rapporter. Om Office finns installerat kan den fortfarande
Elevernas uppfattningar om alltmer digitaliserad undervisning
Resultat Elevernas uppfattningar om alltmer digitaliserad undervisning Fråga 1 Mycket inspirerande (6) till mycket tråkigt (1) att arbeta med etologisidan Uppfattas som mycket inspirerande eller inspirerande
Programmering B med Visual C++ 2008
Programmering B med Visual C++ 2008 Innehållsförteckning 1 Repetition och lite nytt...5 I detta kapitel... 5 Programexekvering... 5 Loop... 5 Källkod... 6 Verktyg... 6 Säkerhetskopiera... 6 Öppna, kompilera,
Välkomna till DIT012 IPGO. Tyvärr en bug i Google Docs: Sidnummer stämmer inte alltid. Alla anteckningar börjar på sidan 1.
Välkomna till DIT012 IPGO 1 Tyvärr en bug i Google Docs: Sidnummer stämmer inte alltid. Alla anteckningar börjar på sidan 1. Lärare och Handledare Kursansvariga, examinatorer, föreläsare och handledare
Föreläsning 1: Intro till kursen och programmering
Föreläsning 1: Intro till kursen och programmering λ Kursens hemsida http:www.it.uu.se/edu/course/homepage/prog1/mafykht11/ λ Studentportalen http://www.studentportalen.uu.se UNIX-konton (systemansvariga
Introduktion till integrering av Schenkers e-tjänster. Version 2.0
Introduktion till integrering av Schenkers e- Version 2.0 Datum: 2008-06-18 Sida 2 av 8 Revisionshistorik Lägg senaste ändringen först! Datum Version Revision 2008-06-18 2.0 Stora delar av introduktionen
Datormusik - idéer och verktyg
Datormusik - idéer och verktyg Musik är organiserat ljud (vem var det nu som sa så?) men jobbet måste ju göras datormusik, musik som skapats med hjälp av datorer och där datoranvändningen haft väsentligt
Robotar i NXc. En laboration med Mindstormrobotar. Sammanfattning KUNGLIGA TEKNISKA HÖGSKOLAN
KUNGLIGA TEKNISKA HÖGSKOLAN Robotar i NXc En laboration med Mindstormrobotar Anton Gyllenhammar 7/30/12 antongy@kth.se II1310 Introduktionskurs i datateknik Sammanfattning Denna rapport beskriver NXc-
TDDC30 Programmering i Java, Datastrukturer och Algoritmer Lektion 5. Laboration 4 Lådplanering Exempel på grafik, ett avancerat program Frågor
TDDC30 Programmering i Java, Datastrukturer och Algoritmer Lektion 5 Laboration 4 Lådplanering Exempel på grafik, ett avancerat program Frågor 1 Laboration 4 - Introduktion Syfte: Öva på självständig problemlösning
Insamlingsverktyg - teknisk beskrivning av metadataformuläret
Digitala leveranser Insamlingsverktyg - teknisk beskrivning av metadataformuläret Innehåll: Allmänt Layout och uppbyggnad Hur man använder programmet Starta Fylla i metadata Skapa metadatafiler och leverera
RiWiCon Hovslagare. Import från HippoHov. Kontakter, Hästar, Journalposter Version 1.3.x
Sida 1 (8) Import från HippoHov Kontakter, Hästar, Journalposter Version 1.3.x Innehållsförteckning Förutsättningar... 2 Arbetsgång... 3 Placera filerna i en mapp på lämplig disk.... 3 Installera... 3
Viktiga begrepp. Algoritm. Array. Binärkod. Blockprogrammering. Bugg / fel och felsökning. Dataspel. Dator
Viktiga begrepp Den här ordlistan är till för dig som går kursen Om Programmering. Eftersom detta är en grundläggande kurs har vi i vissa fall gjort en del förenklingar. En del begrepp är svåra att förenkla,
Tentamen TEN1 HI
Tentamen TEN1 HI1029 2015-03-17 Skrivtid: 8.15-13.00 Hjälpmedel: Referensblad (utdelas), papper (tomma), penna Logga in med tentamenskontot ni får av skrivvakten. Det kommer att ta tid att logga in ha
Twisted Scissors. Ett projekt i kursen tnm047 2006/2007. Björn Gustafsson bjogu419@student.liu.se. Mats Wedell matwe812@student.liu.
Twisted Scissors Ett projekt i kursen tnm047 2006/2007 Björn Gustafsson bjogu419@student.liu.se Mats Wedell matwe812@student.liu.se Innehållsförteckning Innehållsförteckning...2 Inledning...3 Bakgrund...3
Hantera informationspaket i system för bevarande
Kompetensutveckling har erbjudits deltagare inom projektet Elektroniskt bevarande i form av en kurs i XML. Kursen har genomförts av Riksarkivet och haft en praktisk inriktning. Ett 10-tal personer deltog
Övning 1 i Ljudteknik A, 5p ETAA93
1/6 2006-04-23 i A, 5p ETAA93 ATT ANVÄNDA CUBASE SE...2 Redovisning...2 INLOGGNING MED MERA...2 STARTA CUBASE SE...2 SKAPA OCH HANTERA PROJEKT...3 Flytta projekt...3 POOLEN...3 Importera ljud...3 FRÅN
Registrera formulär 2014 mars
Ikmdok.se Registrera formulär 2014 mars Logga in Gå till www.ikmdok.se och klicka på länken IKMDOK-programmet för att komma till inloggningssidan för dataprogrammet. Skriv in ditt användarnamn och lösenord.
Kort om World Wide Web (webben)
KAPITEL 1 Grunder I det här kapitlet ska jag gå igenom allmänt om vad Internet är och vad som krävs för att skapa en hemsida. Plus lite annat smått och gott som är bra att känna till innan vi kör igång.
Elektronisk publicering TNMK30
Elektronisk publicering TNMK30 Förra gången Usability & interaktionsdesign Projektintroduktion Bildbehandling. Byte av handledare Istället för Martin Johansson Annsofi Pettersson, annpe655@student.liu.se
1. Starta programmet 2. Välja projekt antingen redan skapat eller nytt
1. Starta programmet Först öppnar vi programmet. Antingen finns det i rullningslisten, som jag har längst ner på skärmen. Klicka och programmet startas.1 Om det inte finns där välj program, hitta garageband
Att placera bilder i Word
Att placera bilder i Word Att infoga bilder i Word i en vanlig text kan lätt ge huvudbry. Det är inte helt lätt att fritt flytta på en infogad bild och texten tycks flyta lite godtyckligt samtidigt som
Calligra. En allmän inledning. Raphael Langerhorst Jost Schenck Översättare: Stefan Asserhäll
En allmän inledning Raphael Langerhorst Jost Schenck Översättare: Stefan Asserhäll 2 Innehåll 1 Inledning 5 1.1 Komponenter i Calligra.................................. 5 1.2 Översikt över funktioner i
Programmera Kontaktlåda USB i Mac
Programmera Kontaktlåda USB i Mac Med programvaran för Mac kan du göra så att ett tryck på din kontakt ger dig: text, kortkommandon och macron musrörelser, musklick och scroll multimediakommandon starta
Företagets slogan eller motto MUSIK
Företagets slogan eller motto MUSIK GITARREN HUVUD STÄMSKRUVAR HALS KROPP BAND 1 E 2 A STRÄNGARNAS TONNAMN STALL 3 D 4 G 5 B 6 E ÖPPNA ACKORD PIANO/KEYBOARD Tonernas namn kommer från alfabetets a b c d
Garageband. Garageband är ett program för att skapa och spela in musik på roliga och enkla sätt. Och så här ser appen ut.
Garageband Garageband är ett program för att skapa och spela in musik på roliga och enkla sätt. Och så här ser appen ut. Startsidan När man klickar på appen så kommer man till startsidan. Här ifrån når
PROGRAMMERING I NXC. Sammanfattning KUNGLIGA TEKNISKA HÖGSKOLAN
KUNGLIGA TEKNISKA HÖGSKOLAN PROGRAMMERING I NXC Namn: Michel Bitar 2012-08- 25 E- post: mbitar@kth.se Introduktionskurs i datateknik, II1310 Sammanfattning Intressant och lärorik laboration om att programmera
Validering av XML, Svensk geoprocess Guide för validering av XML, Svensk Geoprocess
2017-06-21 Validering av XML, Svensk geoprocess Guide för validering av XML, Svensk Geoprocess Validering av XML, Svensk geoprocess Bakgrund Ett behov finns av att kunna kontrollera och validera XML-filer
1. Enkel sökning Globalsökning Avancerad sökning Historik Söka via klassificeringsstruktur 14
Ledningskansliet, Juridik och dokumentation Patrik Spånning Westerlund MANUAL 2017-11-16 SLU ID: SLU.ua.2017.2.1.1.IA-9 Manual Sökningar i Public 360 Manual Sökningar i Public 360 Dokumentägare: LK/Dokumentationsenheten/
Inledning. Vad är ett datorprogram, egentligen? Olika språk. Problemlösning och algoritmer. 1DV433 Strukturerad programmering med C Mats Loock
Inledning Vad är ett datorprogram, egentligen? Olika språk Problemlösning och algoritmer 1 (14) Varför använda en dator? Genom att variera de program som styr datorn kan den användas för olika uppgifter.
Webbtjänster med API er
Webbtjänster med API er Mål med lektionen! Veta kursmålen. Lite grunder om WCF Vem är jag? Mitt namn är Björn Jönsson och jobbar på Tahoe Solutions, ni når mig via mail: bjorn.jonsson@tahoesolutions.se
TDDC77 Objektorienterad Programmering
TDDC77 Objektorienterad Programmering Föreläsning 5 Sahand Sadjadee IDA, Linköpings Universitet Hösttermin 2018 Outline Arrayer Metoder Räckvidd och Livslängd Arrayer Vända om inlästa värdena Vända om
Sö ka litteratur i ERIC
1 Sö ka litteratur i ERIC Det finns två ingångar om man vill söka i databasen ERIC: Via webben gratis version från the Education Resources Information Center: Denna version kan vara bra att känna till
Elektronisk ljudalstring. Synthesizers. Workstations, arbetsstationer & MIDI
Elektronisk ljudalstring & MIDI Synthesizers (Roland, Korg, ARP, Yamaha, Emu, Kawai, Alesis, Prophet, Moog, Ensoniq) Kan syntetisera/skapa olika (elektroniska) ljud Innehåller ofta olika digitala effekter
Svensk nationell datatjänst, SND BAS Online
Pass 4: Metadatastandarder Mer om metadatastandarder Välkommen till presentation 3 i pass 4. Den här presentationen handlar om några olika teman som har att göra med metadatastandarder. Jag kommer att
Grunder. Grafiktyper. Vektorgrafik
2 Grunder All vår början bliver svår eller hur det nu brukar heta, och detta är något som gäller även Flash. För den som är ovan vid Flash gäller det säkert extra mycket, då det kan vara knepigt att förstå
Programmering B PHP. Specialiseringen mot PHP medför att kursens kod i betygshanteringen heter PPHP1408.
Programmering B PHP DTR1208 - Programmering B 50 poäng Specialiseringen mot PHP medför att kursens kod i betygshanteringen heter PPHP1408. Mål Mål för kursen (Skolverket) Kursen skall ge fördjupade teoretiska
Uppgift 1 (vadå sortering?)
2011-06-08.kl.14-19 Uppgift 1 (vadå sortering?) Du skall skriva ett program som sorterar in en sekvens av tal i en vektor (en array ) enligt en speciell metod. Inledningsvis skall vektorn innehålla endast
Parameteröverföring. Exempel. Exempel. Metodkropp
Exempel atriangle.changesize (100, 50); // OK atriangle.changesize (100); // fel antal atriangle.changesize ( 1, 50); // fel datatyp char c = atriangle.getarea (); // fel datatyp Parameteröverföring I
Praktikrapport. Sofia Larsson MKVA12, HT12
Praktikrapport Facetime Media är en byrå belägen i Lund som hjälper företag att marknadsföra sig via sociala medier. I nuläget är det främst Facebook som är aktuellt men tanken är att företaget i framtiden
Revisionshistorik HandiTools 2.4
Revisionshistorik HandiTools 2.4 Version 2.4.11 Utfört 2012-01-10 Bugfix. Nu fungerar Bläddra bild i Windows XP och Vista. Bugfix. Den ändring av betyg för Ja/Nej-formulär som gjordes i v2.4.10 har nu
Introduktion till. (FGS) FGS Personal. Vägledning och förklaring till de förvaltningsgemensamma specifikationerna. Introduktion FGS Personal
Introduktion FGS Personal Introduktion till förvaltningsgemensamma specifikationer (FGS) FGS Personal Vägledning och förklaring till de förvaltningsgemensamma specifikationerna RAFGS2D3A20190225 Kontakta
M7005 Exportera data på Q- DAS ASCII Transferformat
Matematikföretaget jz www.m7005.metem.se. 170220/170926/180315/180418/Sjn M7005 Exportera data på Q- DAS ASCII Transferformat Användarhandbok T.ex M7005 Exportera data på Q_DAS ASCII Transferformat, Användarhandbok
Introduktion till frågespråket SQL (v0.91)
DD1370: Databaser och Informationssystem Hösten 2014 Petter Ögren Introduktion till frågespråket SQL (v0.91) 13:e November Disclaimer: Dessa anteckningar har producerats under viss tidspress, och kan därför
Objektorienterad programmering i Java I. Uppgifter: 2 Beräknad tid: 5-8 timmar (OBS! Endast ett labbtillfälle) Att läsa: kapitel 5 6
Laboration 2 Objektorienterad programmering i Java I Uppgifter: 2 Beräknad tid: 5-8 timmar (OBS! Endast ett labbtillfälle) Att läsa: kapitel 5 6 Syfte: Att kunna använda sig av olika villkors- och kontrollflödeskonstruktioner
Version 1.0. Benämning OSG Storage Engine. Senaste revidering Användarbeskrivning
Användarbeskrivning 1 1 BAKGRUND... 3 2 ÖVERSIKT AV SYSTEMET... 3 2.1 PROCESSNODER... 4 2.2 DATABASSERVER... 4 2.3 TERMINALSERVER/WEBBSERVER... 4 2.4 ARBETSSTATIONER PÅ DET LOKALA NÄTVERKET... 4 3 KONFIGURATION
Uppmärkningsspråk. TDP007 Konstruktion av datorspråk Föreläsning 4. Peter Dalenius Institutionen för datavetenskap
Uppmärkningsspråk TDP007 Konstruktion av datorspråk Föreläsning 4 Peter Dalenius Institutionen för datavetenskap 2015-02-03 Från förra gången XML-dokument specificeras med t.ex. en DTD Två olika sätt att
Kursvärdering 1DV433 Strukturerad programmering med C++ LP3 2011-12 Lärare: Tommy Löfqvist 17 svar
Kursvärdering 1DV433 Strukturerad programmering med C++ LP3 2011-12 Lärare: Tommy Löfqvist 17 svar KURSFRÅGA AV ÖVERGRIPANDE KARAKTÄR - Kursinnehållet har varit intressant och stimulerande I låg grad 0
Informationsmodellering och e-infrastrukturer
Informationsmodellering och e-infrastrukturer Semiotik Sign = Tecken Semiotik = Teckenlära Tecken är representationer Tecken är intentionella Tecken förmedlar information Figure 3.1: Levels of semiotics
Övningsuppgifter till föreläsning 2 Variabler och uttryck
Sid 1 (5) Övningsuppgifter till föreläsning 2 Variabler och uttryck Syfte Syftet med övningsuppgifterna är att träna på: Aritmetik, variabler, tilldelning, scanf och printf Generellt Diskutera gärna uppgifterna
Objektorienterad programmering i Java I
Laboration 4 Objektorienterad programmering i Java I Uppgifter: 1 Beräknad tid: 6 9 timmar Att läsa: Kapitel 7, 8 (stränghantering, arrayer och Vector) Utdelat material (paket) Syfte: Att kunna använda
Bildbaskontoret Version 2
Bildfabriken Bildbaskontoret Version 2 BRUKSANVISNING Beställning och support: Trollreda Resurscenter info@trollreda.se Rev D 05-02-01 Innehållsförteckning 2 Introduktion... 3 Utrustning... 3 Om bildbaser...
version 2.5 CONTENTO SVENSKA AB Introduktion till Kursbyggarverktyg
version 2.5 CONTENTO SVENSKA AB Introduktion till Kursbyggarverktyg Introduktion till kursbyggarverktyg Contento Svenska AB Hornsgatan 103 117 28 Stocholm Table of Contents KAPITEL 1 Introduktion 2 Begrepp
Nyheter i IA-systemet
Nyheter i IA-systemet från 2015-09-27 Sida 2 av 11 INNEHÅLL 1. ALLMÄNT OM VERSIONEN... 3 2. NYTT GRÄNSSNITT... 4 2.1. Logga ut-knappen... 4 2.2. Hjälp och information om systemet... 4 2.3. Vallistor...
Målet med undervisningen är att eleverna ska ges förutsättningar att:
Musik Målet med undervisningen är att eleverna ska ges förutsättningar att: o spela och sjunga i olika musikaliska former och genrer o skapa musik samt gestalta och kommunicera egna musikaliska tankar
Version: 1.0.1 Datum: 2012-05-23. DynaMaster 5 Golf Övergripande manual
Version: 1.0.1 Datum: 2012-05-23 DynaMaster 5 Golf Övergripande manual Innehållsförteckning 1 Inledning 3 1.1 Systemkrav 3 2 Logga in 4 3 Översikt 5 4 Verktygsfält och funktioner 6 4.1 Översikt gränssnitt
Tre misstag som äter upp din tid och hur kan göra någonting åt dem
Tre misstag som äter upp din tid och hur kan göra någonting åt dem En rapport från PersonligEffektivitet.com Innehåll Inledning... 3 Misstag #1: Önskelistan... 4 Misstag #2: Parkinsons lag... 7 Misstag
Komma igång med Qlikview
Denna instruktion är till dig som är ny i Qlikview och snabbt vill komma igång med grundläggande funktioner. Innehåll 1 Introduktion... 2 1.1 Behörighet... 2 1.2 Webbläsare... 2 2 Installation av Qlikview
Introduktion till programmering D0009E. Föreläsning 1: Programmets väg
Introduktion till programmering D0009E Föreläsning 1: Programmets väg 1 Vad är en dator? En maskin vars beteende styrs av de innehållet (bitmönster) som finns lagrade i datorns minne (inte helt olikt förra
Webbskribent @ Tjörn. Handläggare: Peter Olausson, webbmaster Datum: 2015-03-19. Tjörn Möjligheternas ö
Webbskribent @ Tjörn Handläggare: Peter Olausson, webbmaster Datum: 2015-03-19 Tjörn Möjligheternas ö Grundutbildning för skribenter på hemsidan och/eller intranätet Upplägg: Vi tar en titt på hur hemsidan
Programmering, grundkurs, 8.0 hp, Elektro, KTH, hösten 2010. Programmering: att instruera en maskin att utföra en uppgift, kräver olika språk:
Föreläsning 1 OH: Övergripande information Programmering: att instruera en maskin att utföra en uppgift, kräver olika språk: * maskinspråk = ettor och nollor, kan bara en maskin förstå. * programmeringsspråk
Mål med lektionen! Repetera och befästa kunskaperna.
Entity Framework Mål med lektionen! Repetera och befästa kunskaperna. Vad lektionen omfattar Repetera och gå igenom kursen lite snabbt. Vilka problem vill vi lösa? Vi arbetar med Webbapplikationer Vi kommer
Obs! Inget ur Javas standardbibliotek får användas i ett svar (om det inte står att man får det).
LULEÅ TEKNISKA UNIVERSITET Tentamen i Objektorienterad programmering och design Totala antalet uppgifter: 5 Lärare: Håkan Jonsson, Tomas Johansson, 491000 Resultatet anslås senast 08-05-16 i A-huset. Tillåtna