summaryrefslogtreecommitdiff
path: root/ext/kate/gstkateenc.c
diff options
context:
space:
mode:
Diffstat (limited to 'ext/kate/gstkateenc.c')
-rw-r--r--ext/kate/gstkateenc.c60
1 files changed, 34 insertions, 26 deletions
diff --git a/ext/kate/gstkateenc.c b/ext/kate/gstkateenc.c
index 450e8e61e..db365691c 100644
--- a/ext/kate/gstkateenc.c
+++ b/ext/kate/gstkateenc.c
@@ -409,10 +409,6 @@ gst_kate_enc_create_buffer (GstKateEnc * ke, kate_packet * kp,
GST_BUFFER_TIMESTAMP (buffer) = timestamp;
GST_BUFFER_DURATION (buffer) = duration;
- /* data packets are each on their own page */
-// if (!header)
-// GST_BUFFER_FLAG_SET (buffer, GST_BUFFER_FLAG_DISCONT);
-
return buffer;
}
@@ -428,9 +424,6 @@ gst_kate_enc_push_buffer (GstKateEnc * ke, GstBuffer * buffer)
GST_BUFFER_TIMESTAMP (buffer) + GST_BUFFER_DURATION (buffer);
}
- /* Hack to flush each packet on its own page - taken off the CMML encoder element */
- GST_BUFFER_DURATION (buffer) = G_MAXINT64;
-
flow = gst_pad_push (ke->srcpad, buffer);
if (G_UNLIKELY (flow != GST_FLOW_OK)) {
GST_WARNING_OBJECT (ke->srcpad, "push flow: %s", gst_flow_get_name (flow));
@@ -608,7 +601,8 @@ gst_kate_enc_send_headers (GstKateEnc * ke)
break;
} else {
GST_ELEMENT_ERROR (ke, STREAM, ENCODE, (NULL),
- ("kate_encode_headers: %d", ret));
+ ("Failed encoding headers: %s",
+ gst_kate_util_get_error_message (ret)));
rflow = GST_FLOW_ERROR;
break;
}
@@ -656,7 +650,8 @@ gst_kate_enc_flush_headers (GstKateEnc * ke)
ke->headers_sent = TRUE;
GST_INFO_OBJECT (ke, "headers flushed");
} else {
- GST_WARNING_OBJECT (ke, "Failed to flush headers: %d", rflow);
+ GST_WARNING_OBJECT (ke, "Failed to flush headers: %s",
+ gst_flow_get_name (rflow));
}
}
return rflow;
@@ -694,7 +689,8 @@ gst_kate_enc_generate_keepalive (GstKateEnc * ke, GstClockTime timestamp)
GST_DEBUG_OBJECT (ke, "keepalive at %f", t);
ret = kate_encode_keepalive (&ke->k, t, &kp);
if (ret < 0) {
- GST_WARNING_OBJECT (ke, "Failed to encode keepalive packet: %d", ret);
+ GST_WARNING_OBJECT (ke, "Failed to encode keepalive packet: %s",
+ gst_kate_util_get_error_message (ret));
} else {
kate_int64_t granpos = kate_encode_get_granule (&ke->k);
GST_LOG_OBJECT (ke, "Keepalive packet encoded");
@@ -724,7 +720,8 @@ gst_kate_enc_flush_waiting (GstKateEnc * ke, GstClockTime now)
ret = kate_encode_text (&ke->k, t0, t1, "", 0, &kp);
if (G_UNLIKELY (ret < 0)) {
GST_ELEMENT_ERROR (ke, STREAM, ENCODE, (NULL),
- ("kate_encode_text: %d", ret));
+ ("Failed to encode text packet: %s",
+ gst_kate_util_get_error_message (ret)));
rflow = GST_FLOW_ERROR;
} else {
rflow =
@@ -735,7 +732,8 @@ gst_kate_enc_flush_waiting (GstKateEnc * ke, GstClockTime now)
if (rflow == GST_FLOW_OK) {
GST_DEBUG_OBJECT (ke, "delayed SPU packet flushed");
} else {
- GST_WARNING_OBJECT (ke, "Failed to flush delayed SPU packet: %d", rflow);
+ GST_WARNING_OBJECT (ke, "Failed to flush delayed SPU packet: %s",
+ gst_flow_get_name (rflow));
}
/* forget it even if we couldn't flush it */
@@ -845,19 +843,21 @@ gst_kate_enc_chain_spu (GstKateEnc * ke, GstBuffer * buf)
ret = kate_encode_set_region (&ke->k, kregion);
if (G_UNLIKELY (ret < 0)) {
GST_ELEMENT_ERROR (ke, STREAM, ENCODE, (NULL),
- ("kate_encode_set_region: %d", ret));
+ ("Failed to set region: %s", gst_kate_util_get_error_message (ret)));
rflow = GST_FLOW_ERROR;
} else {
ret = kate_encode_set_palette (&ke->k, kpalette);
if (G_UNLIKELY (ret < 0)) {
GST_ELEMENT_ERROR (ke, STREAM, ENCODE, (NULL),
- ("kate_encode_set_palette: %d", ret));
+ ("Failed to set palette: %s",
+ gst_kate_util_get_error_message (ret)));
rflow = GST_FLOW_ERROR;
} else {
ret = kate_encode_set_bitmap (&ke->k, kbitmap);
if (G_UNLIKELY (ret < 0)) {
GST_ELEMENT_ERROR (ke, STREAM, ENCODE, (NULL),
- ("kate_encode_set_bitmap: %d", ret));
+ ("Failed to set bitmap: %s",
+ gst_kate_util_get_error_message (ret)));
rflow = GST_FLOW_ERROR;
} else {
/* Some SPUs have no hide time - so I'm going to delay the encoding of the packet
@@ -879,7 +879,8 @@ gst_kate_enc_chain_spu (GstKateEnc * ke, GstBuffer * buf)
ret = kate_encode_text (&ke->k, t0, t1, "", 0, &kp);
if (G_UNLIKELY (ret < 0)) {
GST_ELEMENT_ERROR (ke, STREAM, ENCODE, (NULL),
- ("Failed to encode empty text for SPU buffer: %d", ret));
+ ("Failed to encode empty text for SPU buffer: %s",
+ gst_kate_util_get_error_message (ret)));
rflow = GST_FLOW_ERROR;
} else {
rflow =
@@ -921,7 +922,8 @@ gst_kate_enc_chain_text (GstKateEnc * ke, GstBuffer * buf,
if (G_UNLIKELY (ret < 0)) {
GST_ELEMENT_ERROR (ke, STREAM, ENCODE, (NULL),
- ("kate_encode_set_markup_type: %d", ret));
+ ("Failed to set markup type: %s",
+ gst_kate_util_get_error_message (ret)));
rflow = GST_FLOW_ERROR;
} else {
const char *text;
@@ -943,7 +945,7 @@ gst_kate_enc_chain_text (GstKateEnc * ke, GstBuffer * buf,
ret = kate_encode_text (&ke->k, t0, t1, text, text_len, &kp);
if (G_UNLIKELY (ret < 0)) {
GST_ELEMENT_ERROR (ke, STREAM, ENCODE, (NULL),
- ("Failed to encode text: %d", ret));
+ ("Failed to encode text: %s", gst_kate_util_get_error_message (ret)));
rflow = GST_FLOW_ERROR;
} else {
rflow = gst_kate_enc_chain_push_packet (ke, &kp, start, stop - start + 1);
@@ -1030,21 +1032,23 @@ gst_kate_enc_change_state (GstElement * element, GstStateChange transition)
GST_DEBUG_OBJECT (ke, "READY -> PAUSED, initializing kate state");
ret = kate_info_init (&ke->ki);
if (ret < 0) {
- GST_WARNING_OBJECT (ke, "failed to initialize kate info structure: %d",
- ret);
+ GST_WARNING_OBJECT (ke, "failed to initialize kate info structure: %s",
+ gst_kate_util_get_error_message (ret));
break;
}
if (ke->language) {
ret = kate_info_set_language (&ke->ki, ke->language);
if (ret < 0) {
- GST_WARNING_OBJECT (ke, "failed to set stream language: %d", ret);
+ GST_WARNING_OBJECT (ke, "failed to set stream language: %s",
+ gst_kate_util_get_error_message (ret));
break;
}
}
if (ke->category) {
ret = kate_info_set_category (&ke->ki, ke->category);
if (ret < 0) {
- GST_WARNING_OBJECT (ke, "failed to set stream category: %d", ret);
+ GST_WARNING_OBJECT (ke, "failed to set stream category: %s",
+ gst_kate_util_get_error_message (ret));
break;
}
}
@@ -1052,18 +1056,21 @@ gst_kate_enc_change_state (GstElement * element, GstStateChange transition)
kate_info_set_original_canvas_size (&ke->ki,
ke->original_canvas_width, ke->original_canvas_height);
if (ret < 0) {
- GST_WARNING_OBJECT (ke, "failed to set original canvas size: %d", ret);
+ GST_WARNING_OBJECT (ke, "failed to set original canvas size: %s",
+ gst_kate_util_get_error_message (ret));
break;
}
ret = kate_comment_init (&ke->kc);
if (ret < 0) {
GST_WARNING_OBJECT (ke,
- "failed to initialize kate comment structure: %d", ret);
+ "failed to initialize kate comment structure: %s",
+ gst_kate_util_get_error_message (ret));
break;
}
ret = kate_encode_init (&ke->k, &ke->ki);
if (ret < 0) {
- GST_WARNING_OBJECT (ke, "failed to initialize kate state: %d", ret);
+ GST_WARNING_OBJECT (ke, "failed to initialize kate state: %s",
+ gst_kate_util_get_error_message (ret));
break;
}
ke->headers_sent = FALSE;
@@ -1375,7 +1382,8 @@ gst_kate_enc_sink_event (GstPad * pad, GstEvent * event)
ret = kate_encode_finish (&ke->k, -1, &kp);
if (ret < 0) {
- GST_WARNING_OBJECT (ke, "Failed to encode EOS packet: %d", ret);
+ GST_WARNING_OBJECT (ke, "Failed to encode EOS packet: %s",
+ gst_kate_util_get_error_message (ret));
} else {
kate_int64_t granpos = kate_encode_get_granule (&ke->k);
GST_LOG_OBJECT (ke, "EOS packet encoded");