
Recherche avancée
Médias (1)
-
Richard Stallman et le logiciel libre
19 octobre 2011, par
Mis à jour : Mai 2013
Langue : français
Type : Texte
Autres articles (47)
-
Ecrire une actualité
21 juin 2013, parPrésentez les changements dans votre MédiaSPIP ou les actualités de vos projets sur votre MédiaSPIP grâce à la rubrique actualités.
Dans le thème par défaut spipeo de MédiaSPIP, les actualités sont affichées en bas de la page principale sous les éditoriaux.
Vous pouvez personnaliser le formulaire de création d’une actualité.
Formulaire de création d’une actualité Dans le cas d’un document de type actualité, les champs proposés par défaut sont : Date de publication ( personnaliser la date de publication ) (...) -
Initialisation de MediaSPIP (préconfiguration)
20 février 2010, parLors de l’installation de MediaSPIP, celui-ci est préconfiguré pour les usages les plus fréquents.
Cette préconfiguration est réalisée par un plugin activé par défaut et non désactivable appelé MediaSPIP Init.
Ce plugin sert à préconfigurer de manière correcte chaque instance de MediaSPIP. Il doit donc être placé dans le dossier plugins-dist/ du site ou de la ferme pour être installé par défaut avant de pouvoir utiliser le site.
Dans un premier temps il active ou désactive des options de SPIP qui ne le (...) -
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 (7277)
-
Fragmented MP4 not playing in ffplay/QuickTime/Safari, but in VLC
6 août 2020, par Stack64I encoded a fMP4-Video (HEVC) in Swift using VideoToolbox and CoreMedia. The resulting fragmented MP4 is only playing in VLC.


The library I am using to write the fMP4 is an HEVC-adapted version of this GitHub-Project : https://github.com/krad/morsel


Process of encoding and writing :


- 

- VideoToolbox : Encoding
SampleBuffer
from the camera (VTCompressionSession
, as described in WWDC 2014 Session 513) - Using
CoreMedia
-Functions (e.g.CMVideoFormatDescriptionGetHEVCParameterSetAtIndex
,CMVideoFormatDescriptionGetDimensions
) to get the encoded streams metadata. I am writing the content ofCMFormatDescriptionGetExtension(description, extensionKey: "SampleDescriptionExtensionAtoms" as CFString)["hvcC"]
directly to the hvcC box. This box is obviously written correctly, when I alter one bit of the box of the mp4, QuickTime throws an error. - I am appending the sample buffer data to the morsel-library, which manages fragmentation and creates the moof and mdat atoms.








The result file is playable in VLC, when I just let the playback "run" without doing anything. When I scroll the time in VLC, VLC crashes and the playback stops.


