
Recherche avancée
Médias (1)
-
Video d’abeille en portrait
14 mai 2011, par
Mis à jour : Février 2012
Langue : français
Type : Video
Autres articles (70)
-
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" ; -
Gestion de la ferme
2 mars 2010, parLa ferme est gérée dans son ensemble par des "super admins".
Certains réglages peuvent être fais afin de réguler les besoins des différents canaux.
Dans un premier temps il utilise le plugin "Gestion de mutualisation"
Sur d’autres sites (8595)
-
FFmpeg wrong duration(double) when convert mp4
13 novembre 2017, par crazymxmThe output file has the double duration :
Source video duration :00:01:58.88
output video duration :00:03:57.76
(video’s duration is double ,audio’s duration is correct. So, the video looks like played twice, with no sound in the second half )
here is the log:
./ffmpeg -i /Volumes/LANKEXIN/1383.mp4 out.mp4
ffmpeg version N-82977-g8fd3e02-tessus Copyright (c) 2000-2016 the FFmpeg developers
built with Apple LLVM version 8.0.0 (clang-800.0.42.1)
configuration : —cc=/usr/bin/clang —prefix=/opt/ffmpeg —extra-version=tessus —enable-avisynth —enable-fontconfig —enable-gpl —enable-libass —enable-libbluray —enable-libfreetype —enable-libgsm —enable-libmodplug —enable-libmp3lame —enable-libopencore-amrnb —enable-libopencore-amrwb —enable-libopus —enable-libschroedinger —enable-libsnappy —enable-libsoxr —enable-libspeex —enable-libtheora —enable-libvidstab —enable-libvo-amrwbenc —enable-libvorbis —enable-libvpx —enable-libwavpack —enable-libx264 —enable-libx265 —enable-libxavs —enable-libxvid —enable-libzmq —enable-version3 —disable-ffplay —disable-indev=qtkit —disable-indev=x11grab_xcblibavutil 55. 43.100 / 55. 43.100
libavcodec 57. 70.100 / 57. 70.100
libavformat 57. 61.100 / 57. 61.100
libavdevice 57. 2.100 / 57. 2.100
libavfilter 6. 68.100 / 6. 68.100
libswscale 4. 3.101 / 4. 3.101
libswresample 2. 4.100 / 2. 4.100
libpostproc 54. 2.100 / 54. 2.100
Input #0, mov,mp4,m4a,3gp,3g2,mj2, from '/Volumes/LANKEXIN/1383.mp4':
Metadata:
major_brand : mp42
minor_version : 0
compatible_brands: mp42isom
creation_time : 2017-10-30T14:58:05.000000Z
encoder : mp4creator 1.6.1d
Duration: 00:01:58.88, start: 0.000000, bitrate: 1918 kb/s
Stream #0:0(eng): Video: h264 (High) (avc1 / 0x31637661), yuv420p, 1280x720 [SAR 1:1 DAR 16:9], 1729 kb/s, 25 fps, 25 tbr, 90k tbn, 50 tbc (default)
Metadata:
creation_time : 2017-10-30T14:58:05.000000Z
encoder : VC Coding
Stream #0:1(eng): Audio: aac (LC) (mp4a / 0x6134706D), 48000 Hz, stereo, fltp, 189 kb/s (default)
Metadata:
creation_time : 2017-10-30T14:58:05.000000Z
File 'out.mp4' already exists. Overwrite ? [y/N] y
[libx264 @ 0x7fbaca003c00] using SAR=1/1
[libx264 @ 0x7fbaca003c00] using cpu capabilities: MMX2 SSE2Fast SSSE3 SSE4.2 AVX FMA3 AVX2 LZCNT BMI2
[libx264 @ 0x7fbaca003c00] profile High, level 3.1
[libx264 @ 0x7fbaca003c00] 264 - core 148 - H.264/MPEG-4 AVC codec - Copyleft 2003-2016 - 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=6 lookahead_threads=1 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 'out.mp4':
Metadata:
major_brand : mp42
minor_version : 0
compatible_brands: mp42isom
encoder : Lavf57.61.100
Stream #0:0(eng): Video: h264 (libx264) ([33][0][0][0] / 0x0021), yuv420p, 1280x720 [SAR 1:1 DAR 16:9], q=-1--1, 25 fps, 12800 tbn, 25 tbc (default)
Metadata:
creation_time : 2017-10-30T14:58:05.000000Z
encoder : Lavc57.70.100 libx264
Side data:
cpb: bitrate max/min/avg: 0/0/0 buffer size: 0 vbv_delay: -1
Stream #0:1(eng): Audio: aac (LC) ([64][0][0][0] / 0x0040), 48000 Hz, stereo, fltp, 128 kb/s (default)
Metadata:
creation_time : 2017-10-30T14:58:05.000000Z
encoder : Lavc57.70.100 aac
Stream mapping:
Stream #0:0 -> #0:0 (h264 (native) -> h264 (libx264))
Stream #0:1 -> #0:1 (aac (native) -> aac (native))
Press [q] to stop, [?] for help
frame= 46 fps=0.0 q=0.0 size= 0kB time=00:00:00.93 bitrate= 0.0kbits/sframe= 64 fps= 45 q=28.0 size= 137kB time=00:00:01.66 bitrate= 672.2kbits/frame= 85 fps= 44 qframe= 5944 fps= 33 q=-1.0 Lsize= 38746kB time=00:03:57.64 bitrate=1335.7kbits/s speed=1.33x 4kB time=00:00:02.94 bitrate= 818.0kbits/s speed= 1.2x
video:36779kB audio:1846kB subtitle:0kB other streams:0kB global headers:0kB muxing overhead: 0.311413%
[libx264 @ 0x7fbaca003c00] frame I:24 Avg QP:19.49 size: 67090
[libx264 @ 0x7fbaca003c00] frame P:1806 Avg QP:21.65 size: 14304
[libx264 @ 0x7fbaca003c00] frame B:4114 Avg QP:25.42 size: 2484
[libx264 @ 0x7fbaca003c00] consecutive B-frames: 2.2% 8.1% 25.5% 64.2%
[libx264 @ 0x7fbaca003c00] mb I I16..4: 20.6% 55.8% 23.6%
[libx264 @ 0x7fbaca003c00] mb P I16..4: 5.2% 9.3% 0.8% P16..4: 36.0% 9.9% 4.2% 0.0% 0.0% skip:34.5%
[libx264 @ 0x7fbaca003c00] mb B I16..4: 0.5% 1.0% 0.0% B16..8: 27.2% 1.8% 0.2% direct: 0.9% skip:68.5% L0:48.6% L1:47.6% BI: 3.8%
[libx264 @ 0x7fbaca003c00] 8x8 transform intra:60.9% inter:78.2%
[libx264 @ 0x7fbaca003c00] coded y,uvDC,uvAC intra: 38.3% 61.5% 12.3% inter: 6.6% 11.3% 0.6%
[libx264 @ 0x7fbaca003c00] i16 v,h,dc,p: 22% 35% 10% 33%
[libx264 @ 0x7fbaca003c00] i8 v,h,dc,ddl,ddr,vr,hd,vl,hu: 21% 24% 21% 5% 6% 6% 6% 5% 6%
[libx264 @ 0x7fbaca003c00] i4 v,h,dc,ddl,ddr,vr,hd,vl,hu: 24% 33% 11% 4% 7% 6% 6% 4% 4%
[libx264 @ 0x7fbaca003c00] i8c dc,h,v,p: 43% 30% 20% 7%
[libx264 @ 0x7fbaca003c00] Weighted P-Frames: Y:0.3% UV:0.2%
[libx264 @ 0x7fbaca003c00] ref P L0: 73.5% 9.0% 13.8% 3.7% 0.0%
[libx264 @ 0x7fbaca003c00] ref B L0: 92.4% 6.6% 1.1%
[libx264 @ 0x7fbaca003c00] ref B L1: 97.7% 2.3%
[libx264 @ 0x7fbaca003c00] kb/s:1267.21
[aac @ 0x7fbaca021800] Qavg: 897.576 -
Wrong subtitle packet data from av_read_frame() for FFmpeg 4.4 and higher ?
12 avril 2023, par ElijaI have a video file in MOV format. This file contains EIA608 subtitles. I use ffprobe to see the contents of all packets. For FFmpeg 4.3.1, I get the data of the first subtitle packet according to the file content at the offset specified for this packet, but for FFmpeg 4.4 and higher, I get "corrupted" data from the same packet. The beginning is cut off, the characters "0xfc" are added and the packet size is different. For packets of other types (video, audio, data), the result is the same for all versions of FFmpeg and exactly matches the contents of the file.
I get the same result when using the av_read_frame() function call in my code with different versions of FFmpeg.
Why does this happen with subtitle packets ? What has changed in FFmpeg with the transition to version 4.4 and higher ? What do I not know or do not understand ?


