Recherche avancée

Médias (0)

Mot : - Tags -/configuration

Aucun média correspondant à vos critères n’est disponible sur le site.

Autres articles (81)

  • Websites made ​​with MediaSPIP

    2 mai 2011, par

    This page lists some websites based on MediaSPIP.

  • Amélioration de la version de base

    13 septembre 2013

    Jolie 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 (...)

  • Creating farms of unique websites

    13 avril 2011, par

    MediaSPIP platforms can be installed as a farm, with a single "core" hosted on a dedicated server and used by multiple websites.
    This allows (among other things) : implementation costs to be shared between several different projects / individuals rapid deployment of multiple unique sites creation of groups of like-minded sites, making it possible to browse media in a more controlled and selective environment than the major "open" (...)

Sur d’autres sites (14467)

  • Fragmented MP4 not playing in ffplay/QuickTime/Safari, but in VLC

    6 août 2020, par Stack64

    I 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 :

    


      

    1. VideoToolbox : Encoding SampleBuffer from the camera (VTCompressionSession, as described in WWDC 2014 Session 513)
    2. 


    3. Using CoreMedia-Functions (e.g. CMVideoFormatDescriptionGetHEVCParameterSetAtIndex, CMVideoFormatDescriptionGetDimensions) to get the encoded streams metadata. I am writing the content of CMFormatDescriptionGetExtension(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.
    4. 


    5. I am appending the sample buffer data to the morsel-library, which manages fragmentation and creates the moof and mdat atoms.
    6. 


    


    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 !

    


  • Recording Camlink 4k feed with ffmpeg

    5 août 2020, par Nitzan Yogev

    its my first question ! awesome !
so im new to python, and im working on some program for work
I have the Elgato CamLink 4k connected to Sony A7III.
im looking for the best way to record a video file from the camlink feed using python
I know that ffmpeg is a good way to record webcam feed. but im having trouble with it
here is my code.

    


        import ffmpeg

(
    ffmpeg
    .input('0', format='avfoundation', pix_fmt='nv12', framerate=25)
    .output('test.mp4', pix_fmt='nv12', vframes=125)
    .overwrite_output()
    .run()
)


    


    im using this ffmpeg-python module

    


    im getting a output file with only the first frame and nothing more

    


    here is what im getting in the run terminal

    


    ffmpeg version 4.3.1 Copyright (c) 2000-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.1 --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-libxml2 --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
[avfoundation @ 0x7ff043814600] Stream #0: not enough frames to estimate rate; consider increasing probesize
Input #0, avfoundation, from '0':
  Duration: N/A, start: 6247.240967, bitrate: N/A
    Stream #0:0: Video: rawvideo (NV12 / 0x3231564E), nv12, 3840x2160, 1000k tbr, 1000k tbn, 1000k tbc
Stream mapping:
  Stream #0:0 -> #0:0 (rawvideo (native) -> h264 (libx264))
Press [q] to stop, [?] for help
[mp4 @ 0x7ff043856c00] Frame rate very high for a muxer not efficiently supporting it.
Please consider specifying a lower framerate, a different muxer or -vsync 2
[libx264 @ 0x7ff043868000] MB rate (32400000000) > level limit (16711680)
[libx264 @ 0x7ff043868000] using cpu capabilities: MMX2 SSE2Fast SSSE3 SSE4.2 AVX FMA3 BMI2 AVX2
[libx264 @ 0x7ff043868000] profile High, level 6.2, 4:2:0, 8-bit
[libx264 @ 0x7ff043868000] 264 - core 160 r3011 cde9a93 - H.264/MPEG-4 AVC codec - Copyleft 2003-2020 - 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=18 lookahead_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=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 'test.mp4':
  Metadata:
    encoder         : Lavf58.45.100
    Stream #0:0: Video: h264 (libx264) (avc1 / 0x31637661), nv12, 3840x2160, q=-1--1, 1000k fps, 1000k tbn, 1000k tbc
    Metadata:
      encoder         : Lavc58.91.100 libx264
    Side data:
      cpb: bitrate max/min/avg: 0/0/0 buffer size: 0 vbv_delay: N/A
frame=  125 fps= 30 q=-1.0 Lsize=     788kB time=00:00:00.00 bitrate=52509528.5kbits/s dup=124 drop=1 speed=2.99e-05x    
video:786kB audio:0kB subtitle:0kB other streams:0kB global headers:0kB muxing overhead: 0.290685%
[libx264 @ 0x7ff043868000] frame I:1     Avg QP:19.49  size:588332
[libx264 @ 0x7ff043868000] frame P:31    Avg QP:20.24  size:  4202
[libx264 @ 0x7ff043868000] frame B:93    Avg QP:33.28  size:   922
[libx264 @ 0x7ff043868000] consecutive B-frames:  0.8%  0.0%  0.0% 99.2%
[libx264 @ 0x7ff043868000] mb I  I16..4:  2.8% 86.0% 11.3%
[libx264 @ 0x7ff043868000] mb P  I16..4:  0.0%  0.0%  0.0%  P16..4:  6.9%  0.3%  0.5%  0.0%  0.0%    skip:92.3%
[libx264 @ 0x7ff043868000] mb B  I16..4:  0.0%  0.0%  0.0%  B16..8:  4.4%  0.0%  0.0%  direct: 0.0%  skip:95.6%  L0:19.0% L1:81.0% BI: 0.0%
[libx264 @ 0x7ff043868000] 8x8 transform intra:86.0% inter:88.3%
[libx264 @ 0x7ff043868000] coded y,uvDC,uvAC intra: 93.8% 87.1% 55.6% inter: 0.1% 1.5% 0.0%
[libx264 @ 0x7ff043868000] i16 v,h,dc,p:  9% 10%  9% 72%
[libx264 @ 0x7ff043868000] i8 v,h,dc,ddl,ddr,vr,hd,vl,hu: 15% 14% 34%  6%  5%  5%  6%  7%  7%
[libx264 @ 0x7ff043868000] i4 v,h,dc,ddl,ddr,vr,hd,vl,hu: 22% 18% 16%  9%  8%  7%  8%  7%  6%
[libx264 @ 0x7ff043868000] i8c dc,h,v,p: 48% 26% 20%  6%
[libx264 @ 0x7ff043868000] Weighted P-Frames: Y:0.0% UV:0.0%
[libx264 @ 0x7ff043868000] ref P L0: 82.6%  0.1% 14.0%  3.3%
[libx264 @ 0x7ff043868000] ref B L0: 99.8%  0.2%  0.0%
[libx264 @ 0x7ff043868000] ref B L1: 76.2% 23.8%
[libx264 @ 0x7ff043868000] kb/s:51475456.00


    


    if im plugging the camlink off I get a video from my macbook internal camera. so I know this should somehow work

    


  • FFMPEG Transcode VP8 to H264 from rtp stream

    5 août 2020, par Akil

    I 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.