Streaming video avec netcat et mencoder

netcat & mencoder

Serveur Side

open_streaming.sh

#!/bin/bash

# 500 is acceptable for bitrate, 1000 gives very nice quality

BITRATE=500

MAX_XRES=640

MAX_YRES=480

LISTEN_PORT=443

# oac copy should work fine most of the time

#AUDIO="-oac mp3lame -lameopts preset=192"

AUDIO="-oac copy"

mkfifo "/tmp/maemo_stream-$$"

{ nc -q 0 -l -p $LISTEN_PORT < "/tmp/maemo_stream-$$"; killall -9 mencoder; rm -f "/tmp/maemo_stream-$$"; } &

mencoder -o "/tmp/maemo_stream-$$" $AUDIO -ovc lavc \

-lavcopts vcodec=mpeg4:vbitrate=${BITRATE}:aspect=${MAX_XRES}/${MAX_YRES}:mbd=2:trell:threads=2 \

-idx -zoom -vf-add dsize=${MAX_XRES}:${MAX_YRES}:2,scale \

-vf-add expand=${MAX_XRES}:${MAX_YRES}::::${MAX_XRES}/${MAX_YRES} -vf-add crop=${MAX_XRES}:${MAX_YRES} \

-ffourcc FMP4 "$1"

rm -f "/tmp/maemo_stream-$$"

Client Side

nc -q 0 hostname 443 | mplayer -fs -vo sdl -hardframedrop -cache 512 -cache-min 80 -

App

Streaming audio/vidéo avec cat & mplayer over SSH 1 sans chiffrement

Voici comment streamer tout types de fichiers, audio comme vidéo, contenus sur un serveur distant.

Nous utiliserons pour cela ssh(client/serveur), cat et mplayer.

Configuration du serveur SSH

/etc/ssh/sshd_config
Protocol 2,1

Créer un certificat RSA1
ssh-keygen -t rsa1 -f /usr/local/etc/ssh_host_key -N ""

invoke-rc.d ssh restart
Restarting OpenBSD Secure Shell server: sshd.

Si le démon sshd ne redémarre pas:
mkdir /var/empty
chown root:sys /var/empty
chmod 755 /var/empty

Recompiler ssh avec l’option –with-none

sshd-compilation

Client (poste bureautique sous Linux par exemple)

ssh -oCypher=none user@serveur -- cat ~/video.avi | mplayer -

Quelques explications pour finir

  1. Le client se connect en ssh(port:22) -> sur le serveur distant
  2. Une connexion ssh est ouverte entre le client et le serveur utilisant le protocol SSH1 (clef RSA1)
  3. Le client lance la commande cat à travers le tunnel ssh (créé avec l’option -oCypher=none), le flux de donnée transite en clair sans encryption sur le réseau allégeant le CPU sur le serveur et optimisant la BP.
  4. mplayer avec l’option –hard-framedrop améliore encore « le rendu » de la vidéo

Attention cependant certaines vidéos encoder en HD nécessite une BP > 100ko/sec en Up.

Immatriculer un 2 roues à Antibes

Téléc@rteGrise est un nouveau téléservice mis en place par le ministère de l’Intérieur pour vous permettre d’obtenir un certification de situation administrative de votre véhicule sans avoir à vous déplacer en préfecture.
https://siv.interieur.gouv.fr/map-usg-ui/do/article_accueil

Démarches Administratives:
http://www.alpes-maritimes.pref.gouv.fr/depot/splAM.html?spl_c=547140&spl_f=N0/N21/N368/N367&spl_l=67&spl_p=

Documents officiels (obligatoire):
http://www.alpes-maritimes.pref.gouv.fr/sections/l_etat_en_06/sous_prefecture_de_g/presentation_des_mis/les_services_de_la_s/service_de_la_circul/sections/a_votre_service/vos_demarches_en_pre/carte_grise/

Calculer le prix de sa carte grise:
http://www.alpes-maritimes.pref.gouv.fr/depot/tarifcg/index.html

Mes 15 plugins Firefox

mes-15-plugins-firefox

Et vous vous utilisez quel plugin ?

App

Qui a le plus de serveurs Web ?

1&1 Internet: 55 000 serveurs
OVH: 55 000 serveurs
Rackspace: 50 038 serveurs
The Planet: 48 500 serveurs
Akamai Technologies: 48 000 serveurs
SBC Communications: 29 193 serveurs
Verizon: 25 788 serveurs
Time Warner Cable: 24 817 serveurs
SoftLayer: 21 000 serveurs
AT&T: 20 268 serveurs
Peer1/ServerBeach: 10 277 serveurs
iWeb: 10 000 serveurs

En savoir plus

Web

Utiliser son téléphone portable (Sony Ericsson W910i) comme télécommande XBMC

jremote

J-Remote est un client java permettant d’accéder à XBMC via bluetooth.

Pré-requis
XBMC compilé avec le support bluetooth.

Télécharger depuis le téléphone mobile:
http://www.benjaminbaudouin.com/depot/J-Remote_Client_v0.3.jar

Archiver les emails sous Evolution

Ce script permet d’archiver tous les mails (sous évolution) antérieurs à 2009:

#!/bin/bash
# Shutdown application
gconftool-2 --shutdown
evolution --force-shutdown
SOURCE_EVOLUTION="$HOME/.evolution/mail/local/"
BACKUP_FOLDER="$HOME/mail-archives/"
EVOLUTION_DIRS="/tmp/evolution_dirs"
if [ $1 == "-n" ]
then
DRY_RUN="-n"
else
DRY_RUN=""
fi
if [ ! -e $BACKUP_FOLDER ]
then
mkdir $BACKUP_FOLDER
echo -e "$BACKUP_FOLDER created"
fi
echo -e "Backup will be done here: $BACKUP_FOLDER"
find $SOURCE_EVOLUTION | perl -ape 's#^.*(index|data|msf|meta|cmeta|summary|gz|bd|journal).*\n$##g' | sort -u | sed -e'1d' > $EVOLUTION_DIRS
while read dir
do
for year in 2008
do
echo -e ""
echo -e "archivemail on $dir for $year ..."
#year plus one
year_po=$((year + 1))
archivemail $DRY_RUN -o $BACKUP_FOLDER -D "1 Jan $year_po" -s _$year "$dir"
echo -e "archivemail on $dir for $year [OK]"
echo -e ""
done
done < $EVOLUTION_DIRS

En ligne de commande:

evolution-backup --backup $HOME/evolution-backup.tar.gz

Source:

App

Recent Tweets

Catégories