Recherche avancée

Médias (3)

Mot : - Tags -/pdf

Autres articles (67)

  • Websites made ​​with MediaSPIP

    2 mai 2011, par

    This page lists some websites based on MediaSPIP.

  • Possibilité de déploiement en ferme

    12 avril 2011, par

    MediaSPIP peut être installé comme une ferme, avec un seul "noyau" hébergé sur un serveur dédié et utilisé par une multitude de sites différents.
    Cela permet, par exemple : de pouvoir partager les frais de mise en œuvre entre plusieurs projets / individus ; de pouvoir déployer rapidement une multitude de sites uniques ; d’éviter d’avoir à mettre l’ensemble des créations dans un fourre-tout numérique comme c’est le cas pour les grandes plate-formes tout public disséminées sur le (...)

  • Ajouter des informations spécifiques aux utilisateurs et autres modifications de comportement liées aux auteurs

    12 avril 2011, par

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

Sur d’autres sites (9222)

  • FFMPEG profile-level-id size is invalid

    18 février 2020, par Mulham Aryan

    I’m trying to record a RTSP streaming from JVC KY-PZ 100.
    So for that i’m using ffmpeg with some parameters like segmentation, hls, ts, m3u8 etc ...
    i’m always getting an error The profile-level-id field size is invalid (41) and Error parsing AU headers

    This is the output of FFPROBE to debug the RTSP

    ffprobe -loglevel verbose  -i rtsp://jvc:0000@192.168.0.124:554/stream

    ffprobe version 4.2.2 Copyright (c) 2007-2019 the FFmpeg developers
     built with Apple LLVM version 10.0.0 (clang-1000.11.45.5)
     configuration: --prefix=/usr/local/Cellar/ffmpeg/4.2.2 --enable-shared --enable-pthreads --enable-version3 --enable-avresample --cc=clang --host-cflags='-I/Library/Java/JavaVirtualMachines/adoptopenjdk-13.0.1.jdk/Contents/Home/include -I/Library/Java/JavaVirtualMachines/adoptopenjdk-13.0.1.jdk/Contents/Home/include/darwin' --host-ldflags= --enable-ffplay --enable-gnutls --enable-gpl --enable-libaom --enable-libbluray --enable-libmp3lame --enable-libopus --enable-librubberband --enable-libsnappy --enable-libtesseract --enable-libtheora --enable-libvidstab --enable-libvorbis --enable-libvpx --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. 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
    [tcp @ 0x7fa99ee001c0] Starting connection attempt to 192.168.0.124 port 554
    [tcp @ 0x7fa99ee001c0] Successfully connected to 192.168.0.124 port 554
    [rtsp @ 0x7fa99f807200] SDP:
    v=0
    o=- 1581949225269357 1 IN IP4 192.168.0.124
    s=KY-PZ100
    i=KY-PZ100
    t=0 0
    a=tool:LIVE555 Streaming Media v2013.10.03
    a=type:broadcast
    a=control:*
    a=range:npt=0-
    a=x-qt-text-nam:KY-PZ100
    a=x-qt-text-inf:KY-PZ100
    m=audio 0 RTP/AVP 96
    c=IN IP4 0.0.0.0
    b=AS:96
    a=rtpmap:96 mpeg4-generic/48000/2
    a=fmtp:96 streamtype=5;profile-level-id=41;mode=AAC-hbr;sizelength=13;indexlength=3;indexdeltalength=3;config=1190
    a=control:track1
    m=video 0 RTP/AVP 97
    c=IN IP4 0.0.0.0
    b=AS:1500
    a=rtpmap:97 H264/90000
    a=fmtp:97 packetization-mode=1;profile-level-id=4D401E;sprop-parameter-sets=Z01AHqtgUBf8uAqQEBAUAAAPpAADqYOlABksDcoUQDuLFIs=,aM48gA==
    a=control:track2

    [rtsp @ 0x7fa99f807200] The profile-level-id field size is invalid (41)
    [rtsp @ 0x7fa99f807200] setting jitter buffer size to 500
       Last message repeated 1 times
    [rtsp @ 0x7fa99f807200] Error parsing AU headers
       Last message repeated 4 times
    [h264 @ 0x7fa9a0806600] Reinit context to 640x368, pix_fmt: yuv420p
    [rtsp @ 0x7fa99f807200] Error parsing AU headers
       Last message repeated 235 times
    [rtsp @ 0x7fa99f807200] max_analyze_duration 5000000 reached at 5005000 microseconds st:1
    Input #0, rtsp, from 'rtsp://jvc:0000@192.168.0.124:554/stream':
     Metadata:
       title           : KY-PZ100
       comment         : KY-PZ100
     Duration: N/A, start: 0.066733, bitrate: N/A
       Stream #0:0: Audio: aac, 48000 Hz, stereo, fltp
       Stream #0:1: Video: h264 (Main), 1 reference frame, yuv420p(tv, bt709, progressive, left), 640x360 (640x368) [SAR 1:1 DAR 16:9], 29.97 fps, 29.97 tbr, 90k tbn, 59.94 tbc
  • FFMPEG with D3D11 hw accelleration : How to copy DirectX texture to OpenGL ?

    7 avril 2020, par imikbox

    I'm decoding a video using FFMPEG with the D3D11 video acceleration. I want to display the decoded frames in my GUI, for which I use OpenGL for rendering. I want to avoid copying the decoded frame back to system memory. So my goal is to copy/map the ID3D11Texture2D wich I get from FFMPEG directly to an OpenGL texture. There exists an OpenGL extension for this purpose (WGL_NV_DX_interop and WGL_NV_DX_interop2).

    



    However, I don't get it running. Here is my code so far (stripped down) :

    



    // create texture, to be used later in DirectX
