Synchronize archived videos

Answered

Comments

5 comments

  • Avatar
    Andrey Terentyev

    Hello Mat,

    I need to train my multi-camera tracking model with videos recorded by NX Witness.

    Do you need these recorded videos specifically or any other videos may suit your needs?

    What about using the in advanced prepared video clip with the testcamera?

    BTW, we have already discussed this https://support.networkoptix.com/hc/en-us/community/posts/360052615193-testcamera-synchronize-multiple-streams
    How did it do?

    0
    Comment actions Permalink
  • Avatar
    Sergey Yuldashev

    Hi Mat L,

    As of right now exporting video with /media/[camera uuid].mp4?pos=[start]&endPos=[end] provides you with an mp4 file with zero-value of FragmentAbsoluteTime mp4 metadata parameter.

    Without an accurate_seek parameter passed you can never be sure what is the actual start time stamp of the video file. The download will start from the closest group of packets start which might be even a second before the requested value.

    We plan to change that in near future. One of the patches to 4.2 version will likely contain this change as well as the upcoming version.

    On the other hand, the second approach you mention should work as a charm. 
    No need to worry about video interruptions in this case.
    Server has the embedded protection. If there's no data in the RTP stream for more than 10 seconds, new media file will be started. 
    If there's no data in the RTP stream for less than 10 seconds, there will be just a gap inside the mkv file but PTS counter won't stop.

    1
    Comment actions Permalink
  • Avatar
    Mat L

    Andrey Terentyev, the post I previously opened (360052615193-testcamera-synchronize-multiple-streams) was really about testing the inference phase (synchronizing live frames and getting tracking results from a deep learning model - which I solved with your help, by the way).
    This new post is about getting synchronized archived videos and training further my deep learning model.

    Sergey Yuldashev, about "one of the patches to 4.2 version...", you mean a non-zero FragmentAbsoluteTime?

    0
    Comment actions Permalink
  • Avatar
    Mat L

    Also, Sergey Yuldashev, "accurate_seek" works fine but is there a way of using it and getting the original resolution without re-encoding?

    For now, I'm using /media/[camera uuid].mp4?pos=[start]&endPos=[end]&resolution=[original resolution]&accurate_seek but it results in much larger (x3) files (because of re-encoding, I guess).

    0
    Comment actions Permalink
  • Avatar
    Andrey Terentyev

    Hello Mat,

    is there a way of using it and getting the original resolution without re-encoding?

    Yes. You just omit the "resolution" parameter. In this case, the Server will send a stream with original resolution.

    However, there is a peculiar aspect. For instance, when you have a  "Low-res + motion" recording configured on a camera, the original resolution will change in time while the Server sends a stream.

    1
    Comment actions Permalink

Please sign in to leave a comment.