| @@ -381,6 +381,7 @@ static int flv_same_video_codec(AVCodecParameters *vpar, uint32_t flv_codecid) · 380 unmodified lines |
| 381 | return 1; | 381 | return 1; |
| 382 | | 382 | |
| 383 | switch (flv_codecid) { | 383 | switch (flv_codecid) { |
| | 384 | case FLV_CODECID_X_HEVC: |
| 384 | case MKBETAG('h', 'v', 'c', '1'): | 385 | case MKBETAG('h', 'v', 'c', '1'): |
| 385 | return vpar->codec_id == AV_CODEC_ID_HEVC; | 386 | return vpar->codec_id == AV_CODEC_ID_HEVC; |
| 386 | case MKBETAG('a', 'v', '0', '1'): | 387 | case MKBETAG('a', 'v', '0', '1'): |
| @@ -414,6 +415,7 @@ static int flv_set_video_codec(AVFormatContext *s, AVStream *vstream, · 27 unmodified lines |
| 414 | enum AVCodecID old_codec_id = vstream->codecpar->codec_id; | 415 | enum AVCodecID old_codec_id = vstream->codecpar->codec_id; |
| 415 | | 416 | |
| 416 | switch (flv_codecid) { | 417 | switch (flv_codecid) { |
| | 418 | case FLV_CODECID_X_HEVC: |
| 417 | case MKBETAG('h', 'v', 'c', '1'): | 419 | case MKBETAG('h', 'v', 'c', '1'): |
| 418 | par->codec_id = AV_CODEC_ID_HEVC; | 420 | par->codec_id = AV_CODEC_ID_HEVC; |
| 419 | vstreami->need_parsing = AVSTREAM_PARSE_HEADERS; | 421 | vstreami->need_parsing = AVSTREAM_PARSE_HEADERS; |
| @@ -1660,8 +1662,8 @@ retry_duration: · 1240 unmodified lines |
| 1660 | } | 1662 | } |
| 1661 | | 1663 | |
| 1662 | if (st->codecpar->codec_id == AV_CODEC_ID_MPEG4 || | 1664 | if (st->codecpar->codec_id == AV_CODEC_ID_MPEG4 || |
| 1663 | (st->codecpar->codec_id == AV_CODEC_ID_H264 && (!enhanced_flv || type == PacketTypeCodedFrames)) || | 1665 | ((st->codecpar->codec_id == AV_CODEC_ID_H264 || st->codecpar->codec_id == AV_CODEC_ID_HEVC) && |
| 1664 | (st->codecpar->codec_id == AV_CODEC_ID_HEVC && type == PacketTypeCodedFrames)) { | 1666 | (!enhanced_flv || type == PacketTypeCodedFrames))) { |
| 1665 | // sign extension | 1667 | // sign extension |
| 1666 | int32_t cts = (avio_rb24(s->pb) + 0xff800000) ^ 0xff800000; | 1668 | int32_t cts = (avio_rb24(s->pb) + 0xff800000) ^ 0xff800000; |
| 1667 | pts = av_sat_add64(dts, cts); | 1669 | pts = av_sat_add64(dts, cts); |