areBframes: boolean to note if b-frames are included in x264opts */
#define HB_VCODEC_MASK 0x0000FF
#define HB_VCODEC_FFMPEG 0x000001
-#define HB_VCODEC_XVID 0x000002
-#define HB_VCODEC_X264 0x000004
-#define HB_VCODEC_THEORA 0x000008
+#define HB_VCODEC_X264 0x000002
+#define HB_VCODEC_THEORA 0x000004
int vcodec;
float vquality;
int indepth_scan;
hb_subtitle_t ** select_subtitle;
- int subtitle_force;
char * native_language;
int angle; // dvd angle to encode
#define HB_ACODEC_LPCM 0x002000
#define HB_ACODEC_DCA 0x004000
#define HB_ACODEC_FFMPEG 0x008000
+#define HB_ACODEC_CA_AAC 0x010000
/* Audio Mixdown */
/* define some masks, used to extract the various information from the HB_AMIXDOWN_XXXX values */
int track;
int id;
enum subtype { PICTURESUB, TEXTSUB } format;
- enum subsource { VOBSUB, SRTSUB, CCSUB } source;
+ enum subsource { VOBSUB, SRTSUB, CC608SUB, CC708SUB } source;
enum subdest { RENDERSUB, PASSTHRUSUB } dest;
+ int force;
char lang[1024];
char iso639_2[4];
uint8_t type; /* Closed Caption, Childrens, Directors etc */
#ifdef __LIBHB__
/* Internal data */
hb_fifo_t * fifo_in; /* SPU ES */
- hb_fifo_t * fifo_raw; /* Decodec SPU */
+ hb_fifo_t * fifo_raw; /* Decoded SPU */
+ hb_fifo_t * fifo_sync;/* Synced */
+ hb_fifo_t * fifo_out; /* Correct Timestamps, ready to be muxed */
+ hb_mux_data_t * mux_data;
#endif
};
/* Pointer hb_audio_t so we have access to the info in the audio worker threads. */
hb_audio_t * audio;
+ /* Pointer hb_subtitle_t so we have access to the info in the subtitle worker threads. */
+ hb_subtitle_t * subtitle;
+
hb_work_private_t * private_data;
hb_thread_t * thread;
extern hb_work_object_t hb_sync;
extern hb_work_object_t hb_decmpeg2;
-extern hb_work_object_t hb_decsub;
+extern hb_work_object_t hb_decvobsub;
+extern hb_work_object_t hb_encvobsub;
+extern hb_work_object_t hb_deccc608;
extern hb_work_object_t hb_render;
extern hb_work_object_t hb_encavcodec;
-extern hb_work_object_t hb_encxvid;
extern hb_work_object_t hb_encx264;
extern hb_work_object_t hb_enctheora;
extern hb_work_object_t hb_deca52;
extern hb_work_object_t hb_encfaac;
extern hb_work_object_t hb_enclame;
extern hb_work_object_t hb_encvorbis;
+extern hb_work_object_t hb_encca_aac;
#define FILTER_OK 0
#define FILTER_DELAY 1