Network Controllable MP3 Player

Slides:



Advertisements
Similar presentations
MCCS391 - Application Project II Simon, Kuong Chio Ka Ramon, Vu Kai Chio Carl, Iun Sam Meng Presented by: 24 Jan 2002
Advertisements

BrightAuthor v3.7 software and BrightSign XD v4.7 firmware
Global MP3 Geoffrey Beers Deborah Ford Mike Quinn Mark Ridao.
1 iHome Automation System Home Automation System Team: Million Dollar Contingency Regiment Adam Doehling Chris Manning Ryan Patterson.
LOGO Lab Supervisor – Dr. WH Lau EE3271 Design Laboratory.
TANDBERG Content Server January Organizational Challenges Corporations have struggled in the past:  Achieving unified communications within a global.
A Grid Parallel Application Framework Jeremy Villalobos PhD student Department of Computer Science University of North Carolina Charlotte.
Quicktime Howell Istance School of Computing De Montfort University.
Intro to computers Hardware Operating System, Communication Computers PowerHardware Software OS Application COMMUNICATION.
Configurable System-on-Chip: Xilinx EDK
Embedded systems Lecture 25 February 2015.
Cambodia-India Entrepreneurship Development Centre - : :.... :-:-
The Easiest Way to Write Web Applications Jordi Sastre IT Architect, PSC May 2012.
Lab 2: Capturing and Displaying Digital Image
Technion – Israel Institute of Technology Department of Electrical Engineering High Speed Digital Systems Lab Spring 2009.
1.  Project Goals.  Project System Overview.  System Architecture.  Data Flow.  System Inputs.  System Outputs.  Rates.  Real Time Performance.
By: Oleg Schtofenmaher Maxim Fudim Supervisor: Walter Isaschar Characterization presentation for project Winter 2007 ( Part A)
M i SMob i S Mob i Store - Mobile i nternet File Storage Platform Chetna Kaur.
Computing and the Web Operating Systems. Overview n What is an Operating System n Booting the Computer n User Interfaces n Files and File Management n.
Operating Systems JEOPARDY Computer Repair NetworkOS OS Tasks ConceptsComponentsMisc
GIF - Graphics Interchange Format JPEG - Joint Photographic Experts Group PNG - Portable Network Graphics GIF images are limited to the 8 bit palette which.
Media Streaming Middleware for Handheld Devices (MeSMi) Project Supervisors:GroupMembers: Mr.Samantha SenarathnePradeep Dadigama Mr.Harshana LiyanageAsanka.
Asynchronous Interactive Design of Web Applications: Real-time SIP Message Monitoring System using AJAX Student: Yan-Hsiang Wang Advisor: Dr. Quincy Wu.
Application Block Diagram III. SOFTWARE PLATFORM Figure above shows a network protocol stack for a computer that connects to an Ethernet network and.
NETWORK HARDWARE AND SOFTWARE MR ROSS UNIT 3 IT APPLICATIONS.
Operating Systems David Goldschmidt, Ph.D. Computer Science The College of Saint Rose CIS 432.
NAND Flash Failure Behavior Sponsored By Micron Technology Inc.
MOIP – Music Over IP Bandwidth Considerations and Design Improvements Keo Malope Computer Engineering with Software Specialization.
Asterisk Architecture. Architecture APIs Defined for loadable modules Facilitates hardware and protocol abstraction The Asterisk core does not have to.
WESTERN WASHINGTON UNIVERSITY KENT SYKES 2009 Audio Field Recorder System Software Design.
MP3 Radio Richard Bannon & Michael Backman. Basic concept FM broadcast MP3 player  Allows you to listen to MP3’s through an FM radio  Better than a.
Voice Over IP – Software Western Washington University By: Jonathan R. Peterson.
/16 Final Project Report By Facializer Team Final Project Report Eagle, Leo, Bessie, Five, Evan Dan, Kyle, Ben, Caleb.
DaVinci Overview (features and programming) Kim dong hyouk.
Mary Ganesan and Lora Strother Campus Tours Using a Mobile Device.
Web Development. Agenda Web History Network Architecture Types of Server The languages of the web Protocols API 2.
Lab 4 HW/SW Compression and Decompression of Captured Image
Operating System Overview
ECE 492 Capstone Design: Multi-Functional Wireless Guitar
ECE 492 Capstone Design: Multi-Functional Wireless Guitar
Brady Thornton & Jason Brown (Group 12)
Troy Davis and Caitlin Smart
Chapter Objectives In this chapter, you will learn:
The Client-Server Model
2. OPERATING SYSTEM 2.1 Operating System Function
Home Automation ECE 492 Tarek Kaddoura & Jigar Nahar.
ECE 492 Capstone Design: Multi-Functional Wireless Guitar
.NET Framework 2.0 .NET Framework 3.0 .NET Framework 3.5
Networking COMP
Networking for Home and Small Businesses – Chapter 6
Directions: GO THROUGH THE FOLLWING SLIDES. Make sure you have quizlet cards for all the vocabulary. Study the terms.
CS 286 Computer Organization and Architecture
Hardware Support for Embedded Operating System Security
Food Inventory Tracker
Networking for Home and Small Businesses – Chapter 6
Group 16 Tarek Kaddoura Jigar Nahar
Wavestore Integrates…
Directions: GO THROUGH THE FOLLWING SLIDES. Make sure you have quizlet cards for all the vocabulary. Study the terms GCFLearnFree website “Computer Basics”:
Laura Kassovic Corey Zahner Jason Eaton Matt Baker
File Transfer Issues with TCP Acceleration with FileCatalyst
CS703 - Advanced Operating Systems
Good Morning/Afternoon/Evening
Part of Chapter 1 Key Concepts Networks
Network Controllable MP3 Player
Web Programming– UFCFB Lecture 8
Interactive Schedule Builder
ECE Computer Engineering Design Project
Performance and Scalability Issues of Multimedia Digital Library
Digital Literacy 1.00 Computer Basics
ECE 492 Capstone Design: Multi-Functional Wireless Guitar
Presentation transcript:

