Gitiles
Code Review
Sign In
gerrit.rockbox.org
/
rockbox
/
2acc0ac542d9186feee25bbe444c49cb59ca393e
/
apps
/
plugins
/
mpegplayer
/
stream_mgr.c
2acc0ac
Updated our source code header to explicitly mention that we are GPL v2 or
by Daniel Stenberg
· 16 years ago
c773eed
The greylib now takes care of the necessary aligment and uncached addressing itself, so simplify the code a bit.
by Jens Arnold
· 16 years ago
0509914
Enable nocache sections using the linker. PP5022/4 must use SW_CORELOCK now with shared variables in DRAM (it seems swp(b) is at least partially broken on all PP or I'm doing something very wrong here :\). For core-shared data use SHAREDBSS/DATA_ATTR. NOCACHEBSS/DATA_ATTR is available whether or not single core is forced for static peripheral-DMA buffer allocation without use of the UNCACHED_ADDR macro in code and is likely useful on a non-PP target with a data cache (although not actually enabled in config.h and the .lds's in this commit).
by Michael Sevakis
· 17 years ago
32bd0f8
Greyscale library: Optionally put the greyscale ISR on COP on portalplayertargets (only use with the grey_info structure in IRAM atm\!). This speeds up doom by ~50%, and makes mpegplayer work without stuttering audio on targets using it (measured on iPod 2nd Gen and Mini 2nd Gen). It needs corelocking certain functions in the LCD driver on 1st/2nd Gen.
by Jens Arnold
· 17 years ago
27cf677
Add a complete priority inheritance implementation to the scheduler (all mutex ownership and queue_send calls are inheritable). Priorities are differential so that dispatch depends on the runnable range of priorities. Codec priority can therefore be raised in small steps (pcmbuf updated to enable). Simplify the kernel functions to ease implementation and use the same kernel.c for both sim and target (I'm tired of maintaining two ;_). 1) Not sure if a minor audio break at first buffering issue will exist on large-sector disks (the main mutex speed issue was genuinely resolved earlier). At this point it's best dealt with at the buffering level. It seems a larger filechunk could be used again. 2) Perhaps 64-bit sims will have some minor issues (finicky) but a backroll of the code of concern there is a 5-minute job. All kernel objects become incompatible so a full rebuild and update is needed.
by Michael Sevakis
· 17 years ago
8493f5b
Greyscale library: Preparations for a gamma measurement plugin.
by Jens Arnold
· 17 years ago
3f4fd4d
Now that headphone plug pause/resume should be better behaved, support it in mpegplayer too.
by Michael Sevakis
· 17 years ago
93ddef3
mpegplayer: fix a small mistake in validating the start time.
by Michael Sevakis
· 17 years ago
a72499a
Greyscale library: Plugins can now put the management structure in IRAM for higher update speed. Use this in doom, mpegplayer, and zxbox. Made the api pointer part of the struct.
by Jens Arnold
· 17 years ago
29775f7
mpegplayer: A) Replace 'Start Menu' option with 'Resume Settings' 1) Start menu - Always show the start menu 2) Start menu if not completed - show the start menu if playback was interrupted before finishing (equivalent to the previous 'Resume No/Yes' screen) 3) Resume automatically - Always resume immediately with no prompting 4) Play from beginning - Always play file from the beginning. B) Do everything possible at this time to ensure USB connection and power down preserve the resume time. C) Add Settings menu to start menu D) Small OSD erasure drawing tweak.
by Michael Sevakis
· 17 years ago
753b657
Greyscale mpegplayer: * Use uncached greyscale buffers on dual core targets, removing the need for special cache handling. * Make the OSD properly disappear when viewing a widescreen or small video.
by Jens Arnold
· 17 years ago
ea5d196
Fully clone the gray_show(false) procedure without the forced lcd update.
by Michael Sevakis
· 17 years ago
75380fd
mpegplayer on grayscale targets: use greylib to display all text and graphics with the video images.
by Michael Sevakis
· 17 years ago
0e98d7e
mpegplayer: Misc seeking tweaks 1) Consolidate some code amongst functions. 2) Be sure times retured from stream_get_seek_time are never before the start of the movie 3) Stop PCM when clearing it so the current audio being sent to the audio device is also cleared.
by Michael Sevakis
· 17 years ago
feb5b15
All-new greyscale library, replacing the old one. Features: (1) Drawing/updating is faster than the old grayscale lib at full depth. (2) Always 129 shades instead of 2..33 shades. (3) No graininess caused by frequent updates (mpegplayer, doom, ...). (4) Needs less memory than the old grayscale lib at full depth. * The tradeoff is slightly higher CPU load in the ISR (frames are calculated 'live') and an extra function in the core. * Ported all plugins which used the graylib to use the new one. * Some slight optimisations for archos and H1x0 LCD update.
by Jens Arnold
· 17 years ago
c898630
mpegplayer seek tweak: Have video keep the time and duration of the last decoded frame up to date at all times. Make sure streams that have reported and EOS condition are placed back on active list when seeking which it seems is the cause of a video glitch where the initial frame may be presented after a seek but video playback wouldn't restart. Set logical seek time to video start in the parser after after initial load.
by Michael Sevakis
· 17 years ago
a5fc3f4
Initial WVS for mpegplayer. Adjusts to the user's preferred font and uses FF/RW preferences set for playback. Picked a random color for the base WVS color but it could be configured. Some engine tweaks to accomodate it since certain nescessities are clearer now. Fix a clipped YUV output bug in the SIM.
by Michael Sevakis
· 17 years ago
3b1f61a
mpegplayer loose ends: Move gray_release to the exit routine where it should be. All gray handling is on CPU except frame rendering.
by Michael Sevakis
· 17 years ago
a222f27
mpegplayer: Make playback engine fully seekable and frame-accurate and split into logical parts. Be sure to have all current features work. Actual UI for seeking will be added soon. Recommended GOP size is about 15-30 frames depending on target or seeking can be slow with really long GOPs (nature of MPEG video). More refined encoding recommendations for a particular player should be posted soon.
by Michael Sevakis
· 17 years ago