summaryrefslogtreecommitdiffstats
path: root/libhb/internal.h
diff options
context:
space:
mode:
authorjstebbins <[email protected]>2015-05-01 14:47:35 +0000
committerjstebbins <[email protected]>2015-05-01 14:47:35 +0000
commit58b25a7664d9d063b404ec39270ff4cdfa333979 (patch)
tree3807be923b500ddc3f618170b7bd7c4900204bdd /libhb/internal.h
parent3e30a6ef3a449ac4cadb60fa738cc58f974c1794 (diff)
libhb: Use a buffer flat to indicate EOF
... instead of a 0 length buffer. This fixes this issue: https://forum.handbrake.fr/viewtopic.php?f=12&t=31959 Theora can create 0 length output. These 0 length frames indicate duplicate frames. So we can't use 0 length buffers to indicate the end of the stream. git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@7143 b64f7644-9d1e-0410-96f1-a4d463321fa5
Diffstat (limited to 'libhb/internal.h')
-rw-r--r--libhb/internal.h27
1 files changed, 14 insertions, 13 deletions
diff --git a/libhb/internal.h b/libhb/internal.h
index 85ceb7474..30d8c24c8 100644
--- a/libhb/internal.h
+++ b/libhb/internal.h
@@ -83,6 +83,19 @@ struct hb_buffer_settings_s
#define HB_FRAME_KEY 0x0F
#define HB_FRAME_REF 0xF0
uint8_t frametype;
+
+// Picture flags used by filters
+#ifndef PIC_FLAG_REPEAT_FIRST_FIELD
+#define PIC_FLAG_REPEAT_FIRST_FIELD 0x0100
+#endif
+#ifndef PIC_FLAG_TOP_FIELD_FIRST
+#define PIC_FLAG_TOP_FIELD_FIRST 0x0008
+#endif
+#ifndef PIC_FLAG_PROGRESSIVE_FRAME
+#define PIC_FLAG_PROGRESSIVE_FRAME 0x0010
+#endif
+#define PIC_FLAG_REPEAT_FRAME 0x0200
+#define HB_BUF_FLAG_EOF 0x0400
uint16_t flags;
};
@@ -165,6 +178,7 @@ void hb_buffer_pool_init( void );
void hb_buffer_pool_free( void );
hb_buffer_t * hb_buffer_init( int size );
+hb_buffer_t * hb_buffer_eof_init( void );
hb_buffer_t * hb_frame_buffer_init( int pix_fmt, int w, int h);
void hb_buffer_init_planes( hb_buffer_t * b );
void hb_buffer_realloc( hb_buffer_t *, int size );
@@ -458,19 +472,6 @@ extern hb_filter_object_t hb_filter_qsv_pre;
extern hb_filter_object_t hb_filter_qsv_post;
#endif
-// Picture flags used by filters
-#ifndef PIC_FLAG_REPEAT_FIRST_FIELD
-#define PIC_FLAG_REPEAT_FIRST_FIELD 256
-#endif
-#ifndef PIC_FLAG_TOP_FIELD_FIRST
-#define PIC_FLAG_TOP_FIELD_FIRST 8
-#endif
-#ifndef PIC_FLAG_PROGRESSIVE_FRAME
-#define PIC_FLAG_PROGRESSIVE_FRAME 16
-#endif
-
-#define PIC_FLAG_REPEAT_FRAME 512
-
extern hb_work_object_t * hb_objects;
#define HB_WORK_IDLE 0