
Recherche avancée
Autres articles (95)
-
ANNEXE : Les plugins utilisés spécifiquement pour la ferme
5 mars 2010, parLe site central/maître de la ferme a besoin d’utiliser plusieurs plugins supplémentaires vis à vis des canaux pour son bon fonctionnement. le plugin Gestion de la mutualisation ; le plugin inscription3 pour gérer les inscriptions et les demandes de création d’instance de mutualisation dès l’inscription des utilisateurs ; le plugin verifier qui fournit une API de vérification des champs (utilisé par inscription3) ; le plugin champs extras v2 nécessité par inscription3 (...)
-
Gestion de la ferme
2 mars 2010, parLa ferme est gérée dans son ensemble par des "super admins".
Certains réglages peuvent être fais afin de réguler les besoins des différents canaux.
Dans un premier temps il utilise le plugin "Gestion de mutualisation" -
Gestion des droits de création et d’édition des objets
8 février 2011, parPar défaut, beaucoup de fonctionnalités sont limitées aux administrateurs mais restent configurables indépendamment pour modifier leur statut minimal d’utilisation notamment : la rédaction de contenus sur le site modifiables dans la gestion des templates de formulaires ; l’ajout de notes aux articles ; l’ajout de légendes et d’annotations sur les images ;
Sur d’autres sites (10421)
-
OpenCL generating YUV420P black pixel
2 mai 2021, par Albert TinonI'm working on an FFmpeg OpenCL filter for converting GoPro Max .360 files in Google EAC projected files.
For doing that I need to "stack" the 2 input streams to a twice height output.
It is working very well at a realtime speed. (The working code is in comment)


For going further I need to replace some pixels with some specific colors.
I wrote some macros for making RGB->YUV conversion. But I get only some green or pink pixel (only grey is OK).
this is my test code (with stacking in comment)


#define Y(R,G,B) 0.299 * R + 0.587 * G + 0.114 * B
#define U(R,G,B) -0.147 * R - 0.289 * G + 0.436 * B
#define V(R,G,B) 0.615 * R - 0.515 * G - 0.100 * B
#define YUV(R,G,B) (float4)(Y(R,G,B),U(R,G,B),V(R,G,B),0)

__kernel void gopromax_stack(__write_only image2d_t dst,
 __read_only image2d_t gopromax_front,
 __read_only image2d_t gopromax_rear)
{
 const sampler_t sampler = (CLK_NORMALIZED_COORDS_FALSE |
 CLK_FILTER_NEAREST);
 
 float4 val;
 int2 dst_size = get_image_dim(dst);
 int2 loc = (int2)(get_global_id(0), get_global_id(1));
 int split_loc = dst_size.y/2;

 if (loc.y < split_loc)
 {
 // working code for stacking
 // val = read_imagef(gopromax_front, sampler, (int2)(loc.x, loc.y));

 // testing to put grey (working)
 val = YUV(0.5f,0.5f,0.5f);
 }
 else
 {
 // working code for stacking
 // val = read_imagef(gopromax_rear, sampler, (int2)(loc.x, loc.y-split_loc));

 // testing to put black (gives green !)
 val = YUV(0,0,0);
 }

 if ((loc.xcode>


I tried many think I cannot succeed to generate black or anything except grey.
What did I make wrong ?
I supposed that my pixels are YUV because I specified yuv420p as the format in my filter :


-filter_complex '[0:0]format=yuv420p,hwupload[a] , [0:4]format=yuv420p,hwupload[b], [a][b]gopromax_opencl, hwdownload,format=yuv420p'



The source streams are in hevc / nv12.


Thanks all for your help.


-
OpenCL YUV420P black pixel
30 avril 2021, par Albert TinonI'm working on an FFmpeg OpenCL filter for converting GoPro Max .360 files in Google EAC projected files.
For doing that I need to "stack" the 2 input streams to a twice height output.
It is working very well at a realtime speed. (The working code is in comment)


For going further I need to replace some pixels with some specific colors.
I wrote some macros for making RGB->YUV conversion. But I get only some green or pink pixel (only grey is OK).
this is my test code (with stacking in comment)


#define Y(R,G,B) 0.299 * R + 0.587 * G + 0.114 * B
#define U(R,G,B) -0.147 * R - 0.289 * G + 0.436 * B
#define V(R,G,B) 0.615 * R - 0.515 * G - 0.100 * B
#define YUV(R,G,B) (float4)(Y(R,G,B),U(R,G,B),V(R,G,B),0)

__kernel void gopromax_stack(__write_only image2d_t dst,
 __read_only image2d_t gopromax_front,
 __read_only image2d_t gopromax_rear)
{
 const sampler_t sampler = (CLK_NORMALIZED_COORDS_FALSE |
 CLK_FILTER_NEAREST);
 
 float4 val;
 int2 dst_size = get_image_dim(dst);
 int2 loc = (int2)(get_global_id(0), get_global_id(1));
 int split_loc = dst_size.y/2;

 if (loc.y < split_loc)
 {
 // working code for stacking
 // val = read_imagef(gopromax_front, sampler, (int2)(loc.x, loc.y));

 // testing to put grey (working)
 val = YUV(0.5f,0.5f,0.5f);
 }
 else
 {
 // working code for stacking
 // val = read_imagef(gopromax_rear, sampler, (int2)(loc.x, loc.y-split_loc));

 // testing to put black (gives green !)
 val = YUV(0,0,0);
 }

 if ((loc.xcode>


I tried many think I cannot succeed to generate black or anything except grey.
What did I make wrong ?
I supposed that my pixels are YUV because I specified yuv420p as the format in my filter :


-filter_complex '[0:0]format=yuv420p,hwupload[a] , [0:4]format=yuv420p,hwupload[b], [a][b]gopromax_opencl, hwdownload,format=yuv420p'



The source streams are in hevc / nv12.


Thanks all for your help.


-
lavu/tx : refactor power-of-two FFT
10 avril 2021, par Lynnelavu/tx : refactor power-of-two FFT
This commit refactors the power-of-two FFT, making it faster and
halving the size of all tables, making the code much smaller on
all systems.
This removes the big/small pass split, because on modern systems
the "big" pass is always faster, and even on older machines there
is no measurable speed difference.