Commit graph

144 commits

Author SHA1 Message Date
Robert Kukla
d6c8b57b50 M:Robe 100: add button definition/bitmaps to plugins and enable compilation
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@16469 a1c6a512-1295-4272-9138-f99709370657
2008-03-01 22:55:09 +00:00
Michael Sevakis
3f4fd4d6a0 Now that headphone plug pause/resume should be better behaved, support it in mpegplayer too.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@16179 a1c6a512-1295-4272-9138-f99709370657
2008-01-27 21:45:15 +00:00
Marcoen Hirschberg
11298701dd add support for the gigabeat remote control in mpegplayer
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@16175 a1c6a512-1295-4272-9138-f99709370657
2008-01-27 00:18:29 +00:00
Michael Sevakis
29775f7bab 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.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@16061 a1c6a512-1295-4272-9138-f99709370657
2008-01-12 05:45:38 +00:00
Jens Arnold
753b65737f 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.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@16052 a1c6a512-1295-4272-9138-f99709370657
2008-01-11 00:46:09 +00:00
Jonathan Gordon
81ba146706 Accept FS#8341 - rename BUTTON_SCROLL_UP/DOWN to FWD/BACK on the e200 to 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-10 08:08:31 +00:00
Michael Sevakis
75380fd27d mpegplayer on grayscale targets: use greylib to display all text and graphics with the video images.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@16042 a1c6a512-1295-4272-9138-f99709370657
2008-01-09 22:19:25 +00:00
Linus Nielsen Feltzing
741f5b24b3 Prevent idle poweroff in the MPEG player plugin. Also save the settings when 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-09 14:26:19 +00:00
Michael Sevakis
2a8f39820b mpegplayer: Fix a bitflag value. Add some commenting to the WVS code to help readability.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@16017 a1c6a512-1295-4272-9138-f99709370657
2008-01-07 17:27:08 +00:00
Jens Arnold
feb5b15e9b 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.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@15998 a1c6a512-1295-4272-9138-f99709370657
2008-01-04 23:42:38 +00:00
Michael Sevakis
d9a895599e Fix some warnings/errors.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@15992 a1c6a512-1295-4272-9138-f99709370657
2008-01-03 17:30:50 +00:00
Michael Sevakis
a5fc3f4df4 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.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@15991 a1c6a512-1295-4272-9138-f99709370657
2008-01-03 17:14:28 +00:00
Michael Sevakis
a222f27c4a 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.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@15977 a1c6a512-1295-4272-9138-f99709370657
2007-12-29 19:46:35 +00:00
Paul Louden
a14aface6b Okay. Really fix the red. It's a little ugly at this point, and clearly
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-21 06:09:17 +00:00
Paul Louden
0ffe935d32 Fix my rampant making of mistakes.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@15735 a1c6a512-1295-4272-9138-f99709370657
2007-11-21 06:04:44 +00:00
Paul Louden
ad97b0437f Allow use of either A or Select to pause in mpegplayer. This means you
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-11-21 05:49:00 +00:00
Jonathan Gordon
a256878e77 enable jpeg, mpegplayer and midiplay on the mr500 (only jpeg is actually 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-25 07:44:56 +00:00
Michael Sevakis
7e12bba0d2 Phase in thread_wait when waiting for a thread to exit. Begin phasing out 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-22 05:57:38 +00:00
Robert Kukla
d4f382252d FS#7997 - mpegplayer - enable/disable start menu
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@15250 a1c6a512-1295-4272-9138-f99709370657
2007-10-21 16:44:13 +00:00
Steve Bavin
32a9575130 FS#7994 - Rename talk.c API, make talk_disable() affect all talking (not just menus), hopefully save some space.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@15206 a1c6a512-1295-4272-9138-f99709370657
2007-10-19 15:31:42 +00:00
Dave Chapman
25ff558854 Fix a warning in the sim
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@15185 a1c6a512-1295-4272-9138-f99709370657
2007-10-18 10:38:55 +00:00
Dave Chapman
c5263a4a13 Use the core codec thread's stack for the mpegplayer audio thread - this 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-18 08:56:32 +00:00
Robert Kukla
0b911fefea FS#7971 - mpegplayer - start menu loads quicker - menu clean up - code clean up
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@15143 a1c6a512-1295-4272-9138-f99709370657
2007-10-16 14:23:50 +00:00
Michael Sevakis
a9b2fb5ee3 Finally full multicore support for PortalPlayer 502x targets with an eye 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-16 01:25:17 +00:00
Peter D'Hoye
8714b75d2b Delay boosting and backlight on until after the menu selection is done. 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-15 19:29:33 +00:00
Antoine Cellerier
57418b2192 Use the CLOCK_RATE define instead of 44100.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@15110 a1c6a512-1295-4272-9138-f99709370657
2007-10-14 21:05:26 +00:00
Dave Chapman
e88ac4ce4a Cosmetic change - change the "loading ..." splashes to "Loading...", as used everywhere else in Rockbox
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@15081 a1c6a512-1295-4272-9138-f99709370657
2007-10-11 23:06:05 +00:00
Robert Kukla
83ec896586 FS#7931 - mpegplayer - resume on idle off - play files without start time of zero
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@15079 a1c6a512-1295-4272-9138-f99709370657
2007-10-11 22:38:16 +00:00
Robert Kukla
a07e93938c fix yellow and some house cleaning
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@15056 a1c6a512-1295-4272-9138-f99709370657
2007-10-09 21:28:51 +00:00
Robert Kukla
fd3fe45bc1 FS#7487 - mpegplayer - video start time seek with resume
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-09 20:42:20 +00:00
Michael Sevakis
f6de0d4083 Discontinue any use of 'swp(b)' on PP5020. While clocking is stable, some 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-06 15:01:37 +00:00
Steve Bavin
5a78a06073 Just temporarily disable talk menus, in case the player is reset whilst in mpegplayer.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@14970 a1c6a512-1295-4272-9138-f99709370657
2007-10-03 16:17:36 +00:00
Michael Sevakis
51a8a1e3f3 This should fix the voice issues in menus in mpegplayer.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@14962 a1c6a512-1295-4272-9138-f99709370657
2007-10-02 20:24:25 +00:00
Michael Sevakis
d7cb90722f Get the plugins synced up with the threading changes.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@14881 a1c6a512-1295-4272-9138-f99709370657
2007-09-28 11:12:45 +00:00
Marianne Arnold
12ddb8ea0d Enable plugins on the Sansa C200. Large parts taken from patch FS#7749 by 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-20 10:49:48 +00:00
Jens Arnold
2e305c6381 Repair mpegplayer on 64 bit sims. No reason for doing fancy bitshifting opts, this is all compile time...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@14659 a1c6a512-1295-4272-9138-f99709370657
2007-09-09 22:47:28 +00:00
Peter D'Hoye
767c0ec589 Pass plugin api pointer to funtion directly, fixes crashes when doing 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-16 23:01:18 +00:00
Peter D'Hoye
cb53e3cef4 Bring mpegplayer backlight fix to the other plugins, this also fixes some wrongly ifdef'd backlight calls.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@14352 a1c6a512-1295-4272-9138-f99709370657
2007-08-15 12:42:09 +00:00
Peter D'Hoye
a5d4d67763 Also keep the backlight on in mpegplayer when plugged in. Fixes FS #7584. 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-13 22:31:11 +00:00
Michael Sevakis
ffbbc60f38 Mpegplayer: Clear up some other cache issues. Use the better sleep loops for 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-08-04 00:48:57 +00:00
Jens Arnold
b701322fea Rockbox compiles and boots now on the 2nd gen, but doesn't work properly yet.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@14021 a1c6a512-1295-4272-9138-f99709370657
2007-07-27 09:57:27 +00:00
Dave Chapman
b97c00dc8e Remove the mad_frame_overlap[] buffer from the main (IRAM) stack in order to 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-23 23:01:47 +00:00
Michael Sevakis
930278bcc0 mpegplayer: Refine the earlier additions and be more explicit about a message intent by renaming it.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@13938 a1c6a512-1295-4272-9138-f99709370657
2007-07-20 03:56:59 +00:00
Michael Sevakis
b8bd1ee557 MpegPlayer: Add a simple messaging scheme for sending stream commands. 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-07-19 19:32:29 +00:00
Marcoen Hirschberg
3585ee7a3f change the fps calculation so setting changes are visible without delay
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@13678 a1c6a512-1295-4272-9138-f99709370657
2007-06-19 21:30:45 +00:00
Marcoen Hirschberg
95d414542c move button_loop to prepare for the next commit
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@13677 a1c6a512-1295-4272-9138-f99709370657
2007-06-19 21:29:34 +00:00
Michael Sevakis
4597ebe24b Plugins that play sound must be sure to set inputs and outputs on audio 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-06-10 02:10:47 +00:00
Marcoen Hirschberg
a7168feeac attempt to make the Gigabeat button mappings in the plugins more logical and 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-19 23:38:09 +00:00
Linus Nielsen Feltzing
fcbc699dca Prevent idle poweroff in the MPEG video player plugin. Fixes FS#6091.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@13413 a1c6a512-1295-4272-9138-f99709370657
2007-05-19 17:02:55 +00:00
Michael Sevakis
8676dc25f5 Missed a couple. Hopefully fix all warnings.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@13234 a1c6a512-1295-4272-9138-f99709370657
2007-04-21 19:07:15 +00:00
Michael Sevakis
26d242ae65 General housekeeping: Make plugin buffer functions take size_t * instead of 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-21 18:38:25 +00:00
Michael Sevakis
045d3cc9b5 mpegplayer: Fix jumping past the frame waiting if Limit FPS is on but Skip 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
2007-04-21 05:27:45 +00:00
Michael Sevakis
01c0fb492f mpegplayer: Better frame dropping code adapted to the using correct timestamps change. Even smoother frames. Higher FPS and smoother when having to drop than before (Around 15fps regulated for Elephants Dream on x5 which is a dismal situation, up from around 12 or so).
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@13205 a1c6a512-1295-4272-9138-f99709370657
2007-04-18 23:23:18 +00:00
Michael Sevakis
7afe2e8693 Oops. Have to do dropping based on future frame type but based upon the current one's lateness otherwise nice screen garbage can result from dropping/drawing the wrong ones. A small amount of refinement will be needed here later.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@13176 a1c6a512-1295-4272-9138-f99709370657
2007-04-16 04:14:58 +00:00
Michael Sevakis
eb4dcd80b7 mpegplayer: Better sync, smoother frames - corrected a few minor flaws. Keep timestamps 32-bit in stead of 33 - a 45kHz clock is good enough for humans. Increase pts queue size since the mpeg buffer is now filled when buffering the audio stream. Cleanup frame drop code a little too.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@13175 a1c6a512-1295-4272-9138-f99709370657
2007-04-16 03:34:56 +00:00
Michael Sevakis
9bfa237869 mpegplayer: Get it in better shape for dual core targets. Utilize the newly added cache stuff. Add a mutex to core shared buffer variables. I'd prefer to have a true spinlock there but this will do for the moment and protect the data. Nonetheless I can't seem to crash it on an e200 any longer and the display garbage is gone.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@13153 a1c6a512-1295-4272-9138-f99709370657
2007-04-14 02:46:15 +00:00
Jens Arnold
47bf6c5a5a Moved archos backlight code to target tree. Changed old mutlivalue CONFIG_BACKLIGHT to a simple HAVE_BACKLIGHT.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@13136 a1c6a512-1295-4272-9138-f99709370657
2007-04-12 22:12:13 +00:00
Michael Sevakis
8b9df97d96 mpegplayer: Recover from audio stream errors better. Correct some sizes. Add some needed extra guard buffer. Add in an important additional wrap check. Stream demuxer needs work on when it looks ahead in the stream and it should wrap though.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@13123 a1c6a512-1295-4272-9138-f99709370657
2007-04-12 11:36:12 +00:00
Michael Sevakis
5f1abee2dc mpegplayer: oops, added an IRAM init/buffer get order switch that should have been reversed before committing
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@13120 a1c6a512-1295-4272-9138-f99709370657
2007-04-12 07:57:01 +00:00
Michael Sevakis
4bd827b242 mpegplayer: do some reordering, add some needed volatiles, make sure thread creation failure is handled correctly, make sure audio doesn't attempt to finish remaining data if it was asked to stop.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@13118 a1c6a512-1295-4272-9138-f99709370657
2007-04-12 06:02:47 +00:00
Michael Sevakis
dfa9f44034 mpegplayer: Hopefully help some problems on dual core. Make USB mode exit correctly.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@13109 a1c6a512-1295-4272-9138-f99709370657
2007-04-11 11:02:45 +00:00
Michael Sevakis
69588c3934 mpegplayer: do a little post commit cleanup.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@13095 a1c6a512-1295-4272-9138-f99709370657
2007-04-10 15:22:17 +00:00
Michael Sevakis
6689cb0f9b mpegplayer: Get A-V synchronized. Improve frame sync and dropping logic and take advantage of decoder's ability to assist. Straighten out some threading problems. Clean it up a bit. Added some plugin API functions and decided it was a good time to do a good sorting on them so your next update from this build should be a full replacement.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@13094 a1c6a512-1295-4272-9138-f99709370657
2007-04-10 14:18:30 +00:00
Marcoen Hirschberg
4d9c0012d4 just pass the struct to vo_setup instead of multiple arguments
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@13022 a1c6a512-1295-4272-9138-f99709370657
2007-04-04 22:51:57 +00:00
Marcoen Hirschberg
ab9d654c86 add support for non 16x16 frame sizes
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@13016 a1c6a512-1295-4272-9138-f99709370657
2007-04-04 08:14:03 +00:00
Dave Chapman
6186b556bd Change file reads from 128KB to 32KB chunks - this prevents audio dropouts on targets with slow disk access (Sansa). Also change FPS display line to include the current a/v delay.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@12978 a1c6a512-1295-4272-9138-f99709370657
2007-03-31 08:51:32 +00:00
Dave Chapman
1088f695a2 Another AV sync bugfix - the initial avdelay was being incorrectly calculated in some cases
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@12975 a1c6a512-1295-4272-9138-f99709370657
2007-03-30 23:58:12 +00:00
Dave Chapman
16fa5a9f01 Be less aggressive when dropping frames - mpegplayer was dropping any frame which was decoded more than 1/20th of a second late, change that to 3/20th second (150ms), giving noticably smoother video. Also process PTS values when dealing with MPEG-1 program streams
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@12967 a1c6a512-1295-4272-9138-f99709370657
2007-03-30 00:03:07 +00:00
Tom Ross
79df16adc1 Use the left and right buttons for changing volume in mpegplayer on the gigabeatsince the screen is rotated.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@12953 a1c6a512-1295-4272-9138-f99709370657
2007-03-28 23:09:59 +00:00
Dave Chapman
f2df5b5b53 Those pesky 64-bit simulator builds..
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@12931 a1c6a512-1295-4272-9138-f99709370657
2007-03-26 19:54:07 +00:00
Dave Chapman
704b793787 Improved (I hope) A/V sync. mpegplayer now takes account of the difference in the initial audio and video PTS values, and constantly adjusts the av delay to compensate for drift between the audio PTS and the actual duration of the played audio.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@12930 a1c6a512-1295-4272-9138-f99709370657
2007-03-26 19:37:48 +00:00
Dave Chapman
a56757137c mpegplayer for grayscale targets. Note that performance is slow...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@12913 a1c6a512-1295-4272-9138-f99709370657
2007-03-26 01:32:31 +00:00
Dave Chapman
465820da22 Initial attempt at rebuffering
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@12911 a1c6a512-1295-4272-9138-f99709370657
2007-03-25 18:05:14 +00:00
Dave Chapman
8b40769554 Clamp output when converting from libmad's s3.28 format to 16-bit integers.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@12894 a1c6a512-1295-4272-9138-f99709370657
2007-03-22 22:47:04 +00:00
Dave Chapman
8310848421 Some small mpegplayer improvements/bug-fixes, and improved A/V sync. Audio is used as the master clock and video is synced to the number of samples played. This doesn't take account of any PTS difference at the start of the stream. Also enable Limit FPS and Skip Frames by default - these options need to be enabled for A/V sync to work. Adds pcm_get_bytes_waiting() to the plugin API
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@12884 a1c6a512-1295-4272-9138-f99709370657
2007-03-22 09:18:46 +00:00
Dave Chapman
f1bf798b8a Volume control for mpegplayer - based on FS #6814 by Jacob Gardner and Pascal Briehl, modified by me (blame me for any problems). Mapped to the same buttons that are used to control volume in the WPS.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@12834 a1c6a512-1295-4272-9138-f99709370657
2007-03-18 17:04:44 +00:00
Jens Arnold
f68362ad6f Fix simulator builds, and some debugf() format strings.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@12817 a1c6a512-1295-4272-9138-f99709370657
2007-03-17 09:54:28 +00:00
Jens Arnold
85a226d4e7 Rename some macros to account for the recently added M5 port. No code changes.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@12809 a1c6a512-1295-4272-9138-f99709370657
2007-03-16 23:02:39 +00:00
Jens Arnold
4d6374c923 Get rid of the 'center' parameter for splashes. There were only 2 of almost 500 splashes which were not centered.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@12807 a1c6a512-1295-4272-9138-f99709370657
2007-03-16 21:56:08 +00:00
Daniel Ankers
82f9056988 Dual core support for PP502x players (iPod G4 and later, iriver h10, Sansa - iPod G3 will be coming soon.) This allows threads to be run on either core provided that all communications between the cores is done using uncached memory. There should be no significant change in battery life from doing this. Documentation (on the RockboxKernel wiki page) will follow shortly.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@12601 a1c6a512-1295-4272-9138-f99709370657
2007-03-04 20:06:41 +00:00
Jens Arnold
3a37f46fc9 Fix CONFIG_BACKLIGHT warnings.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@12393 a1c6a512-1295-4272-9138-f99709370657
2007-02-18 10:07:27 +00:00
Dave Chapman
5395246004 Fix audio for Coldfire targets - the EMAC was being initialised in the main thread, not the audio thread. Also fix some comments and kill the video thread if the audio thread can not be created.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@11883 a1c6a512-1295-4272-9138-f99709370657
2007-01-02 13:36:17 +00:00
Dave Chapman
4b801b2d3a Initial implementation of audio support (44.1KHz only, mp2 or mp3, mono/stereo, any bitrate) and .mpg file (MPEG program stream) parsing for mpegplayer - .m2v files are no longer supported. .mpg parser based on patch #6366 from Mathieu Favreaux. Currently limited to only playing files smaller than the available buffer RAM (it will play longer files, but never refills the buffer when it runs empty). There is also no a/v sync implemented, and still no seeking support. Coldfire (iriver H3x0 and iaudio X5) users can use the optimisations provided in patch #5995 to increase the framerate, and PortalPlayer (ipods and iriver H10) users will want to use kernel_on_cop_6.diff from FS#5755 which enables mpegplayer to run the video thread on the second CPU core - video on the second core with audio on the first core runs at the same speed as the old mpegplayer did with no audio.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@11877 a1c6a512-1295-4272-9138-f99709370657
2007-01-01 12:59:32 +00:00
Tomasz Malesinski
80da8b141c FS#6357, patch 1: let iramcopy and bss share the same space in codecs and
plugins. Currently, in case of plugins using IRAM bss is cleared twice,
once in the loader, once in PLUGIN_IRAM_INIT. For codecs, bss is cleared only
during codec initialization. Also, removed double variables in codecs
storing a pointer to codec_api.


git-svn-id: svn://svn.rockbox.org/rockbox/trunk@11606 a1c6a512-1295-4272-9138-f99709370657
2006-11-26 18:31:41 +00:00
Michael Sevakis
acc29d95be SWCODEC/IRAM: Save voice IRAM when a plugin initializes its IRAM. Defines two macros for declaring and initializing IRAM. Plugins should use these instead. See mp3_encoder, doom, etc. for details. Further tweaks in buffer restoration after other use. Hiding of some interfaces that should only be used by buffer management.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@11544 a1c6a512-1295-4272-9138-f99709370657
2006-11-18 02:18:29 +00:00
Karl Kurbjun
cd73d8bf02 one more for the backdrop stuff
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@11527 a1c6a512-1295-4272-9138-f99709370657
2006-11-15 06:18:51 +00:00
Barry Wardell
24f4a2a8cf Allow the Sansa e200 UI simulator to be built. Thanks to Andre Smith for the nice image of the Sansa. Lots more to be done including testing and tweaking the keymaps and modifying the plugins for the Sansa's 176x220 LCD.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@11351 a1c6a512-1295-4272-9138-f99709370657
2006-10-26 13:38:09 +00:00
Dave Chapman
c8e69dfb71 Move FPS display out of video_out_rockbox.c and into mpegplayer.c. Also add frame-rate limiting and frame-skipping (skipping display only, not decoding) to try and achieve real-time playback. Frame-rate limiting and frame skipping (and FPS display) are enabled via options in a new menu and are currently all off by default.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@10669 a1c6a512-1295-4272-9138-f99709370657
2006-08-20 23:12:56 +00:00
Dave Chapman
567cb6e615 Clean up the video output code - remove the final traces of libvo (used by mpeg2dec) and remove unused code-paths from the main decoding loop.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@10638 a1c6a512-1295-4272-9138-f99709370657
2006-08-17 18:35:11 +00:00
Dave Chapman
214ce3f096 Allow exiting of plugin whilst paused
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@10621 a1c6a512-1295-4272-9138-f99709370657
2006-08-16 21:19:20 +00:00
Hristo Kovachev
9dc0e62229 Patch #5731 by Barry Wardell: more iriver h10 work. Thanks!
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@10521 a1c6a512-1295-4272-9138-f99709370657
2006-08-11 08:35:27 +00:00
Marcoen Hirschberg
91022738ee fix button mappings for the gigabeat
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@10502 a1c6a512-1295-4272-9138-f99709370657
2006-08-09 13:25:43 +00:00
Dave Chapman
8d642c302d Add STOP and PAUSE features (mapped to OFF/ON on iriver H300, MENU/PLAY on ipods and POWER/PLAY on X5) - patch by Jonathan Gordon. Also adapt the buffering to different available memory sizes - we allow libmpeg2 itself 2MB for buffers, and the rest is used to buffer the compressed video data. Note that using PAUSE will break the FPS display - this will be fixed later.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@10497 a1c6a512-1295-4272-9138-f99709370657
2006-08-09 10:47:22 +00:00
Dave Chapman
c9d66562af Initial commit of work-in-progress MPEG video player plugin based on libmpeg2. Works on all targets with colour LCDs, but most optimised for the ipod Color/Photo and Nano. It currently only plays raw MPEG-1 or MPEG-2 video streams (no audio). Also adds a new lcd_yuv_blit() function to the plugin API - currently only implemented for the ipod Color/Photo and Nano.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@10479 a1c6a512-1295-4272-9138-f99709370657
2006-08-07 22:11:07 +00:00