
Recherche avancée
Médias (91)
-
Corona Radiata
26 septembre 2011, par
Mis à jour : Septembre 2011
Langue : English
Type : Audio
-
Lights in the Sky
26 septembre 2011, par
Mis à jour : Septembre 2011
Langue : English
Type : Audio
-
Head Down
26 septembre 2011, par
Mis à jour : Septembre 2011
Langue : English
Type : Audio
-
Echoplex
26 septembre 2011, par
Mis à jour : Septembre 2011
Langue : English
Type : Audio
-
Discipline
26 septembre 2011, par
Mis à jour : Septembre 2011
Langue : English
Type : Audio
-
Letting You
26 septembre 2011, par
Mis à jour : Septembre 2011
Langue : English
Type : Audio
Autres articles (90)
-
Amélioration de la version de base
13 septembre 2013Jolie sélection multiple
Le plugin Chosen permet d’améliorer l’ergonomie des champs de sélection multiple. Voir les deux images suivantes pour comparer.
Il suffit pour cela d’activer le plugin Chosen (Configuration générale du site > Gestion des plugins), puis de configurer le plugin (Les squelettes > Chosen) en activant l’utilisation de Chosen dans le site public et en spécifiant les éléments de formulaires à améliorer, par exemple select[multiple] pour les listes à sélection multiple (...) -
HTML5 audio and video support
13 avril 2011, parMediaSPIP uses HTML5 video and audio tags to play multimedia files, taking advantage of the latest W3C innovations supported by modern browsers.
The MediaSPIP player used has been created specifically for MediaSPIP and can be easily adapted to fit in with a specific theme.
For older browsers the Flowplayer flash fallback is used.
MediaSPIP allows for media playback on major mobile platforms with the above (...) -
De l’upload à la vidéo finale [version standalone]
31 janvier 2010, parLe chemin d’un document audio ou vidéo dans SPIPMotion est divisé en trois étapes distinctes.
Upload et récupération d’informations de la vidéo source
Dans un premier temps, il est nécessaire de créer un article SPIP et de lui joindre le document vidéo "source".
Au moment où ce document est joint à l’article, deux actions supplémentaires au comportement normal sont exécutées : La récupération des informations techniques des flux audio et video du fichier ; La génération d’une vignette : extraction d’une (...)
Sur d’autres sites (11033)
-
embed video stream with custom meta data
15 mai 2022, par Sergey KolesnikI have an optical system that provides a UDP video stream.


From device specification FAQ :




Both single metadata (KLV) stream and compressed video (H.264) with metadata (KLV) are available on Ethernet link. Compressed video and metadata are coupled in the same stream compliant with STANAG 4609 standard. Each encoded video stream is encapsulated with the associated metadata within an MPEG-TS single program stream over Ethernet UDP/IP/ The video and metadata are synchronized through the use of timestamps.




Also there are other devices that provide data about the state of an aircraft (velocity, coords, etc). This data should be displayed on a client GUI display alongside with video. Of course it has to be synchronized with the current video frame.


One of the approaches I though of is to embed this data into the video stream. But I am not sure if it is possible or should I use another (than UDP) protocol for this purpose.


Is it possible/reasonable to use such approach ? Is ffmpeg library suitable in this case ?
If not, what are the other ways to synchronize data with a video frame.
Latency is crucial. Although bandwidth is limited to 2-5 Mbps.



It seems to be possible using ffmpeg :
AVPacket
can be provided with additional data using functionav_packet_add_side_data
which takes a preallocated buffer, size and a typeAVPacketSideDataType
.
However, I am not sure for now, which enum value ofAVPacketSideDataType
can be used for custom user-provided binary data.

Something similar that might be used for my needs :


How do I encode KLV packets to an H.264 video using libav*


-
How to use prebuilt FFmpeg in Android Studio
26 mai 2016, par vxh.vietI’m sure this is a very basic question but since this is the my first time messing around with the NDK, a lot of thing is still very unclear to me.
Use case :
-
I’m trying to develop a video scrubbing feature so fast and accurate frame seeking is crucial. I’ve tried most of the available players out there but the performance is still not up to my demand. That’s why I’m going down the FFmpeg route.
-
Basically, what I’m looking for is FFmpeg input seeking. I’ve tried WrtingMinds’ ffmpeg-android-java. However it is a file based implementation which means the
out.jpg
need to be written to external memory and read back which has a big hit on performance (roughly 1000 milliseconds for 1 seek). -
That’s why I’m trying to built my own FFmpeg player to do the input seeking in JNI and push back the
byte[]
to be displayed in Java.
Question : After a lot of struggling with the NDK, I’ve managed to set it up and successfully calling the JNI method from my Java code. The structure is as below :
MyApp
-app
-MyFFmpegPlayer
-build
-libs
-src
-main
-java
-com.example.myffmpegplayer
+HelloJNI.java
-jni
+MyFFmpegPlayer.cAfter some fail attempt to build FFmpeg on Windows, I’ve decided to use WritingMinds prebuilt FFmpeg. However, after extraction they just come up as plain
ffmpeg
files (not.so
file) so I don’t really know how to use these.It would be a great gratitude, if someone can just chime in and give me a good starting point for my next step.
Thank you so much for your time.
-
-
I need to implement video compression for files that exceed 5 MB in size
27 septembre 2024, par KAVYA PI need to implement video compression for files that exceed 5 MB in size. I have tried several packages for this purpose, but they either do not work as expected or have significant security vulnerabilities. It's crucial for me to find a reliable and secure solution for compressing videos that meet this file size requirement. If you have any recommendations for libraries or tools that effectively handle video compression without compromising security, please let me know.


const handleFileChange = async (
 event: React.ChangeEvent<htmlinputelement>
 ) => {
 const file = event.target.files?.[0];
 if (file) {
 const isImage = file.type.startsWith('image/');
 const MAX_FILE_SIZE = isImage ? 2 * 1024 * 1024 : 5 * 1024 * 1024; // 2 MB for images, 5 MB for videos

 if (file.size > MAX_FILE_SIZE) {
 if (isImage) {
 alert('Image file size exceeds 2 MB. Compressing the file...');
 try {
 const compressedFile = await imageCompression(file, {
 maxSizeMB: 2,
 maxWidthOrHeight: 1920,
 useWebWorker: true,
 });
 onSelectFile({
 ...event,
 target: {
 ...event.target,
 files: [compressedFile] as unknown as FileList,
 },
 });
 } catch (error) {
 console.error('Error compressing the image:', error);
 }
 } else {
 alert('Video file size exceeds 5 MB. Please choose a smaller video.');
 }
 } else {
 onSelectFile(event); // Proceed with the file selection
 }
 }
 };
</htmlinputelement>