diff options
author | Diego 'Flameeyes' Pettenò <flameeyes@gmail.com> | 2007-12-11 22:09:23 +0100 |
---|---|---|
committer | Diego 'Flameeyes' Pettenò <flameeyes@gmail.com> | 2007-12-11 22:09:23 +0100 |
commit | 47b3936175fa3e8eaff2401301b31f149083e222 (patch) | |
tree | 9dcce1db779f4602cdd31bb087cecb359d93b3a9 | |
parent | 5705e09528602172a0d3a50d36844ff4777a6a60 (diff) | |
download | xine-lib-47b3936175fa3e8eaff2401301b31f149083e222.tar.gz xine-lib-47b3936175fa3e8eaff2401301b31f149083e222.tar.bz2 |
Use libavutil's crc routines rather than xine-utils's code.
-rw-r--r-- | src/input/Makefile.am | 6 | ||||
-rw-r--r-- | src/input/input_dvb.c | 9 |
2 files changed, 11 insertions, 4 deletions
diff --git a/src/input/Makefile.am b/src/input/Makefile.am index ed32ad7c5..bd1b9a939 100644 --- a/src/input/Makefile.am +++ b/src/input/Makefile.am @@ -106,9 +106,9 @@ xineplug_inp_pnm_la_SOURCES = input_pnm.c net_buf_ctrl.c pnm.c xineplug_inp_pnm_la_LIBADD = $(XINE_LIB) $(PTHREAD_LIBS) $(LTLIBINTL) xineplug_inp_dvb_la_SOURCES = input_dvb.c net_buf_ctrl.c -xineplug_inp_dvb_la_DEPS = $(XDG_BASEDIR_DEPS) -xineplug_inp_dvb_la_LIBADD = $(XINE_LIB) $(PTHREAD_LIBS) $(LTLIBINTL) $(XDG_BASEDIR_LIBS) -xineplug_inp_dvb_la_CPPFLAGS = $(AM_CPPFLAGS) $(XDG_BASEDIR_CPPFLAGS) +xineplug_inp_dvb_la_DEPS = $(XDG_BASEDIR_DEPS) $(AVUTIL_DEPS) +xineplug_inp_dvb_la_LIBADD = $(XINE_LIB) $(PTHREAD_LIBS) $(LTLIBINTL) $(XDG_BASEDIR_LIBS) $(AVUTIL_LIBS) +xineplug_inp_dvb_la_CPPFLAGS = $(AM_CPPFLAGS) $(XDG_BASEDIR_CPPFLAGS) $(AVUTIL_CFLAGS) xineplug_inp_rtsp_la_SOURCES = input_rtsp.c net_buf_ctrl.c xineplug_inp_rtsp_la_LIBADD = $(XINE_LIB) $(PTHREAD_LIBS) $(LTLIBINTL) libreal/libreal.la librtsp/librtsp.la diff --git a/src/input/input_dvb.c b/src/input/input_dvb.c index fbfc62921..628c38c28 100644 --- a/src/input/input_dvb.c +++ b/src/input/input_dvb.c @@ -100,6 +100,9 @@ #endif #include <ctype.h> +/* libavutil from FFmpeg */ +#include <crc.h> + /* XDG */ #include <basedir.h> @@ -2445,6 +2448,10 @@ static void ts_rewrite_packets (dvb_input_plugin_t *this, unsigned char * origin originalPkt+=data_offset; if (pid == 0 && sync_byte==0x47) { + static AVCRC crc_ctx; static int ctx_init = 0; + if ( ! ctx_init ) + ctx_init = !av_crc_init(&crc_ctx, 0, 32, AV_CRC_32_IEEE, sizeof(AVCRC)*257); + unsigned long crc; originalPkt[3]=13; /* section length including CRC - first 3 bytes */ @@ -2456,7 +2463,7 @@ static void ts_rewrite_packets (dvb_input_plugin_t *this, unsigned char * origin originalPkt[11]=(this->channels[this->channel].pmtpid >> 8) & 0xff; originalPkt[12]=this->channels[this->channel].pmtpid & 0xff; - crc= _x_compute_crc32 (originalPkt+1, 12, 0xffffffff); + crc = av_crc(&crc_ctx, 0xffffffff, originalPkt+1, 12); originalPkt[13]=(crc>>24) & 0xff; originalPkt[14]=(crc>>16) & 0xff; |