Home / Community / Blog

Nowadays everybody use some conferencing systems. If you would like to have your own, on controlled infrastructure, maybe only in LAN/VPN environment you can try Jitsi.

The "demo" installation in CentOS 7 based on docker containers is quite simple.

Install docker and docker-compose

If you already have docker installed skip this step. You can also read Docker in CentOS 7 in 5 steps.

curl -fsSL https://get.docker.com/ | sh
systemctl start docker
systemctl enable docker
curl -L "https://github.com/docker/compose/releases/download/\
1.23.1/docker-compose-$(uname -s)-$(uname -m)" \
-o /usr/local/bin/docker-compose
chmod +x /usr/local/bin/docker-compose

Prepare environment

Install GIT
yum install git
Download docker files
git clone https://github.com/jitsi/docker-jitsi-meet && cd docker-jitsi-meet
Prepare directories
mkdir -p ~/.jitsi-meet-cfg/{web/letsencrypt,transcripts,prosody,jicofo,jvb}
cp env.example .env
Needed modifications

If you want to use it in LAN/separated network you have to change

DOCKER_HOST_ADDRESS=192.168.1.89
JVB_STUN_SERVERS=

in .env file. Of course DOCKER_HOST_ADDRESS will be YOUR docker IP address.

If you not set JVB_STUN_SERVERS to null value you won't be able to join the conference. You can change it later in

~/.jitsi-meet-cfg/jvb/sip-communicator.properties file.

Configure firewall

cat <<EOF > /etc/firewalld/services/jitsi.xml
<?xml version="1.0" encoding="utf-8"?>
<service>
  <short>Jitsi</short>
  <description>Multi-platform open-source video conferencing system</description>
  <port protocol="tcp" port="8000"/>
  <port protocol="tcp" port="8443"/>
  <port protocol="tcp" port="4443"/>
  <port protocol="udp" port="10000"/>
</service>
EOF

firewall-cmd --reload
firewall-cmd --add-service jitsi
firewall-cmd --permanent --add-service jitsi
Start all
docker-compose -f docker-compose.yml -f etherpad.yml up -d

As you can see I've also added etherpad - for document sharing.

Install chromaprint:

yum install https://dl.fedoraproject.org/pub/epel/epel-release-latest-8.noarch.rpm
yum install libchromaprint

You have to use epel-release-latest (not epel-release) not to get:

Problem: package ffmpeg-4.2.1-3.el8.x86_64 requires libavdevice.so.58()(64bit), but none of the providers can be installed
  - package ffmpeg-4.2.1-3.el8.x86_64 requires libavdevice.so.58(LIBAVDEVICE_58)(64bit), but none of the providers can be installed
  - conflicting requests
  - nothing provides libjack.so.0()(64bit) needed by libavdevice-4.2.1-3.el8.x86_64
(try to add '--skip-broken' to skip uninstallable packages or '--nobest' to use not only best candidate packages)

Install beet

pip3 install beets
pip3 install pyacoustid

Enable plugins:

echo "plugins: duplicates chroma"  >> .config/beets/config.yaml

Install fpcalc

cd /tmp
wget "https://github.com/acoustid/chromaprint/releases/download/v1.4.3/chromaprint-fpcalc-1.4.3-linux-x86_64.tar.gz"
cd /usr/local/bin/
tar -xzf /tmp/chromaprint-fpcalc-1.4.3-linux-x86_64.tar.gz
ln -s chromaprint-fpcalc-1.4.3-linux-x86_64/fpcalc .

Install ffmpeg (RPM Fusion, How To Install FFmpeg on CentOS 8, How to turn CentOS 8 into a perfect desktop):

yum install --nogpgcheck https://download1.rpmfusion.org/free/el/rpmfusion-free-release-8.noarch.rpm
yum install --nogpgcheck https://download1.rpmfusion.org/nonfree/el/rpmfusion-nonfree-release-8.noarch.rpm
yum config-manager --enable PowerTools
yum config-manager --enable epel-testing
yum config-manager --enable rpmfusion-free-updates-testing
yum install ffmpeg

Now beet can fingerprint files:

beet fingerprint

I want to import my pictures tags made in F-Spot (0.8.2) to digiKam (4.10)

I found Roland Geider script but it doesn't work in totay's Linux (differences in DBUS structure): Original F-Spot to digiKam script.

I've made trivial correction (comment-out problematic code) and now script looks like this:

You have to provide collection with the same path like in F-Spot. It can import tags.

If your F-Spot path doesn't exists anymore you have to alter photos.db. In my case some of pictures had path /home/zdjatka and some /mnt/zdjatka, but now all pictures are in the same place /mnt/zdjatka, so I alter path:

cp ~/.config/f-spot/photos.db ~/photos.db
sqlite3 ~/photos.db
update photos \
set base_uri=REPLACE(base_uri, "home", "mnt") \
where base_uri not like "%/mnt/zdjatka%";
update photo_versions \
set base_uri=REPLACE(base_uri, "home", "mnt") \
where base_uri not like "%/mnt/zdjatka%";
.quit

as you can see photos.db is sqlite3 database (usually located at ~/.config/f-spot/photos.db) and I copied file to home directory (not to modify original file).

