Search Unity

  1. Welcome to the Unity Forums! Please take the time to read our Code of Conduct to familiarize yourself with the forum rules and how to post constructively.
  2. Dismiss Notice

Images2Video[Release]

Discussion in 'Assets and Asset Store' started by isaac_champ, Aug 30, 2016.

  1. isaac_champ

    isaac_champ

    Joined:
    Aug 29, 2016
    Posts:
    12


    Images2Video
    Images2Video is a script tool which can help you to convert a series of images and a audio file into a H264 mp4 video file.

    Simple and easy to use it
    • We wrap the complex functions as an single C#, VideoConverter, and make it easy for use.
    • Just three steps,
      1. Initialise required parameters, such as fps, the audio file path and image size.
      2. Pass images data bytes and begin to merge data.
      3. Finish the merging and close the video file.
    • The generated video file will be save in the album.
    • A simple scene, ScreenshotExample is included with sample scripts which demonstrate its functionality.
    Please check README file in the plugin to get more information.

    Specifications



      • Using native iOS/Android API functions
      • Support iOS and Android
      • OpenGL ES 2.0/3.0 on Android
      • Metal/OpenGL ES 3.0 on iOS
      • Tested on Unity 2017.03
      • Optimized for great performance
      • Export H264 mp4 format video
    Any feedbacks and questions are welcome, you can send the mail to service@championtek.com.tw.
     
    Last edited: Dec 22, 2017
  2. isaac_champ

    isaac_champ

    Joined:
    Aug 29, 2016
    Posts:
    12
    Images2Video[Update version 2.1.0]
    1. Add two new example scenes to demonstrate how to merge images to the video and render screenshots then merge images to the video.
    2. Record the texture in realtime.
    3. Implement the function which gets the render data from frame buffer to improve the performance.
     
  3. protostarDean

    protostarDean

    Joined:
    Jun 26, 2014
    Posts:
    7
    Is this still supported?
     
  4. isaac_champ

    isaac_champ

    Joined:
    Aug 29, 2016
    Posts:
    12
    Sure. We still provide the technical support.
     
  5. sam598

    sam598

    Joined:
    Sep 21, 2014
    Posts:
    60
    When using VirtualCamera.cs in the latest version of the asset (3.0.5) on iOS 11, in each recording around 40 frames are not recorded.

    If videoConverter.ConvertFrameBufferToVideo() is called 180 times during a recording, only 140 frames are output in the final video. In previous versions of your plugin (3.0.0), if that function is called 180 times, 179 frames are output in the final video.

    These frames appear to be missing from the front of the recording. How can I make sure that the final output video contains as many frames as are called using videoConverter.ConvertFrameBufferToVideo?

    Thank you!
     
  6. isaac_champ

    isaac_champ

    Joined:
    Aug 29, 2016
    Posts:
    12
    Since while recording the screen, the FPS sometimes drop down, to make sure converting the video with the correct FPS, we use the first 40 frames to determine the real FPS.

    If you call ConvertFramrBufferToVideo manually, you can call it with additional 40 times.

    Sorry about this!

    BR,

    Isaac
     
  7. sam598

    sam598

    Joined:
    Sep 21, 2014
    Posts:
    60
    Thank you for the prompt response, I think I have a good sense of what is going on.

    In my opinion this is the wrong way to handle this. The framerate that the Unity developer sets in the Unity application should be the framerate of the output video. Every frame that the Unity application sends to the plugin should be in the output video.

    The plugin definitely should not be changing or estimating the framerate behind the scenes.

    The plugin absolutely should not be dropping any frames the Unity application sends to the video encoder.

    I understand that if there are dropped frames the video will not playback in realtime. But it should not be the Plugin developer's job to handle this. It is the Unity developer's job to make sure that the application runs without dropped frames while recording video.

    Even with variable framerate estimation, it's a big assumption that you would be able to estimate the application's overall performance in just 40 frames. The current functionality is unreliable and too unpredictable.

    For the time being I can modify the source code to get the plugin working. Please consider modifying this behavior, or making an alternate version of the virtual camera that takes an "absolute framerate" opposed to estimating a "relative framerate", and records every frame the application requests.
     
  8. isaac_champ

    isaac_champ

    Joined:
    Aug 29, 2016
    Posts:
    12
    We appreciate your suggestion.
    We will put it on our bug track and fix it ASAP.
     
  9. nikosurfing

    nikosurfing

    Joined:
    Mar 11, 2014
    Posts:
    45
    Hi, any working demo APK to test on? I want to buy this asset to record video as final output
     
  10. david-arcus

    david-arcus

    Joined:
    Jul 17, 2017
    Posts:
    9
    Hello, I’ve recently purchased your plugin. I’m testing videos recorded with a Samsung Galaxy S5, and I’m using OpenGLSE3 for the graphics api, but the resulting video is just coming out as a black screen. Do you have any advice on how to troubleshoot this? If I force OpenGLSE2 it works but the performance in my app is very slow
     
  11. Starship0225

    Starship0225

    Joined:
    Nov 17, 2017
    Posts:
    3
    Hi, i have an issue with demo scene "VirtualCameraExample".
    I'm using the Pixel phone and Unity version is 2017.2.0f3.
    When I run the demo scene and touch the "Begin" button, recording seems to work.
    But after about 10~15 seconds the app dies.
    Can you check on this?
    Thank you.
     
  12. sam598

    sam598

    Joined:
    Sep 21, 2014
    Posts:
    60
    Can you please update the sourcecode to the latest version (source code appears to be version 3.0.4) so I can fix this issue? Thanks.
     
  13. isaac_champ

    isaac_champ

    Joined:
    Aug 29, 2016
    Posts:
    12
    Finally, we have completed OpenGL ES 3.0 support for iOS and submitted it.
    This version, 4.0.0, fix OpenGL ES 3.0 bugs on Android devices, especially on Samsung devices.

    We appreciate whom use our plugin and give us many feedbacks to improve this plugin.

    Cheers!
     
    david-arcus likes this.
  14. isaac_champ

    isaac_champ

    Joined:
    Aug 29, 2016
    Posts:
    12
    We are working on capturing the render texture of Vuforia ARCamera.
    Since it's almost done, just need time to test.

    Thanks all that give us feedbacks to improve this plugin!
     
  15. Dr-Jarold

    Dr-Jarold

    Joined:
    Nov 3, 2014
    Posts:
    3
    Hey. We bought your plugin. However, for androids, he is not a worker. On the test scene "VirtualCameraExample" on the device, we get errors.
    E/Images2VideoJNI: after glReadPixels() glError:GL_INVALID_FRAMEBUFFER_OPERATION
    As a result, the video is just black. How can I correct this error.
     
  16. isaac_champ

    isaac_champ

    Joined:
    Aug 29, 2016
    Posts:
    12
    Hello,
    Which plugin version you use? And which kind of OpenGL ES version you set?
    This error means that you device does not support OpenGL ES 3.0.

    Could you also provide your mobile device model?

    BR,

    Isaac
     
  17. Dr-Jarold

    Dr-Jarold

    Joined:
    Nov 3, 2014
    Posts:
    3
    Plugin Version 4.0.1
    Graphics API in Other settings set as: OpenGLES3
    Mobile: YotaPhone 2: (OpenGL ES 3.0 Adreno ™ 330) https://gfxbench.com/device.jsp?ben...ota+Yotaphone+2+(YD201,+YD206)&testgroup=info

    Galaxy Note4: (OpenGL ES 3.0 OpenGL ES 3.1 Mali-T760)
    https://gfxbench.com/device.jsp?ben...(Mali-T760,+SM-N910x,+SM-N916)&testgroup=info
     
  18. isaac_champ

    isaac_champ

    Joined:
    Aug 29, 2016
    Posts:
    12
    Hello Jarold,
    Could you check the order of the graphic apis in Player Settings>Other Settings>Graphics APIs?
    You can uncheck Auto Graphics API to see the order.

    Thanks
     
  19. Dr-Jarold

    Dr-Jarold

    Joined:
    Nov 3, 2014
    Posts:
    3
    Yes, I can...
     

    Attached Files:

  20. sam598

    sam598

    Joined:
    Sep 21, 2014
    Posts:
    60
    The plugin crashes immediately on startup when Vuforia is included in the project.

    UnityGfxDeviceWorker (15): EXC_BAD_ACCESS (code=1, address=0x1)

    Images2Video 4.0.2
    Vuforia 7.0.47
    XCode 9.2
     
  21. isaac_champ

    isaac_champ

    Joined:
    Aug 29, 2016
    Posts:
    12
    What kind of Graphic APIs you use?
    Since Vuforia conflicts with our plugin while using Metal graphic API, you need to use OpenGL ES 3.0.