You've already forked FFmpeg
							
							
				mirror of
				https://github.com/FFmpeg/FFmpeg.git
				synced 2025-10-30 23:18:11 +02:00 
			
		
		
		
	shorten: only calculate output size when returning decoded samples, otherwise
just set data_size to zero.
This commit is contained in:
		| @@ -385,6 +385,7 @@ static int shorten_decode_frame(AVCodecContext *avctx, | ||||
|         int ret; | ||||
|         if ((ret = read_header(s)) < 0) | ||||
|             return ret; | ||||
|         *data_size = 0; | ||||
|     } | ||||
|     else | ||||
|     { | ||||
| @@ -423,8 +424,9 @@ static int shorten_decode_frame(AVCodecContext *avctx, | ||||
|                     break; | ||||
|                 } | ||||
|                 case FN_QUIT: | ||||
|                     goto frame_done; | ||||
|                     break; | ||||
|             } | ||||
|             *data_size = 0; | ||||
|         } else { | ||||
|             /* process audio command */ | ||||
|             int residual_size = 0; | ||||
| @@ -510,12 +512,12 @@ static int shorten_decode_frame(AVCodecContext *avctx, | ||||
|             if (s->cur_chan == s->channels) { | ||||
|                 samples = interleave_buffer(samples, s->channels, s->blocksize, s->decoded); | ||||
|                 s->cur_chan = 0; | ||||
|                 goto frame_done; | ||||
|             } | ||||
|         } | ||||
|     } | ||||
| frame_done: | ||||
|                 *data_size = (int8_t *)samples - (int8_t *)data; | ||||
|             } else { | ||||
|                 *data_size = 0; | ||||
|             } | ||||
|         } | ||||
|     } | ||||
|  | ||||
|     //    s->last_blocksize = s->blocksize; | ||||
|     s->bitindex = get_bits_count(&s->gb) - 8*((get_bits_count(&s->gb))/8); | ||||
|   | ||||
		Reference in New Issue
	
	Block a user