Le blog de Jean David TECHER, un Réunionnais à Saint-Priest/Lyon

Aller au contenu | Aller au menu | Aller à la recherche


< 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 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 243 244 245 246 247 248 249 250 251 252 253 254 255 256 257 258 259 260 261 262 263 264 265 266 267 268 269 270 271 272 273 274 275 276 277 278 279 280 281 282 283 284 285 286 287 >

dimanche 2 octobre 2011

FFmpeg et libaacplus => FFmpeg more unredistribuable ???

Mise à jour du 2011/10/02: FFmpeg 0.8.5 is out. A peine j'ai écris ce billet que même pas 24h00 plus tard, cette version sort LOL

Depuis moins d'une semaine, FFmpeg annonce le support pour le projet libaacplus (news datée du 2011/09/28). Ce projet pour ceux qui connaissent a pour url: http://tipok.org.ua/node/17. Loin de moi l'idée de faire des tests de performance aac versus aac+ etc.... . Ce qui a surtout attiré mon attention concerne

  • la section "Important legal Notice" sur le site (voir en bas de page)
  • le fait que FFmpeg ait changé son fichier LICENCE incluse dans les sources, notamment
    external libraries:
    -------------------
    
    Some external libraries, e.g. libx264, are under GPL and can be used in
    conjunction with FFmpeg. They require --enable-gpl to be passed to configure
    as well.
    
    The OpenCORE external libraries are under the Apache License 2.0. That license
    is incompatible with the LGPL v2.1 and the GPL v2, but not with version 3 of
    those licenses. So to combine the OpenCORE libraries with FFmpeg, the license
    version needs to be upgraded by passing --enable-version3 to configure.
    
    The nonfree external libraries libfaac and libaacplus can be hooked up in FFmpeg.
    You need to pass --enable-nonfree to configure to enable it. Employ this option
    with care as FFmpeg then becomes nonfree and unredistributable.
    
  • En tenant en compte les recommandations fournies par l'équipe de développement de FFmpeg au niveau législatif résumé à http://ffmpeg.org/legal.html (Soit dit en passant que les recommendations restent quand même assez confuses)
Déjà que j'ai toujours eu tendance à compiler FFmpeg statiquement pour mon parc de machines personnels (3 machines physiques), j'en arrive à la conclusion en raison de l'interopérabilité qu'en France pour mes propres besoins personnels, je décide de compiler FFmpeg statiquement avec libaacplus
  • je ne peux faire usage du logiciel FFmpeg que mes propres besoins personnels. Cet usage est restreint à un cadre privé et personnel;
  • je ne suis pas autorisé à distribuer les binaires de quelque manière que ce soit;
A titre d'exemple de projet respectant celà (parmi d'autres), on peut citer TVersity qui ont modifié ffmpeg 0.6 et les ont publié

Tout celà est bien sûr évident. La question qui vient de suite à l'esprit, c'est pourquoi faire un billet sur des choses déjà connus.

Tout vient du fait que je n'ai repris mes investigations sur FFmpeg que depuis deux semaines et aujourd'hui j'ai bien un binaire statique complet.

FFmpeg compilé en statique

Ca c'est pour la bonne nouvelle!

La compilation de FFmpeg avec libfaac est connue depuis bien longtemps. A ce que j'ai pu comprendre, libaacplus serait plus performant que libfaac (dixit l'auteur de libaacplus). Quoique sur des sites de comparaison, AAC s'en sort mieux que AAC+. Ceci expliquerait donc sûrement la motivation de FFmpeg d'inclure le support pour libaacplus -ici support au sens de compilation FFmpeg avec libaacplus -. Il faut se rappeler que par le passé, ce support était possible à partir de patchs. On ne peut que se féliciter d'une tel support -ici support au sens de compilation Fmpeg avec libaacplus-. Je n'y suis pas opposé bien au contraire.

J'en viens quand même à me poser la question: est-ce que quelqu'un serait en mesure de fournir un descriptif détaillé de ce qui est possible au niveau législatif - notamment en France - avec toutes ces licences car c'est vraiment le foutoire! Faire des billets sur FFmpeg m'a toujours intéressé mais le côté législatif de la chose n'a jamais était ma tasse de thé vu qu'apparement c'est souvent question d'interprétation.

lundi 26 septembre 2011

Projet GitHub pour compilation full static de FFmpeg, basé sur cmake

