summaryrefslogtreecommitdiff
path: root/multimedia/xine-lib/patches/patch-aa
blob: f44c17401d3350f0adb936fc552965bf4ff9711a (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
$NetBSD: patch-aa,v 1.3 2004/04/16 14:44:33 mycroft Exp $

--- src/xine-engine/video_decoder.c.orig	2004-04-08 16:03:42.000000000 +0000
+++ src/xine-engine/video_decoder.c	2004-04-16 14:29:15.000000000 +0000
@@ -43,6 +43,10 @@
 
 #define SPU_SLEEP_INTERVAL (90000/2)
 
+#ifndef SCHED_OTHER
+#define SCHED_OTHER 0
+#endif
+
 
 static void update_spu_decoder (xine_stream_t *stream, int type) {
 
@@ -443,7 +447,9 @@
   } else {
      
     pthread_attr_t       pth_attrs;
+#ifdef _POSIX_THREAD_PRIORITY_SCHEDULING
     struct sched_param   pth_params;
+#endif
     int		       err, num_buffers;
     /* The fifo size is based on dvd playback where buffers are filled
      * with 2k of data. With 500 buffers and a typical video data rate
@@ -464,10 +470,12 @@
     stream->spu_track_map_entries = 0;
   
     pthread_attr_init(&pth_attrs);
+#ifdef _POSIX_THREAD_PRIORITY_SCHEDULING
     pthread_attr_getschedparam(&pth_attrs, &pth_params);
     pth_params.sched_priority = sched_get_priority_min(SCHED_OTHER);
     pthread_attr_setschedparam(&pth_attrs, &pth_params);
     pthread_attr_setscope(&pth_attrs, PTHREAD_SCOPE_SYSTEM);
+#endif
     
     if ((err = pthread_create (&stream->video_thread,
                                &pth_attrs, video_decoder_loop, stream)) != 0) {