| 425 | } |
| 426 | |
| 427 | static void reader_send_eof( hb_work_private_t * r ) |
| 428 | { |
| 429 | int ii; |
| 430 | |
| 431 | // send eof buffers downstream to decoders to signal we're done. |
| 432 | push_buf(r, r->job->fifo_in, hb_buffer_eof_init()); |
| 433 | |
| 434 | hb_audio_t *audio; |
| 435 | for (ii = 0; (audio = hb_list_item(r->job->list_audio, ii)); ++ii) |
| 436 | { |
| 437 | if (audio->priv.fifo_in) |
| 438 | push_buf(r, audio->priv.fifo_in, hb_buffer_eof_init()); |
| 439 | } |
| 440 | |
| 441 | hb_subtitle_t *subtitle; |
| 442 | for (ii = 0; (subtitle = hb_list_item(r->job->list_subtitle, ii)); ++ii) |
| 443 | { |
| 444 | if (subtitle->fifo_in) |
| 445 | { |
| 446 | push_buf(r, subtitle->fifo_in, hb_buffer_eof_init()); |
| 447 | } |
| 448 | } |
| 449 | hb_log("reader: done. %d scr changes", r->demux.scr_changes); |
| 450 | } |
| 451 | |
| 452 | static int reader_work( hb_work_object_t * w, hb_buffer_t ** buf_in, |
| 453 | hb_buffer_t ** buf_out) |
no test coverage detected