summaryrefslogtreecommitdiff
path: root/apps/plugin.h
diff options
context:
space:
mode:
authorMichael Sevakis <jethead71@rockbox.org>2007-12-29 19:46:35 +0000
committerMichael Sevakis <jethead71@rockbox.org>2007-12-29 19:46:35 +0000
commita222f27c4a17ed8f9809cda7861fe5f23d4cc0c1 (patch)
treed393a23d83549f99772bb156e59ffb88725148b6 /apps/plugin.h
parent1d0f6b90ff43776e55b4b9f062c9bea3f99aa768 (diff)
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
Diffstat (limited to 'apps/plugin.h')
-rw-r--r--apps/plugin.h23
1 files changed, 21 insertions, 2 deletions
diff --git a/apps/plugin.h b/apps/plugin.h
index 1b12011c9a..5ac4aa7cc2 100644
--- a/apps/plugin.h
+++ b/apps/plugin.h
@@ -119,7 +119,7 @@
#define PLUGIN_MAGIC 0x526F634B /* RocK */
/* increase this every time the api struct changes */
-#define PLUGIN_API_VERSION 91
+#define PLUGIN_API_VERSION 92
/* update this to latest version if a change to the api struct breaks
backwards compatibility (and please take the opportunity to sort in any
@@ -648,7 +648,7 @@ struct plugin_api {
void (*thread_wait)(struct thread_entry *thread);
-#ifdef PROC_NEEDS_CACHEALIGN
+#if (CONFIG_CODEC == SWCODEC)
size_t (*align_buffer)(void **start, size_t size, size_t align);
#endif
@@ -697,6 +697,25 @@ struct plugin_api {
bool (*search_albumart_files)(const struct mp3entry *id3, const char *size_string,
char *buf, int buflen);
#endif
+
+#if CONFIG_CODEC == SWCODEC
+ void (*pcm_play_lock)(void);
+ void (*pcm_play_unlock)(void);
+ void (*queue_enable_queue_send)(struct event_queue *q,
+ struct queue_sender_list *send);
+ bool (*queue_empty)(const struct event_queue *q);
+ void (*queue_wait)(struct event_queue *q, struct queue_event *ev);
+ intptr_t (*queue_send)(struct event_queue *q, long id,
+ intptr_t data);
+ void (*queue_reply)(struct event_queue *q, intptr_t retval);
+#ifndef HAVE_FLASH_STORAGE
+ void (*ata_spin)(void);
+#endif
+#ifdef HAVE_SCHEDULER_BOOSTCTRL
+ void (*trigger_cpu_boost)(void);
+ void (*cancel_cpu_boost)(void);
+#endif
+#endif /* CONFIG_CODEC == SWCODEC */
};
/* plugin header */