
Recherche avancée
Autres articles (22)
-
Supporting all media types
13 avril 2011, parUnlike most software and media-sharing platforms, MediaSPIP aims to manage as many different media types as possible. The following are just a few examples from an ever-expanding list of supported formats : images : png, gif, jpg, bmp and more audio : MP3, Ogg, Wav and more video : AVI, MP4, OGV, mpg, mov, wmv and more text, code and other data : OpenOffice, Microsoft Office (Word, PowerPoint, Excel), web (html, CSS), LaTeX, Google Earth and (...)
-
Les formats acceptés
28 janvier 2010, parLes commandes suivantes permettent d’avoir des informations sur les formats et codecs gérés par l’installation local de ffmpeg :
ffmpeg -codecs ffmpeg -formats
Les format videos acceptés en entrée
Cette liste est non exhaustive, elle met en exergue les principaux formats utilisés : h264 : H.264 / AVC / MPEG-4 AVC / MPEG-4 part 10 m4v : raw MPEG-4 video format flv : Flash Video (FLV) / Sorenson Spark / Sorenson H.263 Theora wmv :
Les formats vidéos de sortie possibles
Dans un premier temps on (...) -
Les vidéos
21 avril 2011, parComme les documents de type "audio", Mediaspip affiche dans la mesure du possible les vidéos grâce à la balise html5 .
Un des inconvénients de cette balise est qu’elle n’est pas reconnue correctement par certains navigateurs (Internet Explorer pour ne pas le nommer) et que chaque navigateur ne gère en natif que certains formats de vidéos.
Son avantage principal quant à lui est de bénéficier de la prise en charge native de vidéos dans les navigateur et donc de se passer de l’utilisation de Flash et (...)
Sur d’autres sites (3141)
-
Reduce HLS latency from +30 seconds
4 juin 2014, par RickUbuntu 12.04
nginx 1.2.4
avconv -version
avconv version 0.8.10-4:0.8.10-0ubuntu0.12.04.1, Copyright (c) 2000-2013 the Libav developers
built on Feb 6 2014 20:56:59 with gcc 4.6.3
avconv 0.8.10-4:0.8.10-0ubuntu0.12.04.1
libavutil 51. 22. 2 / 51. 22. 2
libavcodec 53. 35. 0 / 53. 35. 0
libavformat 53. 21. 1 / 53. 21. 1
libavdevice 53. 2. 0 / 53. 2. 0
libavfilter 2. 15. 0 / 2. 15. 0
libswscale 2. 1. 0 / 2. 1. 0
libpostproc 52. 0. 0 / 52. 0. 0I’m using avconv and nginx to create an HLS stream but right now my latency is regularly well over 30 seconds. After much reading I am aware that HLS has built in latency and that 10s is expected and even preferred but 30s seems quite extreme.
I’ve seen a lot of discussion on the nginx-rtmp google group, this thread in particular had a lot of suggestions. I have attempted to reduce solve my issue by reducing the
hls_fragment
and thehls_playlist_length
but they haven’t had a significant effect.nginx.conf :
#user nobody;
worker_processes 1;
error_log logs/error.log debug;
events {
worker_connections 1024;
}
http {
include mime.types;
default_type application/octet-stream;
sendfile on;
keepalive_timeout 65;
server {
listen 8888;
server_name localhost;
add_header 'Access-Control-Allow-Origin' "*";
location /hls {
types {
application/vnd.apple.mpegurl m3u8;
video/mp2t ts;
}
root /tmp;
}
# rtmp stat
location /stat {
rtmp_stat all;
rtmp_stat_stylesheet stat.xsl;
}
location /stat.xsl {
# you can move stat.xsl to a different location
root /usr/build/nginx-rtmp-module;
}
# rtmp control
location /control {
rtmp_control all;
}
error_page 500 502 503 504 /50x.html;
location = /50x.html {
root html;
}
}
}
rtmp {
server {
listen 1935;
ping 30s;
notify_method get;
application myapp {
live on;
hls on;
hls_path /tmp/hls;
hls_base_url http://x.x.x.x:8888/hls/;
hls_sync 2ms;
hls_fragment 2s;
#hls_variant _low BANDWIDTH=160000;
#hls_variant _mid BANDWIDTH=320000;
#hls_variant _hi BANDWIDTH=640000;
}
}
}avconv command :
avconv -r 30 -y -f image2pipe -codec:v mjpeg -i - -f flv -codec:v libx264 -profile:v baseline -preset ultrafast -tune zerolatency -an -f flv rtmp://127.0.0.1:1935/myapp/mystream
-
avconv stops streaming after some time
4 juin 2014, par Dhrumil DoshiI am using raspberry-pi board and a usb camera attached with it. i use avconv tool to capture live video from camera and streaming it on network using rtp protocol.
My command on server(raspberry-pi board) is as below :
avconv -f video4linux2 -s 160x120 -i /dev/video0 -vcodec mpeg2video -r 25 -pix_fmt yuv420p -me_method epzs -b 2600k -bt 256k -f rtp rtp ://192.168.1.141:8554
streaming works successfully using this command. Here IP address 192.168.1.141 is the ip address of my client pc. i can play live streaming on client side using vlc successfully.
But Issue is after some time encoding and streaming on server stop automatically. And command hangs there.
Output on server is as below :
$ avconv -f video4linux2 -s 160x120 -v debug -i /dev/video0 -vcodec mpeg2video -r 25 -pix_fmt yuv420p -me_method epzs -b 2600k -bt 256k -f rtp rtp://192.168.1.141:8554
avconv version 0.8.10-6:0.8.10-1+rpi1, Copyright (c) 2000-2013 the Libav developers
built on Mar 22 2014 02:13:15 with gcc 4.6.3
configuration: --arch=arm --enable-pthreads --enable-runtime-cpudetect --extra-version='6:0.8.10-1+rpi1' --libdir=/usr/lib/arm-linux-gnueabihf --prefix=/usr --disable-yasm --enable-bzlib --enable-libdc1394 --enable-libdirac --enable-libfreetype --enable-frei0r --enable-gnutls --enable-libgsm --enable-libmp3lame --enable-librtmp --enable-libopencv --enable-libopenjpeg --enable-libpulse --enable-libschroedinger --enable-libspeex --enable-libtheora --enable-vaapi --enable-vdpau --enable-libvorbis --enable-libvpx --enable-zlib --enable-gpl --enable-postproc --enable-swscale --enable-libcdio --enable-x11grab --enable-libx264 --enable-libxvid --shlibdir=/usr/lib/arm-linux-gnueabihf --enable-shared --disable-static
libavutil 51. 22. 2 / 51. 22. 2
libavcodec 53. 35. 0 / 53. 35. 0
libavformat 53. 21. 1 / 53. 21. 1
libavdevice 53. 2. 0 / 53. 2. 0
libavfilter 2. 15. 0 / 2. 15. 0
libswscale 2. 1. 0 / 2. 1. 0
libpostproc 52. 0. 0 / 52. 0. 0
[video4linux2 @ 0x54d7a0] [4]Capabilities: 84000001
[video4linux2 @ 0x54d7a0] The V4L2 driver changed the pixel format from 0x32315559 to 0x56595559
Last message repeated 1 times
[video4linux2 @ 0x54d7a0] The V4L2 driver changed the pixel format from 0x50323234 to 0x56595559
[video4linux2 @ 0x54d7a0] The V4L2 driver set input_id: 0, input: Camera 1
[rawvideo @ 0x54f860] err{or,}_recognition separate: 1; 1
[rawvideo @ 0x54f860] err{or,}_recognition combined: 1; 1
[video4linux2 @ 0x54d7a0] All info found
[video4linux2 @ 0x54d7a0] Estimating duration from bitrate, this may be inaccurate
Input #0, video4linux2, from '/dev/video0':
Duration: N/A, start: 21891.364784, bitrate: 9216 kb/s
Stream #0.0, 1, 1/1000000: Video: rawvideo, yuyv422, 160x120, 1/30, 9216 kb/s, 30 tbr, 1000k tbn, 30 tbc
[buffer @ 0x54f220] w:160 h:120 pixfmt:yuyv422
[avsink @ 0x54d740] auto-inserting filter 'auto-inserted scaler 0' between the filter 'src' and the filter 'out'
[scale @ 0x54f7e0] w:160 h:120 fmt:yuyv422 -> w:160 h:120 fmt:yuv420p flags:0x4
[mpeg2video @ 0x54ea60] err{or,}_recognition separate: 1; 1
[mpeg2video @ 0x54ea60] err{or,}_recognition combined: 1; 1
[mpeg2video @ 0x54ea60] detected 1 logical cores
[mpeg2video @ 0x54ea60] Unsupported bit depth: 0
[rawvideo @ 0x54f860] err{or,}_recognition separate: 1; 1
[rawvideo @ 0x54f860] err{or,}_recognition combined: 1; 1
Output #0, rtp, to 'rtp://192.168.1.141:8554':
Metadata:
encoder : Lavf53.21.1
Stream #0.0, 0, 1/90000: Video: mpeg2video, yuv420p, 160x120, 1/25, q=2-31, 2600 kb/s, 90k tbn, 25 tbc
Stream mapping:
Stream #0:0 -> #0:0 (rawvideo -> mpeg2video)
SDP:
v=0
o=- 0 0 IN IP4 127.0.0.1
s=No Name
c=IN IP4 192.168.1.141
t=0 0
a=tool:libavformat 53.21.1
m=video 8554 RTP/AVP 32
b=AS:2600
Press ctrl-c to stop encoding
*** drop!
Last message repeated 1 times
*** 1 dup!
*** 16 dup! fps= 25 q=2.0 size= 1027kB time=5.24 bitrate=1605.2kbits/s dup=1 drop=2
*** drop!
Last message repeated 11 times
*** drop!49 fps= 26 q=2.0 size= 1059kB time=5.92 bitrate=1464.9kbits/s dup=17 drop=14
Last message repeated 2 times
*** drop!76 fps= 25 q=2.0 size= 2022kB time=11.00 bitrate=1505.7kbits/s dup=17 drop=17
*** drop!48 fps= 25 q=2.0 size= 4086kB time=21.88 bitrate=1529.8kbits/s dup=17 drop=18
*** 1 dup!
*** 1 dup!0 fps= 25 q=2.0 size= 4171kB time=22.36 bitrate=1528.2kbits/s dup=18 drop=19
*** 1 dup!1 fps= 25 q=2.0 size= 4859kB time=26.00 bitrate=1530.8kbits/s dup=19 drop=19
*** 1 dup!0 fps= 25 q=2.0 size= 5152kB time=27.56 bitrate=1531.5kbits/s dup=20 drop=19
*** 1 dup!3 fps= 25 q=2.0 size= 5250kB time=28.08 bitrate=1531.7kbits/s dup=21 drop=19
*** drop!64 fps= 25 q=2.0 size= 7215kB time=38.52 bitrate=1534.5kbits/s dup=22 drop=19
*** 1 dup!6 fps= 25 q=2.0 size= 7306kB time=39.00 bitrate=1534.6kbits/s dup=22 drop=20
*** drop!07 fps= 25 q=2.0 size= 8288kB time=44.24 bitrate=1534.7kbits/s dup=23 drop=20
*** 1 dup!0 fps= 25 q=2.0 size= 10054kB time=53.56 bitrate=1537.8kbits/s dup=23 drop=21
*** 1 dup!9 fps= 25 q=2.0 size= 10342kB time=55.12 bitrate=1537.1kbits/s dup=24 drop=21
Last message repeated 1 times
*** drop!93 fps= 25 q=1.6 size= 10445kB time=55.68 bitrate=1536.7kbits/s dup=26 drop=21
*** 1 dup!
*** 7036829 dup! 25 q=2.0 size= 10630kB time=56.68 bitrate=1536.4kbits/s dup=27 drop=22Any ideas ?
Thanks in advance.
-
Encode x264 video with ffmpeg for Android with starting offset
4 août 2013, par scubedI'm trying to convert a video to play on an Android device.
The video is from a big movie. I am chopping it back into pieces
to correspond with the actual segments of the movie using -ss and -t.The input is mp4 with H.264 and AAC.
The output is mkv using H.264 and Vorbis.Specifically, the input is :
Stream #0:0(und): Video: h264 (Main) (avc1 / 0x31637661), yuv420p, 320x240, 2240 kb/s, 29.97 fps, 60 tbr, 90k tbn, 180k tbc
Stream #0:1(und): Audio: aac (mp4a / 0x6134706D), 48000 Hz, stereo, s16, 162 kb/sI'm using : ffmpeg version 1.0.7
The command I'm trying is something like :
ffmpeg -ss 00:03:52.000 -i in.mp4 -t 00:01:00.000 -c:v libx264 -preset medium -crf 20 -maxrate 400k -bufsize 1835k -c:a libvorbis -sn out.mkv
However, while the resulting video works fine on my computer, when I click on
my phone, it says : Can't play video
and checking the Android log, it has :E/SoftAVC (24319): Decoder failed: -2
E/OMXCodec(24319): [OMX.google.h264.decoder] ERROR(0x80001001, -1007)It is still able to make a thumbnail for the movie, but not play it.
Interestingly, some simple variations of that command do work :
Remove -ss to start at the beginning of the video
Use -an to disable audioThese variations still failed :
Copying the original audio with -c:a copy, or other audio codecs like vorbis, mp3
Using mp4 instead of mkv
Using baseline H.264 profile, including restricting level to 1.2.Running through mkvmerge first not only fails, but makes Android not able to even make a thumbnail.
I don't know if it is related, but another small thing I noticed is that for
starting transcoding later in the movie, the audio starts out slightly out-of-sync.
After several seconds, it gets back in sync. The audio is in sync in the original.Robert Rowntree :
-vcodec libx264 -b:v 200k -bt 50k -threads 0 -b_strategy 1 -acodec copy -f mp4 -strict -2
Interesting. Your command almost works. The video actually plays on Android. The one problem is that the audio is out-of-sync and stays out-of-sync throughout the whole clip. But, that's much closer than I've been. I'll search around there and see if I can find the right combination.
I tried combinations of it. It appears that using both mp4 and copying the audio is what allows it to work. Using libvorbis or going to mkv breaks it again. But, I would like to transcode the audio, and I suspect to keep it in sync, I might have to transcode it anyways. Note that even with transcoding, when I play it back on the computer, I still don't have sync between audio and video.
LordNeckbeard :
Here is the complete log.ffmpeg version 1.0.7 Copyright (c) 2000-2013 the FFmpeg developers
built on Jul 27 2013 13:01:19 with gcc 4.4.5 (Gentoo 4.4.5 p1.2, pie-0.4.5)
configuration: --prefix=/usr --libdir=/usr/lib64 --shlibdir=/usr/lib64 --mandir=/usr/share/man --enable-shared --cc=x86_64-pc-linux-gnu-gcc --cxx=x86_64-pc-linux-gnu-g++ --ar=x86_64-pc-linux-gnu-ar --optflags='-mtune=athlon64 -O2 -pipe -fomit-frame-pointer -fstack-protector' --extra-cflags='-mtune=athlon64 -O2 -pipe -fomit-frame-pointer -fstack-protector' --extra-cxxflags='-mtune=athlon64 -O2 -pipe -fomit-frame-pointer -fstack-protector' --disable-static --enable-gpl --enable-version3 --enable-postproc --enable-avfilter --enable-avresample --disable-stripping --disable-debug --disable-doc --disable-vaapi --disable-runtime-cpudetect --enable-libmp3lame --enable-libvo-aacenc --enable-libtheora --enable-libx264 --enable-libxvid --enable-libcaca --enable-openal --disable-indev=v4l2 --disable-indev=oss --disable-indev=jack --enable-x11grab --disable-outdev=oss --enable-libfreetype --enable-pthreads --enable-libspeex --enable-libvorbis --disable-altivec --disable-avx --disable-vis --disable-neon --cpu=athlon64 - libavutil 51. 73.101 / 51. 73.101
libavcodec 54. 59.100 / 54. 59.100
libavformat 54. 29.104 / 54. 29.104
libavdevice 54. 2.101 / 54. 2.101
libavfilter 3. 17.100 / 3. 17.100
libswscale 2. 1.101 / 2. 1.101
libswresample 0. 15.100 / 0. 15.100
libpostproc 52. 0.100 / 52. 0.100
Input #0, mov,mp4,m4a,3gp,3g2,mj2, from 'in.mp4':
Metadata:
major_brand : mp42
minor_version : 0
compatible_brands: mp42isomavc1
creation_time : 2013-07-13 02:23:51
encoder : HandBrake 0.9.6 2012022800
Duration: 03:14:01.41, start: 0.000000, bitrate: 2408 kb/s
Chapter #0.0: start -0.133467, end 648.697411
Metadata:
title : Chapter 1
Chapter #0.1: start 648.697411, end 1297.345411
Metadata:
title : Chapter 2
Chapter #0.2: start 1297.345411, end 1729.777411
Metadata:
title : Chapter 3
Chapter #0.3: start 1729.777411, end 2378.425411
Metadata:
title : Chapter 4
Chapter #0.4: start 2378.425411, end 3027.073411
Metadata:
title : Chapter 5
Chapter #0.5: start 3027.073411, end 3675.721411
Metadata:
title : Chapter 6
Chapter #0.6: start 3675.721411, end 4108.153411
Metadata:
title : Chapter 7
Chapter #0.7: start 4108.153411, end 4756.801411
Metadata:
title : Chapter 8
Chapter #0.8: start 4756.801411, end 5405.449411
Metadata:
title : Chapter 9
Chapter #0.9: start 5405.449411, end 6054.097411
Metadata:
title : Chapter 10
Chapter #0.10: start 6054.097411, end 6702.745411
Metadata:
title : Chapter 11
Chapter #0.11: start 6702.745411, end 7135.177411
Metadata:
title : Chapter 12
Chapter #0.12: start 7135.177411, end 7783.825411
Metadata:
title : Chapter 13
Chapter #0.13: start 7783.825411, end 8432.473411
Metadata:
title : Chapter 14
Chapter #0.14: start 8432.473411, end 9081.121411
Metadata:
title : Chapter 15
Chapter #0.15: start 9081.121411, end 9513.553411
Metadata:
title : Chapter 16
Chapter #0.16: start 9513.553411, end 10162.201411
Metadata:
title : Chapter 17
Chapter #0.17: start 10162.201411, end 10810.849411
Metadata:
title : Chapter 18
Chapter #0.18: start 10810.849411, end 11459.497411
Metadata:
title : Chapter 19
Chapter #0.19: start 11459.497411, end 11641.412478
Metadata:
title : Chapter 20
Stream #0:0(und): Video: h264 (Main) (avc1 / 0x31637661), yuv420p, 320x240, 2240 kb/s, 29.97 fps, 60 tbr, 90k tbn, 180k tbc
Metadata:
creation_time : 2013-07-13 02:23:51
Stream #0:1(und): Audio: aac (mp4a / 0x6134706D), 48000 Hz, stereo, s16, 162 kb/s
Metadata:
creation_time : 2013-07-13 02:23:51
Stream #0:2(und): Subtitle: mov_text (text / 0x74786574)
Metadata:
creation_time : 2013-07-13 02:23:51
[libx264 @ 0x14ea220] using cpu capabilities: MMX2 SSE2Slow SlowCTZ
[libx264 @ 0x14ea220] profile High, level 2.1
[libx264 @ 0x14ea220] 264 - core 120 - H.264/MPEG-4 AVC codec - Copyleft 2003-2011 - 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=3 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=60 keyint_min=6 scenecut=40 intra_refresh=0 rc_lookahead=40 rc=crf mbtree=1 crf=20.0 qcomp=0.60 qpmin=0 qpmax=69 qpstep=4 vbv_maxrate=400 vbv_bufsize=1835 crf_max=0.0 nal_hrd=none ip_ratio=1.40 aq=1:1.00
Output #0, matroska, to 'out.mkv':
Metadata:
major_brand : mp42
minor_version : 0
compatible_brands: mp42isomavc1
encoder : Lavf54.29.104
Chapter #0.0: start 0.000000, end 60.000000
Metadata:
title : Chapter 1
Stream #0:0(und): Video: h264 (H264 / 0x34363248), yuv420p, 320x240, q=-1--1, 1k tbn, 60 tbc
Metadata:
creation_time : 2013-07-13 02:23:51
Stream #0:1(und): Audio: vorbis (oV[0][0] / 0x566F), 48000 Hz, stereo, flt
Metadata:
creation_time : 2013-07-13 02:23:51
Stream mapping:
Stream #0:0 -> #0:0 (h264 -> libx264)
Stream #0:1 -> #0:1 (aac -> libvorbis)
Press [q] to stop, [?] for help
frame= 1799 fps= 92 q=-1.0 Lsize= 3738kB time=00:00:59.98 bitrate= 510.5kbits/s dup=0 drop=51 =51
video:3016kB audio:683kB subtitle:0 global headers:4kB muxing overhead 0.939943%
[libx264 @ 0x14ea220] frame I:31 Avg QP:20.23 size: 14126
[libx264 @ 0x14ea220] frame P:634 Avg QP:23.03 size: 3317
[libx264 @ 0x14ea220] frame B:1134 Avg QP:27.71 size: 482
[libx264 @ 0x14ea220] consecutive B-frames: 2.3% 12.8% 84.7% 0.2%
[libx264 @ 0x14ea220] mb I I16..4: 3.8% 63.8% 32.4%
[libx264 @ 0x14ea220] mb P I16..4: 0.1% 0.3% 0.1% P16..4: 47.4% 30.2% 19.5% 0.0% 0.0% skip: 2.4%
[libx264 @ 0x14ea220] mb B I16..4: 0.0% 0.0% 0.0% B16..8: 35.2% 3.0% 0.6% direct: 8.8% skip:52.3% L0:28.7% L1:63.9% BI: 7.4%
[libx264 @ 0x14ea220] 8x8 transform intra:64.0% inter:59.5%
[libx264 @ 0x14ea220] coded y,uvDC,uvAC intra: 94.2% 99.5% 95.5% inter: 23.3% 55.5% 14.0%
[libx264 @ 0x14ea220] i16 v,h,dc,p: 75% 10% 5% 10%
[libx264 @ 0x14ea220] i8 v,h,dc,ddl,ddr,vr,hd,vl,hu: 19% 16% 12% 8% 7% 8% 8% 11% 11%
[libx264 @ 0x14ea220] i4 v,h,dc,ddl,ddr,vr,hd,vl,hu: 17% 20% 7% 8% 9% 9% 10% 10% 11%
[libx264 @ 0x14ea220] i8c dc,h,v,p: 38% 31% 14% 17%
[libx264 @ 0x14ea220] Weighted P-Frames: Y:7.3% UV:4.4%
[libx264 @ 0x14ea220] ref P L0: 48.8% 14.2% 29.1% 7.5% 0.4%
[libx264 @ 0x14ea220] ref B L0: 65.4% 30.8% 3.7%
[libx264 @ 0x14ea220] ref B L1: 89.0% 11.0%
[libx264 @ 0x14ea220] kb/s:411.70