
Recherche avancée
Autres articles (65)
-
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 les catégories
21 juin 2013, parFormulaire de création d’une catégorie
Pour ceux qui connaissent bien SPIP, une catégorie peut être assimilée à une rubrique.
Dans le cas d’un document de type catégorie, les champs proposés par défaut sont : Texte
On peut modifier ce formulaire dans la partie :
Administration > Configuration des masques de formulaire.
Dans le cas d’un document de type média, les champs non affichés par défaut sont : Descriptif rapide
Par ailleurs, c’est dans cette partie configuration qu’on peut indiquer le (...) -
Contribute to documentation
13 avril 2011Documentation is vital to the development of improved technical capabilities.
MediaSPIP welcomes documentation by users as well as developers - including : critique of existing features and functions articles contributed by developers, administrators, content producers and editors screenshots to illustrate the above translations of existing documentation into other languages
To contribute, register to the project users’ mailing (...)
Sur d’autres sites (10088)
-
FFmpeg error while adding watermark : Not overwriting - exiting
10 août 2021, par Ryan WangI'm implementing a video editing feature on my Flutter App using the Flutter-FFmpeg package, [Adding watermarks on video] specifically, while executing the code I got this error :


E/mobile-ffmpeg( 5731): Not overwriting - exiting
D/flutter-ffmpeg( 5731): FFmpeg exited with rc: 1



Most importantly, the output file cannot be played by the VideoPlayer. And it just LOADS FOREVER, the
VideoController
Widget shows that the player is buffering. I've tested My VideoPlayer widget, and it works very well on the videos that were not processed.

Here's the code I'm using :


await FlutterFFmpeg().execute(
 '-i video.mp4 -i logo.png -filter_complex [0:v][1:v]overlay=5:5 -c:a copy -movflags +faststart output.mp4'
 );



A full log of the executing process in case it helps :


