-
Notifications
You must be signed in to change notification settings - Fork 86
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Uneven recording size getting generated #793
Comments
How much variation do you see? |
As @xwu2git mentioned a fixed length (in size) won't be possible without fixed gop sizes |
@nnshah1 @xwu2git I have found this in gstreamer documentation, https://gstreamer.freedesktop.org/documentation/openh264/openh264enc.html?gi-language=c#openh264enc:gop-size which stats about gop-size parameter. But how to implement it in our pipeline.json? |
@divdaisymuffin Can you give more details on the goal / requirement and the variation in size you are seeing currently? There is also a max bytes option to splitmuxsink that could be explored. But its not clear your intent - is it that all files have the same exact size or that they are bounded? And how much variation is acceptable? |
@nnshah1 @xwu2git Actually Our target is to get a fixed length video as a output snippet, by fix video length I mean fixed time duration, like if I set 5 mins all the snippets should be of 5 mins only, not less not more than that. Currently we were using The thing you have mentioned about GOP so I have checked into it and found out that its fixed to 2secs or 40 frames for camera. |
@nnshah1 @xwu2git we got another issue while running pipeline on a live rtsp camera, Please look at the error below
which says specifically "buffer has no PTS", this we have faced first time only on this camera, it is running fine on another camera. What is a alternate way to create a recording without PTS, Can we do it using gstreamer some parameter tuning? Pipeline template we are using |
@divdaisymuffin Can you double check the properties of the camera in terms of encoding - that it is h264, etc. - also does the pipeline work if you remove the splitmuxsink branch? |
@nnshah1 yes we checked camera property, it is h264 only, also confirmed by playing same rtspurl on vlc player and checked codec information, it is h264 only. |
@divdaisymuffin That's correct - I wanted to just confirm if the pipeline operates normally for detection and the problem is isolated to recording. That could give us an idea of what to look at. Can you also share the make / model of the camera just in case we can find something related to that? |
@nnshah1 please find Camera Details Device Type |
@nnshah1 Analytics is working fine, issue is with recording where in recording filename the offset value is _0 continuously. For eg. File name is 1634568904331_0.mp4 |
Are the timestamps in the metadata also all at 0? Is it possible to reproduce this from a recorded file (that is record via vlc and then run through pipeline directly with a filesrc?) |
@nnshah1 We found issue with the camera Also it seems like, the splitmuxsink is very dependent on these informations from RTP packets? Do you know any other plugin which can create recording by neglecting DTS and PTS information |
one thing you could try is to add a videorate element before the splitmuxsink to add in pts - I'd still like ot understand what timestamps the metadata are reporting - as you'll want to ensure you can synchronize those. in your gvapython code - you can get access to the buffer and print the .pts and .dts yourself - you could also potentially modify it |
@divdaisymuffin We're not able to easily reproduce the issue you're seeing or offer a solution. Is there a way to reproduce without access to the camera in question? Also I believe we would want to open a seperate issue for this specific case (missing PTS / DTS). Let's use this issue to focus on normalizing recording segment size. |
Hi @nnshah1
We are facing an issue where when we specify the "max-size-time" field in pipeline.json in nanoseconds, we are observing that the size of recording getting generated are not same, sometimes they are less duration and sometimes they are of high duration.
Please let us know how to get uniform size recordings.
The text was updated successfully, but these errors were encountered: