
Recherche avancée
Autres articles (63)
-
HTML5 audio and video support
13 avril 2011, parMediaSPIP uses HTML5 video and audio tags to play multimedia files, taking advantage of the latest W3C innovations supported by modern browsers.
The MediaSPIP player used has been created specifically for MediaSPIP and can be easily adapted to fit in with a specific theme.
For older browsers the Flowplayer flash fallback is used.
MediaSPIP allows for media playback on major mobile platforms with the above (...) -
Support audio et vidéo HTML5
10 avril 2011MediaSPIP utilise les balises HTML5 video et audio pour la lecture de documents multimedia en profitant des dernières innovations du W3C supportées par les navigateurs modernes.
Pour les navigateurs plus anciens, le lecteur flash Flowplayer est utilisé.
Le lecteur HTML5 utilisé a été spécifiquement créé pour MediaSPIP : il est complètement modifiable graphiquement pour correspondre à un thème choisi.
Ces technologies permettent de distribuer vidéo et son à la fois sur des ordinateurs conventionnels (...) -
MediaSPIP Init et Diogène : types de publications de MediaSPIP
11 novembre 2010, parÀ l’installation d’un site MediaSPIP, le plugin MediaSPIP Init réalise certaines opérations dont la principale consiste à créer quatre rubriques principales dans le site et de créer cinq templates de formulaire pour Diogène.
Ces quatre rubriques principales (aussi appelées secteurs) sont : Medias ; Sites ; Editos ; Actualités ;
Pour chacune de ces rubriques est créé un template de formulaire spécifique éponyme. Pour la rubrique "Medias" un second template "catégorie" est créé permettant d’ajouter (...)
Sur d’autres sites (6058)
-
FFMPEG on PHP could not open file
15 juillet 2021, par albertCurrently, I'm running the latest FFMPEG (4.2.1) on MacOS Catalina.
I'm trying to join multiple image to become an mp4 video using FFMPEG executed with PHP exec()



here is my ffmpeg code



"/usr/local/bin/ffmpeg -filter_complex \"[0]reverse[r];[0][r]concat, loop=1:50, setpts=N/12/TB\" -r 25 -f image2 -i /Users/Dan/Desktop/RAW/0234_%02d.jpg -preset fast -crf 23 -profile:v baseline -movflags +faststart -pix_fmt yuv420p /Applications/XAMPP/htdocs/render/result/result.mp4 2>&1"




Here is the output of FFMPEG



Array (
 [0] => ffmpeg version 4.2.1-tessus https://evermeet.cx/ffmpeg/ Copyright (c) 2000-2019 the FFmpeg developers
 [1] => built with Apple LLVM version 10.0.1 (clang-1001.0.46.4)
 [2] => configuration: --cc=/usr/bin/clang --prefix=/opt/ffmpeg --extra-version=tessus --enable-avisynth --enable-fontconfig --enable-gpl --enable-libaom --enable-libass --enable-libbluray --enable-libdav1d --enable-libfreetype --enable-libgsm --enable-libmodplug --enable-libmp3lame --enable-libmysofa --enable-libopencore-amrnb --enable-libopencore-amrwb --enable-libopenh264 --enable-libopenjpeg --enable-libopus --enable-librubberband --enable-libshine --enable-libsnappy --enable-libsoxr --enable-libspeex --enable-libtheora --enable-libtwolame --enable-libvidstab --enable-libvmaf --enable-libvo-amrwbenc --enable-libvorbis --enable-libvpx --enable-libwavpack --enable-libwebp --enable-libx264 --enable-libx265 --enable-libxavs --enable-libxvid --enable-libzimg --enable-libzmq --enable-libzvbi --enable-version3 --pkg-config-flags=--static --disable-ffplay
 [3] => libavutil 56. 31.100 / 56. 31.100
 [4] => libavcodec 58. 54.100 / 58. 54.100
 [5] => libavformat 58. 29.100 / 58. 29.100
 [6] => libavdevice 58. 8.100 / 58. 8.100
 [7] => libavfilter 7. 57.100 / 7. 57.100
 [8] => libswscale 5. 5.100 / 5. 5.100
 [9] => libswresample 3. 5.100 / 3. 5.100
 [10] => libpostproc 55. 5.100 / 55. 5.100
 [11] => [image2 @ 0x7fe4b1000400] Could not open file : /Users/Dan/Desktop/RAW/0234_01.jpg
 [12] => [image2 @ 0x7fe4b1000400] Could not find codec parameters for stream 0 (Video: mjpeg, none(bt470bg/unknown/unknown)):
 unspecified size
 [13] => Consider increasing the value for the 'analyzeduration' and 'probesize' options
 [14] => Input #0, image2, from '/Users/Dan/Desktop/RAW/0234_%02d.jpg':
 [15] => Duration: 00:00:00.20, start: 0.000000, bitrate: N/A
 [16] => Stream #0:0: Video: mjpeg, none(bt470bg/unknown/unknown), 25 tbr, 25 tbn, 25 tbc
 [17] => Stream mapping:
 [18] => Stream #0:0 (mjpeg) -> reverse
 [19] => Stream #0:0 (mjpeg) -> concat:in0:v0
 [20] => setpts -> Stream #0:0 (libx264)
 [21] => Press [q] to stop, [?] for help
 [22] => [image2 @ 0x7fe4b1000400] Could not open file : /Users/Dan/Desktop/RAW/0234_01.jpg
 [23] => /Users/Dan/Desktop/RAW/0234_%02d.jpg: Input/output error
 [24] => Cannot determine format of input stream 0:0 after EOF
 [25] => Error marking filters as finished
 [26] => Conversion failed!
 )




