Web Programming for Sound and Music
A.Y. 2026/2027
Learning objectives
The course systematically covers technologies, algorithms, and data structures for representing and managing musical and audio information in web environments. The goal is to provide the necessary tools to address and solve both theoretical and practical problems, ranging from the development of web applications for computational musicology to the implementation of media players with advanced features.
Expected learning outcomes
By the end of the course, students will be able to design and implement browser applications for acquiring, generating, manipulating, and storing audio information. Specifically, they will master the following technologies: JavaScript control of HTML5 audio and video elements, Web Audio API, Web Speech API, and Web MIDI API.
Lesson period: Third four month period
Assessment methods: Esame
Assessment result: voto verbalizzato in trentesimi
Single course
This course cannot be attended as a single course. Please check our list of single courses to find the ones available for enrolment.
Course syllabus and organization
Single session
Responsible
Lesson period
Third four month period
Course syllabus
The course addresses methodologies, standards, and technologies for the design and development of Web applications focused on audio, music, and multimedia interaction. It combines theoretical and practical aspects, progressively introducing the main browser-based APIs for the management, synthesis, processing, and transmission of digital audio and music content.
Particular attention is devoted to the development of interactive applications using JavaScript, real-time audio processing, the integration of digital music protocols, and the implementation of browser-based software instruments.
The course covers the following topics:
- Introduction to the course and review of Web programming fundamentals: structure of an HTML5 page, event handling in JavaScript, DOM manipulation, interaction among HTML, CSS, and JavaScript, development and debugging tools.
- HTML5 audio and video elements: use of the
Particular attention is devoted to the development of interactive applications using JavaScript, real-time audio processing, the integration of digital music protocols, and the implementation of browser-based software instruments.
The course covers the following topics:
- Introduction to the course and review of Web programming fundamentals: structure of an HTML5 page, event handling in JavaScript, DOM manipulation, interaction among HTML, CSS, and JavaScript, development and debugging tools.
- HTML5 audio and video elements: use of the
Prerequisites for admission
Basic knowledge of Web programming is required, with particular reference to HTML5, CSS, and JavaScript. In particular, students should be able to understand and write simple dynamic Web pages and use the main JavaScript constructs, including event handling, DOM manipulation, and functions.
Introductory knowledge of computer music, digital multimedia, and digital audio representation may be helpful, although it is not strictly required.
No prior experience in digital audio processing, the Web Audio API, or MIDI technologies is required, as these topics are introduced during the course.
Introductory knowledge of computer music, digital multimedia, and digital audio representation may be helpful, although it is not strictly required.
No prior experience in digital audio processing, the Web Audio API, or MIDI technologies is required, as these topics are introduced during the course.
Teaching methods
The course is mainly delivered through lectures and guided practical activities held in a computer laboratory.
Lectures progressively introduce the theoretical and methodological foundations of Web programming for sound and music, with particular emphasis on Web standards, multimedia APIs, and technologies for digital musical interaction.
The practical sessions have a laboratory-oriented and application-driven approach and involve the guided development of examples, interactive applications, and small software projects based on the technologies covered during the course. These activities allow students to acquire operational skills in the design and implementation of Web-based audio and music applications.
Teaching activities include:
- commented code examples;
- live coding and practical demonstrations by the instructor;
- analysis and discussion of case studies;
- teaching materials and slides made available online.
Particular attention is devoted to the integration of theoretical and implementation-oriented aspects, fostering the autonomous development of design skills, problem-solving abilities, and software development competencies in the field of interactive multimedia.
Attendance is not mandatory but is strongly recommended, especially for the practical and laboratory activities.
Lectures progressively introduce the theoretical and methodological foundations of Web programming for sound and music, with particular emphasis on Web standards, multimedia APIs, and technologies for digital musical interaction.
The practical sessions have a laboratory-oriented and application-driven approach and involve the guided development of examples, interactive applications, and small software projects based on the technologies covered during the course. These activities allow students to acquire operational skills in the design and implementation of Web-based audio and music applications.
Teaching activities include:
- commented code examples;
- live coding and practical demonstrations by the instructor;
- analysis and discussion of case studies;
- teaching materials and slides made available online.
Particular attention is devoted to the integration of theoretical and implementation-oriented aspects, fostering the autonomous development of design skills, problem-solving abilities, and software development competencies in the field of interactive multimedia.
Attendance is not mandatory but is strongly recommended, especially for the practical and laboratory activities.
Teaching Resources
Course slides, code examples, and additional teaching materials provided by the instructor through the course online platform.
Technical specifications, standards, and official documentation related to the technologies covered during the course.
Additional technical documentation and supplementary materials indicated during the course.
Technical specifications, standards, and official documentation related to the technologies covered during the course.
Additional technical documentation and supplementary materials indicated during the course.
Assessment methods and Criteria
The examination consists of the submission, presentation, and oral discussion of an individual project developed by the student in accordance with the guidelines and technical specifications provided by the instructor during the course.
The project is intended to assess the student's ability to autonomously apply the knowledge and skills acquired in the field of Web programming for sound and music, with particular reference to the technologies and APIs covered during the course (HTML5 multimedia, JavaScript, Web Audio API, Web MIDI API, and related tools).
During the oral discussion, students will be required to:
- illustrate the adopted design and implementation choices;
- describe the architecture of the developed application;
- demonstrate understanding of the employed technologies;
- answer questions concerning the theoretical and practical topics covered during the course.
The final assessment is expressed on a 30-point scale and takes into account:
- technical correctness and functionality of the project;
- quality of the software implementation;
- consistency between project goals and adopted solutions;
- ability to appropriately integrate the technologies covered during the course;
- clarity of presentation and appropriate use of technical terminology;
- degree of autonomy, critical awareness, and mastery of the topics demonstrated during the oral discussion.
No mandatory midterm assessments are planned.
The project is intended to assess the student's ability to autonomously apply the knowledge and skills acquired in the field of Web programming for sound and music, with particular reference to the technologies and APIs covered during the course (HTML5 multimedia, JavaScript, Web Audio API, Web MIDI API, and related tools).
During the oral discussion, students will be required to:
- illustrate the adopted design and implementation choices;
- describe the architecture of the developed application;
- demonstrate understanding of the employed technologies;
- answer questions concerning the theoretical and practical topics covered during the course.
The final assessment is expressed on a 30-point scale and takes into account:
- technical correctness and functionality of the project;
- quality of the software implementation;
- consistency between project goals and adopted solutions;
- ability to appropriately integrate the technologies covered during the course;
- clarity of presentation and appropriate use of technical terminology;
- degree of autonomy, critical awareness, and mastery of the topics demonstrated during the oral discussion.
No mandatory midterm assessments are planned.
INFO-01/A - Informatics - University credits: 6
Lessons: 48 hours
Professor:
Ludovico Luca Andrea
Shifts:
Turno
Professor:
Ludovico Luca AndreaProfessor(s)
Reception:
Tuesday, 10.30 - 12.30 or by appointment
Laboratory of Music Informatics (LIM), Department of Computer Science, 4th floor