
Recherche avancée
Médias (1)
-
GetID3 - Bloc informations de fichiers
9 avril 2013, par
Mis à jour : Mai 2013
Langue : français
Type : Image
Autres articles (79)
-
Websites made with MediaSPIP
2 mai 2011, parThis page lists some websites based on MediaSPIP.
-
Creating farms of unique websites
13 avril 2011, parMediaSPIP platforms can be installed as a farm, with a single "core" hosted on a dedicated server and used by multiple websites.
This allows (among other things) : implementation costs to be shared between several different projects / individuals rapid deployment of multiple unique sites creation of groups of like-minded sites, making it possible to browse media in a more controlled and selective environment than the major "open" (...) -
Le profil des utilisateurs
12 avril 2011, parChaque utilisateur dispose d’une page de profil lui permettant de modifier ses informations personnelle. Dans le menu de haut de page par défaut, un élément de menu est automatiquement créé à l’initialisation de MediaSPIP, visible uniquement si le visiteur est identifié sur le site.
L’utilisateur a accès à la modification de profil depuis sa page auteur, un lien dans la navigation "Modifier votre profil" est (...)
Sur d’autres sites (9684)
-
HLS files(.m3u8, .ts) does not created on nginx_rtmp_module
6 mars 2018, par sujoyuI want to treanscode RTSP to RTMP to HLS using ffmpeg and nginx_rtmp_module.
But HLS files(.m3u8, .ts) do not created.
I’m testing on Docker(amazonlinux image).
I can access and play
rtmp://localhost:1935/live/camera1
by VLC Player, but can not accesshttp://localhost:8088/live/camera1.m3u8
.docker run command :
docker run -it -p 8088:8088 -p 1935:1935 -v $(pwd):/tmp/share amazonlinux bash
nginx.conf :
user root;
worker_processes 1;
error_log /var/log/nginx/error.log debug;
events {
worker_connections 1024;
}
rtmp {
server {
listen 1935;
access_log /var/log/nginx/rtmp_access.log;
application live {
live on;
hls on;
hls_path /usr/local/nginx/html/hls;
hls_fragment 5s;
hls_type live;
hls_nested on;
}
}
}
http {
server {
listen 8088;
location / {
root /usr/local/nginx/html/;
}
location /hls {
types {
application/vnd.apple.mpegurl m3u8;
video/mp2t ts;
text/html html;
}
alias /usr/local/nginx/html/hls;
}
}
}ffmpeg command : (using sample video
rtsp://184.72.239.149/vod/mp4:BigBuckBunny_175k.mov
)nohup /root/ffmpeg_sources/ffmpeg/ffmpeg -i "rtsp://184.72.239.149/vod/mp4:BigBuckBunny_175k.mov" -f flv -s 320x240 -an "rtmp://localhost:1935/live/camera1" null &
ffmpeg version :
bash-4.2# /root/ffmpeg_sources/ffmpeg/ffmpeg -version
ffmpeg version N-90214-gdd3f1e3 Copyright (c) 2000-2018 the FFmpeg developers
built with gcc 4.8.5 (GCC) 20150623 (Red Hat 4.8.5-11)
configuration: --prefix=/root/ffmpeg_build --pkg-config-flags=--static --extra-cflags=-I/root/ffmpeg_build/include --extra-ldflags=-L/root/ffmpeg_build/lib --extra-libs=-lpthread --extra-libs=-lm --bindir=/root/bin --enable-gpl --enable-libx264 --enable-nonfree
libavutil 56. 8.100 / 56. 8.100
libavcodec 58. 13.102 / 58. 13.102
libavformat 58. 10.100 / 58. 10.100
libavdevice 58. 2.100 / 58. 2.100
libavfilter 7. 12.100 / 7. 12.100
libswscale 5. 0.102 / 5. 0.102
libswresample 3. 0.101 / 3. 0.101
libpostproc 55. 0.100 / 55. 0.100nginx version :
nginx version: nginx/1.13.9
nginx_rtmp_module version :
nginx-rtmp-module-1.2.1
and directory permission :
bash-4.2# pwd
/usr/local/nginx/html
bash-4.2# ls -l
total 48
-rw-r--r-- 1 root root 537 Mar 5 07:24 50x.html
drwxrwxrwx 2 root root 4096 Mar 6 04:46 hls
-rw-r--r-- 1 root root 612 Mar 5 07:24 index.html
-rw------- 1 root root 36262 Mar 6 04:46 nohup.outHelp...
-
What is the proper input format for drawtext's timecode option in fluent-ffmpeg (node.js) ?
24 janvier 2023, par Gil DekelI am trying to generate short video clips from 3 images with a simple millisecond counter at the top left per user request. So far I was able to generate the clips using the
videoshow npm lib
, no issues here.


