Nautilus script per un perfetto screencast

 

Volevo segnalare un ottimo script per Nautilus, che aiuta ad  eseguire in tutta comodità screencast video o audio/video, il tutto con una bella ed ordinata gui, fatta con zenity e sfruttando chiaramente ffmpeg. Questo script dal nome ZDesktopRecorder è stato creato da c2asr, in seguito ad un post da me fatto dal titolo "Screencast Perfetto di una singola finestra con FFmpeg", che dire, se non che questa è la classica ciliegina sulla torta 🙂 Quindi ringraziando per la collaborazione di nuovo c2asr invito a provarlo.

 

1) Download

2) Download

enjoy 😉

Debian Wheezy/Sid errore dipendenze xorg-video-abi-6.0

 

Facendo l'aggiornamento da Debian Squeeze a Debian Wheezy/Sid (Sid) ho avuto l'errore:

 

I seguenti pacchetti hanno dipendenze non soddisfatte:
 xserver-xorg-core : Rompe: xserver-xorg-input-7
                     Rompe: xserver-xorg-video-6

 

questo problema è dovuto alla versione di xserver-xorg-core, quindi per venirne fuori bisogna aggiungere i repository experimental, quindi:

 

# apt-get update
# apt-get install xserver-xorg-core -t experimental

 

successivamente reinstallare i driver Nvidia/Ati.

 

enjoy 😉

Repository Debian Squeeze/Wheezy/Sid Febbraio 2011

 

 

Repository per Debian Squeeze-Wheezy-Sid, ufficiali e di terze parti, aggiornati a febbraio 2011.

 

 

Debian Squeeze (stable):

 

################  Repo Debian Squeeze Ufficiali ############

deb https://ftp.it.debian.org/debian/ squeeze main contrib non-free
deb-src https://ftp.it.debian.org/debian/ squeeze main contrib non-free

deb https://security.debian.org/ squeeze/updates main contrib non-free
deb https://ftp.it.debian.org/debian/ squeeze-proposed-updates main contrib non-free

###############  Repo Debian Squeeze terze parti ##########

#### Debian Multimedia
deb  squeeze main
deb-src  squeeze main

#### E17
deb  squeeze main extras

#### Esmska
deb https://repo.palatinus.cz/stable /

#### Skype
deb  stable non-free

#### Opera
deb https://deb.opera.com/opera/ squeeze non-free

#### VirtualBox
deb https://download.virtualbox.org/virtualbox/debian squeeze contrib

#### Wine
deb https://www.lamaresh.net/apt squeeze main

#### aMule-AdunanzA i386-amd64
deb https://deb.matteobonora.it/debian squeeze main

####Hadret’s Debian
deb  unstable main

#### Edmond kernel repository
deb https://www.edmondweblog.com/repo/ binary/

 

 

Debian Wheezy (testing):

 

################  Repo Debian Wheezy Ufficiali ############

deb https://ftp.it.debian.org/debian/ testing main contrib non-free
deb-src https://ftp.it.debian.org/debian/ testing main contrib non-free

deb https://security.debian.org/ testing/updates main contrib non-free

###############  Repo Debian Wheezy terze parti ##########

#### Debian Multimedia
deb  testing main

#### E17
deb  squeeze main extras

#### Esmska
deb https://repo.palatinus.cz/testing /

#### Skype
deb  stable non-free

#### Opera
deb https://deb.opera.com/opera/ squeeze non-free

#### VirtualBox
deb https://download.virtualbox.org/virtualbox/debian squeeze contrib

#### Wine
deb https://www.lamaresh.net/apt squeeze main

#### aMule-AdunanzA i386-amd64
deb https://deb.matteobonora.it/debian wheezy main

####Hadret’s Debian ppa
deb  unstable main

#### Edmond kernel repository
deb https://www.edmondweblog.com/repo/ binary/

 

 

Debian Sid (unstable):

 

################  Repo Debian Sid Ufficiali ############

deb https://ftp.it.debian.org/debian/ sid main contrib non-free
deb-src https://ftp.it.debian.org/debian/ sid main contrib non-free

###############  Repo Debian Sid terze parti ##########

#### Debian Multimedia
deb  sid main

#### E17
deb  sid main extras

#### Esmska
deb https://repo.palatinus.cz/unstable /

#### Skype
deb  stable non-free

#### Opera
deb https://deb.opera.com/opera/ sid non-free

#### VirtualBox
deb https://download.virtualbox.org/virtualbox/debian squeeze contrib

#### Wine
deb https://www.lamaresh.net/apt sid main

#### aMule-AdunanzA i386-amd64
deb https://deb.matteobonora.it/debian sid main

