Made queue default bigger. fixed parsing errors in mp3parse mpeg1parse mp1videoparse...
authorWim Taymans <wim.taymans@gmail.com>
Sun, 13 Feb 2000 15:20:49 +0000 (15:20 +0000)
committerWim Taymans <wim.taymans@gmail.com>
Sun, 13 Feb 2000 15:20:49 +0000 (15:20 +0000)
Original commit message from CVS:
Made queue default bigger.
fixed parsing errors in mp3parse mpeg1parse mp1videoparse: more than 2
zeros and a 1 is also a sync.
fixed MPEG1 video SKIP_PICTURE which caused a segfault. AlienSong now
plays as it should do. Skips are currently ignored and give some error
on the console, need to clean this up.

gst/elements/gstqueue.c
plugins/elements/gstqueue.c

index 61d1eaa..175dca5 100644 (file)
@@ -40,6 +40,7 @@ enum {
 enum {
   ARG_0,
   ARG_LEVEL,
+  ARG_MAX_LEVEL,
 };
 
 
@@ -83,6 +84,8 @@ static void gst_queue_class_init(GstQueueClass *klass) {
 
   gtk_object_add_arg_type("GstQueue::level", GTK_TYPE_INT,
                           GTK_ARG_READABLE, ARG_LEVEL);
+  gtk_object_add_arg_type("GstQueue::max_level", GTK_TYPE_INT,
+                          GTK_ARG_READWRITE, ARG_LEVEL);
 
   gstconnection_class->push = gst_queue_push;
 
@@ -100,7 +103,7 @@ static void gst_queue_init(GstQueue *queue) {
   queue->queue = NULL;
   queue->tail = NULL;
   queue->level_buffers = 0;
-  queue->max_buffers = 5;
+  queue->max_buffers = 30;
   queue->level_bytes = 0;
   queue->size_buffers = 0;
   queue->size_bytes = 0;
@@ -220,6 +223,9 @@ static void gst_queue_set_arg(GtkObject *object,GtkArg *arg,guint id) {
   queue = GST_QUEUE(object);
 
   switch(id) {
+    case ARG_MAX_LEVEL:
+      queue->max_buffers = GTK_VALUE_INT(*arg);
+      break;
     default:
       break;
   }
@@ -236,6 +242,9 @@ static void gst_queue_get_arg(GtkObject *object,GtkArg *arg,guint id) {
     case ARG_LEVEL:
       GTK_VALUE_INT(*arg) = queue->level_buffers;
       break;
+    case ARG_MAX_LEVEL:
+      GTK_VALUE_INT(*arg) = queue->max_buffers;
+      break;
     default:
       arg->type = GTK_TYPE_INVALID;
       break;
index 61d1eaa..175dca5 100644 (file)
@@ -40,6 +40,7 @@ enum {
 enum {
   ARG_0,
   ARG_LEVEL,
+  ARG_MAX_LEVEL,
 };
 
 
@@ -83,6 +84,8 @@ static void gst_queue_class_init(GstQueueClass *klass) {
 
   gtk_object_add_arg_type("GstQueue::level", GTK_TYPE_INT,
                           GTK_ARG_READABLE, ARG_LEVEL);
+  gtk_object_add_arg_type("GstQueue::max_level", GTK_TYPE_INT,
+                          GTK_ARG_READWRITE, ARG_LEVEL);
 
   gstconnection_class->push = gst_queue_push;
 
@@ -100,7 +103,7 @@ static void gst_queue_init(GstQueue *queue) {
   queue->queue = NULL;
   queue->tail = NULL;
   queue->level_buffers = 0;
-  queue->max_buffers = 5;
+  queue->max_buffers = 30;
   queue->level_bytes = 0;
   queue->size_buffers = 0;
   queue->size_bytes = 0;
@@ -220,6 +223,9 @@ static void gst_queue_set_arg(GtkObject *object,GtkArg *arg,guint id) {
   queue = GST_QUEUE(object);
 
   switch(id) {
+    case ARG_MAX_LEVEL:
+      queue->max_buffers = GTK_VALUE_INT(*arg);
+      break;
     default:
       break;
   }
@@ -236,6 +242,9 @@ static void gst_queue_get_arg(GtkObject *object,GtkArg *arg,guint id) {
     case ARG_LEVEL:
       GTK_VALUE_INT(*arg) = queue->level_buffers;
       break;
+    case ARG_MAX_LEVEL:
+      GTK_VALUE_INT(*arg) = queue->max_buffers;
+      break;
     default:
       arg->type = GTK_TYPE_INVALID;
       break;