However, when I try to add the timer via
fluent-ffmpeg
'sdrawtext
filter to an already generated video, I run into the following issue.


Here's what I have so far :



ffmpeg('video.mp4')
 .on('error', function(err, stdout, stderr) {
 console.log("ffmpeg stdout:\n" + stdout);
 console.log("ffmpeg stderr:\n" + stderr);
 })
 .videoCodec('libx264')
 .format('mp4')
 .fps(fps)
 .complexFilter([
 {
 filter: 'drawtext',
 options: {
 fontsize: 15,
 timecode: '00\:00\:00\:00', //<--- Issue is most likely here
 fontsize: 32,
 fontcolor: 'white',
 boxcolor: 'black',
 box: 1
 }
 }
 ]).save('out.mp4');




From what I found online I am quite convinced that my problem is with the
timecode
input format. Here's my error log :


ffmpeg stderr:
ffmpeg version 3.4.2 Copyright (c) 2000-2018 the FFmpeg developers
 built with Apple LLVM version 9.0.0 (clang-900.0.39.2)
 configuration: --prefix=/usr/local/Cellar/ffmpeg/3.4.2 --enable-shared --enable-pthreads --enable-version3 --enable-hardcoded-tables --enable-avresample --cc=clang --host-cflags= --host-ldflags= --disable-jack --enable-gpl --enable-libass --enable-libfdk-aac --enable-libfontconfig --enable-libfreetype --enable-libmp3lame --enable-libopus --enable-libvorbis --enable-libvpx --enable-libx264 --enable-libx265 --enable-libxvid --enable-opencl --enable-videotoolbox --disable-lzma --enable-nonfree
 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 'video.mp4':
 Metadata:
 major_brand : isom
 minor_version : 512
 compatible_brands: isomiso2avc1mp41
 encoder : Lavf57.83.100
 Duration: 00:00:01.03, start: 0.000000, bitrate: 585 kb/s
 Stream #0:0(und): Video: h264 (High) (avc1 / 0x31637661), yuv420p, 640x1136 [SAR 923:924 DAR 130:231], 573 kb/s, 60 fps, 60 tbr, 15360 tbn, 120 tbc (default)
 Metadata:
 handler_name : VideoHandler
[Parsed_drawtext_0 @ 0x7f91aa700700] Both text and text file provided. Please provide only one
[AVFilterGraph @ 0x7f91aa700440] Error initializing filter 'drawtext' with args 'fontsize=32:timecode=00:00:00:00:fontcolor=white:boxcolor=black:box=1'
Error initializing complex filters.
Invalid argument




Specifically this :



[Parsed_drawtext_0 @ 0x7f91aa700700] Both text and text file provided. Please provide only one




When I run what should be the equivalent to my code in shell, it works perfectly :



ffmpeg -i video.mp4 \
 -vf drawtext="fontsize=15:timecode='00\:00\:00\:00':rate=60:fontsize=32:fontcolor='white':\
 boxcolor=0x000000AA:box=1" \
 -f mp4 out.mp4




