
Recherche avancée
Médias (1)
-
The Great Big Beautiful Tomorrow
28 octobre 2011, par
Mis à jour : Octobre 2011
Langue : English
Type : Texte
Autres articles (56)
-
Multilang : améliorer l’interface pour les blocs multilingues
18 février 2011, parMultilang est un plugin supplémentaire qui n’est pas activé par défaut lors de l’initialisation de MediaSPIP.
Après son activation, une préconfiguration est mise en place automatiquement par MediaSPIP init permettant à la nouvelle fonctionnalité d’être automatiquement opérationnelle. Il n’est donc pas obligatoire de passer par une étape de configuration pour cela. -
Ajouter des informations spécifiques aux utilisateurs et autres modifications de comportement liées aux auteurs
12 avril 2011, parLa manière la plus simple d’ajouter des informations aux auteurs est d’installer le plugin Inscription3. Il permet également de modifier certains comportements liés aux utilisateurs (référez-vous à sa documentation pour plus d’informations).
Il est également possible d’ajouter des champs aux auteurs en installant les plugins champs extras 2 et Interface pour champs extras. -
Support audio et vidéo HTML5
10 avril 2011MediaSPIP utilise les balises HTML5 video et audio pour la lecture de documents multimedia en profitant des dernières innovations du W3C supportées par les navigateurs modernes.
Pour les navigateurs plus anciens, le lecteur flash Flowplayer est utilisé.
Le lecteur HTML5 utilisé a été spécifiquement créé pour MediaSPIP : il est complètement modifiable graphiquement pour correspondre à un thème choisi.
Ces technologies permettent de distribuer vidéo et son à la fois sur des ordinateurs conventionnels (...)
Sur d’autres sites (10670)
-
Playback FFmpeg stream through UDP
11 juillet 2020, par Andrew RaleighI'm using the following command to send ffmpeg data :


./ffmpeg -i "" -pix_fmt yuv420p -tune zerolatency -preset ultrafast -f mpegts udp://127.0.0.1:23000


I then transmit and receive it to another computer through the srt protocol, and read it back on the end-point.


I play back with
.\ffplay.exe -i udp://127.0.0.1:23000 -loglevel 40
and don't see a video. I can see data coming in from WireShark though. This is the log output :

ffplay version N-98438-gc6cdfdf9c3 Copyright (c) 2003-2020 the FFmpeg developers
 built with gcc 10.1.0 (Rev3, Built by MSYS2 project)
 configuration: --cc='ccache gcc' --cxx='ccache g++' --disable-autodetect --enable-amf --enable-bzlib --enable-cuda --enable-cuvid --enable-d3d11va --enable-dxva2 --enable-iconv --enable-lzma --enable-nvenc --enable-schannel --enable-zlib --enable-sdl2 --enable-ffnvcodec --enable-nvdec --enable-gmp --enable-libmp3lame --enable-libopus --enable-libvorbis --enable-libaom --disable-debug --enable-libsrt --extra-libs=-liconv --enable-version3
 libavutil 56. 55.100 / 56. 55.100
 libavcodec 58. 94.100 / 58. 94.100
 libavformat 58. 48.100 / 58. 48.100
 libavdevice 58. 11.101 / 58. 11.101
 libavfilter 7. 87.100 / 7. 87.100
 libswscale 5. 8.100 / 5. 8.100
 libswresample 3. 8.100 / 3. 8.100
Initialized direct3d renderer.
[mpegts @ 000002130b5eae00] Unable to seek back to the startf=0/0

....

[mpeg2video @ 000002130b612300] Invalid frame dimensions 0x0.
 Last message repeated 1 times
[mpegts @ 000002130b5eae00] Packet corrupt (stream = 0, dts = 20791500).
[mpeg2video @ 000002130b612300] Invalid frame dimensions 0x0.
[mpegts @ 000002130b5eae00] Packet corrupt (stream = 0, dts = 20794500).
[mpeg2video @ 000002130b612300] Invalid frame dimensions 0x0.
 Last message repeated 1 times
