diff -Naur mythtv-15826-old/libs/libavformat/mpegts.c mythtv-15826-new/libs/libavformat/mpegts.c
old
|
new
|
|
1609 | 1609 | pkt->pts = pes->pts; |
1610 | 1610 | pkt->dts = pes->dts; |
1611 | 1611 | pkt->pos = pes->startpos; |
1612 | | /* reset pts values */ |
1613 | | pes->pts = AV_NOPTS_VALUE; |
1614 | | pes->dts = AV_NOPTS_VALUE; |
1615 | | ts->stop_parse = 1; |
| 1612 | if (pes->st->codec->codec_id != CODEC_ID_H264) { |
| 1613 | /* reset pts values */ |
| 1614 | pes->pts = AV_NOPTS_VALUE; |
| 1615 | pes->dts = AV_NOPTS_VALUE; |
| 1616 | } |
| 1617 | ts->stop_parse = 1; |
1616 | 1618 | return; |
1617 | 1619 | } |
1618 | 1620 | } |
diff -Naur mythtv-15826-old/libs/libmythtv/avformatdecoder.cpp mythtv-15826-new/libs/libmythtv/avformatdecoder.cpp
old
|
new
|
|
1454 | 1454 | { |
1455 | 1455 | avcodec_thread_init(enc, thread_count); |
1456 | 1456 | enc->thread_count = thread_count; |
| 1457 | enc->skip_loop_filter = AVDISCARD_ALL; |
1457 | 1458 | } |
1458 | 1459 | |
1459 | 1460 | bool handled = false; |
… |
… |
|
3084 | 3085 | |
3085 | 3086 | AVStream *curstream = ic->streams[pkt->stream_index]; |
3086 | 3087 | |
3087 | | if (pkt->dts != (int64_t)AV_NOPTS_VALUE) |
3088 | | pts = (long long)(av_q2d(curstream->time_base) * pkt->dts * 1000); |
| 3088 | if (curstream->codec->codec_id == CODEC_ID_H264) { |
| 3089 | if (pkt->pts != (int64_t)AV_NOPTS_VALUE) |
| 3090 | pts = (long long)(av_q2d(curstream->time_base) * pkt->pts * 1000); |
| 3091 | } else { |
| 3092 | if (pkt->dts != (int64_t)AV_NOPTS_VALUE) |
| 3093 | pts = (long long)(av_q2d(curstream->time_base) * pkt->dts * 1000); |
| 3094 | } |
3089 | 3095 | |
3090 | 3096 | if (ringBuffer->isDVD() && |
3091 | 3097 | curstream->codec->codec_type == CODEC_TYPE_VIDEO) |
diff -Naur mythtv-15826-old/libs/libmythtv/nuppeldecoder.cpp mythtv-15826-new/libs/libmythtv/nuppeldecoder.cpp
old
|
new
|
|
672 | 672 | return false; |
673 | 673 | } |
674 | 674 | |
| 675 | int thread_count = 2; |
| 676 | if (CODEC_ID_H264 == mpa_vidctx->codec_id && mpa_vidctx->thread_count != thread_count) |
| 677 | { |
| 678 | avcodec_thread_init(mpa_vidctx, thread_count); |
| 679 | mpa_vidctx->thread_count = thread_count; |
| 680 | mpa_vidctx->skip_loop_filter = AVDISCARD_ALL; |
| 681 | } |
| 682 | |
675 | 683 | return true; |
676 | 684 | } |
677 | 685 | |