import random from shortGPT.config.api_db import ApiKeyManager, ApiProvider from shortGPT.config.asset_db import AssetDatabase, AssetType from shortGPT.engine.facts_short_engine import FactsShortEngine from shortGPT.audio.eleven_voice_module import ElevenLabsVoiceModule from shortGPT.config.languages import Language # Set or get API Keys here ApiKeyManager.set_api_key(ApiProvider.OPENAI, "") ApiKeyManager.set_api_key(ApiProvider.ELEVEN_LABS, "") ApiKeyManager.set_api_key(ApiProvider.PEXELS, "") # Music and Video Links music_links = [ "https://www.youtube.com/watch?v=1WP_YLn1D1c", "https://www.youtube.com/watch?v=ZhECyz85FMc", "https://www.youtube.com/watch?v=6FNHe3kf8_s", "https://www.youtube.com/watch?v=p7ZsBPK656s", "https://www.youtube.com/watch?v=__CRWE-L45k", "https://www.youtube.com/watch?v=iaKgF1Vf5bQ" ] video_links = [ "https://www.youtube.com/watch?v=UJa80UPjREU", "https://www.youtube.com/watch?v=IWqqD3HXTp0", "https://www.youtube.com/watch?v=wgntRR5_Zvs", "https://www.youtube.com/watch?v=vLnX5JP4jVg", "https://www.youtube.com/watch?v=-qZqpM-k7sY", "https://www.youtube.com/watch?v=Lmb_G9klCvU" ] # Choose random music and video music_url = random.choice(music_links) video_url = random.choice(video_links) # Add assets to AssetDatabase AssetDatabase.add_remote_asset("custom_music", AssetType.BACKGROUND_MUSIC, music_url) AssetDatabase.add_remote_asset("custom_video", AssetType.BACKGROUND_VIDEO, video_url) # Configure Voice Module voice_module = ElevenLabsVoiceModule(api_key=ApiKeyManager.get_api_key(ApiProvider.ELEVEN_LABS), voiceName="Bella") # Configure Content Engine facts_type = "interesting_facts" # Specify the type of facts you want content_engine = FactsShortEngine(voiceModule=voice_module, facts_type=facts_type, background_video_name="custom_video", background_music_name="custom_music", num_images=4, language=Language.ENGLISH) # Generate Content for step_num, step_logs in content_engine.makeContent(): print(f"{step_logs}") # Get Video Output Path print(content_engine.get_video_output_path())