
Recherche avancée
Autres articles (60)
-
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 ;
-
Mise à jour de la version 0.1 vers 0.2
24 juin 2013, parExplications des différents changements notables lors du passage de la version 0.1 de MediaSPIP à la version 0.3. Quelles sont les nouveautés
Au niveau des dépendances logicielles Utilisation des dernières versions de FFMpeg (>= v1.2.1) ; Installation des dépendances pour Smush ; Installation de MediaInfo et FFprobe pour la récupération des métadonnées ; On n’utilise plus ffmpeg2theora ; On n’installe plus flvtool2 au profit de flvtool++ ; On n’installe plus ffmpeg-php qui n’est plus maintenu au (...) -
Soumettre améliorations et plugins supplémentaires
10 avril 2011Si vous avez développé une nouvelle extension permettant d’ajouter une ou plusieurs fonctionnalités utiles à MediaSPIP, faites le nous savoir et son intégration dans la distribution officielle sera envisagée.
Vous pouvez utiliser la liste de discussion de développement afin de le faire savoir ou demander de l’aide quant à la réalisation de ce plugin. MediaSPIP étant basé sur SPIP, il est également possible d’utiliser le liste de discussion SPIP-zone de SPIP pour (...)
Sur d’autres sites (11719)
-
ffmpeg Windows : standard transcode produces file that "uses unsupported encoding settings" [duplicate]
17 août 2022, par David M. Cotterusing the basic command :


ffmpeg -i infile.mp4 -vcodec libx264 -acodec aac output.mp4



poduces a file that can't be played by the standard Windows Media Player app.
Is there something i'm missing ?


Here is the log data.


C:> \\Mac\depot\kJams\External\ffmpeg\win\bin\ffmpeg.exe -i "\\Mac\Home\Desktop\Christina lying down.AVI" -vcodec libx264 -acodec aac output.mp4
ffmpeg version git-2019-11-01-53c21c2 Copyright (c) 2000-2019 the FFmpeg developers
 built with gcc 9.2.1 (GCC) 20191010
 configuration: --enable-gpl --enable-version3 --enable-sdl2 --enable-fontconfig --enable-gnutls --enable-iconv --enable-libass --enable-libdav1d --enable-libbluray --enable-libfreetype --enable-libmp3lame --enable-libopencore-amrnb --enable-libopencore-amrwb --enable-libopenjpeg --enable-libopus --enable-libshine --enable-libsnappy --enable-libsoxr --enable-libtheora --enable-libtwolame --enable-libvpx --enable-libwavpack --enable-libwebp --enable-libx264 --enable-libx265 --enable-libxml2 --enable-libzimg --enable-lzma --enable-zlib --enable-gmp --enable-libvidstab --enable-libvorbis --enable-libvo-amrwbenc --enable-libmysofa --enable-libspeex --enable-libxvid --enable-libaom --enable-libmfx --enable-ffnvcodec --enable-cuvid --enable-d3d11va --enable-nvenc --enable-nvdec --enable-dxva2 --enable-avisynth --enable-libopenmpt --enable-amf
 libavutil 56. 35.101 / 56. 35.101
 libavcodec 58. 60.100 / 58. 60.100
 libavformat 58. 33.100 / 58. 33.100
 libavdevice 58. 9.100 / 58. 9.100
 libavfilter 7. 66.100 / 7. 66.100
 libswscale 5. 6.100 / 5. 6.100
 libswresample 3. 6.100 / 3. 6.100
 libpostproc 55. 6.100 / 55. 6.100
Guessed Channel Layout for Input Stream #0.1 : mono
Input #0, avi, from '\\Mac\Home\Desktop\Christina lying down.AVI':
 Metadata:
 creation_time : 2006-01-26 18:19:22
 encoder : CanonMVI02
 Duration: 00:00:07.70, start: 0.000000, bitrate: 14928 kb/s
 Stream #0:0: Video: mjpeg (Baseline) (MJPG / 0x47504A4D), yuvj422p(pc, bt470bg/unknown/unknown), 640x480, 14896 kb/s, 30 fps, 30 tbr, 30 tbn, 30 tbc
 Stream #0:1: Audio: pcm_u8 ([1][0][0][0] / 0x0001), 11024 Hz, mono, u8, 88 kb/s