####Hadret’s Debian ppa
deb  unstable main

#### Edmond kernel repository
deb https://www.edmondweblog.com/repo/ binary/

 

 

Debian Experimental:

 

### Experimental
deb https://ftp.it.debian.org/debian experimental main

 

 

Importare chiavi GPG

 

Multimedia:

# apt-get update && apt-get install debian-multimedia-keyring && apt-get update

 

E17:

# wget -q  -O- | apt-key add -

 

Esmka:

# wget -q -O - https://repo.palatinus.cz/repo.key | apt-key add -

 

Skype:

# gpg --keyserver pgp.mit.edu --recv-keys 0xd66b746e
# gpg --export --armor 0xd66b746e  | apt-key add -

 

VirtualBox:

# wget -q https://download.virtualbox.org/virtualbox/debian/oracle_vbox.asc -O- | apt-key add -

 

Wine:

# wget -O - https://www.lamaresh.net/apt/key.gpg | apt-key add -

 

Opera:

# wget -O - https://deb.opera.com/archive.key | apt-key add -
$ wget -O - https://deb.opera.com/archive.key | sudo apt-key add -

 

Hadret’s Debian ppa:

# wget -O -  | apt-key add -

 

aMule-AdunanzA i386-amd64:

$ gpg --keyserver hkp://subkeys.pgp.net --recv-key D45A244D
$ gpg -a --export D45A244D | apt-key add -

 

enjoy 😉

Installare Gnome Shell su Debian Squeeze da Git

 

 

 

 

Ho voluto testare dopo un pò di tempo Gnome-Shell e quindi mi sono deciso a riprovarlo, facendo tutta la compilazione da Git. Ho avuto diversi problemi ma alla fine tutto è andato ok, grazie anche a San Google.

 

Requisiti:

 

 

 

Scaricare lo script:

 

$ curl -O https://git.gnome.org/browse/gnome-shell/plain/tools/build/gnome-shell-build-setup.sh

 

Esportare il Path:

 

$ export PATH=$PATH:/home/NOME-UTENTE/bin

 

da adesso in poi è meglio mettersi comodi, in quanto la compilazione prenderà un ora e mezza circa, almeno nel mio caso che ho dovuto risolvere 4 o 5 problemi:

 

Compilazione:

 

$ chmod +x gnome-shell-build-setup.sh

$ ./gnome-shell-build-setup.sh

$ jhbuild build

 

da questo momento in poi si verificheranno degli errori, che mostrerò nell'immagini.

 

Errore 1:

 

 

si risolve aprendo un'altra shell, andando ad aggiungere ad /etc/apt/sources.list i repository experimental:

 

# Experimental
deb https://ftp.it.debian.org/debian experimental main

 

quindi installare:

 

# apt-get install -t experimental libmozjs-dev

 

tornare alla shell principale, premere "6" e poi "yes" per ripartire.

 

Errore 2:

 

 

si risolve con:

 

# apt-get install -t experimental xulrunner-dev

 

Errore 3:

 

 

su Debian 32bit:

 

# nano /usr/lib/pkgconfig/libxklavier.pc

 

su Debian 64bit:

 

# nano /usr/lib64/pkgconfig/libxklavier.pc

 

e sostituire 5.0 con 5.1.

 

Errore 4:

 

 

c'è un problema con libnotify, si risolve con:

 

$ cd ~/bin
$ ./jhbuild shell
$ cd ~/gnome-shell/source
$ git clone git://git.gnome.org/libnotify
$ cd ./libnotify
$ ./autogen.sh –prefix $HOME/gnome-shell/install/
$ make && make install

 

a questo punto io non ho più avuto problemi per quanto riguarda la compilazione. Nel caso di ulteriori errori guardare quà.

 

Al momento di lanciare Gnome-Shell con:


$ cd ~/gnome-shell/source/gnome-shell/src

$ ./gnome-shell --replace

 

ho avuto il problema Cannot register the panel shell: there is already one running, risolto con:

 

$ rm ~/gnome-shell/install/lib64/gtk-3.0/modules/libcanberra-gtk-module.so


invece su Debian 32 bit:

 

$ rm ~/gnome-shell/install/lib/gtk-3.0/modules/libcanberra-gtk-module.so

 

Spero di non aver scordato niente, comunque Gnome-Shell non è male, anche se non mi entusiasma più di tanto e quindi vado cauto con i giudizi.

 

 

enjoy 😉

Screencast Perfetto di una singola finestra con FFmpeg

 