I already spent a whole day trying to find any previous solutions to this problem, or documentation online regarding the proper format of
drawtext
'stimecode
option within node.js with no luck. It seems most of the information out there is for bash/shell use. I need to do this programmatically on a server per request, and I just can't find the right example to solve this.


Any help to resolve this would be appreciated.


-
ffmpeg rtsp record problems [closed]
3 mai 2023, par user429643I have 3 ip cameras from which I take rtsp stream and record mp4 files via ffmpeg. Previously, everything worked well, but some time ago, the recording from second camera ends after a some period of time (before it should be ended).
Program code :


if [ "$1" = "1" ]; then
 ffmpeg -rtsp_transport tcp -use_wallclock_as_timestamps 1 -fflags +genpts -fflags -discardcorrupt -i rtsp://$CAMLogin@$CAM1IP:$RTSPport/Streaming/Channels/101 -r 20 -vcodec copy -an -t $RECtime -vsync vfr $FULLpath/1.mp4 -report null >/dev/null 2>$FULLpath/cam01.log &
 ffmpeg -i rtsp://$CAMLogin@$CAM1IP:$RTSPport/Streaming/Channels/101 -t 1 -vframes 1 -s 1280x720 -f image2 $FULLpath/1.jpg null >/dev/null 2>$FULLpath/cam_jpg01.log &
fi

if [ "$2" = "1" ]; then
 ffmpeg -rtsp_transport tcp -use_wallclock_as_timestamps 1 -fflags +genpts -fflags -discardcorrupt -i rtsp://$CAMLogin@$CAM2IP:$RTSPport/cam/realmonitor?channel=1&subtype=0 -r 20 -vcodec copy -an -t $RECtime -vsync vfr $FULLpath/2.mp4 -report null >/dev/null 2>$FULLpath/cam02.log &
 ffmpeg -i $CENTRAL -t 1 -vframes 1 -s 1280x720 -f image2 $FULLpath/2.jpg null >/dev/null 2>$FULLpath/cam_jpg02.log &
fi

if [ "$3" = "1" ]; then
 ffmpeg -rtsp_transport tcp -use_wallclock_as_timestamps 1 -fflags +genpts -fflags -discardcorrupt -i rtsp://$CAMLogin@$CAM3IP:$RTSPport/Streaming/Channels/101 -r 20 -vcodec copy -an -t $RECtime -vsync vfr $FULLpath/3.mp4 -report null >/dev/null 2>$FULLpath/cam03.log &
 ffmpeg -i rtsp://$CAMLogin@$CAM3IP:$RTSPport/Streaming/Channels/101 -t 1 -vframes 1 -s 1280x720 -f image2 $FULLpath/3.jpg null >/dev/null 2>$FULLpath/cam_jpg03.log &



If I set a certain recording time, then the problem occurs only from the second camera.


FFMPEG log for first camera :


ffmpeg started on 2023-05-03 at 12:04:01
Report written to "ffmpeg-20230503-120401.log"
ffmpeg version 2.8.14-0ubuntu0.16.04.1 Copyright (c) 2000-2018 the FFmpeg developers
 built with gcc 5.4.0 (Ubuntu 5.4.0-6ubuntu1~16.04.9) 20160609
 configuration: --prefix=/usr --extra-version=0ubuntu0.16.04.1 --build-suffix=-ffmpeg --toolchain=hardened --libdir=/usr/lib/x86_64-linux-gnu --incdir=/usr/include/x86_64-linux-gnu --cc=cc --cxx=g++ --enable-gpl --enable-shared --disable-stripping --disable-decoder=libopenjpeg --disable-decoder=libschroedinger --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-libmodplug --enable-libmp3lame --enable-libopenjpeg --enable-libopus --enable-libpulse --enable-librtmp --enable-libschroedinger --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-libxvid --enable-libzvbi --enable-openal --enable-opengl --enable-x11grab --enable-libdc1394 --enable-libiec61883 --enable-libzmq --enable-frei0r --enable-libx264 --enable-libopencv
 libavutil 54. 31.100 / 54. 31.100
 libavcodec 56. 60.100 / 56. 60.100
 libavformat 56. 40.101 / 56. 40.101
 libavdevice 56. 4.100 / 56. 4.100
 libavfilter 5. 40.101 / 5. 40.101
 libavresample 2. 1. 0 / 2. 1. 0
 libswscale 3. 1.101 / 3. 1.101
 libswresample 1. 2.101 / 1. 2.101
 libpostproc 53. 3.100 / 53. 3.100
