Yeni rehberler ve projeler yayınlanıyor.
Ana Sayfa / Projelerim / TP-SCREEN

TP-SCREEN

TRPOLARIS, Android cihazlara gerçek zamanlı LAN üzerinden akış sağlayan bir Windows sanal ekran sistemidir; otomatik sunucu algılama, sanal ekran sürücüleri, güvenli PIN bağlantıları, yeniden bağlanma desteği ve tam ekran görüntüleme özelliklerine sahiptir.

TP-SCREEN
Sürüm1.1.0
PlatformWindows - Android
Oyun / ÜrünTP-SCREEN
HAZIR DOSYA

Bu içeriği indir

Dosyayı doğrudan indirmek için aşağıdaki butonu kullanabilirsiniz.

GITHUB

trpolaris/TP-SCREEN

TRPOLARIS is a Windows virtual display system with real-time LAN streaming to Android devices, featuring automatic server discovery, virtual display drivers, secure PIN connections, reconnect support, and full-screen viewing.

★ 0⑂ 0C#
GitHub'a Git ↗

Platform Driver Server Viewer Network

🚀 TRPOLARIS TP-SCREEN

Windows → Android & Windows Gerçek Zamanlı Ekran Akışı

🖥️ Sanal Ekran  •  📱 Android Viewer  •  🌐 Yerel Ağ  •  ⚡ Gerçek Zamanlı Akış

UYGULAMA İNDİRMELERİ

📌 Proje Hakkında

TRPOLARIS TP-SCREEN, Windows üzerinde sanal bir ekran oluşturarak bu ekranın görüntüsünü yerel ağ üzerinden gerçek zamanlı şekilde Android cihazlara aktarmak için geliştirilmiş bir ekran yayınlama sistemidir.

Proje; Windows sanal ekran altyapısından Android Viewer uygulamasına, otomatik driver kurulumundan sunucu keşfine ve bağlantı yönetiminden yayın istatistiklerine kadar gerekli bileşenleri tek bir yapı altında toplar.


✨ Öne Çıkan Özellikler

🖥️ Windows Server

  • 🖥️ Windows üzerinde sanal ekran oluşturma
  • ⚙️ Windows Indirect Display Driver (IddCx) desteği
  • 🔌 Otomatik driver kurulumu
  • 🔐 Driver sertifikası kurulumu
  • 📡 LAN üzerinden otomatik sunucu keşfi
  • 🔑 PIN tabanlı bağlantı
  • 📊 Bağlantı ve yayın istatistikleri
  • 🖥️ Çözünürlük yönetimi
  • 🔄 İstemci bağlantı yönetimi
  • 📦 Gömülü driver runtime kaynakları

📱 Android Viewer

  • 🔎 Otomatik LAN sunucu keşfi
  • 🔗 Hızlı sunucu bağlantısı
  • 💾 Kayıtlı sunucu profilleri
  • 🔐 PIN desteği
  • 🔄 Otomatik yeniden bağlanma
  • 📈 Gerçek zamanlı FPS
  • 🌐 Mbps bilgisi
  • 📶 Ping ölçümü
  • 🖥️ Çözünürlük bilgisi
  • 🎬 Stream durumu
  • ⛶ Tam ekran görüntüleme
  • 🔄 Dikey / yatay ekran desteği
  • 🖥️ Windows çözünürlük değişikliklerini algılama
  • 👆 Dokunmatik bilgi paneli
  • 🎞️ Animasyonlu splash screen

 


🧩 Sistem Mimarisi

TP-SCREEN, Windows tarafındaki sanal ekran ile Android Viewer arasında çalışan istemci-sunucu mimarisine sahiptir.

┌────────────────────────────────────┐
│             🪟 WINDOWS             │
│                                    │
│   Windows Indirect Display Driver  │
│                │                   │
│                ▼                   │
│        🖥️ Virtual Display           │
│                │                   │
│                ▼                   │
│       ⚙️ TRPOLARIS Server          │
│                │                   │
└────────────────┼───────────────────┘
                 │
                 │ 🌐 LAN
                 │
                 ▼
┌────────────────────────────────────┐
│             📱 ANDROID             │
│                                    │
│           TPViewer App             │
│                │                   │
│                ▼                   │
│       🎬 Real-Time Display         │
└────────────────────────────────────┘


🌐 Ağ Yapısı

TRPOLARIS yerel ağ üzerinde iki temel iletişim kanalı kullanır.

AmaçProtokolPort
🔎 Sunucu KeşfiUDP50504
🎥 Ekran AkışıTCP50505

🔗 Bağlantı Akışı

📱 Android Viewer
       │
       │ UDP 50504
       ▼
🔎 Sunucu Keşfi
       │
       │ TCP 50505
       ▼
🖥️ TRPOLARIS Server
       │
       ▼
🖥️ Virtual Display


🖥️ Windows Virtual Display Driver

TRPOLARIS Display Driver, Windows üzerinde sanal ekranların oluşturulmasını ve yönetilmesini sağlayan Windows Indirect Display Driver (IddCx) tabanlı driver bileşenidir.

📦 Driver Runtime

IddSampleDriver.inf
IddSampleDriver.cat
IddSampleDriver.dll
IddSampleDriver.cer
IddSampleApp.exe

Server başlatıldığında bu runtime dosyaları sanal ekran altyapısının hazırlanması için kullanılır.

🛠️ Driver Geliştirme Ortamı

Driver Gereksinimleri

IDEVisual Studio 2022 Compiler|MSVC v143 Windows SDK|26100 Windows Driver Kit|26100 Platform|x64

Driver çözümü:

Driver/IddSampleDriver.sln

Driver'ın Release / x64 yapılandırmasıyla derlenmesi önerilir.


⚙️ Otomatik Driver Kurulumu

TRPOLARIS Server içerisinde otomatik bir driver bootstrap sistemi bulunur. Bu sistem sayesinde son kullanıcıların driver dosyalarını ve kurulum komutlarını manuel şekilde yönetmesine gerek kalmaz.

🖥️ Server.exe
      │
      ▼
⚙️ DriverBootstrap.EnsureInstalled()
      │
      ▼
📦 Embedded Driver Files
      │
      ▼
🔍 Certificate Verification
      │
      ▼
🔐 Windows Certificate Store
      │
      ▼
➡️ pnputil /add-driver
      │
      ▼
🔄 pnputil /scan-devices
      │
      ▼
⚙️ IddSampleApp.exe
      │
      ▼
🖥️ Virtual Display


🔐 Driver Sertifikası

Repository içerisinde bulunan IddSampleDriver.cer sertifikası geliştirme ve test amacıyla kullanılmaktadır.

Trusted Root
      +
Trusted Publisher


🛠️ Sistem Gereksinimleri

🪟 Windows
Visual Studio 2022 Windows SDK 26100 Windows Driver Kit 26100 MSVC v143 .NET SDK Inno Setup 7.x
📱 Android
Flutter SDK Dart SDK Android Studio Android SDK Android SDK Build Tools Android NDK

🔨 Windows Kurulumu ve Build

Projeyi GitHub üzerinden indirdikten sonra Windows bileşenleri aşağıdaki adımlar kullanılarak hazırlanabilir.

01

Repository'yi klonla

git clone https://github.com/trpolaris/TP-SCREEN.git cd TP-SCREEN

02

Driver'ı hazırla

.Build-Driver-And-Stage.ps1

03

Server bağımlılıklarını yükle

dotnet restore .PolarisDisplay.ServerPolarisDisplay.Server.csproj

04

Server'ı Release olarak derle

dotnet build .PolarisDisplay.ServerPolarisDisplay.Server.csproj -c Release

05

Server'ı publish et

dotnet publish .PolarisDisplay.ServerPolarisDisplay.Server.csproj -c Release -r win-x64 --self-contained true

⚙️ x64 Driver Build

.\Build-Driver-And-Stage.ps1 -Platform x64

🖥️ Client Restore

dotnet restore .\PolarisDisplay.Client\PolarisDisplay.Client.csproj

🖥️ Client Build

dotnet build .\PolarisDisplay.Client\PolarisDisplay.Client.csproj -c Release

📦 Client Publish

