+ All Categories
Home > Documents > Embedded Ogg Vorbis Audio Player Team Members: Trang Pham Luke Reisner Jason Winchell Advisor:...

Embedded Ogg Vorbis Audio Player Team Members: Trang Pham Luke Reisner Jason Winchell Advisor:...

Date post: 13-Jan-2016
Category:
Upload: ursula-simpson
View: 213 times
Download: 0 times
Share this document with a friend
14
Embedded Ogg Vorbis Audio Embedded Ogg Vorbis Audio Player Player Team Team Members: Members: Trang Pham Trang Pham Luke Reisner Luke Reisner Jason Winchell Jason Winchell Advisor: Advisor: Prof. Dongming Prof. Dongming Zhao Zhao University of Michigan-Dearborn University of Michigan-Dearborn
Transcript
Page 1: Embedded Ogg Vorbis Audio Player Team Members: Trang Pham Luke Reisner Jason Winchell Advisor: Advisor: Prof. Dongming Zhao University of Michigan-Dearborn.

Embedded Ogg Vorbis Audio PlayerEmbedded Ogg Vorbis Audio Player

Team Members:Team Members: Trang Pham Trang Pham

Luke ReisnerLuke Reisner

Jason WinchellJason Winchell

Advisor: Advisor: Prof. Dongming ZhaoProf. Dongming Zhao

University of Michigan-DearbornUniversity of Michigan-Dearborn

Page 2: Embedded Ogg Vorbis Audio Player Team Members: Trang Pham Luke Reisner Jason Winchell Advisor: Advisor: Prof. Dongming Zhao University of Michigan-Dearborn.

Introduction to Ogg VorbisIntroduction to Ogg Vorbis

• Ogg Vorbis is an audio compression format, Ogg Vorbis is an audio compression format, similar to MP3 (MPEG-1 Layer 3 audio) similar to MP3 (MPEG-1 Layer 3 audio)

• Ogg Vorbis audio has two primary Ogg Vorbis audio has two primary advantages over MP3 audio:advantages over MP3 audio:

1)1) The Ogg Vorbis audio format is free and open The Ogg Vorbis audio format is free and open source, whereas MP3 software must be licensedsource, whereas MP3 software must be licensed

2)2) The Ogg Vorbis format is more efficient than MP3, The Ogg Vorbis format is more efficient than MP3, producing higher quality audio at equivalent file producing higher quality audio at equivalent file sizessizes

Introduction to Ogg VorbisIntroduction to Ogg Vorbis

Page 3: Embedded Ogg Vorbis Audio Player Team Members: Trang Pham Luke Reisner Jason Winchell Advisor: Advisor: Prof. Dongming Zhao University of Michigan-Dearborn.

Player FeaturesPlayer Features

• The goal was to design and implement an embedded The goal was to design and implement an embedded digital audio player that supports Ogg Vorbisdigital audio player that supports Ogg Vorbis

• Audio files are read from Audio files are read from CompactFlash memory cardsCompactFlash memory cards

• The user interface consists The user interface consists of an LCD display and of an LCD display and several push buttonsseveral push buttons

• Audio is outputted through a 2.5 mm jackAudio is outputted through a 2.5 mm jack

• Open source software was used to implement the playerOpen source software was used to implement the player

Page 4: Embedded Ogg Vorbis Audio Player Team Members: Trang Pham Luke Reisner Jason Winchell Advisor: Advisor: Prof. Dongming Zhao University of Michigan-Dearborn.

Player RequirementsPlayer Requirements

• Support playback of all common formats of Ogg Vorbis Support playback of all common formats of Ogg Vorbis audioaudio

• Be able to read files from CompactFlash cards with a Be able to read files from CompactFlash cards with a directory structuredirectory structure

• Handle dynamic swapping of memory cardsHandle dynamic swapping of memory cards

• Provide a fast and accurate response to the userProvide a fast and accurate response to the user

• Support common play modes and custom playlistsSupport common play modes and custom playlists

• Enable the user to control various aspects of audio Enable the user to control various aspects of audio playbackplayback

• Have memory usage suitable for an embedded systemHave memory usage suitable for an embedded system