GLuint texture_opengl;
glGenTextures(1, &texture_opengl);
// .. and set the usual parameters for it

// setup WGL_NV_DX_interop extension
AVBufferRef* hw_device_ctx_buffer = decoder_ctx->hw_device_ctx;
AVHWDeviceContext* hw_device_ctx = (AVHWDeviceContext*)hw_device_ctx_buffer->data;
AVD3D11VADeviceContext* hw_d3d11_dev_ctx = (AVD3D11VADeviceContext*)hw_device_ctx->hwctx;
HANDLE device_handle = wglDXOpenDeviceNV(hw_d3d11_dev_ctx->device);

// create intermediate texture
D3D11_TEXTURE2D_DESC pDes{};
ZeroMemory(&pDes, sizeof(pDes));
pDes.Width = frame->width;
pDes.Height = frame->height;
pDes.ArraySize = 1;
pDes.MipLevels = 1;
pDes.Format = DXGI_FORMAT_NV12;
pDes.SampleDesc.Count = 1;
pDes.SampleDesc.Quality = 0;
pDes.Usage = D3D11_USAGE_DEFAULT;
pDes.BindFlags = D3D11_BIND_UNORDERED_ACCESS;
pDes.CPUAccessFlags = 0;
pDes.MiscFlags = 0;

ID3D11Texture2D* texture_D3D11;
hw_d3d11_dev_ctx->device->CreateTexture2D(&pDes, NULL, &texture_D3D11);

// connect opengl and directx textures
HANDLE hRegisterObject = wglDXRegisterObjectNV(
    device_handle, texture_D3D11, texture_opengl, GL_TEXTURE_2D, WGL_ACCESS_READ_WRITE_NV
        );

