streaming - Create media sample timestamps for live source filter? -


i'm trying write udp streaming application directshow intends work in lan environment. things turned out fine until client starts experience freezing issues when seeking.

here did:

server

enter image description here

client

enter image description here

on server side, have 2 transform filter, 1 video , 1 audio. in these 2 filters, each of them creates thread reads mediasamples , perform multicast without modifying timestamps/flags. meanwhile, video transform filter pass media samples decoder. audio transform filters same.

on client side. live source filter reads video , audio mediasamples udp port. @ here, perform simple timestamp calculation is:

mediasample start time = current stream time + 40 ms

the videos stream fine in lan environment. however, found out when seek, client side freeze moment. when check renderer, show lots of frames dropped. i'm guessing timestamps causing frames dropped.

i noticed whenever perform seek, initial frames have negative stamps. if don't send these frames on client, client not freeze. frames broken. i'm guessing due fact these negative frames keyframes leads seeked position. if missing, image broken.

after doing research, tried approach:

  1. set first sample's timestamp current stream time.

    t1 = stream time.

  2. use first sample's timestamp baseline.

    base = t1

  3. every sample after calculated

    tn = stream time + tn - base

which didn't work. guessing that's because server , client's clock not synchronized. however, thinking might work, because after every seek on server side, timestamps starts 0 again.

i trying figure out next. appreciate if give me advice.

2013-07-26 update

roman, thank help. have tried rebase timestamps method mentioned in http://social.msdn.microsoft.com/forums/windowsdesktop/en-us/c1c762a0-af92-4987-b084-f0d194766999/is-a-video-sample-with-negative-timestamp-a-preroll-sample

  1. client detects discontinuity checking imediasample::isdiscontinuity
  2. if discontinuity occurs, set baseline(b) received timestamp
  3. then every timestamp calculated as

ts - received timestamp tc - calculated timestamp

  tc = current stream time + ts - b + 40ms 

where current stream time using creftime , streamtime()

after making changes above, when start stream, client's video moves slow awhile , freezes. client's screen goes active again half second after stop server sending data.

what did wrong here? clock rate?

2013-08-01 update

following roman's suggestion, able find mistakes in timestamps adding pass through filter after sourcefilter allows me examine timestamps coming sourcefilter's video output pin.

however, right have encountered problem when seeking. on client side, though frames displayed properly, it's suffering huge delay before it's starts updating new frames.

i have checked these frames , preroll frames lead frame of seeked position. i'm confirmed setting preroll flag false in media samples , letting played. seems graph processing these preroll frames in normal rate on client side, on server side, these preroll frames processed lot quicker.

is there way around delay or it's have deal with?

these samples captured in pass through filter.

server