Page 5: Embedded Ogg Vorbis Audio Player Team Members: Trang Pham Luke Reisner Jason Winchell Advisor: Advisor: Prof. Dongming Zhao University of Michigan-Dearborn.

Technical SpecificationsTechnical Specifications• Audio formats: 8 or 16-bit, mono/stereo, 11-44 kHz, and 32-Audio formats: 8 or 16-bit, mono/stereo, 11-44 kHz, and 32-

192 kbps192 kbps

• Memory card file system: FAT16 with directory and long file Memory card file system: FAT16 with directory and long file

name support, at least 64 MB in sizename support, at least 64 MB in size

• Memory card detection: insert or eject at any timeMemory card detection: insert or eject at any time

• Player response time: 0.25 seconds or lessPlayer response time: 0.25 seconds or less

• Play modes: once, repeat, sequential, randomPlay modes: once, repeat, sequential, random

• Playlists: user-created, unlimited number of songsPlaylists: user-created, unlimited number of songs

• Audio control: volume, equalization, stop, pause, seekAudio control: volume, equalization, stop, pause, seek

• Memory usage: 4 MB ROM, 16 MB RAMMemory usage: 4 MB ROM, 16 MB RAM

Page 6: Embedded Ogg Vorbis Audio Player Team Members: Trang Pham Luke Reisner Jason Winchell Advisor: Advisor: Prof. Dongming Zhao University of Michigan-Dearborn.

SubsystemsSubsystems

• Linux kernel development (Luke)Linux kernel development (Luke)

Audio device driverAudio device driver

PCMCIA PCMCIA CompactFlash memory card driver CompactFlash memory card driver

• Audio player application (Trang and Jason)Audio player application (Trang and Jason)

– User interface (Trang)User interface (Trang)

LCD outputLCD output

Pushbutton inputPushbutton input

– Low level control (Jason)Low level control (Jason)

Audio playbackAudio playback

Memory card managementMemory card management

Page 7: Embedded Ogg Vorbis Audio Player Team Members: Trang Pham Luke Reisner Jason Winchell Advisor: Advisor: Prof. Dongming Zhao University of Michigan-Dearborn.

Design ConstraintsDesign Constraints

• High cost of development High cost of development hardware limited the choice of hardware limited the choice of the microcontrollerthe microcontroller

• Lack of time and resources, as well as the physical Lack of time and resources, as well as the physical size of the development board, prevented the size of the development board, prevented the implementation of a portable designimplementation of a portable design

• High cost of graphic LCDs led to the use of an LCD High cost of graphic LCDs led to the use of an LCD that requires a separate controller and doesn’t have that requires a separate controller and doesn’t have touch-screen supporttouch-screen support

Page 8: Embedded Ogg Vorbis Audio Player Team Members: Trang Pham Luke Reisner Jason Winchell Advisor: Advisor: Prof. Dongming Zhao University of Michigan-Dearborn.

Design ChoicesDesign Choices

• Operating system (open source, commercial, or custom)Operating system (open source, commercial, or custom)

– Linux was chosen due to its lack of licensing fees, Linux was chosen due to its lack of licensing fees, completely open source code, and large user basecompletely open source code, and large user base

• Audio playback (interrupt-driven or DMA-based)Audio playback (interrupt-driven or DMA-based)

– Interrupt-driven was selected because it was simpler to Interrupt-driven was selected because it was simpler to develop and provided acceptable performancedevelop and provided acceptable performance

• Player application (single-threaded or multi-threaded)Player application (single-threaded or multi-threaded)

– Multi-threaded implementation was used to increase Multi-threaded implementation was used to increase responsiveness and simplify the coding of parallel tasksresponsiveness and simplify the coding of parallel tasks

Page 9: Embedded Ogg Vorbis Audio Player Team Members: Trang Pham Luke Reisner Jason Winchell Advisor: Advisor: Prof. Dongming Zhao University of Michigan-Dearborn.

Hardware Block DiagramHardware Block Diagram

Micro ATX Power Supply

KeyboardEncoder

HitachiMicrocontroller

Compact-Flash

Card Reader

Optrex 128 x 64 LCD

Compact-FlashCard

Head-phoneJack

Headphones

AC Power

Push Buttons

Up One Level

Select

Up Arrow

Down Arrow

Right ArrowLeft Arrow

