
Recherche avancée
Médias (3)
-
The Slip - Artworks
26 septembre 2011, par
Mis à jour : Septembre 2011
Langue : English
Type : Texte
-
Podcasting Legal guide
16 mai 2011, par
Mis à jour : Mai 2011
Langue : English
Type : Texte
-
Creativecommons informational flyer
16 mai 2011, par
Mis à jour : Juillet 2013
Langue : English
Type : Texte
Autres articles (67)
-
Websites made with MediaSPIP
2 mai 2011, parThis page lists some websites based on MediaSPIP.
-
Possibilité de déploiement en ferme
12 avril 2011, parMediaSPIP 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, 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.
Sur d’autres sites (9222)
-
FFMPEG profile-level-id size is invalid
18 février 2020, par Mulham AryanI’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 errorThe profile-level-id field size is invalid (41)
andError parsing AU headers
This is the output of
FFPROBE
to debug the RTSPffprobe -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 imikboxI'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 texturetexture_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 miguelmorinI 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.MOVI 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 ofconcat
, 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