]> git.sesse.net Git - ffmpeg/blobdiff - libavcodec/libdiracdec.c
simd add_hfyu_left_prediction
[ffmpeg] / libavcodec / libdiracdec.c
index 9050f8829cac2e20c260bab4e85dec294046b499..b403094198e2f4e0e93204a75fc62b8ee6043a8f 100644 (file)
@@ -36,8 +36,7 @@
 #include <libdirac_decoder/dirac_parser.h>
 
 /** contains a single frame returned from Dirac */
-typedef struct FfmpegDiracDecoderParams
-{
+typedef struct FfmpegDiracDecoderParams {
     /** decoder handle */
     dirac_decoder_t* p_decoder;
 
@@ -55,24 +54,22 @@ static enum PixelFormat GetFfmpegChromaFormat(dirac_chroma_t dirac_pix_fmt)
                       sizeof(ffmpeg_dirac_pixel_format_map[0]);
     int idx;
 
-    for (idx = 0; idx < num_formats; ++idx) {
-        if (ffmpeg_dirac_pixel_format_map[idx].dirac_pix_fmt == dirac_pix_fmt) {
+    for (idx = 0; idx < num_formats; ++idx)
+        if (ffmpeg_dirac_pixel_format_map[idx].dirac_pix_fmt == dirac_pix_fmt)
             return ffmpeg_dirac_pixel_format_map[idx].ff_pix_fmt;
-        }
-    }
     return PIX_FMT_NONE;
 }
 
 static av_cold int libdirac_decode_init(AVCodecContext *avccontext)
 {
 
-    FfmpegDiracDecoderParams *p_dirac_params = avccontext->priv_data ;
+    FfmpegDiracDecoderParams *p_dirac_params = avccontext->priv_data;
     p_dirac_params->p_decoder =  dirac_decoder_init(avccontext->debug);
 
     if (!p_dirac_params->p_decoder)
         return -1;
 
-    return 0 ;
+    return 0;
 }
 
 static int libdirac_decode_frame(AVCodecContext *avccontext,
@@ -90,25 +87,23 @@ static int libdirac_decode_frame(AVCodecContext *avccontext,
 
     *data_size = 0;
 
-    if (buf_size>0) {
+    if (buf_size > 0) {
         /* set data to decode into buffer */
-        dirac_buffer (p_dirac_params->p_decoder, buf, buf+buf_size);
-        if ((buf[4] &0x08) == 0x08 && (buf[4] & 0x03))
+        dirac_buffer(p_dirac_params->p_decoder, buf, buf + buf_size);
+        if ((buf[4] & 0x08) == 0x08 && (buf[4] & 0x03))
             avccontext->has_b_frames = 1;
     }
     while (1) {
          /* parse data and process result */
-        DecoderState state = dirac_parse (p_dirac_params->p_decoder);
-        switch (state)
-        {
+        DecoderState state = dirac_parse(p_dirac_params->p_decoder);
+        switch (state) {
         case STATE_BUFFER:
             return buf_size;
 
         case STATE_SEQUENCE:
         {
             /* tell FFmpeg about sequence details */
-            dirac_sourceparams_t *src_params =
-                                  &p_dirac_params->p_decoder->src_params;
+            dirac_sourceparams_t *src_params = &p_dirac_params->p_decoder->src_params;
 
             if (avcodec_check_dimensions(avccontext, src_params->width,
                                          src_params->height) < 0) {
@@ -123,9 +118,9 @@ static int libdirac_decode_frame(AVCodecContext *avccontext,
 
             avccontext->pix_fmt = GetFfmpegChromaFormat(src_params->chroma);
             if (avccontext->pix_fmt == PIX_FMT_NONE) {
-                av_log (avccontext, AV_LOG_ERROR,
-                        "Dirac chroma format %d not supported currently\n",
-                        src_params->chroma);
+                av_log(avccontext, AV_LOG_ERROR,
+                       "Dirac chroma format %d not supported currently\n",
+                       src_params->chroma);
                 return -1;
             }
 
@@ -141,8 +136,8 @@ static int libdirac_decode_frame(AVCodecContext *avccontext,
                                            avccontext->height);
 
             /* allocate output buffer */
-            if (p_dirac_params->p_out_frame_buf == NULL)
-                p_dirac_params->p_out_frame_buf = av_malloc (pict_size);
+            if (!p_dirac_params->p_out_frame_buf)
+                p_dirac_params->p_out_frame_buf = av_malloc(pict_size);
             buffer[0] = p_dirac_params->p_out_frame_buf;
             buffer[1] = p_dirac_params->p_out_frame_buf +
                         pic.linesize[0] * avccontext->height;
@@ -179,20 +174,20 @@ static int libdirac_decode_frame(AVCodecContext *avccontext,
 static av_cold int libdirac_decode_close(AVCodecContext *avccontext)
 {
     FfmpegDiracDecoderParams *p_dirac_params = avccontext->priv_data;
-    dirac_decoder_close (p_dirac_params->p_decoder);
+    dirac_decoder_close(p_dirac_params->p_decoder);
 
     av_freep(&p_dirac_params->p_out_frame_buf);
 
-    return 0 ;
+    return 0;
 }
 
-static void libdirac_flush (AVCodecContext *avccontext)
+static void libdirac_flush(AVCodecContext *avccontext)
 {
     /* Got a seek request. We will need free memory held in the private
      * context and free the current Dirac decoder handle and then open
      * a new decoder handle. */
-    libdirac_decode_close (avccontext);
-    libdirac_decode_init (avccontext);
+    libdirac_decode_close(avccontext);
+    libdirac_decode_init(avccontext);
     return;
 }
 
@@ -210,4 +205,4 @@ AVCodec libdirac_decoder = {
     CODEC_CAP_DELAY,
     .flush = libdirac_flush,
     .long_name = NULL_IF_CONFIG_SMALL("libdirac Dirac 2.2"),
-} ;
+};