Page 10: Embedded Ogg Vorbis Audio Player Team Members: Trang Pham Luke Reisner Jason Winchell Advisor: Advisor: Prof. Dongming Zhao University of Michigan-Dearborn.

Software Block DiagramSoftware Block Diagram

InputThread

User InputCommands

VolumeControl

DetectMemory

Card

Decode/PlayOgg Vorbis

KeyboardEncoder

LCDController

PCMCIA CompactFlash Adapter

Digital/AnalogConverter

PushButtons

LCD Headphones

CompactFlashThread

Audio Output Thread

LCD OutputRead Files

from MemoryCard

CompactFlashCard

Software

Hardware

Output Thread

Page 11: Embedded Ogg Vorbis Audio Player Team Members: Trang Pham Luke Reisner Jason Winchell Advisor: Advisor: Prof. Dongming Zhao University of Michigan-Dearborn.

Test ResultsTest Results• Plays 8 or 16-bit, mono or stereo, 8-48 kHz, and 32-192 kbps Plays 8 or 16-bit, mono or stereo, 8-48 kHz, and 32-192 kbps

audioaudio

• Handles directory navigation and long file namesHandles directory navigation and long file names

• Supports memory cards up to 64 MB (in theory 128 TB)Supports memory cards up to 64 MB (in theory 128 TB)

• Memory cards can be swapped, except while bufferingMemory cards can be swapped, except while buffering

• All audio operations occur in less than 0.5 secondsAll audio operations occur in less than 0.5 seconds

• Handles once, repeat, sequential, and random play modesHandles once, repeat, sequential, and random play modes

• Supports volume control, stopping, pausing, and seekingSupports volume control, stopping, pausing, and seeking

• Requires less than 3 MB of ROM and 24 MB of RAMRequires less than 3 MB of ROM and 24 MB of RAM

• No support for custom playlists or audio equalizationNo support for custom playlists or audio equalization

Page 12: Embedded Ogg Vorbis Audio Player Team Members: Trang Pham Luke Reisner Jason Winchell Advisor: Advisor: Prof. Dongming Zhao University of Michigan-Dearborn.

Conclusions and Future WorkConclusions and Future Work

• Implementation of the audio player was mostly successfulImplementation of the audio player was mostly successful– Majority of the desired features were implemented, although Majority of the desired features were implemented, although

a portable hardware solution wasn’t completeda portable hardware solution wasn’t completed

• The player should help the spread of Ogg Vorbis and The player should help the spread of Ogg Vorbis and open-source softwareopen-source software– Full source code will be made Full source code will be made

available to the publicavailable to the public

• In the future, the following extensions could be made:In the future, the following extensions could be made: Adapt the design to work as a small, portable audio Adapt the design to work as a small, portable audio

playerplayer Add player features, such as custom playlist support and Add player features, such as custom playlist support and

audio equalization, or even PDA functionsaudio equalization, or even PDA functions

Page 13: Embedded Ogg Vorbis Audio Player Team Members: Trang Pham Luke Reisner Jason Winchell Advisor: Advisor: Prof. Dongming Zhao University of Michigan-Dearborn.

Acknowledgements Acknowledgements

• Academic AdvisorAcademic Advisor– Prof. Dongming ZhaoProf. Dongming Zhao

• Course InstructorsCourse Instructors– Prof. Malayappan Prof. Malayappan

ShridharShridhar– Prof. Paul WattaProf. Paul Watta

• Software ConsultationSoftware Consultation– Prof. Natarajan Prof. Natarajan

Narasimhamurthi Narasimhamurthi

• Hitachi Hitachi SemiconductorSemiconductor– Robin BlantonRobin Blanton

• MontaVista SoftwareMontaVista Software– John WaldronJohn Waldron

• Creative ControlsCreative Controls– Heather YoungHeather Young

• Dearborn GroupDearborn Group– Mark ZachosMark Zachos

Page 14: Embedded Ogg Vorbis Audio Player Team Members: Trang Pham Luke Reisner Jason Winchell Advisor: Advisor: Prof. Dongming Zhao University of Michigan-Dearborn.

FeedbackFeedback

Any questions, comments, or suggestions?Any questions, comments, or suggestions?


Recommended