New upstream version 26.0.0+dfsg1
This commit is contained in:
parent
8e020cdacb
commit
240080891f
837 changed files with 41275 additions and 9196 deletions
|
|
@ -47,6 +47,8 @@ elseif("${CMAKE_SYSTEM_NAME}" MATCHES "FreeBSD")
|
|||
add_subdirectory(linux-v4l2)
|
||||
add_subdirectory(linux-jack)
|
||||
add_subdirectory(linux-alsa)
|
||||
add_subdirectory(vlc-video)
|
||||
add_subdirectory(oss-audio)
|
||||
endif()
|
||||
|
||||
option(BUILD_BROWSER "Build browser plugin" OFF)
|
||||
|
|
@ -62,12 +64,10 @@ else()
|
|||
set(BROWSER_AVAILABLE_INTERNAL OFF CACHE BOOL "Internal global cmake variable" FORCE)
|
||||
endif()
|
||||
|
||||
if(WIN32 OR APPLE)
|
||||
if (EXISTS "${CMAKE_CURRENT_SOURCE_DIR}/obs-vst/CMakeLists.txt")
|
||||
add_subdirectory(obs-vst)
|
||||
else()
|
||||
message(STATUS "obs-vst submodule not found! Please fetch/update submodules. obs-vst plugin disabled.")
|
||||
endif()
|
||||
if (EXISTS "${CMAKE_CURRENT_SOURCE_DIR}/obs-vst/CMakeLists.txt")
|
||||
add_subdirectory(obs-vst)
|
||||
else()
|
||||
message(STATUS "obs-vst submodule not found! Please fetch/update submodules. obs-vst plugin disabled.")
|
||||
endif()
|
||||
|
||||
add_subdirectory(image-source)
|
||||
|
|
|
|||
|
|
@ -37,5 +37,6 @@ add_library(coreaudio-encoder MODULE
|
|||
target_link_libraries(coreaudio-encoder
|
||||
libobs
|
||||
${coreaudio-encoder_LIBS})
|
||||
set_target_properties(coreaudio-encoder PROPERTIES FOLDER "plugins")
|
||||
|
||||
install_obs_plugin_with_data(coreaudio-encoder data)
|
||||
|
|
|
|||
3
plugins/coreaudio-encoder/data/locale/ba-RU.ini
Normal file
3
plugins/coreaudio-encoder/data/locale/ba-RU.ini
Normal file
|
|
@ -0,0 +1,3 @@
|
|||
Bitrate="Битрейт"
|
||||
AllowHEAAC="HE-AAC рөхсәт итеү"
|
||||
|
||||
|
|
@ -1,6 +1,6 @@
|
|||
CoreAudioAAC="CoreAudio‐AAC‐Kodierer"
|
||||
CoreAudioAAC="CoreAudio‐AAC‐Encoder"
|
||||
Bitrate="Bitrate"
|
||||
AllowHEAAC="HE‐AAC erlauben"
|
||||
OutputSamplerate="Ausgabe‐Sample‐Rate"
|
||||
UseInputSampleRate="Eingabe‐Sample‐Rate (OBS) verwenden (Listet möglicherweise nicht unterstützte Bitraten auf.)"
|
||||
UseInputSampleRate="Eingabe‐Sample‐Rate (OBS) verwenden (listet möglicherweise nicht unterstützte Bitraten auf)"
|
||||
|
||||
|
|
|
|||
6
plugins/coreaudio-encoder/data/locale/en-GB.ini
Normal file
6
plugins/coreaudio-encoder/data/locale/en-GB.ini
Normal file
|
|
@ -0,0 +1,6 @@
|
|||
CoreAudioAAC="CoreAudio AAC encoder"
|
||||
Bitrate="Bitrate"
|
||||
AllowHEAAC="Allow HE-AAC"
|
||||
OutputSamplerate="Output Sample Rate"
|
||||
UseInputSampleRate="Use Input (OBS) Sample Rate (may list unsupported bitrates)"
|
||||
|
||||
|
|
@ -2,5 +2,4 @@ CoreAudioAAC="هسته صدا کدگذاری AAC"
|
|||
Bitrate="نرخ بیت"
|
||||
AllowHEAAC="اجازه AAC با راندمان بالا"
|
||||
OutputSamplerate="نرخ نمونه خروجی"
|
||||
UseInputSampleRate="استفاده از ورودی (OBS) نرخ نمونه (ممکن است بیت ریت های پشتیبانی نشده را لیست کند)ممکن است بیت ریت های پشتیبانی نشده را لیست کند"
|
||||
|
||||
|
|
|
|||
|
|
@ -1,3 +1,5 @@
|
|||
CoreAudioAAC="מקודד AAC של CoreAudio"
|
||||
Bitrate="קצב ביטים"
|
||||
AllowHEAAC="אפשר HE-ACC"
|
||||
OutputSamplerate="קצב דגימת שמע"
|
||||
|
||||
|
|
|
|||
6
plugins/coreaudio-encoder/data/locale/id-ID.ini
Normal file
6
plugins/coreaudio-encoder/data/locale/id-ID.ini
Normal file
|
|
@ -0,0 +1,6 @@
|
|||
CoreAudioAAC="Enkoder AAC CoreAudio"
|
||||
Bitrate="Bitrate"
|
||||
AllowHEAAC="Izinkan HE-AAC"
|
||||
OutputSamplerate="Sample Rate Output"
|
||||
UseInputSampleRate="Gunakan Sample Rate Input (OBS) (dapat mencantumkan bitrate yang tidak didukung)"
|
||||
|
||||
|
|
@ -1,6 +1,6 @@
|
|||
CoreAudioAAC="Codificator AAC CoreAudio"
|
||||
Bitrate="Rată de biți"
|
||||
AllowHEAAC="Permite HE-AAC"
|
||||
OutputSamplerate="Rată de eșantionare a ieșirii"
|
||||
UseInputSampleRate="Folosește rata de eșantionare (OBS) ca intrare (poate lista rate de biți neacceptate)"
|
||||
OutputSamplerate="Rată de eșantionare a outpului"
|
||||
UseInputSampleRate="Folosește rata de eșantionare a intrării OBS (poate lista rate de biți nesuportate)"
|
||||
|
||||
|
|
|
|||
|
|
@ -1,4 +1,4 @@
|
|||
CoreAudioAAC="CoreAudio AAC енкодер"
|
||||
CoreAudioAAC="Кодувальник CoreAudio AAC"
|
||||
Bitrate="Бітрейт"
|
||||
AllowHEAAC="Дозволити HE-AAC"
|
||||
OutputSamplerate="Частота дискретизації виводу"
|
||||
|
|
|
|||
|
|
@ -597,14 +597,34 @@ static void *aac_create(obs_data_t *settings, obs_encoder_t *encoder)
|
|||
|
||||
/*
|
||||
* Fix channel map differences between CoreAudio AAC, FFmpeg, Wav
|
||||
* New channel mappings below assume 2.1, 4.1, 5.1, 7.1 resp.
|
||||
* New channel mappings below assume 2.1, 4.0, 4.1, 5.1, 7.1 resp.
|
||||
*/
|
||||
|
||||
if (ca->channels == 3) {
|
||||
SInt32 channelMap3[3] = {2, 0, 1};
|
||||
AudioConverterSetProperty(ca->converter,
|
||||
kAudioConverterChannelMap,
|
||||
sizeof(channelMap3), channelMap3);
|
||||
|
||||
} else if (ca->channels == 4) {
|
||||
/*
|
||||
* For four channels coreaudio encoder has default channel "quad"
|
||||
* instead of 4.0. So explicitly set channel layout to
|
||||
* kAudioChannelLayoutTag_MPEG_4_0_B = (116L << 16) | 4.
|
||||
*/
|
||||
AudioChannelLayout inAcl = {0};
|
||||
inAcl.mChannelLayoutTag = (116L << 16) | 4;
|
||||
AudioConverterSetProperty(ca->converter,
|
||||
kAudioConverterInputChannelLayout,
|
||||
sizeof(inAcl), &inAcl);
|
||||
AudioConverterSetProperty(ca->converter,
|
||||
kAudioConverterOutputChannelLayout,
|
||||
sizeof(inAcl), &inAcl);
|
||||
SInt32 channelMap4[4] = {2, 0, 1, 3};
|
||||
AudioConverterSetProperty(ca->converter,
|
||||
kAudioConverterChannelMap,
|
||||
sizeof(channelMap4), channelMap4);
|
||||
|
||||
} else if (ca->channels == 5) {
|
||||
SInt32 channelMap5[5] = {2, 0, 1, 3, 4};
|
||||
AudioConverterSetProperty(ca->converter,
|
||||
|
|
|
|||
|
|
@ -61,6 +61,24 @@ struct AudioStreamPacketDescription {
|
|||
};
|
||||
typedef struct AudioStreamPacketDescription AudioStreamPacketDescription;
|
||||
|
||||
typedef UInt32 AudioChannelLabel;
|
||||
typedef UInt32 AudioChannelLayoutTag;
|
||||
|
||||
struct AudioChannelDescription {
|
||||
AudioChannelLabel mChannelLabel;
|
||||
UInt32 mChannelFlags;
|
||||
float mCoordinates[3];
|
||||
};
|
||||
typedef struct AudioChannelDescription AudioChannelDescription;
|
||||
|
||||
struct AudioChannelLayout {
|
||||
AudioChannelLayoutTag mChannelLayoutTag;
|
||||
UInt32 mChannelBitmap;
|
||||
UInt32 mNumberChannelDescriptions;
|
||||
AudioChannelDescription mChannelDescriptions[kVariableLengthArray];
|
||||
};
|
||||
typedef struct AudioChannelLayout AudioChannelLayout;
|
||||
|
||||
typedef OSStatus (*AudioConverterComplexInputDataProc)(
|
||||
AudioConverterRef inAudioConverter, UInt32 *ioNumberDataPackets,
|
||||
AudioBufferList *ioData,
|
||||
|
|
|
|||
|
|
@ -15,4 +15,8 @@ bool DecklinkBase::Activate(DeckLinkDevice *, long long)
|
|||
return false;
|
||||
}
|
||||
|
||||
void DecklinkBase::Deactivate() {}
|
||||
bool DecklinkBase::Activate(DeckLinkDevice *, long long, BMDVideoConnection,
|
||||
BMDAudioConnection)
|
||||
{
|
||||
return false;
|
||||
}
|
||||
|
|
|
|||
|
|
@ -27,7 +27,10 @@ protected:
|
|||
|
||||
public:
|
||||
virtual bool Activate(DeckLinkDevice *device, long long modeId);
|
||||
virtual void Deactivate();
|
||||
virtual bool Activate(DeckLinkDevice *device, long long modeId,
|
||||
BMDVideoConnection bmdVideoConnection,
|
||||
BMDAudioConnection bmdAudioConnection);
|
||||
virtual void Deactivate() = 0;
|
||||
|
||||
DeckLinkDevice *GetDevice() const;
|
||||
};
|
||||
|
|
|
|||
|
|
@ -41,8 +41,8 @@ public:
|
|||
|
||||
bool Activate(DeckLinkDevice *device, long long modeId,
|
||||
BMDVideoConnection bmdVideoConnection,
|
||||
BMDAudioConnection bmdAudioConnection);
|
||||
void Deactivate();
|
||||
BMDAudioConnection bmdAudioConnection) override;
|
||||
void Deactivate() override;
|
||||
bool Capturing();
|
||||
|
||||
bool buffering = false;
|
||||
|
|
|
|||
|
|
@ -3,7 +3,9 @@ Device="الجهاز"
|
|||
Mode="الوضع"
|
||||
Buffering="استخدام التخزين المؤقت"
|
||||
PixelFormat="صيغة البكسل"
|
||||
ColorSpace="مساحة الألوان"
|
||||
ColorSpace.Default="الافتراضي"
|
||||
ColorRange="نظاق اللون"
|
||||
ColorRange.Default="الافتراضي"
|
||||
ColorRange.Partial="جزئي"
|
||||
ColorRange.Full="كامل"
|
||||
|
|
@ -17,6 +19,8 @@ ChannelFormat.5_1ch="5.1ch"
|
|||
ChannelFormat.7_1ch="7.1ch"
|
||||
DeactivateWhenNotShowing="التعطيل عندما لا يكون ظاهراً"
|
||||
AutoStart="البدء تلقائياً مع التشغيل"
|
||||
SwapFC-LFE="التبديل بين الـ FC و الـ LFE"
|
||||
SwapFC-LFE.Tooltip="التبديل بين قناة الوسط الأمامية و الصب ووفر"
|
||||
VideoConnection="مدخل الفيديو"
|
||||
AudioConnection="مدخل الصوت"
|
||||
|
||||
|
|
|
|||
2
plugins/decklink/data/locale/az-AZ.ini
Normal file
2
plugins/decklink/data/locale/az-AZ.ini
Normal file
|
|
@ -0,0 +1,2 @@
|
|||
ChannelFormat.None="Heç biri"
|
||||
|
||||
6
plugins/decklink/data/locale/ba-RU.ini
Normal file
6
plugins/decklink/data/locale/ba-RU.ini
Normal file
|
|
@ -0,0 +1,6 @@
|
|||
Device="Яйланма"
|
||||
Mode="Үтәмлек"
|
||||
ColorSpace.Default="Ғәҙәти"
|
||||
ColorRange.Full="Тулы"
|
||||
ChannelFormat.None="Юҡ"
|
||||
|
||||
|
|
@ -1,5 +1,5 @@
|
|||
BlackmagicDevice="Blackmagic যন্ত্র"
|
||||
Device="ডিভাইস"
|
||||
Device="যন্ত্র"
|
||||
PixelFormat="পিক্সেল বিন্যাস"
|
||||
ColorRange.Partial="আংশিক"
|
||||
ColorRange.Full="পূর্ণ"
|
||||
|
|
|
|||
26
plugins/decklink/data/locale/en-GB.ini
Normal file
26
plugins/decklink/data/locale/en-GB.ini
Normal file
|
|
@ -0,0 +1,26 @@
|
|||
BlackmagicDevice="Blackmagic Device"
|
||||
Device="Device"
|
||||
Mode="Mode"
|
||||
Buffering="Use Buffering"
|
||||
PixelFormat="Pixel Format"
|
||||
ColorSpace="Colour Space"
|
||||
ColorSpace.Default="Default"
|
||||
ColorRange="Colour Range"
|
||||
ColorRange.Default="Default"
|
||||
ColorRange.Partial="Partial"
|
||||
ColorRange.Full="Full"
|
||||
ChannelFormat="Channel"
|
||||
ChannelFormat.None="None"
|
||||
ChannelFormat.2_0ch="2ch"
|
||||
ChannelFormat.2_1ch="2.1ch"
|
||||
ChannelFormat.4_0ch="4ch"
|
||||
ChannelFormat.4_1ch="4.1ch"
|
||||
ChannelFormat.5_1ch="5.1ch"
|
||||
ChannelFormat.7_1ch="7.1ch"
|
||||
DeactivateWhenNotShowing="Deactivate when not showing"
|
||||
AutoStart="Auto start on launch"
|
||||
SwapFC-LFE="Swap FC and LFE"
|
||||
SwapFC-LFE.Tooltip="Swap Front Centre Channel and LFE Channel"
|
||||
VideoConnection="Video Connection"
|
||||
AudioConnection="Audio Connection"
|
||||
|
||||
|
|
@ -3,7 +3,9 @@ Device="Kagamitan"
|
|||
Mode="Mode"
|
||||
Buffering="Gamitin ang Buffering"
|
||||
PixelFormat="Format ng Pixel"
|
||||
ColorSpace="Espasyo ng Kulay"
|
||||
ColorSpace.Default="Pangunahin"
|
||||
ColorRange="Saklaw ng Kulay"
|
||||
ColorRange.Default="Pangunahin"
|
||||
ColorRange.Partial="Bahagyang"
|
||||
ColorRange.Full="Buong"
|
||||
|
|
@ -15,4 +17,10 @@ ChannelFormat.4_0ch="4ch"
|
|||
ChannelFormat.4_1ch="4.1ch"
|
||||
ChannelFormat.5_1ch="5.1ch"
|
||||
ChannelFormat.7_1ch="7.1ch"
|
||||
DeactivateWhenNotShowing="I-Deactivate kapag di nagpapakita"
|
||||
AutoStart="Auto start pag nag-launch"
|
||||
SwapFC-LFE="I-swap ang FC at LFE"
|
||||
SwapFC-LFE.Tooltip="I-swap ang Front Center Channel at LFE Channel"
|
||||
VideoConnection="Koneksyon ng Video"
|
||||
AudioConnection="Koneksyon ng Audio"
|
||||
|
||||
|
|
|
|||
|
|
@ -3,4 +3,14 @@ Device="התקן"
|
|||
Mode="מצב"
|
||||
Buffering="השתמש באוגר"
|
||||
PixelFormat="תבנית פיקסלים"
|
||||
ColorSpace="מרחב צבע"
|
||||
ColorSpace.Default="ברירת מחדל"
|
||||
ColorRange="טווח צבעים"
|
||||
ColorRange.Default="ברירת מחדל"
|
||||
ColorRange.Partial="חלקי"
|
||||
ColorRange.Full="מלא"
|
||||
ChannelFormat="ערוץ"
|
||||
ChannelFormat.None="ללא"
|
||||
VideoConnection="חיבור וידאו"
|
||||
AudioConnection="חיבור שמע"
|
||||
|
||||
|
|
|
|||
|
|
@ -1,6 +1,17 @@
|
|||
BlackmagicDevice="Blackmagic uređaj"
|
||||
Device="Uređaj"
|
||||
Mode="Režim"
|
||||
Mode="Format"
|
||||
Buffering="Koristi baferovanje"
|
||||
PixelFormat="Piksel format"
|
||||
PixelFormat="Format piksela"
|
||||
ColorSpace="Prostor boja"
|
||||
ColorRange.Partial="Djelomično"
|
||||
ColorRange.Full="Potpuno"
|
||||
ChannelFormat.2_0ch="Stereo"
|
||||
ChannelFormat.2_1ch="2.1-kanalni"
|
||||
ChannelFormat.4_0ch="4-kanalni"
|
||||
ChannelFormat.4_1ch="4.1-kanalni"
|
||||
ChannelFormat.5_1ch="5.1-kanalni"
|
||||
ChannelFormat.7_1ch="7.1-kanalni"
|
||||
DeactivateWhenNotShowing="Deaktiviraj kada se ne prikazuje"
|
||||
AutoStart="Automatski započni pri pokretanju"
|
||||
|
||||
|
|
|
|||
26
plugins/decklink/data/locale/id-ID.ini
Normal file
26
plugins/decklink/data/locale/id-ID.ini
Normal file
|
|
@ -0,0 +1,26 @@
|
|||
BlackmagicDevice="Perangkat Blackmagic"
|
||||
Device="Perangkat"
|
||||
Mode="Mode"
|
||||
Buffering="Gunakan Buffering"
|
||||
PixelFormat="Format Piksel"
|
||||
ColorSpace="Ruang Warna"
|
||||
ColorSpace.Default="Default"
|
||||
ColorRange="Rentang Warna"
|
||||
ColorRange.Default="Default"
|
||||
ColorRange.Partial="Sebagian"
|
||||
ColorRange.Full="Penuh"
|
||||
ChannelFormat="Saluran"
|
||||
ChannelFormat.None="Tidak ada"
|
||||
ChannelFormat.2_0ch="Stereo"
|
||||
ChannelFormat.2_1ch="2.1"
|
||||
ChannelFormat.4_0ch="4.0"
|
||||
ChannelFormat.4_1ch="4.1"
|
||||
ChannelFormat.5_1ch="5.1"
|
||||
ChannelFormat.7_1ch="7.1"
|
||||
DeactivateWhenNotShowing="Nonaktifkan saat tidak tampil"
|
||||
AutoStart="Jalankan otomatis saat memulai"
|
||||
SwapFC-LFE="Tukar FC dan LFE"
|
||||
SwapFC-LFE.Tooltip="Tukar Saluran Tengah Depan dan Saluran LFE (subwoofer)"
|
||||
VideoConnection="Koneksi Video"
|
||||
AudioConnection="Koneksi Audio"
|
||||
|
||||
5
plugins/decklink/data/locale/lt-LT.ini
Normal file
5
plugins/decklink/data/locale/lt-LT.ini
Normal file
|
|
@ -0,0 +1,5 @@
|
|||
BlackmagicDevice="Blackmgaic įrenginys"
|
||||
ChannelFormat.2_0ch="2 kanalas"
|
||||
ChannelFormat.2_1ch="2.1 kanalas"
|
||||
ChannelFormat.5_1ch="5.1 kanalas"
|
||||
|
||||
|
|
@ -3,7 +3,9 @@ Device="Dispositivo"
|
|||
Mode="Modo"
|
||||
Buffering="Utilizar Buffering"
|
||||
PixelFormat="Formato de pixel"
|
||||
ColorSpace="Espaço de Cor"
|
||||
ColorSpace.Default="Predefinido"
|
||||
ColorRange="Intervalo de cores"
|
||||
ColorRange.Default="Predefinido"
|
||||
ColorRange.Partial="Parcial"
|
||||
ColorRange.Full="Completo"
|
||||
|
|
@ -17,6 +19,8 @@ ChannelFormat.5_1ch="5.1ch"
|
|||
ChannelFormat.7_1ch="7.1ch"
|
||||
DeactivateWhenNotShowing="Desativar quando não visível"
|
||||
AutoStart="Iniciar automaticamente ao arrancar"
|
||||
SwapFC-LFE="Trocar FC e LFE"
|
||||
SwapFC-LFE.Tooltip="Trocar canal de centro frontal e canal LFE"
|
||||
VideoConnection="Conexão de Vídeo"
|
||||
AudioConnection="Conexão de Audio"
|
||||
|
||||
|
|
|
|||
|
|
@ -1,7 +1,7 @@
|
|||
BlackmagicDevice="Dispozitiv Blackmagic"
|
||||
Device="Dispozitiv"
|
||||
Mode="Mod"
|
||||
Buffering="Folosește zona tampon"
|
||||
Buffering="Folosește buffering"
|
||||
PixelFormat="Format pentru pixeli"
|
||||
ColorSpace="Spațiu de culori"
|
||||
ColorSpace.Default="Implicit"
|
||||
|
|
@ -9,6 +9,18 @@ ColorRange="Gamă de culori"
|
|||
ColorRange.Default="Implicit"
|
||||
ColorRange.Partial="Parțială"
|
||||
ColorRange.Full="Completă"
|
||||
ChannelFormat="Canal"
|
||||
ChannelFormat.None="Niciuna"
|
||||
ChannelFormat.2_0ch="2ch"
|
||||
ChannelFormat.2_1ch="2.1ch"
|
||||
ChannelFormat.4_0ch="4ch"
|
||||
ChannelFormat.4_1ch="4.1ch"
|
||||
ChannelFormat.5_1ch="5.1ch"
|
||||
ChannelFormat.7_1ch="7.1ch"
|
||||
DeactivateWhenNotShowing="Dezactivează când nu se afișează"
|
||||
AutoStart="Pornire automată la lansare"
|
||||
SwapFC-LFE="Schimbă FC și LFE"
|
||||
SwapFC-LFE.Tooltip="Schimbă canalul din Front Center și canalul LFE"
|
||||
VideoConnection="Conexiune video"
|
||||
AudioConnection="Conexiune audio"
|
||||
|
||||
|
|
|
|||
|
|
@ -18,7 +18,7 @@ ChannelFormat.4_1ch="4.1 kanaler"
|
|||
ChannelFormat.5_1ch="5.1 kanaler"
|
||||
ChannelFormat.7_1ch="7.1 kanaler"
|
||||
DeactivateWhenNotShowing="Inaktivera när den inte visas"
|
||||
AutoStart="Autostarta vid uppstart"
|
||||
AutoStart="Starta automatiskt vid uppstart"
|
||||
SwapFC-LFE="Byt FC och LFE"
|
||||
SwapFC-LFE.Tooltip="Byt Front Center-kanal och LFE-kanal"
|
||||
VideoConnection="Videoanslutning"
|
||||
|
|
|
|||
12
plugins/decklink/data/locale/ta-IN.ini
Normal file
12
plugins/decklink/data/locale/ta-IN.ini
Normal file
|
|
@ -0,0 +1,12 @@
|
|||
BlackmagicDevice="Blackmagic சாதனம்"
|
||||
Device="சாதனம்"
|
||||
Mode="பயன்முறை"
|
||||
PixelFormat="பிக்சல் வடிவமைப்பு"
|
||||
ColorSpace.Default="இயல்புநிலை"
|
||||
ColorRange.Default="இயல்புநிலை"
|
||||
ColorRange.Full="முழு"
|
||||
ChannelFormat="சேனல்"
|
||||
ChannelFormat.None="எதுவுமில்லை"
|
||||
VideoConnection="காணொளி இணைப்பு"
|
||||
AudioConnection="ஒலி இணைப்பு"
|
||||
|
||||
|
|
@ -1,7 +1,7 @@
|
|||
BlackmagicDevice="Blackmagic пристрій"
|
||||
BlackmagicDevice="Пристрій Blackmagic"
|
||||
Device="Пристрій"
|
||||
Mode="Режим"
|
||||
Buffering="Увімкнути буферизацію"
|
||||
Buffering="Використовувати буферизацію"
|
||||
PixelFormat="Формат пікселів"
|
||||
ColorSpace="Колірний простір"
|
||||
ColorSpace.Default="За замовчуванням"
|
||||
|
|
@ -9,7 +9,7 @@ ColorRange="Колірний діапазон"
|
|||
ColorRange.Default="За замовчуванням"
|
||||
ColorRange.Partial="Частковий"
|
||||
ColorRange.Full="Повний"
|
||||
ChannelFormat="Звук (канали)"
|
||||
ChannelFormat="Канал"
|
||||
ChannelFormat.None="Немає"
|
||||
ChannelFormat.2_0ch="2-канальний"
|
||||
ChannelFormat.2_1ch="2.1-канальний"
|
||||
|
|
@ -21,6 +21,6 @@ DeactivateWhenNotShowing="Деактивувати, коли не виводит
|
|||
AutoStart="Запускати автоматично"
|
||||
SwapFC-LFE="Поміняти місцями FC та LFE"
|
||||
SwapFC-LFE.Tooltip="Міняє місцями Front Center та LFE канали"
|
||||
VideoConnection="Відео вхід"
|
||||
AudioConnection="Аудіо вхід"
|
||||
VideoConnection="Підключення відео"
|
||||
AudioConnection="Підключення звуку"
|
||||
|
||||
|
|
|
|||
|
|
@ -7,8 +7,8 @@ ColorSpace="色彩空间"
|
|||
ColorSpace.Default="默认"
|
||||
ColorRange="色彩范围"
|
||||
ColorRange.Default="默认"
|
||||
ColorRange.Partial="局部"
|
||||
ColorRange.Full="全部"
|
||||
ColorRange.Partial="Limited"
|
||||
ColorRange.Full="Full"
|
||||
ChannelFormat="频道"
|
||||
ChannelFormat.None="无"
|
||||
ChannelFormat.2_0ch="双声道"
|
||||
|
|
|
|||
|
|
@ -6,6 +6,7 @@
|
|||
|
||||
#include <util/platform.h>
|
||||
#include <util/threading.h>
|
||||
#include <util/util_uint64.h>
|
||||
|
||||
#include <sstream>
|
||||
#include <algorithm>
|
||||
|
|
@ -90,8 +91,8 @@ void DeckLinkDeviceInstance::HandleAudioPacket(
|
|||
if (decklink && !static_cast<DeckLinkInput *>(decklink)->buffering) {
|
||||
currentPacket.timestamp = os_gettime_ns();
|
||||
currentPacket.timestamp -=
|
||||
(uint64_t)frameCount * 1000000000ULL /
|
||||
(uint64_t)currentPacket.samples_per_sec;
|
||||
util_mul_div64(frameCount, 1000000000ULL,
|
||||
currentPacket.samples_per_sec);
|
||||
}
|
||||
|
||||
int maxdevicechannel = device->GetMaxChannel();
|
||||
|
|
@ -113,7 +114,7 @@ void DeckLinkDeviceInstance::HandleAudioPacket(
|
|||
}
|
||||
|
||||
nextAudioTS = timestamp +
|
||||
((uint64_t)frameCount * 1000000000ULL / 48000ULL) + 1;
|
||||
util_mul_div64(frameCount, 1000000000ULL, 48000ULL) + 1;
|
||||
|
||||
obs_source_output_audio(
|
||||
static_cast<DeckLinkInput *>(decklink)->GetSource(),
|
||||
|
|
@ -191,7 +192,7 @@ void DeckLinkDeviceInstance::SetupVideoFormat(DeckLinkDeviceMode *mode_)
|
|||
#ifdef LOG_SETUP_VIDEO_FORMAT
|
||||
LOG(LOG_INFO, "Setup video format: %s, %s, %s",
|
||||
pixelFormat == bmdFormat8BitYUV ? "YUV" : "RGB",
|
||||
activeColorSpace == VIDEO_CS_709 ? "BT.709" : "BT.601",
|
||||
activeColorSpace == VIDEO_CS_601 ? "BT.601" : "BT.709",
|
||||
colorRange == VIDEO_RANGE_FULL ? "full" : "limited");
|
||||
#endif
|
||||
}
|
||||
|
|
|
|||
|
|
@ -9,6 +9,7 @@
|
|||
#include "decklink-devices.hpp"
|
||||
|
||||
#include "../../libobs/media-io/video-scaler.h"
|
||||
#include "../../libobs/util/util_uint64.h"
|
||||
|
||||
static void decklink_output_destroy(void *data)
|
||||
{
|
||||
|
|
@ -127,8 +128,8 @@ static bool prepare_audio(DeckLinkOutput *decklink,
|
|||
*output = *frame;
|
||||
|
||||
if (frame->timestamp < decklink->start_timestamp) {
|
||||
uint64_t duration = (uint64_t)frame->frames * 1000000000 /
|
||||
(uint64_t)decklink->audio_samplerate;
|
||||
uint64_t duration = util_mul_div64(frame->frames, 1000000000ULL,
|
||||
decklink->audio_samplerate);
|
||||
uint64_t end_ts = frame->timestamp + duration;
|
||||
uint64_t cutoff;
|
||||
|
||||
|
|
@ -138,7 +139,8 @@ static bool prepare_audio(DeckLinkOutput *decklink,
|
|||
cutoff = decklink->start_timestamp - frame->timestamp;
|
||||
output->timestamp += cutoff;
|
||||
|
||||
cutoff *= (uint64_t)decklink->audio_samplerate / 1000000000;
|
||||
cutoff = util_mul_div64(cutoff, decklink->audio_samplerate,
|
||||
1000000000ULL);
|
||||
|
||||
for (size_t i = 0; i < decklink->audio_planes; i++)
|
||||
output->data[i] +=
|
||||
|
|
|
|||
|
|
@ -63,5 +63,6 @@ add_library(linux-decklink MODULE
|
|||
target_link_libraries(linux-decklink
|
||||
libobs
|
||||
)
|
||||
set_target_properties(linux-decklink PROPERTIES FOLDER "plugins")
|
||||
|
||||
install_obs_plugin_with_data(linux-decklink ../data)
|
||||
|
|
|
|||
|
|
@ -74,5 +74,6 @@ add_library(mac-decklink MODULE
|
|||
target_link_libraries(mac-decklink
|
||||
libobs
|
||||
${COREFOUNDATION})
|
||||
set_target_properties(mac-decklink PROPERTIES FOLDER "plugins")
|
||||
|
||||
install_obs_plugin_with_data(mac-decklink ../data)
|
||||
|
|
|
|||
|
|
@ -67,5 +67,6 @@ add_library(win-decklink MODULE
|
|||
|
||||
target_link_libraries(win-decklink
|
||||
libobs)
|
||||
set_target_properties(win-decklink PROPERTIES FOLDER "plugins")
|
||||
|
||||
install_obs_plugin_with_data(win-decklink ../data)
|
||||
|
|
|
|||
|
|
@ -22,5 +22,6 @@ add_library(image-source MODULE
|
|||
target_link_libraries(image-source
|
||||
libobs
|
||||
${image-source_PLATFORM_DEPS})
|
||||
set_target_properties(image-source PROPERTIES FOLDER "plugins")
|
||||
|
||||
install_obs_plugin_with_data(image-source data)
|
||||
|
|
|
|||
|
|
@ -113,6 +113,13 @@ static void color_source_defaults_v2(obs_data_t *settings)
|
|||
obs_data_set_default_int(settings, "height", 1080);
|
||||
}
|
||||
|
||||
static void color_source_defaults_v3(obs_data_t *settings)
|
||||
{
|
||||
obs_data_set_default_int(settings, "color", 0xFFD1D1D1);
|
||||
obs_data_set_default_int(settings, "width", 1920);
|
||||
obs_data_set_default_int(settings, "height", 1080);
|
||||
}
|
||||
|
||||
struct obs_source_info color_source_info_v1 = {
|
||||
.id = "color_source",
|
||||
.type = OBS_SOURCE_TYPE_INPUT,
|
||||
|
|
@ -134,7 +141,8 @@ struct obs_source_info color_source_info_v2 = {
|
|||
.id = "color_source",
|
||||
.version = 2,
|
||||
.type = OBS_SOURCE_TYPE_INPUT,
|
||||
.output_flags = OBS_SOURCE_VIDEO | OBS_SOURCE_CUSTOM_DRAW,
|
||||
.output_flags = OBS_SOURCE_VIDEO | OBS_SOURCE_CUSTOM_DRAW |
|
||||
OBS_SOURCE_CAP_OBSOLETE,
|
||||
.create = color_source_create,
|
||||
.destroy = color_source_destroy,
|
||||
.update = color_source_update,
|
||||
|
|
@ -146,3 +154,20 @@ struct obs_source_info color_source_info_v2 = {
|
|||
.get_properties = color_source_properties,
|
||||
.icon_type = OBS_ICON_TYPE_COLOR,
|
||||
};
|
||||
|
||||
struct obs_source_info color_source_info_v3 = {
|
||||
.id = "color_source",
|
||||
.version = 3,
|
||||
.type = OBS_SOURCE_TYPE_INPUT,
|
||||
.output_flags = OBS_SOURCE_VIDEO | OBS_SOURCE_CUSTOM_DRAW,
|
||||
.create = color_source_create,
|
||||
.destroy = color_source_destroy,
|
||||
.update = color_source_update,
|
||||
.get_name = color_source_get_name,
|
||||
.get_defaults = color_source_defaults_v3,
|
||||
.get_width = color_source_getwidth,
|
||||
.get_height = color_source_getheight,
|
||||
.video_render = color_source_render,
|
||||
.get_properties = color_source_properties,
|
||||
.icon_type = OBS_ICON_TYPE_COLOR,
|
||||
};
|
||||
|
|
|
|||
|
|
@ -1,8 +1,35 @@
|
|||
ImageInput="الصورة"
|
||||
File="ملف الصورة"
|
||||
UnloadWhenNotShowing="إلغاء تحميل الصورة إذا لم تظهر"
|
||||
UnloadWhenNotShowing="إلغاء تحميل الصورة عند عدم عرضها"
|
||||
|
||||
SlideShow="عرض شرائح الصور"
|
||||
SlideShow.TransitionSpeed="سرعة الانتقال (مللي ثانية)"
|
||||
SlideShow.SlideTime="الوقت بين الشرائح (مللي ثانية)"
|
||||
SlideShow.Files="ملفات الصور"
|
||||
SlideShow.CustomSize="حجم الإرتباط/نسبة المشهد"
|
||||
SlideShow.CustomSize.Auto="تلقائي"
|
||||
SlideShow.Randomize="تشغيل عشوائي"
|
||||
SlideShow.Loop="تكرار"
|
||||
SlideShow.Transition="تأثير الإنتقال"
|
||||
SlideShow.Transition.Cut="قطع"
|
||||
SlideShow.Transition.Fade="تلاشي"
|
||||
SlideShow.Transition.Swipe="تمرير"
|
||||
SlideShow.Transition.Slide="انزلاق"
|
||||
SlideShow.PlaybackBehavior="السلوك و الظهور"
|
||||
SlideShow.PlaybackBehavior.StopRestart="إيقاف عندما يكون غير ظاهر, إعادة البدء عند الظهور"
|
||||
SlideShow.PlaybackBehavior.PauseUnpause="إيقاف مؤقت عندما يكون غير ظاهر, استكمال عند الظهور"
|
||||
SlideShow.PlaybackBehavior.AlwaysPlay="التشغيل دائماً حتى عندما يكون غير ظاهر"
|
||||
SlideShow.SlideMode="وضعية التنقل"
|
||||
SlideShow.SlideMode.Auto="تلقائي"
|
||||
SlideShow.SlideMode.Manual="يدوي (استخدم المفاتيح الساخنة للتحكم في عرض الشرائح)"
|
||||
SlideShow.PlayPause="تشغيل/إيقاف مؤقت"
|
||||
SlideShow.Restart="إعادة التشغيل"
|
||||
SlideShow.Stop="إيقاف"
|
||||
SlideShow.NextSlide="الشريحة التالية"
|
||||
SlideShow.PreviousSlide="الشريحة السابقة"
|
||||
SlideShow.HideWhenDone="إخفاء عندما يتم الانتهاء من عرض الشرائح"
|
||||
|
||||
ColorSource="مصدر لون"
|
||||
ColorSource.Color="اللون"
|
||||
ColorSource.Width="العرض"
|
||||
ColorSource.Height="الإرتفاع"
|
||||
|
|
|
|||
12
plugins/image-source/data/locale/ba-RU.ini
Normal file
12
plugins/image-source/data/locale/ba-RU.ini
Normal file
|
|
@ -0,0 +1,12 @@
|
|||
ImageInput="Һүрәт"
|
||||
File="Һүрәт файлы"
|
||||
|
||||
SlideShow.Files="Һүрәт файлдары"
|
||||
SlideShow.Transition="Әүрелеү"
|
||||
SlideShow.Restart="Яңынан ебәрергә"
|
||||
SlideShow.Stop="Туҡтатырға"
|
||||
|
||||
ColorSource.Color="Төҫ"
|
||||
ColorSource.Width="Киңлек"
|
||||
ColorSource.Height="Бейеклек"
|
||||
|
||||
|
|
@ -16,15 +16,15 @@ SlideShow.Transition.Fade="Überblenden"
|
|||
SlideShow.Transition.Swipe="Swipe"
|
||||
SlideShow.Transition.Slide="Slide"
|
||||
SlideShow.PlaybackBehavior="Sichtbarkeitsverhalten"
|
||||
SlideShow.PlaybackBehavior.StopRestart="Anhalten, wenn nicht sichtbar; neustarten, wenn sichtbar"
|
||||
SlideShow.PlaybackBehavior.StopRestart="Beenden, wenn nicht sichtbar; neu starten, wenn sichtbar"
|
||||
SlideShow.PlaybackBehavior.PauseUnpause="Pausieren, wenn nicht sichtbar; fortsetzen, wenn sichtbar"
|
||||
SlideShow.PlaybackBehavior.AlwaysPlay="Immer abspielen, auch wenn nicht sichtbar"
|
||||
SlideShow.SlideMode="Diashowmodus"
|
||||
SlideShow.SlideMode.Auto="Automatisch"
|
||||
SlideShow.SlideMode.Manual="Manuell (Hotkeys für die Steuerung der Diashow verwenden)"
|
||||
SlideShow.PlayPause="Abspielen/pausieren"
|
||||
SlideShow.Restart="Neustarten"
|
||||
SlideShow.Stop="Stoppen"
|
||||
SlideShow.Restart="Neu starten"
|
||||
SlideShow.Stop="Beenden"
|
||||
SlideShow.NextSlide="Nächstes Bild"
|
||||
SlideShow.PreviousSlide="Vorheriges Bild"
|
||||
SlideShow.HideWhenDone="Verbergen, wenn Diashow vorbei"
|
||||
|
|
|
|||
36
plugins/image-source/data/locale/en-GB.ini
Normal file
36
plugins/image-source/data/locale/en-GB.ini
Normal file
|
|
@ -0,0 +1,36 @@
|
|||
ImageInput="Image"
|
||||
File="Image File"
|
||||
UnloadWhenNotShowing="Unload image when not showing"
|
||||
|
||||
SlideShow="Image Slide Show"
|
||||
SlideShow.TransitionSpeed="Transition Speed (milliseconds)"
|
||||
SlideShow.SlideTime="Time Between Slides (milliseconds)"
|
||||
SlideShow.Files="Image Files"
|
||||
SlideShow.CustomSize="Bounding Size/Aspect Ratio"
|
||||
SlideShow.CustomSize.Auto="Automatic"
|
||||
SlideShow.Randomize="Randomise Playback"
|
||||
SlideShow.Loop="Loop"
|
||||
SlideShow.Transition="Transition"
|
||||
SlideShow.Transition.Cut="Cut"
|
||||
SlideShow.Transition.Fade="Fade"
|
||||
SlideShow.Transition.Swipe="Swipe"
|
||||
SlideShow.Transition.Slide="Slide"
|
||||
SlideShow.PlaybackBehavior="Visibility Behaviour"
|
||||
SlideShow.PlaybackBehavior.StopRestart="Stop when not visible, restart when visible"
|
||||
SlideShow.PlaybackBehavior.PauseUnpause="Pause when not visible, unpause when visible"
|
||||
SlideShow.PlaybackBehavior.AlwaysPlay="Always play even when not visible"
|
||||
SlideShow.SlideMode="Slide Mode"
|
||||
SlideShow.SlideMode.Auto="Automatic"
|
||||
SlideShow.SlideMode.Manual="Manual (Use hotkeys to control slideshow)"
|
||||
SlideShow.PlayPause="Play/Pause"
|
||||
SlideShow.Restart="Restart"
|
||||
SlideShow.Stop="Stop"
|
||||
SlideShow.NextSlide="Next Slide"
|
||||
SlideShow.PreviousSlide="Previous Slide"
|
||||
SlideShow.HideWhenDone="Hide when slideshow is done"
|
||||
|
||||
ColorSource="Colour Source"
|
||||
ColorSource.Color="Colour"
|
||||
ColorSource.Width="Width"
|
||||
ColorSource.Height="Height"
|
||||
|
||||
|
|
@ -1,35 +1,35 @@
|
|||
ImageInput="Larawan"
|
||||
File="Dokumentong Larawan"
|
||||
UnloadWhenNotShowing="Mag-ibis ng imahe kapag hindi nagpapakita"
|
||||
UnloadWhenNotShowing="I-unload ang imahe kapag hindi pinapakita"
|
||||
|
||||
SlideShow="Ipakita ang Slide ng Larawan"
|
||||
SlideShow.TransitionSpeed="Bilis ng Paglipat (milliseconds)"
|
||||
SlideShow.SlideTime="Oras sa Pagitan ng Mga Slide (millisecond)"
|
||||
SlideShow="Slide Show ng Larawan"
|
||||
SlideShow.TransitionSpeed="Bilis ng Pagbago (milliseconds)"
|
||||
SlideShow.SlideTime="Oras sa Pagitan ng mga Slide (milliseconds)"
|
||||
SlideShow.Files="Dokumentong Larawan"
|
||||
SlideShow.CustomSize="Bounding Size / Aspect Ratio"
|
||||
SlideShow.CustomSize.Auto="Awtomatikong"
|
||||
SlideShow.Randomize="Simulan ang Pag-playback"
|
||||
SlideShow.Loop="Silo"
|
||||
SlideShow.CustomSize.Auto="Awtomatiko"
|
||||
SlideShow.Randomize="I-randomize ang Pagpapatugtog"
|
||||
SlideShow.Loop="Ulit-ulitin"
|
||||
SlideShow.Transition="Paglipat"
|
||||
SlideShow.Transition.Cut="Kunin"
|
||||
SlideShow.Transition.Fade="Fade"
|
||||
SlideShow.Transition.Cut="Cut"
|
||||
SlideShow.Transition.Fade="Maglaho"
|
||||
SlideShow.Transition.Swipe="Mag-swipe"
|
||||
SlideShow.Transition.Slide="Slide"
|
||||
SlideShow.PlaybackBehavior="Pag-uugali ng Pagtingin"
|
||||
SlideShow.PlaybackBehavior="Pag-uugali sa Pagkakita"
|
||||
SlideShow.PlaybackBehavior.StopRestart="Itigil kapag hindi nakikita, i-restart kapag nakikita"
|
||||
SlideShow.PlaybackBehavior.PauseUnpause="I-pause kapag hindi nakikita, i-unpause kapag nakikita"
|
||||
SlideShow.PlaybackBehavior.AlwaysPlay="Laging i-play kahit na hindi nakikita"
|
||||
SlideShow.SlideMode="Slide Mode"
|
||||
SlideShow.SlideMode.Auto="Awtomatikong"
|
||||
SlideShow.SlideMode.Manual="Mano-manong (Gamitin ang mga hotkey upang kontrolin ang slideshow)"
|
||||
SlideShow.PlayPause="I-play / I-pause"
|
||||
SlideShow.Restart="I-restart"
|
||||
SlideShow.SlideMode.Manual="Mano-mano (Gamitin ang mga hotkey upang kontrolin ang slideshow)"
|
||||
SlideShow.PlayPause="Patugtugin/I-pause"
|
||||
SlideShow.Restart="Ulitin"
|
||||
SlideShow.Stop="Itigil"
|
||||
SlideShow.NextSlide="Susunod na Slide"
|
||||
SlideShow.PreviousSlide="Nakaraang Slide"
|
||||
SlideShow.HideWhenDone="Itago kapag tapos na ang slideshow"
|
||||
|
||||
ColorSource="Pinagmulan ng Kulay"
|
||||
ColorSource="Kulay na Source"
|
||||
ColorSource.Color="Kulay"
|
||||
ColorSource.Width="Lapad"
|
||||
ColorSource.Height="Taas"
|
||||
|
|
|
|||
|
|
@ -6,11 +6,27 @@ SlideShow="מצגת תמונות"
|
|||
SlideShow.TransitionSpeed="מהירות מעבר (אלפיות שניה)"
|
||||
SlideShow.SlideTime="זמן בין שקופיות (אלפיות שניה)"
|
||||
SlideShow.Files="קבצי תמונה"
|
||||
SlideShow.CustomSize.Auto="אוטומטי"
|
||||
SlideShow.Randomize="סדר נגינה אקראי"
|
||||
SlideShow.Transition="מעבר"
|
||||
SlideShow.Transition.Cut="חתוך"
|
||||
SlideShow.Transition.Fade="עמעום"
|
||||
SlideShow.Transition.Swipe="החלקה"
|
||||
SlideShow.Transition.Slide="הסט"
|
||||
SlideShow.PlaybackBehavior="התנהגות ניראות"
|
||||
SlideShow.PlaybackBehavior.PauseUnpause="השהה כאשר אינו נראה, בטל השהייה כאשר נראה"
|
||||
SlideShow.SlideMode="מצב שקופית"
|
||||
SlideShow.SlideMode.Auto="אוטומטי"
|
||||
SlideShow.SlideMode.Manual="ידני (שימוש במקשים חמים לשליטה בהצגת השקופיות)"
|
||||
SlideShow.PlayPause="נגן/השהה"
|
||||
SlideShow.Restart="אתחל"
|
||||
SlideShow.Stop="עצור"
|
||||
SlideShow.NextSlide="השקופית הבאה"
|
||||
SlideShow.PreviousSlide="השקופית הקודמת"
|
||||
SlideShow.HideWhenDone="להסתיר בסיום הצגת השקופיות"
|
||||
|
||||
ColorSource="מקור צבע"
|
||||
ColorSource.Color="צבע"
|
||||
ColorSource.Width="רוחב"
|
||||
ColorSource.Height="גובה"
|
||||
|
||||
|
|
|
|||
|
|
@ -2,15 +2,35 @@ ImageInput="Slika"
|
|||
File="Datoteka slike"
|
||||
UnloadWhenNotShowing="Ukloni sliku iz memorije kada se ne prikazuje"
|
||||
|
||||
SlideShow="Prikazivanje slajdova"
|
||||
SlideShow.TransitionSpeed="Brzina prelaza (milisekunde)"
|
||||
SlideShow.SlideTime="Vreme između slajdova (milisekunde)"
|
||||
SlideShow.Files="Datoteke slika"
|
||||
SlideShow.Randomize="Nasumična reprodukcija"
|
||||
SlideShow.Transition="Prelaz"
|
||||
SlideShow.Transition.Cut="Isecanje"
|
||||
SlideShow.Transition.Fade="Zatamnjenje"
|
||||
SlideShow.Transition.Swipe="Prevlačenje"
|
||||
SlideShow.Transition.Slide="Klizanje"
|
||||
SlideShow="Slideshow"
|
||||
SlideShow.TransitionSpeed="Brzina tranzicije (u milisekundama)"
|
||||
SlideShow.SlideTime="Vrijeme između slajdova (u milisekundama)"
|
||||
SlideShow.Files="Slike"
|
||||
SlideShow.CustomSize="Omjer zaslona"
|
||||
SlideShow.CustomSize.Auto="Automatski"
|
||||
SlideShow.Randomize="Izmiješaj redoslijed"
|
||||
SlideShow.Loop="Ponavljaj"
|
||||
SlideShow.Transition="Tranzicija"
|
||||
SlideShow.Transition.Cut="Cut"
|
||||
SlideShow.Transition.Fade="Fade"
|
||||
SlideShow.Transition.Swipe="Swipe"
|
||||
SlideShow.Transition.Slide="Slide"
|
||||
SlideShow.PlaybackBehavior="Ponašanje pri (ne)vidljivosti"
|
||||
SlideShow.PlaybackBehavior.StopRestart="Zaustavi kada se ne vidi, ponovo pokreni kada se opet vidi"
|
||||
SlideShow.PlaybackBehavior.PauseUnpause="Pauziraj kada se ne vidi, nastavi kada se opet vidi"
|
||||
SlideShow.PlaybackBehavior.AlwaysPlay="Reproduciraj i dok se ne vidi"
|
||||
SlideShow.SlideMode="Način upravljanja"
|
||||
SlideShow.SlideMode.Auto="Automatski"
|
||||
SlideShow.SlideMode.Manual="Ručno (kontrola tipkovničkim prečacima)"
|
||||
SlideShow.PlayPause="Pokreni/Pauziraj"
|
||||
SlideShow.Restart="Ponovno pokreni"
|
||||
SlideShow.Stop="Zaustavi"
|
||||
SlideShow.NextSlide="Idući slajd"
|
||||
SlideShow.PreviousSlide="Prethodni slajd"
|
||||
SlideShow.HideWhenDone="Sakrij kada slideshow završi"
|
||||
|
||||
ColorSource="Čista boja"
|
||||
ColorSource.Color="Boja"
|
||||
ColorSource.Width="Širina"
|
||||
ColorSource.Height="Visina"
|
||||
|
||||
|
|
|
|||
36
plugins/image-source/data/locale/id-ID.ini
Normal file
36
plugins/image-source/data/locale/id-ID.ini
Normal file
|
|
@ -0,0 +1,36 @@
|
|||
ImageInput="Gambar"
|
||||
File="File Gambar"
|
||||
UnloadWhenNotShowing="Lepas muatkan gambar jika tidak tampil"
|
||||
|
||||
SlideShow="Gambar Slide Show"
|
||||
SlideShow.TransitionSpeed="Kecepatan Transisi (milidetik)"
|
||||
SlideShow.SlideTime="Durasi Antar Slide (milidetik)"
|
||||
SlideShow.Files="File Gambar"
|
||||
SlideShow.CustomSize="Ukuran Batas/Rasio Aspek"
|
||||
SlideShow.CustomSize.Auto="Otomatis"
|
||||
SlideShow.Randomize="Acak Pemutaran"
|
||||
SlideShow.Loop="Loop"
|
||||
SlideShow.Transition="Transisi"
|
||||
SlideShow.Transition.Cut="Potong"
|
||||
SlideShow.Transition.Fade="Pudar"
|
||||
SlideShow.Transition.Swipe="Usap"
|
||||
SlideShow.Transition.Slide="Geser"
|
||||
SlideShow.PlaybackBehavior="Perilaku Visibilitas"
|
||||
SlideShow.PlaybackBehavior.StopRestart="Berhenti jika tidak terlihat, ulangi saat terlihat"
|
||||
SlideShow.PlaybackBehavior.PauseUnpause="Jeda jika tidak terlihat, lanjutkan saat terlihat"
|
||||
SlideShow.PlaybackBehavior.AlwaysPlay="Putar terus meskipun tidak terlihat"
|
||||
SlideShow.SlideMode="Mode Slide"
|
||||
SlideShow.SlideMode.Auto="Otomatis"
|
||||
SlideShow.SlideMode.Manual="Manual (Gunakan hotkey untuk mengontrol slideshow)"
|
||||
SlideShow.PlayPause="Putar/Jeda"
|
||||
SlideShow.Restart="Ulangi"
|
||||
SlideShow.Stop="Berhenti"
|
||||
SlideShow.NextSlide="Slide Selanjutnya"
|
||||
SlideShow.PreviousSlide="Slide Sebelumnya"
|
||||
SlideShow.HideWhenDone="Sembunyikan jika slideshow sudah selesai"
|
||||
|
||||
ColorSource="Sumber Warna"
|
||||
ColorSource.Color="Warna"
|
||||
ColorSource.Width="Lebar"
|
||||
ColorSource.Height="Tinggi"
|
||||
|
||||
|
|
@ -4,22 +4,30 @@ UnloadWhenNotShowing="Eliberează din memorie imaginea când nu este afișată"
|
|||
|
||||
SlideShow="Diaporamă"
|
||||
SlideShow.TransitionSpeed="Viteză de tranziție (milisecunde)"
|
||||
SlideShow.SlideTime="Timpul dintre diapozitive (milisecunde)"
|
||||
SlideShow.Files="Fișiere imagine"
|
||||
SlideShow.SlideTime="Timp între diapozitive (milisecunde)"
|
||||
SlideShow.Files="Fișiere de imagini"
|
||||
SlideShow.CustomSize="Dimensiunea delimitării/Raport de aspect"
|
||||
SlideShow.CustomSize.Auto="Automat"
|
||||
SlideShow.Loop="Buclă"
|
||||
SlideShow.Randomize="Randomizează redarea"
|
||||
SlideShow.Loop="Redă în buclă"
|
||||
SlideShow.Transition="Tranziție"
|
||||
SlideShow.Transition.Cut="Decupare"
|
||||
SlideShow.Transition.Fade="Estompare"
|
||||
SlideShow.Transition.Swipe="Glisare"
|
||||
SlideShow.Transition.Slide="Culisare"
|
||||
SlideShow.PlaybackBehavior="Comportamentul vizibilității"
|
||||
SlideShow.PlaybackBehavior.StopRestart="Oprește când sursa nu este vizibilă, repornește când este vizibilă"
|
||||
SlideShow.PlaybackBehavior.PauseUnpause="Pune pe pauză când sursa nu este vizibilă, scoate de pe pauză când este vizibilă"
|
||||
SlideShow.PlaybackBehavior.AlwaysPlay="Redă întotdeauna chiar și atunci când sursa nu este vizibilă"
|
||||
SlideShow.SlideMode="Mod de culisare"
|
||||
SlideShow.SlideMode.Auto="Automat"
|
||||
SlideShow.SlideMode.Manual="Manual (Folosește tastele rapide pentru a controla diaporama)"
|
||||
SlideShow.PlayPause="Redă/Pune pe pauză"
|
||||
SlideShow.Restart="Repornește"
|
||||
SlideShow.Stop="Oprește"
|
||||
SlideShow.NextSlide="Diapozitivul următor"
|
||||
SlideShow.PreviousSlide="Diapozitivul anterior"
|
||||
SlideShow.HideWhenDone="Ascunde când slideshow este terminat"
|
||||
|
||||
ColorSource="Sursă de culoare"
|
||||
ColorSource.Color="Culoare"
|
||||
|
|
|
|||
21
plugins/image-source/data/locale/ta-IN.ini
Normal file
21
plugins/image-source/data/locale/ta-IN.ini
Normal file
|
|
@ -0,0 +1,21 @@
|
|||
ImageInput="புகைப்படம்"
|
||||
File="புகைப்பட கோப்பு"
|
||||
|
||||
SlideShow="புகைப்பட சறுக்குக் காட்சி"
|
||||
SlideShow.Files="புகைப்பட கோப்புகள்"
|
||||
SlideShow.CustomSize.Auto="தானியங்கி"
|
||||
SlideShow.Transition.Cut="வெட்டு"
|
||||
SlideShow.Transition.Fade="Fade"
|
||||
SlideShow.Transition.Swipe="Swipe"
|
||||
SlideShow.Transition.Slide="Slide"
|
||||
SlideShow.SlideMode.Auto="தானியங்கு"
|
||||
SlideShow.PlayPause="இயக்கு/இடைநிறுத்து"
|
||||
SlideShow.Stop="நிறுத்து"
|
||||
SlideShow.NextSlide="அடுத்த ஸ்லைடு"
|
||||
SlideShow.PreviousSlide="முந்தைய ஸ்லைடு"
|
||||
SlideShow.HideWhenDone="ஸ்லைடு காட்சி முடிந்தப்பின் மறை"
|
||||
|
||||
ColorSource.Color="வண்ணம்"
|
||||
ColorSource.Width="அகலம்"
|
||||
ColorSource.Height="உயரம்"
|
||||
|
||||
|
|
@ -1,5 +1,8 @@
|
|||
ImageInput="รูปภาพ"
|
||||
File="ไฟล์รูปภาพ"
|
||||
|
||||
SlideShow.NextSlide="สไลด์ถัดไป"
|
||||
SlideShow.PreviousSlide="สไลด์ก่อนหน้า"
|
||||
|
||||
ColorSource.Color="สี"
|
||||
|
||||
|
|
|
|||
|
|
@ -1,35 +1,35 @@
|
|||
ImageInput="Зображення"
|
||||
File="Файл зображення"
|
||||
UnloadWhenNotShowing="Вивантажувати зображення, коли воно не виводиться"
|
||||
UnloadWhenNotShowing="Вивантажувати зображення, які не виводяться"
|
||||
|
||||
SlideShow="Слайд-шоу"
|
||||
SlideShow.TransitionSpeed="Тривалість відео-переходу (мілісекунд)"
|
||||
SlideShow.SlideTime="Час між слайдами (мілісекунд)"
|
||||
SlideShow="Показ слайдів"
|
||||
SlideShow.TransitionSpeed="Швидкість переходу (мілісекунди)"
|
||||
SlideShow.SlideTime="Час між слайдами (мілісекунди)"
|
||||
SlideShow.Files="Файли зображень"
|
||||
SlideShow.CustomSize="Розмір рамки/пропорції"
|
||||
SlideShow.CustomSize.Auto="Автоматично"
|
||||
SlideShow.Randomize="Випадкове відтворення"
|
||||
SlideShow.Loop="Циклічно відтворювати"
|
||||
SlideShow.Transition="Відео-перехід"
|
||||
SlideShow.Transition.Cut="Cut"
|
||||
SlideShow.Transition.Fade="Fade"
|
||||
SlideShow.Transition.Swipe="Swipe"
|
||||
SlideShow.Transition.Slide="Slide"
|
||||
SlideShow.PlaybackBehavior="Видимість та відтворення"
|
||||
SlideShow.Loop="Повторювати"
|
||||
SlideShow.Transition="Монтажний перехід"
|
||||
SlideShow.Transition.Cut="Вирізання"
|
||||
SlideShow.Transition.Fade="Вицвітання"
|
||||
SlideShow.Transition.Swipe="Переміщення"
|
||||
SlideShow.Transition.Slide="Зсув"
|
||||
SlideShow.PlaybackBehavior="Поведінка видимості"
|
||||
SlideShow.PlaybackBehavior.StopRestart="Зупинити, коли не видимий. Грати з початку, коли видимий"
|
||||
SlideShow.PlaybackBehavior.PauseUnpause="Призупинити, коли не видимий. Грати далі, коли видимий"
|
||||
SlideShow.PlaybackBehavior.AlwaysPlay="Завжди грати навіть тоді, коли не видимий"
|
||||
SlideShow.SlideMode="Режим слайдів"
|
||||
SlideShow.SlideMode.Auto="Автоматично"
|
||||
SlideShow.SlideMode.Manual="Вручну (використовувати Гарячі клавіші для контролю)"
|
||||
SlideShow.PlayPause="Відтворення / Пауза"
|
||||
SlideShow.Restart="Грати з початку"
|
||||
SlideShow.SlideMode.Auto="Автоматичний"
|
||||
SlideShow.SlideMode.Manual="Ручний (використовувати гарячі клавіші для контролю)"
|
||||
SlideShow.PlayPause="Відтворення/Пауза"
|
||||
SlideShow.Restart="Повторити"
|
||||
SlideShow.Stop="Зупинити"
|
||||
SlideShow.NextSlide="Наступний слайд"
|
||||
SlideShow.PreviousSlide="Попередній слайд"
|
||||
SlideShow.HideWhenDone="Не показувати джерело, коли відтворення слайд-шоу завершено"
|
||||
SlideShow.HideWhenDone="Приховати завершення показу слайдів"
|
||||
|
||||
ColorSource="Щільний колір"
|
||||
ColorSource="Суцільний колір"
|
||||
ColorSource.Color="Колір"
|
||||
ColorSource.Width="Ширина"
|
||||
ColorSource.Height="Висота"
|
||||
|
|
|
|||
|
|
@ -160,12 +160,14 @@ static void image_source_tick(void *data, float seconds)
|
|||
|
||||
context->update_time_elapsed += seconds;
|
||||
|
||||
if (context->update_time_elapsed >= 1.0f) {
|
||||
time_t t = get_modified_timestamp(context->file);
|
||||
context->update_time_elapsed = 0.0f;
|
||||
if (obs_source_showing(context->source)) {
|
||||
if (context->update_time_elapsed >= 1.0f) {
|
||||
time_t t = get_modified_timestamp(context->file);
|
||||
context->update_time_elapsed = 0.0f;
|
||||
|
||||
if (context->file_timestamp != t) {
|
||||
image_source_load(context);
|
||||
if (context->file_timestamp != t) {
|
||||
image_source_load(context);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
|
@ -279,12 +281,14 @@ MODULE_EXPORT const char *obs_module_description(void)
|
|||
extern struct obs_source_info slideshow_info;
|
||||
extern struct obs_source_info color_source_info_v1;
|
||||
extern struct obs_source_info color_source_info_v2;
|
||||
extern struct obs_source_info color_source_info_v3;
|
||||
|
||||
bool obs_module_load(void)
|
||||
{
|
||||
obs_register_source(&image_source_info);
|
||||
obs_register_source(&color_source_info_v1);
|
||||
obs_register_source(&color_source_info_v2);
|
||||
obs_register_source(&color_source_info_v3);
|
||||
obs_register_source(&slideshow_info);
|
||||
return true;
|
||||
}
|
||||
|
|
|
|||
|
|
@ -112,8 +112,22 @@ struct slideshow {
|
|||
obs_hotkey_id stop_hotkey;
|
||||
obs_hotkey_id next_hotkey;
|
||||
obs_hotkey_id prev_hotkey;
|
||||
|
||||
enum obs_media_state state;
|
||||
};
|
||||
|
||||
static void set_media_state(void *data, enum obs_media_state state)
|
||||
{
|
||||
struct slideshow *ss = data;
|
||||
ss->state = state;
|
||||
}
|
||||
|
||||
static enum obs_media_state ss_get_state(void *data)
|
||||
{
|
||||
struct slideshow *ss = data;
|
||||
return ss->state;
|
||||
}
|
||||
|
||||
static obs_source_t *get_transition(struct slideshow *ss)
|
||||
{
|
||||
obs_source_t *tr;
|
||||
|
|
@ -242,18 +256,21 @@ static void do_transition(void *data, bool to_null)
|
|||
struct slideshow *ss = data;
|
||||
bool valid = item_valid(ss);
|
||||
|
||||
if (valid && ss->use_cut)
|
||||
if (valid && ss->use_cut) {
|
||||
obs_transition_set(ss->transition,
|
||||
ss->files.array[ss->cur_item].source);
|
||||
|
||||
else if (valid && !to_null)
|
||||
} else if (valid && !to_null) {
|
||||
obs_transition_start(ss->transition, OBS_TRANSITION_MODE_AUTO,
|
||||
ss->tr_speed,
|
||||
ss->files.array[ss->cur_item].source);
|
||||
|
||||
else
|
||||
} else {
|
||||
obs_transition_start(ss->transition, OBS_TRANSITION_MODE_AUTO,
|
||||
ss->tr_speed, NULL);
|
||||
set_media_state(ss, OBS_MEDIA_STATE_ENDED);
|
||||
obs_source_media_ended(ss->source);
|
||||
}
|
||||
}
|
||||
|
||||
static void ss_update(void *data, obs_data_t *settings)
|
||||
|
|
@ -453,18 +470,37 @@ static void ss_update(void *data, obs_data_t *settings)
|
|||
ss->cur_item = random_file(ss);
|
||||
if (new_tr)
|
||||
obs_source_add_active_child(ss->source, new_tr);
|
||||
if (ss->files.num)
|
||||
if (ss->files.num) {
|
||||
do_transition(ss, false);
|
||||
|
||||
if (ss->manual)
|
||||
set_media_state(ss, OBS_MEDIA_STATE_PAUSED);
|
||||
else
|
||||
set_media_state(ss, OBS_MEDIA_STATE_PLAYING);
|
||||
|
||||
obs_source_media_started(ss->source);
|
||||
}
|
||||
|
||||
obs_data_array_release(array);
|
||||
}
|
||||
|
||||
static void ss_play_pause(void *data)
|
||||
static void ss_play_pause(void *data, bool pause)
|
||||
{
|
||||
struct slideshow *ss = data;
|
||||
|
||||
ss->paused = !ss->paused;
|
||||
ss->manual = ss->paused;
|
||||
if (ss->stop) {
|
||||
ss->stop = false;
|
||||
ss->paused = false;
|
||||
do_transition(ss, false);
|
||||
} else {
|
||||
ss->paused = pause;
|
||||
ss->manual = pause;
|
||||
}
|
||||
|
||||
if (pause)
|
||||
set_media_state(ss, OBS_MEDIA_STATE_PAUSED);
|
||||
else
|
||||
set_media_state(ss, OBS_MEDIA_STATE_PLAYING);
|
||||
}
|
||||
|
||||
static void ss_restart(void *data)
|
||||
|
|
@ -473,12 +509,11 @@ static void ss_restart(void *data)
|
|||
|
||||
ss->elapsed = 0.0f;
|
||||
ss->cur_item = 0;
|
||||
|
||||
obs_transition_set(ss->transition,
|
||||
ss->files.array[ss->cur_item].source);
|
||||
|
||||
ss->stop = false;
|
||||
ss->paused = false;
|
||||
do_transition(ss, false);
|
||||
|
||||
set_media_state(ss, OBS_MEDIA_STATE_PLAYING);
|
||||
}
|
||||
|
||||
static void ss_stop(void *data)
|
||||
|
|
@ -491,6 +526,8 @@ static void ss_stop(void *data)
|
|||
do_transition(ss, true);
|
||||
ss->stop = true;
|
||||
ss->paused = false;
|
||||
|
||||
set_media_state(ss, OBS_MEDIA_STATE_STOPPED);
|
||||
}
|
||||
|
||||
static void ss_next_slide(void *data)
|
||||
|
|
@ -529,8 +566,8 @@ static void play_pause_hotkey(void *data, obs_hotkey_id id,
|
|||
|
||||
struct slideshow *ss = data;
|
||||
|
||||
if (pressed && obs_source_active(ss->source))
|
||||
ss_play_pause(ss);
|
||||
if (pressed && obs_source_showing(ss->source))
|
||||
obs_source_media_play_pause(ss->source, !ss->paused);
|
||||
}
|
||||
|
||||
static void restart_hotkey(void *data, obs_hotkey_id id, obs_hotkey_t *hotkey,
|
||||
|
|
@ -541,8 +578,8 @@ static void restart_hotkey(void *data, obs_hotkey_id id, obs_hotkey_t *hotkey,
|
|||
|
||||
struct slideshow *ss = data;
|
||||
|
||||
if (pressed && obs_source_active(ss->source))
|
||||
ss_restart(ss);
|
||||
if (pressed && obs_source_showing(ss->source))
|
||||
obs_source_media_restart(ss->source);
|
||||
}
|
||||
|
||||
static void stop_hotkey(void *data, obs_hotkey_id id, obs_hotkey_t *hotkey,
|
||||
|
|
@ -553,8 +590,8 @@ static void stop_hotkey(void *data, obs_hotkey_id id, obs_hotkey_t *hotkey,
|
|||
|
||||
struct slideshow *ss = data;
|
||||
|
||||
if (pressed && obs_source_active(ss->source))
|
||||
ss_stop(ss);
|
||||
if (pressed && obs_source_showing(ss->source))
|
||||
obs_source_media_stop(ss->source);
|
||||
}
|
||||
|
||||
static void next_slide_hotkey(void *data, obs_hotkey_id id,
|
||||
|
|
@ -568,8 +605,8 @@ static void next_slide_hotkey(void *data, obs_hotkey_id id,
|
|||
if (!ss->manual)
|
||||
return;
|
||||
|
||||
if (pressed && obs_source_active(ss->source))
|
||||
ss_next_slide(ss);
|
||||
if (pressed && obs_source_showing(ss->source))
|
||||
obs_source_media_next(ss->source);
|
||||
}
|
||||
|
||||
static void previous_slide_hotkey(void *data, obs_hotkey_id id,
|
||||
|
|
@ -583,8 +620,8 @@ static void previous_slide_hotkey(void *data, obs_hotkey_id id,
|
|||
if (!ss->manual)
|
||||
return;
|
||||
|
||||
if (pressed && obs_source_active(ss->source))
|
||||
ss_previous_slide(ss);
|
||||
if (pressed && obs_source_showing(ss->source))
|
||||
obs_source_media_previous(ss->source);
|
||||
}
|
||||
|
||||
static void ss_destroy(void *data)
|
||||
|
|
@ -925,7 +962,7 @@ struct obs_source_info slideshow_info = {
|
|||
.id = "slideshow",
|
||||
.type = OBS_SOURCE_TYPE_INPUT,
|
||||
.output_flags = OBS_SOURCE_VIDEO | OBS_SOURCE_CUSTOM_DRAW |
|
||||
OBS_SOURCE_COMPOSITE,
|
||||
OBS_SOURCE_COMPOSITE | OBS_SOURCE_CONTROLLABLE_MEDIA,
|
||||
.get_name = ss_getname,
|
||||
.create = ss_create,
|
||||
.destroy = ss_destroy,
|
||||
|
|
@ -941,4 +978,10 @@ struct obs_source_info slideshow_info = {
|
|||
.get_defaults = ss_defaults,
|
||||
.get_properties = ss_properties,
|
||||
.icon_type = OBS_ICON_TYPE_SLIDESHOW,
|
||||
.media_play_pause = ss_play_pause,
|
||||
.media_restart = ss_restart,
|
||||
.media_stop = ss_stop,
|
||||
.media_next = ss_next_slide,
|
||||
.media_previous = ss_previous_slide,
|
||||
.media_get_state = ss_get_state,
|
||||
};
|
||||
|
|
|
|||
|
|
@ -30,5 +30,6 @@ target_link_libraries(linux-alsa
|
|||
libobs
|
||||
${ALSA_LIBRARY}
|
||||
)
|
||||
set_target_properties(linux-alsa PROPERTIES FOLDER "plugins")
|
||||
|
||||
install_obs_plugin_with_data(linux-alsa data)
|
||||
|
|
|
|||
|
|
@ -20,6 +20,7 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
|
|||
#include <util/bmem.h>
|
||||
#include <util/platform.h>
|
||||
#include <util/threading.h>
|
||||
#include <util/util_uint64.h>
|
||||
#include <obs-module.h>
|
||||
|
||||
#include <alsa/asoundlib.h>
|
||||
|
|
@ -562,8 +563,9 @@ void *_alsa_listen(void *attr)
|
|||
}
|
||||
|
||||
out.frames = frames;
|
||||
out.timestamp = os_gettime_ns() -
|
||||
((frames * NSEC_PER_SEC) / data->rate);
|
||||
out.timestamp =
|
||||
os_gettime_ns() -
|
||||
util_mul_div64(frames, NSEC_PER_SEC, data->rate);
|
||||
|
||||
if (!data->first_ts)
|
||||
data->first_ts = out.timestamp + STARTUP_TIMEOUT_NS;
|
||||
|
|
|
|||
2
plugins/linux-alsa/data/locale/ba-RU.ini
Normal file
2
plugins/linux-alsa/data/locale/ba-RU.ini
Normal file
|
|
@ -0,0 +1,2 @@
|
|||
Device="Яйланма"
|
||||
|
||||
3
plugins/linux-alsa/data/locale/en-GB.ini
Normal file
3
plugins/linux-alsa/data/locale/en-GB.ini
Normal file
|
|
@ -0,0 +1,3 @@
|
|||
AlsaInput="Audio Capture Device (ALSA)"
|
||||
Device="Device"
|
||||
|
||||
3
plugins/linux-alsa/data/locale/id-ID.ini
Normal file
3
plugins/linux-alsa/data/locale/id-ID.ini
Normal file
|
|
@ -0,0 +1,3 @@
|
|||
AlsaInput="Perangkat Penangkap Suara (ALSA)"
|
||||
Device="Perangkat"
|
||||
|
||||
2
plugins/linux-alsa/data/locale/ta-IN.ini
Normal file
2
plugins/linux-alsa/data/locale/ta-IN.ini
Normal file
|
|
@ -0,0 +1,2 @@
|
|||
Device="சாதனம்"
|
||||
|
||||
|
|
@ -1,3 +1,3 @@
|
|||
AlsaInput="Аудіо пристрій (ALSA)"
|
||||
AlsaInput="Пристрій записування звуку (ALSA)"
|
||||
Device="Пристрій"
|
||||
|
||||
|
|
|
|||
|
|
@ -47,5 +47,6 @@ target_link_libraries(linux-capture
|
|||
${X11_Xcomposite_LIB}
|
||||
${XCB_LIBRARIES}
|
||||
)
|
||||
set_target_properties(linux-capture PROPERTIES FOLDER "plugins")
|
||||
|
||||
install_obs_plugin_with_data(linux-capture data)
|
||||
|
|
|
|||
2
plugins/linux-capture/data/locale/az-AZ.ini
Normal file
2
plugins/linux-capture/data/locale/az-AZ.ini
Normal file
|
|
@ -0,0 +1,2 @@
|
|||
XServer="X Server"
|
||||
|
||||
3
plugins/linux-capture/data/locale/ba-RU.ini
Normal file
3
plugins/linux-capture/data/locale/ba-RU.ini
Normal file
|
|
@ -0,0 +1,3 @@
|
|||
Screen="Экран"
|
||||
XServer="X-Сервер"
|
||||
|
||||
16
plugins/linux-capture/data/locale/en-GB.ini
Normal file
16
plugins/linux-capture/data/locale/en-GB.ini
Normal file
|
|
@ -0,0 +1,16 @@
|
|||
X11SharedMemoryScreenInput="Screen Capture (XSHM)"
|
||||
Screen="Screen"
|
||||
CaptureCursor="Capture Cursor"
|
||||
AdvancedSettings="Advanced Settings"
|
||||
XServer="X Server"
|
||||
XCCapture="Window Capture (Xcomposite)"
|
||||
Window="Window"
|
||||
CropTop="Crop Top (pixels)"
|
||||
CropLeft="Crop Left (pixels)"
|
||||
CropRight="Crop Right (pixels)"
|
||||
CropBottom="Crop Bottom (pixels)"
|
||||
SwapRedBlue="Swap red and blue"
|
||||
LockX="Lock X server when capturing"
|
||||
IncludeXBorder="Include X Border"
|
||||
ExcludeAlpha="Use alpha-less texture format (Mesa workaround)"
|
||||
|
||||
|
|
@ -1,16 +1,16 @@
|
|||
X11SharedMemoryScreenInput="Ekranski ulaz (XSHM)"
|
||||
Screen="Ekran"
|
||||
CaptureCursor="Snimaj kursor"
|
||||
AdvancedSettings="Napredna podešavanja"
|
||||
Screen="Zaslon"
|
||||
CaptureCursor="Prikazuj pokazivač"
|
||||
AdvancedSettings="Napredne postavke"
|
||||
XServer="X server"
|
||||
XCCapture="Ulaz sa prozora (Xcomposite)"
|
||||
Window="Prozor"
|
||||
CropTop="Odseci odozgo (pikseli)"
|
||||
CropLeft="Odseci sa leva (pikseli)"
|
||||
CropRight="Odseci sa desna (pikseli)"
|
||||
CropBottom="Odseci odozdo (pikseli)"
|
||||
SwapRedBlue="Zameni crvenu i plavu"
|
||||
CropTop="Odreži odozgo (piksela)"
|
||||
CropLeft="Odreži slijeva (piksela)"
|
||||
CropRight="Odreži zdesna (piksela)"
|
||||
CropBottom="Odreži odozdo (piksela)"
|
||||
SwapRedBlue="Obrni crvenu i plavu"
|
||||
LockX="Zaključaj X server u toku snimanja"
|
||||
IncludeXBorder="Uključujući i X okvir"
|
||||
IncludeXBorder="Prikazuj X okvir"
|
||||
ExcludeAlpha="Koristi neprovidni format teksture (zaobilaženje Mesa problema)"
|
||||
|
||||
|
|
|
|||
16
plugins/linux-capture/data/locale/id-ID.ini
Normal file
16
plugins/linux-capture/data/locale/id-ID.ini
Normal file
|
|
@ -0,0 +1,16 @@
|
|||
X11SharedMemoryScreenInput="Tangkapan Layar (XSHM)"
|
||||
Screen="Layar"
|
||||
CaptureCursor="Tangkap Kursor"
|
||||
AdvancedSettings="Pengaturan Lanjutan"
|
||||
XServer="X Server"
|
||||
XCCapture="Tangkapan Jendela (Xcomposite)"
|
||||
Window="Jendela"
|
||||
CropTop="Potong Atas (piksel)"
|
||||
CropLeft="Potong Kiri (piksel)"
|
||||
CropRight="Potong Kanan (piksel)"
|
||||
CropBottom="Potong Bawah (piksel)"
|
||||
SwapRedBlue="Tukar merah dan biru"
|
||||
LockX="Kunci X server saat mengambil gambar"
|
||||
IncludeXBorder="Sertakan X Border"
|
||||
ExcludeAlpha="Gunakan format tekstur alpha-less (Workaround Mesa)"
|
||||
|
||||
9
plugins/linux-capture/data/locale/ta-IN.ini
Normal file
9
plugins/linux-capture/data/locale/ta-IN.ini
Normal file
|
|
@ -0,0 +1,9 @@
|
|||
Screen="காட்சிதிரை"
|
||||
AdvancedSettings="மேம்பட்ட அமைப்புகள்"
|
||||
XServer="X Server"
|
||||
Window="சாளரம்"
|
||||
CropTop="மேல் கத்தரி (பிக்சல்கள்)"
|
||||
CropLeft="இடது கத்தரி (பிக்சல்கள்)"
|
||||
CropRight="வலது கத்தரி (பிக்சல்கள்)"
|
||||
CropBottom="கீழே கத்தரி (பிக்சல்கள்)"
|
||||
|
||||
|
|
@ -1,16 +1,16 @@
|
|||
X11SharedMemoryScreenInput="Захват екрану (XSHM)"
|
||||
X11SharedMemoryScreenInput="Захоплення екрану (XSHM)"
|
||||
Screen="Екран"
|
||||
CaptureCursor="Захват курсору"
|
||||
CaptureCursor="Захоплювати курсор"
|
||||
AdvancedSettings="Розширені параметри"
|
||||
XServer="X-сервер"
|
||||
XCCapture="Захват вікна (Xcomposite)"
|
||||
XServer="X Server"
|
||||
XCCapture="Захоплення вікна (Xcomposite)"
|
||||
Window="Вікно"
|
||||
CropTop="Обрізати зверху (пікселі)"
|
||||
CropLeft="Обрізати зліва (пікселі)"
|
||||
CropRight="Обрізати зправа (пікселі)"
|
||||
CropLeft="Обрізати ліворуч (пікселі)"
|
||||
CropRight="Обрізати праворуч (пікселі)"
|
||||
CropBottom="Обрізати знизу (пікселі)"
|
||||
SwapRedBlue="Поміняти червоний і синій"
|
||||
LockX="Блокувати X-сервер під час захвату"
|
||||
IncludeXBorder="Захоплювати край X вікна"
|
||||
LockX="Блокувати X Server під час захоплення"
|
||||
IncludeXBorder="Захоплювати межі вікна"
|
||||
ExcludeAlpha="Використовувати формат текстур без альфа-каналу (для Mesa)"
|
||||
|
||||
|
|
|
|||
|
|
@ -1,9 +1,9 @@
|
|||
X11SharedMemoryScreenInput="屏幕捕获(XSHM)"
|
||||
X11SharedMemoryScreenInput="屏幕采集 (XSHM)"
|
||||
Screen="屏幕"
|
||||
CaptureCursor="捕捉光标"
|
||||
CaptureCursor="显示鼠标指针"
|
||||
AdvancedSettings="高级设置"
|
||||
XServer="X Server"
|
||||
XCCapture="窗口捕获(Xcomposite)"
|
||||
XCCapture="窗口采集 (Xcomposite)"
|
||||
Window="窗口"
|
||||
CropTop="裁剪顶部(像素)"
|
||||
CropLeft="裁剪左侧(像素)"
|
||||
|
|
|
|||
|
|
@ -49,6 +49,16 @@ struct xshm_data {
|
|||
|
||||
gs_texture_t *texture;
|
||||
|
||||
int_fast32_t cut_top;
|
||||
int_fast32_t cut_left;
|
||||
int_fast32_t cut_right;
|
||||
int_fast32_t cut_bot;
|
||||
|
||||
int_fast32_t adj_x_org;
|
||||
int_fast32_t adj_y_org;
|
||||
int_fast32_t adj_width;
|
||||
int_fast32_t adj_height;
|
||||
|
||||
bool show_cursor;
|
||||
bool use_xinerama;
|
||||
bool use_randr;
|
||||
|
|
@ -66,8 +76,8 @@ static inline void xshm_resize_texture(struct xshm_data *data)
|
|||
{
|
||||
if (data->texture)
|
||||
gs_texture_destroy(data->texture);
|
||||
data->texture = gs_texture_create(data->width, data->height, GS_BGRA, 1,
|
||||
NULL, GS_DYNAMIC);
|
||||
data->texture = gs_texture_create(data->adj_width, data->adj_height,
|
||||
GS_BGRA, 1, NULL, GS_DYNAMIC);
|
||||
}
|
||||
|
||||
/**
|
||||
|
|
@ -98,8 +108,8 @@ static bool xshm_check_extensions(xcb_connection_t *xcb)
|
|||
*/
|
||||
static int_fast32_t xshm_update_geometry(struct xshm_data *data)
|
||||
{
|
||||
int_fast32_t old_width = data->width;
|
||||
int_fast32_t old_height = data->height;
|
||||
int_fast32_t prev_width = data->adj_width;
|
||||
int_fast32_t prev_height = data->adj_height;
|
||||
|
||||
if (data->use_randr) {
|
||||
if (randr_screen_geo(data->xcb, data->screen_id, &data->x_org,
|
||||
|
|
@ -129,12 +139,36 @@ static int_fast32_t xshm_update_geometry(struct xshm_data *data)
|
|||
return -1;
|
||||
}
|
||||
|
||||
data->adj_y_org = data->y_org;
|
||||
data->adj_x_org = data->x_org;
|
||||
data->adj_height = data->height;
|
||||
data->adj_width = data->width;
|
||||
|
||||
if (data->cut_top != 0) {
|
||||
if (data->y_org > 0)
|
||||
data->adj_y_org = data->y_org + data->cut_top;
|
||||
else
|
||||
data->adj_y_org = data->cut_top;
|
||||
data->adj_height = data->adj_height - data->cut_top;
|
||||
}
|
||||
if (data->cut_left != 0) {
|
||||
if (data->x_org > 0)
|
||||
data->adj_x_org = data->x_org + data->cut_left;
|
||||
else
|
||||
data->adj_x_org = data->cut_left;
|
||||
data->adj_width = data->adj_width - data->cut_left;
|
||||
}
|
||||
if (data->cut_right != 0)
|
||||
data->adj_width = data->adj_width - data->cut_right;
|
||||
if (data->cut_bot != 0)
|
||||
data->adj_height = data->adj_height - data->cut_bot;
|
||||
|
||||
blog(LOG_INFO,
|
||||
"Geometry %" PRIdFAST32 "x%" PRIdFAST32 " @ %" PRIdFAST32
|
||||
",%" PRIdFAST32,
|
||||
data->width, data->height, data->x_org, data->y_org);
|
||||
|
||||
if (old_width == data->width && old_height == data->height)
|
||||
if (prev_width == data->adj_width && prev_height == data->adj_height)
|
||||
return 0;
|
||||
|
||||
return 1;
|
||||
|
|
@ -208,14 +242,15 @@ static void xshm_capture_start(struct xshm_data *data)
|
|||
goto fail;
|
||||
}
|
||||
|
||||
data->xshm = xshm_xcb_attach(data->xcb, data->width, data->height);
|
||||
data->xshm =
|
||||
xshm_xcb_attach(data->xcb, data->adj_width, data->adj_height);
|
||||
if (!data->xshm) {
|
||||
blog(LOG_ERROR, "failed to attach shm !");
|
||||
goto fail;
|
||||
}
|
||||
|
||||
data->cursor = xcb_xcursor_init(data->xcb);
|
||||
xcb_xcursor_offset(data->cursor, data->x_org, data->y_org);
|
||||
xcb_xcursor_offset(data->cursor, data->adj_x_org, data->adj_y_org);
|
||||
|
||||
obs_enter_graphics();
|
||||
|
||||
|
|
@ -242,6 +277,11 @@ static void xshm_update(void *vptr, obs_data_t *settings)
|
|||
data->advanced = obs_data_get_bool(settings, "advanced");
|
||||
data->server = bstrdup(obs_data_get_string(settings, "server"));
|
||||
|
||||
data->cut_top = obs_data_get_int(settings, "cut_top");
|
||||
data->cut_left = obs_data_get_int(settings, "cut_left");
|
||||
data->cut_right = obs_data_get_int(settings, "cut_right");
|
||||
data->cut_bot = obs_data_get_int(settings, "cut_bot");
|
||||
|
||||
xshm_capture_start(data);
|
||||
}
|
||||
|
||||
|
|
@ -253,6 +293,10 @@ static void xshm_defaults(obs_data_t *defaults)
|
|||
obs_data_set_default_int(defaults, "screen", 0);
|
||||
obs_data_set_default_bool(defaults, "show_cursor", true);
|
||||
obs_data_set_default_bool(defaults, "advanced", false);
|
||||
obs_data_set_default_int(defaults, "cut_top", 0);
|
||||
obs_data_set_default_int(defaults, "cut_left", 0);
|
||||
obs_data_set_default_int(defaults, "cut_right", 0);
|
||||
obs_data_set_default_int(defaults, "cut_bot", 0);
|
||||
}
|
||||
|
||||
/**
|
||||
|
|
@ -371,6 +415,16 @@ static obs_properties_t *xshm_properties(void *vptr)
|
|||
obs_module_text("CaptureCursor"));
|
||||
obs_property_t *advanced = obs_properties_add_bool(
|
||||
props, "advanced", obs_module_text("AdvancedSettings"));
|
||||
|
||||
obs_properties_add_int(props, "cut_top", obs_module_text("CropTop"),
|
||||
-4096, 4096, 1);
|
||||
obs_properties_add_int(props, "cut_left", obs_module_text("CropLeft"),
|
||||
-4096, 4096, 1);
|
||||
obs_properties_add_int(props, "cut_right", obs_module_text("CropRight"),
|
||||
0, 4096, 1);
|
||||
obs_properties_add_int(props, "cut_bot", obs_module_text("CropBottom"),
|
||||
0, 4096, 1);
|
||||
|
||||
obs_property_t *server = obs_properties_add_text(
|
||||
props, "server", obs_module_text("XServer"), OBS_TEXT_DEFAULT);
|
||||
|
||||
|
|
@ -432,9 +486,9 @@ static void xshm_video_tick(void *vptr, float seconds)
|
|||
xcb_xfixes_get_cursor_image_reply_t *cur_r;
|
||||
|
||||
img_c = xcb_shm_get_image_unchecked(data->xcb, data->xcb_screen->root,
|
||||
data->x_org, data->y_org,
|
||||
data->width, data->height, ~0,
|
||||
XCB_IMAGE_FORMAT_Z_PIXMAP,
|
||||
data->adj_x_org, data->adj_y_org,
|
||||
data->adj_width, data->adj_height,
|
||||
~0, XCB_IMAGE_FORMAT_Z_PIXMAP,
|
||||
data->xshm->seg, 0);
|
||||
cur_c = xcb_xfixes_get_cursor_image_unchecked(data->xcb);
|
||||
|
||||
|
|
@ -447,7 +501,7 @@ static void xshm_video_tick(void *vptr, float seconds)
|
|||
obs_enter_graphics();
|
||||
|
||||
gs_texture_set_image(data->texture, (void *)data->xshm->data,
|
||||
data->width * 4, false);
|
||||
data->adj_width * 4, false);
|
||||
xcb_xcursor_update(data->cursor, cur_r);
|
||||
|
||||
obs_leave_graphics();
|
||||
|
|
@ -491,7 +545,7 @@ static void xshm_video_render(void *vptr, gs_effect_t *effect)
|
|||
static uint32_t xshm_getwidth(void *vptr)
|
||||
{
|
||||
XSHM_DATA(vptr);
|
||||
return data->width;
|
||||
return data->adj_width;
|
||||
}
|
||||
|
||||
/**
|
||||
|
|
@ -500,7 +554,7 @@ static uint32_t xshm_getwidth(void *vptr)
|
|||
static uint32_t xshm_getheight(void *vptr)
|
||||
{
|
||||
XSHM_DATA(vptr);
|
||||
return data->height;
|
||||
return data->adj_height;
|
||||
}
|
||||
|
||||
struct obs_source_info xshm_input = {
|
||||
|
|
|
|||
|
|
@ -31,5 +31,6 @@ target_link_libraries(linux-jack
|
|||
libobs
|
||||
${JACK_LIBRARIES}
|
||||
)
|
||||
set_target_properties(linux-jack PROPERTIES FOLDER "plugins")
|
||||
|
||||
install_obs_plugin_with_data(linux-jack data)
|
||||
|
|
|
|||
3
plugins/linux-jack/data/locale/ba-RU.ini
Normal file
3
plugins/linux-jack/data/locale/ba-RU.ini
Normal file
|
|
@ -0,0 +1,3 @@
|
|||
StartJACKServer="JACK серверын башларға"
|
||||
Channels="Канал һаны"
|
||||
|
||||
4
plugins/linux-jack/data/locale/en-GB.ini
Normal file
4
plugins/linux-jack/data/locale/en-GB.ini
Normal file
|
|
@ -0,0 +1,4 @@
|
|||
StartJACKServer="Start JACK Server"
|
||||
Channels="Number of Channels"
|
||||
JACKInput="JACK Input Client"
|
||||
|
||||
4
plugins/linux-jack/data/locale/id-ID.ini
Normal file
4
plugins/linux-jack/data/locale/id-ID.ini
Normal file
|
|
@ -0,0 +1,4 @@
|
|||
StartJACKServer="Jalankan Server JACK"
|
||||
Channels="Jumlah Saluran"
|
||||
JACKInput="Klien Input JACK"
|
||||
|
||||
|
|
@ -1,4 +1,4 @@
|
|||
StartJACKServer="Pornește serverul JACK"
|
||||
Channels="Număr de canale"
|
||||
JACKInput="Client de intrare JACK"
|
||||
JACKInput="Client de input JACK"
|
||||
|
||||
|
|
|
|||
|
|
@ -1,4 +1,4 @@
|
|||
StartJACKServer="Запустити JACK-сервер"
|
||||
StartJACKServer="Запустити сервер JACK"
|
||||
Channels="Кількість каналів"
|
||||
JACKInput="Клієнт JACK вводу"
|
||||
JACKInput="Клієнт вводу JACK"
|
||||
|
||||
|
|
|
|||
|
|
@ -31,5 +31,6 @@ target_link_libraries(linux-pulseaudio
|
|||
libobs
|
||||
${PULSEAUDIO_LIBRARY}
|
||||
)
|
||||
set_target_properties(linux-pulseaudio PROPERTIES FOLDER "plugins")
|
||||
|
||||
install_obs_plugin_with_data(linux-pulseaudio data)
|
||||
|
|
|
|||
2
plugins/linux-pulseaudio/data/locale/ba-RU.ini
Normal file
2
plugins/linux-pulseaudio/data/locale/ba-RU.ini
Normal file
|
|
@ -0,0 +1,2 @@
|
|||
Device="Яйланма"
|
||||
|
||||
4
plugins/linux-pulseaudio/data/locale/en-GB.ini
Normal file
4
plugins/linux-pulseaudio/data/locale/en-GB.ini
Normal file
|
|
@ -0,0 +1,4 @@
|
|||
PulseInput="Audio Input Capture (PulseAudio)"
|
||||
PulseOutput="Audio Output Capture (PulseAudio)"
|
||||
Device="Device"
|
||||
|
||||
4
plugins/linux-pulseaudio/data/locale/id-ID.ini
Normal file
4
plugins/linux-pulseaudio/data/locale/id-ID.ini
Normal file
|
|
@ -0,0 +1,4 @@
|
|||
PulseInput="Tangkapan Input Audio (PulseAudio)"
|
||||
PulseOutput="Tangkapan Output Audio (PulseAudio)"
|
||||
Device="Perangkat"
|
||||
|
||||
|
|
@ -1,4 +1,4 @@
|
|||
PulseInput="Captură de intrare audio (PulseAudio)"
|
||||
PulseOutput="Captură de ieșire audio (PulseAudio)"
|
||||
PulseInput="Captură de input audio (PulseAudio)"
|
||||
PulseOutput="Captură de output audio (PulseAudio)"
|
||||
Device="Dispozitiv"
|
||||
|
||||
|
|
|
|||
2
plugins/linux-pulseaudio/data/locale/ta-IN.ini
Normal file
2
plugins/linux-pulseaudio/data/locale/ta-IN.ini
Normal file
|
|
@ -0,0 +1,2 @@
|
|||
Device="சாதனம்"
|
||||
|
||||
|
|
@ -1,4 +1,4 @@
|
|||
PulseInput="Захват Аудіо входу (PulseAudio)"
|
||||
PulseOutput="Захват Аудіо виводу (PulseAudio)"
|
||||
PulseInput="Захоплення аудіовходу (PulseAudio)"
|
||||
PulseOutput="Захоплення аудіовиводу (PulseAudio)"
|
||||
Device="Пристрій"
|
||||
|
||||
|
|
|
|||
|
|
@ -17,6 +17,7 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
|
|||
|
||||
#include <util/platform.h>
|
||||
#include <util/bmem.h>
|
||||
#include <util/util_uint64.h>
|
||||
#include <obs-module.h>
|
||||
|
||||
#include "pulse-wrapper.h"
|
||||
|
|
@ -161,7 +162,7 @@ static pa_channel_map pulse_channel_map(enum speaker_layout layout)
|
|||
|
||||
static inline uint64_t samples_to_ns(size_t frames, uint_fast32_t rate)
|
||||
{
|
||||
return frames * NSEC_PER_SEC / rate;
|
||||
return util_mul_div64(frames, NSEC_PER_SEC, rate);
|
||||
}
|
||||
|
||||
static inline uint64_t get_sample_time(size_t frames, uint_fast32_t rate)
|
||||
|
|
|
|||
|
|
@ -5,23 +5,28 @@ if(DISABLE_V4L2)
|
|||
return()
|
||||
endif()
|
||||
|
||||
find_package(Libv4l2)
|
||||
find_package(LibUDev QUIET)
|
||||
|
||||
if(NOT LIBV4L2_FOUND AND ENABLE_V4L2)
|
||||
message(FATAL_ERROR "libv4l2 not found bit plugin set as enabled")
|
||||
elseif(NOT LIBV4L2_FOUND)
|
||||
message(STATUS "libv4l2 not found, disabling v4l2 plugin")
|
||||
return()
|
||||
if(ENABLE_V4L2)
|
||||
find_package(Libv4l2 REQUIRED)
|
||||
else()
|
||||
find_package(Libv4l2)
|
||||
if(NOT LIBV4L2_FOUND)
|
||||
message(STATUS "libv4l2 not found, disabling v4l2 plugin")
|
||||
return()
|
||||
endif()
|
||||
endif()
|
||||
|
||||
if(NOT UDEV_FOUND OR DISABLE_UDEV)
|
||||
message(STATUS "udev disabled for v4l2 plugin")
|
||||
else()
|
||||
set(linux-v4l2-udev_SOURCES
|
||||
v4l2-udev.c
|
||||
)
|
||||
if(DISABLE_UDEV)
|
||||
add_definitions(-DHAVE_UDEV)
|
||||
else()
|
||||
find_package(UDev)
|
||||
if(NOT UDEV_FOUND)
|
||||
message(STATUS "udev disabled for v4l2 plugin")
|
||||
else()
|
||||
set(linux-v4l2-udev_SOURCES
|
||||
v4l2-udev.c
|
||||
)
|
||||
endif()
|
||||
endif()
|
||||
|
||||
include_directories(
|
||||
|
|
@ -45,5 +50,6 @@ target_link_libraries(linux-v4l2
|
|||
${LIBV4L2_LIBRARIES}
|
||||
${UDEV_LIBRARIES}
|
||||
)
|
||||
set_target_properties(linux-v4l2 PROPERTIES FOLDER "plugins")
|
||||
|
||||
install_obs_plugin_with_data(linux-v4l2 data)
|
||||
|
|
|
|||
|
|
@ -6,7 +6,11 @@ VideoStandard="معيار الفيديو"
|
|||
DVTiming="توقيت DV"
|
||||
Resolution="الأبعاد"
|
||||
FrameRate="الإطار"
|
||||
LeaveUnchanged="اتركها دون تغيير"
|
||||
UseBuffering="استخدم التخزين المؤقت"
|
||||
ColorRange="نطاق اللون"
|
||||
ColorRange.Default="الافتراضي"
|
||||
ColorRange.Partial="جزئي"
|
||||
ColorRange.Full="كامل"
|
||||
CameraCtrls="التحكم في الكاميرا"
|
||||
|
||||
|
|
|
|||
8
plugins/linux-v4l2/data/locale/ba-RU.ini
Normal file
8
plugins/linux-v4l2/data/locale/ba-RU.ini
Normal file
|
|
@ -0,0 +1,8 @@
|
|||
Device="Яйланма"
|
||||
Input="Индереү"
|
||||
VideoFormat="Видео форматы"
|
||||
Resolution="Асыҡлыҡ"
|
||||
FrameRate="Кадрлар йышлығы"
|
||||
ColorRange.Default="Ғәҙәти"
|
||||
ColorRange.Full="Тулы"
|
||||
|
||||
|
|
@ -12,4 +12,5 @@ ColorRange="Gamma de colors"
|
|||
ColorRange.Default="Per defecte"
|
||||
ColorRange.Partial="Parcial"
|
||||
ColorRange.Full="Complet"
|
||||
CameraCtrls="Controls de la càmera"
|
||||
|
||||
|
|
|
|||
|
|
@ -12,4 +12,5 @@ ColorRange="Rozsah barev"
|
|||
ColorRange.Default="Výchozí"
|
||||
ColorRange.Partial="Částečný"
|
||||
ColorRange.Full="Plný"
|
||||
CameraCtrls="Ovládání kamery"
|
||||
|
||||
|
|
|
|||
|
|
@ -12,4 +12,5 @@ ColorRange="Farveområde"
|
|||
ColorRange.Default="Standard"
|
||||
ColorRange.Partial="Delvist"
|
||||
ColorRange.Full="Fuldt"
|
||||
CameraCtrls="Kamerakontroller"
|
||||
|
||||
|
|
|
|||
|
|
@ -12,4 +12,5 @@ ColorRange="Farbbereich"
|
|||
ColorRange.Default="Standard"
|
||||
ColorRange.Partial="Begrenzt"
|
||||
ColorRange.Full="Voll"
|
||||
CameraCtrls="Kamerasteuerung"
|
||||
|
||||
|
|
|
|||
16
plugins/linux-v4l2/data/locale/en-GB.ini
Normal file
16
plugins/linux-v4l2/data/locale/en-GB.ini
Normal file
|
|
@ -0,0 +1,16 @@
|
|||
V4L2Input="Video Capture Device (V4L2)"
|
||||
Device="Device"
|
||||
Input="Input"
|
||||
VideoFormat="Video Format"
|
||||
VideoStandard="Video Standard"
|
||||
DVTiming="DV Timing"
|
||||
Resolution="Resolution"
|
||||
FrameRate="Frame Rate"
|
||||
LeaveUnchanged="Leave Unchanged"
|
||||
UseBuffering="Use Buffering"
|
||||
ColorRange="Colour Range"
|
||||
ColorRange.Default="Default"
|
||||
ColorRange.Partial="Partial"
|
||||
ColorRange.Full="Full"
|
||||
CameraCtrls="Camera Controls"
|
||||
|
||||
|
|
@ -12,3 +12,4 @@ ColorRange="Color Range"
|
|||
ColorRange.Default="Default"
|
||||
ColorRange.Partial="Partial"
|
||||
ColorRange.Full="Full"
|
||||
CameraCtrls="Camera Controls"
|
||||
|
|
|
|||
|
|
@ -12,4 +12,5 @@ ColorRange="Gama de Colores"
|
|||
ColorRange.Default="Predeterminado"
|
||||
ColorRange.Partial="Parcial"
|
||||
ColorRange.Full="Completo"
|
||||
CameraCtrls="Controles de Cámara"
|
||||
|
||||
|
|
|
|||
|
|
@ -12,4 +12,5 @@ ColorRange="Värialue"
|
|||
ColorRange.Default="Oletus"
|
||||
ColorRange.Partial="Osittainen"
|
||||
ColorRange.Full="Täysi"
|
||||
CameraCtrls="Kameran asetukset"
|
||||
|
||||
|
|
|
|||
|
|
@ -8,4 +8,9 @@ Resolution="Resolution"
|
|||
FrameRate="Frame rate"
|
||||
LeaveUnchanged="Mag-iwan ng hindi nabago"
|
||||
UseBuffering="Gamitin ang Buffering"
|
||||
ColorRange="Saklaw ng Kulay"
|
||||
ColorRange.Default="Kawalan"
|
||||
ColorRange.Partial="Partial"
|
||||
ColorRange.Full="Puno"
|
||||
CameraCtrls="Kontrol ng Kamera"
|
||||
|
||||
|
|
|
|||
|
|
@ -12,4 +12,5 @@ ColorRange="Gamme de couleurs"
|
|||
ColorRange.Default="Par défaut"
|
||||
ColorRange.Partial="Partielle"
|
||||
ColorRange.Full="Complète"
|
||||
CameraCtrls="Contrôles de la caméra"
|
||||
|
||||
|
|
|
|||
|
|
@ -12,4 +12,5 @@ ColorRange="Gama de cores"
|
|||
ColorRange.Default="Predeterminado"
|
||||
ColorRange.Partial="Parcial"
|
||||
ColorRange.Full="Total"
|
||||
CameraCtrls="Controis da cámara"
|
||||
|
||||
|
|
|
|||
|
|
@ -8,4 +8,9 @@ Resolution="רזולוציה"
|
|||
FrameRate="קצב פריימים"
|
||||
LeaveUnchanged="ללא שינוי"
|
||||
UseBuffering="השתמש באוגר"
|
||||
ColorRange="טווח צבע"
|
||||
ColorRange.Default="ברירת־מחדל"
|
||||
ColorRange.Partial="חלקי"
|
||||
ColorRange.Full="מלא"
|
||||
CameraCtrls="פקדי מצלמה"
|
||||
|
||||
|
|
|
|||
|
|
@ -12,4 +12,5 @@ ColorRange="Színtartomány"
|
|||
ColorRange.Default="Alapértelmezett"
|
||||
ColorRange.Partial="Részleges"
|
||||
ColorRange.Full="Teljes"
|
||||
CameraCtrls="Kamera vezérlők"
|
||||
|
||||
|
|
|
|||
16
plugins/linux-v4l2/data/locale/id-ID.ini
Normal file
16
plugins/linux-v4l2/data/locale/id-ID.ini
Normal file
|
|
@ -0,0 +1,16 @@
|
|||
V4L2Input="Perangkat Penangkap Video (V4L2)"
|
||||
Device="Perangkat"
|
||||
Input="Input"
|
||||
VideoFormat="Format Video"
|
||||
VideoStandard="Standar Video"
|
||||
DVTiming="Timing DV"
|
||||
Resolution="Resolusi"
|
||||
FrameRate="Frame Rate"
|
||||
LeaveUnchanged="Biarkan tanpa perubahan"
|
||||
UseBuffering="Gunakan Buffering"
|
||||
ColorRange="Rentang Warna"
|
||||
ColorRange.Default="Default"
|
||||
ColorRange.Partial="Sebagian"
|
||||
ColorRange.Full="Penuh"
|
||||
CameraCtrls="Kontrol Kamera"
|
||||
|
||||
Some files were not shown because too many files have changed in this diff Show more
Loading…
Add table
Add a link
Reference in a new issue