In der Shell MP3 Dateien / Vorschau aus einem Ordner mit WAV Dateien zu konvertieren ist mit diesem Script hier bequem möglich. Dieses Script basiert auf lame und mp3cut. Viel Spaß:

#! /bin/sh
 
## <config>
 
	## .wav dir
	## format: <dir>/ use / as last character
	DIR="/home/user/wavFiles/" 
 
	## time for preview (optional)
	## format: 00:00-00:30 see mp3cut usage
	PREVIEWTiME="00:00-00:30" 
 
## </config>
 
if [ -n "${DIR}" ]; then
	if [ -d "${DIR}" ]; then
	for i in "${DIR}"*.wav; do
			NEWNAME="${i%.*}.mp3"
			lame -b 192 -h "$i" "${NEWNAME}"
			if [ -n "${PREVIEWTiME}" ]; then
				mp3cut -o "${i%.*}-preview.mp3" -t "${PREVIEWTiME}" "${NEWNAME}"
			fi		
		done
		exit 0
	else
		echo "# dirwav2mp3cut.sh - dir does not exist"
		exit 1
	fi
else
	echo "#\n# dirwav2mp3cut.sh - creates MP3 cuts in various length from .wav files in a folder.\n# Usage: Call ./dirwav2mp3cut.sh after config \n# Return: <name>-preview.mp3/\n#"
	exit 1
fi

Es sollte darauf geachtet werden, dass die Pfadangabe in DIR mit einem Schrägstrich (/) endet. Mit blanker Vorschau-Zeitangabe ist es möglich nur MP3s zu erstellen ohne diese zu schneiden:

PREVIEWTiME=""
Keine Kommentare »
 

Dateien die eigentlich UTF-8 sein sollten sind über verschiedene Ordner verteilt im ISO Format auf dem Dateisystem. Wer kennt das Problem nicht? :)
Hier ein kleines Script um ISO codierte Text Dateien rekursiv in UTF-8 codierte Dateien zu konvertieren.

#! /bin/sh
 
FILES=$(find "$1" -type f -name \*.txt)
 
for FILE in $FILES; do
	iconv -f ISO-8859-1 -t UTF-8  "${FILE}" > "${FILE}.tmp"; mv "${FILE}.tmp"  "${FILE}"
done

Die Dateierweiterung sollte nach Wunsch angepasst werden. Eine Installation von iconv ist möglicherweise nötig.

Keine Kommentare »
 

Standardabweichung in einem Beispiel
Der Mitarbeiter brauch an 5 Tagen 12,13,16 und 18 Minuten auf dem Weg zur Arbeit.

Berechnung Aritmethisches Mittel / Durchschnitt:
(12 + 13 + 16 + 18) / 4 = 14,75
Summiert man alle Zahlen und teilt Sie durch die Menge erhält man das Aritmethische Mittel.

Berechnung der Varianz:
((12 – 14,75)² + (13 – 14,75)² + (16 – 14,75)² + (18 – 14,75)²) / 3 = 7,583333333
Bei der Varianz Berechnung wird von jedem Wert aus der Liste das Aritmethische Mittel subtrahiert und das Ergebnis quadriert. Anschließend addiert man alle Ergebnisse und dividiert durch die Menge der Zahlen minus eins.

Berechnung der Standardabweichung:
√7,583333333 = 2,753785274
Die Standardabweichung wird berechnet indem aus der Varianz die Wurzel gezogen wird.

Die Standardabweichung beträgt 2,753785274.

PHP Funktion Standardabweichung

function stabw($valueArray) {
	$sum = array_sum($valueArray);
	$count = count($valueArray);
	$mean =	$sum / $count;
	$result = 0;
	foreach ($valueArray as $value)
		$result += pow($value - $mean, 2);
	unset($value);			
	$count = ($count == 1) ? $count : $count - 1;
	return sqrt($result / $count);
}

Die Funktion arbeitet mit allen arten von Arrays solange numerische Array Werte übergeben werden. Bsp.:

array(12, 'irgendwas' => 13, 11 => 16, 'beliebig' => 18);
Keine Kommentare »
 

Nach einem Serverumzug auf einen Apache2 und PHP via mod_fcgi Server endete ein WordPress MU Update in einem Apache Internal Server Error 500.
Andere Scripte mit längere Ausführungszeit endeten ebenfalls mit einem Internal Server Error 500.

Der Apache2 Error Log brachte folgendes Ergebnis (/var/log/apache2/error.log):

[warn] mod_fcgid: read data timeout in 40 seconds
[error] [client XXX.XXX.XXX.XXX] Premature end of script headers: index.php, referer: www.example.com/dir

