Coverage for apps/streamcast/podcast_prompts.py: 100%

7 statements  

« prev     ^ index     » next       coverage.py v7.15.4, created at 2026-08-09 04:47 +0000

1"""Prompts for image and video generation in StreamCast.""" 

2 

3IMG_PROMPT_BASE = """ 

4Medium shot with a balanced composition where each person occupies less than 1/4 of the shot. 

5Can clearly see the faces of all characters so one can zoom into their faces. 

6Highly photorealistic photograph. 

7Ultra-detailed, cinematic, true-to-life photograph. 

8Captured with a Canon EOS R5, 35mm f/2.8 lens, shallow depth of field, realistic skin texture, 

9natural facial expressions, detailed hair, and lifelike clothing fabric. 

10""".strip() 

11IMG_PROMPT = """ 

12A photorealistic podcast setup featuring a woman and a man sitting across each other at a wooden table in a 

13professional recording studio. 

14The studio has red acoustic panels on the walls, warm lighting, and a large off screen in the background. 

15Both wear headphones and speak into high-quality podcast microphones mounted on adjustable arms. 

16Scene captured from a slightly elevated front-facing perspective, showing their upper bodies and expressive 

17gestures as they engage in conversation. 

18Table equipped with coffee mugs, water bottles, and recording equipment. 

19""".strip() 

20IMG_PROMPT += " " + IMG_PROMPT_BASE 

21IMG_NEG_PROMPT = """camera move, fancy lights, cartoon, illustration, anime, 3D render, CGI, digital art, painting, 

22smooth plastic skin, waxy texture, low detail, overexposed, blurred faces, uncanny valley""" 

23 

24IMG_ZOOM_PROMPT = """ 

25Zoom of the main person in the image. 

26Just the main person and no other people are visible. 

27Crop into a medium close-up of a single speaker at eye level, framed from chest up with soft background blur, 

28positioned slightly to one side of the frame to preserve conversational eyeline. 

29""".strip() 

30# A high-resolution DSLR photo, natural skin texture, lifelike detail, 

31# cinematic portrait lighting, shallow depth of field. 

32# Realistic human appearance. 

33 

34# Example: The "woman" on the "left" is speaking while the rest listens. 

35VIDEO_PROMPT = """ 

36The %s on the %s is speaking while the rest listens. 

37The framing is static and symmetrical. 

38The background remains fixed. 

39The camera does not move and is completely still. 

40The shot is locked off, tripod-mounted, with no movement. 

41The lighting is consistent and neutral. 

42The colors remain stable across all frames. 

43""".strip() 

44VIDEO_NEG_PROMPT = """ 

45camera movement, shaky cam, zoom, pan, tilt, flashy lights, jitter, dolly shot, handheld, 

46color shift, lighting flicker, exposure change, hue variation 

47""".strip()