
Recherche avancée
Autres articles (53)
-
Amélioration de la version de base
13 septembre 2013Jolie sélection multiple
Le plugin Chosen permet d’améliorer l’ergonomie des champs de sélection multiple. Voir les deux images suivantes pour comparer.
Il suffit pour cela d’activer le plugin Chosen (Configuration générale du site > Gestion des plugins), puis de configurer le plugin (Les squelettes > Chosen) en activant l’utilisation de Chosen dans le site public et en spécifiant les éléments de formulaires à améliorer, par exemple select[multiple] pour les listes à sélection multiple (...) -
Emballe médias : à quoi cela sert ?
4 février 2011, parCe plugin vise à gérer des sites de mise en ligne de documents de tous types.
Il crée des "médias", à savoir : un "média" est un article au sens SPIP créé automatiquement lors du téléversement d’un document qu’il soit audio, vidéo, image ou textuel ; un seul document ne peut être lié à un article dit "média" ; -
Le plugin : Gestion de la mutualisation
2 mars 2010, parLe plugin de Gestion de mutualisation permet de gérer les différents canaux de mediaspip depuis un site maître. Il a pour but de fournir une solution pure SPIP afin de remplacer cette ancienne solution.
Installation basique
On installe les fichiers de SPIP sur le serveur.
On ajoute ensuite le plugin "mutualisation" à la racine du site comme décrit ici.
On customise le fichier mes_options.php central comme on le souhaite. Voilà pour l’exemple celui de la plateforme mediaspip.net :
< ?php (...)
Sur d’autres sites (2956)
-
bad ffmpeg performace compared to ffplay and VLC
18 août 2021, par Abdelsalam ElTamawyI've been having bad performance with ffmpeg that I don't see with ffplay and VLC. I find this strange since ffplay uses ffmpeg under the hood.


Simply if I stream an HEVC/h265 stream with ffmpeg and pipe it to ffplay, it would stutter and perform worse than if it played the stream directly with ffplay.


What I'm trying to say is that I expect this command
ffplay rtsp://stream-ip
to perform the same asffmpeg -i rtsp://stream-ip -f matroska - | ffplay -
but it doesn't, ffplay plays noticeably smoother. Also, if I try to stream it with VLC, it is as smooth as ffplay.

here is the log for ffplay :


$ ffplay rtsp://admin:1234@192.168.1.47:554/StdCh1
ffplay version n4.4 Copyright (c) 2003-2021 the FFmpeg developers
 built with gcc 11.1.0 (GCC)
 configuration: --prefix=/usr --disable-debug --disable-static --disable-stripping --enable-amf --enable-avisynth --enable-cuda-llvm --enable-lto --enable-fontconfig --enable-gmp --enable-gnutls --enable-gpl --enable-ladspa --enable-libaom --enable-libass --enable-libbluray --enable-libdav1d --enable-libdrm --enable-libfreetype --enable-libfribidi --enable-libgsm --enable-libiec61883 --enable-libjack --enable-libmfx --enable-libmodplug --enable-libmp3lame --enable-libopencore_amrnb --enable-libopencore_amrwb --enable-libopenjpeg --enable-libopus --enable-libpulse --enable-librav1e --enable-librsvg --enable-libsoxr --enable-libspeex --enable-libsrt --enable-libssh --enable-libsvtav1 --enable-libtheora --enable-libv4l2 --enable-libvidstab --enable-libvmaf --enable-libvorbis --enable-libvpx --enable-libwebp --enable-libx264 --enable-libx265 --enable-libxcb --enable-libxml2 --enable-libxvid --enable-libzimg --enable-nvdec --enable-nvenc --enable-shared --enable-version3
 libavutil 56. 70.100 / 56. 70.100
 libavcodec 58.134.100 / 58.134.100
 libavformat 58. 76.100 / 58. 76.100
 libavdevice 58. 13.100 / 58. 13.100
 libavfilter 7.110.100 / 7.110.100
 libswscale 5. 9.100 / 5. 9.100
 libswresample 3. 9.100 / 3. 9.100
 libpostproc 55. 9.100 / 55. 9.100
Input #0, rtsp, from 'rtsp://admin:1234@192.168.1.47:554/StdCh1':
 Metadata:
 title : KNS-224C
 comment : http80 rtsp554 a0 ba0 pt0 rc2 rv2 ua2 tk3 vs3 vd3 pc0 sc0 af0
 Duration: N/A, start: 0.000000, bitrate: N/A
 Stream #0:0: Video: hevc (Main), yuvj420p(pc, bt709), 1920x1080, 30.30 tbr, 90k tbn, 90k tbc
 Stream #0:1: Data: none