Stream mapping:
 Stream #0:0 -> #0:0 (mjpeg (native) -> h264 (libx264))
 Stream #0:1 -> #0:1 (pcm_u8 (native) -> aac (native))
Press [q] to stop, [?] for help
[aac @ 0f06a740] Too many bits 6408.707483 > 6144 per frame requested, clamping to max
[libx264 @ 0f068b40] using cpu capabilities: MMX2 SSE2Fast SSSE3 SSE4.2
[libx264 @ 0f068b40] profile High 4:2:2, level 3.0, 4:2:2, 8-bit
[libx264 @ 0f068b40] 264 - core 158 - H.264/MPEG-4 AVC codec - Copyleft 2003-2019 - 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, mp4, to 'output.mp4':
 Metadata:
 encoder : Lavf58.33.100
 Stream #0:0: Video: h264 (libx264) (avc1 / 0x31637661), yuvj422p(pc), 640x480, q=-1--1, 30 fps, 1000k tbn, 30 tbc
 Metadata:
 encoder : Lavc58.60.100 libx264
 Side data:
 cpb: bitrate max/min/avg: 0/0/0 buffer size: 0 vbv_delay: N/A
 Stream #0:1: Audio: aac (LC) (mp4a / 0x6134706D), 11025 Hz, mono, fltp, 66 kb/s
 Metadata:
 encoder : Lavc58.60.100 aac
frame= 231 fps=128 q=-1.0 Lsize= 1570kB time=00:00:07.70 bitrate=1668.3kbits/s speed=4.28x
video:1514kB audio:51kB subtitle:0kB other streams:0kB global headers:0kB muxing overhead: 0.347234%
[libx264 @ 0f068b40] frame I:2 Avg QP:24.57 size: 27076
[libx264 @ 0f068b40] frame P:60 Avg QP:26.24 size: 12693
[libx264 @ 0f068b40] frame B:169 Avg QP:27.91 size: 4342
[libx264 @ 0f068b40] consecutive B-frames: 1.7% 1.7% 1.3% 95.2%
[libx264 @ 0f068b40] mb I I16..4: 0.6% 97.6% 1.8%
[libx264 @ 0f068b40] mb P I16..4: 0.1% 10.6% 0.5% P16..4: 51.1% 17.9% 10.8% 0.0% 0.0% skip: 8.9%
[libx264 @ 0f068b40] mb B I16..4: 0.0% 1.2% 0.0% B16..8: 51.8% 4.4% 0.7% direct: 6.4% skip:35.5% L0:48.8% L1:46.4% BI: 4.8%
[libx264 @ 0f068b40] 8x8 transform intra:95.6% inter:78.5%
[libx264 @ 0f068b40] coded y,uvDC,uvAC intra: 89.0% 85.1% 53.7% inter: 29.0% 44.7% 6.7%
[libx264 @ 0f068b40] i16 v,h,dc,p: 19% 31% 8% 42%
[libx264 @ 0f068b40] i8 v,h,dc,ddl,ddr,vr,hd,vl,hu: 11% 15% 33% 6% 7% 5% 9% 5% 8%
[libx264 @ 0f068b40] i4 v,h,dc,ddl,ddr,vr,hd,vl,hu: 14% 21% 18% 7% 10% 6% 11% 5% 6%
[libx264 @ 0f068b40] i8c dc,h,v,p: 67% 13% 15% 5%
[libx264 @ 0f068b40] Weighted P-Frames: Y:8.3% UV:6.7%
[libx264 @ 0f068b40] ref P L0: 35.8% 10.5% 35.1% 17.4% 1.2%
[libx264 @ 0f068b40] ref B L0: 76.1% 19.2% 4.7%
[libx264 @ 0f068b40] ref B L1: 92.7% 7.3%
[libx264 @ 0f068b40] kb/s:1609.92
[aac @ 0f06a740] Qavg: 34311.295



Ignore this part, Stack Overflow now requires that i type something more so it's not "mostly code"


-
Is there a way to create a single HLS output from more than one RTMP inputs in listen mode ?
25 novembre 2020, par Gabriele TassoniI'm trying to create a single HLS output using, as inputs, different RTMP playpaths or different RTMP streams, i.e. :


- 

- rtmp ://ip:1935/app/key0
- rtmp ://ip:1935/app/key1
- rtmp ://ip:1935/app/key2