Il titolo di questo post inizia con "Screencast Perfetto", e magari ad alcuni potrà sembrare un tantino esagerato, ma secondo me non lo è affatto. In Gnu/Linux esistono diversi programmi per fare uno screencast, ne cito uno per tutti, RecordmyDektop, anche se io ho sempre preferito utilizzare FFmpeg, Quello che ho notato in tutti i programmi è la "difficoltà" di centrare la finestra o il terminale in maniera precisa, certo nulla di grave, basta mettersi lì e perdere un pò di tempo per trovare il rettangolo perfetto. Però finalmente io ho trovato la soluzione che mi soddisfa completamente, e questo grazie a FFmpeg, che io amo molto, tanto è vero che gli ho dedicato una categoria esclusiva 🙂 Comunque andando al sodo la soluzione è la seguente:

$ xwininfo

digitando nel terminale xwininfo e successivamente toccando una finestra, avremo a disposizione molte informazioni:

xwininfo: Please select the window about which you
          would like information by clicking the
          mouse in that window.

xwininfo: Window id: 0x2424585 (has no name)

  Absolute upper-left X:  274
  Absolute upper-left Y:  219
  Relative upper-left X:  274
  Relative upper-left Y:  219
  Width: 654
  Height: 439
  Depth: 0
  Visual: 0x21
  Visual Class: TrueColor
  Border width: 0
  Class: InputOnly
  Colormap: 0x0 (not installed)
  Bit Gravity State: ForgetGravity
  Window Gravity State: NorthWestGravity
  Backing Store State: NotUseful
  Save Under State: no
  Map State: IsViewable
  Override Redirect State: yes
  Corners:  +274+219  -352+219  -352-366  +274-366
  -geometry 654×439+274+219
 

io ho preso queste informazioni toccando la finestra che mi interessava, e come si può vedere ci sono molti dati utili, tra cui il posizionamento-Corners-geometry. Adesso non bisogna fare altro che darle in pasto a FFmpeg. Quindi per prima cosa bisogna creare lo script record.sh, ed incollarci dentro:

 

#!/bin/sh

INFO=$(xwininfo -frame)

WIN_GEO=$(echo $INFO | grep -oEe 'geometry [0-9]+x[0-9]+' | grep -oEe '[0-9]+x[0-9]+')
WIN_XY=$(echo $INFO | grep -oEe 'Corners:\s+\+[0-9]+\+[0-9]+' | grep -oEe '[0-9]+\+[0-9]+' | sed -e 's/\+/,/' )

ffmpeg -f x11grab -r 25 -b 2000k -s $WIN_GEO -i :0.0+$WIN_XY /tmp/screencast.avi

 

in caso di problemi di formattazione si può scaricare da quà:

settare i permessi:

$ chmod +x record.sh

e lanciare:

$ ./record.sh

adesso non dobbiamo fare altro che toccare la finestra da registrare e lo script si occuperà in automatico della posizione precisa, salvando lo screencast in /tmp. Attenzione: per registrare il terminale bisogna toccare la barra della finestra, altrimente lo script non riesce a determinare l'esatta posizione, non so il motivo, per quanto riguarda tutto il resto, basta cliccare in un punto qualsiasi delle finestre.

FFmpeg ti amo!!!

enjoy 😉

Copiare con cp e barra di progresso

 

 

 

 

Advanced Copy è una mod per i tools cp e mv, e si occupa di far apparire nel terminale una barra di progresso che rende visibile il tempo e la % di una copia di un file. Per abilitare questa mod, bisogna seguire pochi semplici passi:

 

 

$ wget https://ftp.gnu.org/gnu/coreutils/coreutils-8.4.tar.gz
$ tar xvzf coreutils-8.4.tar.gz
$ cd coreutils-8.4/
$ wget
$ patch -p1 -i advcpmv-0.3-8.4.patch
$ ./configure
$ make
$ sudo cp src/cp /usr/bin/cp
$ sudo cp src/mv /usr/bin/mv

 

per avere la barra di progresso basta usare le opzioni cp -g e mv -g, senza andare a cambiare il comportamento solito di cp e mv. Per rendere definitivo il cambiamento invece aggiungere a .bashrc  gli alias:

 

alias cp='cp -g'
alias mv='mv -g'

 

Il comando dell' immagine sopra è:

 

$ cp -g debian-squeeze-di-beta1-amd64-netinst.iso /home/edmond/

 

 

enjoy 😉

Inserire logo in un video con FFmpeg

 

Un pò di tempo fa c'era la possibilità di inserire un logo in un video con FFmpeg usando vhook, ma ho scoperto che adesso questo non è più possibile, o meglio, non è più possibile con vhook, ma si può fare lo stesso usando Soc e libavfilter, infatti nel mio post precedente, ho parlato di come installare FFmpeg da sorgenti, appunto per poter compilare ed utilizzare queste librerie. Diciamo che la possibilità di inserire un logo in un video può essere molto utile, specialmente per chi vuole marchiare i propri video per renderli unici, non proprio come il mio dove ho inserito tux-sioux gigante 🙂

