Geliştiriciler

Eğer bir programcıysanız (veya programcı olmak istiyorsanız) ve OpenShot için yeni özellikler geliştirmek, hataları düzeltmek veya kullanıcı arayüzünü iyileştirmekle ilgileniyorsanız, aşağıdaki bölümler nasıl başlayacağınızı ve nasıl katılacağınızı açıklayacaktır!

Genel Bakış

OpenShot Video Editor’ın 3 ana bileşeni vardır: Python & PyQt kullanıcı arayüzü (openshot-qt), C++ ses kütüphanesi (libopenshot-audio) ve C++ video kütüphanesi (libopenshot). Python, PyQt veya C++ hakkında bilginiz yoksa, bu konuları araştırmak ve öğrenmek için iyi bir zamandır.

Ancak, C++ bileşenleri kullanıcı arayüzüne hiç dahil olmadığından, birçok hata sadece Python bilgisiyle düzeltilebilir ve yeni özellikler eklenebilir. Python harika bir dildir, öğrenmesi çok eğlencelidir ve OpenShot geliştiricisi olmak için gereken tek ön koşuldur!

Uyarı

Aşağıdaki talimatlar, OpenShot geliştirme için yapılandırması en kolay ortam olan Ubuntu Linux içindir. Başka bir işletim sistemi kullanıyorsanız, devam etmeden önce Ubuntu LTS ile bir sanal makine çalıştırmanızı öneririm.

Geliştirme için Windows veya Mac sistemi kullanmanız gerekiyorsa, önce libopenshot wiki’sindeki derleme notlarına bakın. Kütüphaneyi tüm bağımlılıklarıyla derlemek sürecin en zor kısmıdır.

En Son Kaynak Kodunu Alma

Herhangi bir hatayı düzeltmeden veya özellik eklemeden önce, kaynak kodunu bilgisayarınıza almamız gerekiyor.

3 depomuzu klonlamak için git kullanın:

git clone https://github.com/OpenShot/libopenshot-audio.git
git clone https://github.com/OpenShot/libopenshot.git
git clone https://github.com/OpenShot/openshot-qt.git

Geliştirme Ortamınızı Yapılandırma

OpenShot’u derlemek veya çalıştırmak için sisteminize bazı bağımlılıkları yüklememiz gerekiyor. Bunu yapmanın en kolay yolu Daily PPA kullanmaktır. PPA, yazılım paketlerimizi indirip yükleyebileceğiniz resmi olmayan bir Ubuntu deposudur.

sudo add-apt-repository ppa:openshot.developers/libopenshot-daily
sudo apt-get update
sudo apt-get install openshot-qt \
                     cmake \
                     libx11-dev \
                     libasound2-dev \
                     libavcodec-dev \
                     libavdevice-dev \
                     libavfilter-dev \
                     libavformat-dev \
                     libavresample-dev \
                     libavutil-dev \
                     libfdk-aac-dev \
                     libfreetype6-dev \
                     libjsoncpp-dev \
                     libmagick++-dev \
                     libopenshot-audio-dev \
                     libprotobuf-dev \
                     libqt5svg5-dev \
                     libswscale-dev \
                     libunittest++-dev \
                     libxcursor-dev \
                     libxinerama-dev \
                     libxrandr-dev \
                     libzmq3-dev \
                     pkg-config \
                     python3-dev \
                     protobuf-compiler \
                     qtbase5-dev \
                     libqt5svg5-dev \
                     libxcb-xfixes0-dev \
                     qtmultimedia5-dev \
                     swig

Bu noktada, tüm 3 OpenShot bileşeninin kaynak kodunu yerel klasörlere klonlamış, OpenShot günlük PPA’sını yüklemiş ve gerekli tüm geliştirme ve çalışma zamanı bağımlılıklarını kurmuş olmalısınız. Bu harika bir başlangıçtır ve şimdi kod derlemeye başlayabiliriz!

libopenshot-audio (Derleme Talimatları)

Bu kütüphane ses oynatma ve ses efektleri için gereklidir. JUCE ses çerçevesine dayanır. İşte derlemek için komutlar:

cd libopenshot-audio
mkdir build
cd build
cmake -DCMAKE_INSTALL_PREFIX=dist ..
make
make install

