mirror of
https://github.com/k4yt3x/video2x.git
synced 2024-12-28 06:59:11 +00:00
fix(encoder): decreasing PTS precision with increasing video duration (#1269)
Signed-off-by: k4yt3x <i@k4yt3x.com>
This commit is contained in:
parent
bf5917b084
commit
709cf08760
@ -5,6 +5,12 @@ All notable changes to this project will be documented in this file.
|
|||||||
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.1.0/),
|
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.1.0/),
|
||||||
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
|
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
|
||||||
|
|
||||||
|
## [Unreleased]
|
||||||
|
|
||||||
|
### Fixed
|
||||||
|
|
||||||
|
- The issue of decreasing PTS precision with increasing video duration (#1269).
|
||||||
|
|
||||||
## [6.3.0] - 2024-12-20
|
## [6.3.0] - 2024-12-20
|
||||||
|
|
||||||
### Added
|
### Added
|
||||||
|
@ -262,8 +262,7 @@ int Encoder::write_frame(AVFrame *frame, int64_t frame_idx) {
|
|||||||
frame->pict_type = AV_PICTURE_TYPE_NONE;
|
frame->pict_type = AV_PICTURE_TYPE_NONE;
|
||||||
|
|
||||||
// Calculate this frame's presentation timestamp (PTS)
|
// Calculate this frame's presentation timestamp (PTS)
|
||||||
frame->pts = frame_idx * (enc_ctx_->time_base.den * enc_ctx_->framerate.den /
|
frame->pts = av_rescale_q(frame_idx, av_inv_q(enc_ctx_->framerate), enc_ctx_->time_base);
|
||||||
(enc_ctx_->time_base.num * enc_ctx_->framerate.num));
|
|
||||||
|
|
||||||
// Convert the frame to the encoder's pixel format if needed
|
// Convert the frame to the encoder's pixel format if needed
|
||||||
if (frame->format != enc_ctx_->pix_fmt) {
|
if (frame->format != enc_ctx_->pix_fmt) {
|
||||||
|
Loading…
Reference in New Issue
Block a user