6848 : getstate 2 31772 : 11210a90 beginflush 31784 : 11210a90 endflush 31784 : newsegment: 38700000..300900000 @ 1x 31814 : getstate 1 31814 : getstate 1 31814 : getstate 1 31815 : getstate 1 31815 : getstate 1 31816 : 11210a90 sample 4515 bytesd time -3870.0 -3837.0 latency 0.0 <-- preroll starts 31828 : 11210a90 sample 62335 bytes time -3837.0 -3804.0 latency 0.0 31834 : getstate 1 31843 : 11210a90 sample 51483 bytes time -3804.0 -3770.0 latency 0.0 31844 : getstate 1 31856 : 11210a90 sample 62535 bytes time -3770.0 -3737.0 latency 0.0 31864 : getstate 1 31869 : 11210a90 sample 62041 bytes time -3737.0 -3704.0 latency 0.0 31874 : getstate 1 31885 : 11210a90 sample 61509 bytes time -3704.0 -3670.0 latency 0.0 31888 : getstate 1 31900 : 11210a90 sample 62280 bytes time -3670.0 -3637.0 latency 0.0 31906 : getstate 1 31912 : 11210a90 sample 63084 bytes time -3637.0 -3604.0 latency 0.0 31926 : getstate 1 31929 : 11210a90 sample 62388 bytes time -3604.0 -3570.0 latency 0.0 31936 : getstate 1 31941 : 11210a90 sample 61956 bytes time -3570.0 -3537.0 latency 0.0 31951 : getstate 1 31956 : 11210a90 sample 52196 bytes time -3537.0 -3503.0 latency 0.0 31967 : getstate 1 31968 : 11210a90 sample 53707 bytes time -3503.0 -3470.0 latency 0.0 31980 : 11210a90 sample 55162 bytes time -3470.0 -3437.0 latency 0.0 31982 : getstate 1 31991 : 11210a90 sample 54511 bytes time -3437.0 -3403.0 latency 0.0 31998 : getstate 1 32002 : 11210a90 sample 53676 bytes time -3403.0 -3370.0 latency 0.0 32013 : 11210a90 sample 54214 bytes time -3370.0 -3337.0 latency 0.0 32016 : getstate 1 32031 : 11210a90 sample 53590 bytes time -3337.0 -3303.0 latency 0.0 32036 : getstate 1 32042 : 11210a90 sample 54067 bytes time -3303.0 -3270.0 latency 0.0 32046 : getstate 1 32055 : 11210a90 sample 55115 bytes time -3270.0 -3237.0 latency 0.0 32066 : getstate 1 32067 : 11210a90 sample 56462 bytes time -3237.0 -3203.0 latency 0.0 32076 : getstate 1 32079 : 11210a90 sample 45412 bytes time -3203.0 -3170.0 latency 0.0 32090 : 11210a90 sample 49165 bytes time -3170.0 -3136.0 latency 0.0 32096 : getstate 1 32102 : 11210a90 sample 47378 bytes time -3136.0 -3103.0 latency 0.0 32113 : 11210a90 sample 47024 bytes time -3103.0 -3070.0 latency 0.0 32116 : getstate 1 32123 : getstate 1 32127 : 11210a90 sample 46739 bytes time -3070.0 -3036.0 latency 0.0 32138 : getstate 1 32141 : 11210a90 sample 45601 bytes time -3036.0 -3003.0 latency 0.0 32152 : 11210a90 sample 45939 bytes time -3003.0 -2970.0 latency 0.0 32154 : getstate 1 32163 : 11210a90 sample 47212 bytes time -2970.0 -2936.0 latency 0.0 32170 : getstate 1 32180 : 11210a90 sample 44130 bytes time -2936.0 -2903.0 latency 0.0 32190 : getstate 1 32190 : 11210a90 sample 43858 bytes time -2903.0 -2869.0 latency 0.0 32200 : getstate 1 32201 : 11210a90 sample 44417 bytes time -2869.0 -2836.0 latency 0.0 32211 : 11210a90 sample 44330 bytes time -2836.0 -2803.0 latency 0.0 32217 : getstate 1 32224 : 11210a90 sample 44660 bytes time -2803.0 -2769.0 latency 0.0 32236 : 11210a90 sample 43832 bytes time -2769.0 -2736.0 latency 0.0 32237 : getstate 1 32247 : getstate 1 32248 : 11210a90 sample 43512 bytes time -2736.0 -2703.0 latency 0.0 32260 : 11210a90 sample 43342 bytes time -2703.0 -2669.0 latency 0.0 32267 : getstate 1 32272 : 11210a90 sample 43589 bytes time -2669.0 -2636.0 latency 0.0 32286 : 11210a90 sample 42888 bytes time -2636.0 -2603.0 latency 0.0 32287 : getstate 1 32297 : getstate 1 32297 : 11210a90 sample 44217 bytes time -2603.0 -2569.0 latency 0.0 32308 : 11210a90 sample 46987 bytes time -2569.0 -2536.0 latency 0.0 32311 : getstate 1 32321 : 11210a90 sample 45233 bytes time -2536.0 -2502.0 latency 0.0 32331 : getstate 1 32332 : 11210a90 sample 46052 bytes time -2502.0 -2469.0 latency 0.0 32343 : getstate 1 32343 : 11210a90 sample 45819 bytes time -2469.0 -2436.0 latency 0.0 32357 : 11210a90 sample 46946 bytes time -2436.0 -2402.0 latency 0.0 32363 : getstate 1 32371 : 11210a90 sample 44469 bytes time -2402.0 -2369.0 latency 0.0 32373 : getstate 1 32387 : 11210a90 sample 44398 bytes time -2369.0 -2336.0 latency 0.0 32393 : getstate 1 32401 : 11210a90 sample 45456 bytes time -2336.0 -2302.0 latency 0.0 32403 : getstate 1 32412 : 11210a90 sample 46051 bytes time -2302.0 -2269.0 latency 0.0 32423 : getstate 1 32425 : 11210a90 sample 38146 bytes time -2269.0 -2236.0 latency 0.0 32436 : 11210a90 sample 38028 bytes time -2236.0 -2202.0 latency 0.0 32443 : getstate 1 32446 : 11210a90 sample 39705 bytes time -2202.0 -2169.0 latency 0.0 32455 : getstate 1 32460 : 11210a90 sample 36533 bytes time -2169.0 -2135.0 latency 0.0 32468 : getstate 1 32472 : 11210a90 sample 37019 bytes time -2135.0 -2102.0 latency 0.0 32483 : 11210a90 sample 37277 bytes time -2102.0 -2069.0 latency 0.0 32488 : getstate 1 32494 : 11210a90 sample 36698 bytes time -2069.0 -2035.0 latency 0.0 32498 : getstate 1 32506 : 11210a90 sample 36436 bytes time -2035.0 -2002.0 latency 0.0 32516 : getstate 1 32516 : 11210a90 sample 37650 bytes time -2002.0 -1969.0 latency 0.0 32528 : 11210a90 sample 38623 bytes time -1969.0 -1935.0 latency 0.0 32536 : getstate 1 32538 : 11210a90 sample 38525 bytes time -1935.0 -1902.0 latency 0.0 32546 : getstate 1 32549 : 11210a90 sample 38196 bytes time -1902.0 -1868.0 latency 0.0 32559 : 11210a90 sample 38130 bytes time -1868.0 -1835.0 latency 0.0 32564 : getstate 1 32575 : 11210a90 sample 39116 bytes time -1835.0 -1802.0 latency 0.0 32583 : getstate 1 32587 : 11210a90 sample 45008 bytes time -1802.0 -1768.0 latency 0.0 32593 : getstate 1 32599 : 11210a90 sample 40588 bytes time -1768.0 -1735.0 latency 0.0 32610 : 11210a90 sample 40633 bytes time -1735.0 -1702.0 latency 0.0 32613 : getstate 1 32621 : 11210a90 sample 41867 bytes time -1702.0 -1668.0 latency 0.0 32623 : getstate 1 32633 : 11210a90 sample 40974 bytes time -1668.0 -1635.0 latency 0.0 32643 : getstate 1 32643 : 11210a90 sample 41854 bytes time -1635.0 -1602.0 latency 0.0 32653 : getstate 1 32654 : 11210a90 sample 42312 bytes time -1602.0 -1568.0 latency 0.0 32665 : 11210a90 sample 42155 bytes time -1568.0 -1535.0 latency 0.0 32668 : getstate 1 32681 : 11210a90 sample 41618 bytes time -1535.0 -1501.0 latency 0.0 32688 : getstate 1 32696 : 11210a90 sample 41394 bytes time -1501.0 -1468.0 latency 0.0 32703 : getstate 1 32715 : getstate 1 32719 : 11210a90 sample 41221 bytes time -1468.0 -1435.0 latency 0.0 32731 : 11210a90 sample 41515 bytes time -1435.0 -1401.0 latency 0.0 32735 : getstate 1 32742 : 11210a90 sample 41570 bytes time -1401.0 -1368.0 latency 0.0 32748 : getstate 1 32752 : 11210a90 sample 43045 bytes time -1368.0 -1335.0 latency 0.0 32762 : getstate 1 32765 : 11210a90 sample 42187 bytes time -1335.0 -1301.0 latency 0.0 32778 : getstate 1 32780 : 11210a90 sample 41181 bytes time -1301.0 -1268.0 latency 0.0 32791 : 11210a90 sample 41675 bytes time -1268.0 -1235.0 latency 0.0 32793 : getstate 1 32804 : 11210a90 sample 42541 bytes time -1235.0 -1201.0 latency 0.0 32813 : getstate 1 32818 : 11210a90 sample 41916 bytes time -1201.0 -1168.0 latency 0.0 32827 : getstate 1 32833 : 11210a90 sample 40903 bytes time -1168.0 -1134.0 latency 0.0 32843 : 11210a90 sample 41798 bytes time -1134.0 -1101.0 latency 0.0 32846 : getstate 1 32855 : 11210a90 sample 41537 bytes time -1101.0 -1068.0 latency 0.0 32860 : getstate 1 32866 : 11210a90 sample 40623 bytes time -1068.0 -1034.0 latency 0.0 32877 : getstate 1 32880 : 11210a90 sample 40275 bytes time -1034.0 -1001.0 latency 0.0 32889 : getstate 1 32890 : 11210a90 sample 37519 bytes time -1001.0 -968.0 latency 0.0 32901 : 11210a90 sample 37575 bytes time -968.0 -934.0 latency 0.0 32903 : getstate 1 32912 : 11210a90 sample 38719 bytes time -934.0 -901.0 latency 0.0 32920 : getstate 1 32928 : 11210a90 sample 36653 bytes time -901.0 -867.0 latency 0.0 32934 : getstate 1 32940 : 11210a90 sample 36593 bytes time -867.0 -834.0 latency 0.0 32951 : 11210a90 sample 35818 bytes time -834.0 -801.0 latency 0.0 32954 : getstate 1 32960 : 11210a90 sample 36516 bytes time -801.0 -767.0 latency 0.0 32966 : getstate 1 32974 : 11210a90 sample 35436 bytes time -767.0 -734.0 latency 0.0 32986 : 11210a90 sample 36906 bytes time -734.0 -701.0 latency 0.0 32986 : getstate 1 32996 : 11210a90 sample 37786 bytes time -701.0 -667.0 latency 0.0 32998 : getstate 1 33008 : 11210a90 sample 36125 bytes time -667.0 -634.0 latency 0.0 33012 : getstate 1 33019 : 11210a90 sample 36410 bytes time -634.0 -601.0 latency 0.0 33027 : getstate 1 33034 : 11210a90 sample 36077 bytes time -601.0 -567.0 latency 0.0 33045 : 11210a90 sample 37942 bytes time -567.0 -534.0 latency 0.0 33047 : getstate 1 33060 : 11210a90 sample 36691 bytes time -534.0 -500.0 latency 0.0 33066 : getstate 1 33071 : 11210a90 sample 36991 bytes time -500.0 -467.0 latency 0.0 33075 : getstate 1 33082 : 11210a90 sample 37085 bytes time -467.0 -434.0 latency 0.0 33091 : getstate 1 33092 : 11210a90 sample 36362 bytes time -434.0 -400.0 latency 0.0 33103 : 11210a90 sample 36669 bytes time -400.0 -367.0 latency 0.0 33109 : getstate 1 33112 : 11210a90 sample 36624 bytes time -367.0 -334.0 latency 0.0 33126 : 11210a90 sample 38299 bytes time -334.0 -300.0 latency 0.0 33129 : getstate 1 33139 : getstate 1 33140 : 11210a90 sample 37931 bytes time -300.0 -267.0 latency 0.0 33152 : getstate 1 33153 : 11210a90 sample 38297 bytes time -267.0 -234.0 latency 0.0 33163 : 11210a90 sample 38490 bytes time -234.0 -200.0 latency 0.0 33172 : getstate 1 33176 : 11210a90 sample 40219 bytes time -200.0 -167.0 latency 0.0 33184 : getstate 1 33188 : 11210a90 sample 45656 bytes time -167.0 -133.0 latency 0.0 33199 : 11210a90 sample 44289 bytes time -133.0 -100.0 latency 0.0 33204 : getstate 1 33210 : 11210a90 sample 39973 bytes time -100.0 -67.0 latency 0.0 33216 : getstate 1 33222 : 11210a90 sample 38835 bytes time -67.0 -33.0 latency 0.0 33230 : getstate 1 33234 : 11210a90 sample 43513 bytes time -33.0 0.0 latency 0.0 33246 : 11210a90 sample 39879 bytes time 0.0 1.0 latency 0.0 <-- preroll ends 33250 : getstate 1 33262 : getstate 1 33262 : 11210a90 run sto 23440168ms st 0ms 33262 : 11210a90 sample 40240 bytes time 33.0 34.0 latency 33.0 33302 : 11210a90 sample 40200 bytes time 67.0 68.0 latency 42.204 33337 : 11210a90 sample 40430 bytes time 100.0 101.0 latency 41.204 33464 : 11210a90 sample 40407 bytes time 134.0 135.0 latency 37.8390 33497 : 11210a90 sample 43949 bytes time 167.0 168.0 latency 36.8390 33531 : 11210a90 sample 40345 bytes time 200.0 201.0 latency 35.8390 33559 : 11210a90 sample 40497 bytes time 234.0 235.0 latency 41.6530 33600 : 11210a90 sample 40504 bytes time 267.0 268.0 latency 33.7936 33626 : 11210a90 sample 114853 bytes time 300.0 301.0 latency 40.7936 33658 : 11210a90 sample 20719 bytes time 334.0 335.0 latency 42.7936 

