[vlc-commits] commit: Merged vout_pictures.c with video_output.c. (Laurent Aimar )

git at videolan.org git at videolan.org
Mon Oct 25 20:41:53 CEST 2010


vlc | branch: master | Laurent Aimar <fenrir at videolan.org> | Fri Oct 22 20:13:33 2010 +0200| [82676b9c941fe7e9c05a1d1758d4d4e4aa381a9b] | committer: Laurent Aimar 

Merged vout_pictures.c with video_output.c.

> http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=82676b9c941fe7e9c05a1d1758d4d4e4aa381a9b
---

 src/Makefile.am                  |    1 -
 src/video_output/video_output.c  |   70 ++++++++++++++++++++++++
 src/video_output/vout_pictures.c |  110 --------------------------------------
 3 files changed, 70 insertions(+), 111 deletions(-)

diff --git a/src/Makefile.am b/src/Makefile.am
index 6d75584..5671b5c 100644
--- a/src/Makefile.am
+++ b/src/Makefile.am
@@ -384,7 +384,6 @@ SOURCES_libvlc_common = \
 	video_output/postprocessing.c \
 	video_output/postprocessing.h \
 	video_output/video_output.c \
-	video_output/vout_pictures.c \
 	video_output/video_text.c \
 	video_output/video_epg.c \
 	video_output/video_widgets.c \
diff --git a/src/video_output/video_output.c b/src/video_output/video_output.c
index 915363c..124d689 100644
--- a/src/video_output/video_output.c
+++ b/src/video_output/video_output.c
@@ -368,6 +368,76 @@ void vout_FlushSubpictureChannel( vout_thread_t *vout, int channel )
                              channel);
 }
 
+/**
+ * It retreives a picture from the vout or NULL if no pictures are
+ * available yet.
+ *
+ * You MUST call vout_PutPicture or vout_ReleasePicture on it.
+ *
+ * You may use vout_HoldPicture(paired with vout_ReleasePicture) to keep a
+ * read-only reference.
+ */
+picture_t *vout_GetPicture(vout_thread_t *vout)
+{
+    /* Get lock */
+    vlc_mutex_lock(&vout->p->picture_lock);
+    picture_t *picture = picture_pool_Get(vout->p->decoder_pool);
+    if (picture) {
+        picture_Reset(picture);
+        picture->p_next = NULL;
+    }
+    vlc_mutex_unlock(&vout->p->picture_lock);
+
+    return picture;
+}
+
+/**
+ * It gives to the vout a picture to be displayed.
+ *
+ * The given picture MUST comes from vout_GetPicture.
+ *
+ * Becareful, after vout_PutPicture is called, picture_t::p_next cannot be
+ * read/used.
+ */
+void vout_PutPicture(vout_thread_t *vout, picture_t *picture)
+{
+    vlc_mutex_lock(&vout->p->picture_lock);
+
+    picture->p_next = NULL;
+    picture_fifo_Push(vout->p->decoder_fifo, picture);
+
+    vlc_mutex_unlock(&vout->p->picture_lock);
+
+    vout_control_Wake(&vout->p->control);
+}
+
+/**
+ * It releases a picture retreived by vout_GetPicture.
+ */
+void vout_ReleasePicture(vout_thread_t *vout, picture_t *picture)
+{
+    vlc_mutex_lock(&vout->p->picture_lock);
+
+    picture_Release(picture);
+
+    vlc_mutex_unlock(&vout->p->picture_lock);
+
+    vout_control_Wake(&vout->p->control);
+}
+
+/**
+ * It increment the reference counter of a picture retreived by
+ * vout_GetPicture.
+ */
+void vout_HoldPicture(vout_thread_t *vout, picture_t *picture)
+{
+    vlc_mutex_lock(&vout->p->picture_lock);
+
+    picture_Hold(picture);
+
+    vlc_mutex_unlock(&vout->p->picture_lock);
+}
+
 /* vout_Control* are usable by anyone at anytime */
 void vout_ControlChangeFullscreen(vout_thread_t *vout, bool fullscreen)
 {
diff --git a/src/video_output/vout_pictures.c b/src/video_output/vout_pictures.c
deleted file mode 100644
index cf98c2e..0000000
--- a/src/video_output/vout_pictures.c
+++ /dev/null
@@ -1,110 +0,0 @@
-/*****************************************************************************
- * vout_pictures.c :
- *****************************************************************************
- * Copyright (C) 2009-2010 Laurent Aimar
- * $Id$
- *
- * Authors: Laurent Aimar <fenrir _AT_ videolan _DOT_ org>
- *
- * This program is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation; either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston MA 02110-1301, USA.
- *****************************************************************************/
-
-/*****************************************************************************
- * Preamble
- *****************************************************************************/
-
-#ifdef HAVE_CONFIG_H
-# include "config.h"
-#endif
-#include <assert.h>
-
-#include <vlc_common.h>
-#include <libvlc.h>
-#include <vlc_vout.h>
-#include <vlc_picture_fifo.h>
-#include <vlc_picture_pool.h>
-
-#include "vout_internal.h"
-
-/**
- * It retreives a picture from the vout or NULL if no pictures are
- * available yet.
- *
- * You MUST call vout_PutPicture or vout_ReleasePicture on it.
- *
- * You may use vout_HoldPicture(paired with vout_ReleasePicture) to keep a
- * read-only reference.
- */
-picture_t *vout_GetPicture( vout_thread_t *p_vout )
-{
-    /* Get lock */
-    vlc_mutex_lock( &p_vout->p->picture_lock );
-    picture_t *p_pic = picture_pool_Get(p_vout->p->decoder_pool);
-    if (p_pic) {
-        picture_Reset(p_pic);
-        p_pic->p_next = NULL;
-    }
-    vlc_mutex_unlock( &p_vout->p->picture_lock );
-
-    return p_pic;
-}
-
-/**
- * It gives to the vout a picture to be displayed.
- *
- * The given picture MUST comes from vout_GetPicture.
- *
- * Becareful, after vout_PutPicture is called, picture_t::p_next cannot be
- * read/used.
- */
-void vout_PutPicture( vout_thread_t *p_vout, picture_t *p_pic )
-{
-    vlc_mutex_lock( &p_vout->p->picture_lock );
-
-    p_pic->p_next = NULL;
-    picture_fifo_Push(p_vout->p->decoder_fifo, p_pic);
-
-    vlc_mutex_unlock( &p_vout->p->picture_lock );
-
-    vout_control_Wake( &p_vout->p->control);
-}
-
-/**
- * It releases a picture retreived by vout_GetPicture.
- */
-void vout_ReleasePicture( vout_thread_t *p_vout, picture_t *p_pic  )
-{
-    vlc_mutex_lock( &p_vout->p->picture_lock );
-
-    picture_Release( p_pic );
-
-    vlc_mutex_unlock( &p_vout->p->picture_lock );
-
-    vout_control_Wake( &p_vout->p->control);
-}
-
-/**
- * It increment the reference counter of a picture retreived by
- * vout_GetPicture.
- */
-void vout_HoldPicture( vout_thread_t *p_vout, picture_t *p_pic )
-{
-    vlc_mutex_lock( &p_vout->p->picture_lock );
-
-    picture_Hold( p_pic );
-
-    vlc_mutex_unlock( &p_vout->p->picture_lock );
-}
-



More information about the vlc-commits mailing list