Assuming you digiKam is initialized in Pictures directory and you have defined collection in same folder as is defined in F-Spot database (photos.db) complete command to convert is:

python fspot_to_digikam.py Pictures --fspot-folder .

To enable acoustic fingerprinting in beets You have to install python acoustid library. My NAS uses Debian, so:

apt-get install python-acoustid

Now You can enable Chromaprint plugin (using beet config -e or directly editing ~/.config/beets/config.yaml file):

plugins: duplicates chroma

as you can see I have also enabled duplicate plugin.

Now if You run

beet fingerprint

You will get a lot of:

fingerprinting
fingerprint generation failed: audio could not be decoded

so I also installed:

apt-get install python-gi
apt-get install gstreamer1.0-plugins-good \
gstreamer1.0-plugins-bad gstreamer1.0-plugins-ugly
apt-get install ffmpeg libchromaprint-tools \
python-chromaprint libchromaprint0 gstreamer0.10-chromaprint \
libchromaprint-dev

but it doesn't work.

On the other hand fpcalc works.

I've installed the newest version:

wget "https://bitbucket.org/acoustid/chromaprint/downloads/chromaprint-fpcalc-1.4.1-linux-x86_64.tar.gz"
tar -xzf chromaprint-fpcalc-1.4.1-linux-x86_64.tar.gz
mv chromaprint-fpcalc-1.4.1-linux-x86_64 /usr/local/bin/
cd /usr/local/bin/
ln -s chromaprint-fpcalc-1.4.1-linux-x86_64/fpcalc

but still I've got the same error:

root@MyNAS:/tmp# beet import -W piosenka.mp3
fingerprinting of '/tmp/piosenka.mp3' failed: audio could not be decoded

/tmp/piosenka.mp3 (1 items)
No matching release found for 1 tracks.
For help, see: http://beets.readthedocs.org/en/latest/faq.html#nomatch
[U]se as-is, as Tracks, Group albums, Skip, Enter search, enter Id, aBort?

Nowadays if you want to clean up your MP3 collection instead of writing your own scripts You should better read about MusicBrainz/Picard, beets (witch Duplicates plugin) - they both (and VLC too!) use AcoustID.

You can also try, quite old, Echoprint/Server for the Echoprint.

When You use MS Windows, the best way to convert audio CD to MP3 (such program is also called grabber or ripper) is to use CDex - Open Source Digital Audio CD Extractor.

It's simple, uses GPL license and automatically fills MP3 Tags using CDDB (freedb.org) and/or local database. It also have portable edition (today only 1.77).

To get images placed on map based on GPS tags in Piwigo (2.9) I had to install and enable "Exiftool GPS" plugin and install exiftools.

I've downloaded it and unpack in /tmp directory:

cd /tmp
wget "http://www.sno.phy.queensu.ca/~phil/exiftool/Image-ExifTool-10.51.tar.gz"
tar -xzf Image-ExifTool-10.51.tar.gz
cd Image-ExifTool-10.51

Prepare directory and copy files

mkdir /usr/local/Image-ExifTool-10.51
cp exiftool /usr/local/Image-ExifTool-10.51/exiftool
cp -r lib /usr/local/Image-ExifTool-10.51

Prepare symbolic links

cd /usr/local
ln -s Image-ExifTool-10.51 Image-ExifTool
cd bin
ln -s ../Image-ExifTool/exiftool .
mkdir /usr/local/lib/site_perl
cd /usr/local/lib/site_perl
ln -s ../../Image-ExifTool/lib/File ../../Image-ExifTool/lib/Image .

and now it works:

root@NAS:~# exiftool --help
Syntax:  exiftool [OPTIONS] FILE

Consult the exiftool documentation for a full list of options.

This is short-cut for PowerShot SX230HS users. I got this informations from Canon Hack Development Kit site.

First of all you have to check your firmware version. Jut put an empty ver.req or vers.req file on your SD card. I've put both. Then press the func set+disp. buttons together (i.e. press set first, keep holding it down, then press disp.)

You will see something like Firmware Ver GM1.01C (in my case). The 1.01C is firmware version.

Now go to CHDK Download page and get proper file. In my case sx230hs-101c-1.4.1-4691-full.zip.

Unzip this file to your SD card and place back to camera.

Now follow the instruction:

  1. Power up camera using Playback button.
  2. Press Menu
  3. Select Firmware update
  4. Accept update by pressing OK (don't worry it will be "reverted" when you power off camera ;-)

That's all! Now you can even write your own script to camera (or use some examples).

I'd like to check if I have some duplicates in my photos. I've find ready to use list of programs ;-) I've checked second one - Similar Image Search. It's written in Java, has very ascetic interface, but it do the job.

To find duplicates photos isn't easy, especially when you have them a lot. I've found two methods: imgdupes (a Python script) and DupDetector (quite old - 2002, MS Windows application).

Just my blog...

Mon Tue Wed Thu Fri Sat Sun
          1 2
3 4 5 6 7 8 9
10 11 12 13 14 15 16
17 18 19 20 21 22 23
24 25 26 27 28 29 30
31