summaryrefslogtreecommitdiff
path: root/apps/plugins/mpegplayer (follow)
Commit message (Collapse)AuthorAge
* mpegplayer: Get it in better shape for dual core targets. Utilize the newly ↵Michael Sevakis2007-04-14
| | | | | | 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
* Build libmad separately for mpegplayer. This provides flexibility to adjust ↵Dave Chapman2007-04-13
| | | | | | things like IRAM usage independently - use #ifdef MPEGPLAYER in libmad to make any mpegplayer specific changes. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@13147 a1c6a512-1295-4272-9138-f99709370657
* Moved archos backlight code to target tree. Changed old mutlivalue ↵Jens Arnold2007-04-12
| | | | | | CONFIG_BACKLIGHT to a simple HAVE_BACKLIGHT. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@13136 a1c6a512-1295-4272-9138-f99709370657
* mpegplayer: Recover from audio stream errors better. Correct some sizes. Add ↵Michael Sevakis2007-04-12
| | | | | | 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
* mpegplayer: oops, added an IRAM init/buffer get order switch that should ↵Michael Sevakis2007-04-12
| | | | | | have been reversed before committing git-svn-id: svn://svn.rockbox.org/rockbox/trunk@13120 a1c6a512-1295-4272-9138-f99709370657
* mpegplayer: do some reordering, add some needed volatiles, make sure thread ↵Michael Sevakis2007-04-12
| | | | | | 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
* mpegplayer: Hopefully help some problems on dual core. Make USB mode exit ↵Michael Sevakis2007-04-11
| | | | | | correctly. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@13109 a1c6a512-1295-4272-9138-f99709370657
* mpegplayer: do a little post commit cleanup.Michael Sevakis2007-04-10
| | | | git-svn-id: svn://svn.rockbox.org/rockbox/trunk@13095 a1c6a512-1295-4272-9138-f99709370657
* mpegplayer: Get A-V synchronized. Improve frame sync and dropping logic and ↵Michael Sevakis2007-04-10
| | | | | | 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
* optimized motion compensation for ARM from the mplayer-w100 project. ↵Marcoen Hirschberg2007-04-05
| | | | | | Elefants Dream plays back 2.3fps faster on the Gigabeat git-svn-id: svn://svn.rockbox.org/rockbox/trunk@13032 a1c6a512-1295-4272-9138-f99709370657
* just pass the struct to vo_setup instead of multiple argumentsMarcoen Hirschberg2007-04-04
| | | | git-svn-id: svn://svn.rockbox.org/rockbox/trunk@13022 a1c6a512-1295-4272-9138-f99709370657
* add support for non 16x16 frame sizesMarcoen Hirschberg2007-04-04
| | | | git-svn-id: svn://svn.rockbox.org/rockbox/trunk@13016 a1c6a512-1295-4272-9138-f99709370657
* Change file reads from 128KB to 32KB chunks - this prevents audio dropouts ↵Dave Chapman2007-03-31
| | | | | | 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
* Another AV sync bugfix - the initial avdelay was being incorrectly ↵Dave Chapman2007-03-30
| | | | | | calculated in some cases git-svn-id: svn://svn.rockbox.org/rockbox/trunk@12975 a1c6a512-1295-4272-9138-f99709370657
* Be less aggressive when dropping frames - mpegplayer was dropping any frame ↵Dave Chapman2007-03-30
| | | | | | 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
* Use the left and right buttons for changing volume in mpegplayer on the ↵Tom Ross2007-03-28
| | | | | | gigabeatsince the screen is rotated. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@12953 a1c6a512-1295-4272-9138-f99709370657
* Those pesky 64-bit simulator builds..Dave Chapman2007-03-26
| | | | git-svn-id: svn://svn.rockbox.org/rockbox/trunk@12931 a1c6a512-1295-4272-9138-f99709370657
* Improved (I hope) A/V sync. mpegplayer now takes account of the difference ↵Dave Chapman2007-03-26
| | | | | | 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
* Fix warningDave Chapman2007-03-26
| | | | git-svn-id: svn://svn.rockbox.org/rockbox/trunk@12914 a1c6a512-1295-4272-9138-f99709370657
* mpegplayer for grayscale targets. Note that performance is slow...Dave Chapman2007-03-26
| | | | git-svn-id: svn://svn.rockbox.org/rockbox/trunk@12913 a1c6a512-1295-4272-9138-f99709370657
* Initial attempt at rebufferingDave Chapman2007-03-25
| | | | git-svn-id: svn://svn.rockbox.org/rockbox/trunk@12911 a1c6a512-1295-4272-9138-f99709370657
* Clamp output when converting from libmad's s3.28 format to 16-bit integers.Dave Chapman2007-03-22
| | | | git-svn-id: svn://svn.rockbox.org/rockbox/trunk@12894 a1c6a512-1295-4272-9138-f99709370657
* Some small mpegplayer improvements/bug-fixes, and improved A/V sync. Audio ↵Dave Chapman2007-03-22
| | | | | | 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
* Volume control for mpegplayer - based on FS #6814 by Jacob Gardner and ↵Dave Chapman2007-03-18
| | | | | | 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
* Fix simulator builds, and some debugf() format strings.Jens Arnold2007-03-17
| | | | git-svn-id: svn://svn.rockbox.org/rockbox/trunk@12817 a1c6a512-1295-4272-9138-f99709370657
* Rename some macros to account for the recently added M5 port. No code changes.Jens Arnold2007-03-16
| | | | git-svn-id: svn://svn.rockbox.org/rockbox/trunk@12809 a1c6a512-1295-4272-9138-f99709370657
* Get rid of the 'center' parameter for splashes. There were only 2 of almost ↵Jens Arnold2007-03-16
| | | | | | 500 splashes which were not centered. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@12807 a1c6a512-1295-4272-9138-f99709370657
* Dual core support for PP502x players (iPod G4 and later, iriver h10, Sansa - ↵Daniel Ankers2007-03-04
| | | | | | 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
* Fix CONFIG_BACKLIGHT warnings.Jens Arnold2007-02-18
| | | | git-svn-id: svn://svn.rockbox.org/rockbox/trunk@12393 a1c6a512-1295-4272-9138-f99709370657
* Replaced some explicit options for target linking with to be consistent ↵Jens Arnold2007-02-15
| | | | | | with the sims. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@12318 a1c6a512-1295-4272-9138-f99709370657
* Fix audio for Coldfire targets - the EMAC was being initialised in the main ↵Dave Chapman2007-01-02
| | | | | | 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
* Initial implementation of audio support (44.1KHz only, mp2 or mp3, ↵Dave Chapman2007-01-01
| | | | | | 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
* fix for the inline asm in CLIP on the gigabeat by Steve Gotthard (fs#6488). ↵Marcoen Hirschberg2006-12-31
| | | | | | Turns out that gcc rearranged the ASM block without volatile git-svn-id: svn://svn.rockbox.org/rockbox/trunk@11873 a1c6a512-1295-4272-9138-f99709370657
* assume the YUV code rotates on portrait screensMarcoen Hirschberg2006-12-30
| | | | git-svn-id: svn://svn.rockbox.org/rockbox/trunk@11864 a1c6a512-1295-4272-9138-f99709370657
* add a workaround for gigabeat crashesMarcoen Hirschberg2006-12-30
| | | | git-svn-id: svn://svn.rockbox.org/rockbox/trunk@11863 a1c6a512-1295-4272-9138-f99709370657
* FS#6357, patch 1: let iramcopy and bss share the same space in codecs andTomasz Malesinski2006-11-26
| | | | | | | | | | 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
* SWCODEC/IRAM: Save voice IRAM when a plugin initializes its IRAM. Defines ↵Michael Sevakis2006-11-18
| | | | | | 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
* one more for the backdrop stuffKarl Kurbjun2006-11-15
| | | | git-svn-id: svn://svn.rockbox.org/rockbox/trunk@11527 a1c6a512-1295-4272-9138-f99709370657
* Next step of Makefile tuning: * Use 'make' internal commands for printing ↵Jens Arnold2006-10-27
| | | | | | messages. Saves build time especially on cygwin. * SILENT variable used in more places. * Bitmap build system uses one Makefille less. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@11369 a1c6a512-1295-4272-9138-f99709370657
* Allow the Sansa e200 UI simulator to be built. Thanks to Andre Smith for the ↵Barry Wardell2006-10-26
| | | | | | 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
* Consistent style of 'make' messages. Always use ranlib after ar.Jens Arnold2006-10-23
| | | | git-svn-id: svn://svn.rockbox.org/rockbox/trunk@11322 a1c6a512-1295-4272-9138-f99709370657
* Speed up build process in general by using internal functions of make ↵Jens Arnold2006-10-22
| | | | | | instead of spawning sub-shells where possible. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@11307 a1c6a512-1295-4272-9138-f99709370657
* Cleaner implementation of the recent OSX simulator build fix. No need to ↵Barry Wardell2006-09-29
| | | | | | define SHARED_FLAG in each Makefile. Just have configure create it in the root Makefile instead. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@11095 a1c6a512-1295-4272-9138-f99709370657
* Allow UI simulator to be build on OS (Slightly updated version of FS5767)Barry Wardell2006-09-29
| | | | git-svn-id: svn://svn.rockbox.org/rockbox/trunk@11094 a1c6a512-1295-4272-9138-f99709370657
* Move FPS display out of video_out_rockbox.c and into mpegplayer.c. Also add ↵Dave Chapman2006-08-20
| | | | | | 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
* Clean up the video output code - remove the final traces of libvo (used by ↵Dave Chapman2006-08-17
| | | | | | 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
* Allow exiting of plugin whilst pausedDave Chapman2006-08-16
| | | | git-svn-id: svn://svn.rockbox.org/rockbox/trunk@10621 a1c6a512-1295-4272-9138-f99709370657
* Clean up the #ifdefs surrounding the definition of lcd_yuv_blit() and add an ↵Dave Chapman2006-08-12
| | | | | | initial (untested) implementation for the Gigabeat git-svn-id: svn://svn.rockbox.org/rockbox/trunk@10541 a1c6a512-1295-4272-9138-f99709370657
* Accepted FS #5786 by Michael Sevakis - lcd_yuv_blit() for X5.Rani Hod2006-08-11
| | | | | | | hard coded to YUV4:2:0 for now, gives ~13.5 fps. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@10528 a1c6a512-1295-4272-9138-f99709370657
* Patch #5731 by Barry Wardell: more iriver h10 work. Thanks!Hristo Kovachev2006-08-11
| | | | git-svn-id: svn://svn.rockbox.org/rockbox/trunk@10521 a1c6a512-1295-4272-9138-f99709370657