
Recherche avancée
Médias (1)
-
Video d’abeille en portrait
14 mai 2011, par
Mis à jour : Février 2012
Langue : français
Type : Video
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 (10832)
-
gstreamer : Internal data error, in appsink "pull-sample" mode
9 mai 2018, par Amir RazaI am getting Internal data error, in appsink .
My application is to read .yuv data , encode and write to a buffer.I have accomplished the writing it file but when i changed the code to write it buffer it giving error.
Its only able to write only single packet (188bytes).Output of program :
(ConsoleApplication6.exe:14432): GStreamer-WARNING **: Failed to load plugin 'C:\gstreamer\1.0\x86_64\lib\gstreamer-1.0\libgstopenh264.dll': 'C:\gstreamer\1.0\x86_64\lib\gstreamer-1.0\libgstopenh264.dll': The specified procedure could not be found.
pipeline: filesrc location=Transformers1080p.yuv blocksize=4147200 ! videoparse width=1920 height=1080 framerate=60/1 ! videoconvert ! video/x-raw,format=I420,width=1920,height=1080,framerate=60/1 ! x264enc ! mpegtsmux ! queue ! appsink name = sink
Now playing: Transformers1080p.yuv
Running...
on_new_sample_from_sink
sample got of size = 188
Error: Internal data stream error.
Returned, stopping playback
Deleting pipelinemy code :
#define _CRT_SECURE_NO_WARNINGS 1
//#pragma warning(disable:4996)
#include <gst></gst>gst.h>
#include <gst></gst>audio/audio.h>
#include <gst></gst>app/gstappsrc.h>
#include <gst></gst>base/gstpushsrc.h>
#include <gst></gst>app/gstappsink.h>
#include <gst></gst>video/video.h>
#include <gst></gst>video/gstvideometa.h>
#include <gst></gst>video/video-overlay-composition.h>
#include
#include
#include
#include
using namespace std;
GstElement *SinkBuff;
char *out_file_path;
FILE *out_file;
//gst-launch-1.0.exe -v filesrc location=Transformers1080p.yuv blocksize=4147200 !
//videoconvert ! video/x-raw,format=I420,width=1920,height=1080,framerate=60/1 !
//openh264enc ! mpegtsmux ! filesink location=final.ts
static gboolean bus_call(GstBus *bus, GstMessage *msg, gpointer data)
{
GMainLoop *loop = (GMainLoop *)data;
switch (GST_MESSAGE_TYPE(msg))
{
case GST_MESSAGE_EOS:
g_print("End of stream\n");
g_main_loop_quit(loop);
break;
case GST_MESSAGE_ERROR:
{
gchar *debug;
GError *error;
gst_message_parse_error(msg, &error, &debug);
g_free(debug);
g_printerr("Error: %s\n", error->message);
g_error_free(error);
g_main_loop_quit(loop);
break;
}
default:
break;
}
return TRUE;
}
/* called when the appsink notifies us that there is a new buffer ready for
* processing */
static void on_new_sample_from_sink(GstElement * elt, void *ptr)
{
guint size;
GstBuffer *app_buffer, *buffer;
GstElement *source;
GstMapInfo map = { 0 };
GstSample *sample;
static GstClockTime timestamp = 0;
printf("\n on_new_sample_from_sink \n ");
/* get the buffer from appsink */
g_signal_emit_by_name(SinkBuff, "pull-sample", &sample, NULL);
if (sample)
{
buffer = gst_sample_get_buffer(sample);
gst_buffer_map(buffer, &map, GST_MAP_READ);
printf("\n sample got of size = %d \n", map.size);
//Buffer
fwrite((char *)map.data, 1, sizeof(map.size), out_file);
gst_buffer_unmap(buffer, &map);
gst_sample_unref(sample);
}
}
int main(int argc, char *argv[])
{
GMainLoop *loop;
int width, height;
GstElement *pipeline;
GError *error = NULL;
GstBus *bus;
char pipeline_desc[1024];
out_file = fopen("output.ts", "wb");
/* Initialisation */
gst_init(&argc, &argv);
// Create gstreamer loop
loop = g_main_loop_new(NULL, FALSE);
sprintf(
pipeline_desc,
" filesrc location=Transformers1080p.yuv blocksize=4147200 !"
" videoparse width=1920 height=1080 framerate=60/1 !"
" videoconvert ! video/x-raw,format=I420,width=1920,height=1080,framerate=60/1 ! "
//" x264enc ! mpegtsmux ! filesink location=final.ts");
" x264enc ! mpegtsmux ! queue ! appsink name = sink");
printf("pipeline: %s\n", pipeline_desc);
/* Create gstreamer elements */
pipeline = gst_parse_launch(pipeline_desc, &error);
/* TODO: Handle recoverable errors. */
if (!pipeline) {
g_printerr("Pipeline could not be created. Exiting.\n");
return -1;
}
/* get sink */
SinkBuff = gst_bin_get_by_name(GST_BIN(pipeline), "sink");
g_object_set(G_OBJECT(SinkBuff), "emit-signals", TRUE, "sync", FALSE, NULL);
g_signal_connect(SinkBuff, "new-sample", G_CALLBACK(on_new_sample_from_sink), NULL);
/* Set up the pipeline */
/* we add a message handler */
bus = gst_pipeline_get_bus(GST_PIPELINE(pipeline));
gst_bus_add_watch(bus, bus_call, loop);
gst_object_unref(bus);
/* Set the pipeline to "playing" state*/
g_print("Now playing: Transformers1080p.yuv \n");
gst_element_set_state(pipeline, GST_STATE_PLAYING);
/* Iterate */
g_print("Running...\n");
g_main_loop_run(loop);
/* Out of the main loop, clean up nicely */
g_print("Returned, stopping playback\n");
gst_element_set_state(pipeline, GST_STATE_NULL);
g_print("Deleting pipeline\n");
gst_object_unref(GST_OBJECT(pipeline));
fclose(out_file);
g_main_loop_unref(loop);
return 0;
} -
Im getting error "deprecated pixel format used, make sure you did set range correctly using ffmpeg".. can someone check my code below ?
6 avril 2021, par Mavs MavsThis is my code using
ffmpeg
I want to have video thumbnail but I'm not familiar inffmpeg
can someone know the error I got.

