[libbluray-devel] commit: Added overlay.h (hpi1 )

git at videolan.org git at videolan.org
Sun Sep 5 14:59:50 CEST 2010


libbluray | branch: master | hpi1 <hpi1 at anonymous.org> | Sun Sep  5 15:54:28 2010 +0300| [8c66936b0344ebfe6d8a2720ef357e45934684e9] | committer: hpi1 

Added overlay.h

> http://git.videolan.org/gitweb.cgi/libbluray.git/?a=commit;h=8c66936b0344ebfe6d8a2720ef357e45934684e9
---

 src/Makefile.am                  |    3 +-
 src/libbluray/decoders/overlay.h |   51 ++++++++++++++++++++++++++++++++++++++
 src/libbluray/decoders/pg.h      |   14 +---------
 3 files changed, 55 insertions(+), 13 deletions(-)

diff --git a/src/Makefile.am b/src/Makefile.am
index cdb5531..df3ec43 100644
--- a/src/Makefile.am
+++ b/src/Makefile.am
@@ -53,6 +53,7 @@ libbluray_la_SOURCES=libbluray/bluray.h \
 	libbluray/decoders/pes_buffer.c \
 	libbluray/decoders/m2ts_demux.h \
 	libbluray/decoders/m2ts_demux.c \
+	libbluray/decoders/overlay.h \
 	libbluray/decoders/pg.h \
 	libbluray/decoders/pg_decode.h \
 	libbluray/decoders/pg_decode.c \
@@ -83,7 +84,7 @@ libbluray_la_SOURCES=libbluray/bluray.h \
 	util/log_control.h \
 	util/bits.h \
 	util/logging.h
-libbluray_la_HEADERS= libbluray/bluray.h file/filesystem.h util/log_control.h libbluray/keys.h
+libbluray_la_HEADERS= libbluray/bluray.h file/filesystem.h util/log_control.h libbluray/keys.h libbluray/decoders/overlay.h
 libbluray_la_LDFLAGS= -version-info $(LIB_VERSION_INFO) $(DLOPEN_LDFLAGS)
 
 if USING_BDJAVA
diff --git a/src/libbluray/decoders/overlay.h b/src/libbluray/decoders/overlay.h
new file mode 100644
index 0000000..f7775c4
--- /dev/null
+++ b/src/libbluray/decoders/overlay.h
@@ -0,0 +1,51 @@
+/*
+ * This file is part of libbluray
+ * Copyright (C) 2010       hpi1
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+ * License as published by the Free Software Foundation; either
+ * version 2.1 of the License, or (at your option) any later version.
+ *
+ * This library 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
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this library. If not, see
+ * <http://www.gnu.org/licenses/>.
+ */
+
+#ifndef BD_OVERLAY_H_
+#define BD_OVERLAY_H_
+
+#include <stdint.h>
+
+typedef struct bd_pg_palette_entry_s {
+    uint8_t Y;
+    uint8_t Cr;
+    uint8_t Cb;
+    uint8_t T;
+} BD_PG_PALETTE_ENTRY;
+
+typedef struct bd_pg_rle_elem_s {
+    uint16_t len;
+    uint16_t color;
+} BD_PG_RLE_ELEM;
+
+typedef struct bd_overlay_s {
+    int64_t  pts;
+    uint8_t  plane; /* 0 - PG, 1 - IG */
+
+    uint16_t x;
+    uint16_t y;
+    uint16_t w;
+    uint16_t h;
+
+    const BD_PG_PALETTE_ENTRY * palette;
+    const BD_PG_RLE_ELEM      * img;
+} BD_OVERLAY;
+
+
+#endif // BD_OVERLAY_H_
diff --git a/src/libbluray/decoders/pg.h b/src/libbluray/decoders/pg.h
index f5e0230..c6b54b3 100644
--- a/src/libbluray/decoders/pg.h
+++ b/src/libbluray/decoders/pg.h
@@ -20,6 +20,8 @@
 #if !defined(_BD_PG_H_)
 #define _BD_PG_H_
 
+#include "overlay.h"
+
 #include <stdint.h>
 
 typedef struct {
@@ -62,13 +64,6 @@ typedef struct {
 } BD_PG_COMPOSITION_OBJECT;
 
 typedef struct {
-    uint8_t Y;
-    uint8_t Cr;
-    uint8_t Cb;
-    uint8_t T;
-} BD_PG_PALETTE_ENTRY;
-
-typedef struct {
     int64_t pts;
 
     uint8_t id;
@@ -78,11 +73,6 @@ typedef struct {
 } BD_PG_PALETTE;
 
 typedef struct {
-    uint8_t  color;
-    uint16_t len;
-} BD_PG_RLE_ELEM;
-
-typedef struct {
     int64_t pts;
 
     uint16_t id;



More information about the libbluray-devel mailing list