2015-10-11 Carl Hetherington <cth@carlh.net>
+ * Provide progress indication when finding
+ subtitles (#711).
+
* Updated ru_RU translation from Igor Voytovich.
* Updated pl_PL translation from Marek Skrzelowski.
_need_video_length = _format_context->duration == AV_NOPTS_VALUE;
if (!_need_video_length) {
_video_length = (double (_format_context->duration) / AV_TIME_BASE) * video_frame_rate().get ();
- } else if (job) {
- job->sub (_("Finding length"));
- job->set_progress_unknown ();
}
if (job) {
- job->sub (_("Finding subtitles"));
+ if (_need_video_length) {
+ job->sub (_("Finding length and subtitles"));
+ } else {
+ job->sub (_("Finding subtitles"));
+ }
}
/* Run through until we find:
* so they are ok).
*/
+ int64_t const len = _file_group.length ();
while (true) {
int r = av_read_frame (_format_context, &_packet);
if (r < 0) {
}
if (job) {
- job->set_progress_unknown ();
+ if (len > 0) {
+ job->set_progress (float (_format_context->pb->pos) / len);
+ } else {
+ job->set_progress_unknown ();
+ }
}
AVCodecContext* context = _format_context->streams[_packet.stream_index]->codec;