Recherche avancée

Médias (1)

Mot : - Tags -/censure

Autres articles (99)

  • MediaSPIP 0.1 Beta version

    25 avril 2011, par

    MediaSPIP 0.1 beta is the first version of MediaSPIP proclaimed as "usable".
    The zip file provided here only contains the sources of MediaSPIP in its standalone version.
    To get a working installation, you must manually install all-software dependencies on the server.
    If you want to use this archive for an installation in "farm mode", you will also need to proceed to other manual (...)

  • Websites made ​​with MediaSPIP

    2 mai 2011, par

    This page lists some websites based on MediaSPIP.

  • 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 (10998)

  • FFmpeg's common filter "v360" missing

    26 septembre 2021, par Niklas E.

    I'm trying to convert a 180° fisheye video to a normal/regular video using the v360 filter of FFmpeg.

    


    This is the command I tried :
    
ffmpeg -i in.mp4 -vf "v360=input=fisheye:output=flat:iv_fov=180:v_fov=90" out.mp4

    


    But the output says clearly No such filter: 'v360', although v360 is a common filter listed in docs and other filters I used before worked just fine. I tried updating/reinstalling and looking for solutions, not fixing it.

    


    Why is the filter missing ? How can I debug this ? Should I doe the task using another program entirely ?

    


    Command output :

    


    ffmpeg version 4.2.4-1ubuntu0.1 Copyright (c) 2000-2020 the FFmpeg developers
  built with gcc 9 (Ubuntu 9.3.0-10ubuntu2)
  configuration: --prefix=/usr --extra-version=1ubuntu0.1 --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-avisynth --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-librsvg --enable-librubberband --enable-libshine --enable-libsnappy --enable-libsoxr --enable-libspeex --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-libdc1394 --enable-libdrm --enable-libiec61883 --enable-nvenc --enable-chromaprint --enable-frei0r --enable-libx264 --enable-shared
  libavutil      56. 31.100 / 56. 31.100
  libavcodec     58. 54.100 / 58. 54.100
  libavformat    58. 29.100 / 58. 29.100
  libavdevice    58.  8.100 / 58.  8.100
  libavfilter     7. 57.100 /  7. 57.100
  libavresample   4.  0.  0 /  4.  0.  0
  libswscale      5.  5.100 /  5.  5.100
  libswresample   3.  5.100 /  3.  5.100
  libpostproc    55.  5.100 / 55.  5.100
Input #0, mov,mp4,m4a,3gp,3g2,mj2, from 'in.mp4':
  Metadata:
    major_brand     : mp42
    minor_version   : 0
    compatible_brands: mp42mp41
    creation_time   : 2021-09-11T14:18:33.000000Z
  Duration: 00:02:48.02, start: 0.000000, bitrate: 26056 kb/s
    Stream #0:0(eng): Video: h264 (High) (avc1 / 0x31637661), yuv420p(tv, bt709), 2160x1080 [SAR 1:1 DAR 2:1], 25924 kb/s, 50 fps, 50 tbr, 50k tbn, 100 tbc (default)
    Metadata:
      creation_time   : 2021-09-11T14:18:33.000000Z
      handler_name    : Mainconcept MP4 Video Media Handler
      encoder         : AVC Coding
    Stream #0:1(eng): Audio: aac (LC) (mp4a / 0x6134706D), 44100 Hz, stereo, fltp, 125 kb/s (default)
    Metadata:
      creation_time   : 2021-09-11T14:18:33.000000Z
      handler_name    : Mainconcept MP4 Sound Media Handler
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
[AVFilterGraph @ 0x55ee57567340] No such filter: 'v360'
Error reinitializing filters!
Failed to inject frame into filter network: Invalid argument
Error while processing the decoded data for stream #0:0
Conversion failed!


    


  • FFMPEG error : "First slice in a frame missing" when decoding H.265 stream

    19 octobre 2023, par Snejk

    I have a problem with decoding IP camera stream (h.265) using ffmpeg libraries.

    


    I use Live555 to receive RTP payload.

    


    mMediaSession->readSource()->getNextFrame(mVideoBuffer.data(),
mVideoBuffer.size(), Stream::Static_PayloadRead, this, Stream::Static_StreamClose, this);


    


    First two bytes (after the start code 0001) has the nal_unit_header. I am retrieving the type, from bits 1-6 ( ( NALU[0] >> 1 ) & 0x3F ). Then I am processing the data depending on the NALu type :

    


    enum NalUnitType  
{  
  NAL_UNIT_CODED_SLICE_TRAIL_N = 0,   // 0  
  NAL_UNIT_CODED_SLICE_TRAIL_R,   // 1    
  NAL_UNIT_CODED_SLICE_TSA_N,     // 2  
  NAL_UNIT_CODED_SLICE_TLA,       // 3    
  NAL_UNIT_CODED_SLICE_STSA_N,    // 4  
  NAL_UNIT_CODED_SLICE_STSA_R,    // 5    
  NAL_UNIT_CODED_SLICE_RADL_N,    // 6  
  NAL_UNIT_CODED_SLICE_DLP,       // 7     
  NAL_UNIT_CODED_SLICE_RASL_N,    // 8  
  NAL_UNIT_CODED_SLICE_TFD,       // 9   
  NAL_UNIT_RESERVED_10,  
...
  NAL_UNIT_CODED_SLICE_BLA,       // 16 
  NAL_UNIT_CODED_SLICE_BLANT,     // 17    
  NAL_UNIT_CODED_SLICE_BLA_N_LP,  // 18  
  NAL_UNIT_CODED_SLICE_IDR,       // 19  // Current name in the spec: IDR_W_DLP  
  NAL_UNIT_CODED_SLICE_IDR_N_LP,  // 20  
  NAL_UNIT_CODED_SLICE_CRA,       // 21  
  NAL_UNIT_RESERVED_22,  
 ...
  NAL_UNIT_VPS,                   // 32  
  NAL_UNIT_SPS,                   // 33  
  NAL_UNIT_PPS,                   // 34  
  NAL_UNIT_ACCESS_UNIT_DELIMITER, // 35  
  NAL_UNIT_EOS,                   // 36  
  NAL_UNIT_EOB,                   // 37  
  NAL_UNIT_FILLER_DATA,           // 38  
  NAL_UNIT_SEI,                   // 39 Prefix SEI  
  NAL_UNIT_SEI_SUFFIX,            // 40 Suffix SEI  
...
  NAL_UNIT_INVALID,  
};  


    


    If buffer doesn't have the start code, I am adding 0x00000001 at the start of the payload data, before sending it to FFmpeg. Camera is sending these NALu (in the same order) :

    


      

    1. HEVC_NAL_VPS,
    2. 


    3. HEVC_NAL_SPS,
    4. 


    5. HEVC_NAL_PPS,
    6. 


    7. HEVC_NAL_IDR_W_RADL,
    8. 


    9. HEVC_NAL_IDR_W_RADL,
    10. 


    11. HEVC_NAL_IDR_W_RADL,
    12. 


    13. HEVC_NAL_TRAIL_R,
    14. 


    15. HEVC_NAL_TRAIL_R
