From 8daa3cb3b55ae4cd1006896dba1cf1f0738e69b9 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Deniz=20=C5=9Eafak?= Date: Sat, 3 May 2025 12:09:26 +0300 Subject: [PATCH] Update readme about chapter markers --- README.md | 26 +++++++++++++++++++++++++- demo/chapter_marker.png | Bin 0 -> 11208 bytes 2 files changed, 25 insertions(+), 1 deletion(-) create mode 100644 demo/chapter_marker.png diff --git a/README.md b/README.md index 4620a25..0b1e6d0 100644 --- a/README.md +++ b/README.md @@ -90,7 +90,7 @@ Here’s Abogen in action: in this demo, it processes ∼3,000 characters of tex - **Chapter Control**: Select specific `chapters` from ePUBs or `chapters + pages` from PDFs. - **Options**: - **Replace single newlines with spaces**: Replaces single newlines with spaces in the text. This is useful for texts that have imaginary line breaks. - - **Configure max words per subtitle**: Automatically configures the maximum number of words per subtitle entry. + - **Configure max words per subtitle**: Configures the maximum number of words per subtitle entry. - **Create desktop shortcut**: Creates a shortcut on your desktop for easy access. - **Open config.json directory**: Opens the directory where the configuration file is stored. - **Open temp directory**: Opens the temporary directory where converted text files are stored. @@ -103,6 +103,30 @@ Here’s Abogen in action: in this demo, it processes ∼3,000 characters of tex With voice mixer, you can create custom voices by mixing different voice models. You can adjust the weight of each voice and save your custom voice as a profile for future use. The voice mixer allows you to create unique and personalized voices. (Huge thanks to [@jborza](https://github.com/jborza) for making this possible through his contributions in [#5](https://github.com/denizsafak/abogen/pull/5)) +## `About Chapter Markers` +When you process ePUB or PDF files, abogen converts them into text files stored in your temporary directory. When you click "Edit," you're actually modifying these converted text files. In these text files, you'll notice tags that look like this: + +``` + +``` +These are chapter markers. They are automatically added when you process ePUB or PDF files, based on the chapters you select. They serve an important purpose: +- Allow you to split the text into separate audio files for each chapter +- Save time by letting you reprocess only specific chapters if errors occur, rather than the entire file + +You can manually add these markers to plain text files for the same benefits. Simply include them in your text like this: + +``` + +This is the beginning of my text... + + +Here's another part... +``` +When you process the text file, abogen will detect these markers automatically and ask if you want to save each chapter separately and create a merged version. + +![Abogen Chapter Marker](https://raw.githubusercontent.com/denizsafak/abogen/refs/heads/main/demo/chapter_marker.png) + + ## `Supported Languages` ``` # 🇺🇸 'a' => American English, 🇬🇧 'b' => British English diff --git a/demo/chapter_marker.png b/demo/chapter_marker.png new file mode 100644 index 0000000000000000000000000000000000000000..5e676fb9539561cbb1bc140916dfcaa0a0769321 GIT binary patch literal 11208 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