Çerçeve kavramları

MediaPipe Çerçevesi'ni kullanmadan önce aşağıdaki kavramlar hakkında bilgi edinin.

Temel bilgiler

Paket

Temel veri akışı birimi. Paket, sayısal bir zaman damgası ve değişmez yüke paylaşılan işaretçiden oluşur. Yük herhangi bir C++ türünde olabilir ve yükün türü, paketin türü olarak da adlandırılır. Paketler değer sınıflarıdır ve ucuz bir şekilde kopyalanabilirler. Her kopya, referans sayma semantiği ile birlikte yükün sahipliğini paylaşır. Her kopyanın kendi zaman damgası vardır. Ayrıca bkz. Packet.

Grafik

MediaPipe işleme, düğümler arasındaki paket akışı yollarını tanımlayan bir grafik içinde gerçekleşir. Bir grafikte istenen sayıda giriş ve çıkış olabilir. Veri akışı ise dallara ayrılabilir ve birleştirilebilir. Genellikle veriler ileriye doğru aksa da geriye doğru döngüler olması mümkündür. Ayrıntılı bilgi için Grafikler bölümüne bakın.

Düğümler

Düğümler paket üretir ve/veya tüketir ve grafiğin büyük kısmının gerçekleştiği yerlerdir. Geçmişten dolayı "hesap makineleri" olarak da bilinirler. Her düğümün arayüzü, bir etiket ve/veya dizin tarafından tanımlanan çeşitli giriş ve çıkış ports tanımlar. Ayrıntılar için Hesaplayıcılar bölümüne bakın.

dinleme

Akış, bir dizi paket taşıyan ve zaman damgalarının tekdüze artış göstermesi gereken iki düğüm arasındaki bağlantıdır.

Yan paketler

Düğümler arasındaki yan paket bağlantısı tek bir paket taşır (zaman damgası belirtilmemiş). Sabit kalacak bazı verileri sağlamak için kullanılabilirken akış, zaman içinde değişen bir veri akışını temsil eder.

Paket Bağlantı Noktaları

Bağlantı noktasının ilişkili bir türü vardır ve bağlantı noktasından geçen paketler o türde olmalıdır. Bir çıkış akışı bağlantı noktası, aynı türden istediğiniz sayıda giriş akışı bağlantı noktasına bağlanabilir. Her tüketici, çıkış paketlerinin ayrı bir kopyasını alır ve kendi sırası olduğundan bunları kendi hızında tüketebilir. Benzer şekilde, bir yan paket çıkış bağlantı noktası, istediğiniz sayıda yan paket giriş bağlantı noktasına bağlanabilir.

Bağlantı noktası gerekli olabilir. Diğer bir deyişle, grafiğin geçerli veya isteğe bağlı olması için bağlantı yapılması gerekir. Diğer bir deyişle, bağlı olmayabilir.

Giriş ve çıkış

Veri akışı, giriş akışı bulunmayan ve paketleri spontane oluşturan (ör. bir dosyadan okuyarak) kaynak düğümler veya bir uygulamanın paketleri grafiğe beslemesine olanak tanıyan grafik giriş akışlarından kaynaklanabilir.

Benzer şekilde, verileri alan ve bunları çeşitli hedeflere (ör. dosya, bellek arabelleği vb.) yazan havuz düğümleri vardır ve bir uygulama, geri çağırmaları kullanarak grafikten çıkış alabilir.

Çalışma zamanı davranışı

Grafik ömrü

Bir grafik başlatıldıktan sonra verileri işlemeye başlatılabilir ve her akış kapatılana veya grafik iptal edilene kadar paket akışı işleyebilir. Ardından grafik kaldırılabilir veya tekrar başlatılabilir.

Düğüm ömrü

Çerçevenin bir düğümde çağıracağı üç temel kullanım ömrü yöntemi vardır:

  • Açık: Diğer yöntemlerden önce bir kez çağrılır. Çağrılduğunda, düğümün ihtiyaç duyduğu tüm giriş tarafı paketleri kullanılabilir.
  • İşlem: Düğümün giriş politikasına göre yeni bir giriş grubu mevcut olduğunda birden çok kez çağrılır.
  • Kapatma: Sonda bir kez çağrılır.

Buna ek olarak, her hesap makinesinde kurucu ve yıkıcı tanımlanabilir. Bunlar işlenen verilerden bağımsız kaynaklar oluşturmak ve bunların yerini belirlemek için kullanışlıdır.

Giriş politikaları

Varsayılan giriş politikası, paketlerin zaman damgasına göre belirleyici bir şekilde harmanlanmasıdır. Bir düğüm, aynı zaman damgası için tüm girişleri aynı anda İşleme yöntemi çağrısında alır ve ardışık giriş kümeleri kendi zaman damgası sırasına göre alınır. Bu, bazı paketlerin işlenmesinin, tüm giriş akışlarında aynı zaman damgasına sahip bir paket alınana veya o zaman damgasına sahip bir paketin, kendisini almayan akışlara ulaşmayacağı garanti edilene kadar geciktirilmesini gerektirebilir.

InputStreamHandler olarak bilinen ayrı bir bileşen türü kullanılarak uygulanan başka politikalar da mevcuttur.

Daha fazla bilgi için Senkronizasyon sayfasına göz atın.

Gerçek zamanlı akışlar

MediaPipe hesaplayıcı grafikleri genellikle etkileşimli uygulamalar için video veya ses çerçevesi akışlarını işlemekte kullanılır. Normalde her Hesap Makinesi, belirli bir zaman damgası için tüm giriş paketleri kullanılabilir hale gelir gelmez çalışır. Gerçek zamanlı grafiklerde kullanılan hesaplayıcıların, aşağı akış hesaplayıcılarının hemen planlanabilmesi için giriş zaman damgası sınırlarına göre çıkış zaman damgası sınırları tanımlaması gerekir. Ayrıntılar için Gerçek Zamanlı Akışlar bölümüne bakın.