...
    16. 


    


    My solution works partially as I have 1/3 of image decoded. The other 2 HEVC_NAL_IDR_W_RADL slices get FFmpeg error : "First slice in a frame missing". If I lower the stream resolution I have 1/2 image with one additional HEVC_NAL_IDR_W_RADL slice.

    


    Similiar code works with H.264 stream so I know (I hope) that Live555 and FFmpeg code should be fine.

    


    Live555 doesn't reassemble the I frames (http://lists.live555.com/pipermail/live-devel/2016-September/020244.html)

    


    Is there a specific way to reassemble frame send in multiple slices. I have even tried to assemble the frame as it would be Fragmented Unit NAL type 49 (How to depacketize the fragmented frames in RTP data (over UDP) for H265/HEVC ?)

    


    Many Thanks

    


  • What does "Error in the pull function" mean while executing ffmpeg command ?

    8 avril 2022, par Alex Rypun

    I'm trying to generate a video from multiple video sources (https urls).

    


    If I use say 8 video sources it works as expected. But if I need say 30 sources, it starts to work as expected, but at some moment a lot of errors appear.

    


    enter image description here

    


    I believe the main one is Error in the pull function..

    


    Such a video-source appears in the output file but not a full requested part (e.g., I set trim=0:5, but ffmpeg generates only 3 seconds).

    


    I tried different videos, different cropped parts, loaded sources to aws s3, but can't identify a "bad case", it's reproduced with different options.

    


    My command looks like this :

    


    ffmpeg -y
-i "https://player.vimeo.com/external/399541658.hd.mp4?s=5432956383527af00bb74b41c120bbb84ff3ac5e&profile_id=175&oauth2_token_id=57447761"
...
-i "https://player.vimeo.com/external/464966383.hd.mp4?s=648aa8277259c499f1d05d6330f9922932c080a6&profile_id=175&oauth2_token_id=57447761"
-i "https://test.com/development/videos/dc3c32cf9a194db1bb52/sources/5q5e3j2h57.mp3"
-filter_complex "[0:v]trim=0:5.64,setpts=PTS-STARTPTS,scale=1920x1080,setdar=16/9[v0];[1:v]trim=0:8,setpts=PTS-STARTPTS,scale=1920x1080,setdar=16/9,loop=0:32767[v1]; ... [10:v]trim=0:13,setpts=PTS-STARTPTS,scale=1920x1080,setdar=16/9[v10];[v0] ... [v10] concat=n=11:v=1 [video];[11:a] atrim=0:99.29 [audio]"
-vsync 2 -map [video] -map [audio] output.mp4


    


    When I downloaded all sources to my local machine and tried to use them in the ffmpeg command it worked fine without errors.

    


    Also, I figured out that it depends on the CPU. When I restricted my CPU the errors appeared earlier. And some commands might produce errors with a restricted CPU but finished successfully with no CPU restriction.

    


    As I understand, for some reason, ffmpeg fails to receive a particular part of a file data, but I believe it should retry to receive lost packages (it's https).

    


    And I don't understand, how it could be related to CPU or sources quantity.

    


    By not understanding the core of evil, I can think about 2 ways (both ugly) :

    


      

    1. to download all sources and generate the final video from local files ;
    2. 


    3. to chunk sources, generate intermediate outputs for each chunk (and save locally), and concatenate them into the final one.
    4. 


    


    Any better suggestions or at least where to seek ?