mirror of
https://github.com/jellyfin/jellyfin-web
synced 2025-03-30 19:56:21 +00:00
expose more dlna profile settings in the web interface
This commit is contained in:
parent
4cee826e91
commit
d71c1a121f
3 changed files with 100 additions and 9 deletions
|
@ -64,14 +64,81 @@
|
||||||
<label for="chkVideo">Video</label>
|
<label for="chkVideo">Video</label>
|
||||||
</fieldset>
|
</fieldset>
|
||||||
|
|
||||||
|
|
||||||
<br />
|
<br />
|
||||||
|
<div data-role="collapsible">
|
||||||
|
<h2>${HeaderDisplaySettings}</h2>
|
||||||
|
<div>
|
||||||
|
<ul data-role="listview" class="ulForm">
|
||||||
|
<li>
|
||||||
|
<label for="chkRequiresPlainFolders">Display all folders as plain storage folders</label>
|
||||||
|
<input type="checkbox" id="chkRequiresPlainFolders" data-mini="true" />
|
||||||
|
<div class="fieldDescription">If enabled, all folders are represented in DIDL as "object.container.storageFolder" instead of a more specific type, such as "object.container.person.musicArtist".</div>
|
||||||
|
</li>
|
||||||
|
<li>
|
||||||
|
<label for="chkRequiresPlainVideoItems">Display all videos as plain video items</label>
|
||||||
|
<input type="checkbox" id="chkRequiresPlainVideoItems" data-mini="true" />
|
||||||
|
<div class="fieldDescription">If enabled, all videos are represented in DIDL as "object.item.videoItem" instead of a more specific type, such as "object.item.videoItem.movie".</div>
|
||||||
|
</li>
|
||||||
|
</ul>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div data-role="collapsible">
|
||||||
|
<h2>${HeaderImageSettings}</h2>
|
||||||
|
<div>
|
||||||
<ul data-role="listview" class="ulForm">
|
<ul data-role="listview" class="ulForm">
|
||||||
<li>
|
<li>
|
||||||
<label for="chkEnableAlbumArtInDidl">Embed album art in Didl</label>
|
<label for="chkEnableAlbumArtInDidl">Embed album art in Didl</label>
|
||||||
<input type="checkbox" id="chkEnableAlbumArtInDidl" data-mini="true" />
|
<input type="checkbox" id="chkEnableAlbumArtInDidl" data-mini="true" />
|
||||||
<div class="fieldDescription">Some devices prefer this method for obtaining album art. Others may fail to play with this option enabled.</div>
|
<div class="fieldDescription">Some devices prefer this method for obtaining album art. Others may fail to play with this option enabled.</div>
|
||||||
</li>
|
</li>
|
||||||
|
<li>
|
||||||
|
<label for="txtAlbumArtPn">Album art PN:</label>
|
||||||
|
<input type="text" id="txtAlbumArtPn" data-mini="true" />
|
||||||
|
<div class="fieldDescription">PN used for album art, within the dlna:profileID attribute on upnp:albumArtURI. Default is JPEG_SM. Some clients require a specific value, regardless of the size of the image.</div>
|
||||||
|
</li>
|
||||||
|
<li>
|
||||||
|
<label for="txtAlbumArtMaxWidth">Album art max width:</label>
|
||||||
|
<input type="number" id="txtAlbumArtMaxWidth" pattern="[0-9]*" min="1" data-mini="true" />
|
||||||
|
<div class="fieldDescription">Max resolution of album art exposed via upnp:albumArtURI.</div>
|
||||||
|
</li>
|
||||||
|
<li>
|
||||||
|
<label for="txtAlbumArtMaxHeight">Album art max height:</label>
|
||||||
|
<input type="number" id="txtAlbumArtMaxHeight" pattern="[0-9]*" min="1" data-mini="true" />
|
||||||
|
<div class="fieldDescription">Max resolution of album art exposed via upnp:albumArtURI.</div>
|
||||||
|
</li>
|
||||||
|
<li>
|
||||||
|
<label for="txtIconMaxWidth">Icon max width:</label>
|
||||||
|
<input type="number" id="txtIconMaxWidth" pattern="[0-9]*" min="1" data-mini="true" />
|
||||||
|
<div class="fieldDescription">Max resolution of icons exposed via upnp:icon.</div>
|
||||||
|
</li>
|
||||||
|
<li>
|
||||||
|
<label for="txtIconMaxHeight">Icon max height:</label>
|
||||||
|
<input type="number" id="txtIconMaxHeight" pattern="[0-9]*" min="1" data-mini="true" />
|
||||||
|
<div class="fieldDescription">Max resolution of icons exposed via upnp:icon.</div>
|
||||||
|
</li>
|
||||||
</ul>
|
</ul>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div data-role="collapsible">
|
||||||
|
<h2>${HeaderPlaybackSettings}</h2>
|
||||||
|
<div>
|
||||||
|
<ul data-role="listview" class="ulForm">
|
||||||
|
<li>
|
||||||
|
<label for="txtMaxAllowedBitrate">Max bitrate:</label>
|
||||||
|
<input type="number" id="txtMaxAllowedBitrate" pattern="[0-9]*" min="1" data-mini="true" />
|
||||||
|
<div class="fieldDescription">Specify a max bitrate in bandwidth constrained environments, or if the device imposes it's own limit.</div>
|
||||||
|
</li>
|
||||||
|
<li>
|
||||||
|
<label for="chkIgnoreTranscodeByteRangeRequests">Ignore transcode byte range requests</label>
|
||||||
|
<input type="checkbox" id="chkIgnoreTranscodeByteRangeRequests" data-mini="true" />
|
||||||
|
<div class="fieldDescription">If enabled, these requests will be honored but will ignore the byte range header.</div>
|
||||||
|
</li>
|
||||||
|
</ul>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
</div>
|
</div>
|
||||||
<div class="tabContent tabIdentification">
|
<div class="tabContent tabIdentification">
|
||||||
|
|
|
@ -55,6 +55,18 @@
|
||||||
$('#txtIdSerialNumber', page).val(idInfo.SerialNumber || '');
|
$('#txtIdSerialNumber', page).val(idInfo.SerialNumber || '');
|
||||||
$('#txtIdDeviceDescription', page).val(idInfo.DeviceDescription || '');
|
$('#txtIdDeviceDescription', page).val(idInfo.DeviceDescription || '');
|
||||||
|
|
||||||
|
$('#txtAlbumArtPn', page).val(profile.AlbumArtPn || '');
|
||||||
|
$('#txtAlbumArtMaxWidth', page).val(profile.MaxAlbumArtWidth || '');
|
||||||
|
$('#txtAlbumArtMaxHeight', page).val(profile.MaxAlbumArtHeight || '');
|
||||||
|
$('#txtIconMaxWidth', page).val(profile.MaxIconWidth || '');
|
||||||
|
$('#txtIconMaxHeight', page).val(profile.MaxIconHeight || '');
|
||||||
|
|
||||||
|
$('#chkIgnoreTranscodeByteRangeRequests', page).checked(profile.IgnoreTranscodeByteRangeRequests).checkboxradio('refresh');
|
||||||
|
$('#txtMaxAllowedBitrate', page).val(profile.MaxBitrate || '');
|
||||||
|
|
||||||
|
$('#chkRequiresPlainFolders', page).checked(profile.RequiresPlainFolders).checkboxradio('refresh');
|
||||||
|
$('#chkRequiresPlainVideoItems', page).checked(profile.RequiresPlainVideoItems).checkboxradio('refresh');
|
||||||
|
|
||||||
profile.DirectPlayProfiles = (profile.DirectPlayProfiles || []);
|
profile.DirectPlayProfiles = (profile.DirectPlayProfiles || []);
|
||||||
profile.TranscodingProfiles = (profile.TranscodingProfiles || []);
|
profile.TranscodingProfiles = (profile.TranscodingProfiles || []);
|
||||||
profile.ContainerProfiles = (profile.ContainerProfiles || []);
|
profile.ContainerProfiles = (profile.ContainerProfiles || []);
|
||||||
|
@ -650,6 +662,18 @@
|
||||||
profile.Identification.SerialNumber = $('#txtIdSerialNumber', page).val();
|
profile.Identification.SerialNumber = $('#txtIdSerialNumber', page).val();
|
||||||
profile.Identification.DeviceDescription = $('#txtIdDeviceDescription', page).val();
|
profile.Identification.DeviceDescription = $('#txtIdDeviceDescription', page).val();
|
||||||
|
|
||||||
|
profile.AlbumArtPn = $('#txtAlbumArtPn', page).val();
|
||||||
|
profile.MaxAlbumArtWidth = $('#txtAlbumArtMaxWidth', page).val();
|
||||||
|
profile.MaxAlbumArtHeight = $('#txtAlbumArtMaxHeight', page).val();
|
||||||
|
profile.MaxIconWidth = $('#txtIconMaxWidth', page).val();
|
||||||
|
profile.MaxIconHeight = $('#txtIconMaxHeight', page).val();
|
||||||
|
|
||||||
|
profile.RequiresPlainFolders = $('#chkRequiresPlainFolders', page).checked();
|
||||||
|
profile.RequiresPlainVideoItems = $('#chkRequiresPlainVideoItems', page).checked();
|
||||||
|
|
||||||
|
profile.IgnoreTranscodeByteRangeRequests = $('#chkIgnoreTranscodeByteRangeRequests', page).checked();
|
||||||
|
profile.MaxBitrate = $('#txtMaxAllowedBitrate', page).val();
|
||||||
|
|
||||||
profile.UserId = $('#selectUser', page).val();
|
profile.UserId = $('#selectUser', page).val();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -34,7 +34,7 @@
|
||||||
var profile = profiles[i];
|
var profile = profiles[i];
|
||||||
|
|
||||||
html += '<li>';
|
html += '<li>';
|
||||||
html += '<a href="dlnaprofile.html?id=' + profile.Id + '">';
|
html += '<a href="dlnaprofile.html?id=' + profile.Id + '" style="font-size:14px;">';
|
||||||
html += profile.Name;
|
html += profile.Name;
|
||||||
html += '</a>';
|
html += '</a>';
|
||||||
|
|
||||||
|
@ -69,7 +69,7 @@
|
||||||
var profile = profiles[i];
|
var profile = profiles[i];
|
||||||
|
|
||||||
html += '<li>';
|
html += '<li>';
|
||||||
html += '<a href="dlnaprofile.html?id=' + profile.Id + '">';
|
html += '<a href="dlnaprofile.html?id=' + profile.Id + '" style="font-size:14px;">';
|
||||||
html += profile.Name;
|
html += profile.Name;
|
||||||
html += '</a>';
|
html += '</a>';
|
||||||
html += '</li>';
|
html += '</li>';
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue