summaryrefslogtreecommitdiff
path: root/apps/plugins/mpegplayer/mpegplayer.c
AgeCommit message (Collapse)Author
2008-01-27add support for the gigabeat remote control in mpegplayerMarcoen Hirschberg
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@16175 a1c6a512-1295-4272-9138-f99709370657
2008-01-12mpegplayer: A) Replace 'Start Menu' option with 'Resume Settings' 1) Start ↵Michael Sevakis
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. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@16061 a1c6a512-1295-4272-9138-f99709370657
2008-01-11Greyscale mpegplayer: * Use uncached greyscale buffers on dual core targets, ↵Jens Arnold
removing the need for special cache handling. * Make the OSD properly disappear when viewing a widescreen or small video. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@16052 a1c6a512-1295-4272-9138-f99709370657
2008-01-10Accept FS#8341 - rename BUTTON_SCROLL_UP/DOWN to FWD/BACK on the e200 to ↵Jonathan Gordon
make it consistant with the ipods. apart from removing a bit of confusion, it fixes the wheel in pictureflow and possibly elsewhere. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@16045 a1c6a512-1295-4272-9138-f99709370657
2008-01-09mpegplayer on grayscale targets: use greylib to display all text and ↵Michael Sevakis
graphics with the video images. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@16042 a1c6a512-1295-4272-9138-f99709370657
2008-01-09Prevent idle poweroff in the MPEG player plugin. Also save the settings when ↵Linus Nielsen Feltzing
receiving SYS_POWEROFF and SYS_USB_CONNECTED. Fixes FS#8439 and FS#8388. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@16033 a1c6a512-1295-4272-9138-f99709370657
2008-01-07mpegplayer: Fix a bitflag value. Add some commenting to the WVS code to help ↵Michael Sevakis
readability. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@16017 a1c6a512-1295-4272-9138-f99709370657
2008-01-04All-new greyscale library, replacing the old one. Features: (1) ↵Jens Arnold
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. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@15998 a1c6a512-1295-4272-9138-f99709370657
2008-01-03Fix some warnings/errors.Michael Sevakis
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@15992 a1c6a512-1295-4272-9138-f99709370657
2008-01-03Initial WVS for mpegplayer. Adjusts to the user's preferred font and uses ↵Michael Sevakis
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. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@15991 a1c6a512-1295-4272-9138-f99709370657
2007-12-29mpegplayer: Make playback engine fully seekable and frame-accurate and split ↵Michael Sevakis
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. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@15977 a1c6a512-1295-4272-9138-f99709370657
2007-11-21Okay. Really fix the red. It's a little ugly at this point, and clearly Paul Louden
I shouldn't be coding in whatever my mental state is. But the intent was not to remove the use of Select for pausing in Mpegplayer, for those who like it. The ugliness can be removed if we want to go back to a single pause button. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@15736 a1c6a512-1295-4272-9138-f99709370657
2007-11-21Fix my rampant making of mistakes.Paul Louden
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@15735 a1c6a512-1295-4272-9138-f99709370657
2007-11-21Allow use of either A or Select to pause in mpegplayer. This means you Paul Louden
can pause it the same way you pause music, but I've not removed the old button since mpegplayer currently has plenty of buttons, and not many functions. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@15734 a1c6a512-1295-4272-9138-f99709370657
2007-10-25enable jpeg, mpegplayer and midiplay on the mr500 (only jpeg is actually ↵Jonathan Gordon
usable though, mpegplayer data aborts) fix the config which should have been done a few commits ago git-svn-id: svn://svn.rockbox.org/rockbox/trunk@15296 a1c6a512-1295-4272-9138-f99709370657
2007-10-22Phase in thread_wait when waiting for a thread to exit. Begin phasing out ↵Michael Sevakis
the spinlock object for general use; it will become a multicore-only object for core locking. Take care of plugins first. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@15260 a1c6a512-1295-4272-9138-f99709370657
2007-10-21 FS#7997 - mpegplayer - enable/disable start menuRobert Kukla
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@15250 a1c6a512-1295-4272-9138-f99709370657
2007-10-19FS#7994 - Rename talk.c API, make talk_disable() affect all talking (not ↵Steve Bavin
just menus), hopefully save some space. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@15206 a1c6a512-1295-4272-9138-f99709370657
2007-10-18Fix a warning in the simDave Chapman
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@15185 a1c6a512-1295-4272-9138-f99709370657
2007-10-18Use the core codec thread's stack for the mpegplayer audio thread - this ↵Dave Chapman
will free up another 9KB of IRAM for use by mpegplayer git-svn-id: svn://svn.rockbox.org/rockbox/trunk@15181 a1c6a512-1295-4272-9138-f99709370657
2007-10-16FS#7971 - mpegplayer - start menu loads quicker - menu clean up - code clean upRobert Kukla
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@15143 a1c6a512-1295-4272-9138-f99709370657
2007-10-16Finally full multicore support for PortalPlayer 502x targets with an eye ↵Michael Sevakis
towards the possibility of other types. All SVN targets the low-lag code to speed up blocking operations. Most files are modified here simple due to a name change to actually support a real event object and a param change to create_thread. Add some use of new features but just sit on things for a bit and leave full integration for later. Work will continue on to address size on sensitive targets and simplify things if possible. Any PP target having problems with SWP can easily be changed to sw corelocks with one #define change in config.h though only PP5020 has shown an issue and seems to work without any difficulties. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@15134 a1c6a512-1295-4272-9138-f99709370657
2007-10-15Delay boosting and backlight on until after the menu selection is done. ↵Peter D'Hoye
Fixes FS #7964. There remains an issue with the movie being loaded before the menu is shown. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@15123 a1c6a512-1295-4272-9138-f99709370657
2007-10-14Use the CLOCK_RATE define instead of 44100.Antoine Cellerier
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@15110 a1c6a512-1295-4272-9138-f99709370657
2007-10-11Cosmetic change - change the "loading ..." splashes to "Loading...", as used ↵Dave Chapman
everywhere else in Rockbox git-svn-id: svn://svn.rockbox.org/rockbox/trunk@15081 a1c6a512-1295-4272-9138-f99709370657
2007-10-11FS#7931 - mpegplayer - resume on idle off - play files without start time of ↵Robert Kukla
zero git-svn-id: svn://svn.rockbox.org/rockbox/trunk@15079 a1c6a512-1295-4272-9138-f99709370657
2007-10-09fix yellow and some house cleaningRobert Kukla
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@15056 a1c6a512-1295-4272-9138-f99709370657
2007-10-09FS#7487 - mpegplayer - video start time seek with resumeRobert Kukla
by John S. Gwynne & Brian J. Morey This should stop the patch from breaking again and give them opportunity to improve it further. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@15052 a1c6a512-1295-4272-9138-f99709370657
2007-10-06Discontinue any use of 'swp(b)' on PP5020. While clocking is stable, some ↵Michael Sevakis
testing revealed this instruction can still cause problems without concurrent access. Make sure mpegplayer is safe while not using spinlock (no longer atomic) between cores to protect the stream byte counters - use nonwrapping head and tail pointers. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@15005 a1c6a512-1295-4272-9138-f99709370657
2007-10-03Just temporarily disable talk menus, in case the player is reset whilst in ↵Steve Bavin
mpegplayer. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@14970 a1c6a512-1295-4272-9138-f99709370657
2007-10-02This should fix the voice issues in menus in mpegplayer.Michael Sevakis
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@14962 a1c6a512-1295-4272-9138-f99709370657
2007-09-28Get the plugins synced up with the threading changes.Michael Sevakis
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@14881 a1c6a512-1295-4272-9138-f99709370657
2007-09-20Enable plugins on the Sansa C200. Large parts taken from patch FS#7749 by ↵Marianne Arnold
Max Kelley with tweaks, bit of cleanup and additional bitmaps by me. Some of the now enabled plugins could still be improved in regard to screen size adaptation or keymaps but this way it can easily be done later and one by one. The rather ugly 'ifndef's I added temporaryly in plugins/SOURCES will also go one by one. Plugin button actions cause some quirks in a few plugins (e.g. 'clock') but since it's not critical , the bitmaps were already done and it makes a good example for discussing plugin button actions, I thought it could go in. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@14771 a1c6a512-1295-4272-9138-f99709370657
2007-09-09Repair mpegplayer on 64 bit sims. No reason for doing fancy bitshifting ↵Jens Arnold
opts, this is all compile time... git-svn-id: svn://svn.rockbox.org/rockbox/trunk@14659 a1c6a512-1295-4272-9138-f99709370657
2007-08-16Pass plugin api pointer to funtion directly, fixes crashes when doing ↵Peter D'Hoye
incremental builds. Fix incorrect backlight changes in rockblox introduced recently. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@14373 a1c6a512-1295-4272-9138-f99709370657
2007-08-15Bring mpegplayer backlight fix to the other plugins, this also fixes some ↵Peter D'Hoye
wrongly ifdef'd backlight calls. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@14352 a1c6a512-1295-4272-9138-f99709370657
2007-08-13Also keep the backlight on in mpegplayer when plugged in. Fixes FS #7584. ↵Peter D'Hoye
Created two helper functions for this, because this issue also exists in other plugins (to do). The helper functions are in the pluginlib in helper.[ch], where other common stuff can be put. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@14321 a1c6a512-1295-4272-9138-f99709370657
2007-08-04Mpegplayer: Clear up some other cache issues. Use the better sleep loops for ↵Michael Sevakis
message sending. I still won't promise 100% trouble-free operation on dual-core since adding a thread to the COP from the CPU is a race condition anyway. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@14173 a1c6a512-1295-4272-9138-f99709370657
2007-07-27Rockbox compiles and boots now on the 2nd gen, but doesn't work properly yet.Jens Arnold
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@14021 a1c6a512-1295-4272-9138-f99709370657
2007-07-23Remove the mad_frame_overlap[] buffer from the main (IRAM) stack in order to ↵Dave Chapman
prevent the reported stack overflows. On Coldfire, there is enough room to keep it in IRAM, but not on PortalPlayer. However, this should not cause problems as the audio thread has an entire core to itself (except for buffering) and IRAM doesn't make much difference on PP502x. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@13968 a1c6a512-1295-4272-9138-f99709370657
2007-07-20mpegplayer: Refine the earlier additions and be more explicit about a ↵Michael Sevakis
message intent by renaming it. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@13938 a1c6a512-1295-4272-9138-f99709370657
2007-07-19MpegPlayer: Add a simple messaging scheme for sending stream commands. ↵Michael Sevakis
Remove the need to disable FIQ when adding to PCM buffer. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@13931 a1c6a512-1295-4272-9138-f99709370657
2007-06-19change the fps calculation so setting changes are visible without delayMarcoen Hirschberg
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@13678 a1c6a512-1295-4272-9138-f99709370657
2007-06-19move button_loop to prepare for the next commitMarcoen Hirschberg
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@13677 a1c6a512-1295-4272-9138-f99709370657
2007-06-10Plugins that play sound must be sure to set inputs and outputs on audio ↵Michael Sevakis
muxed targets. Add strict adherence to the interface protocols. Make sure playback sets the playback output as well. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@13604 a1c6a512-1295-4272-9138-f99709370657
2007-05-19attempt to make the Gigabeat button mappings in the plugins more logical and ↵Marcoen Hirschberg
in line with the mapping in rockbox itself git-svn-id: svn://svn.rockbox.org/rockbox/trunk@13436 a1c6a512-1295-4272-9138-f99709370657
2007-05-19Prevent idle poweroff in the MPEG video player plugin. Fixes FS#6091.Linus Nielsen Feltzing
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@13413 a1c6a512-1295-4272-9138-f99709370657
2007-04-21Missed a couple. Hopefully fix all warnings.Michael Sevakis
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@13234 a1c6a512-1295-4272-9138-f99709370657
2007-04-21General housekeeping: Make plugin buffer functions take size_t * instead of ↵Michael Sevakis
int * to match the parameter type of the buffer functions called in the core. Get rid of unsafe int * <==> size_t * casting. Use ssize_t where int was used and size_t where unsigned int was used in the buffer calls to not alter signedness in the plugins. No API version change since it should only be an issue for 64-bit sim builds. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@13233 a1c6a512-1295-4272-9138-f99709370657
2007-04-21mpegplayer: Fix jumping past the frame waiting if Limit FPS is on but Skip ↵Michael Sevakis
Frames is not. Fixes FS#7055 though this was just a general mistake and not limited to the sim. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@13227 a1c6a512-1295-4272-9138-f99709370657