Manim plugin for recorder
Project description
Manim Recorder
GUI (Using PySide6)
from manim import *
# from manim_recorder import VoiceoverScene
from manim_recorder.voiceover_scene import RecorderScene
# from manim_recorder.services.recorder import RecorderService
from manim_recorder.recorder.gui import RecorderService
class VoiceRecorder(RecorderScene):
def construct(self):
self.set_audio_service(
RecorderService()
)
circle = Circle()
square = Square().shift(2 * RIGHT)
with self.voiceover(text="This circle is drawn as I speak.") as tracker:
self.play(Create(circle), run_time=tracker.duration)
with self.voiceover(text="Let's shift it to the left 2 units.") as tracker:
self.play(circle.animate.shift(2 * LEFT),
run_time=tracker.duration)
with self.voiceover(text="Thank you for watching.") as tracker:
self.play(Uncreate(circle))
self.wait()
CLI (Pynput)
from manim import *
# from manim_recorder import VoiceoverScene
from manim_recorder.voiceover_scene import RecorderScene
# from manim_recorder.services.recorder import RecorderService
from manim_recorder.recorder.pynput import RecorderService
from pathlib import Path
class VoiceRecorder(RecorderScene):
def construct(self):
self.set_audio_service(
RecorderService(
device_index=0,
# cache_dir=Path(
# config.media_dir + "/voiceovers/" + self.__class__.__name__.lower()
# ),
)
)
circle = Circle()
square = Square().shift(2 * RIGHT)
with self.voiceover(text="This circle is drawn as I speak.") as tracker:
self.play(Create(circle), run_time=tracker.duration)
with self.voiceover(text="Let's shift it to the left 2 units.") as tracker:
self.play(circle.animate.shift(2 * LEFT),
run_time=tracker.duration)
with self.voiceover(text="Thank you for watching.") as tracker:
self.play(Uncreate(circle))
self.wait()
Termux Cli
from manim import *
from manim_recorder.voiceover_scene import RecorderScene
from manim_recorder.recorder.termux import RecorderService
from pathlib import Path
class Recordering(RecorderScene):
def construct(self):
self.set_speech_service(
RecorderService(
)
)
circle = Circle()
square = Square().shift(2 * RIGHT)
with self.voiceover(text="This circle is drawn as I speak.") as tracker:
self.play(Create(circle), run_time=tracker.duration)
# with self.voiceover("This circle is drawn as I speak.") as tracker:
# self.safe_wait(tracker.duration)
with self.voiceover(text="Let's shift it to the left 2 units.") as tracker:
self.play(circle.animate.shift(2 * LEFT),
run_time=tracker.duration)
with self.voiceover(text="Thank you for watching."):
self.play(Uncreate(circle))
self.wait()
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
manim_recorder-0.2.7.tar.gz
(27.6 kB
view hashes)
Built Distribution
Close
Hashes for manim_recorder-0.2.7-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | ce22b824b1a07a8fbaec8989ac07eac7c8540501c01a684e46b9be2ea67e4379 |
|
MD5 | 7ec29ce23711e2bb986ea138fa4d866a |
|
BLAKE2b-256 | 33e4baab6e4ac872851ef824351268db83b39db29818b0656ef885e267803d55 |