// run loop and display video
while(..)
{
  // read packets from video file and send it to decoder  

  // receive frame from decoder
  avcodec_receive_frame(decoder_ctx, frame);

  // get DirectX objects from frame
  ID3D11Texture2D* hwTexture = (ID3D11Texture2D*)frame->data[0];
  intptr_t texture_array_index = (intptr_t)frame->data[1];

  // copy frame texture to intermediate texture
  hw_d3d11_dev_ctx->device_context->CopySubresourceRegion(
        texture_D3D11, 0, 0, 0, 0,
        hwTexture, texture_array_index,
        NULL
  );

}



    



    After copying the contents from the FFMPEG frame to my intermediate texture texture_directx, I expect that I can display the data with the OpenGL texture texture_opengl. However, this texture is empty. I also don`t see any copy activity in the resource monitor of the GPU.

    



    Anyone out there who has done this or might see an error in my approach ?

    



    I left out any consideration of handling the NV12 format. For now, it's sufficient for me to just copy the luminance part of the frame.

    


  • Concatenating on Windows throws "Invalid data found when processing input" while it works on Mac and Linux

    15 février 2020, par miguelmorin

    I need to run a command with a nightly build of FFMPEG to report a bug on the concat protocol. I found it difficult to compile from source with libx264 support on Linux, and I want to spare my Mac computer, so I use the nightly build on Windows from Zeranoe.

    I call this command to concatenate the files :

    ffmpeg -safe 0 concat -i files_to_combine -vcodec libx264 show.mp4

    where files_to_combine is :

    file ./short_DSC_0013.MOV
    file ./short_DSC_0014.MOV
    file ./short_DSC_0015.MOV
    file ./short_DSC_0016.MOV
    file ./short_DSC_0017.MOV
    file ./short_DSC_0018.MOV
    file ./short_DSC_0019.MOV

    I call this command from the directory containing the video files and files_to_combine.

    On Windows with a nightly build, I get the error :

    files_to_combine : Invalid data found when processing input
    

    I changed file ./DSC_0013.MOV to these options, all with the same error :

    file 'short_DSC_0013.MOV'
    file '.\short_DSC_0013.MOV'
    file 'F:\short_DSC_0013.MOV'

    How can I debug this error, or what is the syntax for concatenating on Windows with a nightly build ?

    Update with log-level 48

    I ran the same command with -v 48 and got :

    F :\brain squids>C :\Users\migue\Desktop\ffmpeg-20200211-f15007a-win64-static\bin\ffmpeg.exe -v 48 -i files_to_combine -vcodec libx264 show.mp4
    ffmpeg version git-2020-02-11-f15007a Copyright (c) 2000-2020 the FFmpeg developers
      built with gcc 9.2.1 (GCC) 20200122
      configuration : —enable-gpl —enable-version3 —enable-sdl2 —enable-fontconfig —enable-gnutls —enable-iconv —enable-libass —enable-libdav1d —enable-libbluray —enable-libfreetype —enable-libmp3lame —enable-libopencore-amrnb —enable-libopencore-amrwb —enable-libopenjpeg —enable-libopus —enable-libshine —enable-libsnappy —enable-libsoxr —enable-libtheora —enable-libtwolame —enable-libvpx —enable-libwavpack —enable-libwebp —enable-libx264 —enable-libx265 —enable-libxml2 —enable-libzimg —enable-lzma —enable-zlib —enable-gmp —enable-libvidstab —enable-libvorbis —enable-libvo-amrwbenc —enable-libmysofa —enable-libspeex —enable-libxvid —enable-libaom —enable-libmfx —enable-ffnvcodec —enable-cuvid —enable-d3d11va —enable-nvenc —enable-nvdec —enable-dxva2 —enable-avisynth —enable-libopenmpt —enable-amf
      libavutil      56. 39.100 / 56. 39.100
      libavcodec     58. 68.102 / 58. 68.102
      libavformat    58. 38.100 / 58. 38.100
      libavdevice    58.  9.103 / 58.  9.103
      libavfilter     7. 75.100 /  7. 75.100
      libswscale      5.  6.100 /  5.  6.100
      libswresample   3.  6.100 /  3.  6.100
      libpostproc    55.  6.100 / 55.  6.100
    Splitting the commandline.
    Reading option ’-v’ ... matched as option ’v’ (set logging level) with argument ’48’.
    Reading option ’-i’ ... matched as input url with argument ’files_to_combine’.
    Reading option ’-vcodec’ ... matched as option ’vcodec’ (force video codec (’copy’ to copy stream)) with argument ’libx264’.
    Reading option ’show.mp4’ ... matched as output url.
    Finished splitting the commandline.
    Parsing a group of options : global .
    Applying option v (set logging level) with argument 48.
    Successfully parsed a group of options.
    Parsing a group of options : input url files_to_combine.
    Successfully parsed a group of options.
    Opening an input file : files_to_combine.
    [NULL @ 0000021c781784c0] Opening ’files_to_combine’ for reading
    [file @ 0000021c78179580] Setting default whitelist ’file,crypto,data’
    [AVIOContext @ 0000021c781817c0] Statistics : 182 bytes read, 0 seeks
    files_to_combine : Invalid data found when processing input
    

    The contents of files_to_combine is :

    file ’short_DSC_0013.MOV’
    file ’short_DSC_0014.MOV’
    file ’short_DSC_0015.MOV’
    file ’short_DSC_0016.MOV’
    file ’short_DSC_0017.MOV’
    file ’short_DSC_0018.MOV’
    file ’short_DSC_0019.MOV’
    

    Update because of wrong command

    I had mistyped the command. The right command has a -f in front of concat, which I found because the accepted answer was able to make the command work in a similar environment :

    ffmpeg -safe 0 -f concat -i files_to_combine -vcodec libx264 show.mp4