Game-based learning systems are considered very effective in learning and acquiring knowledge. Based on the research, it found that there is currently no combination of game-based learning and qualified exams.
INTRODUCTION
- Problem Statement and Motivation
- Existing Rhythm Games Do Not Contain Any Exam-Related Lessons
- Existing Rhythm Game Is Inconvenient In Setting Up
- Existing Rhythm Games Do Not Tell the Weaknesses Of The Players In
- Fails In Learning Guitar With The Incorrect Steps
- Objective
- Project Scope
- Contribution
- Background Information
Faculty of Information and Communication Technology (Perak Campus), UTAR 4 1.1.3 The existing rhythmic games do not tell the weaknesses of the players. Faculty of Information and Communication Technology (Perak Campus), UTAR 9 In addition, CAMPGuitar introduces a scoring system that tells the current standard of beginner guitarists.
LITERATURE REVIEW
- Rhythm Game : Rocksmith
- MIDI (Musical Instrument Digital Interface)
- Game-based Learning
- Fast Fourier Transform (FFT)
Most game-based learning games consist of few levels. The levels are ordered from lowest to highest depending on the difficulty of the skills. Faculty of Information and Communication Technology (Perak Campus), UTAR 16 Table 2.4-T1 shows the exact fundamental frequencies of the musical notes.
METHODOLOGIES AND TOOLS INVOLVED
Methodologies
Faculty of Information and Communication Technology (Perak Campus), UTAR 18 Iterative development introduces a better process in developing a quality system, this method allows developers to determine the strengths and weaknesses of the system. In addition, bugs and errors are discovered when developers run tests, reducing system problems. Starts planning with little information about a related field; most idea functions are generated without detailed knowledge.
Collect feedback from tests, bring feedback to the next iterative cycle for further improvement. After all testing is done, both users and developers are agreed and the system will be generated along with the module for integration testing.
Skills/Technologies involved
- XNA Game Studio
- C# Programming Language
- Sonuus G2M Guitar to MIDI Converter
- Stereo Jack Adaptor 3.5mm Male to 6.5mm Female
This helps reduce the drudgery of converting the guitar audio input into MIDI via audio input from the computer sound card. In addition, it has the ability to reduce the latency of the guitar input and the conversion of audio to midi. It follows the guitar strings separately through the guitar pickups, it can be used to control the keyboard synthesizers and synth modules.
Faculty of Information and Communication Technology (Perak Campus), UTAR 22 Figure 3.2-F2: Sonuus G2M Guitar To MIDI Converter Ports. Sonuu's G2M Guitar To MIDI Converter is a very easy to use hardware, users can just connect any electric guitar to the guitar input and then connect the MIDI output to the computer, it does not require any hexaphonic pickup. There is a boost switch next to the guitar input port, the function of the switch is to boost the low output pickups by adding extra power.
By using this hardware, users can easily convert the guitar input into different types of music, for example, from guitar to piano or saxophone. The guitar cable plugs into the 6.5mm female end and the male end of the stereo jack adapter plugs into the computer's audio input.
Timeline
Faculty of Information and Communication Technology (Perak Campus), UTAR 23 This is one way to bring the audio signal directly to the input of the computer. To make the normal guitar cable able to plug into the computer, the stereo jack adapter has the ability to make it work.
SYSTEM REQUIREMENTS
Requirement Specification
- User Requirements
- System Requirements
- Functional Requirements
- Non-functional Requirements
The system must be able to match the input with the running nodes to determine the score. Laptop with audio input port was required for this system to receive the guitar input signal. The system must be able to determine and calculate the total score for playing by users.
SYSTEM MODELING
STRUCTURAL DIAGRAM
- Component Diagram
Behavioural Diagram
- Use Case Diagram
SYSTEM DESIGN
Graphic User Interface Design
Faculty of Information and Communication Technology (Perak Campus), UTAR 31 can be used on X-box. Since there is no keyboard for the X-box, the user can select their choice from the list using the controller. The music notes and numbers appeared at the bottom of the screen, both moving to the left, followed by the music beats. When the song has reached the neck, the user must strum the guitar strings accordingly.
The score shows the current score of the user and the score will increase according to the accuracy of the user's game beats. Faculty of Information and Communication Technology (Perak Campus), UTAR 32 shows the current percentage that the user has successfully achieved in the given song. In addition, they can also listen to the last playback so that they know what their obvious mistakes are.
SYSTEM IMPLEMENTATION AND TESTING
Introduction
System Equipment Setup
System Implementation
- Pitch Detection Implementation
- Beats Movement Implementation
- FFT Algorithm Implementation
Faculty of Information and Communication Technology (Perak Campus), UTAR 35 Figure 7.2-F1: Equipment required for the system. Pitch detection consists of several steps, the stages include getting input from the audio input, fetching the input immediately to the FFT algorithm to calculate the frequency in real time, and also matching the frequency with the current notes on the screen. An audio file is opened and immediately writes the audio input to the "lastReplayFileName" location in real time.
A microphone wave in channel is declared and used to record and analyze the audio input signal, the signal is then fed to the FFT algorithm to calculate the frequencies. Faculty of Information and Communication Technology (Perak Campus), UTAR 37 Figure 7.3-F2: KAMPGuitarLaai music information element. Faculty of Information and Communication Technology (Perak Campus), UTAR 40 Figure 7.3-F4 shows how the FFT buffer samples are interleaved, the previous buffer crosses with the current buffer.
There are different types of windows with its own strengths and weaknesses, in this case Hamming window is chosen for the FFT calculation. The series of "buckets" is then calculated, and then proceeds to calculate the size, also known as
Implementation Status
The progress and completion of the system is also shown in the table i. Faculty of Information and Communication Technology (Perak Campus), UTAR 43 to make the progress traceable. Although necessary updates are available, the implementation of the system is considered complete for the current stage.
Problem Encountered During Implementation
Faculty of Information and Communication Technology (Perak Campus), UTAR 45 32-bit Operating System, and the current system development machine has 64-bit Operating System, which is the main problem of this error. Visual Studio allows the developer to change the platform target, which can solve the problem of different OS system types. By right-clicking on the project in the Solution Explorer, the properties of the project can be accessed for changes.
Faculty of Information and Communication Technology (Perak Campus), UTAR 46 Unfortunately, this problem is not over yet, there is another problem facing the platform target change. Loader lock is a managed debugging assistant (MDA) that helps avoid deadlocks when scripted code is being executed on different operating systems. Visual Studio has loader blocking enabled by default, so it must be disabled manually to run the project.
To disable, go to Exceptions under the Debugs tab, expand the Managed Debug Assistant list, and uncheck Loader Lock.
Test Plan
- Test Organization
- Test Schedule
Faculty of Information and Communication Technology (Perak Campus), UTAR 48 Experienced guitarists as well as beginner guitarists are involved in the end-user testing, the supervisor can take the place of the tester as the supervisor has prior knowledge in the related field. 1 System Developer Involved in the planning, design and management of testing and results documents. 2 End users or supervisor Experienced guitarists involved in testing to determine system accuracy.
Beginner guitarists, who are the target users of the system to test the usability of the system. The test schedule is planned to ensure that all the tests are carried out and completed on time. From the estimated time of testing, it takes approximately two weeks time to complete as listed in Table 7.6-T2.
Test Strategy
- Classes of Tests
The function of white box testing is to ensure the workability of the system's internal coding and infrastructure. This test mainly focuses on the input and output flows of the system, and also improves the system design along with the usability. Black box testing focuses on checking system inputs and outputs without looking at the internal code structure, implementation details and also any knowledge of the internal coding.
This test is basically focused on testing the external part of the system and also tests the requirements as well as the specification of the system. Most of the functions are used for multiple times as multiple actions are needed to have similar information. Most of the functions implemented in the system are dependent on the other functions, and therefore integrated testing is a must for this testing phase.
Using system testing will test the entire system as well as the input and output of the system. System requirements and functions worked correctly, test case results are within expectations.
CONCLUSION
Faculty of Information and Communication Technology (Perak Campus), UTAR 57 CAMPA guitar system based on the concept of rhythmic games. The purpose of using the concept of rhythmic games is to increase the enjoyment of the process of learning the guitar. By making the process of learning guitar more fun, the effectiveness of learning progress is definitely better.
Although the input frequency detection algorithm is widely used, it does not seem to be able to adapt well to guitar voice detection. There are limitations in detecting guitar input frequencies, the algorithm actually detects pitch harmony rather than exact pitch when in the higher range. Moreover, the algorithm is not able to detect multiple frequencies at the same time, which limited the user playing patterns, some patterns of playing multiple strings are not able to be implemented in the system.
You should start with other features instead of just focusing on audio recording and pitch detection. The overall picture of the system is almost complete, the GUI and some other functions still need to be improved.