Ticket #2552: 2552-v1.patch
File 2552-v1.patch, 4.9 KB (added by , 17 years ago) |
---|
-
libs/libmythtv/nuppeldecoder.cpp
547 547 if (usingextradata && extradata.video_fourcc == MKTAG('D', 'I', 'V', 'X')) 548 548 setreadahead = true; 549 549 550 ringBuffer->UpdateRawBitrate(0); 550 bitrate = 0; 551 ringBuffer->UpdateRawBitrate(GetRawBitrate()); 551 552 552 553 videosizetotal = 0; 553 554 videoframesread = 0; … … 1099 1100 { 1100 1101 videosizetotal /= videoframesread; 1101 1102 1102 float bps = videosizetotal * 8.0 / 1024 * video_frame_rate; 1103 bps = bps * 3 / 2; 1103 float bps = (videosizetotal * 8.0f / 1024.0f * 1104 video_frame_rate); 1105 bitrate = (uint) (bps * 1.5f); 1104 1106 1105 ringBuffer->UpdateRawBitrate( (uint) bps);1107 ringBuffer->UpdateRawBitrate(GetRawBitrate()); 1106 1108 setreadahead = true; 1107 1109 } 1108 1110 } -
libs/libmythtv/NuppelVideoPlayer.cpp
2851 2851 return; 2852 2852 } 2853 2853 2854 // the bitrate is reset by ringBuffer->OpenFile()... 2855 ringBuffer->UpdateRawBitrate(GetDecoder()->GetRawBitrate()); 2856 2854 2857 ringBuffer->Unpause(); 2855 2858 2856 2859 if (discontinuity || newtype) … … 2956 2959 return; 2957 2960 } 2958 2961 2962 // the bitrate is reset by ringBuffer->OpenFile()... 2963 ringBuffer->UpdateRawBitrate(GetDecoder()->GetRawBitrate()); 2964 2959 2965 ringBuffer->Unpause(); 2960 2966 ringBuffer->IgnoreLiveEOF(false); 2961 2967 -
libs/libmythtv/avformatdecoder.cpp
270 270 ic(NULL), 271 271 frame_decoded(0), decoded_video_frame(NULL), 272 272 directrendering(false), drawband(false), 273 bitrate(0),274 273 gopset(false), seen_gop(false), 275 274 seq_count(0), firstgoppos(0), 276 275 prevgoppos(0), gotvideo(false), -
libs/libmythtv/decoderbase.h
89 89 90 90 virtual QString GetEncodingType(void) const = 0; 91 91 virtual double GetFPS(void) const { return fps; } 92 /// Returns the estimated bitrate if the video were played at normal speed. 93 uint GetRawBitrate(void) const { return bitrate; } 92 94 93 95 virtual void UpdateFramesPlayed(void); 94 96 long long GetFramesRead(void) const { return framesRead; }; … … 173 175 int current_height; 174 176 float current_aspect; 175 177 double fps; 178 uint bitrate; 176 179 177 180 long long framesPlayed; 178 181 long long framesRead; -
libs/libmythtv/RingBuffer.cpp
492 492 { 493 493 QMutexLocker locker(&bitratelock); 494 494 rawbitrate = raw_bitrate; 495 VERBOSE(VB_IMPORTANT, "TMP DEBUG -- UpdateRawBitrate("<<raw_bitrate<<")"); 495 496 CalcReadAheadThresh(); 496 497 } 497 498 -
libs/libmythtv/decoderbase.cpp
23 23 24 24 current_width(640), current_height(480), 25 25 current_aspect(1.33333), fps(29.97), 26 bitrate(4000), 26 27 27 28 framesPlayed(0), framesRead(0), lastKey(0), keyframedist(-1), 28 29 indexOffset(0), -
libs/libmythtv/avformatdecoder.h
205 205 bool directrendering; 206 206 bool drawband; 207 207 208 int bitrate;209 210 208 bool gopset; 211 209 /// A flag to indicate that we've seen a GOP frame. Used in junction with seq_count. 212 210 bool seen_gop; -
libs/libmythtv/ivtvdecoder.cpp
49 49 { 50 50 lastResetTime.start(); 51 51 fps = 29.97f; 52 bitrate = 8000; 52 53 lastKey = 0; 53 54 } 54 55 … … 277 278 278 279 fps = (ntsc) ? 29.97f : 25.0f; // save for later length calculations 279 280 280 ringBuffer->UpdateRawBitrate( 8000);281 ringBuffer->UpdateRawBitrate(GetRawBitrate()); 281 282 282 283 if (m_playbackinfo || livetv || watchingrecording) 283 284 {