mirror of
https://gitlab.freedesktop.org/gstreamer/gstreamer.git
synced 2025-02-17 11:45:25 +00:00
ext/mpeg2dec/gstmpeg2dec.c: Add support for mpeg2dec-0.4.0 (released two weeks ago). See #130416.
Original commit message from CVS: 2004-01-03 Ronald Bultje <rbultje@ronald.bitfreak.net> * ext/mpeg2dec/gstmpeg2dec.c: Add support for mpeg2dec-0.4.0 (released two weeks ago). See #130416.
This commit is contained in:
parent
8e017d76dd
commit
ddc2c60a03
2 changed files with 36 additions and 3 deletions
25
ChangeLog
25
ChangeLog
|
@ -1,3 +1,28 @@
|
|||
2004-01-03 Ronald Bultje <rbultje@ronald.bitfreak.net>
|
||||
|
||||
* ext/mpeg2dec/gstmpeg2dec.c:
|
||||
Add support for mpeg2dec-0.4.0 (released two weeks ago). See
|
||||
#130416.
|
||||
|
||||
2004-01-03 Ronald Bultje <rbultje@ronald.bitfreak.net>
|
||||
|
||||
* configure.ac:
|
||||
* ext/xvid/gstxvid.c: (gst_xvid_init), (gst_xvid_error),
|
||||
(gst_xvid_structure_to_csp), (gst_xvid_csp_to_caps):
|
||||
* ext/xvid/gstxvid.h:
|
||||
* ext/xvid/gstxviddec.c: (gst_xviddec_class_init),
|
||||
(gst_xviddec_init), (gst_xviddec_setup), (gst_xviddec_chain),
|
||||
(gst_xviddec_src_link), (gst_xviddec_sink_link),
|
||||
(gst_xviddec_change_state):
|
||||
* ext/xvid/gstxviddec.h:
|
||||
* ext/xvid/gstxvidenc.c: (gst_xvidenc_profile_get_type),
|
||||
(gst_xvidenc_base_init), (gst_xvidenc_class_init),
|
||||
(gst_xvidenc_init), (gst_xvidenc_setup), (gst_xvidenc_chain),
|
||||
(gst_xvidenc_link), (gst_xvidenc_set_property),
|
||||
(gst_xvidenc_get_property), (gst_xvidenc_change_state):
|
||||
* ext/xvid/gstxvidenc.h:
|
||||
Update xvid plugin to latest xvid (1.0.0-beta3) API.
|
||||
|
||||
2004-01-03 Ronald Bultje <rbultje@ronald.bitfreak.net>
|
||||
|
||||
* gst/rtp/rtp-packet.c:
|
||||
|
|
|
@ -436,7 +436,11 @@ gst_mpeg2dec_chain (GstPad *pad, GstData *_data)
|
|||
GST_DEBUG ("have pts: %" G_GINT64_FORMAT " (%" G_GINT64_FORMAT ")",
|
||||
mpeg_pts, MPEGTIME_TO_GSTTIME (mpeg_pts));
|
||||
|
||||
#if MPEG2_RELEASE >= MPEG2_VERSION(0,4,0)
|
||||
mpeg2_tag_picture (mpeg2dec->decoder, mpeg_pts&0xffffffff, mpeg_pts>>32);
|
||||
#else
|
||||
mpeg2_pts (mpeg2dec->decoder, mpeg_pts);
|
||||
#endif
|
||||
}
|
||||
else {
|
||||
GST_DEBUG ("no pts");
|
||||
|
@ -553,18 +557,22 @@ gst_mpeg2dec_chain (GstPad *pad, GstData *_data)
|
|||
if (mpeg2dec->discont_state == MPEG2DEC_DISC_NEW_KEYFRAME && key_frame)
|
||||
mpeg2dec->discont_state = MPEG2DEC_DISC_NONE;
|
||||
|
||||
#if MPEG2_RELEASE < MPEG2_VERSION(0,4,0)
|
||||
if (picture->flags & PIC_FLAG_PTS) {
|
||||
GstClockTime time = MPEGTIME_TO_GSTTIME (picture->pts);
|
||||
#else
|
||||
if (1) {
|
||||
GstClockTime time = MPEGTIME_TO_GSTTIME ((guint64) picture->tag2 << 32 | picture->tag);
|
||||
#endif
|
||||
|
||||
GST_DEBUG ("picture had pts %" G_GINT64_FORMAT, time);
|
||||
GST_BUFFER_TIMESTAMP (outbuf) = time;
|
||||
|
||||
mpeg2dec->next_time = time;
|
||||
GST_BUFFER_TIMESTAMP (outbuf) = mpeg2dec->next_time = time;
|
||||
}
|
||||
else {
|
||||
GST_DEBUG ("picture didn't have pts using %" G_GINT64_FORMAT, mpeg2dec->next_time);
|
||||
GST_BUFFER_TIMESTAMP (outbuf) = mpeg2dec->next_time;
|
||||
}
|
||||
|
||||
mpeg2dec->next_time += (mpeg2dec->frame_period * picture->nb_fields) >> 1;
|
||||
|
||||
|
||||
|
|
Loading…
Reference in a new issue