Files
tactility_apps/Apps/BookPlayer/README.md
2026-09-02 10:30:35 -04:00

74 lines
2.1 KiB
Markdown
Raw Permalink Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# Tactility Book Player App
The Book Player app for Tactility OS plays children's books stored on the SD card. Each book is organized in its own subfolder and contains a sequential layout of pages with both visual illustrations (images) and narration (audio).
## SD Card Layout
Books must be stored under `/sdcard/books/` on the device SD card with the following structure:
```text
/sdcard/books/
book_slug_1/
manifest.json
page001.png
page001.mp3
page002.png
page002.mp3
...
book_slug_2/
manifest.json
page001.jpg
page001.wav
page002.jpg
page002.wav
...
```
## Manifest Format
Each book subfolder must contain a `manifest.json` file. Here is a sample format:
```json
{
"title": "Princess Grace and Poppy",
"author": "Reyna Family",
"id": "grace-poppy",
"format": "tactility-book-manifest-v1",
"display": {
"width": 320,
"height": 240
},
"audio": {
"encoding": "mp3",
"sample_rate_hz": 16000,
"channels": 1,
"bitrate_kbps": 24
},
"pages": [
{
"image": "page001.png",
"audio": "page001.mp3",
"caption": "Once upon a time, in a magnificent castle perched high on a hill above the sea, there lived five princesses..."
},
{
"image": "page002.png",
"audio": "page002.mp3",
"caption": "This is the story of Princess Grace..."
}
]
}
```
## Content Requirements
- **Images**: PNG or JPG format. Recommended size is `320×240` pixels (or scaled to match standard aspect ratios).
- **Audio**: Mono `MP3` or uncompressed standard `WAV` files. For ESP32-S3 systems, lower sampling rates (e.g. 16 kHz mono) are recommended for memory efficiency.
## Book Selection and Playback
The picker displays the selected book's first page image full-screen with its title.
Tap the left or right side of the cover, or swipe right or left, to choose the
previous or next book. Tap the Play button to begin page-one narration through the
same playback flow used by the in-book player. Once playing, the existing
previous, pause/play, next, progress, and auto-advance controls remain unchanged.