
Recherche avancée
Médias (16)
-
#7 Ambience
16 octobre 2011, par
Mis à jour : Juin 2015
Langue : English
Type : Audio
-
#6 Teaser Music
16 octobre 2011, par
Mis à jour : Février 2013
Langue : English
Type : Audio
-
#5 End Title
16 octobre 2011, par
Mis à jour : Février 2013
Langue : English
Type : Audio
-
#3 The Safest Place
16 octobre 2011, par
Mis à jour : Février 2013
Langue : English
Type : Audio
-
#4 Emo Creates
15 octobre 2011, par
Mis à jour : Février 2013
Langue : English
Type : Audio
-
#2 Typewriter Dance
15 octobre 2011, par
Mis à jour : Février 2013
Langue : English
Type : Audio
Autres articles (112)
-
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 ) (...) -
Publier sur MédiaSpip
13 juin 2013Puis-je poster des contenus à partir d’une tablette Ipad ?
Oui, si votre Médiaspip installé est à la version 0.2 ou supérieure. Contacter au besoin l’administrateur de votre MédiaSpip pour le savoir
Sur d’autres sites (7430)
-
App Intents FFmpeg-iOS operation not permitted
2 octobre 2023, par apo_p9Using latest iOS and Xcode, I have an AppIntent to which Im passing a video file from iOS Shortcuts, Im using an IntentFile parameter to read that in the intent. Then Im using FFmpeg-iOS to generate a single frame from the video.


...
@Parameter(title: "Media", supportedTypeIdentifiers: ["public.image", "public.video"], inputConnectionBehavior: .connectToPreviousIntentResult)
var media: IntentFile
...
let mediaPath = media.fileURL!.absoluteString;
let posterPath = mediaPath.replacingOccurrences(of: media.filename, with: "poster.jpg")
_ = ffmpeg(["FFmpeg-iOS", "-i", mediaPath, "-frames:v", "1", posterPath])



Here is the output :


ffmpeg(_:) ["FFmpeg-iOS", "-i", "file:///var/mobile/tmp/com.apple.WorkflowKit.BackgroundShortcutRunner/IMG_2751.mov", "-frames:v", "1", "file:///var/mobile/tmp/com.apple.WorkflowKit.BackgroundShortcutRunner/poster.jpg"]
ffmpeg version N-109970-g7dc0944ce2 Copyright (c) 2000-2023 the FFmpeg developers
 built with Apple clang version 14.0.0 (clang-1400.0.29.202)
 configuration: --prefix=/Users/changbeomahn/Projects/FFmpeg-iOS/build/install/FFmpeg/arm64 --enable-cross-compile --disable-debug --disable-doc --enable-pic --disable-audiotoolbox --disable-sdl2 --disable-libxcb --target-os=darwin --arch=arm64 --cc='xcrun -sdk iphoneos clang' --as='gas-preprocessor.pl -arch aarch64 -- xcrun -sdk iphoneos clang' --extra-cflags='-arch arm64 -mios-version-min=13.0 -I/Users/changbeomahn/Projects/FFmpeg-iOS/build/install/FFmpeg/arm64/include' --extra-ldflags='-arch arm64 -mios-version-min=13.0 -L/Users/changbeomahn/Projects/FFmpeg-iOS/build/install/FFmpeg/arm64/lib'
HookMain: setjmp=0
FFmpeg_exit=1, will longjmp
HookMain: setjmp=1
 libavutil 58. 3.100 / 58. 3.100
 libavcodec 60. 6.100 / 60. 6.100
 libavformat 60. 4.100 / 60. 4.100
 libavdevice 60. 2.100 / 60. 2.100
 libavfilter 9. 4.100 / 9. 4.100
 libswscale 7. 2.100 / 7. 2.100
 libswresample 4. 11.100 / 4. 11.100
file:///var/mobile/tmp/com.apple.WorkflowKit.BackgroundShortcutRunner/IMG_2751.mov: Operation not permitted



The issue is in the last line : Operation not permitted


I also tried just writing a file to the same directory as the media file :


let str = "Super long string here"
let filename = media.fileURL!.absoluteString.replacingOccurrences(of: media.filename, with: "asd.txt")

