AI ile YouTube & Tiktok ve Instagram için Otomatik Video Üretimi

Mustafa Yılmaz
4 min readFeb 10, 2024

Giriş

Selamlar,

Uzun zaman önce düşündüğüm projenin basit bir halinin Github’da açık kaynak olarak paylaşılmasının ardından hafta sonu projesi olarak repoyu test ettim ve kullanmak isteyenler olursa faydalı olması açısından detaylandırarak paylaşmak istedim.

Projenin tamamı FujiwaraChoki tarafından Github üzerinden yayınlanmıştır. Projenin genel amacı sadece bir konu verilerek bu konu özelinde seslendirilmiş, altyazısı olan ve videolar/görseller içeren kısa videolar üretebilmek.

Öncelikle proje ile neler yapılabiliyor onları bir listeleyebiliriz:

  • Pexels üzerinden otomatik ve video konusu ile ilgili görsel/video çekebiliyor,
  • Ücretsiz GPT4 üzerinden video konusu ile ilgili otomatik metin oluşturuyor.
  • Oluşturulan metni TikTok seslendirme kütüphanesi ile seslendirebiliyor.
  • Video içerisine opsiyonel olarak altyazı ekleyebiliyor.
  • İsterseniz gerekli ayarlamaları yaparak videoları doğrudan YouTube’a yükleyebiliyorsunuz.

Örnek bir video: 5 fun date suggestions for the weekend with friends

Kurulum ve detaylara geçebiliriz:

Reponun Çekilmesi ve Kütüphanelerin Kurulması

git clone https://github.com/FujiwaraChoki/MoneyPrinter.git
cd MoneyPrinter

Repo indirildikten sonra kütüphane kurulumları için:

pip install -r requirements.txt

.ENV Ayarlamaları

.env için doldurulması gereken 3 alan ve opsiyonel 2 alan bulunmaktadır. Bunları nasıl dolduracağımıza bakalım, öncelikle .env.example dosyasından bir .env türetmek için aşağıdaki komutu çalıştırıyoruz:

cp .env.example .env

Assembly.AI API Key Alma (Opsiyonel)

Bu seçenek opsiyoneldir. Oluşturulan ses dosyasını video içerisinde video akışına uygun olarak altyazı olarak eklenmesi için kullanılabilir. Assembly.AI oldukça iyi bir audio-intelligence yapısı sunmaktadır. Ses dosyalarını transkribe etme, özet üretme, altyazı dosyası üretme, ses dosyası ile chatbot oluşturma, otomatik paragraf üretme, keyword üretme gibi birçok gelişmiş ve oldukça başarılı özellikler sunmaktadır.

https://www.assemblyai.com/ sitesine gidip giriş yaptıktan sonra, 3–5 dolarlık bir funds eklemesi gerçekleştirebilirsiniz. Şu anda API kullanımı özelinde bonus veya free kullanım sunulmadığını biliyorum.

Ekleme yaptıktan sonra, Dashboard içerisindeki home sekmesinden API key’i kopyalayabilirsiniz.

Kopyaladıktan sonra .env dosyasında “ASSEMBLY_AI_API_KEY” karşılığına yapıştırıyoruz.

TikTok Session_ID

Ücretsiz bir seslendirme özelliği sunduğu için projede kullanılan bu özellik için bir TikTok hesabına ihtiyacınız var. TikTok hesabına tarayıcı üzerinden girdikten sonra DevTools açıp (F12) “Application” sekmesine geliyoruz ve “Storage” alt menüsüne tıklıyoruz. “sid_tt” satırındaki değeri kopyalıyoruz ve .env dosyamızdaki “TIKTOK_SESSION_ID” karşılığına yapıştırıyoruz.

Pexels API Key

Kullanımı ücretsiz (sınırlı kullanıma sahip) olan Pexels API oldukça basit bir şekilde alınabiliyor. Tek yapmak gereken https://www.pexels.com/api/ adresine gittikten sonra giriş yapmak ve birkaç soru cevaplamak. Ardından sayfaya geri dönmek ve “Your API Key” butonuna tıklamak.

Pexels API Key’ini de aldıktan sonra yapılması gereken standart biçimde .env içerisindeki “PEXELS_API_KEY” karşılığına yapıştırmak.

