|
ChapterForge
|
Classes | |
| struct | ChapterImageSample |
| struct | ChapterTextSample |
| struct | chapterforge::Status |
| Result object with success flag and optional error message. More... | |
| struct | chapterforge::ReadResult |
| Parse an existing M4A/MP4 file and return its chapter data. More... | |
| struct | MetadataSet |
Enumerations | |
| enum class | chapterforge::LogVerbosity { chapterforge::LogVerbosity::Error = 0 , chapterforge::LogVerbosity::Warn = 1 , chapterforge::LogVerbosity::Info = 2 , chapterforge::LogVerbosity::Debug = 3 } |
Functions | |
| std::string | chapterforge::version_string () |
| Return the ChapterForge library version string. | |
| Status | chapterforge::mux_file_to_m4a (const std::string &input_audio_path, const std::string &chapter_json_path, const std::string &output_path, bool fast_start=true) |
| Mux AAC input + chapter/text/image metadata into an M4A file (JSON driven). | |
| Status | chapterforge::mux_file_to_m4a (const std::string &input_audio_path, const std::vector< ChapterTextSample > &text_chapters, const std::vector< ChapterImageSample > &image_chapters, const MetadataSet &metadata, const std::string &output_path, bool fast_start=true) |
| Mux AAC input + in-memory chapter data (titles + images + metadata). | |
| Status | chapterforge::mux_file_to_m4a (const std::string &input_audio_path, const std::vector< ChapterTextSample > &text_chapters, const MetadataSet &metadata, const std::string &output_path, bool fast_start=true) |
| Status | chapterforge::mux_file_to_m4a (const std::string &input_audio_path, const std::vector< ChapterTextSample > &text_chapters, const std::vector< ChapterImageSample > &image_chapters, const std::string &output_path, bool fast_start=true) |
| Status | chapterforge::mux_file_to_m4a (const std::string &input_audio_path, const std::vector< ChapterTextSample > &text_chapters, const std::vector< ChapterTextSample > &url_chapters, const std::vector< ChapterImageSample > &image_chapters, const std::string &output_path, bool fast_start=true) |
| Mux AAC input + in-memory chapter data (with optional URL track). | |
| Status | chapterforge::mux_file_to_m4a (const std::string &input_audio_path, const std::vector< ChapterTextSample > &text_chapters, const std::vector< ChapterTextSample > &url_chapters, const std::vector< ChapterImageSample > &image_chapters, const MetadataSet &metadata, const std::string &output_path, bool fast_start=true) |
| Variant with explicit metadata; otherwise identical to the overload above. | |
| ReadResult | chapterforge::read_m4a (const std::string &path) |
Public, supported C++ interfaces for muxing chapters into M4A files.
| struct ChapterImageSample |
| struct ChapterTextSample |
| struct chapterforge::Status |
| struct MetadataSet |
|
strong |
| Status chapterforge::mux_file_to_m4a | ( | const std::string & | input_audio_path, |
| const std::string & | chapter_json_path, | ||
| const std::string & | output_path, | ||
| bool | fast_start = true |
||
| ) |
Mux AAC input + chapter/text/image metadata into an M4A file (JSON driven).
| Status chapterforge::mux_file_to_m4a | ( | const std::string & | input_audio_path, |
| const std::vector< ChapterTextSample > & | text_chapters, | ||
| const MetadataSet & | metadata, | ||
| const std::string & | output_path, | ||
| bool | fast_start = true |
||
| ) |
| Status chapterforge::mux_file_to_m4a | ( | const std::string & | input_audio_path, |
| const std::vector< ChapterTextSample > & | text_chapters, | ||
| const std::vector< ChapterImageSample > & | image_chapters, | ||
| const MetadataSet & | metadata, | ||
| const std::string & | output_path, | ||
| bool | fast_start = true |
||
| ) |
Mux AAC input + in-memory chapter data (titles + images + metadata).
| Status chapterforge::mux_file_to_m4a | ( | const std::string & | input_audio_path, |
| const std::vector< ChapterTextSample > & | text_chapters, | ||
| const std::vector< ChapterImageSample > & | image_chapters, | ||
| const std::string & | output_path, | ||
| bool | fast_start = true |
||
| ) |
| Status chapterforge::mux_file_to_m4a | ( | const std::string & | input_audio_path, |
| const std::vector< ChapterTextSample > & | text_chapters, | ||
| const std::vector< ChapterTextSample > & | url_chapters, | ||
| const std::vector< ChapterImageSample > & | image_chapters, | ||
| const MetadataSet & | metadata, | ||
| const std::string & | output_path, | ||
| bool | fast_start = true |
||
| ) |
Variant with explicit metadata; otherwise identical to the overload above.
| input_audio_path | Path to AAC (ADTS) or MP4/M4A containing AAC. |
| text_chapters | Chapter titles (text/start_ms; href optional). |
| url_chapters | Optional URL track (href/text per sample); leave empty to omit. |
| image_chapters | Optional JPEG data per chapter; leave empty to omit. |
| metadata | Top-level metadata; reused from input ilst if empty. |
| output_path | Destination .m4a file. |
| fast_start | When true, places moov ahead of mdat. |
| Status chapterforge::mux_file_to_m4a | ( | const std::string & | input_audio_path, |
| const std::vector< ChapterTextSample > & | text_chapters, | ||
| const std::vector< ChapterTextSample > & | url_chapters, | ||
| const std::vector< ChapterImageSample > & | image_chapters, | ||
| const std::string & | output_path, | ||
| bool | fast_start = true |
||
| ) |
Mux AAC input + in-memory chapter data (with optional URL track).
| input_audio_path | Path to AAC (ADTS) or MP4/M4A containing AAC. |
| text_chapters | Chapter titles (text/start_ms; href unused here). |
| url_chapters | Optional URL track; set href per sample; text (or url_text in JSON) is optional and defaults to empty to match Apple-authored files. Leave empty to skip the URL track. |
| image_chapters | Optional JPEG data per chapter; leave empty to omit the image track. |
| output_path | Destination .m4a file. |
| fast_start | When true, places moov ahead of mdat. |
| ReadResult chapterforge::read_m4a | ( | const std::string & | path | ) |
| std::string chapterforge::version_string | ( | ) |
Return the ChapterForge library version string.
Follows the same formatting as the CLI banner (e.g. v0.12 or v0.12+abcd123).