mirror of
https://github.com/weyne85/rustdesk.git
synced 2025-10-29 17:00:05 +00:00
Revert "vp8"
This commit is contained in:
@@ -1258,6 +1258,9 @@ class _DisplayState extends State<_Display> {
|
||||
}
|
||||
|
||||
Widget codec(BuildContext context) {
|
||||
if (!bind.mainHasHwcodec()) {
|
||||
return Offstage();
|
||||
}
|
||||
final key = 'codec-preference';
|
||||
onChanged(String value) async {
|
||||
await bind.mainSetUserDefaultOption(key: key, value: value);
|
||||
@@ -1265,45 +1268,28 @@ class _DisplayState extends State<_Display> {
|
||||
}
|
||||
|
||||
final groupValue = bind.mainGetUserDefaultOption(key: key);
|
||||
var hwRadios = [];
|
||||
try {
|
||||
final Map codecsJson = jsonDecode(bind.mainSupportedHwdecodings());
|
||||
final h264 = codecsJson['h264'] ?? false;
|
||||
final h265 = codecsJson['h265'] ?? false;
|
||||
if (h264) {
|
||||
hwRadios.add(_Radio(context,
|
||||
value: 'h264',
|
||||
groupValue: groupValue,
|
||||
label: 'H264',
|
||||
onChanged: onChanged));
|
||||
}
|
||||
if (h265) {
|
||||
hwRadios.add(_Radio(context,
|
||||
value: 'h265',
|
||||
groupValue: groupValue,
|
||||
label: 'H265',
|
||||
onChanged: onChanged));
|
||||
}
|
||||
} catch (e) {
|
||||
debugPrint("failed to parse supported hwdecodings, err=$e");
|
||||
}
|
||||
|
||||
return _Card(title: 'Default Codec', children: [
|
||||
_Radio(context,
|
||||
value: 'auto',
|
||||
groupValue: groupValue,
|
||||
label: 'Auto',
|
||||
onChanged: onChanged),
|
||||
_Radio(context,
|
||||
value: 'vp8',
|
||||
groupValue: groupValue,
|
||||
label: 'VP8',
|
||||
onChanged: onChanged),
|
||||
_Radio(context,
|
||||
value: 'vp9',
|
||||
groupValue: groupValue,
|
||||
label: 'VP9',
|
||||
onChanged: onChanged),
|
||||
...hwRadios,
|
||||
_Radio(context,
|
||||
value: 'h264',
|
||||
groupValue: groupValue,
|
||||
label: 'H264',
|
||||
onChanged: onChanged),
|
||||
_Radio(context,
|
||||
value: 'h265',
|
||||
groupValue: groupValue,
|
||||
label: 'H265',
|
||||
onChanged: onChanged),
|
||||
]);
|
||||
}
|
||||
|
||||
|
||||
@@ -1349,30 +1349,29 @@ class _DisplayMenuState extends State<_DisplayMenu> {
|
||||
|
||||
codec() {
|
||||
return futureBuilder(future: () async {
|
||||
final alternativeCodecs =
|
||||
await bind.sessionAlternativeCodecs(id: widget.id);
|
||||
final supportedHwcodec =
|
||||
await bind.sessionSupportedHwcodec(id: widget.id);
|
||||
final codecPreference =
|
||||
await bind.sessionGetOption(id: widget.id, arg: 'codec-preference') ??
|
||||
'';
|
||||
return {
|
||||
'alternativeCodecs': alternativeCodecs,
|
||||
'supportedHwcodec': supportedHwcodec,
|
||||
'codecPreference': codecPreference
|
||||
};
|
||||
}(), hasData: (data) {
|
||||
final List<bool> codecs = [];
|
||||
try {
|
||||
final Map codecsJson = jsonDecode(data['alternativeCodecs']);
|
||||
final vp8 = codecsJson['vp8'] ?? false;
|
||||
final Map codecsJson = jsonDecode(data['supportedHwcodec']);
|
||||
final h264 = codecsJson['h264'] ?? false;
|
||||
final h265 = codecsJson['h265'] ?? false;
|
||||
codecs.add(vp8);
|
||||
codecs.add(h264);
|
||||
codecs.add(h265);
|
||||
} catch (e) {
|
||||
debugPrint("Show Codec Preference err=$e");
|
||||
}
|
||||
final visible =
|
||||
codecs.length == 3 && (codecs[0] || codecs[1] || codecs[2]);
|
||||
final visible = bind.mainHasHwcodec() &&
|
||||
codecs.length == 2 &&
|
||||
(codecs[0] || codecs[1]);
|
||||
if (!visible) return Offstage();
|
||||
final groupValue = data['codecPreference'] as String;
|
||||
onChanged(String? value) async {
|
||||
@@ -1393,13 +1392,6 @@ class _DisplayMenuState extends State<_DisplayMenu> {
|
||||
onChanged: onChanged,
|
||||
ffi: widget.ffi,
|
||||
),
|
||||
_RadioMenuButton<String>(
|
||||
child: Text(translate('VP8')),
|
||||
value: 'vp8',
|
||||
groupValue: groupValue,
|
||||
onChanged: codecs[0] ? onChanged : null,
|
||||
ffi: widget.ffi,
|
||||
),
|
||||
_RadioMenuButton<String>(
|
||||
child: Text(translate('VP9')),
|
||||
value: 'vp9',
|
||||
@@ -1411,14 +1403,14 @@ class _DisplayMenuState extends State<_DisplayMenu> {
|
||||
child: Text(translate('H264')),
|
||||
value: 'h264',
|
||||
groupValue: groupValue,
|
||||
onChanged: codecs[1] ? onChanged : null,
|
||||
onChanged: codecs[0] ? onChanged : null,
|
||||
ffi: widget.ffi,
|
||||
),
|
||||
_RadioMenuButton<String>(
|
||||
child: Text(translate('H265')),
|
||||
value: 'h265',
|
||||
groupValue: groupValue,
|
||||
onChanged: codecs[2] ? onChanged : null,
|
||||
onChanged: codecs[1] ? onChanged : null,
|
||||
ffi: widget.ffi,
|
||||
),
|
||||
]);
|
||||
|
||||
@@ -973,11 +973,9 @@ void showOptions(
|
||||
if (hasHwcodec) {
|
||||
try {
|
||||
final Map codecsJson =
|
||||
jsonDecode(await bind.sessionAlternativeCodecs(id: id));
|
||||
final vp8 = codecsJson['vp8'] ?? false;
|
||||
jsonDecode(await bind.sessionSupportedHwcodec(id: id));
|
||||
final h264 = codecsJson['h264'] ?? false;
|
||||
final h265 = codecsJson['h265'] ?? false;
|
||||
codecs.add(vp8);
|
||||
codecs.add(h264);
|
||||
codecs.add(h265);
|
||||
} catch (e) {
|
||||
@@ -1046,7 +1044,6 @@ void showOptions(
|
||||
if (hasHwcodec && codecs.length == 2 && (codecs[0] || codecs[1])) {
|
||||
radios.addAll([
|
||||
getRadio(translate('Auto'), 'auto', codec, setCodec),
|
||||
getRadio('VP8', 'vp8', codec, setCodec),
|
||||
getRadio('VP9', 'vp9', codec, setCodec),
|
||||
]);
|
||||
if (codecs[0]) {
|
||||
|
||||
Reference in New Issue
Block a user