Network Controllable MP3 Player “Introduce group members and any parts of the project each has lead” Network Controllable MP3 Player Brady Thornton & Jason Brown (Group 12)

Goal A user-friendly MP3 player that can be controlled from any computer in your home. How? Music playback: Decode and play MP3 files stored on an SD card. Network Control: Integrate a web server and client API for controlling playback. User-Friendliness: Design a user interface to bring these components together.

Motivation Practical and appealing to technical and non-technical individuals alike Well-defined subject matter with a clear end goal Interesting design challenges with streaming data, multitasking, and client- server architecture

System Boundary   NIOS II/f CPU @ 100MHz SDRAM Audio Codec LCD SPI Interface Avalon Bus I2C & Data Bus SD Card Audio Out Ethernet Controller Ethernet Hardware Design Leverages built-in Altera DE2 components with some interfacing glue in the FPGA Use of open IP cores wherever possible (SD IP core, audio codec) Communication between blocks occurs on the Avalon bus Out In InOut

High-Level Features We’re Proud Of We wrote a lightweight ID3 parsing library using the ID3v1/v2 and MPEG Layer III encoding specifications. Hot-swapping SD cards during playback is supported, with asynchronous client updating. Multiple web clients are supported and updated in real time. Clients connected to the internet will automatically download artist images, album covers, artist biographies, and recommended artists.

Software Overview uC/OS-II operating system Hardware Audio Buffer Interrupts MP3 Decoder Task Web Server Task API calls Player State data

Multitasking Design We exploit interrupts on the audio codec’s FIFO buffer of output samples to perform real-time task switching. When the FIFO runs low on data (25% full), the interrupt fires and its ISR posts to a binary semaphore, dispatching further MP3 decoding. Once full, the decoder task pends on the semaphore, yielding the CPU to the web server task.

Multitasking Performance MP3 Decoder: Decode 1 second of audio (~ 0.65 seconds) Serve client requests (~ 0.35 seconds) Audio out: play 1 second of audio (Signal decoder when running low) 1 Second

Web Task & Client-Server Architecture The web server task parses API calls and updates the server side state if a control request has been made. Player state is a C structure that’s semaphore-protected to ensure there are no race conditions or other undesirable behavior during state changes. The player task checks the state during buffer re-loading and between tracks to control the output of audio samples.

Web Task & Client-Server Architecture Client initially loads web application using HTTP GET requests. Status checks are done once per second (per client). Control API requests are instantaneous. The client makes API calls using jQuery’s AJAX methods. Exchanged data is JSON formatted.

User Interface Design In industry, a user interface can mean the difference between a product’s success or its failure. Our goal: a pleasant, intuitive, and responsive UI. Designed and coded from the ground up.

Demo Web application