Index: cinelerra-cv-2.1.5/cinelerra/ffmpeg.C
===================================================================
--- cinelerra-cv-2.1.5.orig/cinelerra/ffmpeg.C	2011-07-10 13:08:27.843534167 +0200
+++ cinelerra-cv-2.1.5/cinelerra/ffmpeg.C	2011-07-10 13:09:12.901715833 +0200
@@ -366,12 +366,15 @@
 
 	// NOTE: frame must already have data space allocated
 	
+	AVPacket pkt;
 	got_picture = 0;
-	int length = avcodec_decode_video(context,
+	av_init_packet( &pkt );
+	pkt.data = data;
+	pkt.size = data_size;
+	int length = avcodec_decode_video2(context,
 					  picture,
 					  &got_picture,
-					  data,
-					  data_size);
+					  &pkt);
 	
 	if (length < 0) {
 		printf("FFMPEG::decode error decoding frame\n");
Index: cinelerra-cv-2.1.5/quicktime/qtffmpeg.c
===================================================================
--- cinelerra-cv-2.1.5.orig/quicktime/qtffmpeg.c	2011-07-10 13:08:47.738731234 +0200
+++ cinelerra-cv-2.1.5/quicktime/qtffmpeg.c	2011-07-10 13:09:12.905715672 +0200
@@ -181,6 +181,7 @@
  
 	if(!result) 
 	{ 
+		AVPacket pkt;
 
 
 // No way to determine if there was an error based on nonzero status.
@@ -189,11 +190,13 @@
 			ffmpeg->decoder_context[current_field]->skip_frame = AVDISCARD_NONREF /* AVDISCARD_BIDIR */;
 		else
 			ffmpeg->decoder_context[current_field]->skip_frame = AVDISCARD_DEFAULT;
-		result = avcodec_decode_video(ffmpeg->decoder_context[current_field], 
+		av_init_packet( &pkt );
+		pkt.data = ffmpeg->work_buffer;
+		pkt.size = bytes + header_bytes;
+		result = avcodec_decode_video2(ffmpeg->decoder_context[current_field], 
 			&ffmpeg->picture[current_field], 
 			&got_picture, 
-			ffmpeg->work_buffer, 
-			bytes + header_bytes);
+			&pkt);
 
 
 
Index: cinelerra-cv-2.1.5/quicktime/wma.c
===================================================================
--- cinelerra-cv-2.1.5.orig/quicktime/wma.c	2011-07-10 13:08:57.186349977 +0200
+++ cinelerra-cv-2.1.5/quicktime/wma.c	2011-07-10 13:09:12.905715672 +0200
@@ -195,11 +195,14 @@
 			chunk_size);
 #else
 		bytes_decoded = AVCODEC_MAX_AUDIO_FRAME_SIZE;
-		result = avcodec_decode_audio2(codec->decoder_context,
+		AVPacket pkt;
+		av_init_packet( &pkt );
+		pkt.data = codec->packet_buffer;
+		pkt.size = chunk_size;
+		result = avcodec_decode_audio3(codec->decoder_context,
 			(int16_t*)(codec->work_buffer + codec->output_size * sample_size),
 			&bytes_decoded,
-			codec->packet_buffer,
-			chunk_size);
+			&pkt);
 #endif
 
 		pthread_mutex_unlock(&ffmpeg_lock);

