Canlı Yayın Bir SRT Hedefine Nasıl Gönderilir?
SRT hedefleri RTMP'ye göre birkaç ayrıntı daha ister: bir mod, bir sunucu ve port, çoğu zaman da bir stream ID, parola ve gecikme değeri. Bir srt:// URL'sinin her parçasının ne anlama geldiğini ve bir yayının nasıl bağlanacağını anlatıyoruz.
Yaklaşık 6 dk okuma
Bu yazıda
Bir canlı yayını SRT hedefine göndermek için alıcıdan bir srt:// adresi alın, hangi tarafın dinleyip hangi tarafın arayacağını netleştirin ve alıcının beklediği stream ID, parola ve gecikme değerleriyle birebir eşleştirin. Ardından alıcının UDP portunu açın, göndericiyi başlatın ve yayına güvenmeden önce görüntünün ulaştığını kontrol edin.
Küçük uyumsuzluklar SRT kurulumlarını bozar; bu yüzden her ayrıntıyı eşleştirin. Protokolde yeni misiniz? SRT yayınının ne olduğunu anlatan yazımızla başlayın.
Öne çıkanlar
- Bir SRT bağlantısının bir tarafı bir UDP portunda dinler, diğer tarafı onu arar.
- Bir srt:// URL'si, sunucu ve portun yanı sıra mode, streamid ve passphrase gibi seçenekleri taşır.
- Hataların çoğu kapalı bir porttan, iki arayan (caller) taraftan ya da parola veya stream ID uyumsuzluğundan kaynaklanır.
- 7/24 bir yayını canlı ortamdaki bir alıcıya yönlendirmeden önce yerel olarak test edin.
SRT hedeflerini aslında kimler kullanır?
Ana akım sosyal platformlara genellikle SRT göndermezsiniz. SRT hedefleri çoğunlukla bir yayıncının, şirketin veya iş ortağının işlettiği sistemlerdir:
- Yayın çıkışı (playout) ve prodüksiyon. Stüdyolar, katkı yayınlarını SRT üzerinden donanım kod çözücülerine, görüntü mikserlerine ve playout sistemlerine alır.
- Medya sunucuları. Kendi barındırdığınız ve ticari medya sunucuları SRT'yi kabul eder ve oynatıcılar, kayıt veya ileri dağıtım için yeniden paketler.
- İş ortaklarına teslim. Bir yayın ağına, mekân ekranlarına veya bir dağıtıcıya program sağlayan bir kanal, bunu çoğu zaman SRT üzerinden teslim eder.
- Bulut video hizmetleri. Bazı profesyonel platformlar RTMP'nin yanında SRT alımı da sunar.
Her durumda alıcının operatörü size birebir eşleştirmeniz gereken bağlantı bilgilerini verir. Karşı taraf yalnızca RTMP sunuyorsa bunun yerine özel RTMP sunucusu rehberini izleyin.
Caller, listener ve rendezvous modları
Her SRT bağlantısı, bekleyen bir tarafa ve arayan bir tarafa ihtiyaç duyar.
- Listener (dinleyici) bir UDP portuna bağlanır ve bağlantıları bekler. Erişilebilir bir adrese ve güvenlik duvarında açık bir porta ihtiyaç duyar.
- Caller (arayan) bir listener'ın sunucusuna ve portuna bağlanır; bağlantı dışa doğru olduğu için çoğu güvenlik duvarının arkasından çalışır.
- Rendezvous (buluşma) modunda iki taraf da üzerinde anlaşılan portlarda aynı anda birbirini arar; bu, iki tarafın da gelen trafiği kabul etmediği durumlarda işe yarayabilir.
Mod, videonun hangi yöne aktığıyla ilgili değildir. Bir bulut hizmeti veya yayın yazılımı sizin sunucunuza teslimat yaptığında olağan düzen, göndericinin caller, alıcının listener olmasıdır.
Klasik hata, iki caller ya da iki listener kullanmaktır. İki taraf da net bir hata vermeden bekler; bu yüzden modu alıcının operatörüyle doğrulayın.
Bir srt:// URL'sini parça parça okumak
Bir SRT adresi genellikle şuna benzer:
srt://ingest.example.com:9000?mode=caller&streamid=channel-main&passphrase=YOUR-LONG-SECRET
- Sunucu ve port. Alıcının sunucu adı veya IP adresi ve dinlediği UDP portu. Evrensel bir varsayılan port yoktur; size verileni kullanın.
- mode. Sizin tarafınızın rolü: caller, listener veya rendezvous.
- streamid. Bazı alıcıların bir yayını yönlendirmek veya yetkilendirmek için kullandığı, yayın anahtarına benzer bir tanımlayıcı. Biçimi alıcıya bağlıdır.
- passphrase. AES şifrelemesi için paylaşılan gizli parola; genellikle 10 ila 79 karakter olması gerekir. İki uçta da birebir aynı olmalıdır.
- pbkeylen. İsteğe bağlı 16, 24 veya 32 baytlık anahtar uzunluğu; yani AES-128, 192 veya 256.
- latency. Kurtarma arabelleği. Bazı araçlar milisaniye alırken FFmpeg tabanlı yazılımlar genellikle mikrosaniye bekler; bu yüzden başka bir kurulumdan bir sayı kopyalamadan önce kontrol edin.
Alıcı tarafı hazırlamak
Alıcıyı kendiniz işletiyorsanız, herhangi bir şey gönderilmeden önce onu hazırlayın:
- Bir listener kurun: Medya sunucunuzda, kod çözücünüzde veya playout yazılımınızda sabit bir UDP portunda.
- O UDP portunu açın: Sunucunun güvenlik duvarında ve önündeki her bulut güvenlik grubunda veya yönlendiricide. TCP kuralları SRT'yi kapsamaz.
- Bir parola seçin ve yazılımınız stream ID'ye göre yönlendirme yapıyorsa bu yayın için bir ID belirleyin.
- Güzergâha uygun bir gecikme seçin; uzun veya dengesiz güzergâhlar daha fazlasını gerektirir.
- Formatı doğrulayın. SRT genellikle H.264 video ve AAC ses içeren MPEG-TS taşır; alıcının bunu kabul ettiğinden emin olun.
- Yerel olarak test edin: Başka bir makinedeki OBS veya FFmpeg'den kısa bir yayın göndererek.
Alıcı yalnızca onaylı adresleri kabul ediyorsa göndericinin adresine de izin verin.
Başlamayan SRT bağlantılarında sorun giderme
SRT hataları çoğu zaman belirsizdir; bu yüzden belirtiye göre teşhis koyun:
- Bağlantı zaman aşımına uğruyor. UDP portu kapalı veya yönlendirilmemiş, sunucu adresi yanlış ya da iki taraf da aynı modu kullanıyor.
- Bağlantı reddediliyor. Genellikle parola uyumsuzluğu, yalnızca bir tarafta ayarlanmış bir parola ya da alıcının tanımadığı bir stream ID.
- Bağlanıyor, sonra takılıyor veya kopuyor. Gecikme değeri ağ güzergâhı için çok düşük ya da bant genişliği, bit hızı artı yeniden iletim ek yükünün altında. Önce gecikmeyi artırın.
- Bağlanıyor ama görüntü veya ses yok. Alıcı farklı bir kapsayıcı veya codec bekliyor; günlükleri genellikle hangisi olduğunu söyler.
Bağlantı çalıştıktan sonra, bağlanan her değeri kaydedin. 7/24 bir yayını çevrimiçi tutma yazımızdaki genel alışkanlıklar SRT hedefleri için de geçerlidir.
StreamHouse yayınına bir SRT hedefi eklemek
StreamHouse'ta SRT, yerleşik platformların yanında özel bir hedeftir. Alıcının tam srt:// URL'sini, parola gibi gerektirdiği seçeneklerle birlikte yapıştırın. Size ayrı olarak bir stream ID veya anahtar verildiyse onu stream ID alanına girin; URL'de zaten bir tane yoksa StreamHouse bunu streamid parametresi olarak ekler. URL'de mod belirtilmemişse StreamHouse caller olarak bağlanır; bu yüzden alıcınız listener olmalıdır.
Önceden kodlanmış videolardan oluşan döngüsel bir oynatma listesini alıcınıza günün her saati gönderin ya da SRT'yi aynı yayında YouTube, Twitch ve diğer RTMP hedeflerinin yanına ek yayın hakkı kullanmadan ekleyin. Yayın bulutta çalışır ve aksaklıklardan sonra otomatik olarak yeniden bağlanır. Başlangıç rehberi ilk yayınınızı adım adım anlatıyor.
Sık sorulan sorular
SRT hangi portu kullanır?
Tek bir standart port yoktur. Listener herhangi bir boş UDP portunu kullanabilir ve hangisi olduğunu alıcının operatörü size söyler. O port, gönderici ile listener arasındaki her güvenlik duvarında UDP trafiği için açık olmalıdır.
SRT göndericim caller mı, listener mı olmalı?
Genellikle gönderici arar, alıcı dinler; çünkü alıcıların sabit adresleri ve açık portları olur, göndericiler ise güvenlik duvarlarının arkasında bulunur. İki taraf zıt modları kullandığı ya da ikisi de rendezvous kullandığı sürece teknik olarak her iki düzen de çalışır.
SRT yayını için hangi gecikme değerini ayarlamalıyım?
Yaygın bir başlangıç noktası, gönderici ile alıcı arasındaki gidiş-dönüş süresinin birkaç katıdır; kayıplı veya uzun mesafeli bağlantılarda bu değer artırılır. Temkinli başlayın, düşen paketleri izleyin, sonra değeri kademeli olarak düşürün. Aracınızın milisaniye mi yoksa mikrosaniye mi beklediğini doğrulayın.
Aynı yayından hem SRT hem RTMP gönderebilir miyim?
Evet, aracınız birden fazla çıkışı destekliyorsa. Bir bulut hizmeti, bağlantınızdan ek yükleme gerektirmeden herkese açık platformlara RTMP ve özel bir alıcıya SRT'yi aynı anda iletebilir. Yine de her hedefin kendi doğru bilgilerine ihtiyacı vardır.


