• Home
  • Raw
  • Download

Lines Matching refs:smokedec

52 static void gst_smokedec_init (GstSmokeDec * smokedec);
89 GST_ELEMENT_REGISTER_DEFINE (smokedec, "smokedec", GST_RANK_PRIMARY,
142 gst_smokedec_init (GstSmokeDec * smokedec) in gst_smokedec_init() argument
144 GST_DEBUG_OBJECT (smokedec, "gst_smokedec_init: initializing"); in gst_smokedec_init()
147 smokedec->sinkpad = in gst_smokedec_init()
150 gst_pad_set_chain_function (smokedec->sinkpad, gst_smokedec_chain); in gst_smokedec_init()
151 gst_element_add_pad (GST_ELEMENT (smokedec), smokedec->sinkpad); in gst_smokedec_init()
153 smokedec->srcpad = in gst_smokedec_init()
155 gst_pad_use_fixed_caps (smokedec->srcpad); in gst_smokedec_init()
156 gst_element_add_pad (GST_ELEMENT (smokedec), smokedec->srcpad); in gst_smokedec_init()
158 smokecodec_decode_new (&smokedec->info); in gst_smokedec_init()
174 GstSmokeDec *smokedec; in gst_smokedec_chain() local
185 smokedec = GST_SMOKEDEC (gst_pad_get_parent (pad)); in gst_smokedec_chain()
194 GST_LOG_OBJECT (smokedec, "got buffer of %lu bytes", size); in gst_smokedec_chain()
198 smokeret = smokecodec_parse_id (smokedec->info, data, size); in gst_smokedec_chain()
207 GST_DEBUG_OBJECT (smokedec, "reading header %08lx", *(gulong *) data); in gst_smokedec_chain()
208 smokecodec_parse_header (smokedec->info, data, size, &flags, &width, &height, in gst_smokedec_chain()
211 if (smokedec->height != height || smokedec->width != width || in gst_smokedec_chain()
212 smokedec->fps_num != fps_num || smokedec->fps_denom != fps_denom) { in gst_smokedec_chain()
215 GST_DEBUG_OBJECT (smokedec, "parameter change: %dx%d @ %d/%dfps", in gst_smokedec_chain()
218 smokedec->height = height; in gst_smokedec_chain()
219 smokedec->width = width; in gst_smokedec_chain()
227 gst_pad_set_caps (smokedec->srcpad, caps); in gst_smokedec_chain()
231 if (smokedec->need_keyframe) { in gst_smokedec_chain()
235 smokedec->need_keyframe = FALSE; in gst_smokedec_chain()
245 gst_buffer_set_caps (outbuf, GST_PAD_CAPS (smokedec->srcpad)); in gst_smokedec_chain()
249 time = smokedec->next_time; in gst_smokedec_chain()
256 smokedec->next_time = time + GST_BUFFER_DURATION (outbuf); in gst_smokedec_chain()
258 smokedec->next_time = -1; in gst_smokedec_chain()
260 smokeret = smokecodec_decode (smokedec->info, data, size, outdata); in gst_smokedec_chain()
264 GST_DEBUG_OBJECT (smokedec, "gst_smokedec_chain: sending buffer"); in gst_smokedec_chain()
265 ret = gst_pad_push (smokedec->srcpad, outbuf); in gst_smokedec_chain()
269 gst_object_unref (smokedec); in gst_smokedec_chain()
276 GST_ELEMENT_ERROR (smokedec, STREAM, DECODE, in gst_smokedec_chain()
283 GST_ELEMENT_ERROR (smokedec, STREAM, DECODE, in gst_smokedec_chain()
290 GST_DEBUG_OBJECT (smokedec, "dropping buffer while waiting for keyframe"); in gst_smokedec_chain()
296 GST_ELEMENT_ERROR (smokedec, STREAM, DECODE, in gst_smokedec_chain()