dotnet publish .\PolarisDisplay.Client\PolarisDisplay.Client.csproj `
  -c Release `
  -r win-x64 `
  --self-contained true


📦 Windows Installer

Windows kurulum paketleri Inno Setup 7.x kullanılarak hazırlanır.

InstallerDosya
🖥️ Server InstallerInstaller/Server/Server.iss
📱 Viewer InstallerInstaller/Viewer/Viewer.iss

🚀 Server Kurulum Akışı

📦 Installer
   │
   ├── 🖥️ Server kurulumu
   ├── 🔐 Certificate kurulumu
   ├── ⚙️ Driver hazırlığı
   └── 🚀 Server başlatılması


📱 Android Viewer

Android Viewer uygulaması projenin TPViewer/ klasöründe bulunmaktadır.

BileşenTeknoloji
📱 ArayüzFlutter
💻 Programlama DiliDart
🤖 IDEAndroid Studio
📦 SDKAndroid SDK
🔨 BuildAndroid SDK Build Tools
⚙️ NativeAndroid NDK

🔍 Flutter Ortamını Kontrol Et

flutter doctor


🚀 Android Kurulumu

01

📁 TPViewer klasörüne geç

cd TPViewer

02

🧹 Projeyi temizle

flutter clean

03

📦 Bağımlılıkları yükle

flutter pub get

04

📱 Bağlı cihazları kontrol et

flutter devices

05

▶️ Uygulamayı çalıştır

flutter run


📦 Release APK

Android için release APK oluşturmak:

flutter clean
flutter pub get
flutter build apk --release

APK çıktısı:

TPViewer/build/app/outputs/flutter-apk/


🔄 Otomatik Reconnect

Ağ bağlantısı geçici olarak kesildiğinde Viewer otomatik olarak yeniden bağlantı kurabilir.

🟢 Bağlı
  │
  ▼
🔴 Bağlantı Kesildi
  │
  ▼
⏳ Bekle
  │
  ▼
🔄 Yeniden Bağlan
  │
  ▼
🟢 Bağlı


📊 Yayın İstatistikleri

İstatistikAçıklama
📈 FPSGerçek zamanlı kare hızı
🌐 MbpsAktarılan ağ verisi
📶 PingBağlantı gecikmesi
🖥️ ResolutionAktif görüntü çözünürlüğü
🎬 Stream StatusYayın durumu

İlk görüntü karesi alındığında stream aktif duruma geçer.


⛶ Tam Ekran ve Ekran Yönü

⛶ Tam Ekran
Sistem çubuklarının gizlenmesi, ekranın uykuya geçmesinin engellenmesi ve yayın bilgilerinin görüntülenmesi desteklenir.
📊 Bilgi Paneli
FPS, Mbps ve Ping bilgileri görüntülenebilir. Bilgi paneli belirli bir süre sonra otomatik olarak gizlenebilir ve ekrana dokunulduğunda tekrar gösterilebilir.
🔄 Dikey / Yatay
Viewer portrait ve landscape ekran yönlerini destekler.
🖥️ Çözünürlük Değişiklikleri
Windows tarafındaki çözünürlük değişiklikleri Viewer tarafından algılanabilir.

📐 Örnek

1920 × 1080
      ↓
📺 Landscape

1080 × 1920
      ↓
📱 Portrait


📁 Proje Yapısı

TRPOLARIS/
│
├── ⚙️ Driver/
│   ├── IddSampleApp/
│   ├── IddSampleDriver/
│   └── Runtime/
│       ├── IddSampleDriver.inf
│       ├── IddSampleDriver.cat
│       ├── IddSampleDriver.dll
│       ├── IddSampleDriver.cer
│       └── IddSampleApp.exe
│
├── 🖥️ PolarisDisplay.Server/
│
├── 🖼️ PolarisDisplay.Client/
│
├── 📦 Installer/
│   ├── Server/
│   │   └── Server.iss
│   └── Viewer/
│       └── Viewer.iss
│
├── 📱 TPViewer/
│   ├── android/
│   ├── assets/
│   ├── lib/
│   ├── pubspec.yaml
│   └── pubspec.lock
│
├── 📄 PolarisDisplay.sln
├── ⚙️ Build-Driver-And-Stage.ps1
├── .gitignore
├── .gitattributes
└── README.md


🧪 Release Testleri

🔗 Bağlantı Testleri
☐ Splash screen ☐ Server discovery ☐ Server connection ☐ PIN authentication ☐ Reconnect
📊 Streaming Testleri
☐ FPS ☐ Mbps ☐ Ping ☐ Resolution ☐ Stream status
🖥️ Görüntü Testleri
☐ Fullscreen ☐ Information panel ☐ Panel timeout ☐ Touch to show panel ☐ Landscape ☐ Portrait ☐ Windows rotation ☐ Phone rotation

🔧 Geliştirme Akışı

🖥️ Windows / Driver

⚙️ Driver Build
      ↓
📦 Driver Runtime
      ↓
🖥️ Server Build
      ↓
📤 Server Publish
      ↓
📦 Installer
      ↓
🧪 Test

📱 Android

📝 Flutter Source
      ↓
🧹 flutter clean
      ↓
📦 flutter pub get
      ↓
▶️ flutter run
      ↓
📱 Device Test
      ↓
📦 flutter build apk --release
      ↓
🧪 Release Test


🧹 GitHub Repository

Gereksiz build çıktılarının ve kullanıcıya özel dosyaların repository içerisine eklenmesini önlemek için .gitignore kullanılmaktadır.

.vs/
.idea/
bin/
obj/
build/
.dart_tool/
.gradle/
local.properties
*.pdb
*.log


🔒 Güvenlik

GitHub repository'sine aşağıdaki hassas bilgilerin eklenmemesi gerekir:

  • 🔑 Private Keys
  • 🔐 API Keys
  • 🔢 Gerçek PIN bilgileri
  • 📜 Production Certificates
  • 🔒 Passwords
  • ⚙️ Kullanıcıya özel configuration dosyaları


🧱 Ana Bileşenler

BileşenAçıklama
🖥️ PolarisDisplay.ServerWindows Server
🖼️ PolarisDisplay.ClientWindows Client
⚙️ DriverVirtual Display Driver
📦 InstallerWindows Installer
📱 TPViewerAndroid Viewer

📌 Proje Durumu

TRPOLARIS TP-SCREEN, Windows ve Android tabanlı bir virtual display çözümü olarak geliştirilmektedir.


🧑‍💻 Geliştirme Yaklaşımı

Yeni özellikler geliştirilirken mevcut çalışan mimarinin mümkün olduğunca korunması hedeflenmektedir.

🎨 UI Designer
Çalışan kullanıcı arayüzünde gereksiz değişikliklerden kaçınılmalıdır.
⚙️ Driver Runtime
Mevcut driver runtime yapısı korunmalı ve yalnızca gerekli değişiklikler uygulanmalıdır.
🌐 Connection Architecture
Bağlantı mimarisinde gereksiz ve geniş kapsamlı değişikliklerden kaçınılmalıdır.
🔄 Önerilen Geliştirme Akışı
Mevcut Kod ↓ Minimum Değişiklik ↓ Build ↓ Test ↓ Release

📄 Lisans

TRPOLARIS uygulama kodu MIT License altında lisanslanmıştır.

Driver/ klasörü altında bulunan Windows Indirect Display Driver bileşenleri Microsoft Windows Driver Samples kaynaklarından türetilmiş kodlar içerir ve ilgili Microsoft Public License (MS-PL), telif ve attribution koşullarına tabidir.

DOSYA

LICENSE

MIT License

Görüntüle
DOSYA

NOTICE.md

Microsoft lisans ve attribution bilgileri

Görüntüle

❓ Sıkça Sorulan Sorular

TRPOLARIS TP-SCREEN nedir?
Windows üzerinde sanal ekran oluşturarak bu ekranın görüntüsünü yerel ağ üzerinden Android cihazlara aktaran bir ekran yayınlama sistemidir.
Sunucu keşfi hangi portu kullanıyor?
UDP 50504.
Ekran akışı hangi port üzerinden yapılıyor?
TCP 50505.
Android Viewer hangi teknolojiyle geliştirildi?
Flutter ve Dart.
Windows tarafında hangi driver teknolojisi kullanılıyor?
Windows Indirect Display Driver (IddCx).
Viewer bağlantısı kesildiğinde yeniden bağlanabiliyor mu?
Evet. Viewer otomatik reconnect sistemini destekler.
Release APK nerede oluşuyor?
TPViewer/build/app/outputs/flutter-apk/ klasörü altında.
Driver sertifikası production için kullanılabilir mi?
Repository içerisinde bulunan sertifika geliştirme ve test amacıyla kullanılmaktadır.
Ana proje bileşenleri nelerdir?
Windows Server, Windows Client, Virtual Display Driver, Installer ve Android Viewer.
Uygulama hangi lisansla dağıtılıyor?
Uygulama kodu MIT License kapsamındadır. Driver tarafındaki Microsoft kaynaklarından türetilmiş bileşenler için ilgili lisans ve attribution koşulları geçerlidir.

🚀 TRPOLARIS TP-SCREEN

Virtual Display  •  Windows  •  Android  •  LAN

İndirme aynaları

ÖZELLİKLER
C#DartC++
Paylaş
Community

0 yorum

0
Henüz yorum yok

İlk yorumu bırakan siz olun.

Bir yorum bırakın

E-posta adresiniz yayınlanmayacaktır. Gerekli alanlar * ile işaretlenmiştir

Bu sitedeki deneyiminiz çerezlere izin vererek iyileştirilecektir.