Rockbox.org home
release
dev builds
extras
themes manual
wiki
device status forums
mailing lists
IRC bugs
patches
dev guide



Rockbox mail archive

Subject: Re: MPEG thread global struct interface defn
From: Lion Templin (ltemplin_at_leonine.com)
Date: 2002-06-01


On Sat, 1 Jun 2002, Dave Chapman wrote:

> Do you also need the current position in seconds?

We seemed to think that it would be difficult to know the fileposition by
time becuase of the buffering nature of the internal MPEG chipset. Since I
am not yet aquainted with the specifics of loading streams into the chipset,
I can't comment from first-hand knowledge and my assumptions have been more
"blackbox" than anything. Other developers seemed to indicate this was the
case.

The idea was to implement a method where the total time of a track is
computed before it is sent to the player, then an independant clock is ran
and controlled by changes in this structure as necessary.

Fileposition can also give us an accurate method of recomputing time
independantly of the player.

> What about mpeg_version and mpeg_layer?

Useful, and I will add to my version.

My construction of this simple struct is a byproduct of a greater project I
mean to undertake (provided it's usefulness), which is to provide a high
degree of abstraction between the top layer UI code and the underlying LCD
screen. Both the Archos firmware and this project suffer from a very
immature UI becuase of the limitations of the LCD controller used (a problem
in the player, of which I own. I plan to ignore the recorder, for it can be
bitmap addressed). My plan is to build a virtual screen, much like the
ncurses library, and manage the loading, display, and storage of custom
single and multi-part characters. One of the primary applications I plan on
using this library for is to have a custom 5x5 or 5x6 font combined with a
progress bar that spans multiple cells. Until, of course, I found that the
primary caller of the MPEG thread ('apps/play.c') doesn't have any idea of
what's going on in the MPEG thread itself.

Lion

= lion is Lion J Templin (KB9ENE) lion_at_leonine.com =
= || // ||> UNIX Systems Consulting for the =
= ||=EONINE \OMPUTATIONAL ||\ESOURCES Northland FROM the Northland =
= UNIX Systems Consultants http://www.leonine.com =



Page was last modified "Jan 10 2012" The Rockbox Crew
aaa