Imported Upstream version 0.14.2+dfsg1
This commit is contained in:
parent
fb3990e9e5
commit
41a01dbf05
529 changed files with 25112 additions and 2336 deletions
|
|
@ -1,6 +1,11 @@
|
|||
Bitrate="معدل النقل"
|
||||
CustomBufsize="استخدام حجم Buffer مخصص"
|
||||
BufferSize="حجم المخزن المؤقت"
|
||||
KeyframeIntervalSec="الفاصل الزمني لـKeyframe (ثانية, 0=تلقائي)"
|
||||
CPUPreset="إعداد مسبق لاستخدام CPU (الأعلى = CPU أقل)"
|
||||
Profile="الملف الشخصي"
|
||||
Tune="لحن"
|
||||
None="(بلا)"
|
||||
EncoderOptions="خيارات x264 (مفصولة بمسافة)"
|
||||
VFR="معدل إطارات متغيّر (VFR)"
|
||||
|
||||
|
|
|
|||
|
|
@ -1,7 +1,7 @@
|
|||
Bitrate="Taxa de bits"
|
||||
CustomBufsize="Utilitza una mida de memòria intermèdia personalitzada"
|
||||
BufferSize="Mida de la memòria intermèdia"
|
||||
UseCBR="Usa CBR"
|
||||
RateControl="Control de freqüència"
|
||||
CRF="CRF"
|
||||
KeyframeIntervalSec="Interval de fotograma clau (en segons, 0 = automàtic)"
|
||||
CPUPreset="Preconfiguració d'ús de la CPU (més alt = menys CPU)"
|
||||
|
|
|
|||
|
|
@ -1,7 +1,7 @@
|
|||
Bitrate="Bitrate"
|
||||
CustomBufsize="Použít vlastní velikost vyrovnávací paměti"
|
||||
BufferSize="Velikost vyrovnávací paměti"
|
||||
UseCBR="Použít CBR"
|
||||
RateControl="Řízení toku"
|
||||
CRF="CRF"
|
||||
KeyframeIntervalSec="Interval klíčových snímků (vteřiny, 0=auto)"
|
||||
CPUPreset="Předvolba využití CPU (vyšší = méně CPU)"
|
||||
|
|
|
|||
|
|
@ -1,11 +1,12 @@
|
|||
Bitrate="Bitrate"
|
||||
CustomBufsize="Brug brugerdefineret bufferstørrelse"
|
||||
BufferSize="Bufferstørrelsen"
|
||||
UseCBR="Brug CBR"
|
||||
CRF="CRF"
|
||||
KeyframeIntervalSec="Keyframe Interval (sekunder, 0 = auto)"
|
||||
KeyframeIntervalSec="Keyframe interval (sekunder, 0 = auto)"
|
||||
CPUPreset="CPU forbrug indstilling (højere = mindre CPU)"
|
||||
Profile="Profil"
|
||||
Tune="Stil ind"
|
||||
None="(Ingen)"
|
||||
EncoderOptions="x264 indstillinger (adskilt af mellemrum)"
|
||||
VFR="Variable framerate (VFR)"
|
||||
|
||||
|
|
|
|||
|
|
@ -1,7 +1,7 @@
|
|||
Bitrate="Bitrate"
|
||||
CustomBufsize="Verwende benutzerdefinierte Puffergröße"
|
||||
BufferSize="Puffergröße"
|
||||
UseCBR="Benutze CBR"
|
||||
RateControl="Qualitäts Regulierungsmethode"
|
||||
CRF="CRF"
|
||||
KeyframeIntervalSec="Keyframeintervall (Sekunden, 0=auto)"
|
||||
CPUPreset="Prozessorauslastung-Voreinstellung (höher = weniger CPU Auslastung)"
|
||||
|
|
|
|||
|
|
@ -1,7 +1,6 @@
|
|||
Bitrate="Ρυθμός μετάδοσης bit"
|
||||
CustomBufsize="Χρήση Προσαρμοσμένου Μεγέθους Buffer"
|
||||
BufferSize="Μέγεθος buffer"
|
||||
UseCBR="Χρήση CBR"
|
||||
CRF="CRF"
|
||||
KeyframeIntervalSec="Συχνότητα Καρέ-Κλειδιού (δευτερόλεπτα, 0=αυτόματο)"
|
||||
CPUPreset="Προφίλ Χρήσης CPU (υψηλότερο = λιγότερη CPU)"
|
||||
|
|
@ -9,4 +8,5 @@ Profile="Προφίλ"
|
|||
Tune="Βελτιστοποίηση"
|
||||
None="(Κανένα)"
|
||||
EncoderOptions="Επιλογές x264 (διαχωρισμένες από κενό)"
|
||||
VFR="Μεταβλητή ταχύτητα καρέ (VFR)"
|
||||
|
||||
|
|
|
|||
|
|
@ -1,7 +1,7 @@
|
|||
Bitrate="Bitrate"
|
||||
CustomBufsize="Use Custom Buffer Size"
|
||||
BufferSize="Buffer Size"
|
||||
UseCBR="Use CBR"
|
||||
RateControl="Rate Control"
|
||||
CRF="CRF"
|
||||
KeyframeIntervalSec="Keyframe Interval (seconds, 0=auto)"
|
||||
CPUPreset="CPU Usage Preset (higher = less CPU)"
|
||||
|
|
|
|||
|
|
@ -1,7 +1,7 @@
|
|||
Bitrate="Tasa de bits"
|
||||
CustomBufsize="Usar tamaño de caché personalizado"
|
||||
BufferSize="Tamaño de la memoria intermedia"
|
||||
UseCBR="Usar CBR"
|
||||
RateControl="Control de la frecuencia"
|
||||
CRF="CRF"
|
||||
KeyframeIntervalSec="Intervalo de fotogramas clave (segundos, 0 = auto)"
|
||||
CPUPreset="Perfíl de uso de CPU (superior = menos CPU)"
|
||||
|
|
|
|||
|
|
@ -1,13 +1,13 @@
|
|||
Bitrate="Bitneurria"
|
||||
CustomBufsize="Erabili Norbere Buffer Neurria"
|
||||
BufferSize="Buffer Neurria"
|
||||
UseCBR="Erabili BNG"
|
||||
CRF="CRF"
|
||||
KeyframeIntervalSec="Giltzaframe Tartea (segundu, 0=berez)"
|
||||
CPUPreset="CPU Erabilpen Aurrezarpena (handiagoa = CPU gutxiago)"
|
||||
Bitrate="Bit-tasa"
|
||||
CustomBufsize="Erabili buffer tamaina pertsonalizatua"
|
||||
BufferSize="Buffer tamaina"
|
||||
RateControl="Tasaren kontrola"
|
||||
CRF="Tasa-faktore konstantea"
|
||||
KeyframeIntervalSec="Gako-fotograma tartea (segundo, 0=auto)"
|
||||
CPUPreset="PUZ erabilera aurrezarrita (handiagoa = PUZ gutxiago)"
|
||||
Profile="Profila"
|
||||
Tune="Sintonizatu"
|
||||
None="(Bat ere ez)"
|
||||
EncoderOptions="x264 Aukerak (tarte batez bananduta)"
|
||||
VFR="Frameneurri Aldakorra (VFR)"
|
||||
EncoderOptions="x264 aukerak (tarte batez bananduta)"
|
||||
VFR="Fotograma-tasa aldakorra (VFR)"
|
||||
|
||||
|
|
|
|||
|
|
@ -1,7 +1,7 @@
|
|||
Bitrate="Bitrate"
|
||||
CustomBufsize="Käytä valinnaista puskurin kokoa"
|
||||
BufferSize="Puskurin koko"
|
||||
UseCBR="Käytä CBR"
|
||||
RateControl="Nopeudensäädin"
|
||||
CRF="CRF"
|
||||
KeyframeIntervalSec="Keyframe-väli (sec, 0=auto)"
|
||||
CPUPreset="CPU:n käyttö (korkeampi vaatii enemmän tehoa)"
|
||||
|
|
|
|||
|
|
@ -1,7 +1,7 @@
|
|||
Bitrate="Débit"
|
||||
CustomBufsize="Utiliser une taille de buffer personnalisée"
|
||||
BufferSize="Taille du Tampon"
|
||||
UseCBR="Utiliser CBR"
|
||||
BufferSize="Taille du tampon"
|
||||
RateControl="Contrôle du débit"
|
||||
CRF="CRF"
|
||||
KeyframeIntervalSec="Intervalle d'image-clé (en secondes, 0 = auto)"
|
||||
CPUPreset="Réglages prédéfinis du CPU (élevé = charge CPU faible)"
|
||||
|
|
|
|||
|
|
@ -1,7 +1,6 @@
|
|||
Bitrate="Velocidade de bits"
|
||||
CustomBufsize="Utilizar tamaño da caché personalizado"
|
||||
BufferSize="Tamaño do búfer"
|
||||
UseCBR="Utilizar CBR"
|
||||
CRF="CRF"
|
||||
KeyframeIntervalSec="Intervalo de fotogramas chave (segundos, 0 = auto)"
|
||||
CPUPreset="Uso predefinido da CPU (superior = menos CPU)"
|
||||
|
|
@ -9,4 +8,5 @@ Profile="Perfil"
|
|||
Tune="Sintonizar"
|
||||
None="(Ningún)"
|
||||
EncoderOptions="Opcións x264 (separadas por un espazo)"
|
||||
VFR="Velocidade de fotogramas variable (VFR)"
|
||||
|
||||
|
|
|
|||
12
plugins/obs-x264/data/locale/he-IL.ini
Normal file
12
plugins/obs-x264/data/locale/he-IL.ini
Normal file
|
|
@ -0,0 +1,12 @@
|
|||
Bitrate="קצב ביטים"
|
||||
CustomBufsize="השתמש בגודל אוגר מותאם אישית"
|
||||
BufferSize="גודל אוגר"
|
||||
CRF="קבוע פקטור קצב (CRF)"
|
||||
KeyframeIntervalSec="מרווח ערך ה keyframe בשניות (0=אוטומטי)"
|
||||
CPUPreset="ערך שימוש במעבד (גבוה יותר = פחות מעבד)"
|
||||
Profile="פרופיל"
|
||||
Tune="כיוון"
|
||||
None="(ללא)"
|
||||
EncoderOptions="אפשרויות x264 (מופרדות באמצעות רווח)"
|
||||
VFR="קצב פריימים משתנה (VFR)"
|
||||
|
||||
|
|
@ -1,7 +1,6 @@
|
|||
Bitrate="Protok"
|
||||
CustomBufsize="Koristi specifičnu veličinu bafera"
|
||||
BufferSize="Veličina buffer-a"
|
||||
UseCBR="Koristi CBR"
|
||||
CRF="CRF"
|
||||
KeyframeIntervalSec="Keyframe interval (sekunde, 0=automatski)"
|
||||
CPUPreset="Koristi CPU šablon (veće = manje CPU-a)"
|
||||
|
|
|
|||
|
|
@ -1,13 +1,13 @@
|
|||
Bitrate="Bitráta"
|
||||
CustomBufsize="Egyéni pufferméret használata"
|
||||
BufferSize="Bufferméret"
|
||||
UseCBR="CBR Használata"
|
||||
BufferSize="Pufferméret"
|
||||
RateControl="Sebesség Vezérlés"
|
||||
CRF="CRF"
|
||||
KeyframeIntervalSec="Kulcsképkocka Időköze (másodperc, 0=auto)"
|
||||
CPUPreset="CPU Készlet (magasabb = kevesebb CPU igény)"
|
||||
KeyframeIntervalSec="Kulcsképkocka időköze (másodperc, 0=auto)"
|
||||
CPUPreset="CPU készlet (magasabb = kevesebb CPU igény)"
|
||||
Profile="Profil"
|
||||
Tune="Hangolás"
|
||||
None="(Nincs)"
|
||||
EncoderOptions="x264 Opciók (szóközzel elválasztva)"
|
||||
VFR="Változó Képkockasebesség (VFR)"
|
||||
VFR="Változó képkockasebesség (VFR)"
|
||||
|
||||
|
|
|
|||
|
|
@ -1,7 +1,6 @@
|
|||
Bitrate="Bitrate"
|
||||
CustomBufsize="Usa dimensione personalizzata del buffer"
|
||||
BufferSize="Grandezza buffer"
|
||||
UseCBR="Usa CBR"
|
||||
CRF="CRF"
|
||||
KeyframeIntervalSec="Intervallo keyframe (secondi, 0=auto)"
|
||||
CPUPreset="Preset di utilizzo della CPU (superiore = meno CPU)"
|
||||
|
|
|
|||
|
|
@ -1,7 +1,7 @@
|
|||
Bitrate="ビットレート"
|
||||
CustomBufsize="特定バッファサイズを使用"
|
||||
BufferSize="バッファサイズ"
|
||||
UseCBR="CBRを使用する"
|
||||
RateControl="レート制御"
|
||||
CRF="CRF"
|
||||
KeyframeIntervalSec="キーフレーム間隔 (秒, 0=自動)"
|
||||
CPUPreset="CPU使用のプリセット (高い = CPU使用低い)"
|
||||
|
|
@ -9,5 +9,5 @@ Profile="プロファイル"
|
|||
Tune="チューン"
|
||||
None="(なし)"
|
||||
EncoderOptions="x264 オプション (スペースで区切る)"
|
||||
VFR="可変フレームレート(VFR)"
|
||||
VFR="可変フレームレート (VFR)"
|
||||
|
||||
|
|
|
|||
|
|
@ -1,7 +1,7 @@
|
|||
Bitrate="비트레이트"
|
||||
CustomBufsize="사용자 임의 버퍼 크기 설정"
|
||||
BufferSize="버퍼 크기"
|
||||
UseCBR="CBR 사용"
|
||||
RateControl="데이터율 제어"
|
||||
CRF="CRF"
|
||||
KeyframeIntervalSec="키프레임 간격 (초 단위, 0=자동)"
|
||||
CPUPreset="CPU 사용량 사전설정 (높음 = 적은 CPU 부담)"
|
||||
|
|
|
|||
|
|
@ -1,7 +1,6 @@
|
|||
Bitrate="Bitrate"
|
||||
CustomBufsize="Bruk egendefinert bufferstørrelse"
|
||||
BufferSize="Buffer størrelse"
|
||||
UseCBR="Bruk CBR"
|
||||
CRF="CRF"
|
||||
KeyframeIntervalSec="Nøkkelbildeintervall (sekunder, 0 = automatisk)"
|
||||
CPUPreset="Forhåndsinstilling for prosessorbruk (raskere betyr mindre belastning)"
|
||||
|
|
|
|||
|
|
@ -1,7 +1,7 @@
|
|||
Bitrate="Bitrate"
|
||||
CustomBufsize="Aangepaste buffergrootte gebruiken"
|
||||
BufferSize="Buffergrootte"
|
||||
UseCBR="CBR Gebruiken"
|
||||
RateControl="Rate Control"
|
||||
CRF="CRF"
|
||||
KeyframeIntervalSec="Tijd tussen keyframes (seconden, 0=auto)"
|
||||
CPUPreset="CPU-gebruik instelling (hoger = minder CPU)"
|
||||
|
|
|
|||
|
|
@ -1,7 +1,6 @@
|
|||
Bitrate="Przepływność bitowa"
|
||||
CustomBufsize="Użyj własnego rozmiaru bufora"
|
||||
BufferSize="Rozmiar bufora"
|
||||
UseCBR="Użyj CBR (stały bitrate)"
|
||||
CRF="CRF"
|
||||
KeyframeIntervalSec="Interwał klatek kluczowych (sekundy, 0 - auto)"
|
||||
CPUPreset="Ustawienie obciążenia CPU (wyższe = mniej CPU)"
|
||||
|
|
|
|||
|
|
@ -1,7 +1,6 @@
|
|||
Bitrate="Taxa de Bits"
|
||||
CustomBufsize="Utilizar tamanho do buffer personalizado"
|
||||
BufferSize="Tamanho do Buffer"
|
||||
UseCBR="Utilizar CBR"
|
||||
CRF="CRF"
|
||||
KeyframeIntervalSec="Intervalo de Keyframe (segundos, 0 = auto)"
|
||||
CPUPreset="Predefinição de utilização do processador (maior = menos processamento)"
|
||||
|
|
|
|||
|
|
@ -1,9 +1,8 @@
|
|||
Bitrate="Taxa de Bits (Bitrate)"
|
||||
Bitrate="Bitrate"
|
||||
CustomBufsize="Utilizar tamanho do buffer personalizado"
|
||||
BufferSize="Tamanho do Buffer"
|
||||
UseCBR="Utilizar CBR"
|
||||
BufferSize="Tamanho do buffer"
|
||||
CRF="CRF"
|
||||
KeyframeIntervalSec="Intervalo de Keyframe (segundos, 0 = auto)"
|
||||
KeyframeIntervalSec="Intervalo do keyframe (segundos, 0=automático)"
|
||||
CPUPreset="Predefinição de utilização do processador (maior = menos processamento)"
|
||||
Profile="Perfil"
|
||||
Tune="Sintonizar"
|
||||
|
|
|
|||
|
|
@ -1,13 +1,12 @@
|
|||
Bitrate="Rata biti"
|
||||
CustomBufsize="Utilizați o Mărime de Buffer Personalizată"
|
||||
BufferSize="Dimensiune tampon"
|
||||
UseCBR="Folosește CBR"
|
||||
Bitrate="Rată de biți"
|
||||
CustomBufsize="Folosește dimensiune personalizată pentru buffer"
|
||||
BufferSize="Dimensiune pentru buffer"
|
||||
CRF="CRF"
|
||||
KeyframeIntervalSec="Intervalul de cadre (secunde, 0 = auto)"
|
||||
CPUPreset="Preset utilizare CPU (mai mare = mai puţin CPU)"
|
||||
KeyframeIntervalSec="Interval de cadre cheie (secunde, 0=auto)"
|
||||
CPUPreset="Presetare pentru utilizare CPU (mai mare = mai puțin CPU)"
|
||||
Profile="Profil"
|
||||
Tune="Reglaj"
|
||||
None="(Nici unul)"
|
||||
None="(Niciunul)"
|
||||
EncoderOptions="Opţiuni x264 (separate prin spațiu)"
|
||||
VFR="Framerate Variabil (VFR)"
|
||||
VFR="Frecvență de cadre variabilă (VFR)"
|
||||
|
||||
|
|
|
|||
|
|
@ -1,7 +1,7 @@
|
|||
Bitrate="Битрейт"
|
||||
CustomBufsize="Использовать пользовательский размер буфера"
|
||||
BufferSize="Размер буфера"
|
||||
UseCBR="Использовать CBR"
|
||||
RateControl="Управление битрейтом"
|
||||
CRF="CRF"
|
||||
KeyframeIntervalSec="Интервал ключевых кадров (сек, 0=авто)"
|
||||
CPUPreset="Предустановка использования ЦП (выше = меньше)"
|
||||
|
|
|
|||
|
|
@ -1,7 +1,6 @@
|
|||
Bitrate="Bitrate"
|
||||
CustomBufsize="Použiť vlastnú veľkosť medzipamäte"
|
||||
BufferSize="Veľkosť medzipamäte"
|
||||
UseCBR="Použiť CRB"
|
||||
CRF="CRF"
|
||||
KeyframeIntervalSec="Kľúčová snímka každých (sekúnd, 0 = automaticky)"
|
||||
Profile="Profil"
|
||||
|
|
|
|||
|
|
@ -1,7 +1,6 @@
|
|||
Bitrate="Protok"
|
||||
CustomBufsize="Koristi specifičnu veličinu bafera"
|
||||
BufferSize="Veličina buffer-a"
|
||||
UseCBR="Koristi CBR"
|
||||
CRF="CRF"
|
||||
KeyframeIntervalSec="Keyframe interval (sekunde, 0=automatski)"
|
||||
CPUPreset="Koristi CPU šablon (veće = manje CPU-a)"
|
||||
|
|
|
|||
|
|
@ -1,7 +1,6 @@
|
|||
Bitrate="Проток"
|
||||
CustomBufsize="Користи специфичну величину бафера"
|
||||
BufferSize="Величина buffer-а"
|
||||
UseCBR="Користи CBR"
|
||||
CRF="CRF"
|
||||
KeyframeIntervalSec="Keyframe интервал (секунде, 0=аутоматски)"
|
||||
CPUPreset="Користи CPU шаблон (веће = мање CPU-а)"
|
||||
|
|
|
|||
|
|
@ -1,7 +1,6 @@
|
|||
Bitrate="Bithastighet"
|
||||
CustomBufsize="Använd anpassad buffertstorlek"
|
||||
BufferSize="Buffertstorlek"
|
||||
UseCBR="Använd CBR"
|
||||
CRF="CRF"
|
||||
KeyframeIntervalSec="Keyframe-tidsintervall (i sek, 0=auto)"
|
||||
CPUPreset="CPU-användning förinställning (högre = mindre CPU)"
|
||||
|
|
@ -9,4 +8,5 @@ Profile="Profil"
|
|||
Tune="Tune"
|
||||
None="(Inga)"
|
||||
EncoderOptions="x264 inställningar (separerade med blanksteg)"
|
||||
VFR="Varierande bildfrekvens (VFR)"
|
||||
|
||||
|
|
|
|||
|
|
@ -1,7 +1,6 @@
|
|||
Bitrate="Bit hızı"
|
||||
CustomBufsize="İsteğe Bağlı Arabellek Boyutu Kullan"
|
||||
BufferSize="Arabellek Boyutu"
|
||||
UseCBR="CBR kullan"
|
||||
CRF="CRF"
|
||||
KeyframeIntervalSec="Anahtarkare Aralığı (saniye, 0=otomatik)"
|
||||
CPUPreset="CPU Kullanım Önayarı (yüksek = az CPU kullanımı)"
|
||||
|
|
|
|||
|
|
@ -1,12 +1,12 @@
|
|||
Bitrate="比特率"
|
||||
CustomBufsize="使用自定义缓存大小"
|
||||
BufferSize="缓冲大小"
|
||||
UseCBR="使用 CBR"
|
||||
RateControl="速率控制"
|
||||
CRF="CRF"
|
||||
KeyframeIntervalSec="关键帧间隔(秒, 0=自动)"
|
||||
CPUPreset="CPU 使用预设 (更高 = 较少的 CPU占用)"
|
||||
Profile="档案"
|
||||
Tune="曲调"
|
||||
CPUPreset="CPU 使用预设 (高 = 较少的 CPU占用)"
|
||||
Profile="Profile"
|
||||
Tune="Tune"
|
||||
None="(无)"
|
||||
EncoderOptions="x264 选项 (用空格分隔)"
|
||||
VFR="可变帧率 (VFR)"
|
||||
|
|
|
|||
|
|
@ -1,7 +1,6 @@
|
|||
Bitrate="位元率"
|
||||
Bitrate="流量"
|
||||
CustomBufsize="使用自訂的緩衝區大小"
|
||||
BufferSize="緩衝區大小"
|
||||
UseCBR="使用 CBR (固定流量)"
|
||||
CRF="CRF"
|
||||
KeyframeIntervalSec="關鍵影格間隔 (秒,0 = 自動):"
|
||||
CPUPreset="CPU 使用率設定 (越快 = 越少CPU使用率)"
|
||||
|
|
|
|||
|
|
@ -97,7 +97,7 @@ static void obs_x264_defaults(obs_data_t *settings)
|
|||
obs_data_set_default_int (settings, "keyint_sec", 0);
|
||||
obs_data_set_default_int (settings, "crf", 23);
|
||||
obs_data_set_default_bool (settings, "vfr", false);
|
||||
obs_data_set_default_bool (settings, "cbr", true);
|
||||
obs_data_set_default_bool (settings, "rate_control","CBR");
|
||||
|
||||
obs_data_set_default_string(settings, "preset", "veryfast");
|
||||
obs_data_set_default_string(settings, "profile", "");
|
||||
|
|
@ -113,10 +113,10 @@ static inline void add_strings(obs_property_t *list, const char *const *strings)
|
|||
}
|
||||
}
|
||||
|
||||
#define TEXT_RATE_CONTROL obs_module_text("RateControl")
|
||||
#define TEXT_BITRATE obs_module_text("Bitrate")
|
||||
#define TEXT_CUSTOM_BUF obs_module_text("CustomBufsize")
|
||||
#define TEXT_BUF_SIZE obs_module_text("BufferSize")
|
||||
#define TEXT_USE_CBR obs_module_text("UseCBR")
|
||||
#define TEXT_VFR obs_module_text("VFR")
|
||||
#define TEXT_CRF obs_module_text("CRF")
|
||||
#define TEXT_KEYINT_SEC obs_module_text("KeyframeIntervalSec")
|
||||
|
|
@ -130,17 +130,30 @@ static bool use_bufsize_modified(obs_properties_t *ppts, obs_property_t *p,
|
|||
obs_data_t *settings)
|
||||
{
|
||||
bool use_bufsize = obs_data_get_bool(settings, "use_bufsize");
|
||||
const char *rc = obs_data_get_string(settings, "rate_control");
|
||||
bool rc_crf = astrcmpi(rc, "CRF") == 0;
|
||||
|
||||
p = obs_properties_get(ppts, "buffer_size");
|
||||
obs_property_set_visible(p, use_bufsize);
|
||||
obs_property_set_visible(p, use_bufsize && !rc_crf);
|
||||
return true;
|
||||
}
|
||||
|
||||
static bool use_cbr_modified(obs_properties_t *ppts, obs_property_t *p,
|
||||
static bool rate_control_modified(obs_properties_t *ppts, obs_property_t *p,
|
||||
obs_data_t *settings)
|
||||
{
|
||||
bool cbr = obs_data_get_bool(settings, "cbr");
|
||||
const char *rc = obs_data_get_string(settings, "rate_control");
|
||||
bool abr = astrcmpi(rc, "CBR") == 0 || astrcmpi(rc, "ABR") == 0;
|
||||
bool rc_crf = astrcmpi(rc, "CRF") == 0;
|
||||
|
||||
p = obs_properties_get(ppts, "crf");
|
||||
obs_property_set_visible(p, !cbr);
|
||||
obs_property_set_visible(p, !abr);
|
||||
|
||||
p = obs_properties_get(ppts, "bitrate");
|
||||
obs_property_set_visible(p, !rc_crf);
|
||||
p = obs_properties_get(ppts, "use_bufsize");
|
||||
obs_property_set_visible(p, !rc_crf);
|
||||
p = obs_properties_get(ppts, "buffse_size");
|
||||
obs_property_set_visible(p, !rc_crf);
|
||||
return true;
|
||||
}
|
||||
|
||||
|
|
@ -152,6 +165,15 @@ static obs_properties_t *obs_x264_props(void *unused)
|
|||
obs_property_t *list;
|
||||
obs_property_t *p;
|
||||
|
||||
list = obs_properties_add_list(props, "rate_control", TEXT_RATE_CONTROL,
|
||||
OBS_COMBO_TYPE_LIST, OBS_COMBO_FORMAT_STRING);
|
||||
obs_property_list_add_string(list, "CBR", "CBR");
|
||||
obs_property_list_add_string(list, "ABR", "ABR");
|
||||
obs_property_list_add_string(list, "VBR", "VBR");
|
||||
obs_property_list_add_string(list, "CRF", "CRF");
|
||||
|
||||
obs_property_set_modified_callback(list, rate_control_modified);
|
||||
|
||||
obs_properties_add_int(props, "bitrate", TEXT_BITRATE, 50, 10000000, 1);
|
||||
|
||||
p = obs_properties_add_bool(props, "use_bufsize", TEXT_CUSTOM_BUF);
|
||||
|
|
@ -159,11 +181,9 @@ static obs_properties_t *obs_x264_props(void *unused)
|
|||
obs_properties_add_int(props, "buffer_size", TEXT_BUF_SIZE, 0,
|
||||
10000000, 1);
|
||||
|
||||
obs_properties_add_int(props, "keyint_sec", TEXT_KEYINT_SEC, 0, 20, 1);
|
||||
p = obs_properties_add_bool(props, "cbr", TEXT_USE_CBR);
|
||||
obs_properties_add_int(props, "crf", TEXT_CRF, 0, 51, 1);
|
||||
|
||||
obs_property_set_modified_callback(p, use_cbr_modified);
|
||||
obs_properties_add_int(props, "keyint_sec", TEXT_KEYINT_SEC, 0, 20, 1);
|
||||
|
||||
list = obs_properties_add_list(props, "preset", TEXT_PRESET,
|
||||
OBS_COMBO_TYPE_LIST, OBS_COMBO_FORMAT_STRING);
|
||||
|
|
@ -353,6 +373,13 @@ static inline int get_x264_cs_val(enum video_colorspace cs,
|
|||
|
||||
static void obs_x264_video_info(void *data, struct video_scale_info *info);
|
||||
|
||||
enum rate_control {
|
||||
RATE_CONTROL_CBR,
|
||||
RATE_CONTROL_VBR,
|
||||
RATE_CONTROL_ABR,
|
||||
RATE_CONTROL_CRF
|
||||
};
|
||||
|
||||
static void update_params(struct obs_x264 *obsx264, obs_data_t *settings,
|
||||
char **params)
|
||||
{
|
||||
|
|
@ -366,6 +393,8 @@ static void update_params(struct obs_x264 *obsx264, obs_data_t *settings,
|
|||
|
||||
obs_x264_video_info(obsx264, &info);
|
||||
|
||||
const char *rate_control = obs_data_get_string(settings, "rate_control");
|
||||
|
||||
int bitrate = (int)obs_data_get_int(settings, "bitrate");
|
||||
int buffer_size = (int)obs_data_get_int(settings, "buffer_size");
|
||||
int keyint_sec = (int)obs_data_get_int(settings, "keyint_sec");
|
||||
|
|
@ -374,7 +403,35 @@ static void update_params(struct obs_x264 *obsx264, obs_data_t *settings,
|
|||
int height = (int)obs_encoder_get_height(obsx264->encoder);
|
||||
bool use_bufsize = obs_data_get_bool(settings, "use_bufsize");
|
||||
bool vfr = obs_data_get_bool(settings, "vfr");
|
||||
bool cbr = obs_data_get_bool(settings, "cbr");
|
||||
bool cbr_override= obs_data_get_bool(settings, "cbr");
|
||||
enum rate_control rc;
|
||||
|
||||
/* XXX: "cbr" setting has been deprecated */
|
||||
if (cbr_override) {
|
||||
warn("\"cbr\" setting has been deprecated for all encoders! "
|
||||
"Please set \"rate_control\" to \"CBR\" instead. "
|
||||
"Forcing CBR mode. "
|
||||
"(Note to all: this is why you shouldn't use strings for "
|
||||
"common settings)");
|
||||
rate_control = "CBR";
|
||||
}
|
||||
|
||||
if (astrcmpi(rate_control, "CBR") == 0) {
|
||||
rc = RATE_CONTROL_CBR;
|
||||
crf = 0;
|
||||
|
||||
} else if (astrcmpi(rate_control, "ABR") == 0) {
|
||||
rc = RATE_CONTROL_ABR;
|
||||
crf = 0;
|
||||
|
||||
} else if (astrcmpi(rate_control, "VBR") == 0) {
|
||||
rc = RATE_CONTROL_VBR;
|
||||
|
||||
} else if (astrcmpi(rate_control, "CRF") == 0) {
|
||||
rc = RATE_CONTROL_CRF;
|
||||
bitrate = 0;
|
||||
buffer_size = 0;
|
||||
}
|
||||
|
||||
if (keyint_sec)
|
||||
obsx264->params.i_keyint_max =
|
||||
|
|
@ -406,20 +463,22 @@ static void update_params(struct obs_x264 *obsx264, obs_data_t *settings,
|
|||
|
||||
/* use the new filler method for CBR to allow real-time adjusting of
|
||||
* the bitrate */
|
||||
if (cbr) {
|
||||
obsx264->params.rc.f_rf_constant = 0.0f;
|
||||
if (rc == RATE_CONTROL_CBR || rc == RATE_CONTROL_ABR) {
|
||||
obsx264->params.rc.i_rc_method = X264_RC_ABR;
|
||||
|
||||
if (rc == RATE_CONTROL_CBR) {
|
||||
#if X264_BUILD >= 139
|
||||
obsx264->params.rc.b_filler = true;
|
||||
obsx264->params.rc.b_filler = true;
|
||||
#else
|
||||
obsx264->params.i_nal_hrd = X264_NAL_HRD_CBR;
|
||||
obsx264->params.i_nal_hrd = X264_NAL_HRD_CBR;
|
||||
#endif
|
||||
}
|
||||
} else {
|
||||
obsx264->params.rc.i_rc_method = X264_RC_CRF;
|
||||
obsx264->params.rc.f_rf_constant = (float)crf;
|
||||
}
|
||||
|
||||
obsx264->params.rc.f_rf_constant = (float)crf;
|
||||
|
||||
if (info.format == VIDEO_FORMAT_NV12)
|
||||
obsx264->params.i_csp = X264_CSP_NV12;
|
||||
else if (info.format == VIDEO_FORMAT_I420)
|
||||
|
|
@ -433,25 +492,24 @@ static void update_params(struct obs_x264 *obsx264, obs_data_t *settings,
|
|||
set_param(obsx264, *(params++));
|
||||
|
||||
info("settings:\n"
|
||||
"\tbitrate: %d\n"
|
||||
"\tbuffer size: %d\n"
|
||||
"\tcrf: %d%s\n"
|
||||
"\tfps_num: %d\n"
|
||||
"\tfps_den: %d\n"
|
||||
"\twidth: %d\n"
|
||||
"\theight: %d\n"
|
||||
"\tkeyint: %d\n"
|
||||
"\tvfr: %s\n"
|
||||
"\tcbr: %s",
|
||||
"\trate_control: %s\n"
|
||||
"\tbitrate: %d\n"
|
||||
"\tbuffer size: %d\n"
|
||||
"\tcrf: %d\n"
|
||||
"\tfps_num: %d\n"
|
||||
"\tfps_den: %d\n"
|
||||
"\twidth: %d\n"
|
||||
"\theight: %d\n"
|
||||
"\tkeyint: %d\n"
|
||||
"\tvfr: %s\n",
|
||||
rate_control,
|
||||
obsx264->params.rc.i_vbv_max_bitrate,
|
||||
obsx264->params.rc.i_vbv_buffer_size,
|
||||
(int)obsx264->params.rc.f_rf_constant,
|
||||
cbr ? " (0 when CBR is enabled)" : "",
|
||||
voi->fps_num, voi->fps_den,
|
||||
width, height,
|
||||
obsx264->params.i_keyint_max,
|
||||
vfr ? "on" : "off",
|
||||
cbr ? "on" : "off");
|
||||
vfr ? "on" : "off");
|
||||
}
|
||||
|
||||
static bool update_settings(struct obs_x264 *obsx264, obs_data_t *settings)
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue