Hudba a audio

Prezentace může mít 3 audio vrstvy: globální hudbu, hudbu pro konkrétní slide a voice narrace per slide.

Globální hudba

Cesta: Toolbar → Hudba (notová ikona).

Otevře galerii dostupných stop (PMGclub knihovna + admin upload). Funkce:

  • Vybrat = uloží jako project.music_url
  • Volume slider (0–100, default 25 %) — celková hlasitost hudby v Present mode
  • Odstranit = bez hudby

Globální hudba hraje napříč všemi slidy, plynule (loop).

Hudba per slide (override)

Některé slidy můžete chtít s jinou hudbou (nebo s tichem). V panelu vlastností slidu (když není vybraný žádný objekt):

VolbaCo dělá
Použít globální (default)Pokračuje s project.music_url
Bez hudbySlide má slide.music_url = "" → ticho
Vlastní stopaslide.music_url = "{url}" → konkrétní stopa pro tento slide

Při přechodu mezi slidy se hudba plynule prolíná (fade out 1.2 s + fade in 1.2 s) — viz FADE_STEPS, FADE_MS v PresentationPlayer.

Slide Music Manager (admin): centrální správa všech slide.music_url napříč slidy najednou — užitečné při velkých prezentacích.

Voice narrace

Per slide — AI mluvený komentář.

Cesta: vyberte slide (klikněte mimo objekty) → panel vlastností → sekce Skript / titulky.

Dva přístupy:

A) Nahrát vlastní MP3

  • Klikněte Nahrát narraci → vyberte .mp3 (max ~5 MB)
  • Upload na R2, uloží se jako slide.narration_url
  • Délka se detekuje automaticky a uloží do slide.narration_duration_ms

B) Vygenerovat AI hlasem (jen admin)

  • Napište text do Skript / titulky (= slide.narration_text)
  • Klikněte Generovat hlas → dialog s volbou hlasu + rychlosti
  • AI vygeneruje MP3, uloží se jako slide.narration_url
  • Detail viz AI funkce

Volume

Slider Narrace volume (0–100, default 80 %) v properties — funguje pro CELOU prezentaci (jeden volume pro všechny narrace).

Auto-skript pro titulky

slide.narration_text slouží i jako zdroj titulků v Present mode (zapnuté toggle CC) a v MP4 exportu (volba Vypálit titulky).

Funkce buildCaptionSegments rozdělí text na věty a rovnoměrně rozloží do délky audia (narration_duration_ms) nebo do duration_ms (manuální délka slidu).

Pro multi-jazyčné titulky použijte Translate AI funkci — vytvoří slide.translations[lang] a v Present/Export můžete vybrat jazyk.

Trvání slidu

Pokud na slidu nehraje narrace, ale máte animace nebo hudbu (např. statický slide bez voice over), nastavte duration_ms (Délka slidu) ručně:

  • V vlastnostech slidu → Délka slidu: zadejte sekundy (default 6 s)
  • Použito v MP4 exportu pro výpočet trvání
  • V Present mode = uživatel klikne pro další (manual)

Mixing v Present mode

PresentationPlayer mixuje 3 audio streamy:

  • Hudba — globální nebo per-slide, volume = musicVolume / 100
  • Narrace — per-slide, volume = narrationVolume / 100
  • Video objekty — automaticky muted (kvůli auto-play), zvuk přidáte jen v exportu

Při změně slidu:

  • Hudba: fade out → fade in (1.2 s každý, pokud jde o jinou stopu nebo „bez hudby")
  • Narrace: stop current, play next (bez fade)

Tipy

  • Hudba na pozadí ztiší automaticky pro narraci? NE — hraje současně. Pokud narrace tlumí hudbu, snižte musicVolume (např. na 15 %) a nechte narrationVolume na 80 %.
  • Hudba bez práv — PMGclub poskytuje knihovnu royalty-free stop. Vlastní upload musíte mít licencovaný (autorský zákon).
  • Voice generace — krátké věty (10–15 slov) lépe znějí
  • Synchronizace s animacemi — manuálně přes animation.delay a slide.duration_ms