Input #0, rtsp, from 'rtsp://username:password@192.168.8.98:554/Streaming/Channels/101':
 Metadata:
 title : Media Presentation
 Duration: N/A, start: 1683104641.578533, bitrate: N/A
 Stream #0:0: Video: h264 (Main), yuvj420p(pc, bt709), 3840x2160 [SAR 1:1 DAR 16:9], 20 fps, 20 tbr, 90k tbn, 40 tbc
[mp4 @ 0x23f8d80] Codec for stream 0 does not use global headers but container format requires global headers
Output #0, mp4, to '/var/www/view/dist/videos/archive/2023-05-03/c24706a011ae90262875803ad73b8a2b/1.mp4':
 Metadata:
 title : Media Presentation
 encoder : Lavf56.40.101
 Stream #0:0: Video: h264 ([33][0][0][0] / 0x0021), yuvj420p, 3840x2160 [SAR 1:1 DAR 16:9], q=2-31, 20 fps, 20 tbr, 10240 tbn, 20 tbc
Stream mapping:
 Stream #0:0 -> #0:0 (copy)
Press [q] to stop, [?] for help
[mp4 @ 0x23f8d80] Non-monotonous DTS in output stream 0:0; previous: 6516, current: 6516; changing to 6517. This may result in incorrect timestamps in the output file.
[mp4 @ 0x23f8d80] Non-monotonous DTS in output stream 0:0; previous: 6523, current: 6523; changing to 6524. This may result in incorrect timestamps in the output file.
frame= 34 fps=0.0 q=-1.0 size= 1922kB time=00:00:01.52 bitrate=10321.7kbits/s 
frame= 45 fps= 41 q=-1.0 size= 2019kB time=00:00:02.07 bitrate=7978.7kbits/s
....
....
....
....
....
frame=144051 fps= 20 q=-1.0 size= 3530396kB time=02:00:01.84 bitrate=4015.8kbits/s 
frame=144055 fps= 20 q=-1.0 Lsize= 3532194kB time=02:00:02.04 bitrate=4017.7kbits/s 
video:3530424kB audio:0kB subtitle:0kB other streams:0kB global headers:0kB muxing overhead: 0.050154% 



FFMPEG log for second camera :


ffmpeg started on 2023-05-03 at 12:04:01
Report written to "ffmpeg-20230503-120401.log"
ffmpeg version 2.8.14-0ubuntu0.16.04.1 Copyright (c) 2000-2018 the FFmpeg developers
 built with gcc 5.4.0 (Ubuntu 5.4.0-6ubuntu1~16.04.9) 20160609
 configuration: --prefix=/usr --extra-version=0ubuntu0.16.04.1 --build-suffix=-ffmpeg --toolchain=hardened --libdir=/usr/lib/x86_64-linux-gnu --incdir=/usr/include/x86_64-linux-gnu --cc=cc --cxx=g++ --enable-gpl --enable-shared --disable-stripping --disable-decoder=libopenjpeg --disable-decoder=libschroedinger --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-libmodplug --enable-libmp3lame --enable-libopenjpeg --enable-libopus --enable-libpulse --enable-librtmp --enable-libschroedinger --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-libxvid --enable-libzvbi --enable-openal --enable-opengl --enable-x11grab --enable-libdc1394 --enable-libiec61883 --enable-libzmq --enable-frei0r --enable-libx264 --enable-libopencv
 libavutil 54. 31.100 / 54. 31.100
 libavcodec 56. 60.100 / 56. 60.100
 libavformat 56. 40.101 / 56. 40.101
 libavdevice 56. 4.100 / 56. 4.100
 libavfilter 5. 40.101 / 5. 40.101
 libavresample 2. 1. 0 / 2. 1. 0
 libswscale 3. 1.101 / 3. 1.101
 libswresample 1. 2.101 / 1. 2.101
 libpostproc 53. 3.100 / 53. 3.100