D/flutter-ffmpeg( 5731): Running FFmpeg with arguments: [-i, /data/user/0/com.raheyo.cheese/cache/REC5995709221575585296.mp4, -i, /data/user/0/com.raheyo.cheese/cache/e0baa6a8-4d4c-407a-a73e-be4dcf4d08fd.mp4, -filter_complex, [0:v][1:v]overlay=5:5, -c:a, copy, -movflags, +faststart, /data/user/0/com.raheyo.cheese/cache/e0baa6a8-4d4c-407a-a73e-be4dcf4d08fd.mp4].
I/mobile-ffmpeg( 5731): Loading mobile-ffmpeg.
I/mobile-ffmpeg( 5731): Loaded mobile-ffmpeg-full-arm64-v8a-4.4-20200725.
D/mobile-ffmpeg( 5731): Callback thread started.
I/mobile-ffmpeg( 5731): ffmpeg version v4.4-dev-416
I/mobile-ffmpeg( 5731): Copyright (c) 2000-2020 the FFmpeg developers
I/mobile-ffmpeg( 5731):
I/mobile-ffmpeg( 5731): built with Android (6454773 based on r365631c2) clang version 9.0.8 (https://android.googlesource.com/toolchain/llvm-project 98c855489587874b2a325e7a516b99d838599c6f) (based on LLVM 9.0.8svn)
I/mobile-ffmpeg( 5731): configuration: --cross-prefix=aarch64-linux-android- --sysroot=/files/android-sdk/ndk/21.3.6528147/toolchains/llvm/prebuilt/linux-x86_64/sysroot --prefix=/home/taner/Projects/mobile-ffmpeg/prebuilt/android-arm64/ffmpeg --pkg-config=/usr/bin/pkg-config --enable-version3 --arch=aarch64 --cpu=armv8-a --cc=aarch64-linux-android24-clang --cxx=aarch64-linux-android24-clang++ --extra-libs='-L/home/taner/Projects/mobile-ffmpeg/prebuilt/android-arm64/cpu-features/lib -lndk_compat' --target-os=android --enable-neon --enable-asm --enable-inline-asm --enable-cross-compile --enable-pic --enable-jni --enable-optimizations --enable-swscale --enable-shared --enable-v4l2-m2m --disable-outdev=fbdev --disable-indev=fbdev --enable-small --disable-openssl --disable-xmm-clobber-test --disable-debug --enable-lto --disable-neon-clobber-test --disable-programs --disable-postproc --disable-doc --disable-htmlpages --disable-manpages --disable-podpages --disable-txtpages --disable-static --disable-sndio --disable-schannel --disable-securetransport --disable-xlib --disable-cuda --disable-cuvid --disable-nvenc --disable-vaapi --disable-vdpau --disable-videotoolbox --disable-audiotoolbox --disable-appkit --disable-alsa --disable-cuda --disable-cuvid --disable-nvenc --disable-vaapi --disable-vdpau --enable-libfontconfig --enable-libfreetype --enable-libfribidi --enable-gmp --enable-gnutls --enable-libmp3lame --enable-libass --enable-iconv --enable-libtheora --enable-libvorbis --enable-libvpx --enable-libwebp --enable-libxml2 --enable-libopencore-amrnb --enable-libshine --enable-libspeex --enable-libwavpack --enable-libkvazaar --enable-libilbc --enable-libopus --enable-libsnappy --enable-libsoxr --enable-libaom --enable-libtwolame --disable-sdl2 --enable-libvo-amrwbenc --enable-zlib --enable-mediacodec
I/mobile-ffmpeg( 5731): libavutil 56. 55.100 / 56. 55.100
I/mobile-ffmpeg( 5731): libavcodec 58. 96.100 / 58. 96.100
I/mobile-ffmpeg( 5731): libavformat 58. 48.100 / 58. 48.100
I/mobile-ffmpeg( 5731): libavdevice 58. 11.101 / 58. 11.101
I/mobile-ffmpeg( 5731): libavfilter 7. 87.100 / 7. 87.100
I/mobile-ffmpeg( 5731): libswscale 5. 8.100 / 5. 8.100
I/mobile-ffmpeg( 5731): libswresample 3. 8.100 / 3. 8.100
I/mobile-ffmpeg( 5731): Input #0, mov,mp4,m4a,3gp,3g2,mj2, from '/data/user/0/com.raheyo.cheese/cache/REC5995709221575585296.mp4':
I/mobile-ffmpeg( 5731): Metadata:
I/mobile-ffmpeg( 5731): major_brand :
I/mobile-ffmpeg( 5731): mp42
I/mobile-ffmpeg( 5731):
I/mobile-ffmpeg( 5731): minor_version :
I/mobile-ffmpeg( 5731): 0
I/mobile-ffmpeg( 5731):
I/mobile-ffmpeg( 5731): compatible_brands:
I/mobile-ffmpeg( 5731): isommp42
I/mobile-ffmpeg( 5731):
I/mobile-ffmpeg( 5731): creation_time :
I/mobile-ffmpeg( 5731): 2021-08-06T19:50:53.000000Z
I/mobile-ffmpeg( 5731):
I/mobile-ffmpeg( 5731): com.android.version:
I/mobile-ffmpeg( 5731): 9
I/mobile-ffmpeg( 5731):
I/mobile-ffmpeg( 5731): Duration:
I/mobile-ffmpeg( 5731): 00:00:01.69
I/mobile-ffmpeg( 5731): , start:
I/mobile-ffmpeg( 5731): 0.000000
I/mobile-ffmpeg( 5731): , bitrate:
I/mobile-ffmpeg( 5731): 12834 kb/s
I/mobile-ffmpeg( 5731):
I/mobile-ffmpeg( 5731): Stream #0:0
I/mobile-ffmpeg( 5731): (eng)
I/mobile-ffmpeg( 5731): : Video: h264 (avc1 / 0x31637661), yuvj420p(pc, bt470bg/bt470bg/smpte170m), 1920x1080, 12728 kb/s
I/mobile-ffmpeg( 5731): , SAR 1:1 DAR 16:9
I/mobile-ffmpeg( 5731): ,
I/mobile-ffmpeg( 5731): 20.09 fps,
I/mobile-ffmpeg( 5731): 30 tbr,
I/mobile-ffmpeg( 5731): 90k tbn,
I/mobile-ffmpeg( 5731): 180k tbc
I/mobile-ffmpeg( 5731): (default)
I/mobile-ffmpeg( 5731):
I/mobile-ffmpeg( 5731): Metadata:
I/mobile-ffmpeg( 5731): rotate :
I/mobile-ffmpeg( 5731): 90
I/mobile-ffmpeg( 5731):
I/mobile-ffmpeg( 5731): creation_time :
I/mobile-ffmpeg( 5731): 2021-08-06T19:50:53.000000Z
I/mobile-ffmpeg( 5731):
I/mobile-ffmpeg( 5731): handler_name :
I/mobile-ffmpeg( 5731): VideoHandle
I/mobile-ffmpeg( 5731):
I/mobile-ffmpeg( 5731): Side data:
I/mobile-ffmpeg( 5731):
I/mobile-ffmpeg( 5731): displaymatrix: rotation of -90.00 degrees
I/mobile-ffmpeg( 5731):
I/mobile-ffmpeg( 5731): Stream #0:1
I/mobile-ffmpeg( 5731): (eng)
I/mobile-ffmpeg( 5731): : Audio: aac (mp4a / 0x6134706D), 48000 Hz, mono, fltp, 96 kb/s
I/mobile-ffmpeg( 5731): (default)
I/mobile-ffmpeg( 5731):
I/mobile-ffmpeg( 5731): Metadata:
I/mobile-ffmpeg( 5731): creation_time :
I/mobile-ffmpeg( 5731): 2021-08-06T19:50:53.000000Z
I/mobile-ffmpeg( 5731):
I/mobile-ffmpeg( 5731): handler_name :
I/mobile-ffmpeg( 5731): SoundHandle
I/mobile-ffmpeg( 5731):
I/mobile-ffmpeg( 5731): Input #1, png_pipe, from '/data/user/0/com.raheyo.cheese/cache/e0baa6a8-4d4c-407a-a73e-be4dcf4d08fd.mp4':
I/mobile-ffmpeg( 5731): Duration:
I/mobile-ffmpeg( 5731): N/A
I/mobile-ffmpeg( 5731): , bitrate:
I/mobile-ffmpeg( 5731): N/A
I/mobile-ffmpeg( 5731):
I/mobile-ffmpeg( 5731): Stream #1:0
I/mobile-ffmpeg( 5731): : Video: png, rgba(pc), 393x822
I/mobile-ffmpeg( 5731): ,



 



-
Problem in playing fragmented MP4 that create with FFMPEG
18 août 2021, par MicleFor creating fragmented MP4 video file, I'm using
FFMPEG AVCodec
library(Accord VideoWriter) and setmovflags
with valuefrag_keyframe+empty_moov
based on How to output fragmented mp4 with ffmpeg ?

av_dict_set(&videoOptions, "movflags", "frag_keyframe+empty_moov", 0);
 avformat_write_header(oc, &videoOptions);





As you see, video is not played while all of video frames downloaded completely.

I tried to setmoov_size
,frag_duration
andmin_frag_duration
flags for correction, but doesn't change anything.



-
FFMPEG wrapping live h264 to mp4 container delay
3 août 2021, par Emil BorconiSorry if this has been asked but I couldn't find the answer.


I'm trying to wrap a live raw h264 stream to a fragmented MP4 container. This is working as expected, with one issue, I have a 5-10 seconds delay between the input and output. Basically the output start after 5-10 seconds of the first input received.


This is my command :


ffmpeg -r 30 -f h264 -i tcp://127.0.0.1:1234 -c:v copy -an -f mp4 -movflags separate_moof+empty_moov+default_base_moof -tune zerolatency -tcp_nodelay true -frag_duration 33000 -max_muxing_queue_size 1 tcp://127.0.0.1:1235



I have played with fflags, with analyzeduration and with everything I could find in the documentation but no joy.


The input stream is receiving NALU units and I can see that it receives a significant amount of units before it actually starts outputting. Once it starts it works perfect, but the output video is always 5-10 seconds behind the input one.


After a bunch of NALU units received I see ffmpeg outputting the following :


2021-08-02 23:46:22.071 24626-11173/app.example.com I/ffmpeg-kit: Input #0, h264, from 'tcp://127.0.0.1:8105':
2021-08-02 23:46:22.071 24626-11173/app.example.com I/ffmpeg-kit: Duration: 
2021-08-02 23:46:22.071 24626-11173/app.example.com I/ffmpeg-kit: N/A
2021-08-02 23:46:22.071 24626-11173/app.example.com I/ffmpeg-kit: , bitrate: 
2021-08-02 23:46:22.071 24626-11173/app.example.com I/ffmpeg-kit: N/A
2021-08-02 23:46:22.071 24626-11173/app.example.com I/ffmpeg-kit: Stream #0:0
2021-08-02 23:46:22.071 24626-11173/app.example.com I/ffmpeg-kit: : Video: h264, yuv420p(tv, smpte170m/bt470bg/smpte170m, progressive), 1280x720
2021-08-02 23:46:22.071 24626-11173/app.example.com I/ffmpeg-kit: , 
2021-08-02 23:46:22.072 24626-11173/app.example.com I/ffmpeg-kit: 30 fps, 
2021-08-02 23:46:22.072 24626-11173/app.example.com I/ffmpeg-kit: 30 tbr, 
2021-08-02 23:46:22.072 24626-11173/app.example.com I/ffmpeg-kit: 1200k tbn, 
2021-08-02 23:46:22.072 24626-11173/app.example.com I/ffmpeg-kit: 60 tbc
2021-08-02 23:46:22.079 24626-11173/app.example.com I/ffmpeg-kit: Output #0, mp4, to 'tcp://127.0.0.1:8104':
2021-08-02 23:46:22.079 24626-11173/app.example.com I/ffmpeg-kit: Metadata:
2021-08-02 23:46:22.079 24626-11173/app.example.com I/ffmpeg-kit: encoder : 
2021-08-02 23:46:22.079 24626-11173/app.example.com I/ffmpeg-kit: Lavf58.67.100
2021-08-02 23:46:22.079 24626-11173/app.example.com I/ffmpeg-kit: Stream #0:0
2021-08-02 23:46:22.079 24626-11173/app.example.com I/ffmpeg-kit: : Video: h264 (avc1 / 0x31637661), yuv420p(tv, smpte170m/bt470bg/smpte170m, progressive), 1280x720, q=2-31
2021-08-02 23:46:22.080 24626-11173/app.example.com I/ffmpeg-kit: , 
2021-08-02 23:46:22.080 24626-11173/app.example.com I/ffmpeg-kit: 30 fps, 
2021-08-02 23:46:22.080 24626-11173/app.example.com I/ffmpeg-kit: 30 tbr, 
2021-08-02 23:46:22.080 24626-11173/app.example.com I/ffmpeg-kit: 15360 tbn, 
2021-08-02 23:46:22.080 24626-11173/app.example.com I/ffmpeg-kit: 30 tbc
2021-08-02 23:46:22.080 24626-11173/app.example.com I/ffmpeg-kit: Stream mapping:
2021-08-02 23:46:22.080 24626-11173/app.example.com I/ffmpeg-kit: Stream #0:0 -> #0:0
2021-08-02 23:46:22.080 24626-11173/app.example.com I/ffmpeg-kit: (copy)
2021-08-02 23:46:22.080 24626-11173/app.example.com I/ffmpeg-kit: Press [q] to stop, [?] for help



That is an Android wrapper, but same thing happen if I run the command on my laptop from the command line.


What am I'm missing, I need this to be real-time / instant muxing...


Thanks for the help.