[mpegts @ 000002130b5eae00] Packet corrupt (stream = 0, dts = 20800500).
[mpeg2video @ 000002130b612300] Invalid frame dimensions 0x0.
[mpeg2video @ 000002130b612300] Invalid frame dimensions 0x0.=0/0
[mpegts @ 000002130b5eae00] Packet corrupt (stream = 0, dts = 20805000).
[mpeg2video @ 000002130b612300] Invalid frame dimensions 0x0.
 Last message repeated 1 times
[mpegts @ 000002130b5eae00] Packet corrupt (stream = 0, dts = 20809500).
[mpeg2video @ 000002130b612300] Invalid frame dimensions 0x0.
[mpegts @ 000002130b5eae00] Packet corrupt (stream = 0, dts = 20812500).
[mpeg2video @ 000002130b612300] Invalid frame dimensions 0x0.
 Last message repeated 2 times
[mpegts @ 000002130b5eae00] Packet corrupt (stream = 0, dts = 20820000).
[mpeg2video @ 000002130b612300] Invalid frame dimensions 0x0.
 Last message repeated 1 times
[mpegts @ 000002130b5eae00] Packet corrupt (stream = 0, dts = 20824500).
[mpeg2video @ 000002130b612300] Invalid frame dimensions 0x0.=0/0
 Last message repeated 1 times
[mpegts @ 000002130b5eae00] Packet corrupt (stream = 0, dts = 20829000).
[mpeg2video @ 000002130b612300] Invalid frame dimensions 0x0.
 Last message repeated 1 times
[mpegts @ 000002130b5eae00] Packet corrupt (stream = 0, dts = 20838000).
[mpeg2video @ 000002130b612300] Invalid frame dimensions 0x0.
 Last message repeated 1 times
[mpegts @ 000002130b5eae00] Packet corrupt (stream = 0, dts = 20842500).
[mpeg2video @ 000002130b612300] Invalid frame dimensions 0x0.
 Last message repeated 1 times
[mpegts @ 000002130b5eae00] Packet corrupt (stream = 0, dts = 20847000).
[mpeg2video @ 000002130b612300] Invalid frame dimensions 0x0.
[mpegts @ 000002130b5eae00] Packet corrupt (stream = 0, dts = 20853000).
[mpeg2video @ 000002130b612300] Invalid frame dimensions 0x0.
 Last message repeated 1 times
[mpegts @ 000002130b5eae00] Packet corrupt (stream = 0, dts = 20857500).
[mpeg2video @ 000002130b612300] Invalid frame dimensions 0x0.
[mpeg2video @ 000002130b612300] Invalid frame dimensions 0x0.=0/0
[mpegts @ 000002130b5eae00] Packet corrupt (stream = 0, dts = 20862000).
[mpeg2video @ 000002130b612300] Invalid frame dimensions 0x0.
 Last message repeated 1 times
[mpegts @ 000002130b5eae00] Packet corrupt (stream = 0, dts = 20866500).
[mpeg2video @ 000002130b612300] Invalid frame dimensions 0x0.
[mpegts @ 000002130b5eae00] Packet corrupt (stream = 0, dts = 20871000).
[mpeg2video @ 000002130b612300] Invalid frame dimensions 0x0.
 Last message repeated 1 times
[mpegts @ 000002130b5eae00] Packet corrupt (stream = 0, dts = 20875500).
[mpeg2video @ 000002130b612300] Invalid frame dimensions 0x0.
 Last message repeated 1 times
[mpegts @ 000002130b5eae00] Packet corrupt (stream = 0, dts = 20880000).
[mpeg2video @ 000002130b612300] Invalid frame dimensions 0x0.
 Last message repeated 1 times
[mpegts @ 000002130b5eae00] Packet corrupt (stream = 0, dts = 20884500).
[mpeg2video @ 000002130b612300] Invalid frame dimensions 0x0.
 Last message repeated 1 times
[mpegts @ 000002130b5eae00] changing packet size to 204 0B f=0/0
[mpegts @ 000002130b5eae00] changing packet size to 188
[mpegts @ 000002130b5eae00] changing packet size to 204 0B f=0/0
[mpegts @ 000002130b5eae00] changing packet size to 188 0B f=0/0
[mpegts @ 000002130b5eae00] changing packet size to 204 0B f=0/0
[mpegts @ 000002130b5eae00] changing packet size to 188 0B f=0/0