OpenAI API Key (Gerek yok)

Buna gerek yok çünkü G4F ile ücretsiz kullanıma sahip oluyoruz fakat daha detaylı ve kaliteli cevaplar için OpenAI sayfasından API key alınıp .env dosyası içerisine “OPENAI_API_KEY” karşılığı olarak yapıştırılabilir. Ben kullanmadım şu anlık, o yüzden bu kısmı geçiyorum.

Image Magick Kurulumu

Bu araç projedeki videoların birleştirilmesi, altyazıların videoya eklenmesi, seslerin eklenmesi vb. bütün işlemleri yürütmeden sorumlu.

Kurulumu Mac kullandığım için sadece macOS üzerinden anlatabileceğim:

macOS:

Ben HomeBrew üzerinden kurdum. Fakat source files üzerinden de kurulumu mevcut ve sitede anlatılıyor.

Brew kuruludur diye düşünerek, aşağıdaki komut üzerinden aracı kurabilirsiniz.

brew install imagemagick

Ardından bir ek aracı da kurmamız gerekiyor, onun için de aşağıdaki komutu çalıştırabilirsiniz:

brew install ghostscript

Kurulumdan sonra terminalde aşağıdaki komutu çalıştırıyoruz:

which magick 

Kurulumu başarılı olduysa aşağıdaki gibi bir çıktı vermesi gerekecek:

/opt/homebrew/bin/magick

Bu çıktıyı alıp .env dosyamızdaki “IMAGEMAGICK_BINARY” karşılığı olarak yapıştırıyoruz.

Bu aşamadan sonra bütün .env değerlerimizi ayarlamayı tamamlamış bulunuyoruz. Artık uygulamamızı ayağa kaldırıp test edebiliriz.

Not: YouTube üzerine doğrudan video yükleme konusunda da desteği bulunuyor. Bunun için buradan bilgi alabilirsiniz.

Uygulamayı Ayaklandırma

Uygulamanın backendini ayaklandırmak için aşağıdaki komutları kullanabiliriz:

cd Backend
python main.py

Ardından yeni bir terminalde aşağıdaki komutu kullanarak frontend kısmını ayaklandırabiliriz.

cd Frontend 
python -m http.server 3000

3000 Portunu başka projelerde kullanıyorsanız değiştirebilirsiniz.

Uygulamayı Test Etme

localhost:3000 adresine girerek uygulama ara yüzüne ulaşıyoruz. Bizi aşağıdaki gibi bir sayfa karşılayacak.

AI Model: Burası G4F olarak kalabilir. GPT-4 veya GPT3.5 için OPENAI_KEY’i .env içerisine eklemeniz gerekmektedir.

Voice: Birçok farklı ses seçeneği bulunmakta, tercihinize göre bir seçim yapabilirsiniz.

Subject: Buraya videonun konusu olacak kısa bir açıklama girmelisiniz.

Paragraph Number: Buraya ise kaç paragraflık bir metin oluşturulmasını istediğinize dair bir seçim girebilirsiniz.

Music, ZIP ve YouTube otomatik yükleme konusunda tercihe bağlı işlem alabilir ve repo sayfasından bilgi alabilirsiniz.

Ben örnek olarak “Five interesting facts about Antarctica” konusunda içerik üretmesini istedim, sonuç aşağıdaki gibi:

Sonuç ve Özet

Birçok farklı kullanım örneği türetilebilecek olan açık kaynaklı bu projeyi kendim test edip, kurulumuna dair bir yardımcı doküman hazırlamak için bu blogu hazırladım.

Genel olarak video ve görsel seçimlerinde sorunlar oluşsa ve videolar ile ses arasında uyum sorunu olsa bile daha da geliştirilerek muhtemelen bu alanda iyi bir uygulama haline dönüşecektir.

Son olarak şu anda ortalama bir video üretimi 5–7 dakika arası sürüyor, tabii bu kullanılan kaynaklara göre değişebilir.

Umarım faydalı olmuştur!

Sevgiler.

--

--

Mustafa Yılmaz

Kendi düşüncelerimi, yazılarımı, şiirlerimi ve deneyimlerimi paylaşıyorum.