summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorWim Taymans <wim.taymans@collabora.co.uk>2010-10-06 18:23:57 +0200
committerWim Taymans <wim.taymans@collabora.co.uk>2010-10-06 18:23:57 +0200
commit48e612afda66003a5ce9a0b399a2e4aaf3030448 (patch)
treef51499eaaf1b81ee3de667f67506b32798e8f7da
parentb41aab36905be6f822f0e102b291d8630474bc42 (diff)
ffdec: add fixmes
-rw-r--r--ext/ffmpeg/gstffmpegdec.c8
1 files changed, 8 insertions, 0 deletions
diff --git a/ext/ffmpeg/gstffmpegdec.c b/ext/ffmpeg/gstffmpegdec.c
index d2649a5..41baec4 100644
--- a/ext/ffmpeg/gstffmpegdec.c
+++ b/ext/ffmpeg/gstffmpegdec.c
@@ -1823,9 +1823,17 @@ gst_ffmpegdec_video_frame (GstFFMpegDec * ffmpegdec,
} else if (out_timestamp != GST_CLOCK_TIME_NONE) {
GstFormat out_fmt = GST_FORMAT_DEFAULT;
GST_LOG_OBJECT (ffmpegdec, "Using offset converted from timestamp");
+ /* FIXME, we should really remove this as it's not nice at all to do
+ * upstream queries for each frame to get the frame offset. We also can't
+ * really remove this because it is the only way of setting frame offsets
+ * on outgoing buffers. We should have metadata so that the upstream peer
+ * can set a frame number on the encoded data. */
gst_pad_query_peer_convert (ffmpegdec->sinkpad,
GST_FORMAT_TIME, out_timestamp, &out_fmt, &out_offset);
} else if (dec_info->offset != GST_BUFFER_OFFSET_NONE) {
+ /* FIXME, the input offset is input media specific and might not
+ * be the same for the output media. (byte offset as input, frame number
+ * as output, for example) */
GST_LOG_OBJECT (ffmpegdec, "using in_offset %" G_GINT64_FORMAT,
dec_info->offset);
out_offset = dec_info->offset;