Improved RTP timestamp logging, fixed bug related to firstTime value
This commit is contained in:
		
							parent
							
								
									01a2ff54ed
								
							
						
					
					
						commit
						2740d65a0f
					
				
					 1 changed files with 4 additions and 3 deletions
				
			
		|  | @ -877,7 +877,7 @@ namespace RTP{ | ||||||
|     if (!firstTime){ |     if (!firstTime){ | ||||||
|       milliSync = Util::bootMS(); |       milliSync = Util::bootMS(); | ||||||
|       firstTime = pTime + 1; |       firstTime = pTime + 1; | ||||||
|       INFO_MSG("RTP timestamp rollover expected in " PRETTY_PRINT_TIME, |       INFO_MSG("RTP timestamp rollover for %" PRIu64 " (%s) expected in " PRETTY_PRINT_TIME, trackId, codec.c_str(), | ||||||
|                PRETTY_ARG_TIME((0xFFFFFFFFul - firstTime) / multiplier / 1000)); |                PRETTY_ARG_TIME((0xFFFFFFFFul - firstTime) / multiplier / 1000)); | ||||||
|     }else{ |     }else{ | ||||||
|       if (recentWrap){ |       if (recentWrap){ | ||||||
|  | @ -886,14 +886,15 @@ namespace RTP{ | ||||||
|       }else{ |       }else{ | ||||||
|         if (prevTime > pTime && pTime < 0x40000000lu && prevTime > 0x80000000lu){ |         if (prevTime > pTime && pTime < 0x40000000lu && prevTime > 0x80000000lu){ | ||||||
|           ++wrapArounds; |           ++wrapArounds; | ||||||
|  |           INFO_MSG("RTP timestamp rollover %" PRIu32 " for %" PRIu64 " (%s) happened; next should be in " PRETTY_PRINT_TIME, wrapArounds, trackId, codec.c_str(), PRETTY_ARG_TIME((0xFFFFFFFFul) / multiplier / 1000)); | ||||||
|           recentWrap = true; |           recentWrap = true; | ||||||
|         } |         } | ||||||
|       } |       } | ||||||
|     } |     } | ||||||
|     // When there are B-frames, the firstTime can be higher than the current time
 |     // When there are B-frames, the firstTime can be higher than the current time
 | ||||||
|     //   causing msTime to become negative and thus overflow
 |     //   causing msTime to become negative and thus overflow
 | ||||||
|     if (firstTime > pTime + 1){ |     if (!wrapArounds && firstTime > pTime + 1){ | ||||||
|       WARN_MSG("firstTime was higher than current packet time. Readjusting firsTime..."); |       WARN_MSG("firstTime was higher than current packet time. Readjusting firstTime..."); | ||||||
|       firstTime = pTime + 1; |       firstTime = pTime + 1; | ||||||
|     } |     } | ||||||
|     prevTime = pkt.getTimeStamp(); |     prevTime = pkt.getTimeStamp(); | ||||||
|  |  | ||||||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue
	
	 Thulinma
						Thulinma