gnunet-svn
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[GNUnet-SVN] r31645 - Extractor/src/plugins


From: gnunet
Subject: [GNUnet-SVN] r31645 - Extractor/src/plugins
Date: Sat, 21 Dec 2013 16:07:06 +0100

Author: bratao
Date: 2013-12-21 16:07:06 +0100 (Sat, 21 Dec 2013)
New Revision: 31645

Modified:
   Extractor/src/plugins/thumbnailffmpeg_extractor.c
Log:
Update thumbnailffmpeg_extractor.c to compile with the new libav/ffmpeg api

Modified: Extractor/src/plugins/thumbnailffmpeg_extractor.c
===================================================================
--- Extractor/src/plugins/thumbnailffmpeg_extractor.c   2013-12-21 03:19:22 UTC 
(rev 31644)
+++ Extractor/src/plugins/thumbnailffmpeg_extractor.c   2013-12-21 15:07:06 UTC 
(rev 31645)
@@ -168,6 +168,12 @@
   uint8_t *encoder_output_buffer;
   size_t encoder_output_buffer_size;
   int err;
+  
+  AVPacket pkt;
+  av_init_packet(&pkt);
+  pkt.data = NULL;
+  pkt.size = 0;
+  int gotPacket;
 
   if (NULL == (encoder_codec = avcodec_find_encoder_by_name ("png")))
     {
@@ -264,9 +270,29 @@
       sws_freeContext  (scaler_ctx);
       return 0;
     }
+       
+                          
+#if LIBAVCODEC_BUILD >= AV_VERSION_INT(54,25,0)
+  //err = encode_frame (encoder_codec_ctx, dst_frame);                         
                          
+  err = avcodec_encode_video2 (encoder_codec_ctx,
+                              &pkt,
+                               dst_frame, &gotPacket);
+
+  if(err < 0)
+       goto cleanup;
+  err = pkt.size;
+  memcpy(encoder_output_buffer,pkt.data, pkt.size);
+
+  av_free_packet(&pkt);
+                                                         
+                                                         
+#else
   err = avcodec_encode_video (encoder_codec_ctx,
                               encoder_output_buffer,
                               encoder_output_buffer_size, dst_frame);
+  
+#endif
+cleanup:
   av_dict_free (&opts);
   avcodec_close (encoder_codec_ctx);
   av_free (encoder_codec_ctx);
@@ -327,13 +353,12 @@
 #endif
 }
 
-#if AV_VERSION_INT(54,25,0) > LIBAVUTIL_VERSION_INT
-#define ENUM_CODEC_ID enum CodecID
+#if LIBAVCODEC_BUILD >= AV_VERSION_INT(54,25,0)
+       #define ENUM_CODEC_ID enum AVCodecID
 #else
-#define ENUM_CODEC_ID enum AvCodecID
+        #define ENUM_CODEC_ID enum CodecID
 #endif
 
-
 /**
  * Perform thumbnailing when the input is an image.
  *
@@ -608,6 +633,7 @@
                           &encoded_thumbnail, MAX_THUMB_BYTES);
   if (err > 0)
     {
+       
       ec->proc (ec->cls,
                "thumbnailffmpeg",
                EXTRACTOR_METATYPE_THUMBNAIL,
@@ -646,13 +672,25 @@
  */
 static const struct MIMEToDecoderMapping m2d_map[] = 
   {
-    { "image/x-bmp", CODEC_ID_BMP },
+
+#if LIBAVCODEC_BUILD >= AV_VERSION_INT(54,25,0)
+       { "image/x-bmp", AV_CODEC_ID_BMP },
+    { "image/gif", AV_CODEC_ID_GIF },
+    { "image/jpeg", AV_CODEC_ID_MJPEG },
+    { "image/png", AV_CODEC_ID_PNG },
+    { "image/x-png", AV_CODEC_ID_PNG },
+    { "image/x-portable-pixmap", AV_CODEC_ID_PPM },
+    { NULL, AV_CODEC_ID_NONE }
+#else
+       { "image/x-bmp", CODEC_ID_BMP },
     { "image/gif", CODEC_ID_GIF },
     { "image/jpeg", CODEC_ID_MJPEG },
     { "image/png", CODEC_ID_PNG },
     { "image/x-png", CODEC_ID_PNG },
     { "image/x-portable-pixmap", CODEC_ID_PPM },
     { NULL, CODEC_ID_NONE }
+#endif
+
   };
 
 




reply via email to

[Prev in Thread] Current Thread [Next in Thread]