Closed MirzaIkhsan closed 1 year ago
Thanks for opening this issue. The code seems to be alright, but I am currently on vacation till next week with no way to debug.
Have you tried to to use different output formats or render functions? Also check if the example of my plugin works for you!
This seems to be a valid concern and I will be debugging on that as soon as I am back to work! Sorry for the waiting time. Until then I might be able to help you out by providing me with the debug log (not necessarily for each frame)?!
Thanks for replying this issue. I already tried different output formats and render functions. But I found some interesting thing. It seems that if I record widget with bigger dimensions I have to increase the pixelRatio
and also decrease simultaneousCaptureHandlers
. But the probability of the video successfully rendering is no more than 20%. Sometime it works and sometime it doesn't. Also the bigger pixelRatio
will make the rendering animation will go laggy.
Thanks for opening this issue. The code seems to be alright, but I am currently on vacation till next week with no way to debug.
Have you tried to to use different output formats or render functions? Also check if the example of my plugin works for you!
This seems to be a valid concern and I will be debugging on that as soon as I am back to work! Sorry for the waiting time. Until then I might be able to help you out by providing me with the debug log (not necessarily for each frame)?!
Yes I already tried the example of your code. It works fine, but if I increase the size of the widget from width=100
to width=500
it will returns the MP4 with 0B. But it will works fine if I increase the pixelRatio=8
but it will going to be laggy
The laggy rendering when capturing at high quality is a known device limitation, described under "limitation" in the docs. (Including the reason)
The result should never be 0bytes though. Is the process capturing the frames? It might be a conversation issue of FFmpeg, which I am unaware until now. It might very well help if you send me the logs with the logLevel = LogLevel.debug
.
Thanks for the issue. I was able to reproduce the problem. The problem is with an expanded widgets, that the first frame somehow has a different size than the others. A temporary fix for you is to give your widget fixed constraints. I will address the issue within an update in the next days, by forcing(converting) same-size frames.
Thanks for the response. I think there is another problem, that is if I use Container(width=200, height=200)
with RenderSetting(pixelRatio=1, frameRate=30)
it will also make the output become 0B too. I don't really know what's going on since the debug didn't say anything.
Alright, I was wrong in my assumption that this is a different-size-frame issue.
The problem you are probably experiencing is due to frame sizes not being dividable by two, which throws an error on the FFmpeg (the conversion engine) side. With the ca8fed7a3fac2af1544fc6c8107bd79789d38b96 release (or render: ^0.0.9) I have addressed all issues you had and side issues, that appeared while debugging your case:
logInConsole: true,
)PS.: You should not have any problems with expandable widgets anymore. Just make sure that pixelRatio is not too big, so the player cant visualize it anymore
I created a simple animation and start recording it using
captureMotionWithStream
with expected result as MP4. But I don't know what's wrong since I follow the example. It's a simple app, so I think I'm gonna attach the code hereCode
Current Result An MP4 file with 0B, so it can't be played using Media Player
Expected behavior A playable MP4 video
Package version I use the Render v.0.0.7