mirror of
				https://projects.vdr-developer.org/git/vdr-plugin-softhddevice.git
				synced 2023-10-10 17:16:51 +00:00 
			
		
		
		
	Adds optional only complete mpeg packets support.
This commit is contained in:
		@@ -2,6 +2,7 @@ User johns
 | 
			
		||||
Date:
 | 
			
		||||
 | 
			
		||||
    Release Version 0.6.0
 | 
			
		||||
    Adds optional only complete mpeg packets support.
 | 
			
		||||
    Fixes text of EAC-3 pass-through setup.
 | 
			
		||||
    Try to start or connect to X11 server with -xx.
 | 
			
		||||
    Try to use HBR (High Bit-Rate) for EAC3.
 | 
			
		||||
 
 | 
			
		||||
							
								
								
									
										1
									
								
								Makefile
									
									
									
									
									
								
							
							
						
						
									
										1
									
								
								Makefile
									
									
									
									
									
								
							@@ -30,6 +30,7 @@ CONFIG += -DUSE_PIP			# PIP support
 | 
			
		||||
#CONFIG += -DHAVE_PTHREAD_NAME		# supports new pthread_setname_np
 | 
			
		||||
#CONFIG += -DNO_TS_AUDIO		# disable ts audio parser
 | 
			
		||||
#CONFIG += -DUSE_TS_VIDEO		# build new ts video parser
 | 
			
		||||
#CONFIG += -DUSE_MPEG_COMPLETE		# support only complete mpeg packets
 | 
			
		||||
 | 
			
		||||
ifeq ($(ALSA),1)
 | 
			
		||||
CONFIG += -DUSE_ALSA
 | 
			
		||||
 
 | 
			
		||||
							
								
								
									
										3
									
								
								codec.c
									
									
									
									
									
								
							
							
						
						
									
										3
									
								
								codec.c
									
									
									
									
									
								
							@@ -441,8 +441,11 @@ void CodecVideoOpen(VideoDecoder * decoder, const char *name, int codec_id)
 | 
			
		||||
    }
 | 
			
		||||
    if (video_codec->capabilities & CODEC_CAP_TRUNCATED) {
 | 
			
		||||
	Debug(3, "codec: video can use truncated packets\n");
 | 
			
		||||
#ifndef USE_MPEG_COMPLETE
 | 
			
		||||
	// we send incomplete frames, for old PES recordings
 | 
			
		||||
	// this breaks the decoder for some stations
 | 
			
		||||
	decoder->VideoCtx->flags |= CODEC_FLAG_TRUNCATED;
 | 
			
		||||
#endif
 | 
			
		||||
    }
 | 
			
		||||
    // FIXME: own memory management for video frames.
 | 
			
		||||
    if (video_codec->capabilities & CODEC_CAP_DR1) {
 | 
			
		||||
 
 | 
			
		||||
@@ -2249,11 +2249,16 @@ int PlayVideo3(VideoStream * stream, const uint8_t * data, int size)
 | 
			
		||||
    if (stream->CodecID == CODEC_ID_MPEG2VIDEO) {
 | 
			
		||||
	// SKIP PES header
 | 
			
		||||
	VideoMpegEnqueue(stream, pts, data + 9 + n, size - 9 - n);
 | 
			
		||||
#ifndef USE_MPEG_COMPLETE
 | 
			
		||||
	if (size < 65526) {
 | 
			
		||||
	    // mpeg codec supports incomplete packets
 | 
			
		||||
	    // waiting for a full complete packages, increases needed delays
 | 
			
		||||
	    // PES recordings sends incomplete packets
 | 
			
		||||
	    // incomplete packets  breaks the decoder for some stations
 | 
			
		||||
	    // for the new USE_PIP code, this is only a very little improvement
 | 
			
		||||
	    VideoNextPacket(stream, stream->CodecID);
 | 
			
		||||
	}
 | 
			
		||||
#endif
 | 
			
		||||
    } else {
 | 
			
		||||
	// SKIP PES header
 | 
			
		||||
	VideoEnqueue(stream, pts, data + 9 + n, size - 9 - n);
 | 
			
		||||
 
 | 
			
		||||
		Reference in New Issue
	
	Block a user