[swscaler @ 0x7ff8da028c00] deprecated pixel format used, make sure you did set range correctly
Output #0, mjpeg, to 'image.jpg':
Metadata:
major_brand : mp42
minor_version : 0
compatible_brands: isommp42
encoder : Lavf56.36.100
Stream #0:0(und): Video: mjpeg, yuvj420p(pc), 320x240 [SAR 4:3 DAR 16:9], q=2-31, 200 kb/s, 1 fps, 1 tbn, 1 tbc (default)
Metadata:
 creation_time : 2016-11-06 09:40:22
 handler_name : ISO Media file produced by Google Inc.
 encoder : Lavc56.41.100 mjpeg
Stream mapping:
Stream #0:0 -> #0:0 (h264 (native) -> mjpeg (native))
Press [q] to stop, [?] for help
frame= 1 fps=0.0 q=4.8 Lsize= 16kB time=00:00:01.00 bitrate= 129.5kbits/s 
video:16kB audio:0kB subtitle:0kB other streams:0kB global headers:0kB muxing overhead: 0.000000%



Also This is my code :


$video_url ='https://URL/upload/4b8acab123563649f19e07450d810df6.mp4';

$ffmpeg = '/opt/local/bin/ffmpeg';
$image = 'image.jpg';
$interval = 5;
$size = '320x240';
shell_exec($tmp = "$ffmpeg -i $video_url -deinterlace -an -ss $interval -f mjpeg -t 1 -r 1 -y -s $size $image 2>&1"); 



-
avfilter/vf_scale : add more aliases for "range" options
8 décembre 2017, par Paul B Mahol