do {
 try str.write(to: URL(string: filename)!, atomically: true, encoding: String.Encoding.utf8)
} catch {
 print(error)
}



But got the error :


Error Domain=NSCocoaErrorDomain Code=513 "You don’t have permission to save the file “asd.txt” in the folder “com.apple.WorkflowKit.BackgroundShortcutRunner”." UserInfo={NSFilePath=/var/mobile/tmp/com.apple.WorkflowKit.BackgroundShortcutRunner/asd.txt, NSUnderlyingError=0x280f09aa0 {Error Domain=NSPOSIXErrorDomain Code=1 "Operation not permitted"}}



Apparently there is a permission issue, I tried googling about "AppIntents file permissions"/"shortcut permissions"/etc but found nothing. Im not a mobile developer so Im totally clueless. The same code though works fine in the simulator, it gets the permission issue only on device.


-
FFmpeg dynamic cropping using sendcmd correct syntax ?
19 avril 2024, par SulliI'm trying to dynamically crop a video using FFmpeg's
sendcmd
filter based on coordinates specified in a text file, but the crop commands do not seem to be taking effect. Here's the format of the commands I've tried and the corresponding FFmpeg command I'm using.

Following the documentation https://ffmpeg.org/ffmpeg-filters.html#sendcmd_002c-asendcmd, commands in the text file (
coordinates.txt
) like this :

0.05 [enter] crop w=607:h=1080:x=0:y=0;
0.11 [enter] crop w=607:h=1080:x=0:y=0;
...



Ffmpeg command :


ffmpeg -i '10s.mp4' -filter_complex "[0:v]sendcmd=f=coordinates.txt" -c:v libx264 -c:a copy -r 30 output.mp4



This doesn’t seem to do anything.


And with the commands in the text file (
coordinates.txt
) like this :

0.05 crop w 607, crop h 1080, crop x 0, crop y 0;
0.11 crop w 607, crop h 1080, crop x 0, crop y 0;
...



Ffmpeg command :


ffmpeg -i '10s.mp4' -filter_complex "[0:v]sendcmd=f=coordinates.txt,crop" -c:v libx264 -c:a copy -r 30 output.mp4



