diff --git a/hmml_to_html/hmml.a b/hmml_to_html/hmml.a
index cbf8ed4..db29015 100644
Binary files a/hmml_to_html/hmml.a and b/hmml_to_html/hmml.a differ
diff --git a/hmml_to_html/hmml_to_html.c b/hmml_to_html/hmml_to_html.c
index 3767296..03dfcbe 100644
--- a/hmml_to_html/hmml_to_html.c
+++ b/hmml_to_html/hmml_to_html.c
@@ -403,6 +403,7 @@ SanitisePunctuation(char *String)
int
BuildCredits(buffer *CreditsMenu, buffer *HostInfo, buffer *AnnotatorInfo, bool *HasCreditsMenu, char *Host, char *Annotator)
{
+ // TODO(matt): Handle co-hosts and guests
bool FoundHost = FALSE;
bool FoundAnnotator = FALSE;
@@ -1320,7 +1321,8 @@ main(int ArgC, char **Args)
"
\n"
" \n", HMML.metadata.id, HMML.metadata.project);
- BuildCredits(&CreditsMenu, &HostInfo, &AnnotatorInfo, &HasCreditsMenu, HMML.metadata.member, HMML.metadata.annotator);
+ // TODO(matt): Handle multiple annotators
+ BuildCredits(&CreditsMenu, &HostInfo, &AnnotatorInfo, &HasCreditsMenu, HMML.metadata.member, HMML.metadata.annotators[0]);
#if DEBUG
printf(" --- Entering Annotations Loop ---\n");
@@ -1648,12 +1650,12 @@ AppendedIdentifier:
HasQuote = TRUE;
- if(BuildQuote(&QuoteInfo, HMML.metadata.twitch ? HMML.metadata.twitch : HMML.metadata.member, Anno->quote.id) == 1)
+ if(BuildQuote(&QuoteInfo, HMML.metadata.stream_username ? HMML.metadata.stream_username : HMML.metadata.member, Anno->quote.id) == 1)
{
fprintf(stderr, "%s:%d: Quote #%s %d not found! Consider pulling the latest quotes\n",
Args[FileIndex],
Anno->line,
- HMML.metadata.twitch ? HMML.metadata.twitch : HMML.metadata.member,
+ HMML.metadata.stream_username ? HMML.metadata.stream_username : HMML.metadata.member,
Anno->quote.id);
hmml_free(&HMML);
free(MemoryArena);
@@ -1677,7 +1679,7 @@ Anno->quote.id);
" [%d;]%s\n"
"
\n"
" \n",
-HMML.metadata.twitch ? HMML.metadata.twitch : HMML.metadata.member,
+HMML.metadata.stream_username ? HMML.metadata.stream_username : HMML.metadata.member,
QuoteInfo.Date,
TimecodeToSeconds(Anno->time),
QuoteIdentifier,
diff --git a/hmml_to_html/hmmlib.h b/hmml_to_html/hmmlib.h
index acf637a..980d092 100644
--- a/hmml_to_html/hmmlib.h
+++ b/hmml_to_html/hmmlib.h
@@ -9,12 +9,21 @@
typedef struct {
char* member;
- char* twitch;
+ char* stream_platform;
+ char* stream_username;
char* project;
char* title;
- char* platform;
+ char* vod_platform;
char* id;
- char* annotator;
+
+ char** co_hosts;
+ size_t co_host_count;
+
+ char** guests;
+ size_t guest_count;
+
+ char** annotators;
+ size_t annotator_count;
} HMML_VideoMetaData;
typedef struct {
@@ -42,6 +51,7 @@ typedef struct {
HMML_MarkerType type;
char* marker;
char* parameter;
+ char* episode;
int offset;
} HMML_Marker;
diff --git a/hmml_to_youtube/hmml.a b/hmml_to_youtube/hmml.a
new file mode 100644
index 0000000..db29015
Binary files /dev/null and b/hmml_to_youtube/hmml.a differ
diff --git a/hmml_to_youtube/hmml_to_youtube.c b/hmml_to_youtube/hmml_to_youtube.c
index 401690c..98347d9 100644
--- a/hmml_to_youtube/hmml_to_youtube.c
+++ b/hmml_to_youtube/hmml_to_youtube.c
@@ -130,8 +130,8 @@ main(int ArgC, char **Args)
{
ClaimBuffer(MemoryArena, &ClaimedMemory, &Out, 1024 * 32);
- char *Member = HMML.metadata.twitch ?
- HMML.metadata.twitch :
+ char *Member = HMML.metadata.stream_username ?
+ HMML.metadata.stream_username :
HMML.metadata.member;
bool WritingChat = TRUE;
@@ -319,8 +319,9 @@ SkipRef:
skip: {};
}
+ // TODO(matt): Handle multiple annotators
CopyStringToBuffer(&Out, "\nAnnotated by %s - https://handmade.network/m/%s\n",
- HMML.metadata.annotator, HMML.metadata.annotator);
+ HMML.metadata.annotators[0], HMML.metadata.annotators[0]);
if(Out.Ptr - Out.Location > 5000)
{
diff --git a/hmml_to_youtube/hmmlib.h b/hmml_to_youtube/hmmlib.h
index acf637a..980d092 100644
--- a/hmml_to_youtube/hmmlib.h
+++ b/hmml_to_youtube/hmmlib.h
@@ -9,12 +9,21 @@
typedef struct {
char* member;
- char* twitch;
+ char* stream_platform;
+ char* stream_username;
char* project;
char* title;
- char* platform;
+ char* vod_platform;
char* id;
- char* annotator;
+
+ char** co_hosts;
+ size_t co_host_count;
+
+ char** guests;
+ size_t guest_count;
+
+ char** annotators;
+ size_t annotator_count;
} HMML_VideoMetaData;
typedef struct {
@@ -42,6 +51,7 @@ typedef struct {
HMML_MarkerType type;
char* marker;
char* parameter;
+ char* episode;
int offset;
} HMML_Marker;