/* Holds the output PTS from x264, for use by b-frame offsets in muxmp4.c */
int64_t renderOffset;
- // VOB subtitle packets:
+ // PICTURESUB subtitle packets:
// Location and size of the subpicture.
int x;
int y;
int width;
int height;
+ hb_buffer_t * next_subpicture;
// Video packets (after processing by the hb_sync_video work-object):
- // A (copy of a) VOB subtitle packet that needs to be burned into this video packet by the hb_render work-object.
+ // A (copy of a) PICTURESUB subtitle packet that needs to be burned into this video packet by the hb_render work-object.
// Subtitles that are simply passed thru are NOT attached to the associated video packets.
hb_buffer_t * sub;
void hb_fifo_push_wait( hb_fifo_t *, hb_buffer_t * );
int hb_fifo_full_wait( hb_fifo_t * f );
void hb_fifo_push_head( hb_fifo_t *, hb_buffer_t * );
+void hb_fifo_push_list_element( hb_fifo_t *fifo, hb_buffer_t *buffer_list );
+hb_buffer_t * hb_fifo_get_list_element( hb_fifo_t *fifo );
void hb_fifo_close( hb_fifo_t ** );
void hb_fifo_flush( hb_fifo_t * f );
const char * path, int title_index,
hb_list_t * list_title, int preview_count,
int store_previews, uint64_t min_duration );
-hb_thread_t * hb_work_init( hb_list_t * jobs, int cpu_count,
+hb_thread_t * hb_work_init( hb_list_t * jobs,
volatile int * die, int * error, hb_job_t ** job );
hb_thread_t * hb_reader_init( hb_job_t * );
hb_work_object_t * hb_muxer_init( hb_job_t * );
WORK_ENCLAME,
WORK_ENCVORBIS,
WORK_ENC_CA_AAC,
+ WORK_ENCAC3,
WORK_MUX
};
FILTER_ROTATE
};
+// 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
+
extern hb_work_object_t * hb_objects;
#define HB_WORK_IDLE 0