[FFmpeg-devel] [PATCH]Remove H264Context from vdpau_internal.h

Carl Eugen Hoyos cehoyos
Sun Jan 11 03:14:46 CET 2009


Hi!

Attached patch makes ugly #undefs in future vdpau patches unneeded.

Please comment, Carl Eugen
-------------- next part --------------
Index: libavcodec/vdpau_internal.h
===================================================================
--- libavcodec/vdpau_internal.h	(revision 16523)
+++ libavcodec/vdpau_internal.h	(working copy)
@@ -25,11 +25,10 @@
 #define AVCODEC_VDPAU_INTERNAL_H
 
 #include <stdint.h>
-#include "h264.h"
 
 void ff_vdpau_add_data_chunk(MpegEncContext *s, const uint8_t *buf,
                              int buf_size);
-void ff_vdpau_h264_set_reference_frames(H264Context *h);
-void ff_vdpau_h264_picture_complete(H264Context *h);
+void ff_vdpau_h264_set_reference_frames(MpegEncContext *s);
+void ff_vdpau_h264_picture_complete(MpegEncContext *s);
 
 #endif /* AVCODEC_VDPAU_INTERNAL_H */
Index: libavcodec/h264.c
===================================================================
--- libavcodec/h264.c	(revision 16523)
+++ libavcodec/h264.c	(working copy)
@@ -7625,7 +7625,7 @@
         s->current_picture_ptr->pict_type= s->pict_type;
 
         if (ENABLE_H264_VDPAU_DECODER && avctx->codec_id == CODEC_ID_H264_VDPAU)
-            ff_vdpau_h264_set_reference_frames(h);
+            ff_vdpau_h264_set_reference_frames(s);
 
         if(!s->dropable) {
             execute_ref_pic_marking(h, h->mmco, h->mmco_index);
@@ -7636,7 +7636,7 @@
         h->prev_frame_num= h->frame_num;
 
         if (ENABLE_H264_VDPAU_DECODER && avctx->codec_id == CODEC_ID_H264_VDPAU)
-            ff_vdpau_h264_picture_complete(h);
+            ff_vdpau_h264_picture_complete(s);
 
         /*
          * FIXME: Error handling code does not seem to support interlaced
Index: libavcodec/vdpauvideo.c
===================================================================
--- libavcodec/vdpauvideo.c	(revision 16523)
+++ libavcodec/vdpauvideo.c	(working copy)
@@ -37,9 +37,9 @@
  * @{
  */
 
-void ff_vdpau_h264_set_reference_frames(H264Context *h)
+void ff_vdpau_h264_set_reference_frames(MpegEncContext *s)
 {
-    MpegEncContext * s = &h->s;
+    H264Context *h = s->avctx->priv_data;
     struct vdpau_render_state * render, * render_ref;
     VdpReferenceFrameH264 * rf, * rf2;
     Picture * pic;
@@ -126,9 +126,9 @@
     render->bitstream_buffers_used++;
 }
 
-void ff_vdpau_h264_picture_complete(H264Context *h)
+void ff_vdpau_h264_picture_complete(MpegEncContext *s)
 {
-    MpegEncContext * s = &h->s;
+    H264Context *h = s->avctx->priv_data;
     struct vdpau_render_state * render;
 
     render = (struct vdpau_render_state*)s->current_picture_ptr->data[0];



More information about the ffmpeg-devel mailing list