It is also sort of "playable" in Safari and QuickTime (no error message shown, the playback window opens and the correct length of the file is shown, I can even change to playback time / play/pause, but there is no video shown. The window remains empty. And that is the problem I have. I need to get an fMP4 running in Safari and QuickTime.


The file is not playing at all in ffplay (same problem when converting with ffmpeg). The line where the playback time is shown remains
nan M-V: nan fd= 0 aq= 0KB vq= 0KB sq= 0B f=0/0
, there are no error messages. The playback just does not start.
When playing the file with ffplay, this is the output :

ffplay version 4.3 Copyright (c) 2003-2020 the FFmpeg developers
 built with Apple clang version 11.0.3 (clang-1103.0.32.62)
 configuration: --prefix=/usr/local/Cellar/ffmpeg/4.3_2 --enable-shared --enable-pthreads --enable-version3 --enable-avresample --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-libxvid --enable-lzma --enable-libfontconfig --enable-libfreetype --enable-frei0r --enable-libass --enable-libopencore-amrnb --enable-libopencore-amrwb --enable-libopenjpeg --enable-librtmp --enable-libspeex --enable-libsoxr --enable-videotoolbox --disable-libjack --disable-indev=jack
 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
Input #0, mov,mp4,m4a,3gp,3g2,mj2, from 'test.mp4':
 Metadata:
 major_brand : mp42
 minor_version : 1
 compatible_brands: mp41mp42isomhlsf
 creation_time : 2020-08-03T20:41:08.000000Z
 Duration: N/A, bitrate: N/A
 Stream #0:0(und): Video: hevc (Main) (hvc1 / 0x31637668), yuv420p(tv), 1920x1080, SAR 1:1 DAR 16:9, 1000000000.00 tbr, 1000000000.00 tbn, 1000000000.00 tbc (default)
 Metadata:
 creation_time : 2020-08-03T20:41:08.000000Z
 handler_name : video
 nan M-V: nan fd= 0 aq= 0KB vq= 0KB sq= 0B f=0/0 



My file has this structure :


ftyp
moov
 mvhd
 trak
 tkhd
 mdia
 mdhd
 hdlr
 minf
 vmhd
 dinf
 dref
 stbl
 stsd
 stts
 stsc
 stsz
 stco
 mvex
 trex
moof-(1)
mdat
moof-(2)
mdat 
...



The result file I want to create should be like the fMP4 served within this HLS playlist : (Example : https://developer.apple.com/streaming/examples/advanced-stream-hevc.html, Playlist : https://devstreaming-cdn.apple.com/videos/streaming/examples/bipbop_adv_example_hevc/master.m3u8)
This file has the following structure :


ftyp
moov
 mvhd
 trak
 tkhd
 mdia
 mdhd
 hdlr
 minf
 vmhd
 dinf
 dref
 stbl
 stsd
 stts
 stsc
 stsz
 stco
 trak (same structure as above)
 mvex
 trex
moof-(1)
mdat
moof-(2)
mdat 
...



This file from Apple plays perfectly in ffmpeg and QuickTime/Safari. Except for the second
trak
atom, it has the same structure.

The "good" file is : https://devstreaming-cdn.apple.com/videos/streaming/examples/bipbop_adv_example_hevc/v14/main.mp4 (It is intended for use in a HLS Playlist I've downloaded it with curl)


The "bad" file is : https://www.transfernow.net/ddl/fmp4_bad (link should work, tested it just now :) ). The video shows a slowly rotating sheet of paper.


Any suggestions what the problem with my file is ?
Thanks in advance !


- VideoToolbox : Encoding
-
FFMPEG Transcode VP8 to H264 from rtp stream
5 août 2020, par AkilI have a rtp stream, the server is receiving audio and video on 2 separate ports, the video is in VP8 and the audio is in Opus.


My ultimate goal is to convert the RTP stream to RTMP to stream to Youtube Live, but Youtube Live supports only H264 https://developers.google.com/youtube/v3/live/guides/ingestion-protocol-comparison so first i'm looking to transcode my RTP stream to H264.


I've run the below command


ffmpeg -analyzeduration 300M -probesize 300M -protocol_whitelist file,udp,rtp -i test.sdp -c:v libx264 -pix_fmt yuv420p -r 25 -c:a aac -f flv youtube_rtmp_url



My sdp file


v=0
o=- 0 0 IN IP4 127.0.0.1
s=RTP Video
c=IN IP4 127.0.0.1
t=0 0
a=tool:libavformat 55.2.100
m=audio 50000 RTP/AVP 111
a=rtpmap:111 OPUS/48000
m=video 50002 RTP/AVP 100
a=rtpmap:100 VP8/90000
a=fmtp:100 packetization-mode=1



Where 50000 and 50002 are the ports which receive the rtp video and audio.


Log output :


ffmpeg version 4.3-3ubuntu1~18.04.sav0 Copyright (c) 2000-2020 the FFmpeg developers
built with gcc 7 (Ubuntu 7.5.0-3ubuntu1~18.04)
configuration: --prefix=/usr --extra-version='3ubuntu1~18.04.sav0' --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-libdav1d 
--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-crystalhd --enable-libmfx --enable-libdc1394 --enable-libdrm -- 
enable-libiec61883 --enable-nvenc --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
 [sdp @ 0x5649eef4b8c0] Could not find codec parameters for stream 1 (Video: vp8, yuv420p): 
 unspecified size

 Consider increasing the value for the 'analyzeduration' and 'probesize' options
 Input #0, sdp, from 'test.sdp':
 Metadata:
 title : RTP Video
 Duration: N/A, start: 0.000000, bitrate: N/A
 Stream #0:0: Audio: opus, 48000 Hz, mono, fltp
 Stream #0:1: Video: vp8, yuv420p, 90k tbr, 90k tbn, 90k tbc
 [rtmp @ 0x5649eefd87c0] Cannot open connection tcp://a.rtmp.youtube.com:1935
 rtmp://a.rtmp.youtube.com/live2/_______: Immediate exit requested



I've increased 'analyzeduration' and 'probesize' values, error doesn't change.


-
kmsgrab : Use GetFB2 if available
5 juillet 2020, par Mark Thompsonkmsgrab : Use GetFB2 if available
The most useful feature here is the ability to automatically extract the
framebuffer format and modifiers. It also makes support for multi-plane
framebuffers possible, though none are added to the format table in this
patch.This requires libdrm 2.4.101 (from April 2020) to build, so it includes a
configure check to allow compatibility with existing distributions. Even
with libdrm support, it still won't do anything at runtime if you are
running Linux < 5.7 (before June 2020).