Die Lösung war das anpassen der maximalen Wartezeit in Sekunden bis das Apache Modul Daten vom FastCGI Programm abgfrägt. Die alte Optionsbezeichnung war / ist IPCCommTimeout. Aktuell ist der Options Name FcgidIOTimeout. Je nach Installationsdatum beide Versionen funktional oder nur eine von beiden.
Das kann in der Datei /etc/apache2/mods-enabled/fcgid.conf erledigt werden:

<IfModule mod_fcgid.c>
   FcgidIOTimeout  7200
</IfModule>

In diesem Fall ist das Timeout sehr hoch eingestellt. Der oben verwendete Wert 7200 sind 120 Minuten. So hohe Einstellungen sind für den regulären Webseiten Betrieb nicht benötigt. Mehr über diese Option hier.

Anschließend den Apache neu starten.

/etc/init.d/apache2 restart

Das wars. Was auch immer vorher versucht hattet an länger laufenden Scripten auszuführen sollte nun funktionieren.

Keine Kommentare »
 

Mit ein paar Zeilen HTML und CSS lässt sich im Social Web große Präsenz vortäuschen somit Schafe (Besucher) dazu zu bringen euren Like / +1 / Tweet Button zu drücken. Der Snippet kann auch verwendet werden um im WWW mit vielen Anhängern zu protzen.

Technisch lässt sich das sehr einfach mit überliegenden DIV Container lösen in denen die beliebig angepasste Anzahl an Likes / Plus ones / Tweets eingetragen wird. Das sieht dann so aus:

 
886
135


(Inzwischen müssen aus Gründen der Privatsphäre die Social Fake Layers zunächst frei geschalten werden. Zum deaktivieren der Social Fake Layers Seite neu laden)

Ich verwende genau diesen Code auch hier im Blog für die Social Buttons hier im Blog.
Dieses Ergebnis entsteht aus nachfolgendem Stück Code. Der Platzhalter ***URL*** sollte durch die URL die promoted werden soll ersetzt werden.

<style>
.sociawrap-header {
	height: 80px;
	width: 270px;
	position: relative;
}
 
.sociawrap-header .g-plusone-wrap, .sociawrap-header .twitter-share-button, .sociawrap-header .fb-like-wrap { 
	float: right; 
	margin-left: 20px;
	margin-top: 11px;
}
 
.sociawrap-header .fb-like-wrap { 
	width: 90px; 
	height: 60px; 
	margin-top: 13px;
}
 
.fb-fake {
	z-index: 999;
	position: absolute;
	right: 19px;
	top: 17px;
 	font-family: "verdana",sans-serif;
	font-size: 13px;
	background-color: #fff;
	color: #333333;
}
 
.twitter-fake {
	z-index: 999;
	position: absolute;
	right: 128px;
	top: 16px;
 	font-family: "verdana",sans-serif;
	font-size: 16px;
	background-color: #fff;
	color: #333333;
	font-family: Helvetica Neue',Arial,sans-serif;
}
 
.google-fake {
	z-index: 999;
	position: absolute;
	right: 212px;
	top: 16px;
	font-size: 16px;
	background-color: #fff;
 	color: #666666;
        font-family: arial,sans-serif;
}
</style>
<div class="sociawrap-header">
	<div class="fb-like-wrap"><div class="fb-like" href="***URL***" width="450" show_faces="false" data-layout="box_count" action="like" font="verdana"></div></div>
	<a href="http://twitter.com/share" class="twitter-share-button" data-url="***URL***" data-count="vertical" lang="de">Tweet</a>
	<div class="g-plusone-wrap"><div class="g-plusone" data-size="tall" href="***URL***"></div></div>
	<div class="right_clearer">&nbsp;</div>
	<div class="fb-fake">886</div>
	<div class="twitter-fake">225</div>
	<div class="google-fake">135</div>
</div>
Keine Kommentare »
 

Neues Blog Design

monkey-business.biz erstrahlt in neuen Design.
Ich hoffe das neue Blog Design (hübsche Schrift) findet anklang. :)

Das alte Design zur Erinnerung:
monkey-business-design-12.0

Edit:
Die Social Buttons mussten leider den Platz auf dem Blog einbüsen. Mein Resume daraus: Das Besucherclientel der Webseite verwendet die Buttons verhältnismäßig wenig. Die ständigen Änderungen an den Buttons seitens der Anbieter Google, Twitter und Facebook waren nervig. Dadurch mussten diese öfters neu positioniert werden. Die mehr oder weniger aktuelle Überwachnung (PRISM etc.) zwingt mich dazu keine fremden Elemente mehr auf meiner Internetseite einzubinden. Google Analytics wurde durch die freie Web Analyse Software Piwik ersetzt. Die USA mussten leider gehen.

Keine Kommentare »