and here is the log for ffmpeg piped into ffplay :


$ ffmpeg -i rtsp://admin:1234@192.168.1.47:554/StdCh1 -f matroska - | ffplay -
ffplay version n4.4ffmpeg version n4.4 Copyright (c) 2003-2021 the FFmpeg developers Copyright (c) 2000-2021 the FFmpeg developers

 built with gcc 11.1.0 (GCC)
 built with gcc 11.1.0 (GCC)
 configuration: --prefix=/usr --disable-debug --disable-static --disable-stripping --enable-amf --enable-avisynth --enable-cuda-llvm --enable-lto --enable-fontconfig --enable-gmp --enable-gnutls --enable-gpl --enable-ladspa --enable-libaom --enable-libass --enable-libbluray --enable-libdav1d --enable-libdrm --enable-libfreetype --enable-libfribidi --enable-libgsm --enable-libiec61883 --enable-libjack --enable-libmfx --enable-libmodplug --enable-libmp3lame --enable-libopencore_amrnb --enable-libopencore_amrwb --enable-libopenjpeg --enable-libopus --enable-libpulse --enable-librav1e --enable-librsvg --enable-libsoxr --enable-libspeex --enable-libsrt --enable-libssh --enable-libsvtav1 --enable-libtheora --enable-libv4l2 --enable-libvidstab --enable-libvmaf --enable-libvorbis --enable-libvpx --enable-libwebp --enable-libx264 --enable-libx265 --enable-libxcb --enable-libxml2 --enable-libxvid --enable-libzimg --enable-nvdec --enable-nvenc --enable-shared --enable-version3
 configuration: --prefix=/usr --disable-debug --disable-static --disable-stripping --enable-amf --enable-avisynth --enable-cuda-llvm --enable-lto --enable-fontconfig --enable-gmp --enable-gnutls --enable-gpl --enable-ladspa --enable-libaom --enable-libass --enable-libbluray --enable-libdav1d --enable-libdrm --enable-libfreetype --enable-libfribidi --enable-libgsm --enable-libiec61883 --enable-libjack --enable-libmfx --enable-libmodplug --enable-libmp3lame --enable-libopencore_amrnb --enable-libopencore_amrwb --enable-libopenjpeg --enable-libopus --enable-libpulse --enable-librav1e --enable-librsvg --enable-libsoxr --enable-libspeex --enable-libsrt --enable-libssh --enable-libsvtav1 --enable-libtheora --enable-libv4l2 --enable-libvidstab --enable-libvmaf --enable-libvorbis --enable-libvpx --enable-libwebp --enable-libx264 --enable-libx265 --enable-libxcb --enable-libxml2 --enable-libxvid --enable-libzimg --enable-nvdec --enable-nvenc --enable-shared --enable-version3
 libavutil 56. 70.100 / 56. 70.100
 libavcodec 58.134.100 / 58.134.100
 libavutil 56. 70.100 / 56. 70.100
 libavformat 58. 76.100 / 58. 76.100
 libavcodec 58.134.100 / 58.134.100
 libavdevice 58. 13.100 / 58. 13.100
 libavformat 58. 76.100 / 58. 76.100
 libavfilter 7.110.100 / 7.110.100
 libavdevice 58. 13.100 / 58. 13.100
 libswscale 5. 9.100 / 5. 9.100
 libavfilter 7.110.100 / 7.110.100
 libswresample 3. 9.100 / 3. 9.100
 libswscale 5. 9.100 / 5. 9.100
 libpostproc 55. 9.100 / 55. 9.100
 libswresample 3. 9.100 / 3. 9.100
 libpostproc 55. 9.100 / 55. 9.100
Input #0, rtsp, from 'rtsp://admin:1234@192.168.1.47:554/StdCh1':
 Metadata:
 title : KNS-224C
 comment : http80 rtsp554 a0 ba0 pt0 rc2 rv2 ua2 tk3 vs3 vd3 pc0 sc0 af0
 Duration: N/A, start: 0.000000, bitrate: N/A
 Stream #0:0: Video: hevc (Main), yuvj420p(pc, bt709), 1920x1080, 30.30 tbr, 90k tbn, 90k tbc
 Stream #0:1: Data: none
Stream mapping:
 Stream #0:0 -> #0:0 (hevc (native) -> h264 (libx264))