Il est souvent rageant de devoir compiler soi-même FFmpeg, notamment lorsqu'on constate les dépendances requises (au niveau des librairies nécessaires). Il y a la façon statique qui permet de s'approger de ces contraintes (à condition bien sûr que l'architecture x86,x86_64 reste la même). Pour celà, il y a un projet très intéressant https://github.com/pyke369/sffmpeg.

Dans le passé, je m'étais déjà livré à ce genre de compilation mais là c'est vraiment intéressant car gérer par cmake.

Note à l'attention des utilisateurs de Ubuntu LucidPour ceux qui sont sous Ubuntu Lucid (>=10.04.3), la version de cmake est la 2.8.0. Elle n'est malheureusement pas suffisante pour l'utilisation. J'ai personnellement récupérer la toute dernière version de cmake (en date du 2011/09/25) c'est la 2.8.5. Elle se compile sans souci. J'ai donc pu par la suite, la tester sans souci. Pour la récupération du projet
git clone https://github.com/pyke369/sffmpeg.git
cd sffmpeg
Avant de continuer et de lancer la compilation, jetez un coup d'oeil au fichier CMakeLists.txt Voici un extrait de son contenu
PROJECT(ffmpeg)

CMAKE_MINIMUM_REQUIRED(VERSION 2.8)
INCLUDE(ExternalProject)
INCLUDE_DIRECTORIES(BEFORE ${CMAKE_BINARY_DIR}/include)
LINK_DIRECTORIES(${CMAKE_BINARY_DIR}/lib)

EXTERNALPROJECT_ADD(
  z
  URL http://zlib.net/zlib-1.2.5.tar.gz
  PATCH_COMMAND patch Makefile.in ${CMAKE_SOURCE_DIR}/vendor/zlib-1.2.5-static.patch
  CONFIGURE_COMMAND ./configure --prefix=${CMAKE_BINARY_DIR} --static
  BUILD_IN_SOURCE 1
)
EXTERNALPROJECT_ADD(
  openssl
  URL http://www.openssl.org/source/openssl-1.0.0e.tar.gz
  CONFIGURE_COMMAND ./config no-shared no-idea no-mdc2 no-rc5 --prefix=${CMAKE_BINARY_DIR}
  BUILD_COMMAND make depend && make
  BUILD_IN_SOURCE 1
)
....
Moi ça m'a rappeler la façon de compiler à la mode Gentoo :) du temps où j'utilisais Gentoo

Remarque: Le téléchargement de source sur des dépots type SVN ou GIT fonctionne sans souci:

EXTERNALPROJECT_ADD(
 xavs
 SVN_REPOSITORY https://xavs.svn.sourceforge.net/svnroot/xavs/trunk 
 CONFIGURE_COMMAND ./configure --prefix=${CMAKE_BINARY_DIR} --enable-shared=no --enable-static=yes
 BUILD_IN_SOURCE 1
)

Par défaut, l'auteur propose

  • x264
  • rtmp
  • theorea
  • speex,
  • aac
Il est aisé d'ajouter d'autres supports comme:
  • dirac 0.4.10 / schroedinger 1.0.9
  • xavs
  • etc...
J'ai upgradé sa version pour et fait des tests pour ffmpeg 0.8.4 sorti le 2011/09/22.

Non rien à dire que d'avoir ffmpeg compilé en full static quand on veut procéder à une conversion vidéo, sans avoir à se trimbaler toutes les dépendances :)

samedi 24 septembre 2011

EntepriseDB 8.4.7.20 PostgreSQL Plus Advanced Server

wget http://get.enterprisedb.com/ga/ppasmeta-8.4.7.20-linux-x64.tar.gz
Pour PPAS 8.3 Linux 64 bits
wget http://get.enterprisedb.com/ga/pgplus-advsvr-linux-x86-64_830112.tar.gz

mercredi 21 septembre 2011

2011/09/21: Dix ans déjà! Dix ans en métropole

Aujourd'hui celà fait exactement dix ans que je vis en France métropolitaine! Arrivé le 2001/09/21, ce jour-là j'ai posé mes valises à Montpellier vers 16h00-18h00 ce jour-là. Dix ans plus tard, c'est sur Lyon que j'aurais posé mes valises, plus exactement le 2011/07/02.

Le temps est passé vraiment très vite. Débarqué avec le simple status d'étudiant avec sa simple maîtrise de maths en poche, aujourd'hui je suis DBA à Lyon. Je ne me plains pas de ma situation actuelle bien au contraire. Celà fait maintenant 8 ans que je travaille. Pour résumé mon parcours

  • Montpellier: juin 2003 - février 2007: développeur PHP, formateur PostgreSQL/PostGIS, assistance utilisateur etc...un peu de tou
  • Montpellier: juillet 2007 - janvier 2008: professeur en C/PHP, administrateur réseau
  • Sohpia Antipolis: février 2008 - juin 2009: DBA PostgreSQL, exploitant de production à France Télécom
  • Avignon: septembre 2009 - juin 2010: DBA Oracle et administrateur système/virtualisation Xen
  • Lyon: depuis juillet 2010: DBA PostgreSQL
J'aurais beaucoup bougé ces dernières années :)

J'ai rencontré des gens biens et d'autres pas biens. Enfin comme tout le monde!

Retourner à la Réunion? J'y ai souvent pensé mais la réponse serait non. J'ai fait une bonne partie de ma vie ici en métropole. Le chemin fut/est semé d'embûches mais j'ai fait le choix de rester pour réussir. Professionnellement, PostgreSQL a souvent été sur ma route et m'a toujours permis de rebondir (Merci PostgreSQL!). Il faut ce qu'il faut.

C'était juste l'occasion d'écrire un billet pour déjà remercier les gens qui m'ont soutenu pendant toutes ces années. Hormi les membres de ma famille, mes pensées vont vers mes amis: Bernd DECKERT, Olivier Varenes, Dalleau Frédéric, Murielle, Kim, Julie B., Frank P., Cécile, Christophe T etc...la liste est des plus longues.

Petite pensée au passage pour mon adorable siamois Simba qui me suit partout depuis 2008. Il en aura vu du pays ces dernières années.