The file content at packet position (position = 9723 = 0x25fb) :



FFmpeg 4.3.1 ffprobe result for the first subtitle packet :



FFmpeg 4.4 and higher ffprobe result for the first subtitle packet :



UPDATE :
I found that since version 4.4. when reading a EIA608 subtitle packet for the MOV format, the get_eia608_packet() function has been added (mov_read_packet() used inside of av_read_frame(), get_eia608_packet() used inside of mov_read_packet()). But I don't understand for what purpose it was done. Can someone explain to me ?
As FFmpeg says about av_read_frame() : "This function returns what is stored in the file, and does not validate that what is there are valid frames for the decoder. It will split what is stored in the file into frames and return one for each call. It will not omit invalid data between valid frames so as to give the decoder the maximum information possible for decoding."
av_read_frame() description


libavformat/mov.c :


static int get_eia608_packet(AVIOContext *pb, AVPacket *pkt, int size)
{
 int new_size, ret;

 if (size <= 8)
 return AVERROR_INVALIDDATA;
 new_size = ((size - 8) / 2) * 3;
 ret = av_new_packet(pkt, new_size);
 if (ret < 0)
 return ret;

 avio_skip(pb, 8);
 for (int j = 0; j < new_size; j += 3) {
 pkt->data[j] = 0xFC;
 pkt->data[j+1] = avio_r8(pb);
 pkt->data[j+2] = avio_r8(pb);
 }

 return 0;
}