(following this answer https://stackoverflow.com/a/67508233/1967110)


This one does something, but something very messy. It looks like it crops at the correct x, but does not take into account the y, w or h, and it puts the crop at the right side of the input video.


Edit : what I’m trying to do is create a 607x1080 (portrait format, 9:16) video from a 1920x1080 video, with the x parameter varying across time (imagine sliding horizontally a 9:16 frame over a 16:9 video). So fixed w, h and y, just x varying.


I’m using this ffmpeg version :


ffmpeg version 6.0 Copyright (c) 2000-2023 the FFmpeg developers
built with gcc 9 (Ubuntu 9.4.0-1ubuntu1~20.04.1)
configuration: --prefix=/home/ffmpeg-builder/release --pkg-config-flags=--static --extra-libs=-lm --disable-doc --disable-debug --disable-shared --disable-ffprobe --enable-static --enable-gpl --enable-version3 --enable-runtime-cpudetect --enable-avfilter --enable-filters --enable-nvenc --enable-nvdec --enable-cuvid --toolchain=hardened --disable-stripping --enable-opengl --pkgconfigdir=/home/ffmpeg-builder/release/lib/pkgconfig --extra-cflags='-I/home/ffmpeg-builder/release/include -static-libstdc++ -static-libgcc ' --extra-ldflags='-L/home/ffmpeg-builder/release/lib -fstack-protector -static-libstdc++ -static-libgcc ' --extra-cxxflags=' -static-libstdc++ -static-libgcc ' --extra-libs='-ldl -lrt -lpthread' --enable-ffnvcodec --enable-gmp --enable-libaom --enable-libass --enable-libbluray --enable-libdav1d --enable-libfdk-aac --enable-libfontconfig --enable-libfreetype --enable-libfribidi --enable-libgme --enable-libkvazaar --enable-libmp3lame --enable-libopus --enable-libopencore_amrnb --enable-libopencore_amrwb --enable-libopenh264 --enable-libopenjpeg --enable-libshine --enable-libsoxr --enable-libsrt --enable-libsvtav1 --enable-libtheora --enable-libvidstab --ld=g++ --enable-libvmaf --enable-libvorbis --enable-libvpx --enable-libx264 --enable-libx265 --enable-libxvid --enable-libzimg --enable-openssl --enable-zlib --enable-nonfree --extra-libs=-lpthread --enable-pthreads --extra-libs=-lgomp



-
Cutting sections with -ss and -t is not frame accurate
16 avril 2024, par Théo ChampionI'm using
ffmpeg 6.0
to extract small sections from longer videos. According to the doc i can use the-ss
option to specify the start time and the-t
option to specify the duration and this should result in frame accurate cuts (since FFmpeg 2.1).

However, in my testing i found that the cuts are not frame accurate. I'm using the following command :


ffmpeg -ss 10 -i ffmpeg -ss 10 -i https://storage.googleapis.com/klap-assets/Frame%20Counter%20%5B4K%2C%2060%20FPS%5D%20%E2%80%93%200100.mp4 -t 10 -y -vcodec libx264 -acodec aac -movflags +faststart out2.mp4 -t 10 -y -vcodec libx264 -acodec aac -movflags +faststart out.mp4



This result in a video that start at
9:57
(-2 frames) and ends at19:57
(-2 frames) instead of10:00
and20:00
.

Also weird is that ffprobe on the resulting video show its duration being exactly 10 seconds.


FFprobe of the resulting video :


ffprobe version 6.0 Copyright (c) 2007-2023 the FFmpeg developers
 built with Apple clang version 14.0.0 (clang-1400.0.29.202)
 configuration: --prefix=/opt/homebrew/Cellar/ffmpeg/6.0 --enable-shared --enable-pthreads --enable-version3 --cc=clang --host-cflags= --host-ldflags= --enable-ffplay --enable-gnutls --enable-gpl --enable-libaom --enable-libaribb24 --enable-libbluray --enable-libdav1d --enable-libmp3lame --enable-libopus --enable-librav1e --enable-librist --enable-librubberband --enable-libsnappy --enable-libsrt --enable-libsvtav1 --enable-libtesseract --enable-libtheora --enable-libvidstab --enable-libvmaf --enable-libvorbis --enable-libvpx --enable-libwebp --enable-libx264 --enable-libx265 --enable-libxml2 --enable-libxvid --enable-lzma --enable-libfontconfig --enable-libfreetype --enable-frei0r --enable-libass --enable-libopencore-amrnb --enable-libopencore-amrwb --enable-libopenjpeg --enable-libspeex --enable-libsoxr --enable-libzmq --enable-libzimg --disable-libjack --disable-indev=jack --enable-videotoolbox --enable-neon
 libavutil 58. 2.100 / 58. 2.100
 libavcodec 60. 3.100 / 60. 3.100
 libavformat 60. 3.100 / 60. 3.100
 libavdevice 60. 1.100 / 60. 1.100
 libavfilter 9. 3.100 / 9. 3.100
 libswscale 7. 1.100 / 7. 1.100
 libswresample 4. 10.100 / 4. 10.100
 libpostproc 57. 1.100 / 57. 1.100
Input #0, mov,mp4,m4a,3gp,3g2,mj2, from 'out2.mp4':
 Metadata:
 major_brand : isom
 minor_version : 512
 compatible_brands: isomiso2avc1mp41
 encoder : Lavf60.3.100
 Duration: 00:00:10.00, start: 0.000000, bitrate: 303 kb/s
 Stream #0:0[0x1](und): Video: h264 (High) (avc1 / 0x31637661), yuv420p(tv, smpte170m/bt470bg/bt709, progressive), 1920x1080 [SAR 1:1 DAR 16:9], 287 kb/s, 60 fps, 60 tbr, 15360 tbn (default)
 Metadata:
 handler_name : ISO Media file produced by Google Inc.
 vendor_id : [0][0][0][0]
 encoder : Lavc60.3.100 libx264
 Stream #0:1[0x2](und): Audio: aac (LC) (mp4a / 0x6134706D), 44100 Hz, stereo, fltp, 2 kb/s (default)
 Metadata:
 handler_name : ISO Media file produced by Google Inc.
 vendor_id : [0][0][0][0]



I've done some testing with other videos and results are never totally frame accurate.


What am i missing here ? How can i get frame accurate cuts with FFmpeg ?