client

31372 : getstate 2 32794 : f622d30 sample 4515 bytesd time 30199.0 30232.0 latency -52.0 <---discontinuity 32809 : f622d30 sample 62335 bytes time 30232.0 30265.0 latency -34.0 32843 : f622d30 sample 51483 bytes time 30265.0 30299.0 latency -35.0 32869 : f622d30 sample 62535 bytes time 30299.0 30332.0 latency -27.0 32898 : f622d30 sample 62041 bytes time 30332.0 30365.0 latency -23.0 32917 : f622d30 sample 61509 bytes time 30365.0 30399.0 latency -9.0 32937 : f622d30 sample 62280 bytes time 30399.0 30432.0 latency 5.0 32958 : f622d30 sample 63084 bytes time 30432.0 30465.0 latency 17.0 32984 : f622d30 sample 62388 bytes time 30465.0 30499.0 latency 24.0 33019 : f622d30 sample 61956 bytes time 30499.0 30532.0 latency 23.0 33054 : f622d30 sample 52196 bytes time 30532.0 30566.0 latency 21.0 33104 : f622d30 sample 53707 bytes time 30566.0 30599.0 latency 5.0 33135 : f622d30 sample 55162 bytes time 30599.0 30632.0 latency 8.0 33196 : f622d30 sample 54511 bytes time 30632.0 30666.0 latency -21.0 33224 : f622d30 sample 53676 bytes time 30666.0 30699.0 latency -15.0 33265 : f622d30 sample 54214 bytes time 30699.0 30732.0 latency -23.0 33287 : f622d30 sample 53590 bytes time 30732.0 30766.0 latency -12.0 33336 : f622d30 sample 54067 bytes time 30766.0 30799.0 latency -27.0 33369 : f622d30 sample 55115 bytes time 30799.0 30832.0 latency -27.0 33416 : f622d30 sample 56462 bytes time 30832.0 30866.0 latency -40.0 33455 : f622d30 sample 45412 bytes time 30866.0 30899.0 latency -46.0 33487 : f622d30 sample 49165 bytes time 30899.0 30933.0 latency -45.0 33538 : f622d30 sample 47378 bytes time 30933.0 30966.0 latency -62.0 33577 : f622d30 sample 47024 bytes time 30966.0 30999.0 latency -68.0 33616 : f622d30 sample 46739 bytes time 30999.0 31033.0 latency -74.0 33663 : f622d30 sample 45601 bytes time 31033.0 31066.0 latency -87.0 33690 : f622d30 sample 45939 bytes time 31066.0 31099.0 latency -81.0 33732 : f622d30 sample 47212 bytes time 31099.0 31133.0 latency -90.0 33775 : f622d30 sample 44130 bytes time 31133.0 31166.0 latency -98.0 33819 : f622d30 sample 43858 bytes time 31166.0 31200.0 latency -110.0 33851 : f622d30 sample 44417 bytes time 31200.0 31233.0 latency -108.0 33880 : f622d30 sample 44330 bytes time 31233.0 31266.0 latency -104.0 33924 : f622d30 sample 44660 bytes time 31266.0 31300.0 latency -115.0 33959 : f622d30 sample 43832 bytes time 31300.0 31333.0 latency -116.0 33989 : f622d30 sample 43512 bytes time 31333.0 31366.0 latency -113.0 34023 : f622d30 sample 43342 bytes time 31366.0 31400.0 latency -114.0 34062 : f622d30 sample 43589 bytes time 31400.0 31433.0 latency -119.0 34088 : f622d30 sample 42888 bytes time 31433.0 31466.0 latency -112.0 34118 : f622d30 sample 44217 bytes time 31466.0 31500.0 latency -108.0 34159 : f622d30 sample 46987 bytes time 31500.0 31533.0 latency -116.0 34185 : f622d30 sample 45233 bytes time 31533.0 31567.0 latency -109.0 34209 : f622d30 sample 46052 bytes time 31567.0 31600.0 latency -99.0 34237 : f622d30 sample 45819 bytes time 31600.0 31633.0 latency -94.0 34258 : f622d30 sample 46946 bytes time 31633.0 31667.0 latency -82.0 34286 : f622d30 sample 44469 bytes time 31667.0 31700.0 latency -76.0 34306 : f622d30 sample 44398 bytes time 31700.0 31733.0 latency -63.0 34333 : f622d30 sample 45456 bytes time 31733.0 31767.0 latency -57.0 34354 : f622d30 sample 46051 bytes time 31767.0 31800.0 latency -44.0 34374 : f622d30 sample 38146 bytes time 31800.0 31833.0 latency -31.0 34402 : f622d30 sample 38028 bytes time 31833.0 31867.0 latency -26.0 34482 : f622d30 sample 39705 bytes time 31867.0 31900.0 latency -72.0 34507 : f622d30 sample 36533 bytes time 31900.0 31934.0 latency -64.0 34528 : f622d30 sample 37019 bytes time 31934.0 31967.0 latency -51.0 34569 : f622d30 sample 37277 bytes time 31967.0 32000.0 latency -59.0 34600 : f622d30 sample 36698 bytes time 32000.0 32034.0 latency -56.0 34626 : f622d30 sample 36436 bytes time 32034.0 32067.0 latency -48.0 34651 : f622d30 sample 37650 bytes time 32067.0 32100.0 latency -41.0 34670 : f622d30 sample 38623 bytes time 32100.0 32134.0 latency -26.0 34689 : f622d30 sample 38525 bytes time 32134.0 32167.0 latency -12.0 34723 : f622d30 sample 38196 bytes time 32167.0 32201.0 latency -12.0 34749 : f622d30 sample 38130 bytes time 32201.0 32234.0 latency -5.0 34771 : f622d30 sample 39116 bytes time 32234.0 32267.0 latency 7.0 34791 : f622d30 sample 45008 bytes time 32267.0 32301.0 latency 19.0 34818 : f622d30 sample 40588 bytes time 32301.0 32334.0 latency 27.0 34848 : f622d30 sample 40633 bytes time 32334.0 32367.0 latency 29.0 34948 : f622d30 sample 41867 bytes time 32367.0 32401.0 latency -37.0 34970 : f622d30 sample 40974 bytes time 32401.0 32434.0 latency -26.0 34999 : f622d30 sample 41854 bytes time 32434.0 32467.0 latency -22.0 35018 : f622d30 sample 42312 bytes time 32467.0 32501.0 latency -8.0 35050 : f622d30 sample 42155 bytes time 32501.0 32534.0 latency -6.0 35078 : f622d30 sample 41618 bytes time 32534.0 32568.0 latency -1.0 35102 : f622d30 sample 41394 bytes time 32568.0 32601.0 latency 9.0 35122 : f622d30 sample 41221 bytes time 32601.0 32634.0 latency 22.0 35148 : f622d30 sample 41515 bytes time 32634.0 32668.0 latency 29.0 35166 : f622d30 sample 41570 bytes time 32668.0 32701.0 latency 45.0 35198 : f622d30 sample 43045 bytes time 32701.0 32734.0 latency 47.0 35216 : f622d30 sample 42187 bytes time 32734.0 32768.0 latency 61.0 35239 : f622d30 sample 41181 bytes time 32768.0 32801.0 latency 72.0 35274 : f622d30 sample 41675 bytes time 32801.0 32834.0 latency 70.0 35301 : f622d30 sample 42541 bytes time 32834.0 32868.0 latency 76.0 35319 : f622d30 sample 41916 bytes time 32868.0 32901.0 latency 92.0 35370 : f622d30 sample 40903 bytes time 32901.0 32935.0 latency 75.0 35395 : f622d30 sample 41798 bytes time 32935.0 32968.0 latency 84.0 35415 : f622d30 sample 41537 bytes time 32968.0 33001.0 latency 97.0 35437 : f622d30 sample 40623 bytes time 33001.0 33035.0 latency 107.0 35461 : f622d30 sample 40275 bytes time 33035.0 33068.0 latency 117.0 35482 : f622d30 sample 37519 bytes time 33068.0 33101.0 latency 129.0 35518 : f622d30 sample 37575 bytes time 33101.0 33135.0 latency 126.0 35537 : f622d30 sample 38719 bytes time 33135.0 33168.0 latency 142.0 35559 : f622d30 sample 36653 bytes time 33168.0 33202.0 latency 152.0 35576 : f622d30 sample 36593 bytes time 33202.0 33235.0 latency 170.0 35607 : f622d30 sample 35818 bytes time 33235.0 33268.0 latency 171.0 35698 : f622d30 sample 36516 bytes time 33268.0 33302.0 latency 113.0 35724 : f622d30 sample 35436 bytes time 33302.0 33335.0 latency 122.0 35750 : f622d30 sample 36906 bytes time 33335.0 33368.0 latency 128.0 35769 : f622d30 sample 37786 bytes time 33368.0 33402.0 latency 143.0 35796 : f622d30 sample 36125 bytes time 33402.0 33435.0 latency 149.0 35827 : f622d30 sample 36410 bytes time 33435.0 33468.0 latency 151.0 35852 : f622d30 sample 36077 bytes time 33468.0 33502.0 latency 159.0 35871 : f622d30 sample 37942 bytes time 33502.0 33535.0 latency 175.0 35896 : f622d30 sample 36691 bytes time 33535.0 33569.0 latency 182.0 35926 : f622d30 sample 36991 bytes time 33569.0 33602.0 latency 186.0 35949 : f622d30 sample 37085 bytes time 33602.0 33635.0 latency 196.0 35971 : f622d30 sample 36362 bytes time 33635.0 33669.0 latency 207.0 35989 : f622d30 sample 36669 bytes time 33669.0 33702.0 latency 223.0 36017 : f622d30 sample 36624 bytes time 33702.0 33735.0 latency 229.0 36045 : f622d30 sample 38299 bytes time 33735.0 33769.0 latency 233.0 36064 : f622d30 sample 37931 bytes time 33769.0 33802.0 latency 248.0 36086 : f622d30 sample 38297 bytes time 33802.0 33835.0 latency 259.0 36108 : f622d30 sample 38490 bytes time 33835.0 33869.0 latency 270.0 36126 : f622d30 sample 40219 bytes time 33869.0 33902.0 latency 286.0 36157 : f622d30 sample 45656 bytes time 33902.0 33936.0 latency 288.0 36177 : f622d30 sample 44289 bytes time 33936.0 33969.0 latency 302.0 36205 : f622d30 sample 39973 bytes time 33969.0 34002.0 latency 307.0 36225 : f622d30 sample 38835 bytes time 34002.0 34036.0 latency 321.0 36251 : f622d30 sample 43513 bytes time 34036.0 34069.0 latency 329.0 36277 : f622d30 sample 39879 bytes time 34069.0 34070.0 latency 336.0 <--- end of preroll frames 36608 : f622d30 sample 40240 bytes time 34102.0 34103.0 latency 37.0 36648 : f622d30 sample 40200 bytes time 34136.0 34137.0 latency 32.0 36676 : f622d30 sample 40430 bytes time 34169.0 34170.0 latency 36.0 36711 : f622d30 sample 40407 bytes time 34203.0 34204.0 latency 35.0 36748 : f622d30 sample 43949 bytes time 34236.0 34237.0 latency 31.0 36786 : f622d30 sample 40345 bytes time 34269.0 34270.0 latency 26.0 36805 : f622d30 sample 40497 bytes time 34303.0 34304.0 latency 41.0 36846 : f622d30 sample 40504 bytes time 34336.0 34337.0 latency 33.0 36872 : f622d30 sample 114853 bytes time 34369.0 34370.0 latency 40.0 36906 : f622d30 sample 20719 bytes time 34403.0 34404.0 latency 41.0 

seek involves pausing , restarting streaming: have discontinuity in time stamping. either have re-claculate time stamps automatically on sending side restore continuity, or otherwise detect on client side , rebase time stamps there. or, option, client side flush queues , continue fresh.


Comments

Popular posts from this blog

curl - PHP fsockopen help required -

HTTP/1.0 407 Proxy Authentication Required PHP -

c# - Resource not found error -