Temelde, libopenshot-audio/build klasörüne geçiyoruz, ardından üst klasörde cmake .. komutunu çalıştırıyoruz. Bu, bağımlılıkları bulur ve bu kütüphaneyi derlemek için gereken tüm Makefile dosyalarını oluşturur. Sonra make bu Makefile’ları kullanarak kütüphaneyi derler ve make install belirtilen konuma kurar. Eğer CMAKE_INSTALL_PREFIX ayarlanmadıysa, dosyalar varsayılan olarak /usr/local/ dizinine kurulacak ve make install yönetici yetkileri gerektirecektir.

libopenshot (Derleme Talimatları)

Bu kütüphane video kod çözme, kodlama, animasyon ve hemen hemen her şey için gereklidir. Video düzenleme ve oynatma işlemlerinin çoğunu yapar. İşte derlemek için komutlar:

cd libopenshot
mkdir build
cd build
cmake -DLIBOPENSHOT_AUDIO_DIR=../../libopenshot-audio/build/dist ..
make

Temelde, libopenshot/build klasörüne geçiyoruz, ardından üst klasörde cmake .. komutunu çalıştırıyoruz. Bu, bağımlılıkları bulur ve bu kütüphaneyi derlemek için gereken tüm Makefile dosyalarını oluşturur. Sonra make bu Makefile’ları kullanarak kütüphaneyi derler. Derlenmiş libopenshot-audio kurulumumuzun konumunu belirttiğimiz için, sistemdeki sürüm yerine bu sürüm kullanılacaktır (varsa).

Derledikten sonra libopenshot kütüphanesini kurmuyoruz çünkü buna gerek yok. Test amaçlı, OpenShot’a libopenshot’ı doğrudan build dizinimizden kullanmasını söyleyebiliriz.

Dil Bağlayıcıları

libopenshot API’si, SWIG bağlayıcıları aracılığıyla birkaç dilde mevcuttur. Python, OpenShot kullanıcı arayüzü tarafından kullanılır ve ayrıca Ruby ve Java bağlayıcıları sağlıyoruz. Godot oyun motoruna video düzenleme özellikleri entegre etmek isteyen geliştiriciler için deneysel Godot 4.4 desteği de dahildir. Tüm bu bağlayıcılar aynı C++ kod tabanına bağlanır, böylece tercih ettiğiniz ortamdan video düzenleyebilirsiniz.

openshot-qt (Başlatma Talimatları)

Bu, ana PyQt Python uygulamamızdır. Python ile yazıldığı için çalıştırmak için derlemeye gerek yoktur. Yeni derlenmiş libopenshot-audio ve libopenshot kütüphanelerimizle kaynak koddan OpenShot’u başlatmak için aşağıdaki komutları kullanın:

cd openshot-qt
PYTHONPATH=../libopenshot/build/src/bindings/python
python3 src/launch.py

Bu, OpenShot kullanıcı arayüzünü başlatmalıdır. Kaynak kod dosyalarında (*.py Python dosyaları, *.ui PyQt UI dosyaları vb.) yaptığınız tüm değişiklikler dahil edilecektir. Bu, libopenshot-audio ve libopenshot kütüphanelerini gerektirir ve yukarıdaki adımlarda bir sorun olursa, OpenShot muhtemelen başlatılamaz.

Eğer OpenShot bu noktada başlarsa, tebrikler! Artık yerel kaynak kodunuzdan çalışan çalışan bir OpenShot yerel sürümüne sahipsiniz. Kaynak kodda bazı değişiklikler yapmayı deneyin ve OpenShot’ı yeniden başlatın… şimdi değişikliklerinizi görmelisiniz!

GitHub Sorunları

Artık OpenShot Video Editor’ü kaynak koddan başarıyla derleyip başlattığınıza göre, GitHub’daki hata raporları listemize göz atmayı unutmayın: OpenShot Issues. Ayrıca, hızlı katılımcı formumuzu doldurmanız ve kendinizi tanıtmanız teşvik edilir!

Değişikliklerinizi Paylaşın

Bir hatayı düzelttikten veya harika yeni bir özellik ekledikten sonra, bunu OpenShot ekibiyle paylaşmayı unutmayın. İdeal olarak, bunu ana kaynak kodu dalımıza birleştirebiliriz. Değişikliklerinizi paylaşmanın en kolay yolu, depomuzun bir çatallanmasını oluşturmak, değişikliklerinizi GitHub’a göndermek ve bir Pull Request oluşturmaktır. Bir Pull Request, OpenShot ekibine değişikliklerinizin birleştirilmeye hazır olduğunu bildirir. Ardından, inceleyebilir, geri bildirim verebilir ve umarız değişikliklerinizi ana dala birleştirebiliriz.