mulmocast 2.1.14 → 2.1.15

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -4,7 +4,7 @@ import { beatId, multiLingualObjectToArray } from "./utils.js";
4
4
  import { mulmoStudioSchema, mulmoCaptionParamsSchema, mulmoPresentationStyleSchema } from "../types/schema.js";
5
5
  import { MulmoPresentationStyleMethods, MulmoScriptMethods, MulmoStudioMultiLingualMethod } from "../methods/index.js";
6
6
  export const silentMp3 = "https://github.com/receptron/mulmocast-cli/raw/refs/heads/main/assets/audio/silent300.mp3";
7
- const mulmoCredit = (speaker) => {
7
+ const mulmoCredit = (speaker, isPortrait) => {
8
8
  return {
9
9
  id: "mulmo_credit",
10
10
  speaker,
@@ -13,7 +13,8 @@ const mulmoCredit = (speaker) => {
13
13
  type: "image",
14
14
  source: {
15
15
  kind: "url",
16
- url: "https://github.com/receptron/mulmocast-cli/raw/refs/heads/main/assets/images/mulmocast_credit.png",
16
+ url: "https://github.com/receptron/mulmocast-cli/raw/refs/heads/main/assets/images/" +
17
+ (isPortrait ? "mulmocast_credit-portrait.png" : "mulmocast_credit.png"),
17
18
  },
18
19
  },
19
20
  audio: {
@@ -61,11 +62,12 @@ export const createStudioData = (_mulmoScript, fileName, videoCaptionLang, prese
61
62
  filename: fileName,
62
63
  beats: [...Array(mulmoScript.beats.length)].map(() => ({})),
63
64
  });
65
+ const isPortrait = mulmoScript.canvasSize.height > mulmoScript.canvasSize.width;
64
66
  // TODO: Move this code out of this function later
65
67
  // Addition cloing credit
66
68
  if (mulmoScript.$mulmocast.credit === "closing") {
67
69
  const defaultSpeaker = MulmoPresentationStyleMethods.getDefaultSpeaker(presentationStyle ?? studio.script);
68
- mulmoScript.beats.push(mulmoCredit(mulmoScript.beats[0].speaker ?? defaultSpeaker)); // First speaker
70
+ mulmoScript.beats.push(mulmoCredit(mulmoScript.beats[0].speaker ?? defaultSpeaker, isPortrait)); // First speaker
69
71
  }
70
72
  studio.script = MulmoScriptMethods.validate(mulmoScript); // update the script
71
73
  studio.beats = studio.script.beats.map((_, index) => studio.beats[index] ?? {});
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "mulmocast",
3
- "version": "2.1.14",
3
+ "version": "2.1.15",
4
4
  "description": "",
5
5
  "type": "module",
6
6
  "main": "lib/index.node.js",
@@ -0,0 +1,31 @@
1
+ {
2
+ "$mulmocast": {
3
+ "version": "1.1",
4
+ "credit": "closing"
5
+ },
6
+ "canvasSize": { "width": 1024, "height": 1536 },
7
+ "title": "THE ROAD TO SUPERINTELLIGENCE: EXPLORING AI-2027",
8
+ "speechParams": {
9
+ "speakers": {
10
+ "Host": {
11
+ "voiceId": "shimmer",
12
+ "displayName": {
13
+ "en": "Host"
14
+ }
15
+ }
16
+ }
17
+ },
18
+ "lang": "en",
19
+ "beats": [
20
+ {
21
+ "id": "beat1",
22
+ "speaker": "Host",
23
+ "text": "Welcome to Mulmocast Tech Insights."
24
+ },
25
+ {
26
+ "id": "beat2",
27
+ "speaker": "Host",
28
+ "text": "AI-2028 is a project from the AI Futures Project."
29
+ }
30
+ ]
31
+ }
@@ -0,0 +1,31 @@
1
+ {
2
+ "$mulmocast": {
3
+ "version": "1.1",
4
+ "credit": "closing"
5
+ },
6
+ "canvasSize": { "width": 1024 "height": 1536, },
7
+ "title": "THE ROAD TO SUPERINTELLIGENCE: EXPLORING AI-2027",
8
+ "speechParams": {
9
+ "speakers": {
10
+ "Host": {
11
+ "voiceId": "shimmer",
12
+ "displayName": {
13
+ "en": "Host"
14
+ }
15
+ }
16
+ }
17
+ },
18
+ "lang": "en",
19
+ "beats": [
20
+ {
21
+ "id": "beat1",
22
+ "speaker": "Host",
23
+ "text": "Welcome to Mulmocast Tech Insights."
24
+ },
25
+ {
26
+ "id": "beat2",
27
+ "speaker": "Host",
28
+ "text": "AI-2028 is a project from the AI Futures Project."
29
+ }
30
+ ]
31
+ }