Bu dokümanda, Google Meet konferans sistemleri tarafından akıllı kamera özelliklerini etkinleştirmek için kullanılan desteklenen USB Video Class Extension Unit (XU) API'leri açıklanmaktadır. Bu spesifikasyonu oluşturmanın amacı, bu özellikleri etkinleştirmeye yönelik uygulamaları etkilemek ve iş ortaklarımız için daha iyi eşzamansız ölçeklenebilirlik ve testler yapılmasını sağlamaktır.
İş ortaklarının bu spesifikasyona uygunluğunu doğrulamasına yardımcı olmak için bu test komut dosyası, uygulamanızı analiz edip raporlar.
Bu belgede yapılan son değişiklikler hakkında ayrıntılı bilgi için Sürüm notları'na gidin.
Little-endian kongresi
USB bir küçük endian standardıdır. Bu dokümanda:
- Çok baytlı sayılar büyük uç olarak görünür (ve küçük uçlara iletilir).
- Bayt dizileri, küçük uç bellek düzenindedir.
Örneğin, 0x12345678
, [0x78, 0x56, 0x34, 0x12]
ile aynıdır.
Uzantı birimi GUID'si
Bu Meet XU kontrol spesifikasyonunu destekleyen uzantı birimleri, bu GUID'yi kullanmalıdır.
Uzantı Birimi | GUID |
---|---|
Çevre Birimi Kontrol XU | {74D7E924-49C9-4A45-98A3-8A9F60061E83} |
Çevre birimi denetimi XU seçicileri
Bunlar, tanımlanmış çevre birimi denetimi XU seçicileridir.
Seçicileri kontrol et | Değer |
---|---|
GOOGXU_FRAME_STRATEGY |
0x01 |
GOOGXU_REFRAME |
0x02 |
GOOGXU_OCCUPANCY_COUNTING_TOGGLE |
0x03 |
GOOGXU_OCCUPANCY_COUNTING_READ |
0x04 |
GOOGXU_STATUS_INFO |
0x05 |
GOOGXU_STATUS_RESET |
0x06 |
GOOGXU_PRESETS |
0x07 |
GOOGXU_PAN_TILT_ABSOLUTE |
0x08 |
GOOGXU_PAN_TILT_RELATIVE |
0x09 |
Kontrol isteği türü
Kontrol isteği türleri UVC 1.5 Sınıfı Spesifikasyonu'nun 4. Bölüm: Sınıfa Özel İstekler bölümünde tanımlanmıştır.
İşlem | UVC kontrolü |
---|---|
GET |
GET_CUR , GET_MIN , GET_MAX , GET_RES , GET_LEN , GET_INFO , GET_DEF |
SET |
SET_CUR |
Kamera modları
Kamera modları, toplantı odasındaki kişileri çerçevelemek için kullanılır ve şunlardan tuple
tanesidir:
- Strateji (kamera görünümü)
- Yanlı olma (konuşmacı veya oda)
- Feed'ler (tek veya birden fazla akış)
Her boyut, aşağıdaki bölümlerde açıklanan değerleri alabilir.
Otomatik çerçeveleme stratejisi
Öne Çıkarın | Açıklama |
---|---|
Yok | Kamera, tüm akıllı çerçeveleme özelliklerini devre dışı bırakır ve istemcinin PTZ değerlerini serbestçe kontrol etmesine olanak tanır. Not: Bu kadraj stratejisine ayarlandığında, kamera mevcut kaydırma, yatırma ve yakınlaştırma konumunda kalır. |
Sürekli Çerçeveleme (CAZ) | Kamera, kadraj ayarındaki yanlılığa bağlı olarak odadaki kişileri sürekli olarak takip eder. Not: PTZ, bu modda devre dışıdır. |
Çerçeveleri Böl | Kamera gerektiği kadar video görüntülemesi oluşturur. Feed'leri otomatik çerçeveleme seçeneğine bağlı olarak, bu özellik tek bir akışta karolar halinde veya her görünüm için ayrı video akışları oluşturur. Not: PTZ, bu modda devre dışıdır. |
Dinamik Görünüm | Bir veya daha fazla kamera, odanın en iyi görünümünü sağlamaya çalışır. Birden fazla feed'in bir feed'de birleştirilip birleştirilmeyeceğine karar verebilir veya geçerli odanın "ilginç" bir görünümünü sunabilir. Bu görünümün amacı, odadaki katılımcıların görüşmede en adil şekilde görünümünü sağlamaktır. Notlar:
|
Otomatik çerçeveleme ağırlıklandırması
Öne Çıkarın | Açıklama |
---|---|
Riskli Sunucu (Konuşmacı İzleme) | Kamera, odada aktif olarak konuşan kişiyi en iyi şekilde çerçevelemeye çalışır. Bu senaryoda kamera, sunucuya yönelmelidir. Örneğin, yönetim kurulunda sunum yapan CEO. |
Ortak Çalışma (Oda İzleme) |
Kamera, odadaki tüm katılımcıları en iyi şekilde çerçevelemeye çalışır. Bu senaryoda kamera, her katılımcıya eşit davranmalıdır. Çoğu toplantıda bu strateji kullanılmalıdır. |
Feed'leri otomatik çerçeveleme
Öne Çıkarın | Açıklama |
---|---|
Tek Yayın | Kamera, ana cihaza tek bir video akışı gönderir. |
Çoklu Yayın (Devam Eden Çalışma) |
Kamera, yayını böler ve düzenleyene göndermek üzere birden çok video akışı oluşturur. Not: Bu özelliğin tam spesifikasyonu ve beklenen davranışı incelenmeyi beklemektedir ve bu belgenin sonraki düzeltmelerine kadar desteklenmeyecektir. |
Otomatik çerçeveleme modu bit eşlem değerleri
Boş bir bayt dizisiyle temsil edilen varsayılan None
durumu dışında, bayt dizisindeki her bit farklı bir kamera modunu temsil eder. Bu mod; Otomatik çerçeveleme stratejisi, Otomatik çerçeveleme sapmaları ve Otomatik çerçeveleme feed'lerinin belirli bir kombinasyonudur.
Bit dizini | CAZ | Bölünmüş Çerçeve | Dinamik | - |
---|---|---|---|---|
Hoparlör | 1. Gün - |
- - |
D5 D6 |
Tek Yayın Çoklu Yayın |
Oda | 2. Gün - |
D3 D4 |
7. Gün D8 |
Tek Yayın Çoklu Yayın |
Kare modları | Kare modu değeri (en az anlamlı bayt) |
---|---|
None |
0x00 |
CAZ, Speaker, Single-Stream |
0x01 |
CAZ, Room, Single-Stream |
0x02 |
Split-Frame, Room, Single-Stream |
0x04 |
Split-Frame, Room, Multi-Stream |
0x08 |
Dynamic, Speaker, Single-Stream |
0x10 |
Dynamic, Speaker, Multi-Stream |
0x20 |
Dynamic, Room, Single-Stream |
0x40 |
Dynamic, Room, Multi-Stream |
0x80 |
Kontrol: GOOGXU_FRAME_STRATEGY
Bu kontrol, Otomatik çerçeveleme modu bit eşlem değerleri bölümünde listelendiği gibi kameranın çerçeveleme modlarını almak veya ayarlamak için kullanılır. Her mod, ilgili bit eşleminde
bitler olarak gösterilir. GET_RES
komutu, özelliğin cihaz tarafından desteklenip desteklenmediğini belirtmek için sırasıyla sıfır (0) veya bir (1) değerine sahip 8 bayt uzunluğunda bir bit maskesi döndürür. Örneğin, bir kamera CAZ, Speaker, Single-Stream
, Split-Frame, Room, Single-Stream
ve
Dynamic, Room, Multi-Stream
modunu destekliyor ancak diğer modları desteklemiyorsa GET_RES
, 0x000000000000000085 değerini döndürmelidir (ör. 0b10000101
ve ardından yedi sıfır bayt).
SET_CUR
komutu, kameraya hangi TEK kamera modunun etkinleştirileceğini bildirmek üzere bit eşlemleri göndermek için kullanılır.
Kontrol seçici | 1 | |||
---|---|---|---|---|
İşlem | GET / SET |
|||
wLength |
8 | |||
Göreli konum | Alan | Boyut | Değer | Açıklama |
0 | bActiveMode |
8 | Bit eşlem | Aktif Kamera Modu'nu ayarlama veya döndürme |
Notlar:
|
Desteklenen istek türlerinin davranışı aşağıdaki gibidir:
Göreli konum | 0 | Açıklama |
---|---|---|
GET_CUR |
Aktif Çerçeveleme Kamera Modu'nu edinin | |
GET_MIN |
Kameraya bağlı | |
GET_MAX |
Kameraya bağlı | |
GET_RES |
Desteklenen kamera modlarının 8 bayt uzunluğunda bir bit maskesi döndürür | |
GET_LEN |
0 x 0.008 | Uzunluk |
GET_INFO |
0x0 Mr | Otomatik Güncelleme / Yazma / Okuma |
GET_DEF |
0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 |
Varsayılan değer |
SET_CUR |
Aktif Çerçeveleme Kamera modunu ayarlama |
Kontrol: GOOGXU_REFRAME
Bu denetim, OTAZ olarak da bilinen Tek Çekimli Çerçeveleme'yi tetiklemek için kullanılır. OTAZ tetiklendiğinde, kamera görünümü odanın en iyi görünümüne tutturulur. Sonrasında istemci, PTZ değerlerini kontrol etme yetkisini yeniden kazanır. Tek çekim çerçeveleme desteklenmiyorsa bu kontrolü kamera tanımlamamalıdır.
Kontrol seçici | 2 | |||
---|---|---|---|---|
İşlem | SET |
|||
wLength |
1 | |||
Göreli konum | Alan | Boyut | Değer | Açıklama |
0 | bReframe |
1 | Sayı | 0x01 Yürütme Yeniden Çerçeve İsteği |
Desteklenen istek türlerinin davranışı aşağıdaki gibidir:
Göreli konum | 0 | Açıklama |
---|---|---|
GET_MIN |
0x00 | |
GET_MAX |
0x01 | |
GET_RES |
0x01 | |
GET_LEN |
0x0001 | |
GET_INFO |
0x02 | Yalnızca Yazma |
GET_DEF |
0x00 | |
SET_CUR |
Tek Çekim Çerçeveleme isteği ayarla |
Doluluk sayımı
Doluluk sayma (OC), kameranın kırpılmış görünümüne rağmen toplantı odasındaki katılımcı sayısını tahmin etmek için kullanılan bir özelliktir.
Bu tabloda, OC kontrollerinin beklenen davranışı ve kamera video akışı ile kamera LED göstergesiyle etkileşimleri gösterilmektedir.
Doluluk Sayma: | ve kamera video akışı: | Kameranın LED göstergesi | GOOGXU_OCCUPANCY_COUNTING_TOGGLE GET_CUR şu olmalıdır: |
GOOGXU_OCCUPANCY_COUNTING_READ GET_CUR şu olmalıdır: |
---|---|---|---|---|
Açık | Canlı oynatılmıyor ve ses kapatılmadı | Açık | 0x01 |
Kameranın tam görüş alanındaki kişilerin sayısı. |
Açık | Canlı Yayın | Açık | 0x01 |
Kameranın tam görüş alanındaki kişilerin sayısı. |
Açık | Sesi kapatılır. | Kapalı | 0x01 |
Kapatıldı |
Kapatıldı | Canlı oynatılmıyor ve ses kapatılmadı | Kapalı | 0x00 |
Kapatıldı |
Kapatıldı | Canlı Yayın | Açık | 0x00 |
Kapatıldı |
Kapatıldı | Sesi kapatılır. | Kapalı | 0x00 |
Kapatıldı |
Kontrol: GOOGXU_OCCUPANCY_COUNTING_TOGGLE
Bu denetim, odadaki kişileri sayma özelliğini etkinleştirmek veya devre dışı bırakmak için kullanılır. Sıfır (0) değeri ayarlandığında bu özellik devre dışı bırakılır ve bir (1) bu özelliği etkinleştirir. Bu özellik desteklenmiyorsa kamera bu kontrolü tanımlamamalıdır.
Kontrol seçici | 3 | |||
---|---|---|---|---|
İşlem | GET / SET |
|||
wLength |
1 | |||
Göreli konum | Alan | Boyut | Değer | Açıklama |
0 | bOccupancy |
1 | Boole | Doluluk sayma işlevini ayarla 0x00 İşlevi kapat 0x01 İşlevi etkinleştir |
Desteklenen istek türlerinin davranışı aşağıdaki gibidir:
Göreli konum | 0 | Açıklama |
---|---|---|
GET_CUR |
Doluluk sayma özelliği etkinse iade | |
GET_MIN |
0x00 | |
GET_MAX |
0x01 | |
GET_RES |
0x01 | |
GET_LEN |
0x0001 | |
GET_INFO |
0x0 Mr | Otomatik Güncelleme / Yazma / Okuma |
GET_DEF |
0x00 | |
SET_CUR |
Doluluk sayma özelliğini etkinleştirme veya devre dışı bırakma |
Kontrol: GOOGXU_OCCUPANCY_COUNTING_READ
Bu kontrol, doluluk sayımı etkinleştirildiğinde kamera tarafından bildirilen bir odadaki katılımcı sayısını okumak için kullanılır. Bu özellik devre dışı bırakılırsa kameranın bu kontrolü devre dışı bırakması gerekir. Doluluk sayımı desteklenmiyorsa kamera bu kontrolü tanımlamamalıdır.
Kontrol seçici | 4 | |||
---|---|---|---|---|
İşlem | GET |
|||
wLength |
2 | |||
Göreli konum | Alan | Boyut | Değer | Açıklama |
0 | bNumPeople |
2 | Sayı | Ekranda tespit edilen kişi sayısıdır. (Salt Okunur) |
Desteklenen istek türlerinin davranışı aşağıdaki gibidir:
Göreli konum | 0 | Açıklama |
---|---|---|
GET_CUR |
Algılanan konukların iade sayısı | |
GET_MIN |
0x0000 | |
GET_MAX |
0x00FF | |
GET_RES |
0x0001 | |
GET_LEN |
0x0002 | |
GET_INFO |
0x09 | Otomatik Güncelleme / Okuma |
GET_DEF |
0x0000 |
Cihaz telemetrisi ve teşhisi
Bu kontrollerin amacı, Meet Donanım ile daha iyi hata ayıklama uygulamalarını teşvik etmektir ve genellikle kullanıcılara gösterilmez.
Kontrol: GOOGXU_STATUS_INFO
Bu kontrol, hata ayıklama amacıyla iş ortaklarıyla paylaşmak üzere ana makine kamerasından bilgi sorgulamak için kullanılır.
Kontrol seçici | 5 | |||
---|---|---|---|---|
İşlem | GET |
|||
wLength |
8 | |||
Göreli konum | Alan | Boyut | Değer | Açıklama |
0 | bNumCameras |
1 | Sayı | Ana cihaza takılı ek kameraların sayısı. |
1 | bIsMoving |
1 | Bit eşlem | Kamera boştayken 0, hareket halindeyken ise sıfır değildir. Tedarikçiler farklı eksenleri veya motorları farklı bitlere eşleyebilir. |
2 | Undef |
6 | Belirlenmedi | Gelecekte uzatılacak. |
Desteklenen istek türlerinin davranışı aşağıdaki gibidir:
Göreli konum | 0 | 1 | 2 | Açıklama |
---|---|---|---|---|
GET_MIN |
0x00 | 0x00 | 0x00 0x00 0x00 0x00 0x00 0x00 |
|
GET_MAX |
0xFF | 0xFF | 0xFF 0xFF 0xFF 0xFF 0xFF 0xFF |
|
GET_RES |
0x01 | 0x01 | 0x01 0x00 0x00 0x00 0x00 0x00 |
|
GET_LEN |
0x08 | 0x00 | 0 x 0.008 | |
GET_INFO |
0x09 | Otomatik Güncelleme / Okuma | ||
GET_DEF |
0x00 | 0x00 | 0x00 0x00 0x00 0x00 0x00 0x00 |
Kontrol: GOOGXU_STATUS_RESET
Bu denetim, kameraya sıfırlama isteği göndermek için kullanılır. Bir (1) değeri ayarlanırsa kameranın sıfırlanması istenir. Kamera, son sıfırlamadan sonra kamerayı yeniden başlatma isteği gelmediyse sıfır (0) değerini ve sıfırlanıyorsa bir (1) değerini döndürür. Sıfırlama işlemi, donanımın yeniden bağlanmasıyla aynı davranışı tetikler. Bu, USB-bağlantısını kesmeye zorlamanın hotspot'a benzetilmesinin faydalı olmadığı, kendi kendine çalışan cihazlarda faydalıdır.
Kontrol seçici | 6 | |||
---|---|---|---|---|
İşlem | GET / SET |
|||
wLength |
1 | |||
Göreli konum | Alan | Boyut | Değer | Açıklama |
0 | bResetRequest |
1 | Boole | Ana makineye ve bağlı kameralara sıfırlama isteği gönderin. Son sıfırlamadan sonra sıfırlama isteği gönderildiyse 0x01, aksi takdirde 0x00 değerini döndürür. |
Desteklenen istek türlerinin davranışı aşağıdaki gibidir:
Göreli konum | 0 | Açıklama |
---|---|---|
GET_MIN |
0x00 | |
GET_MAX |
0x01 | |
GET_RES |
0x01 | |
GET_LEN |
0x0001 | |
GET_INFO |
0x03 | Yazma / Okuma |
GET_DEF |
0x00 |
PTZ hazır ayarları
Kameranın görüş alanını önceden ayarlanmış konuma yapılandırmak ve geri yüklemek için kullanılır.
Kontrol: GOOGXU_PRESETS
Bu kontrol, kameranın kaydırma, yatırma ve yakınlaştırma (PTZ) değerlerini hazır ayar yapılandırmasına ayarlamak için kullanılır.
Preset Action
, komutun amaçlanan işlemini belirtmek için kullanılır. Bir (1) değeri ayarlamak, geçerli kaydırma, yatırma ve yakınlaştırma değerlerini, sağlanan bir hazır ayar diziniyle eşlemek için kullanılır. İki (2) değerini ayarlamak, kameranın kaydırma, yatırma ve yakınlaştırma özelliklerini, sağlanan dizin için önceden eşlenen değerlere veya varsayılan fabrika koordinatlarına (daha önce eşlenmemişse) geçirmelidir. Üç (3) değerine ayarlanırsa dizin, fabrika varsayılan koordinatlarına sıfırlanır.
Preset Index
, dizinle eşlenen PTZ koordinatlarını belirtmek için kullanılır.
Sıfırın (0) Preset index
değeri, ev koordinatlarıyla eşlenir ve GOOGXU_FRAME_STRATEGY
NONE
değerine ayarlandığında kameranın uyanık kalma sırasındaki varsayılan konumu olmalıdır.
Kontrol seçici | 7 | |||
---|---|---|---|---|
İşlem | SET |
|||
wLength |
2 | |||
Göreli konum | Alan | Boyut | Değer | Açıklama |
0 | bPresetAction |
1 | Sayı | 0x01: Hazır ayarı kaydet 0x02: Hazır ayarı geri yükle 0x03: Hazır ayarı varsayılana sıfırla. (Varsayılan geçerli bir hazır ayar koordinatı olmalıdır.) |
1 | bPresetIndex |
1 | Sayı | Etkin Hazır Ayar dizini. 0~N-1 Burada 0, varsayılan kamera başlangıç konumu, N-1 ise hazır ayar sayısı için tedarikçi tarafından tanımlanan bir sabit kabul edilir. |
Desteklenen istek türlerinin davranışı aşağıdaki gibidir:
Göreli konum | 0 | 1 | Açıklama |
---|---|---|---|
GET_MIN |
0x00 | 0x00 | |
GET_MAX |
0x03 | N-1 | N maks. hazır ayarı destekleniyor |
GET_RES |
0x01 | 0x01 | |
GET_LEN |
0x02 | 0x00 | 0x0002 |
GET_INFO |
0x02 | Yalnızca yazma | |
GET_DEF |
0x00 | 0x00 |
Kaydırma ve yatırma yardımcı haritalama
Bazı kameraların, mekanik kamera motorları gibi özel bileşenleri vardır. Bu bileşenler, istenen şekilde kaydırma ve yatırma için standart V4L2 kontrolleri üzerinde XU komutlarının eşleştirilmesini gerektirir.
Bu denetimler, UVC teknik belgelerindeki yatay kaydırma ve yatırmanın mutlak ve göreli kontrollerini taklit ederek ana cihazların bu kontrolleri doğru şekilde eşlemesi için standart bir yol sunar.
Kontrol: GOOGXU_PAN_TILT_ABSOLUTE
Kaydırma ve yatırma yardımcı haritalama denetimleri Bölüm 4: Sınıfa Özel Talepler Bölüm 4.2.2.1.14 UVC 1.5 Sınıfı Spesifikasyonu'nun Kaydırma (Mutlak) Kontrolü'nde tanımlanmıştır.
Kontrol seçici | 8 | |||
---|---|---|---|---|
İşlem | GET/SET |
|||
wLength |
8 | |||
Göreli konum | Alan | Boyut | Değer | Açıklama |
0 | dwPanAbsolute |
4 | İmzalı Numara | Adreslendirilen Kaydırma (Mutlak) Denetimi'nin özelliği için ayar. |
4 | dwTiltAbsolute |
4 | İmzalı Numara | Adresli Yatırma (Mutlak) Kontrolü özelliği için ayar. |
Desteklenen istek türlerinin davranışı aşağıdaki gibidir:
Göreli konum | 0 | 4 | Açıklama |
---|---|---|---|
GET_MIN |
Kameraya bağlı | ||
GET_MAX |
Kameraya bağlı | ||
GET_RES |
Kameraya bağlı | ||
GET_LEN |
0 x 0.008 | ||
GET_INFO |
0x0 Mr | Otomatik Güncelleme / Yazma / Okuma | |
GET_DEF |
0x00000000 | 0x00000000 |
Kontrol: GOOGXU_PAN_TILT_RELATIVE
Kaydırma ve yatırma yardımcı haritalama kontrolleri UVC 1.5 Sınıfı Spesifikasyonu'nun 4. Bölüm: Sınıfa Özel Talepler Bölüm 4.2.2.1.15 Kaydırma (Göreli) Kontrolü'nde tanımlanmıştır.
Kontrol seçici | 9 | |||
---|---|---|---|---|
İşlem | GET/SET |
|||
wLength |
4 | |||
Göreli konum | Alan | Boyut | Değer | Açıklama |
0 | bPanRelative |
1 | İmzalı Numara | Adresli Kaydırma (Göreli) Denetimi özelliğinin ayarı: 0: Durdur 1: Saat yönüne 0xFF: Saat yönünün tersine gidiliyor |
1 | bPanSpeed |
1 | Sayı | Kaydırma hareketinin hızı. |
2 | bTiltRelative |
1 | İmzalı Numara | Adresli Yatırma (Göreli) Denetimi özelliğinin ayarı: 0: Dur 1: Görüntüleme düzlemini yukarı doğrult 0xFF: Görüntüleme düzlemini aşağı doğrult |
3 | bTiltSpeed |
1 | Sayı | Eğme hareketinin hızı. |
Desteklenen istek türlerinin davranışı aşağıdaki gibidir:>
Göreli konum | 0 | 1 | 2 | 3 | Açıklama |
---|---|---|---|---|---|
GET_MIN |
Kameraya bağlı | ||||
GET_MAX |
Kameraya bağlı | ||||
GET_RES |
Kameraya bağlı | ||||
GET_LEN |
0x04 | 0x00 | 0x0004 | ||
GET_INFO |
0x0 Mr | Otomatik Güncelleme / Yazma / Okuma | |||
GET_DEF |
0x00 | 0x00 | 0x00 | 0x00 |
İlgili konular
- Linux USB Video Class (UVC) sürücüsü
- Video Sınıfı v1.5 doküman grubu
- USB 2.0 teknik özellikleri
- Google Meet Donanım Yardım Merkezi
- Google Workspace Yönetici Yardım Merkezi'nin Google Meet Donanım bölümü
- Google Meet Donanım USB Video Sınıfı Uzantı Birimi API'leri test komut dosyası
Sürüm notları
Bu sürüm notları, bu belgenin her bir revizyonunda yapılan iyileştirmeleri ve yeni özellikleri yansıtmaktadır.
15 Kasım 2023
Geçerli çerçeveleme modlarını kontrol etmek ve yorumlamak için test komut dosyası güncellendi. Daha net bayt gösterimleri.
21 Temmuz 2023
İş ortaklarının, uygulamaları bu spesifikasyona uygunluk açısından doğrulaması için test komut dosyası eklendi.
25 Mayıs 2023
Hazır ayar sayısıyla ilgili GOOGXU_PRESETS not düzeltildi. N-1 değil, N olmalıdır.
17 Nisan 2023
İlk sürüm.