[rtsp @ 0x134adc0] DTS discontinuity in stream 1: packet 3 with DTS 80789022795410, packet 4 with DTS 80789022798792
[rtsp @ 0x134adc0] DTS discontinuity in stream 1: packet 7 with DTS 80789022798811, packet 8 with DTS 80789022809865
Guessed Channel Layout for Input Stream #0.1 : mono
Input #0, rtsp, from 'rtsp://username:password@192.168.8.22:554/cam/realmonitor?channel=1&subtype=0':
 Metadata:
 title : Media Server
 Duration: N/A, start: 1683104641.570750, bitrate: N/A
 Stream #0:0: Video: h264 (Main), yuvj420p(pc, bt709), 4096x1800, 90k tbr, 90k tbn, 180k tbc
 Stream #0:1: Audio: pcm_alaw, 48000 Hz, 1 channels, s16, 384 kb/s
[mp4 @ 0x1538e00] Codec for stream 0 does not use global headers but container format requires global headers
Output #0, mp4, to '/var/www/view/dist/videos/archive/2023-05-03/c24706a011ae90262875803ad73b8a2b/2.mp4':
 Metadata:
 title : Media Server
 encoder : Lavf56.40.101
 Stream #0:0: Video: h264 ([33][0][0][0] / 0x0021), yuvj420p, 4096x1800, q=2-31, 90k tbr, 10240 tbn, 20 tbc
Stream mapping:
 Stream #0:0 -> #0:0 (copy)
Press [q] to stop, [?] for help
frame= 31 fps=0.0 q=-1.0 size= 1170kB time=00:00:01.46 bitrate=6543.0kbits/s 
frame= 40 fps= 39 q=-1.0 size= 1435kB time=00:00:01.92 bitrate=6120.5kbits/s 
Invalid UE golomb code
frame= 52 fps= 34 q=-1.0 size= 2099kB time=00:00:02.50 bitrate=6864.2kbits/s 
frame= 63 fps= 31 q=-1.0 size= 2399kB time=00:00:03.06 bitrate=6411.5kbits/s 
frame= 72 fps= 28 q=-1.0 size= 2670kB time=00:00:03.52 bitrate=6210.5kbits/s 
Invalid UE golomb code
...
...
...
...
Invalid UE golomb code
frame=27243 fps= 20 q=-1.0 size= 1046397kB time=00:22:42.09 bitrate=6293.3kbits/s 
frame=27254 fps= 20 q=-1.0 size= 1046712kB time=00:22:42.64 bitrate=6292.7kbits/s 
frame=27264 fps= 20 q=-1.0 size= 1046990kB time=00:22:43.12 bitrate=6292.1kbits/s 
frame=27275 fps= 20 q=-1.0 size= 1047290kB time=00:22:43.67 bitrate=6291.4kbits/s 
Invalid UE golomb code
frame=27285 fps= 20 q=-1.0 size= 1048022kB time=00:22:44.20 bitrate=6293.3kbits/s 
frame=27292 fps= 20 q=-1.0 Lsize= 1048561kB time=00:22:44.52 bitrate=6295.1kbits/s 
video:1048224kB audio:0kB subtitle:0kB other streams:0kB global headers:0kB muxing overhead: 0.032150%



Initially, I thought that the error was in timestamps, so I added arguments to ffmpeg :


-use_wallclock_as_timestamps 1
-fflags +genpts
-fflags -discardcorrupt
-vsync vfr


But this doesnt help.