The resulting HLS output should have video track from key0, and three audio tracks from key0, key1 and key2.


I used FFMPEG, but I'm open to different open source software for the server/converter part.


What I tried so far :


NO RTMP approach


I get in input anything thrown to a TCP port, the mp4 stream sent already has multiple audio tracks, this works well and the HLS output is correctly created, cons : it's not compatible with RTMP standard, many commercial software, like vMix, just live streams to RTMP, so I cannot use this approach.


ffmpeg -y -hwaccel auto \
 -i tcp://0.0.0.0:${port}?listen \
 -map 0:0 \
 -map 0:a \
 -c:v libx264 -c:a aac -b:v 5000k -b:a 192k -vf "scale=1920:trunc(ow/a/2)*2" -tune zerolatency -preset veryfast -crf 23 -g 48 \
 -f hls -hls_time 4 -hls_playlist_type event -hls_segment_filename ${dir}/${name}/1080p_%03d.ts ${dir}/${name}/1080p.m3u8



NGINX RTMP Module


I used in NGINX RTMP an application which execs an ffmpeg command, cons : it doesn't work, it sits there forever, like it's waiting for something.


ffmpeg -y -hwaccel auto \
 -i "rtmp://localhost:1935/mainav/$key" \
 -i "rtmp://localhost:1935/mainav/$name:lang:$lang" \
 -map 0:v:0 -map 0:a:0 -metadata:s:a:0 "language=$default" \
 -map "1:a:0" -metadata:s:a:1 "language=$lang" \
 -c:v libx264 -c:a aac -b:v 5000k -b:a 192k -vf "scale=1920:trunc(ow/a/2)*2" -tune zerolatency -preset veryfast -crf 23 -g 48 \
 -f hls -hls_time 4 -hls_playlist_type event -hls_segment_filename "${dir}/${name}/1080p_%03d.ts" "${dir}/${name}/1080p.m3u8"




FFMPEG Listener


Quite similar to the NGINX version, but without NGINX, going raw on bare ffmpeg server capabilities. Cons : it doesn't work, just throws an I/O Error as soon as the client connects.


ffmpeg -y -hwaccel auto \
 -listen 1 -i "rtmp://0.0.0.0:1935/mainav/$key" \
 -listen 1 -i "rtmp://0.0.0.0:1935/mainav/$name:lang:$lang" \
 -map 0:v:0 -map 0:a:0 -metadata:s:a:0 "language=$default" \
 -map "1:a:0" -metadata:s:a:1 "language=$lang" \
 -c:v libx264 -c:a aac -b:v 5000k -b:a 192k -vf "scale=1920:trunc(ow/a/2)*2" -tune zerolatency -preset veryfast -crf 23 -g 48 \
 -f hls -hls_time 4 -hls_playlist_type event -hls_segment_filename "${dir}/${name}/1080p_%03d.ts" "${dir}/${name}/1080p.m3u8"



Client used for tests


I used an ffmpeg which reads a file from my disk and sends to different RTMP playpaths :


ffmpeg -y -hwaccel auto -re \
 -i /home/me/Videos/xm.mkv \
 -map 0:v:0 \
 -map 0:a:0 \
 -f flv rtmp://localhost:1935/mainav/thebiglive:default:ita \
 -map 0:a:1 \
 -f flv rtmp://localhost:1935/mainav/thebiglive:lang:eng



I feel a bit clueless now. The only working solution is not a standard one taken into account the common live encoders found in the market. Anyone has a pointer for which direction I can take ?


Thanks


-
FFPMEG : stream local video to UDP address, make client aware about video length and current frame time offset (make stream seekable ?)
17 décembre 2014, par klimJust started to use FFMPEG. This is a really great library which is capable of video life transcoding and streaming.
I use following commands to transcode and stream local video file to UDP address :
ffmpeg -y -re -i inputvideo.mpeg2 -vsync 1 -vcodec mpeg4 -b 1600k -r 15 -crf 20 -acodec aac -ar 44100 -strict -2 -f mpegts udp ://192.168.1.30:1234It works smooth. I can open this udp address in VLC player and play life stream.
Does anybody know how to make client aware about video duration and current time stamp ?
Ideally would be nice to make stream seekable, as far as I understand it is not possible, but at least I would like to tell VLC client the total duration of the video and current frame time stamp, so it could show the progress.
Thanks.