+ /* Input format ie from demuxer (XXX: a lot of field could be invalid) */
+ es_format_t fmt_in;
+
+ /* Output format of decoder/packetizer */
+ es_format_t fmt_out;
+
+ /* Some decoders only accept packetized data (ie. not truncated) */
+ vlc_bool_t b_need_packetized;
+
+ /* Tell the decoder if it is allowed to drop frames */
+ vlc_bool_t b_pace_control;
+
+ picture_t * ( * pf_decode_video )( decoder_t *, block_t ** );
+ aout_buffer_t * ( * pf_decode_audio )( decoder_t *, block_t ** );
+ subpicture_t * ( * pf_decode_sub) ( decoder_t *, block_t ** );
+ block_t * ( * pf_packetize ) ( decoder_t *, block_t ** );
+
+ /*
+ * Buffers allocation
+ */
+
+ /* Audio output callbacks */
+ aout_buffer_t * ( * pf_aout_buffer_new) ( decoder_t *, int );
+ void ( * pf_aout_buffer_del) ( decoder_t *, aout_buffer_t * );
+
+ /* Video output callbacks */
+ picture_t * ( * pf_vout_buffer_new) ( decoder_t * );
+ void ( * pf_vout_buffer_del) ( decoder_t *, picture_t * );
+ void ( * pf_picture_link) ( decoder_t *, picture_t * );
+ void ( * pf_picture_unlink) ( decoder_t *, picture_t * );