
Recherche avancée
Autres articles (54)
-
Configurer la prise en compte des langues
15 novembre 2010, parAccéder à la configuration et ajouter des langues prises en compte
Afin de configurer la prise en compte de nouvelles langues, il est nécessaire de se rendre dans la partie "Administrer" du site.
De là, dans le menu de navigation, vous pouvez accéder à une partie "Gestion des langues" permettant d’activer la prise en compte de nouvelles langues.
Chaque nouvelle langue ajoutée reste désactivable tant qu’aucun objet n’est créé dans cette langue. Dans ce cas, elle devient grisée dans la configuration et (...) -
Le profil des utilisateurs
12 avril 2011, parChaque utilisateur dispose d’une page de profil lui permettant de modifier ses informations personnelle. Dans le menu de haut de page par défaut, un élément de menu est automatiquement créé à l’initialisation de MediaSPIP, visible uniquement si le visiteur est identifié sur le site.
L’utilisateur a accès à la modification de profil depuis sa page auteur, un lien dans la navigation "Modifier votre profil" est (...) -
Contribute to documentation
13 avril 2011Documentation is vital to the development of improved technical capabilities.
MediaSPIP welcomes documentation by users as well as developers - including : critique of existing features and functions articles contributed by developers, administrators, content producers and editors screenshots to illustrate the above translations of existing documentation into other languages
To contribute, register to the project users’ mailing (...)
Sur d’autres sites (6322)
-
Fastest way to extract raw Y' plane data from Y'Cb'Cr encoded video ?
20 février 2024, par memekoI have a use-case where I'm extracting
I-Frames
from videos and turning them into perceptual hashes for later analysis.

⠀


I'm currently using
ffmpeg
to do this with a command akin to :

ffmpeg -skip_frame nokey -i 'in%~1.mkv' -vsync vfr -frame_pts true -vf 'keyframes/_Y/out%~1/%%06d.bmp'


and then reading in the data from the resulting images.


⠀


This is a bit wasteful as, to my understanding,
ffmpeg
does implicitYUV -> RGB
colour-space conversion and I'm also needlessly saving intermediate data to disk.

Most modern video codecs utilise chroma subsampling and have frames encoded in a Y'CbCr colour-space, where Y' is the luma component, and Cb Cr are the blue-difference, red-difference chroma components.


Which in something like
YUV420p
used in h.264/h.265 video codecs is encoded as such :



Where each Y' value is
8 bits
long and corresponds to a pixel.

⠀


As I use gray-scale data for generating the perceptual hashes anyway, I was wondering if there is a way to simply grab just the raw Y' values from any given
I-Frame
into an array and skip all of the unnecessary conversions and extra steps ?

(as the luma component is essentially equivalent to the grayscale data i need for generating hashes)


I came across the
-vf 'extractplanes=y'
filter inffmpeg
that seems like it might do just that, but according to source :



"...what is extracted by 'extractplanes' is not raw data of the (for example) Y plane. Each extracted is converted to grayscale. That is, the converted video data has YUV (or RGB) which is different from the input."




which makes it seem like it's touching chroma components and doing some conversion anyway, in testing applying this filter didn't affect the processing time of the
I-Frame
extraction either.

⠀


My script is currently written in
Python
, but I am in the process of migrating it toC++
, so I would prefer any solutions pertaining to the latter.

ffmpeg
seems like the ideal candidate for this task, but I really am looking for whatever solution that would ingest the data fastest, preferably saving directly toRAM
, as I'll be processing a large number of video files and discardingI-Frame
luma pixel data once a hash has been generated.

I would also like to associate each
I-Frame
with its corresponding frame number in the video.

-
Anomalie #4532 (Nouveau) : Parse error en php 8
26 juillet 2020, par Franck DHello
Spip et plugin_dist à jour de ce jour !
easyphp (windows 10 (1909))
easyphp
Apache 2.4.43 x64
PHP 8.0.0 alpha3 x64
MySQL 8.0.20 x64Avant même de pouvoir faire l’installation, quand je vais sur le site, j’ai :
Parse error : syntax error, unexpected token "match", expecting "(" in C :\Program Files (x86)\EasyPHP-Devserver-17\eds-www\test13\ecrire\inc\filtres.php on line 3114Je pense que le changement vient de :
https://wiki.php.net/rfc/match_expression_v2 -
Processing yuv4mpeg by hand
15 avril 2014, par user3534466Theoretical question.
I have named pipe(windows) with uncompressed-video yuv4mpeg and uncompressed-audio pcm. I need to read this stream in my program and render it to bitmap.
If I realy understood description of yuv4mpeg http://wiki.multimedia.cx/index.php?title=YUV4MPEG2, there are simple YCbCr-images after header.
Is it simple way to processing and rendering this data by my own code C++ without any libraries (ffmpeg) ?