diff options
author | Darren Salt <linux@youmustbejoking.demon.co.uk> | 2012-01-18 19:54:34 +0000 |
---|---|---|
committer | Darren Salt <linux@youmustbejoking.demon.co.uk> | 2012-01-18 19:54:34 +0000 |
commit | 3119dd2de36dbd8bb9af95ab1826c15f3099b597 (patch) | |
tree | 76b0324c6e93b86550e63ad02f1154580ce79526 /src | |
parent | 7366cab446742882341e4a5304527e8b1a6965eb (diff) | |
parent | cb6e4b4ffd49cdef83c6d025f175cf6a79705fc8 (diff) | |
download | xine-lib-3119dd2de36dbd8bb9af95ab1826c15f3099b597.tar.gz xine-lib-3119dd2de36dbd8bb9af95ab1826c15f3099b597.tar.bz2 |
Merge.
Diffstat (limited to 'src')
35 files changed, 121 insertions, 87 deletions
diff --git a/src/audio_out/audio_file_out.c b/src/audio_out/audio_file_out.c index 4f4e6bc47..0a4471a19 100644 --- a/src/audio_out/audio_file_out.c +++ b/src/audio_out/audio_file_out.c @@ -274,10 +274,20 @@ static void ao_file_close(ao_driver_t *this_gen) this->fname, this->bytes_written / 1024); if (lseek(this->fd, 40, SEEK_SET) != -1) { - write(this->fd, &len, 4); + if (write(this->fd, &len, 4) != 4) { + xprintf (this->xine, XINE_VERBOSITY_LOG, "audio_file_out: Failed to write header to file '%s': %s\n", + this->fname, strerror(errno)); + } + len = le2me_32(this->bytes_written + 0x24); - if (lseek(this->fd, 4, SEEK_SET) != -1) - write(this->fd, &len, 4); + if (lseek(this->fd, 4, SEEK_SET) != -1) { + if (write(this->fd, &len, 4) != 4) { + xprintf (this->xine, XINE_VERBOSITY_LOG, + "audio_file_out: Failed to write header to file '%s': %s\n", + this->fname, strerror(errno)); + } + } + } close(this->fd); diff --git a/src/audio_out/audio_jack_out.c b/src/audio_out/audio_jack_out.c index eca1263ed..975a5f38a 100644 --- a/src/audio_out/audio_jack_out.c +++ b/src/audio_out/audio_jack_out.c @@ -278,12 +278,13 @@ static int jack_callback (jack_nframes_t nframes, void *arg) return 0; } - +#if 0 static void jack_shutdown (void *arg) { jack_driver_t *this = (jack_driver_t *) arg; this->client = NULL; } +#endif /* * Open the Jack audio device @@ -295,7 +296,6 @@ static int jack_open_device (ao_driver_t *this_gen, char *jack_device, { jack_driver_t *this = (jack_driver_t *) this_gen; const char **matching_ports = NULL; - char *port_name = NULL; jack_client_t *client = this->client; int port_flags = JackPortIsInput; @@ -686,7 +686,6 @@ static ao_driver_t *open_jack_plugin (audio_driver_class_t *class_gen, uint32_t rate; char *jack_device; const char **matching_ports = NULL; - const char **port_names; /* for usability reasons, keep this in sync with audio_oss_out.c */ static char *speaker_arrangement[] = { diff --git a/src/audio_out/audio_pulse_out.c b/src/audio_out/audio_pulse_out.c index bd057501b..5370389c7 100644 --- a/src/audio_out/audio_pulse_out.c +++ b/src/audio_out/audio_pulse_out.c @@ -360,7 +360,6 @@ static int ao_pulse_open(ao_driver_t *this_gen, pulse_driver_t *this = (pulse_driver_t *) this_gen; pa_sample_spec ss; pa_channel_map cm; - int r; xprintf (this->xine, XINE_VERBOSITY_DEBUG, "audio_pulse_out: ao_open bits=%d rate=%d, mode=%d\n", bits, rate, mode); @@ -466,7 +465,7 @@ static int ao_pulse_open(ao_driver_t *this_gen, pa_stream_set_write_callback(this->stream, __xine_pa_stream_request_callback, this); pa_stream_set_latency_update_callback(this->stream, __xine_pa_stream_notify_callback, this); - r = pa_stream_connect_playback(this->stream, this->sink, NULL, + pa_stream_connect_playback(this->stream, this->sink, NULL, PA_STREAM_INTERPOLATE_TIMING|PA_STREAM_AUTO_TIMING_UPDATE, NULL, NULL); diff --git a/src/audio_out/audio_sndio_out.c b/src/audio_out/audio_sndio_out.c index 48e77c3b4..55d479963 100644 --- a/src/audio_out/audio_sndio_out.c +++ b/src/audio_out/audio_sndio_out.c @@ -32,9 +32,9 @@ #include <sndio.h> -#include "xine_internal.h" -#include "xineutils.h" -#include "audio_out.h" +#include <xine/xine_internal.h> +#include <xine/xineutils.h> +#include <xine/audio_out.h> #include "bswap.h" #define GAP_TOLERANCE AO_MAX_GAP diff --git a/src/combined/xine_ogg_demuxer.c b/src/combined/xine_ogg_demuxer.c index e297339df..d8fae78f7 100644 --- a/src/combined/xine_ogg_demuxer.c +++ b/src/combined/xine_ogg_demuxer.c @@ -940,21 +940,27 @@ static void decode_video_header (demux_ogg_t *this, const int stream_num, ogg_pa xine_bmiheader bih; int channel; +#ifdef LOG int16_t locbits_per_sample; + int32_t locsize, locdefault_len, locbuffersize; + int64_t locsamples_per_unit; +#endif uint32_t locsubtype; - int32_t locsize, locdefault_len, locbuffersize, locwidth, locheight; - int64_t loctime_unit, locsamples_per_unit; + int32_t locwidth, locheight; + int64_t loctime_unit; /* read fourcc with machine endianness */ locsubtype = *((uint32_t *)&op->packet[9]); /* everything else little endian */ - locsize = _X_LE_32(&op->packet[13]); loctime_unit = _X_LE_64(&op->packet[17]); +#ifdef LOG + locsize = _X_LE_32(&op->packet[13]); locsamples_per_unit = _X_LE_64(&op->packet[25]); locdefault_len = _X_LE_32(&op->packet[33]); locbuffersize = _X_LE_32(&op->packet[37]); locbits_per_sample = _X_LE_16(&op->packet[41]); +#endif locwidth = _X_LE_32(&op->packet[45]); locheight = _X_LE_32(&op->packet[49]); @@ -1026,18 +1032,25 @@ static void decode_audio_header (demux_ogg_t *this, const int stream_num, ogg_pa char str[5]; int channel; - int16_t locbits_per_sample, locchannels, locblockalign; - int32_t locsize, locdefault_len, locbuffersize, locavgbytespersec; - int64_t loctime_unit, locsamples_per_unit; +#ifdef LOG + int16_t locblockalign; + int32_t locsize, locdefault_len, locbuffersize; + int64_t loctime_unit; +#endif + int16_t locbits_per_sample, locchannels; + int32_t locavgbytespersec; + int64_t locsamples_per_unit; +#ifdef LOG locsize = _X_LE_32(&op->packet[13]); loctime_unit = _X_LE_64(&op->packet[17]); - locsamples_per_unit = _X_LE_64(&op->packet[25]); - locdefault_len = _X_LE_32(&op->packet[33]); locbuffersize = _X_LE_32(&op->packet[37]); + locdefault_len = _X_LE_32(&op->packet[33]); + locblockalign = _X_LE_16(&op->packet[47]); +#endif + locsamples_per_unit = _X_LE_64(&op->packet[25]); locbits_per_sample = _X_LE_16(&op->packet[41]); locchannels = _X_LE_16(&op->packet[45]); - locblockalign = _X_LE_16(&op->packet[47]); locavgbytespersec= _X_LE_32(&op->packet[49]); lprintf ("direct show filter created audio stream detected, hexdump:\n"); diff --git a/src/demuxers/asfheader.c b/src/demuxers/asfheader.c index a78c84fd2..9810aead9 100644 --- a/src/demuxers/asfheader.c +++ b/src/demuxers/asfheader.c @@ -354,7 +354,7 @@ exit_error: static int asf_header_parse_stream_extended_properties(asf_header_t *header, uint8_t *buffer, int buffer_len) {
asf_reader_t reader;
uint32_t flags = 0;
- uint16_t stream_number;
+ uint16_t stream_number = 0;
int i;
int stream_id;
asf_stream_extension_t *asf_stream_extension;
@@ -527,7 +527,7 @@ static int asf_header_parse_metadata(asf_header_t *header_pub, uint8_t *buffer, for (i = 0; i < records_count; i++)
{
- uint16_t index, stream, name_len = 0, data_type;
+ uint16_t index, stream = 0, name_len = 0, data_type;
uint32_t data_len = 0;
int stream_id;
diff --git a/src/demuxers/demux_asf.c b/src/demuxers/demux_asf.c index 186caa2fe..b33c83b18 100644 --- a/src/demuxers/demux_asf.c +++ b/src/demuxers/demux_asf.c @@ -512,13 +512,13 @@ static int asf_read_header (demux_asf_t *this) { * XX bytes : optional palette */ uint32_t width, height; - uint16_t bmiheader_size; + /*uint16_t bmiheader_size;*/ xine_bmiheader *bmiheader; width = _X_LE_32(asf_stream->private_data); height = _X_LE_32(asf_stream->private_data + 4); /* there is one unknown byte between height and the bmiheader size */ - bmiheader_size = _X_LE_16(asf_stream->private_data + 9); + /*bmiheader_size = _X_LE_16(asf_stream->private_data + 9);*/ /* FIXME: bmiheader_size must be >= sizeof(xine_bmiheader) */ @@ -994,8 +994,10 @@ static int asf_parse_packet_ecd(demux_asf_t *this, uint32_t *p_hdr_size) { /* return 0 if ok */ static int asf_parse_packet_payload_header(demux_asf_t *this, uint32_t p_hdr_size) { +#ifdef LOG int64_t timestamp; int64_t duration; +#endif this->packet_len_flags = get_byte(this); p_hdr_size += 1; this->packet_prop_flags = get_byte(this); p_hdr_size += 1; @@ -1034,8 +1036,10 @@ static int asf_parse_packet_payload_header(demux_asf_t *this, uint32_t p_hdr_siz this->packet_padsize = 0; } +#ifdef LOG timestamp = get_le32(this); p_hdr_size += 4; duration = get_le16(this); p_hdr_size += 2; +#endif lprintf ("timestamp=%"PRId64", duration=%"PRId64"\n", timestamp, duration); @@ -1577,11 +1581,11 @@ static int demux_asf_parse_asx_references( demux_asf_t *this) { ENTRYREF, MOREINFO, PARAM, REPEAT, TITLE */ - const char *base_href = NULL; + /*const char *base_href = NULL;*/ for (asx_entry = xml_tree->child; asx_entry; asx_entry = asx_entry->next) { - const char *ref_base_href = base_href; + /*const char *ref_base_href = base_href;*/ if (!strcasecmp (asx_entry->name, "ENTRY")) { @@ -1637,9 +1641,11 @@ static int demux_asf_parse_asx_references( demux_asf_t *this) { duration = asx_get_time_value (asx_ref); } +#if 0 else if (!strcasecmp (asx_ref->name, "BASE")) /* Attributes: HREF */ - ref_base_href = xml_parser_get_property (asx_entry, "HREF"); + ref_base_href = xml_parser_get_property (asx_entry, "HREF"); +#endif } /* FIXME: prepend ref_base_href to href */ @@ -1657,9 +1663,11 @@ static int demux_asf_parse_asx_references( demux_asf_t *this) { _x_demux_send_mrl_reference (this->stream, 0, href, NULL, 0, -1); } +#if 0 else if (!strcasecmp (asx_entry->name, "BASE")) /* Attributes: HREF */ base_href = xml_parser_get_property (asx_entry, "HREF"); +#endif } } else diff --git a/src/demuxers/demux_avi.c b/src/demuxers/demux_avi.c index af1c0aa7f..ae97b576e 100644 --- a/src/demuxers/demux_avi.c +++ b/src/demuxers/demux_avi.c @@ -732,8 +732,6 @@ static avi_t *XINE_MALLOC AVI_init(demux_avi_t *this) { int lasttag = 0; int vids_strh_seen = 0; int vids_strf_seen = 0; - int auds_strh_seen = 0; - int auds_strf_seen = 0; int num_stream = 0; uint8_t data[256]; int strf_size; @@ -898,7 +896,6 @@ static avi_t *XINE_MALLOC AVI_init(demux_avi_t *this) { a->dwSampleSize = _X_LE_32(hdrl_data + i + 44); a->audio_tot = 0; - auds_strh_seen = 1; lprintf("audio stream header, num_stream=%d\n", num_stream); lasttag = 2; /* auds */ @@ -985,7 +982,6 @@ static avi_t *XINE_MALLOC AVI_init(demux_avi_t *this) { AVI->audio[AVI->n_audio-1]->wavex = wavex; AVI->audio[AVI->n_audio-1]->wavex_len = n; lprintf("audio stream format\n"); - auds_strf_seen = 1; } } else if(strncasecmp(hdrl_data + i, "indx",4) == 0) { @@ -1712,7 +1708,7 @@ static int demux_avi_next_streaming (demux_avi_t *this, int decoder_flags) { int64_t audio_pts, video_pts; off_t current_pos; int left; - int header, chunk_len, audio_stream; + int header, chunk_len = 0, audio_stream; avi_audio_t *audio; current_pos = this->input->get_current_pos(this->input); diff --git a/src/demuxers/demux_iff.c b/src/demuxers/demux_iff.c index 67392617b..f199723e1 100644 --- a/src/demuxers/demux_iff.c +++ b/src/demuxers/demux_iff.c @@ -689,7 +689,6 @@ static int demux_iff_send_chunk(demux_plugin_t *this_gen) { int64_t zw_pts; int64_t zw_rescale; int j, k; - int first_buf; int interleave_index; int size; @@ -791,7 +790,6 @@ static int demux_iff_send_chunk(demux_plugin_t *this_gen) { interleave_index = (current_file_pos * this->audio_compression_factor); } - first_buf = 1; zw_pts = current_file_pos; diff --git a/src/demuxers/demux_matroska.c b/src/demuxers/demux_matroska.c index f9f0b23d5..32feacf28 100644 --- a/src/demuxers/demux_matroska.c +++ b/src/demuxers/demux_matroska.c @@ -1847,7 +1847,7 @@ static int parse_block (demux_matroska_t *this, size_t block_size, uint64_t track_num; uint8_t *data; uint8_t flags; - int gap, lacing, num_len; + int lacing, num_len; int16_t timecode_diff; int64_t pts, xduration; int decoder_flags = 0; @@ -1867,7 +1867,7 @@ static int parse_block (demux_matroska_t *this, size_t block_size, lprintf("track_num: %" PRIu64 ", timecode_diff: %d, flags: 0x%x\n", track_num, timecode_diff, flags); - gap = flags & 1; + /*gap = flags & 1;*/ lacing = (flags >> 1) & 0x3; /*fprintf(stderr, "lacing: %x\n", lacing);*/ @@ -2050,6 +2050,13 @@ static int parse_block (demux_matroska_t *this, size_t block_size, } /* send each frame to the decoder */ for (i = 0; i <= lace_num; i++) { + + if (headers_len) { + data -= headers_len; + xine_fast_memcpy(data, track->compress_settings, headers_len); + frame[i] += headers_len; + } + if (track->handle_content != NULL) { track->handle_content((demux_plugin_t *)this, track, decoder_flags, @@ -2071,7 +2078,6 @@ static int parse_block (demux_matroska_t *this, size_t block_size, static int parse_simpleblock(demux_matroska_t *this, size_t block_len, uint64_t cluster_timecode, uint64_t block_duration) { - int has_block = 0; off_t block_pos = 0; off_t file_len = 0; int normpos = 0; @@ -2086,7 +2092,6 @@ static int parse_simpleblock(demux_matroska_t *this, size_t block_len, uint64_t if (!read_block_data(this, block_len, this->compress_maxlen)) return 0; - has_block = 1; /* we have the duration, we can parse the block now */ if (!parse_block(this, block_len, cluster_timecode, block_duration, normpos, is_key)) diff --git a/src/demuxers/demux_mpc.c b/src/demuxers/demux_mpc.c index 2988c9c19..6658e82bc 100644 --- a/src/demuxers/demux_mpc.c +++ b/src/demuxers/demux_mpc.c @@ -90,7 +90,7 @@ static int open_mpc_file(demux_mpc_t *this) { /* TODO: non-seeking version */ if (INPUT_IS_SEEKABLE(this->input)) { /* Check for id3v2 tag */ - if (id3v2_istag(this->header)) { + if (id3v2_istag(_X_BE_32(this->header))) { lprintf("found id3v2 header\n"); diff --git a/src/demuxers/demux_mpeg_block.c b/src/demuxers/demux_mpeg_block.c index 5d00742e5..cad841456 100644 --- a/src/demuxers/demux_mpeg_block.c +++ b/src/demuxers/demux_mpeg_block.c @@ -874,6 +874,7 @@ static int32_t parse_private_stream_1(demux_mpeg_block_t *this, uint8_t *p, buf_ } else if ((p[0]&0xf0) == 0xa0) { int pcm_offset; +#if 0 int number_of_frame_headers; int first_access_unit_pointer; int audio_frame_number; @@ -881,6 +882,7 @@ static int32_t parse_private_stream_1(demux_mpeg_block_t *this, uint8_t *p, buf_ int sample_rate; int num_channels; int dynamic_range; +#endif /* * found in http://members.freemail.absa.co.za/ginggs/dvd/mpeg2_lpcm.txt @@ -888,6 +890,7 @@ static int32_t parse_private_stream_1(demux_mpeg_block_t *this, uint8_t *p, buf_ */ track = p[0] & 0x0F; +#if 0 number_of_frame_headers = p[1]; /* unknown = p[2]; */ first_access_unit_pointer = p[3]; @@ -912,6 +915,7 @@ static int32_t parse_private_stream_1(demux_mpeg_block_t *this, uint8_t *p, buf_ case 2: bits_per_sample = 24; break; } dynamic_range = p[6]; +#endif /* send lpcm config byte */ buf->decoder_flags |= BUF_FLAG_SPECIAL; diff --git a/src/demuxers/demux_mpeg_pes.c b/src/demuxers/demux_mpeg_pes.c index 8d1f4b8af..4d53b6d34 100644 --- a/src/demuxers/demux_mpeg_pes.c +++ b/src/demuxers/demux_mpeg_pes.c @@ -980,6 +980,7 @@ static int32_t parse_private_stream_1(demux_mpeg_pes_t *this, uint8_t *p, buf_el } else if ((p[0]&0xf0) == 0xa0) { int pcm_offset; +#if 0 int number_of_frame_headers; int first_access_unit_pointer; int audio_frame_number; @@ -987,13 +988,14 @@ static int32_t parse_private_stream_1(demux_mpeg_pes_t *this, uint8_t *p, buf_el int sample_rate; int num_channels; int dynamic_range; - +#endif /* * found in http://members.freemail.absa.co.za/ginggs/dvd/mpeg2_lpcm.txt * appears to be correct. */ track = p[0] & 0x0F; +#if 0 number_of_frame_headers = p[1]; /* unknown = p[2]; */ first_access_unit_pointer = p[3]; @@ -1024,6 +1026,7 @@ static int32_t parse_private_stream_1(demux_mpeg_pes_t *this, uint8_t *p, buf_el case 2: bits_per_sample = 24; break; } dynamic_range = p[6]; +#endif /* send lpcm config byte */ buf->decoder_flags |= BUF_FLAG_SPECIAL; diff --git a/src/demuxers/demux_real.c b/src/demuxers/demux_real.c index 64422b9ad..47d18018e 100644 --- a/src/demuxers/demux_real.c +++ b/src/demuxers/demux_real.c @@ -540,7 +540,7 @@ static void real_parse_headers (demux_real_t *this) { lprintf("audio version %d detected\n", version); - char *fourcc_ptr = "\0\0\0"; + const char *fourcc_ptr = "\0\0\0"; switch(version) { case 3: /* Version 3 header stores fourcc after meta info - cheat by reading backwards from the @@ -1251,7 +1251,7 @@ static int demux_real_send_chunk(demux_plugin_t *this_gen) { buf->size = 0; buf->type = this->video_stream->buf_type; - xine_fast_memcpy(buf->decoder_info_ptr[2], this->fragment_tab, + xine_fast_memcpy(buf->content, this->fragment_tab, this->fragment_count*8); this->video_fifo->put(this->video_fifo, buf); diff --git a/src/demuxers/demux_wc3movie.c b/src/demuxers/demux_wc3movie.c index fbf2a7ce0..db115fe07 100644 --- a/src/demuxers/demux_wc3movie.c +++ b/src/demuxers/demux_wc3movie.c @@ -141,7 +141,6 @@ static int demux_mve_send_chunk(demux_plugin_t *this_gen) { demux_mve_t *this = (demux_mve_t *) this_gen; buf_element_t *buf = NULL; - int64_t text_pts = 0; int64_t audio_pts = 0; unsigned char preamble[PREAMBLE_SIZE]; unsigned int chunk_tag; @@ -264,7 +263,7 @@ static int demux_mve_send_chunk(demux_plugin_t *this_gen) { } this->video_pts += WC3_PTS_INC; } else if (chunk_tag == TEXT_TAG) { - text_pts = this->video_pts - WC3_PTS_INC; + /*text_pts = this->video_pts - WC3_PTS_INC;*/ /* unhandled thus far */ this->input->seek(this->input, chunk_size, SEEK_CUR); diff --git a/src/post/audio/stretch.c b/src/post/audio/stretch.c index d56f23376..1f130eff8 100644 --- a/src/post/audio/stretch.c +++ b/src/post/audio/stretch.c @@ -643,7 +643,7 @@ static post_plugin_t *stretch_open_plugin(post_class_t *class_gen, int inputs, pthread_mutex_init (&this->lock, NULL); - set_parameters ((xine_post_t *)&this->post, &init_params); + set_parameters (&this->post.xine_post, &init_params); port = _x_post_intercept_audio_port(&this->post, audio_target[0], &input, &output); port->new_port.open = stretch_port_open; diff --git a/src/post/audio/upmix_mono.c b/src/post/audio/upmix_mono.c index 499856e69..7fb6c7bd9 100644 --- a/src/post/audio/upmix_mono.c +++ b/src/post/audio/upmix_mono.c @@ -315,7 +315,7 @@ static post_plugin_t *upmix_mono_open_plugin(post_class_t *class_gen, int inputs pthread_mutex_init (&this->lock, NULL); - set_parameters ((xine_post_t *)&this->post, &init_params); + set_parameters (&this->post.xine_post, &init_params); port = _x_post_intercept_audio_port(&this->post, audio_target[0], &input, &output); port->new_port.open = upmix_mono_port_open; diff --git a/src/post/deinterlace/xine_plugin.c b/src/post/deinterlace/xine_plugin.c index a1f9c6efd..3cce42400 100644 --- a/src/post/deinterlace/xine_plugin.c +++ b/src/post/deinterlace/xine_plugin.c @@ -395,7 +395,7 @@ static post_plugin_t *deinterlace_open_plugin(post_class_t *class_gen, int input pthread_mutex_init (&this->lock, NULL); - set_parameters ((xine_post_t *)&this->post, &class->init_param); + set_parameters (&this->post.xine_post, &class->init_param); port = _x_post_intercept_video_port(&this->post, video_target[0], &input, &output); /* replace with our own get_frame function */ @@ -437,6 +437,7 @@ static void deinterlace_dispose(post_plugin_t *this_gen) if (_x_post_dispose(this_gen)) { _flush_frames(this); pthread_mutex_destroy(&this->lock); + free(this->tvtime); free(this); } } diff --git a/src/spu_dec/spudvb_decoder.c b/src/spu_dec/spudvb_decoder.c index 66a3fcee9..518903e01 100644 --- a/src/spu_dec/spudvb_decoder.c +++ b/src/spu_dec/spudvb_decoder.c @@ -25,19 +25,21 @@ * - Implement support for teletext based subtitles */ -#include "pthread.h" +#include <pthread.h> #include <errno.h> + +/*#define LOG*/ +#define LOG_MODULE "spudvb" + #include <xine/xine_internal.h> #include <xine/spu.h> #include <xine/osd.h> + #define MAX_REGIONS 7 #define SPU_MAX_WIDTH 1920 #define SPU_MAX_HEIGHT 1080 -/*#define LOG*/ -#define LOG_MODULE "spudvb" - typedef struct { int x, y; unsigned char is_visible; @@ -181,7 +183,6 @@ static void update_region (dvb_spu_decoder_t * this, int region_id, int region_w dvbsub_func_t *dvbsub = this->dvbsub; region_t *reg = &dvbsub->regions[region_id]; - page_t *page = &dvbsub->page; /* reject invalid sizes and set some limits ! */ if ( region_width<=0 || region_height<=0 || region_width>SPU_MAX_WIDTH || region_height>SPU_MAX_HEIGHT ) { @@ -730,7 +731,6 @@ static void process_object_data_segment (dvb_spu_decoder_t * this) dvbsub_func_t *dvbsub = this->dvbsub; - int j; int old_i; int r; @@ -925,7 +925,6 @@ static void spudec_decode_data (spu_decoder_t * this_gen, buf_element_t * buf) int new_i; int data_identifier, subtitle_stream_id; int segment_length, segment_type; - int PES_header_data_length; int PES_packet_length; int i; diff --git a/src/spu_dec/sputext_decoder.c b/src/spu_dec/sputext_decoder.c index ae16cde37..0eb42d665 100644 --- a/src/spu_dec/sputext_decoder.c +++ b/src/spu_dec/sputext_decoder.c @@ -122,7 +122,7 @@ typedef struct sputext_class_s { char font_ft[FILENAME_MAX]; /* subtitle font */ int use_font_ft; /* use Freetype */ #endif - char *src_encoding; /* encoding of subtitle file */ + const char *src_encoding; /* encoding of subtitle file */ int use_unscaled; /* use unscaled OSD if possible */ xine_t *xine; diff --git a/src/vdr/input_vdr.c b/src/vdr/input_vdr.c index 793d1b41b..53da46c51 100644 --- a/src/vdr/input_vdr.c +++ b/src/vdr/input_vdr.c @@ -33,6 +33,7 @@ #include <pthread.h> #include <sys/socket.h> +#include <netinet/in.h> #include <resolv.h> #include <netdb.h> diff --git a/src/video_out/video_out_fb.c b/src/video_out/video_out_fb.c index cfc5cf3a6..0d4376336 100644 --- a/src/video_out/video_out_fb.c +++ b/src/video_out/video_out_fb.c @@ -54,9 +54,6 @@ #include <sys/stat.h> #include <fcntl.h> -#include "xine.h" -#include <xine/video_out.h> - #include <errno.h> #include <sys/ipc.h> @@ -84,6 +81,8 @@ #define LOG */ +#include "xine.h" +#include <xine/video_out.h> #include <xine/xine_internal.h> #include "yuv2rgb.h" #include <xine/xineutils.h> diff --git a/src/video_out/video_out_opengl.c b/src/video_out/video_out_opengl.c index 5d8b60651..d00a916e1 100644 --- a/src/video_out/video_out_opengl.c +++ b/src/video_out/video_out_opengl.c @@ -229,7 +229,7 @@ typedef void *(*thread_run_t)(void *); typedef struct { /* Name of render backend */ - char *name; + const char * const name; /* Finally display current image (needed for Redraw) */ void (*display)(opengl_driver_t *, opengl_frame_t *); /* Upload new image; Returns 0 if failed */ @@ -678,7 +678,7 @@ static int render_image_envtex (opengl_driver_t *this, opengl_frame_t *frame) { /* * Render setup functions */ -static int render_help_verify_ext (opengl_driver_t *this, char *ext) { +static int render_help_verify_ext (opengl_driver_t *this, const char *ext) { int ret = 0; const size_t l = strlen (ext); const char *e; @@ -929,7 +929,7 @@ static int render_setup_torus (opengl_driver_t *this) { static int render_setup_fp_yuv (opengl_driver_t *this) { GLint errorpos; int ret; - static char *fragprog_yuv = + static const char *fragprog_yuv = "!!ARBfp1.0\n" "ATTRIB tex = fragment.texcoord[0];" "PARAM off = program.env[0];" @@ -1823,7 +1823,7 @@ static vo_driver_t *opengl_open_plugin (video_driver_class_t *class_gen, const v config_values_t *config = class->xine->config; x11_visual_t *visual = (x11_visual_t *) visual_gen; opengl_driver_t *this; - char **render_fun_names; + const char **render_fun_names; int i; this = (opengl_driver_t *) calloc(1, sizeof(opengl_driver_t)); diff --git a/src/video_out/video_out_xcbshm.c b/src/video_out/video_out_xcbshm.c index abc1f8b73..eb211e75d 100644 --- a/src/video_out/video_out_xcbshm.c +++ b/src/video_out/video_out_xcbshm.c @@ -864,7 +864,7 @@ static int xshm_gui_data_exchange (vo_driver_t *this_gen, break; case XINE_GUI_SEND_DRAWABLE_CHANGED: - this->window = (xcb_window_t) data; + this->window = (xcb_window_t) (long) data; pthread_mutex_lock(&this->main_mutex); xcb_free_gc(this->connection, this->gc); diff --git a/src/video_out/video_out_xcbxv.c b/src/video_out/video_out_xcbxv.c index a07864e8e..f098ceed8 100644 --- a/src/video_out/video_out_xcbxv.c +++ b/src/video_out/video_out_xcbxv.c @@ -826,7 +826,7 @@ static int xv_gui_data_exchange (vo_driver_t *this_gen, case XINE_GUI_SEND_DRAWABLE_CHANGED: pthread_mutex_lock(&this->main_mutex); - this->window = (xcb_window_t) data; + this->window = (xcb_window_t) (long) data; xcb_free_gc(this->connection, this->gc); this->gc = xcb_generate_id(this->connection); xcb_create_gc(this->connection, this->gc, this->window, 0, NULL); @@ -973,9 +973,9 @@ static int xv_check_yv12(xcb_connection_t *connection, xcb_xv_port_t port) { static void xv_check_capability (xv_driver_t *this, int property, xcb_xv_attribute_info_t *attr, int base_id, - char *config_name, - char *config_desc, - char *config_help) { + const char *config_name, + const char *config_desc, + const char *config_help) { int int_default; cfg_entry_t *entry; const char *str_prop = xcb_xv_attribute_info_name(attr); @@ -1218,8 +1218,8 @@ static vo_driver_t *open_plugin(video_driver_class_t *class_gen, const void *vis if (xv_port != 0) { if (! xv_open_port(this, xv_port)) { xprintf(class->xine, XINE_VERBOSITY_NONE, - _("%s: could not open Xv port %d - autodetecting\n"), - LOG_MODULE, xv_port); + _("%s: could not open Xv port %lu - autodetecting\n"), + LOG_MODULE, (unsigned long)xv_port); adaptor_it = adaptor_first; xv_port = xv_autodetect_port (this, &adaptor_it, xv_port, prefer_type); } else diff --git a/src/video_out/video_out_xshm.c b/src/video_out/video_out_xshm.c index 675575e80..5dfc2c34e 100644 --- a/src/video_out/video_out_xshm.c +++ b/src/video_out/video_out_xshm.c @@ -34,9 +34,6 @@ #include <string.h> #include <math.h> -#include "xine.h" -#include <xine/video_out.h> - #include <X11/Xlib.h> #include <X11/Xutil.h> #include <X11/Xatom.h> @@ -63,6 +60,8 @@ #define LOG */ +#include "xine.h" +#include <xine/video_out.h> #include <xine/xine_internal.h> #include "yuv2rgb.h" #include <xine/xineutils.h> diff --git a/src/video_out/video_out_xv.c b/src/video_out/video_out_xv.c index 59ba3cbfe..edff2905a 100644 --- a/src/video_out/video_out_xv.c +++ b/src/video_out/video_out_xv.c @@ -1262,8 +1262,8 @@ static vo_driver_t *open_plugin_2 (video_driver_class_t *class_gen, const void * if (xv_port != 0) { if (! xv_open_port(this, xv_port)) { xprintf(class->xine, XINE_VERBOSITY_NONE, - _("%s: could not open Xv port %d - autodetecting\n"), - LOG_MODULE, xv_port); + _("%s: could not open Xv port %lu - autodetecting\n"), + LOG_MODULE, (unsigned long)xv_port); xv_port = xv_autodetect_port(this, adaptors, adaptor_info, &adaptor_num, xv_port, prefer_type); } else adaptor_num = xv_find_adaptor_by_port (xv_port, adaptors, adaptor_info); diff --git a/src/video_out/video_out_xvmc.c b/src/video_out/video_out_xvmc.c index f3321e929..3158840a0 100644 --- a/src/video_out/video_out_xvmc.c +++ b/src/video_out/video_out_xvmc.c @@ -783,7 +783,7 @@ static void xvmc_update_frame_format (vo_driver_t *this_gen, frame->ratio = ratio; } - xvmc->macroblocks = (xine_macroblocks_t *)&this->macroblocks; + xvmc->macroblocks = &this->macroblocks.xine_mc; this->macroblocks.num_blocks = 0; this->macroblocks.macroblockptr = this->macroblocks.macroblockbaseptr; this->macroblocks.xine_mc.blockptr = diff --git a/src/video_out/video_out_xxmc.c b/src/video_out/video_out_xxmc.c index e35ce5f12..14fcbce97 100644 --- a/src/video_out/video_out_xxmc.c +++ b/src/video_out/video_out_xxmc.c @@ -2494,8 +2494,8 @@ static vo_driver_t *open_plugin (video_driver_class_t *class_gen, const void *vi if (xv_port != 0) { if (! xxmc_open_port(this, xv_port)) { xprintf(class->xine, XINE_VERBOSITY_NONE, - _("%s: could not open Xv port %d - autodetecting\n"), - LOG_MODULE, xv_port); + _("%s: could not open Xv port %lu - autodetecting\n"), + LOG_MODULE, (unsigned long)xv_port); xv_port = xxmc_autodetect_port(this, adaptors, adaptor_info, &adaptor_num, xv_port, prefer_type); } else adaptor_num = xxmc_find_adaptor_by_port (xv_port, adaptors, adaptor_info); diff --git a/src/xine-engine/configfile.c b/src/xine-engine/configfile.c index 924fbe02a..b334dfaa5 100644 --- a/src/xine-engine/configfile.c +++ b/src/xine-engine/configfile.c @@ -352,7 +352,7 @@ static void config_remove(config_values_t *this, cfg_entry_t *entry, cfg_entry_t prev->next = entry->next; } -static char *config_xlate_internal (const char *key, const xine_config_entry_translation_t *trans) +static const char *config_xlate_internal (const char *key, const xine_config_entry_translation_t *trans) { --trans; while ((++trans)->old_name) @@ -1284,7 +1284,6 @@ static char* config_get_serialized_entry (config_values_t *this, const char *key int str_default_len = 0; int description_len = 0; int help_len = 0; - unsigned long output_len; unsigned long total_len; int value_count; int value_len[10]; diff --git a/src/xine-engine/load_plugins.c b/src/xine-engine/load_plugins.c index bbe5f0910..8189592ba 100644 --- a/src/xine-engine/load_plugins.c +++ b/src/xine-engine/load_plugins.c @@ -2121,7 +2121,7 @@ video_decoder_t *_x_get_video_decoder (xine_stream_t *stream, uint8_t stream_typ vd = ((video_decoder_class_t *)node->plugin_class)->open_plugin(node->plugin_class, stream); - if (vd == 1) { + if (vd == (video_decoder_t*)1) { /* HACK: plugin failed to instantiate because required resources are unavailable at that time, but may be available later, so don't remove this plugin from catalog. */ xprintf(stream->xine, XINE_VERBOSITY_DEBUG, @@ -2631,7 +2631,7 @@ void xine_post_dispose(xine_t *xine, xine_post_t *post_gen) { * @param joining String to use to join the various strings together. * @param final_length The pre-calculated final length of the string. */ -static char *_x_concatenate_with_string(char const **strings, size_t count, char *joining, size_t final_length) { +static char *_x_concatenate_with_string(char const **strings, size_t count, const char *joining, size_t final_length) { size_t i; char *const result = malloc(final_length+1); /* Better be safe */ char *str = result; @@ -2780,7 +2780,7 @@ static void dispose_plugin_list (xine_sarray_t *list, int is_cache) { case PLUGIN_VIDEO_DECODER: decoder_info = (decoder_info_t *)node->info->special_info; - free (decoder_info->supported_types); + free ((void *)decoder_info->supported_types); default: free ((void *)node->info->special_info); @@ -2788,7 +2788,7 @@ static void dispose_plugin_list (xine_sarray_t *list, int is_cache) { } /* free info structure and string copies */ - free (node->info->id); + free ((void *)node->info->id); free (node->info); /* don't free the entry list if the node is cache */ diff --git a/src/xine-engine/xine.c b/src/xine-engine/xine.c index d3a75623b..2a67d89b5 100644 --- a/src/xine-engine/xine.c +++ b/src/xine-engine/xine.c @@ -2026,7 +2026,7 @@ static int _x_get_current_frame_data (xine_stream_t *stream, int flags, int img_size_unknown) { vo_frame_t *frame; - size_t required_size; + size_t required_size = 0; stream->xine->port_ticket->acquire(stream->xine->port_ticket, 0); frame = stream->video_out->get_last_frame (stream->video_out); diff --git a/src/xine-utils/memcpy.c b/src/xine-utils/memcpy.c index 515919a41..f90ab275a 100644 --- a/src/xine-utils/memcpy.c +++ b/src/xine-utils/memcpy.c @@ -53,6 +53,7 @@ */ #include <xine/xine_internal.h> +#include "../xine-engine/xine_private.h" void *(* xine_fast_memcpy)(void *to, const void *from, size_t len); diff --git a/src/xine-utils/xmllexer.c b/src/xine-utils/xmllexer.c index 4e72ba57c..a3b395a46 100644 --- a/src/xine-utils/xmllexer.c +++ b/src/xine-utils/xmllexer.c @@ -96,11 +96,12 @@ void lexer_init(const char * buf, int size) { static_lexer = lexer_init_r(buf, size); } -static enum { + +enum { NORMAL, DATA, CDATA, -} lex_mode = NORMAL; +}; struct lexer *lexer_init_r(const char * buf, int size) { static const char boms[] = { 0xFF, 0xFE, 0, 0, 0xFE, 0xFF }, diff --git a/src/xine-utils/xmlparser.c b/src/xine-utils/xmlparser.c index 8619b1be8..deee2550f 100644 --- a/src/xine-utils/xmlparser.c +++ b/src/xine-utils/xmlparser.c @@ -855,7 +855,7 @@ static void xml_parser_dump_node (const xml_node_t *node, int indent) { free (value); p = p->next; if (p) { - printf ("\n%*s", indent+2+l, ""); + printf ("\n%*s", indent+2+(int)l, ""); } } printf (">\n"); |