static int mov_read_packet(AVFormatContext *s, AVPacket *pkt)
{
...
if (st->codecpar->codec_id == AV_CODEC_ID_EIA_608 && sample->size > 8)
 ret = get_eia608_packet(sc->pb, pkt, sample->size);
 else
 ret = av_get_packet(sc->pb, pkt, sample->size);
...
}



-
Three.js video texture displays green on Chrome mobile, wrong encoding ?
19 mai 2015, par beebI am trying to make a video texture "skybox" that works on mobile browsers with Three.js. So far, I’ve been able to implement this and it works great on desktop browsers. The problem is, when viewing the animation in Chrome mobile (42.0.2311.111 on Android 5.0.2), the video appears all green with a few artifacts. I tried with mp4 (encoded with ffmpeg libx264) and ogv (ffmpeg libtheora) videos and they both fail to work (mp4 is green as stated, and ogv doesn’t display at all - black). Is the encoding the problem or webgl ? The strange thing is that my method is the same as this method : http://jeromeetienne.github.io/threex.videotexture/examples/videotexture.html
But my Chrome mobile browser can play this example fine, so I’m guessing the encoding must be the problem ?Here are the command lines I used to generate the videos :
ffmpeg -framerate 30 -i %05d.png -c:v libtheora -qscale:v 8 -r 30 outputfile.ogv
ffmpeg -framerate 30 -i %05d.png -c:v libx264 -qscale:v 8 -r 30 outputfile.mp4Here’s the full code, even though I don’t think the problem originates from this : https://jsfiddle.net/rufn75ef/ (you have to hit the play button, autoplay doesn’t work on mobile so I disabled it for this example)
video = document.createElement('video');
video.crossOrigin = "Anonymous";
var canPlayMp4 = document.createElement('video').canPlayType('video/mp4') !== '' ? true : false;
var canPlayOgg = document.createElement('video').canPlayType('video/ogg') !== '' ? true : false;
if (canPlayMp4) {
video.src = 'vid.mp4';
} else if (canPlayOgg) {
video.src = 'vid.ogv';
} else {
alert('Your browser can\'t play video, please view this site in a modern desktop browser.');
}
video.muted = true;
video.loop = true;
video.width = 358;
video.height = 264;
video.load(); //do after source change
videoTexture = new THREE.Texture(video);
videoTexture.minFilter = THREE.NearestFilter;
videoTexture.magFilter = THREE.NearestFilter;If you are able to test, do you experience the same problem ? How should I encode my videos using ffmpeg to maximize mobile compatibility ?
Thanks in advance