Press [q] to stop, [?] for help
[hevc @ 0x561e88468480] Could not find ref with POC 0
[libx264 @ 0x561e8845a480] using cpu capabilities: MMX2 SSE2Fast SSSE3 SSE4.2 AVX FMA3 BMI2 AVX2
[libx264 @ 0x561e8845a480] profile High, level 4.2, 4:2:0, 8-bit0
[libx264 @ 0x561e8845a480] 264 - core 161 r3039 544c61f - H.264/MPEG-4 AVC codec - Copyleft 2003-2021 - http://www.videolan.org/x264.html - options: cabac=1 ref=3 deblock=1:0:0 analyse=0x3:0x113 me=hex subme=7 psy=1 psy_rd=1.00:0.00 mixed_ref=1 me_range=16 chroma_me=1 trellis=1 8x8dct=1 cqm=0 deadzone=21,11 fast_pskip=1 chroma_qp_offset=-2 threads=12 lookahead_threads=2 sliced_threads=0 nr=0 decimate=1 interlaced=0 bluray_compat=0 constrained_intra=0 bframes=3 b_pyramid=2 b_adapt=1 b_bias=0 direct=1 weightb=1 open_gop=0 weightp=2 keyint=250 keyint_min=25 scenecut=40 intra_refresh=0 rc_lookahead=40 rc=crf mbtree=1 crf=23.0 qcomp=0.60 qpmin=0 qpmax=69 qpstep=4 ip_ratio=1.40 aq=1:1.00
Output #0, matroska, to 'pipe:':
 Metadata:
 title : KNS-224C
 comment : http80 rtsp554 a0 ba0 pt0 rc2 rv2 ua2 tk3 vs3 vd3 pc0 sc0 af0
 encoder : Lavf58.76.100
 Stream #0:0: Video: h264 (H264 / 0x34363248), yuvj420p(pc, bt709, progressive), 1920x1080, q=2-31, 30.30 fps, 1k tbn
 Metadata:
 encoder : Lavc58.134.100 libx264
 Side data:
 cpb: bitrate max/min/avg: 0/0/0 buffer size: 0 vbv_delay: N/A
Input #0, matroska,webm, from 'pipe:': vq= 0KB sq= 0B f=0/0 /A speed= 0x
 Metadata:
 title : KNS-224C
 COMMENT : http80 rtsp554 a0 ba0 pt0 rc2 rv2 ua2 tk3 vs3 vd3 pc0 sc0 af0
 ENCODER : Lavf58.76.100
 Duration: N/A, start: 0.000000, bitrate: N/A
 Stream #0:0: Video: h264 (High), yuvj420p(pc, bt709, progressive), 1920x1080, 30.30 fps, 30.30 tbr, 1k tbn, 60.61 tbc (default)
 Metadata:
 ENCODER : Lavc58.134.100 libx264



I'm wondering why is this happening ? shouldn't hardware acceleration be applied in both cases ?


Beyond this I'm trying to create a video mosaic, the performance problem becomes very clear when displaying the streams together in a command like this :


$ ffmpeg -i rtsp://stream1 \
-i rtsp://stream2 \
-i rtsp://stream3 \
-filter_complex "[0:v] scale=960x540 [a0];
[1:v] scale=960x540 [a1];
[2:v] scale=960x540 [a2];
[a0][a1][a2] xstack=inputs=3:layout=0_0|0_h0|w0_0[out]" \
 -map "[out]" -f matroska - | ffplay -



This performs much worse than trying the same mosaic in VLC. Is there something I'm doing wrong ?


I want to note that it performs perfectly fine if I independently streamed all sources with ffplay at the same time.


-
Error while adding RTSP stream to Ant media server
28 juillet 2021, par JacobI have successfully remotely viewed the stream using ffplay -rtsp_transport tcp rtsp ://streamurl.


ffplay version 4.4 Copyright (c) 2003-2021 the FFmpeg developers
 built with Apple clang version 12.0.5 (clang-1205.0.22.9)
 configuration: --prefix=/opt/homebrew/Cellar/ffmpeg/4.4_2 --enable-shared --enable-pthreads --enable-version3 --cc=clang --host-cflags= --host-ldflags= --enable-ffplay --enable-gnutls --enable-gpl --enable-libaom --enable-libbluray --enable-libdav1d --enable-libmp3lame --enable-libopus --enable-librav1e --enable-librubberband --enable-libsnappy --enable-libsrt --enable-libtesseract --enable-libtheora --enable-libvidstab --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-avresample --enable-videotoolbox
 libavutil 56. 70.100 / 56. 70.100
 libavcodec 58.134.100 / 58.134.100
 libavformat 58. 76.100 / 58. 76.100
 libavdevice 58. 13.100 / 58. 13.100
 libavfilter 7.110.100 / 7.110.100
 libavresample 4. 0. 0 / 4. 0. 0
 libswscale 5. 9.100 / 5. 9.100
 libswresample 3. 9.100 / 3. 9.100
 libpostproc 55. 9.100 / 55. 9.100
