mirror of
https://gitlab.com/mbunkus/mkvtoolnix.git
synced 2024-12-23 19:31:44 +00:00
Added a field for specifying a factor that the timecode factory might need, e.g. in MPEG2 field-vs-frame situations.
This commit is contained in:
parent
309b6e2cdf
commit
e64f94534a
@ -98,7 +98,7 @@ struct packet_t {
|
||||
KaxBlock *block;
|
||||
KaxCluster *cluster;
|
||||
unsigned char *data;
|
||||
int length, ref_priority;
|
||||
int length, ref_priority, time_factor;
|
||||
int64_t timecode, bref, fref, duration, packet_num, assigned_timecode;
|
||||
int64_t unmodified_assigned_timecode, unmodified_duration;
|
||||
bool duration_mandatory, superseeded, gap_following;
|
||||
@ -111,7 +111,7 @@ struct packet_t {
|
||||
|
||||
packet_t():
|
||||
group(NULL), block(NULL), cluster(NULL), data(NULL), length(0),
|
||||
ref_priority(0),
|
||||
ref_priority(0), time_factor(1),
|
||||
timecode(0), bref(0), fref(0), duration(0),
|
||||
packet_num(0),
|
||||
assigned_timecode(0), unmodified_assigned_timecode(0),
|
||||
@ -125,7 +125,7 @@ struct packet_t {
|
||||
int64_t n_bref = -1,
|
||||
int64_t n_fref = -1):
|
||||
group(NULL), block(NULL), cluster(NULL), data(NULL), length(0),
|
||||
ref_priority(0),
|
||||
ref_priority(0), time_factor(1),
|
||||
timecode(n_timecode), bref(n_bref), fref(n_fref),
|
||||
duration(n_duration),
|
||||
packet_num(0),
|
||||
@ -140,7 +140,7 @@ struct packet_t {
|
||||
int64_t n_bref = -1,
|
||||
int64_t n_fref = -1):
|
||||
group(NULL), block(NULL), cluster(NULL), data(NULL), length(0),
|
||||
ref_priority(0),
|
||||
ref_priority(0), time_factor(1),
|
||||
timecode(n_timecode), bref(n_bref), fref(n_fref),
|
||||
duration(n_duration),
|
||||
packet_num(0),
|
||||
|
@ -225,6 +225,8 @@ mpeg1_2_video_packetizer_c::process(packet_cptr packet) {
|
||||
packet->duration = frame->duration;
|
||||
packet->bref = frame->firstRef;
|
||||
packet->fref = frame->secondRef;
|
||||
packet->time_factor =
|
||||
MPEG2_PICTURE_TYPE_FRAME == frame->pictureStructure ? 1 : 2;
|
||||
video_packetizer_c::process(packet);
|
||||
frame->data = NULL;
|
||||
delete frame;
|
||||
|
Loading…
Reference in New Issue
Block a user