
Recherche avancée
Autres articles (40)
-
La file d’attente de SPIPmotion
28 novembre 2010, parUne file d’attente stockée dans la base de donnée
Lors de son installation, SPIPmotion crée une nouvelle table dans la base de donnée intitulée spip_spipmotion_attentes.
Cette nouvelle table est constituée des champs suivants : id_spipmotion_attente, l’identifiant numérique unique de la tâche à traiter ; id_document, l’identifiant numérique du document original à encoder ; id_objet l’identifiant unique de l’objet auquel le document encodé devra être attaché automatiquement ; objet, le type d’objet auquel (...) -
Personnaliser en ajoutant son logo, sa bannière ou son image de fond
5 septembre 2013, parCertains thèmes prennent en compte trois éléments de personnalisation : l’ajout d’un logo ; l’ajout d’une bannière l’ajout d’une image de fond ;
-
Ecrire une actualité
21 juin 2013, parPrésentez les changements dans votre MédiaSPIP ou les actualités de vos projets sur votre MédiaSPIP grâce à la rubrique actualités.
Dans le thème par défaut spipeo de MédiaSPIP, les actualités sont affichées en bas de la page principale sous les éditoriaux.
Vous pouvez personnaliser le formulaire de création d’une actualité.
Formulaire de création d’une actualité Dans le cas d’un document de type actualité, les champs proposés par défaut sont : Date de publication ( personnaliser la date de publication ) (...)
Sur d’autres sites (5391)
-
SIGSEV when loading ffmpeg library
20 février 2014, par gookmanI am trying to build ffmpeg for Android similar to AndroidFFmpeg.
I have configured ffmpeg so that I have only what I need. My
android_build.sh
looks like
this :#!/bin/bash
if [ "$NDK" = "" ]; then
echo NDK variable not set, exiting
echo "Use: export NDK=/your/path/to/android-ndk"
exit 1
fi
OS=`uname -s | tr '[A-Z]' '[a-z]'`
function build_ffmpeg
{
PLATFORM=$NDK/platforms/$PLATFORM_VERSION/arch-$ARCH/
CC=$PREBUILT/bin/$EABIARCH-gcc
CROSS_PREFIX=$PREBUILT/bin/$EABIARCH-
PKG_CONFIG=${CROSS_PREFIX}pkg-config
if [ ! -f $PKG_CONFIG ];
then
cat > $PKG_CONFIG << EOF
#!/bin/bash
pkg-config \$*
EOF
chmod u+x $PKG_CONFIG
fi
NM=$PREBUILT/bin/$EABIARCH-nm
cd ffmpeg
export PKG_CONFIG_LIBDIR=$(pwd)/$PREFIX/lib/pkgconfig/
export PKG_CONFIG_PATH=$(pwd)/$PREFIX/lib/pkgconfig/
./configure --target-os=linux \
--prefix=$PREFIX \
--enable-small \
--enable-cross-compile \
--extra-libs="-lgcc" \
--arch=$ARCH \
--cc=$CC \
--cross-prefix=$CROSS_PREFIX \
--nm=$NM \
--sysroot=$PLATFORM \
--extra-cflags=" -O3 -fpic -DANDROID -DHAVE_SYS_UIO_H=1 -Dipv6mr_interface=ipv6mr_ifindex -fasm -Wno-psabi -fno-short-enums -fno-strict-aliasing -finline-limit=300 $OPTIMIZE_CFLAGS " \
--disable-shared \
--enable-static \
--enable-runtime-cpudetect \
--extra-ldflags="-Wl,-rpath-link=$PLATFORM/usr/lib -L$PLATFORM/usr/lib -nostdlib -lc -lm -ldl -llog -L$PREFIX/lib" \
--extra-cflags="-I$PREFIX/include" \
--disable-everything \
--enable-muxer=mp4 \
--enable-protocol=file \
--enable-decoder=mpeg4 \
--enable-encoder=mpeg4 \
--enable-avformat \
--enable-avcodec \
--enable-avresample \
--enable-zlib \
--disable-doc \
--disable-ffplay \
--disable-ffmpeg \
--disable-ffplay \
--disable-ffprobe \
--disable-ffserver \
--disable-avdevice \
--enable-nonfree \
--enable-version3 \
--enable-memalign-hack \
--enable-asm \
$ADDITIONAL_CONFIGURE_FLAG \
|| exit 1
make clean || exit 1
make -j4 install || exit 1
cd ..
}
function build_one {
cd ffmpeg
PLATFORM=$NDK/platforms/$PLATFORM_VERSION/arch-$ARCH/
$PREBUILT/bin/$EABIARCH-ld -rpath-link=$PLATFORM/usr/lib -L$PLATFORM/usr/lib -L$PREFIX/lib -soname $SONAME -shared -nostdlib -z noexecstack -Bsymbolic --whole-archive --no-undefined -o $OUT_LIBRARY -lavcodec -lavformat -lavresample -lavutil -lc -lm -lz -ldl -llog --dynamic-linker=/system/bin/linker -zmuldefs $PREBUILT/lib/gcc/$EABIARCH/4.6/libgcc.a || exit 1
cd ..
}
#arm v5
EABIARCH=arm-linux-androideabi
ARCH=arm
CPU=armv5
OPTIMIZE_CFLAGS="-marm -march=$CPU"
PREFIX=../ffmpeg-build/armeabi
OUT_LIBRARY=$PREFIX/libffmpeg.so
ADDITIONAL_CONFIGURE_FLAG=
SONAME=libffmpeg.so
PREBUILT=$NDK/toolchains/arm-linux-androideabi-4.6/prebuilt/$OS-x86_64
PLATFORM_VERSION=android-5
build_ffmpeg
build_one
#arm v7vfpv3
EABIARCH=arm-linux-androideabi
ARCH=arm
CPU=armv7-a
OPTIMIZE_CFLAGS="-mfloat-abi=softfp -mfpu=vfpv3-d16 -marm -march=$CPU "
PREFIX=../ffmpeg-build/armeabi-v7a
OUT_LIBRARY=$PREFIX/libffmpeg.so
ADDITIONAL_CONFIGURE_FLAG=
SONAME=libffmpeg.so
PREBUILT=$NDK/toolchains/arm-linux-androideabi-4.6/prebuilt/$OS-x86_64
PLATFORM_VERSION=android-5
build_ffmpeg
build_oneMy
Android.mk
file looks like this :LOCAL_PATH := $(call my-dir)
include $(CLEAR_VARS)
LOCAL_MODULE := ffmpeg-prebuilt
LOCAL_SRC_FILES := ffmpeg-build/$(TARGET_ARCH_ABI)/libffmpeg.so
LOCAL_EXPORT_C_INCLUDES := ffmpeg-build/$(TARGET_ARCH_ABI)/include
LOCAL_EXPORT_LDLIBS := ffmpeg-build/$(TARGET_ARCH_ABI)/libffmpeg.so
LOCAL_PRELINK_MODULE := true
include $(PREBUILT_SHARED_LIBRARY)
include $(CLEAR_VARS)
LOCAL_ALLOW_UNDEFINED_SYMBOLS=false
LOCAL_MODULE := native
LOCAL_SRC_FILES := native.c
LOCAL_LDLIBS := -llog
LOCAL_C_INCLUDES := $(LOCAL_PATH)/ffmpeg-build/$(TARGET_ARCH_ABI)/include
LOCAL_SHARED_LIBRARY := ffmpeg-prebuilt
include $(BUILD_SHARED_LIBRARY)The actual code I am trying to use is very simple and looks like this :
#include
#include <android></android>log.h>
#include <libavcodec></libavcodec>avcodec.h>
#include <libavformat></libavformat>avformat.h>
static jint Java_dk_bendingspoons_clipstitch_VideoLoader_start(JNIEnv * env, jobject thiz, jstring path)
{
__android_log_print(ANDROID_LOG_VERBOSE, "native", "Before register all.");
av_register_all();
return 0;
}The compilation of both ffmpeg and my code is without any errors. The problem is that when I am loading the library in Android it fails with the error :
Fatal signal 11 (SIGSEGV) at 0xdeadbaad (code=1), thread 27050
. This leads me to believe that there is something that I am doing wrong when compiling.I should mention that I am compiling on Ubuntu 13.10 x64 with NDK-r9c-x86_64.
How should I proceed in finding out what the issue is ?
-
Analytics for ePortfolios, Mahara hui conference
I was privileged to present at the Mahara Hui conference in Wellington, New Zealand.
Here are the slides of my presentation “Analytics for ePortfolios” :
Summary : by using an analytics tool that integrates well with Mahara, such as Piwik, Mahara users can benefit from a multitude of insightful analytics reports.
Learn more
Mahara is a web application to build your electronic portfolio. You can create journals, upload files, embed social media resources from the web and collaborate with other users in groups. Mahara is a popular open source project built by a passionate community, and used in universities, schools and companies all over the world.
Mahara Hui is the first kiwi conference on Mahara, the open source ePortfolio system, in New Zealand. This 2-day conference was held at Te Papa in Wellington from 19 to 20 March 2014 (schedule)
Next steps
I’m excited to join the Mahara team at the Mahara Hui Hackfest organised today at Catalyst IT offices. We will brainstorm how to integrate Piwik beautifully within Mahara, and how to ultimately provide students and employees useful analytics on all the content they create !
-
How to show a watermark for 3 second on a MP4 using FFmpeg
6 février 2014, par b1izzardI need to add a 3-second watermark to a Camera recorded video in Android. I'm using FFmpeg static build to execute the commands.
Approach I
I had tried the below command using latest version of FFmpeg(version N-60108-gda25a65) in my Desktop running Linux Mint, the command works fine.
ffmpeg -y -itsoffset 3 -i input.mp4 -i myImage.jpg -filter_complex "[0:v][1:v]overlay=0:0:enable=between(t\,0\,3)" -codec:a copy output.mp4
In Android I'm using the FFmpegv1.2 with below config to execute the command.
*******Starting FFMPEG
***ffmpeg version 1.2 Copyright (c) 2000-2013 the FFmpeg developers***
*** built on Mar 31 2013 23:44:57 with gcc 4.6 (GCC) 20120106 (prerelease)***
*** configuration: --arch=arm --target-os=linux --enable-runtime-cpudetect --enable-pic --disable-shared --enable-static --cross-prefix=/opt/android-ndk-r8e/toolchains/arm-linux-androideabi-4.6/prebuilt/linux-x86_64/bin/arm-linux-androideabi- --sysroot=/opt/android-ndk-r8e/platforms/android-8/arch-arm --extra-cflags='-march=armv6' --extra-ldflags= --enable-ffmpeg --disable-ffplay --disable-ffprobe --disable-ffserver --disable-network***
*** libavutil 52. 18.100 / 52. 18.100***
*** libavcodec 54. 92.100 / 54. 92.100***
*** libavformat 54. 63.104 / 54. 63.104***
*** libavdevice 54. 3.103 / 54. 3.103***
*** libavfilter 3. 42.103 / 3. 42.103***
*** libswscale 2. 2.100 / 2. 2.100***
*** libswresample 0. 17.102 / 0. 17.102***Java Code to run the FFmpeg command :
String[] ffmpegCommandToAddWatermark = {
mFfmpegInstallPath, "-y", "-itsoffset","3",
"-i", INPUT_VIDEO_PATH, "-i", WATERMARK_IMAGE_PATH,
"-filter_complex","[0:v][1:v]overlay=0:0:between(t\\,0\\,3)",
"-strict","-2",
"-codec:a","copy",OUTPUT_VIDEO_PATH};
try {
Process ffmpegProcess = new ProcessBuilder(ffmpegCommandToAddWatermark)
.redirectErrorStream(true).start();
String line;
BufferedReader reader = new BufferedReader(
new InputStreamReader(ffmpegProcess.getInputStream()));
Log.d(TAG, "*******Starting FFMPEG");
while ((line = reader.readLine()) != null ) {
Log.d(TAG, "***" + line + "***");
}
Log.d(null, "****ending FFMPEG****");
} catch (Exception e) {
e.printStackTrace();
}The command execution failed with following error :
***[overlay @ 0x271f770] No option name near 'between(t,0,3)'***
***[AVFilterGraph @ 0x2711530] Error initializing filter 'overlay' with args '0:0:between(t,0,3)'***
***Error configuring filters.***The same command executes successfully when
:enable=between(t\,0\,3)
is removed, but the resulting output video has the watermark throughout the timeline, but I need watermark only for the starting 3 seconds.Approach II :
I tried to convert WaterMarkImage to WaterMarkVideo
ffmpeg -y -loop 1 -r 30 -i WaterMarkImage.jpg -b:v "4096k" -vf "scale=640:480" -t 3 WaterMarkVideo.mp4
And then merge the WaterMarkVideo.mp4+CameraRecordedVideo.mp4 using the concat command :
ffmpeg -y -f concat -i inputs.txt -c copy output.mp4
The resulting output is corrupt due to BitRate,FrameRate,etc., mismatch. Any idea to solve the problem ?.