Search and replace unicode a0c2 with 0020

This commit is contained in:
jo 2021-05-31 11:44:06 +02:00
parent b26de72704
commit 1e1cf249f7
11 changed files with 88 additions and 89 deletions

View File

@ -1,7 +1,7 @@
<style type="text/css">
#plupload_files input[type="file"] {
font-size: 200px !important;
}
#plupload_files input[type="file"] {
font-size: 200px !important;
}
</style>
<script type="text/javascript">
var LIBRETIME_PLUPLOAD_MAX_FILE_SIZE = "<?php echo $this->uploadMaxSize; ?>";
@ -11,15 +11,15 @@
$partitions = Application_Model_Systemstatus::GetDiskInfo();
$status = new StdClass;
$disk = $partitions[0];
$used = $disk->totalSpace-$disk->totalFreeSpace;
$used = $disk->totalSpace - $disk->totalFreeSpace;
$total = $disk->totalSpace;
$tracktypes = Application_Model_Tracktype::getTracktypes();
array_multisort(array_map(function($element) {
array_multisort(array_map(function ($element) {
return $element['type_name'];
}, $tracktypes), SORT_ASC, $tracktypes);
if(count($tracktypes) == 0) {
if (count($tracktypes) == 0) {
$hasTracktypes = "disabled";
$showTracktypesDropdown = false;
} else {
@ -28,35 +28,35 @@
}
?>
<?php
if (isset($_COOKIE['tt_upload'])) {
$ttsaved = $_COOKIE['tt_upload'];
} else {
// Use default track type
$ttsaved = Application_Model_Preference::GetTrackTypeDefault();
}
?>
if (isset($_COOKIE['tt_upload'])) {
$ttsaved = $_COOKIE['tt_upload'];
} else {
// Use default track type
$ttsaved = Application_Model_Preference::GetTrackTypeDefault();
}
?>
<div id="upload_wrapper">
<div id="track_type_selection">
<form>
<?php
if ($showTracktypesDropdown != false) { ?>
<select id="select_type" class="form-control" <?php echo $hasTracktypes; ?>>
<?php
echo "<option value=''>Select Track Type</option>";
foreach ($tracktypes as $key => $tt) {
$selected = "";
if ($ttsaved == $tt['code']) {
$selected = "selected";
<?php
if ($showTracktypesDropdown != false) { ?>
<select id="select_type" class="form-control" <?php echo $hasTracktypes; ?>>
<?php
echo "<option value=''>Select Track Type</option>";
foreach ($tracktypes as $key => $tt) {
$selected = "";
if ($ttsaved == $tt['code']) {
$selected = "selected";
}
$code = $tt['code'];
$typename = $tt['type_name'];
echo "<option value='$code' $selected>$typename</option>";
}
$code = $tt['code'];
$typename = $tt['type_name'];
echo "<option value='$code' $selected>$typename</option>";
}
?>
</select>
<?php } ?>
?>
</select>
<?php } ?>
</form>
</div>
@ -65,13 +65,13 @@
$ttTitle = "";
foreach ($tracktypes as $key => $tt) {
if ($ttsaved == $tt['code']) {
$ttTitle = $tt['type_name'];
$ttTitle = $tt['type_name'];
}
}
}
?>
<H2><?php echo _("Upload")?> <span id="upload_type" <?php echo ($showTracktypesDropdown && $ttTitle!="") ? 'style="color:#ff611f"' : "" ?>>
<?php echo ($showTracktypesDropdown && $ttTitle!="") ? $ttTitle : "Tracks"; ?></span></H2>
<H2><?php echo _("Upload") ?> <span id="upload_type" <?php echo ($showTracktypesDropdown && $ttTitle != "") ? 'style="color:#ff611f"' : "" ?>>
<?php echo ($showTracktypesDropdown && $ttTitle != "") ? $ttTitle : "Tracks"; ?></span></H2>
<form action="/rest/media" method="post" id="add-media-dropzone" class="dropzone dz-clickable">
<?php echo $this->form->getElement('csrf') ?>
<div class="dz-message">
@ -81,39 +81,38 @@
<!--
<div id="filelist">Your browser doesn't have Flash, Silverlight or HTML5 support.</div>
<br />
 
<div id="container">
    <a id="pickfiles" href="javascript:;">[Select files]</a>
    <a id="uploadfiles" href="javascript:;">[Upload files]</a>
<a id="pickfiles" href="javascript:;">[Select files]</a>
<a id="uploadfiles" href="javascript:;">[Upload files]</a>
</div>
-->
<div id="uploads_disk_usage">
<div style="padding-bottom: 2px;"><?php echo _("Storage")?></div>
<div style="padding-bottom: 2px;"><?php echo _("Storage") ?></div>
<div class="disk_usage_progress_bar"></div>
<div class="disk_usage_percent_in_use"><?php echo sprintf("%01.1f%% ", $used/$total*100) . _("in use") ?></div>
<div class="disk_usage_used" style="width:<?php echo sprintf("%01.1f%%", min(100, $used/$total*100)) ?>;"></div>
<div class="disk_usage_percent_in_use"><?php echo sprintf("%01.1f%% ", $used / $total * 100) . _("in use") ?></div>
<div class="disk_usage_used" style="width:<?php echo sprintf("%01.1f%%", min(100, $used / $total * 100)) ?>;"></div>
<div style="margin-top: 17px; font-size: 12px;"><?php echo sprintf(_("%01.1fGB of %01.1fGB"), $used/pow(2, 30), $total/pow(2, 30)); ?></div>
<div style="margin-top: 17px; font-size: 12px;"><?php echo sprintf(_("%01.1fGB of %01.1fGB"), $used / pow(2, 30), $total / pow(2, 30)); ?></div>
</div>
</div>
</div>
<div id="plupload_error">
<table></table>
<table></table>
</div>
<div id="recent_uploads_wrapper" class="lib-content ui-widget ui-widget-content block-shadow content-pane wide-panel">
<div id="recent_uploads" class="outer-datatable-wrapper padded">
<div id="recent_uploads_filter">
<form>
<input type="radio" name="upload_status" id="upload_status_all" checked /><label for="upload_status_all"><?php echo _("All")?></label>
<input type="radio" name="upload_status" id="upload_status_failed" /><label for="upload_status_failed"><?php echo _("Failed")?></label>
<input type="radio" name="upload_status" id="upload_status_pending" /><label for="upload_status_pending"><?php echo _("Pending")?></label>
<input type="radio" name="upload_status" id="upload_status_all" checked /><label for="upload_status_all"><?php echo _("All") ?></label>
<input type="radio" name="upload_status" id="upload_status_failed" /><label for="upload_status_failed"><?php echo _("Failed") ?></label>
<input type="radio" name="upload_status" id="upload_status_pending" /><label for="upload_status_pending"><?php echo _("Pending") ?></label>
</form>
</div>
<H2><?php echo _("Recent Uploads")?></H2>
<table id="recent_uploads_table" class="datatable lib-content ui-widget ui-widget-content block-shadow"
cellpadding="0" cellspacing="0"></table>
<H2><?php echo _("Recent Uploads") ?></H2>
<table id="recent_uploads_table" class="datatable lib-content ui-widget ui-widget-content block-shadow" cellpadding="0" cellspacing="0"></table>
</div>
<div style="clear: both;"></div>
</div>
</div>

View File

@ -28,7 +28,7 @@ the name of the show from the drop-down menu which will appear.
![](/img/filter.png)
On the left side of the page, the **Start** and **End** times, **Duration**
On the left side of the page, the **Start** and **End** times, **Duration**
and **Title** of each content item are shown. On the right, **Creator**,
**Album**, **Cue** or **Fade** times and **Mime** type (file format) can also be
shown. This information can help you to prepare voice tracks for insertion into

View File

@ -193,6 +193,6 @@ rabbitmqctl add_vhost /airtime
rabbitmqctl add_user airtime XXXXXXXXXXXXXXXXXXXX
rabbitmqctl set_permissions -p /airtime airtime
"airtime-pypo|pypo-fetch|airtime-analyzer|media-monitor"
  "airtime-pypo|pypo-fetch|airtime-analyzer|media-monitor"
 "airtime-pypo|pypo-fetch|airtime-analyzer|media-monitor"
"airtime-pypo|pypo-fetch|airtime-analyzer|media-monitor"
"airtime-pypo|pypo-fetch|airtime-analyzer|media-monitor"
```

View File

@ -24,10 +24,10 @@ When sending metadata about your stream to an Icecast server in non-Latin alphab
The solution is to specify that the metadata for the MP3 mount point you are using should be interpreted using UTF-8 encoding. You can do this by adding the following stanza to the _/etc/icecast2/icecast.xml_ file, where _libretime.mp3_ is the name of your mount point:
  <mount>
       <mount-name>/libretime.mp3</mount-name>
       <charset>UTF-8</charset>
  </mount>
<mount>
<mount-name>/libretime.mp3</mount-name>
<charset>UTF-8</charset>
</mount>
After saving the _/etc/icecast2/icecast.xml_ file, you should restart the Icecast server:
@ -71,7 +71,7 @@ The example _<mount>_ section provided in the _icecast.xml_ file is commented ou
These mount point definitions mean that a client connecting to a URL such as *http://icecast.example.com:8000/stream.ogg* will first fall back to the _/live.ogg_ mount point if it is available. If not, the client will fall back in turn to the _/airtime_128_ mount point for LibreTime playout.
Setting the value of _<fallback-override>_ to 1 (enabled) means that when the _/live.ogg_ mount point becomes available again, the client will be re-connected to it.  If you wish to hide the _/airtime_128_ and _/live.ogg_ mount points from the public Icecast web interface, set the value of _<hidden>_ in each of these definitions to 1.
Setting the value of _<fallback-override>_ to 1 (enabled) means that when the _/live.ogg_ mount point becomes available again, the client will be re-connected to it. If you wish to hide the _/airtime_128_ and _/live.ogg_ mount points from the public Icecast web interface, set the value of _<hidden>_ in each of these definitions to 1.
## Source configuration

View File

@ -4,7 +4,7 @@ layout: article
category: manager
---
The Listener Stats page on the Analytics menu shows graphs of listener connections to the configured streaming servers for the selected date and time range.  On the right side, a green **Status** indicator shows **OK** if the connection to the streaming server is active.
The Listener Stats page on the Analytics menu shows graphs of listener connections to the configured streaming servers for the selected date and time range. On the right side, a green **Status** indicator shows **OK** if the connection to the streaming server is active.
![](/img/portfolio/stream-stats.jpg)

View File

@ -32,7 +32,7 @@ The **History Templates** page on the History menu enables you to prepare report
![](/img/new-hist-temp.png)
Either of these actions opens a page in which you can name the new template, and add or remove elements from the list on the left. To add a new element from the list on the right, click the plus icon for the item you require. If the element you require is not listed, you can use the **Add New Field** box at the lower end of the right side column. Select _string_, _boolean_, *integer*, or _float_, depending on the type of data that you wish to log, and then click the **+ Add** button.
Either of these actions opens a page in which you can name the new template, and add or remove elements from the list on the left. To add a new element from the list on the right, click the plus icon for the item you require. If the element you require is not listed, you can use the **Add New Field** box at the lower end of the right side column. Select _string_, _boolean_, _integer_, or _float_, depending on the type of data that you wish to log, and then click the **+ Add** button.
When the template is in the format you require, click the **Save** button, and **Set Default Template** if you wish. The new template will now be listed on the History Templates page. If you have set a new default template, any changes will be visible on the tabs of the Playout History page.

View File

@ -61,7 +61,7 @@ On file ingest, LibreTime analyzes each Ogg Vorbis, MP3, AAC or FLAC file's loud
Because of this automatic gain adjustment, any files with average loudness higher than -14 dBFS will not sound louder than quieter files at playout time, but the lower crest factor in the louder files (their relatively low peak-to-average ratio) may be apparent in the output, making those files sound less dynamic. This may be an issue for contemporary popular music, which can average at -9 dBFS or louder before ReplayGain adjustment. (See <http://www.soundonsound.com/sos/sep11/articles/loudness.htm> for a detailed analysis of the problem).
Your station's producers should therefore aim for 14dB between peak and average loudness to maintain the crest factor of their prepared material (also known as _DR14_ on some dynamic range meters, such as the command-line DR14 T.meter available from <http://sourceforge.net/projects/dr14tmeter/>). If the producers are working to a different loudness standard, the ReplayGain modifier in LibreTime's Stream Settings page can be adjusted to suit their material.
Your station's producers should therefore aim for 14dB between peak and average loudness to maintain the crest factor of their prepared material (also known as _DR14_ on some dynamic range meters, such as the command-line DR14 T.meter available from <http://sourceforge.net/projects/dr14tmeter/>). If the producers are working to a different loudness standard, the ReplayGain modifier in LibreTime's Stream Settings page can be adjusted to suit their material.
Large transient peaks in otherwise quiet files should be avoided, to guard against the need for peak limiting when ReplayGain is applied to those quieter files.
@ -72,7 +72,7 @@ Here is an example of a very quiet file where the use of ReplayGain would make t
$ vorbisgain -d Peter_Lawson-Three_Gymn.ogg
Analyzing files...
   Gain | Peak | Scale | New Peak | Track
Gain | Peak | Scale | New Peak | Track
----------+------+-------+----------+------
+17.39 dB | 4536 | 7.40 | 33585 | Peter_Lawson-Three_Gymn.ogg
@ -81,9 +81,9 @@ And here is an example of a very loud file, with lower crest factor, where the o
$ vorbisgain -d Snoop_Dogg-Doggfather.ogg
Analyzing files...
   Gain   | Peak  | Scale | New Peak | Track
Gain | Peak | Scale | New Peak | Track
----------+-------+-------+----------+------
 -7.86 dB | 36592 |  0.40 |    14804 | Snoop_Dogg-Doggfather.ogg
-7.86 dB | 36592 | 0.40 | 14804 | Snoop_Dogg-Doggfather.ogg
In the output from vorbisgain, _Peak_ is the maximum sample value of the file before any ReplayGain has been applied, where a value of 32,767 represents full scale when decoding to signed 16 bit samples. Note that lossy compressed files can have peaks greater than full scale, due to encoding artifacts. The _New Peak_ value for the Snoop Dogg file may be relatively low due to the hard limiting used in the mastering of that piece of music.

View File

@ -36,19 +36,19 @@ Enter the server names you require, press **Ctrl+O** to write out the _/etc/ntp.
The server should respond:
* Stopping NTP server ntpd                                 [ OK ]
* Starting NTP server ntpd                                 [ OK ]
* Stopping NTP server ntpd [ OK ]
* Starting NTP server ntpd [ OK ]
Then use the **ntpq -p** command to confirm that **ntp** is working. This command should produce output similar to the following:
ntpq -p
remote      refid    st t when poll reach delay offset jitter
remote refid st t when poll reach delay offset jitter
==================================================================
europium. 193.79.237.14  2 u   28   64    3 39.571  12.600  3.590
norb.v4.c 46.227.200.72  3 u   28   64    3 47.856  -6.908 10.028
82.113.15 193.62.22.82   2 u   29   64    3 11.458  -0.513  2.629
ntppub.le 158.43.192.66  2 u   91   64    2 122.781  44.864  0.001
dns0.rmpl 195.66.241.3   2 u   27   64    3  22.171   1.464  4.242
europium. 193.79.237.14 2 u 28 64 3 39.571 12.600 3.590
norb.v4.c 46.227.200.72 3 u 28 64 3 47.856 -6.908 10.028
82.113.15 193.62.22.82 2 u 29 64 3 11.458 -0.513 2.629
ntppub.le 158.43.192.66 2 u 91 64 2 122.781 44.864 0.001
dns0.rmpl 195.66.241.3 2 u 27 64 3 22.171 1.464 4.242
### Adjusting the server time zone

View File

@ -244,7 +244,7 @@ end
#cc-4633
# NOTE
# NOTE
# A few values are hardcoded and may be dependent:
# - the delay in gracetime is linked with the buffer duration of input.http
# (delay should be a bit less than buffer)
@ -288,7 +288,7 @@ def input.http_restart(~id,~initial_url="http://dummy/url")
# Dummy output should be useless if HTTP stream is meant
# to be listened to immediately. Otherwise, apply it.
#
# output.dummy(fallible=true,source)
# output.dummy(fallible=true,source)
source
@ -311,7 +311,7 @@ def cross_http(~debug=true,~http_input_id,source)
end
end
# We use both metadata and status to know about the current URL.
# We use both metadata and status to know about the current URL.
# Using only metadata may be more precise is crazy corner cases,
# but it's also asking too much: the metadata may not pass through
# before the crosser is instantiated.
@ -333,18 +333,18 @@ def cross_http(~debug=true,~http_input_id,source)
end
if !change then
change := false
# In principle one should avoid crossing on a live stream
# In principle one should avoid crossing on a live stream
# it'd be okay to do it here (eg. use add instead of sequence)
# because it's only once per URL, but be cautious.
sequence([fade.out(duration=cross_d,a),fade.in(b)])
else
# This is done on tracks inside a single stream.
# This is done on tracks inside a single stream.
# Do NOT cross here or you'll gradually empty the buffer!
sequence([a,b])
end
end
# Setting conservative=true would mess with the delayed switch below
# Setting conservative=true would mess with the delayed switch below
cross(duration=cross_d,conservative=false,crosser,source)
end

View File

@ -244,7 +244,7 @@ end
#cc-4633
# NOTE
# NOTE
# A few values are hardcoded and may be dependent:
# - the delay in gracetime is linked with the buffer duration of input.http
# (delay should be a bit less than buffer)
@ -288,7 +288,7 @@ def input.http_restart(~id,~initial_url="http://dummy/url")
# Dummy output should be useless if HTTP stream is meant
# to be listened to immediately. Otherwise, apply it.
#
# output.dummy(fallible=true,source)
# output.dummy(fallible=true,source)
source
@ -311,7 +311,7 @@ def cross_http(~debug=true,~http_input_id,source)
end
end
# We use both metadata and status to know about the current URL.
# We use both metadata and status to know about the current URL.
# Using only metadata may be more precise is crazy corner cases,
# but it's also asking too much: the metadata may not pass through
# before the crosser is instantiated.
@ -333,18 +333,18 @@ def cross_http(~debug=true,~http_input_id,source)
end
if !change then
change := false
# In principle one should avoid crossing on a live stream
# In principle one should avoid crossing on a live stream
# it'd be okay to do it here (eg. use add instead of sequence)
# because it's only once per URL, but be cautious.
sequence([fade.out(duration=cross_d,a),fade.in(b)])
else
# This is done on tracks inside a single stream.
# This is done on tracks inside a single stream.
# Do NOT cross here or you'll gradually empty the buffer!
sequence([a,b])
end
end
# Setting conservative=true would mess with the delayed switch below
# Setting conservative=true would mess with the delayed switch below
cross(duration=cross_d,conservative=false,crosser,source)
end

View File

@ -235,7 +235,7 @@ end
#cc-4633
# NOTE
# NOTE
# A few values are hardcoded and may be dependent:
# - the delay in gracetime is linked with the buffer duration of input.http
# (delay should be a bit less than buffer)
@ -279,7 +279,7 @@ def input.http_restart(~id,~initial_url="http://dummy/url")
# Dummy output should be useless if HTTP stream is meant
# to be listened to immediately. Otherwise, apply it.
#
# output.dummy(fallible=true,source)
# output.dummy(fallible=true,source)
source
@ -302,7 +302,7 @@ def cross_http(~debug=true,~http_input_id,source)
end
end
# We use both metadata and status to know about the current URL.
# We use both metadata and status to know about the current URL.
# Using only metadata may be more precise is crazy corner cases,
# but it's also asking too much: the metadata may not pass through
# before the crosser is instantiated.
@ -324,18 +324,18 @@ def cross_http(~debug=true,~http_input_id,source)
end
if !change then
change := false
# In principle one should avoid crossing on a live stream
# In principle one should avoid crossing on a live stream
# it'd be okay to do it here (eg. use add instead of sequence)
# because it's only once per URL, but be cautious.
sequence([fade.out(duration=cross_d,sa),fade.in(sb)])
else
# This is done on tracks inside a single stream.
# This is done on tracks inside a single stream.
# Do NOT cross here or you'll gradually empty the buffer!
sequence([sa,sb])
end
end
# Setting conservative=true would mess with the delayed switch below
# Setting conservative=true would mess with the delayed switch below
cross(duration=cross_d,conservative=false,crosser,source)
end