# Stream Reader

Bu fonksiyon bloğu, ağ akışlarını (YouTube, Twitch, HTTP/RTSP vb.) arka planda oynatır ve diğer blokların kullanması için en son kareyi hazır tutar. Sürekli akış önizleme ve aşağıya doğru işleme için tasarlanmıştır; oynatma hızı, istenen kalite ve kare hızı sınırlaması gibi kontroller sunar.

## 📥 Girdiler

Bu fonksiyon bloğunun herhangi bir girdisi yoktur.

## 📤 Çıktılar

`Image Any`\
Sağlanan yayın kaynağından alınan en son kare (akış devam ettikçe güncellenir).

## 🕹️ Kontroller

* `Status`\
  Mevcut durumu ve yardımcı mesajları gösterir (ör. waiting, connecting, live, paused, reconnecting).
* `Stream URL`\
  Oynatmak istediğiniz yayın adresini veya bağlantısını girin (örnekler: genel canlı bağlantılar, HTTP livestream linkleri veya sağlayıcı bağlantıları).
* `Playback speed`\
  Oynatma hızını ayarlayın (UI'da gösterilen aralık). Yavaş hareket için 1.0 altında, daha hızlı oynatma için 1.0 üzerinde değerler kullanın.
* `Preferred quality`\
  Birden çok sürüm mevcutsa tercih edilen kaliteyi isteyin (ör. Best, 1080p, 720p).
* `FPS limit`\
  Bu blok tarafından üretilen çıkış kare hızını sınırlayın. Kaynağın yerel kare hızını kullanmak için 0 yapın.
* `Pause playback`\
  Bağlantıyı kapatmadan akışı duraklatmak/geri almak için açıp kapatın.

## 🎨 Özellikler

* Arka planda yayın oynatma: Uygulama arayüzü yanıt verirken uzak akışları arka planda oynatır ve en son kareyi erişilebilir tutar.
* Sağlam bağlantı yönetimi: açık durum mesajları gösterir (connecting, live, paused, reconnecting) ve geçici hatalardan kurtulma girişiminde bulunur.
* Oynatma kontrolü: oynatma hızını kontrol edin ve mevcutsa belirli bir sürümü isteyin.
* Kare hızı sınırlama: saniyedeki kare sayısını sınırlayarak aşağıya doğru işleme yükünü azaltın.
* İsteğe bağlı uzak kare yükleme: yapılandırıldığında yakalanan kareler depolama veya kayıt için uzak bir yükleyiciye gönderilebilir.
* Son kareyi koruyarak duraklatma: duraklatma gerçekleştirildiğinde son kare inceleme veya işleme için kullanılmaya devam eder.

## 📝 Kullanım Talimatları

1. `Stream URL` alanına bir yayın bağlantısı girin.
2. Belirli bir sürüm istiyorsanız `Preferred quality` ayarını düzenleyin.
3. Akışın aşağı bloklara nasıl iletileceğini kontrol etmek için `Playback speed` ve `FPS limit` değerlerini ayarlayın.
4. Bağlantıyı açık tutarak kare güncellemelerini geçici olarak durdurmak için `Pause playback` kullanın.
5. Canlı kareleri tüketmek için bu bloğun `Image Any` çıkışını görselleştirme veya işleme bloklarına bağlayın.

## 📊 Değerlendirme

Aktif olduğunda, bu fonksiyon bloğu yapılandırılmış yayından sürekli olarak kareler alır ve en güncel kareyi `Image Any` çıktısı üzerinden sağlar. `Status` mesajları bağlantı durumunu yansıtacak şekilde güncellenir. Duraklatıldığında kare güncellemeleri durur ancak son kare kullanılabilir durumda kalır.

## 💡 İpuçları ve Püf Noktaları

* Canlı yayını etkileşimli önizlemek için `Image Any` çıkışını `Show Image` bloğuna bağlayın; böylece görüntü görüntüleyicisini açıp kareleri inceleyebilirsiniz.
* CPU/GPU yükünü azaltmak için ağır AI bloklarından önce `Image Any` çıktısını bir `Image Resizer` bloğuna bağlayın (ör. `Object Detection (D-FINE)`, `Mask Detection`, `Pose Estimation`).
* Uzun süreli kayıt veya hata ayıklama için çıkışı `Record Video`, `Image Logger` veya `Image Write` bloklarına yönlendirin.
* Hareket algılama veya ön plan bölgesi çıkarmak için akış çıkışına `Background Subtractor` uygulayın; bu çıktıyı aşağıdaki dedektörlerle kullanabilirsiniz (ör. `Object Detection - Custom`).
* Sahnenin belirli bir alanına odaklanmanız gerekirse, tespit veya ölçüm bloklarından önce `Image ROI`, `Image ROI Select` veya `Image ROI Polygon` kullanın (ör. `Find Object`, `Histogram On Line`).
* Akıştaki tespit edilen nesneleri kareler boyunca izlemek ve görselleştirmek için `Object_Detection_Tracker` ve `Draw Detections` ile birleştirin.
* Canlı yayınlarda OCR gerekiyorsa, uygun kırpma (`Image ROI Select`) ve görüntü iyileştirme (`Contrast Optimization` veya `Denoising`) uyguladıktan sonra çıkışı `OCR` veya `OCR (EasyOCR)` bloklarına bağlayın.
* Kaynak büyük veya kararsızsa, kararlılığı artırmak ve bant genişliğini azaltmak için `FPS limit` değerini düşürmeyi veya `Preferred quality` seviyesini azaltmayı deneyin.

## 🛠️ Sorun Giderme

* Eğer durum "Waiting for stream link" olarak görünüyorsa, `Stream URL` alanının şema dahil olmak üzere tam bir URL olduğundan emin olun (ör. `http://`, `https://`, `rtsp://`).
* Bağlantı başarısız oluyorsa veya sık sık yeniden bağlanıyorsa, istenen kaliteyi düşürmeyi veya FPS limitini azaltmayı deneyin; bu, bant genişliği ve işlem yükünü hafifletebilir.
* Durum canlı (live) gösteriyor fakat kareler güncellenmiyorsa, yenileme zorlamak için `Pause playback` anahtarını kapatıp tekrar açın.
* Bağlantı mesajlarını hata ayıklamanız gerekiyorsa, ilerleme veya hata ile ilgili ipuçları için bloğun `Status` etiketini izleyin.


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.augelab.com/turkish/fonksiyon-bloklari/input-output/image-inputs/stream-reader.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