On the 11th row, ffmpeg could not open the file, although the file permission already read and write for everyone.
Is it something I missed for the ffmpeg code ?



Note : The ffmpeg code above can be run on terminal successfully


-
How to build the Exoplayer ffmpeg extension with the GSM codec ?
4 mars 2020, par MadCoconutI wanted to use Exoplayer to play an audio file but when I tried I got this exception :
2019-12-13 10:08:14.827 28972-29388/com.XXX.XXX E/ExoPlayerImplInternal: Source error.
com.google.android.exoplayer2.ParserException: Expected block alignment: 0; got: 65
at com.google.android.exoplayer2.extractor.wav.WavHeaderReader.peek(WavHeaderReader.java:81)
at com.google.android.exoplayer2.extractor.wav.WavExtractor.sniff(WavExtractor.java:50)
at com.google.android.exoplayer2.source.ProgressiveMediaPeriod$ExtractorHolder.selectExtractor(ProgressiveMediaPeriod.java:1061)
at com.google.android.exoplayer2.source.ProgressiveMediaPeriod$ExtractingLoadable.load(ProgressiveMediaPeriod.java:952)
at com.google.android.exoplayer2.upstream.Loader$LoadTask.run(Loader.java:394)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1162)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:636)
at java.lang.Thread.run(Thread.java:764)The audio files I have to play are wav files (GSM_MS, 13kb/s)
I tried to build the the Exoplayer Ffmpeg extension following the tutorial :
https://github.com/google/ExoPlayer/tree/release-v2/extensions/ffmpegI cloned the Exoplayer repository and I downloaded the Android NDK version r20b.
I modified the build script build_ffmpeg.sh to enable the libgsm :
COMMON_OPTIONS=“
…
—enable-libgsm
"I defined the required environment variables :
- FFMPEG_EXT_PATH=“/extensions/ffmpeg/src/main/jni”
- NDK_PATH="/Users/USER/Documents/Android/android-ndk-r20b/"
- HOST_PLATFORM(“darwin-x86_64”)
- ENABLED_DECODERS(all the decoders available https://exoplayer.dev/supported-formats.html#ffmpeg-extension)
Then I built the library using the provided command line :
cd "${FFMPEG_EXT_PATH}" && \
./build_ffmpeg.sh \
"${FFMPEG_EXT_PATH}" "${NDK_PATH}" "${HOST_PLATFORM}" "${ENABLED_DECODERS[@]}"But something goes wrong during the build process :
remote: Enumerating objects: 38, done.
remote: Counting objects: 100% (38/38), done.
remote: Compressing objects: 100% (26/26), done.
remote: Total 26 (delta 20), reused 0 (delta 0)
Unpacking objects: 100% (26/26), done.
From git://source.ffmpeg.org/ffmpeg
377a095dc3..bd83191271 master -> origin/master
Already up to date.
Already on 'release/4.2'
Your branch is up to date with 'origin/release/4.2'.
ERROR: libgsm not found
If you think configure made a mistake, make sure you are using the latest
version from Git. If the latest version fails, report the problem to the
ffmpeg-user@ffmpeg.org mailing list or IRC #ffmpeg on irc.freenode.net.
Include the log file "ffbuild/config.log" produced by configure as this will help
solve the problem.
GEN libavutil/libavutil.version
GEN libswresample/libswresample.version
GEN libavresample/libavresample.version
GEN libavcodec/libavcodec.version
CC libavcodec/aac_ac3_parser.o
CC libavcodec/aacdec.o
CC libavcodec/aacps_float.o
CC libavcodec/aacpsdsp_float.o
CC libavcodec/aacsbr.o
CC libavcodec/aactab.o
CC libavcodec/ac3.o
CC libavcodec/ac3_parser.o
CC libavcodec/ac3dec_data.o
CC libavcodec/ac3dec_float.oHere is a part of the content of the config.log file located in the ffmpeg checked out library (/extensions/ffmpeg/src/main/jni/ffmpeg/ffbuild/config.log :
…
/Users/USER/Documents/Android/android-ndk-r20b/toolchains/llvm/prebuilt/darwin-x86_64/bin/i686-linux-android16-clang -march=i686 -Wl,--as-needed -Wl,-z,noexecstack -pie -fPIE -pie -o /var/folders/9l/trkjpc091_79vk3krfpykbsh0000gn/T//ffconf.hv2yROG1/test /var/folders/9l/trkjpc091_79vk3krfpykbsh0000gn/T//ffconf.hv2yROG1/test.o
/var/folders/9l/trkjpc091_79vk3krfpykbsh0000gn/T//ffconf.hv2yROG1/test.o:test.c:function foo: error: undefined reference to 'cexp'
clang: error: linker command failed with exit code 1 (use -v to see invocation)
check_lib libgsm gsm.h gsm_create -lgsm
check_func_headers gsm.h gsm_create -lgsm
test_ld cc -lgsm
test_cc
BEGIN /var/folders/9l/trkjpc091_79vk3krfpykbsh0000gn/T//ffconf.hv2yROG1/test.c
1 #include
2 #include
3 long check_gsm_create(void) { return (long) gsm_create; }
4 int main(void) { int ret = 0;
5 ret |= ((intptr_t)check_gsm_create) & 0xFFFF;
6 return ret; }
END /var/folders/9l/trkjpc091_79vk3krfpykbsh0000gn/T//ffconf.hv2yROG1/test.c
/Users/USER/Documents/Android/android-ndk-r20b/toolchains/llvm/prebuilt/darwin-x86_64/bin/i686-linux-android16-clang -D_ISOC99_SOURCE -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -Dstrtod=avpriv_strtod -DPIC -march=i686 -std=c11 -fPIE -fomit-frame-pointer -fPIC -pthread -c -o /var/folders/9l/trkjpc091_79vk3krfpykbsh0000gn/T//ffconf.hv2yROG1/test.o /var/folders/9l/trkjpc091_79vk3krfpykbsh0000gn/T//ffconf.hv2yROG1/test.c
/var/folders/9l/trkjpc091_79vk3krfpykbsh0000gn/T//ffconf.hv2yROG1/test.c:1:10: fatal error: 'gsm.h' file not found
…The gsm.h file is located there : /extensions/ffmpeg/src/main/jni/ffmpeg/libavcodec
I assume this path has been configured to be used by the build script.
Any help is much appreciated.
-
Empty stream when cutting a video using ffmpeg
17 décembre 2019, par dscvWhen I try cutting a video, it outputs an empty stream (262 byte video with 0s duration). Would appreciate any insight, thanks.
Command used :
ffmpeg -i /path/to/long/video.mp4 -ss 37.69 -t 4.96 -c copy /path/to/short/video.mp4
However, when I the following (more inaccurate) command, it outputs a video. This video also has some problems, as the last frame is repeated several times, making the video one second longer (with a frozen image for one second).
ffmpeg -ss 37.69 -i /path/to/long/video.mp4 -t 4.96 -c copy /path/to/short/video.mp4
ffmpeg version :
ffmpeg version 3.4.6-0ubuntu0.18.04.1
The outputs for the two commands are :
First command :
built with gcc 7 (Ubuntu 7.3.0-16ubuntu3)
configuration: --prefix=/usr --extra-version=0ubuntu0.18.04.1 --toolchain=hardened --libdir=/usr/lib/x86_64-linux-gnu --incdir=/usr/include/x86_64-linux-gnu --enable-gpl --disable-stripping --enable-avresample --enable-avisynth --enable-gnutls --enable-ladspa --enable-libass --enable-libbluray --enable-libbs2b --enable-libcaca --enable-libcdio --enable-libflite --enable-libfontconfig --enable-libfreetype --enable-libfribidi --enable-libgme --enable-libgsm --enable-libmp3lame --enable-libmysofa --enable-libopenjpeg --enable-libopenmpt --enable-libopus --enable-libpulse --enable-librubberband --enable-librsvg --enable-libshine --enable-libsnappy --enable-libsoxr --enable-libspeex --enable-libssh --enable-libtheora --enable-libtwolame --enable-libvorbis --enable-libvpx --enable-libwavpack --enable-libwebp --enable-libx265 --enable-libxml2 --enable-libxvid --enable-libzmq --enable-libzvbi --enable-omx --enable-openal --enable-opengl --enable-sdl2 --enable-libdc1394 --enable-libdrm --enable-libiec61883 --enable-chromaprint --enable-frei0r --enable-libopencv --enable-libx264 --enable-shared
libavutil 55. 78.100 / 55. 78.100
libavcodec 57.107.100 / 57.107.100
libavformat 57. 83.100 / 57. 83.100
libavdevice 57. 10.100 / 57. 10.100
libavfilter 6.107.100 / 6.107.100
libavresample 3. 7. 0 / 3. 7. 0
libswscale 4. 8.100 / 4. 8.100
libswresample 2. 9.100 / 2. 9.100
libpostproc 54. 7.100 / 54. 7.100
Input #0, mov,mp4,m4a,3gp,3g2,mj2, from '/proj/vondrick/datasets/HowTo100M/video/Cars_&_Other_Vehicles/Motorcycles/52907/video_nVbIUDjzWY4.mp4':
Metadata:
major_brand : dash
minor_version : 0
compatible_brands: iso6avc1mp41
creation_time : 2015-06-26T00:39:04.000000Z
Duration: 00:07:14.40, start: 0.000000, bitrate: 244 kb/s
Stream #0:0(und): Video: h264 (Main) (avc1 / 0x31637661), yuv420p(progressive), 426x240 [SAR 1:1 DAR 71:40], 2 kb/s, 29.97 fps, 29.97 tbr, 90k tbn, 59.94 tbc (default)
Metadata:
creation_time : 2015-06-26T00:39:04.000000Z
handler_name : VideoHandler
Output #0, mp4, to '/proj/vondrick/datasets/HowTo100M/cropped_video/Cars_&_Other_Vehicles/Motorcycles/52907/nVbIUDjzWY4/video_000000_p.mp4':
Metadata:
major_brand : dash
minor_version : 0
compatible_brands: iso6avc1mp41
encoder : Lavf57.83.100
Stream #0:0(und): Video: h264 (Main) (avc1 / 0x31637661), yuv420p(progressive), 426x240 [SAR 1:1 DAR 71:40], q=2-31, 2 kb/s, 29.97 fps, 29.97 tbr, 90k tbn, 90k tbc (default)
Metadata:
creation_time : 2015-06-26T00:39:04.000000Z
handler_name : VideoHandler
Stream mapping:
Stream #0:0 -> #0:0 (copy)
Press [q] to stop, [?] for help
frame= 0 fps=0.0 q=-1.0 Lsize= 0kB time=00:00:00.00 bitrate=N/A speed= 0x
video:0kB audio:0kB subtitle:0kB other streams:0kB global headers:0kB muxing overhead: unknownSecond command :
ffmpeg version 3.4.6-0ubuntu0.18.04.1 Copyright (c) 2000-2019 the FFmpeg developers
built with gcc 7 (Ubuntu 7.3.0-16ubuntu3)
configuration: --prefix=/usr --extra-version=0ubuntu0.18.04.1 --toolchain=hardened --libdir=/usr/lib/x86_64-linux-gnu --incdir=/usr/include/x86_64-linux-gnu --enable-gpl --disable-stripping --enable-avresample --enable-avisynth --enable-gnutls --enable-ladspa --enable-libass --enable-libbluray --enable-libbs2b --enable-libcaca --enable-libcdio --enable-libflite --enable-libfontconfig --enable-libfreetype --enable-libfribidi --enable-libgme --enable-libgsm --enable-libmp3lame --enable-libmysofa --enable-libopenjpeg --enable-libopenmpt --enable-libopus --enable-libpulse --enable-librubberband --enable-librsvg --enable-libshine --enable-libsnappy --enable-libsoxr --enable-libspeex --enable-libssh --enable-libtheora --enable-libtwolame --enable-libvorbis --enable-libvpx --enable-libwavpack --enable-libwebp --enable-libx265 --enable-libxml2 --enable-libxvid --enable-libzmq --enable-libzvbi --enable-omx --enable-openal --enable-opengl --enable-sdl2 --enable-libdc1394 --enable-libdrm --enable-libiec61883 --enable-chromaprint --enable-frei0r --enable-libopencv --enable-libx264 --enable-shared
libavutil 55. 78.100 / 55. 78.100
libavcodec 57.107.100 / 57.107.100
libavformat 57. 83.100 / 57. 83.100
libavdevice 57. 10.100 / 57. 10.100
libavfilter 6.107.100 / 6.107.100
libavresample 3. 7. 0 / 3. 7. 0
libswscale 4. 8.100 / 4. 8.100
libswresample 2. 9.100 / 2. 9.100
libpostproc 54. 7.100 / 54. 7.100
Input #0, mov,mp4,m4a,3gp,3g2,mj2, from '/proj/vondrick/datasets/HowTo100M/video/Cars_&_Other_Vehicles/Motorcycles/52907/video_nVbIUDjzWY4.mp4':
Metadata:
major_brand : dash
minor_version : 0
compatible_brands: iso6avc1mp41
creation_time : 2015-06-26T00:39:04.000000Z
Duration: 00:07:14.40, start: 0.000000, bitrate: 244 kb/s
Stream #0:0(und): Video: h264 (Main) (avc1 / 0x31637661), yuv420p(progressive), 426x240 [SAR 1:1 DAR 71:40], 2 kb/s, 29.97 fps, 29.97 tbr, 90k tbn, 59.94 tbc (default)
Metadata:
creation_time : 2015-06-26T00:39:04.000000Z
handler_name : VideoHandler
Output #0, mp4, to '/proj/vondrick/datasets/HowTo100M/cropped_video/Cars_&_Other_Vehicles/Motorcycles/52907/nVbIUDjzWY4/video_000000_3.mp4':
Metadata:
major_brand : dash
minor_version : 0
compatible_brands: iso6avc1mp41
encoder : Lavf57.83.100
Stream #0:0(und): Video: h264 (Main) (avc1 / 0x31637661), yuv420p(progressive), 426x240 [SAR 1:1 DAR 71:40], q=2-31, 2 kb/s, 29.97 fps, 29.97 tbr, 90k tbn, 90k tbc (default)
Metadata:
creation_time : 2015-06-26T00:39:04.000000Z
handler_name : VideoHandler
Stream mapping:
Stream #0:0 -> #0:0 (copy)
Press [q] to stop, [?] for help
frame= 159 fps=0.0 q=-1.0 Lsize= 159kB time=00:00:04.95 bitrate= 263.0kbits/s speed=1.89e+03x
video:158kB audio:0kB subtitle:0kB other streams:0kB global headers:0kB muxing overhead: 0.909119%