
Recherche avancée
Autres articles (50)
-
La sauvegarde automatique de canaux SPIP
1er avril 2010, parDans le cadre de la mise en place d’une plateforme ouverte, il est important pour les hébergeurs de pouvoir disposer de sauvegardes assez régulières pour parer à tout problème éventuel.
Pour réaliser cette tâche on se base sur deux plugins SPIP : Saveauto qui permet une sauvegarde régulière de la base de donnée sous la forme d’un dump mysql (utilisable dans phpmyadmin) mes_fichiers_2 qui permet de réaliser une archive au format zip des données importantes du site (les documents, les éléments (...) -
Script d’installation automatique de MediaSPIP
25 avril 2011, parAfin de palier aux difficultés d’installation dues principalement aux dépendances logicielles coté serveur, un script d’installation "tout en un" en bash a été créé afin de faciliter cette étape sur un serveur doté d’une distribution Linux compatible.
Vous devez bénéficier d’un accès SSH à votre serveur et d’un compte "root" afin de l’utiliser, ce qui permettra d’installer les dépendances. Contactez votre hébergeur si vous ne disposez pas de cela.
La documentation de l’utilisation du script d’installation (...) -
Encodage et transformation en formats lisibles sur Internet
10 avril 2011MediaSPIP transforme et ré-encode les documents mis en ligne afin de les rendre lisibles sur Internet et automatiquement utilisables sans intervention du créateur de contenu.
Les vidéos sont automatiquement encodées dans les formats supportés par HTML5 : MP4, Ogv et WebM. La version "MP4" est également utilisée pour le lecteur flash de secours nécessaire aux anciens navigateurs.
Les documents audios sont également ré-encodés dans les deux formats utilisables par HTML5 :MP3 et Ogg. La version "MP3" (...)
Sur d’autres sites (7003)
-
ffmpeg in a bash pipe
27 décembre 2019, par Martin WangI have a rmvb file path list, and want to convert this files to mp4 files. So I hope to use bash pipeline to handle it. The code is
Convert() {
ffmpeg -i "$1" -vcodec mpeg4 -sameq -acodec aac -strict experimental "$1.mp4"
}
Convert_loop(){
while read line; do
Convert $line
done
}
cat list.txt | Convert_loopHowever, it only handle the first file and the pipe exits.
So, does ffmpeg affect the bash pipe ?
-
wowza multiple files in one playlist
14 février 2014, par kalafunIs it possible to create a stream in wowza from multiple files ? So these file would be played in a row after each other ? As far as I know, I can only stream from one file being in the
content
directory..1.) I would like to split that one file for my own reasons, to add some security to it etc... , and then to create the playlist from these multiple files and publish it for streaming.. so it won't take that much time comparing to the second way.
2.) Or do I need to put these multiple files back together and then publish the playlist ?
I would also like to consider the time of the playlist being created even using a big file. I am using ffmpeg to split the file into smaller pieces using a script.
Therefore it would be automatic, when a user would request a stream, I run the script that splits the files and creates the playlist for user..
I hope I didn't take it from the wrong way. Help please
-
ffmpeg libx264 neon optimization breaks execution
27 janvier 2014, par nmxprimeHi use libx264 source obtained from
x264-snapshot-20140122-2245
and compiling using below scriptNDK=~/Android/android-ndk-r7c
PLATFORM=$NDK/platforms/android-9/arch-arm/
PREBUILT=$NDK/toolchains/arm-linux-androideabi-4.4.3/prebuilt/linux-x86
function build_one
{
./configure --prefix=$PREFIX \
--sysroot=$PLATFORM \
--disable-avs \
--disable-lavf \
--disable-ffms \
--disable-gpac \
--cross-prefix=$PREBUILT/bin/arm-linux-androideabi- \
--host=arm-linux \
--enable-static \
--libdir=$PLATFORM/usr/lib \
--includedir=$PLATFORM/usr/include \
--extra-cflags="-march=armv7-a -mfloat-abi=softfp -mfpu=neon -mvectorize-with-neon-quad" \
--extra-ldflags="-Wl,--fix-cortex-a8" \
--enable-debugThe config log is :
platform: ARM
system: LINUX
cli: yes
libx264: internal
shared: no
static: yes
asm: yes
interlaced: yes
avs: no
lavf: no
ffms: no
mp4: no
gpl: yes
thread: no
opencl: yes
filters: crop select_every
debug: yes
gprof: no
strip: no
PIC: no
bit depth: 8
chroma format: all
You can run 'make' or 'make fprofiled' now.I hope the above code compiles and optimizes for
NEON
executionDoubts :
Why Threads is
no
, because i didn't specified--disable-thread
What is
cli
and it's significance here, also significance of opencl, such that libx264 uses opencl features ?
Then i built
ffmpeg 1.2.5
with following script./configure --target-os=linux \
--prefix=$PREFIX \
--enable-cross-compile \
--extra-libs="-lgcc" \
--arch=arm \
--cc=$PREBUILT/bin/arm-linux-androideabi-gcc \
--cross-prefix=$PREBUILT/bin/arm-linux-androideabi- \
--nm=$PREBUILT/bin/arm-linux-androideabi-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 \
--extra-ldflags="-Wl,-rpath-link=$PLATFORM/usr/lib -L$PLATFORM/usr/lib -nostdlib -lc -lm -ldl -llog -lx264 $EXTRA_LD_FLAG" \
--disable-ffplay \
--disable-everything \
--enable-avformat \
--enable-avcodec \
--enable-libx264 \
--enable-gpl \
--enable-encoder=libx264 \
--enable-encoder=libx264rgb \
--enable-decoder=h264 \
--disable-network \
--disable-avfilter \
--disable-avdevice \
--enable-debug=3 \
$ADDITIONAL_CONFIGURE_FLAGwhere
ADDITIONAL_CONFIGURE_FLAG = --enable-debug=3
OPTIMIZE_CFLAGS="-mfloat-abi=softfp -mfpu=neon -marm -march=$CPU -mvectorize-with-neon-quad"The log shows NEON supported.
When i run the code (called in a while loop),
ret = avcodec_encode_video2(c, &pkt, picture, &got_output);//avcodec_encode_video(c, finalout, outbuf_size, picture);
fprintf(stderr,"ret = %d, got-out = %d \n",ret,got_output);
if (ret < 0)
fprintf(stderr, "error encoding frame\n");
if (got_output)
fprintf(stderr,"encoding frame %3d (size=%5d): (ret=%d)\n", 1, pkt.size,ret);it runs for 2 or 3 time(during which
if(got_output)
is not true), then i getSIGSEGV
. Triedaddr2line
andndk-stack
but no use[Though i enabled debug info, ndk-stack cannot find routine info].I edited
libx264's encoder.c
code with some fprintf statements.
Posting snippet of codeif( h->frames.i_input <= h->frames.i_delay + 1 - h->i_thread_frames )
{
/* Nothing yet to encode, waiting for filling of buffers */
pic_out->i_type = X264_TYPE_AUTO;
fprintf(stderr,"EditLog:: Returns as waiting for filling \n"); //edit
return 0;
}
}
else
{
/* signal kills for lookahead thread */
x264_pthread_mutex_lock( &h->lookahead->ifbuf.mutex );
h->lookahead->b_exit_thread = 1;
x264_pthread_cond_broadcast( &h->lookahead->ifbuf.cv_fill );
x264_pthread_mutex_unlock( &h->lookahead->ifbuf.mutex );
}
fprintf(stderr,"After wait for fill \n");
fprintf(stderr,"h: %p \n",h); //edit
fprintf(stderr,"h->i_frame = %p \n",&h->i_frame); //edit
h->i_frame++;
fprintf(stderr,"after i_frame++");in log, i don't see
after i_frame++
, here occurs (may be) theSIGSEGV
.Please help in solving it. The same works without neon optimization !!