Ed ecco di seguito un' altro dei comandi magici:

$ ffmpeg -i video.avi  -vf "movie=0:png:immagine.png [logo]; [in][logo] overlay=10:10:1" output.avi

ps: per chi è pigro ed interessato a limite inserirò i pacchetti ffmpeg e x264 nel mio repository.

ps: la "cosa mancante" del post precedente è –enable-filter=movie

enjoy 😉

Building FFmpeg su Debian Squeeze con libavfilter e x264

 

Ho scoperto da poco che nell'installazione di default di ffmpeg, manca qualcosa, e che proprio questa cosa che manca ,mi serve per un "esperimento". Comunque andando per ordine e tralasciando a cosa mi serve la  "cosa mancante" ,ho deciso di compilare ffmpeg ex novo, con il supporto x264 e libavfilter. Quindi come primo procedimento ho disinstallato la versione installata dai repo.

 

# apt-get remove ffmpeg x264 libx264-dev

 

dopo di chè ho installato tutto quello che serve per una corretta compilazione:

 

# apt-get build-dep ffmpeg

 

servono anche:

 

# apt-get install build-essential subversion git-core checkinstall yasm texi2html libfaac-dev libfaad-dev libmp3lame-dev libopencore-amrnb-dev libopencore-amrwb-dev libsdl1.2-dev libx11-dev libxfixes-dev libxvidcore4-dev zlib1g-dev

 

Scaricare compilare ed installare  soc x264 e ffmpeg:

 

$ svn co svn://svn.ffmpeg.org/soc

$ cd soc/libavfilter

$ ./checkout.sh

$ cd ffmpeg

$ ./configure --enable-gpl --enable-version3 --enable-nonfree --enable-pthreads --enable-libfaac --enable-libmp3lame --enable-libopencore-amrnb --enable-libopencore-amrwb --enable-libtheora --enable-libx264 --enable-libxvid --enable-x11grab --enable-libtheora --enable-libgsm --enable-libvorbis --enable-filter=movie --enable-avfilter --enable-postproc

$ make

 

con ERROR: libx264 not found, oppue senza, bisogna installare x264:

 

$ cd ../../..

$ git clone git://git.videolan.org/x264.git

$ cd x264

$ ./configure

$ make

# checkinstall --fstrans=no --install=yes --pkgname=x264 --pkgversion "1:0.svn`date +%Y%m%d`-squeeze" --backup=no --default

 

tornare nella cartella di ffmpeg:

 

$ cd ../soc/libavfilter/ffmpeg

$ ./configure --enable-gpl --enable-version3 --enable-nonfree --enable-pthreads --enable-libfaac --enable-libmp3lame --enable-libopencore-amrnb --enable-libopencore-amrwb --enable-libtheora --enable-libx264 --enable-libxvid --enable-x11grab --enable-libtheora --enable-libgsm --enable-libvorbis --enable-filter=movie --enable-avfilter --enable-postproc

$ make

# checkinstall --pkgname=ffmpeg --pkgversion "5:0.7+svn`date +%Y%m%d`" --backup=no --default

 

adesso abbiamo una nuova installazione di ffmpeg con quel qualcosa che mi mancava, ma di cui scriverò la prossima volta 🙂

 

enjoy 😉

Googleearth su Debian Squeeze amd64

 

 

 

Come installare facilmente e senza errori googleearth su Debian Squeeze amd64, in soli tre step.

 

Step 1: installare googleearth-package più dipendenze varie:

 

# apt-get install googleearth-package lsb-core ia32-libs-gtk alien cups-bsd ed ia32-libs-gtk librpmbuild1 lsb-core pax rpm

 

Step 2: build pacchetto deb:

 

$ make-googleearth-package

 

Step 3: installazione pacchetto googleearth.deb:

 

# dpkg -i googleearth_6.0.1.2032+0.6.0-1_amd64.deb

 

enjoy 😉

Abilitare la voce elimina in Nautilus per Debian/Ubuntu

 

Quando si vuole eliminare un file in Debian o Ubuntu, Nautilus di default è settato con la voce " Sposta nel cestino", per poi successivamente dal cestino eliminarlo definitavamente. Per abilitare la voce "elimina" nel menu di Nautilus basta:

$ gconf-editor

e spostarsi in:

apps/nautilus/preferences/

ed abilitare:

enable_delete

 

enjoy 😉