COMP 523 Team E
Audio Ninja
Project Overview
Demo
Technical Overview
Codebase Review
1
2
3
Table of contents
4
Reflection
5
Functional Overview
Splitting
John passes the original audio and his CSV file to a script that creates a new audio file for each segment in the CSV.
Recording
John creates an audio recording. This could be in a variety settings such as:
Segmenting
John listens to the video and manually types timestamps into a CSV to mark the start/end of segments in his audio file. This is tedious and time consuming
Client: John McHugh, PhD
Users: Anyone that needs to segment an audio file into several smaller files and hopes to avoid the over complicated interface provided by other audio tools.
Functional Overview
Splitting
John passes the original audio and his CSV file to a script that creates a new audio file for each segment in the CSV.
Recording
John creates an audio recording. This could be in a variety settings such as:
Segmenting
John uses a centralized interface to interact with the audio file (play/pause/seek) and intuitively place & adjust markers without ever lifting his fingers off his keyboard. Once done, his markers are stored in a CSV file for export.
Client: John McHugh, PhD
Users: Anyone that needs to segment an audio file into several smaller files and hopes to avoid the over complicated interface provided by other audio tools.
XP-Style System Metaphor
The Architect’s Workbench
Media Markup is like an architect’s workbench. Given a plot of land, the architect marks the borders of the rooms and paths throughout the property. Once the architect has finished all of the planning, they pass the the blueprint off to construction workers that do all of the physical work to construct the actual rooms in the building.
Platform Description
Component | Technology | Rationale |
Desktop Framework | Tauri V2 | Multi-Platform, Offers small bundle sizes |
UI Framework | Svelte | Simple, Lightweight, Component based UI |
Backend & Business Logic | Rust | Fast, Efficient, Lots of library support, Easy unit testing |
Output File Format | CSV | Easily integrated with the client’s existing workflow |