diff options
author | jstebbins <[email protected]> | 2015-05-01 14:47:35 +0000 |
---|---|---|
committer | jstebbins <[email protected]> | 2015-05-01 14:47:35 +0000 |
commit | 58b25a7664d9d063b404ec39270ff4cdfa333979 (patch) | |
tree | 3807be923b500ddc3f618170b7bd7c4900204bdd /libhb/internal.h | |
parent | 3e30a6ef3a449ac4cadb60fa738cc58f974c1794 (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.h | 27 |
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 |