Input #0, rtsp, from 'rtsp://admin:lyne1234@74.65.209.152:554/11/stream1':
 Metadata:
 title : 10
 Duration: N/A, start: 0.050000, bitrate: N/A
 Stream #0:0: Video: hevc (Main), yuvj420p(pc, bt709), 1920x1080, 20 fps, 20 tbr, 90k tbn, 20 tbc
[swscaler @ 0x160330000] deprecated pixel format used, make sure you did set range correctly
 5.69 M-V: 0.014 fd= 0 aq= 0KB vq= 97KB sq= 0B f=0/0 



However, when playing the stream the a VCL player or trying to add the stream to my AWS instance of Ant media server. The stream does not go through. On ant media server there is no errors the stream connects but its just a black screen. On the VCL player I am getting the error :


VLC is unable to open the MRL 'rtsp://{streamurl}'



I currently have an identical camera setup the exact same way working fine. The only difference is there on different LAN's with different ISP's.


-
How to initialize the AV format context from NetworkStream rather than url ?
23 juillet 2020, par AhmadI'm using FFmpeg.AutoGen to encode catpured frames :
https://github.com/Ruslan-B/FFmpeg.AutoGen


I send the encoded packets through NetworkStream to another program using TCP Client/Server application, using this code :


//Send size and encoded packet
 _stream.Write(BitConverter.GetBytes(pPacket->size), 0, 4);
 using (var packetStream = new UnmanagedMemoryStream(pPacket->data, pPacket->size)) 
 packetStream.CopyTo(_stream);



At the server-side, after UTF8 encoding, I receive content like this :




gd ?r@ ?/ ?a 21 ?
h?C?,? ????E???H??,? ?#??x264 - core 160 - H.264/MPEG-4 AVC codec - Copyleft 2003-2020 - http://www.videolan.org/x264.html - options: cabac=1 ref=16 deblock=1:0:0 analyse=0x3:0x133 me=umh subme=10 psy=1 psy_rd=1.00:0.00 mixed_ref=1 me_range=24 chroma_me=1 trellis=2 8x8dct=1 cqm=0 deadzone=21,11 fast_pskip=1 chroma_qp_offset=-2 threads=11 lookahead_threads=1 sliced_threads=0 nr=0 decimate=1 interlaced=0 bluray_compat=0 constrained_intra=0 bframes=8 b_pyramid=2 b_adapt=2 b_bias=0 direct=3 weightb=1 open_gop=0 weightp=2 keyint=250 keyint_min=25 scenecut=40 intra_refresh=0 rc_lookahead=60 rc=crf mbtree=1 crf=23.0 qcomp=0.60 qpmin=0 qpmax=69 qpstep=4 ip_ratio=1.40 aq=1:1.00 ? e?? ??S?T????M?.O ??Ea???Q?OI??X?????[?P???42=h??M?K? ??{?@c;?t???Ke?>????
?2 ?? ?\qXEvg ???U A ?X ??q/(?? ?L ?_c ?g ?X ?c(To ?k ?Y ?-F ???R ?] ??U ?
 ;|=r ????\U ???2 ?g ??> ??½ ?7 ?A ?1W9 ???A ?? ?_L ??P ?) ?M ????q/ ?L ??) : ??< ??8d/* ? ?^ ??} ?B ?H ?_8C[y ???CY ?QM(J ???1<3% ?K ?F ;Q3Q ????
 ??jyJ" ???y]k ?m ?^} ???S ????h ?3 ????EP ???pw ???q ?jKp ???h ?????



My problem is, how to initialize the AV format context with this data, and decode the received packet to recover the original frame ?


_pFormatContext = ffmpeg.avformat_alloc_context();
ffmpeg.avformat_open_input(&pFormatContext, url, null, null).ThrowExceptionIfError();



As problem exactly is, ffmpeg.avformat_open_input takes URL as an input, not byte[]. If _pFormatContext can be initialized using the received data, things are resolved, but HOW ?