diff options
Diffstat (limited to 'src/cache')
| -rw-r--r-- | src/cache/entry.h | 33 |
1 files changed, 33 insertions, 0 deletions
diff --git a/src/cache/entry.h b/src/cache/entry.h index c74870d..d6eb86a 100644 --- a/src/cache/entry.h +++ b/src/cache/entry.h @@ -18,6 +18,17 @@ - dvd/bluray (drive or iso) - live source (radio antenna) + Chapters: + - Potential resources with chapters: + - Single wav with cue. + - Multiple wav with cue. + - Single mp4 with chapters in metadata. + - DVD iso image. + - DVD/CD drive. + - Chapter as seek or node per chapter? + - Node per chapter definitely seems to make the most sense. Maybe we could + have a "ignore chapters" flag for single containers like mp4. + Other considerations: - Chapter priority (disc drive) - For now 1 user and 1 list owns the drive totally. @@ -28,10 +39,32 @@ - Networked backing? - Is a liana "node handler" necessary? + Flow of a resource: + - Entry: + - Holds the data but as of now doesn't read metadata. + - Server: + - Informs clients about entry metadata. + - Liana node: + - Only place currently setup to block for reading duration. + - Disc drive resources need to block to read chapters as well. + - File open could likely benefit from being non-blocking/threaded. + - Fit into server list_callback()? Could be as simple as replacing lia_node_get_duration(). + - Any catches to moving duration retrival to the cache entry? + - Cache objects? (Disc drive) + - Handles it's own state on demand. + - Re-evaluate list behavior without duration. + Cache/liana refactor: [x] get/set_size() no longer make sense. [x] // @TODO: Unknown size is unhandled in backings. - Handle keeps reading but will eventually have a wait cut short after a backing finalize. + [ ] Expanding list entry. + - How to handle unload? + - Disc drive can trigger unload. + - Make sure we can skip around in list while an entry load is pending. + - Also cancel load requests on unload. + - Consider pitfalls in the idea of having a "cd object" in the list that can be unloaded + and loaded with different cds. [ ] Separate cch_handler from cch_entry. - Move waits to entry? - Create cache entry with argument like file, cue, http, hls, etc. |