FFPlay and FFProbe both output the above. Usually FFPlay would show the video playing back, but in this case I get nothing. Any thoughts as to why ?


-
Anomalie #4522 : erreur en php 8 dans mysql.log
14 juillet 2020Ok, là on a un petit souci semble t’il (probablement pas du à PHP8 non plus, mais à la version de Mysql ou de sa remontée d’erreur)
Dans ces pipelines, on récupère
$mydate = $flux['args']['date'];
, et on lui applique, sur les requêtessql_quote($mydate)
.
Sauf que $mydate vaut la chaine'2020-07-13 15:38:14'
, guillemets compris.
Du coup, ça crée quelque chose de faux ensuite dans les requêtes (guillemet + guillement échappé).
Je suppose que c’était vu comme une date invalide avant ? ou mysql s’en accomodait très bien ?
(parce que je crois pas qu’on ait eu de retours comme quoi ces pipelines "optimiser_base_disparus" ne fonctionnent pas comme prévus)Cette date est calculée là https://git.spip.net/spip/spip/src/branch/master/ecrire/genie/optimiser.php#L157 est a déjà sql_quote d’appliqué, depuis 9 ans, par https://github.com/spip/SPIP/commit/472dc705e72557172ee3e53bd3a06465a9968ab9
Mais par exemple dans les plugins, un commit ultérieur (il y a 6 ans) a rajouté les sql_quote doublons sur les dates…
- https://github.com/spipremix/breves/commit/4f82b6481
- https://github.com/spipremix/sites/commit/1dae8e8fe73340
- https://github.com/spipremix/petitions/commit/21c15b08edc7
- ...Je pense que ces sql_quote($mydate) ajoutés dans les pipelines sont erronés du coup, mais il y a peut être quelque chose qui m’échappe.
(désolé, j’utilise Github pour remonter l’historique via blame + les boutons voir le fichier avant cette révision, tellement pratique... et Gitea n’a pas ça)
-
How to use ffmpeg to change the h264 properties, yuv, fps, tbr, tbn, and tbc of an mp4 file ?
23 août 2020, par bguizUsing ffmpeg, I would like to convert a video file such that its video stream changes like so :


- 

- Current video stream :
Stream #0:0(und): Video: h264 (High) (avc1 / 0x31637661), yuv420p, 2560x1080 [SAR 4:3 DAR 256:81], 60 kb/s, 15 fps, 15 tbr, 15360 tbn, 30 tbc (default)
- Target video stream :
Stream #0:0(und): Video: h264 (High 4:4:4 Predictive) (avc1 / 0x31637661), yuv444p, 2560x1080, 272 kb/s, 20 fps, 20 tbr, 10240 tbn, 40 tbc (default)






(values that differ : h264 properties, yuv, fps, tbr, tbn, and tbc)


... and its audio stream changes like so :


- 

- Current audio stream :
Stream #0:1(eng): Audio: aac (LC) (mp4a / 0x6134706D), 48000 Hz, stereo, fltp, 191 kb/s (default)
- Target audio stream :
Stream #0:1(und): Audio: aac (mp4a / 0x6134706D), 48000 Hz, mono, fltp, 69 kb/s (default)






(values that differ : aac properties)


How can I do this ?



Detailed version


I would like to be able to concatenate, without re-encoding,
main.mp4
, followed byoutro.mp4
, using the following commands :

echo "file 'main.mp4'" > concat.txt
echo "file 'outro.mp4'" >> concat.txt
ffmpeg \
 -f concat \
 -safe 0 \
 -i concat.txt \
 -c copy \
 concat.mp4



What results is a file which plays till the end of
main.mp4
, and then the video freezes, and I hear the audio ofoutro.mp4
. The same video frame then stays on, with no sound, for an extra 30 minutes (end time shown in VLC).

My assumption is that these files are incompatible with each other in some way that prevents them from being concatenated using
-codec copy
(without re-encoding).

Here is the
ffprobe
output formain.mp4
:

Input #0, mov,mp4,m4a,3gp,3g2,mj2, from 'main.mp4':
 Metadata:
 major_brand : isom
 minor_version : 512
 compatible_brands: isomiso2avc1mp41
 encoder : Lavf58.45.100
 Duration: 01:13:00.65, start: 0.000000, bitrate: 348 kb/s
 Stream #0:0(und): Video: h264 (High 4:4:4 Predictive) (avc1 / 0x31637661), yuv444p, 2560x1080, 272 kb/s, 20 fps, 20 tbr, 10240 tbn, 40 tbc (default)
 Metadata:
 handler_name : VideoHandler
 Stream #0:1(und): Audio: aac (mp4a / 0x6134706D), 48000 Hz, mono, fltp, 69 kb/s (default)
 Metadata:
 handler_name : SoundHandler



Here is the
ffprobe
output foroutro.mp4
:

Input #0, mov,mp4,m4a,3gp,3g2,mj2, from 'outro.mp4':
 Metadata:
 major_brand : isom
 minor_version : 512
 compatible_brands: isomiso2avc1mp41
 encoder : Lavf58.45.100
 Duration: 00:00:04.12, start: 0.000000, bitrate: 254 kb/s
 Stream #0:0(und): Video: h264 (High) (avc1 / 0x31637661), yuv420p, 2560x1080 [SAR 4:3 DAR 256:81], 60 kb/s, 15 fps, 15 tbr, 15360 tbn, 30 tbc (default)
 Metadata:
 handler_name : VideoHandler
 Stream #0:1(eng): Audio: aac (LC) (mp4a / 0x6134706D), 48000 Hz, stereo, fltp, 191 kb/s (default)
 Metadata:
 handler_name : Stereo



How can I convert
outro.mp4
, such that I may concatenate the files without re-encoding ?

Note that I am OK with re-encoding the
outro.mp4
on its own,
I simply want to avoid re-encoding during the concatenation step,
and avoid re-encodingmain.mp4
.


ffmpeg build


$ ffmpeg -version
ffmpeg version 4.3-2~18.04.york0 Copyright (c) 2000-2020 the FFmpeg developers
built with gcc 7 (Ubuntu 7.5.0-3ubuntu1~18.04)
configuration: --prefix=/usr --extra-version='2~18.04.york0' --toolchain=hardened --libdir=/usr/lib/x86_64-linux-gnu --incdir=/usr/include/x86_64-linux-gnu --arch=amd64 --enable-gpl --disable-stripping --enable-avresample --disable-filter=resample --enable-gnutls --enable-ladspa --enable-libaom --enable-libass --enable-libbluray --enable-libbs2b --enable-libcaca --enable-libcdio --enable-libcodec2 --enable-libflite --enable-libfontconfig --enable-libfreetype --enable-libfribidi --enable-libgme --enable-libgsm --enable-libjack --enable-libmp3lame --enable-libmysofa --enable-libopenjpeg --enable-libopenmpt --enable-libopus --enable-libpulse --enable-librabbitmq --enable-librsvg --enable-librubberband --enable-libshine --enable-libsnappy --enable-libsoxr --enable-libspeex --enable-libsrt --enable-libssh --enable-libtheora --enable-libtwolame --enable-libvidstab --enable-libvorbis --enable-libvpx --enable-libwavpack --enable-libwebp --enable-libx265 --enable-libxml2 --enable-libxvid --enable-libzmq --enable-libzvbi --enable-lv2 --enable-omx --enable-openal --enable-opencl --enable-opengl --enable-sdl2 --enable-pocketsphinx --enable-libdc1394 --enable-libdrm --enable-libiec61883 --enable-chromaprint --enable-frei0r --enable-libx264 --enable-shared
libavutil 56. 51.100 / 56. 51.100
libavcodec 58. 91.100 / 58. 91.100
libavformat 58. 45.100 / 58. 45.100
libavdevice 58. 10.100 / 58. 10.100
libavfilter 7. 85.100 / 7. 85.100
libavresample 4. 0. 0 / 4. 0. 0
libswscale 5. 7.100 / 5. 7.100
libswresample 3. 7.100 / 3. 7.100
libpostproc 55. 7.100 / 55. 7.100



- Current video stream :