decoder: refactor pf_decode_* callbacks
Use only one callback for every decoder types: int (*pf_decode)(decoder_t *, block_t *p_block); There is now only one way to send output frames/blocks from a decoder module: using decoder_QueueVideo(), decoder_QueueAudio() and decoder_QueueSub() functions. This fixes transcoding not receiving any output when a decoder used decoder_Queue*() function. The pf_packetize callback is kept unchanged. A packetizer shouldn't be asynchronous at all (and this simplify the locking for decoder core). The pf_decode callback returns, for now, only one value: SUCCESS. This will allow a module to send more status.
Showing with 1372 additions and 1363 deletions