Search Unity

[Released] Demolition Media Hap — multi-platform 8k@60fps GPU video playback

Discussion in 'Assets and Asset Store' started by leavittx, Feb 12, 2017.

  1. leavittx

    leavittx

    Joined:
    Dec 27, 2013
    Posts:
    176
    @ksumiya Please take a look at a direct message from me!
     
    ksumiya likes this.
  2. LostPanda

    LostPanda

    Joined:
    Apr 5, 2013
    Posts:
    173
    @leavittx

    Is there about release time for synchronized versions of multiple playback pc? Thanks again.
     
  3. leavittx

    leavittx

    Joined:
    Dec 27, 2013
    Posts:
    176
    Yes, that would be my next priority. I have to test everything in the network, and solve some of the remaining technical problems. Thanks for your patience
     
    LostPanda likes this.
  4. LostPanda

    LostPanda

    Joined:
    Apr 5, 2013
    Posts:
    173
    thanks for the reply. Looking forward to the release of this version this year, I have been looking forward to it for a long time.
     
    leavittx likes this.
  5. leavittx

    leavittx

    Joined:
    Dec 27, 2013
    Posts:
    176
  6. leavittx

    leavittx

    Joined:
    Dec 27, 2013
    Posts:
    176
    Other features of the new 2020 plugin:

    — Reworked playback loop - even more smooth playback
    — Improved stability and performance - can play even more videos now
    — Unlocked decode threads number: it scales with the the CPU concurrency capabilities
    — Frees your render and main threads: texture updating is done completely in background threads
    — Better playback speed control
    — Multichannel audio support (5.1 has been tested)
    — Only 10Mb required for the plugin DLLs

    The plugin is currently in Asset Store review.
    Will post information on the licensing policy for the new version somewhere soon!
     
    LostPanda likes this.
  7. LostPanda

    LostPanda

    Joined:
    Apr 5, 2013
    Posts:
    173
    It's so good, I can't wait to use the new version. Thank you very much. All the waiting makes me feel worthwhile.
     
    leavittx likes this.
  8. leavittx

    leavittx

    Joined:
    Dec 27, 2013
    Posts:
    176
    The license information is the following.

    First of all, the new asset is a major version upgrade, i.e. it's paid one.
    But for everyone who purchased the plugin in the last half a year, the upgrade is free.

    Additionally here is the new license policy (which always was meant like that, not explicilty stated though):
    when you do a commercial project with Demolition Media Hap 2020, you should obtain a separate license for each machine involved in your project. So the license policy is per project per machine (trust based)

    @LostPanda will get a free voucher because he pushed the development over the last years with his frequent requests, which I was not able to reply to every time though (please feel free to support the development if you will feel like doing it after trying the new plugin)

    Another important note: right now the version will be available for Windows/DX11 only, Unity 2019 and higher required, but OS X/OpenGL should come shortly, especially if there will be any requests for it.

    It's released as a "beta" version, just to make sure people test it before pushing to production. I've tested it quite a lot, but there might be bugs which other people find. Demo version will be available shortly.
     
    LostPanda likes this.
  9. LostPanda

    LostPanda

    Joined:
    Apr 5, 2013
    Posts:
    173
    @leavittx
    Thank you so much for the free upgrade. At the moment I see no software has been released on assetstore yet. I would like to know how I can get the upgrade. Do you mean that when it is released on the assetstore, I can test the upgrade?
    Also if you need multiple pc to test in sync, please contact me. I have 3 graphics processor desktop pc and a laptop. If you need it.
     
    leavittx likes this.
  10. leavittx

    leavittx

    Joined:
    Dec 27, 2013
    Posts:
    176
    @LostPanda Yes, we should wait until the review process is finished
     
  11. LostPanda

    LostPanda

    Joined:
    Apr 5, 2013
    Posts:
    173
    @leavittx it released! thanks. i want to know how free voucher. thanks againo_O


    upload_2020-7-16_17-40-21.png
     
    leavittx likes this.
  12. leavittx

    leavittx

    Joined:
    Dec 27, 2013
    Posts:
    176
    Hi everybody!
    Here is the 2020 Demo package (a small glitch effect added): https://dl.orangedox.com/4ZxeAJ

    In the Asset Store version, the sample videos got removed due to ne was requirements.
    They should be downloaded separately now (via link in README or from the Demo package above)
    Github page also got updated!

    @LostPanda Please check personal messages. Voucher is there. We can keep talking there
     
    Last edited: Jul 17, 2020
    LostPanda likes this.
  13. LostPanda

    LostPanda

    Joined:
    Apr 5, 2013
    Posts:
    173
    @leavittx this beta version 2020 is better than before. thanks! please check your gmail. thanks
     
  14. jeroenvdv

    jeroenvdv

    Joined:
    Oct 25, 2010
    Posts:
    52
    Just bought the asset and had a go. One thing that's still not correct is Seek (to Time or Frame), while paused.

    In my case, I need to be able to have the player paused and when requested by user, seek to a specific time. I have multiple players (all of them with container C# class above it to control the player). What I see now, is that some players skip to the right frame, some don't (quite randomly).

    Any solution? Not looking for a workaround like playing until we reach a point, because I need accurate jumping from (paused) still frame to still frame when requested.
     
  15. leavittx

    leavittx

    Joined:
    Dec 27, 2013
    Posts:
    176
    Would be happy to help. However I need to repro somehow - a minimal Unity project demonstrating this behavior would be the best.
    In my setup, the seeking works in paused state as expected
     
    Last edited: Aug 9, 2020
  16. jeroenvdv

    jeroenvdv

    Joined:
    Oct 25, 2010
    Posts:
    52
    Thanks @leavittx for having a look :)

    Demo project:
    *-

    Seems to be something with specific frames to seek to. When using for example Random.Range(0, _media.VideoNumFrames) a lot of seek actions do work.

    With this example, only sometimes the seek seems to work, most of the times it doesn't with these specific chosen seek-frames.

    Used your test file: Street
     
    Last edited: Aug 12, 2020
  17. leavittx

    leavittx

    Joined:
    Dec 27, 2013
    Posts:
    176
    I've just sent you a personal message with the fix. You can navigate to it through the Inbox button is in the upper right forum corner. Let's continue the further discussion on the bug there!
     
  18. LostPanda

    LostPanda

    Joined:
    Apr 5, 2013
    Posts:
    173
    @leavittx If this is an error of the plug-in itself, I hope that after the repair, the store assets can be updated in time. thanks.
     
    leavittx likes this.
  19. leavittx

    leavittx

    Joined:
    Dec 27, 2013
    Posts:
    176
    An update regrading the seeking bug. I've fixed it and sent an updated asset version to @jeroenvdv. Once the fix is confirmed, I will publish it on the asset store.
     
    LostPanda likes this.
  20. jeroenvdv

    jeroenvdv

    Joined:
    Oct 25, 2010
    Posts:
    52
    Sorry for the delay - I've just tested and can confirm the fix works great.

    Many thanks for the quick and great response. Much appreciated!!!
     
    leavittx likes this.
  21. leavittx

    leavittx

    Joined:
    Dec 27, 2013
    Posts:
    176
    @jeroenvdv Thanks for confirming!

    The updated asset version is expected to be on the Asset Store mid-september.
    If anyone interested in seeking bugfix and/or configurable GPU/RAM memory limits (new feature) in prior to that, please Direct Message to me!
     
    LostPanda likes this.
  22. LostPanda

    LostPanda

    Joined:
    Apr 5, 2013
    Posts:
    173
    @leavittx

    Don't forget to update the assetstore, thanks.
     
  23. leavittx

    leavittx

    Joined:
    Dec 27, 2013
    Posts:
    176
    The 1.0.1 version is in the Asset Store Review.
     
    LostPanda likes this.
  24. camrawne_lp

    camrawne_lp

    Joined:
    Jun 3, 2020
    Posts:
    1
    I'm having trouble using the plugin in a build. I'm on windows and using Unity 2019.4.10f1. I'm running the MapVideoToMaterial example scene and it works fine in the editor. When I make a build, nothing appears. The build size also appears to be very small, which indicates to me that the Hap video isn't being included in the build. Has anyone else encountered this?
     
  25. LostPanda

    LostPanda

    Joined:
    Apr 5, 2013
    Posts:
    173
    leavittx plugin is build ok. i test last build all is worked. please check your media path.
     
  26. leavittx

    leavittx

    Joined:
    Dec 27, 2013
    Posts:
    176
    @camrawne_lp Yes, the problem is most likely in incorrect path to the video file. You can put it to StreamingAssets folder if you like it to be auto-copied when building project. Don't forget to change the Path type accordingly (relative to Streaming Assets folder)!
     
  27. alperbulus

    alperbulus

    Joined:
    Apr 24, 2017
    Posts:
    1
    Hi,

    I've just downloaded the demo version 1.0.0. I'm using Unity 2019.2.4f1 (64-bit)

    Just out of the box, the plugin crashes Unity all together when running demo projects with RenderToUGUI and RenderToMaterial. (The projects with RenderToIMGUI and 360 ones work except the 360 stereo projectç That crashes too). Unfortunately for me I need this plugin to work with RenderToUGUI. I'll be using the plugin for playing videos with alpha channel on top of an image plane.

    I've tried my own videos to no avail as well.

    Thank you.
     
  28. leavittx

    leavittx

    Joined:
    Dec 27, 2013
    Posts:
    176
    @alperbulus Really sorry to hear that you're having a crash out there! Please check the direct messages. Looking forward to your reply
     
  29. leavittx

    leavittx

    Joined:
    Dec 27, 2013
    Posts:
    176
    Good news everyone. There is now a new Hap codec flavour called Hap R
    It's
    • Almost the same data rate as Hap Q, but much better quality (and built-in possibility for alpha channel)
    • When used with Alpha Transparency the data rate is lower compared to Hap Q Alpha
    • Video quality close to the original (thanks to using BC7 texture format)
    Quality comparison (lower 2 rows) and download/buy encoder for Adobe products:
    Jokyo HAP MeEncoder – HAP encoder plugin for Adobe Media Encoder and Premiere Pro
    Jokyo HAP AeEncoder – HAP encoder plugin for Adobe After Effects

    You can play Hap R with Demolition Media Hap of course!
     
    Last edited: Jan 20, 2021
    LostPanda and aivo like this.
  30. aivo

    aivo

    Joined:
    Feb 13, 2017
    Posts:
    30
    Is there a reason why the event MediaEvent.Type.VideoRenderTextureCreated is never populated but is actually there?

    I populate it myself for now, as it is quite handy for complex videoplayback behaviours.. am I missing something?
     
  31. leavittx

    leavittx

    Joined:
    Dec 27, 2013
    Posts:
    176
    It should be implemented indeed. Thanks for letting me know it's not there
     
    LostPanda likes this.
  32. leavittx

    leavittx

    Joined:
    Dec 27, 2013
    Posts:
    176
    Hi everyone!
    I'm currently working on a new Hap plugin version with network syncing support!
    You can sync video playback across multiple computers connected via a local area network (LAN).
    Just wondering now how many people out there would be interested in a such solution, and are there any people who would like to participate as beta testers?
     
  33. DevSpur

    DevSpur

    Joined:
    Jul 19, 2014
    Posts:
    20
    I'm verrrrrry interested
     
  34. leavittx

    leavittx

    Joined:
    Dec 27, 2013
    Posts:
    176
    I'm now in the process of publishing it to the Asset Store.
    Will prepare a demo version soon. It will likely has a limitation on the input video length, but I haven't decided on that yet.
     
    Last edited: Feb 17, 2022
  35. leavittx

    leavittx

    Joined:
    Dec 27, 2013
    Posts:
    176
    @DevSpur The Pro Sync version is on the Asset Store now
     
  36. leavittx

    leavittx

    Joined:
    Dec 27, 2013
    Posts:
    176
    Last edited: Feb 24, 2022
  37. leavittx

    leavittx

    Joined:
    Dec 27, 2013
    Posts:
    176
  38. Ookoohko

    Ookoohko

    Joined:
    Sep 29, 2009
    Posts:
    103
    Hi,

    I downloaded the demo version from the asset store link, and tried playing back a hap-r file encoded with Yokyo encoder.

    Having a few problems, my guess is that your demo version is pretty badly out of date. I'm using Unity 2020.3.31f1 / Windows / DX11.

    1) UnityEngine.XR.XRDevice.isPresent is obsolete error
    2) [DemolitionMedia] unknown texture format: BPTC
    UnityEngine.Debug:LogWarning (object)
    DemolitionStudios.DemolitionMedia.Media:TextureFormatNativeToUnity (DemolitionStudios.DemolitionMedia.NativeDll/NativeTextureFormat) (at Assets/DemolitionMedia/Scripts/Components/Media_Unity.cs:311)
    DemolitionStudios.DemolitionMedia.Media:CreateExternalTextures () (at Assets/DemolitionMedia/Scripts/Components/Media_Unity.cs:370)
    DemolitionStudios.DemolitionMedia.Media/<UpdateNativeTexturesAtEndOfFrames>d__150:MoveNext () (at Assets/DemolitionMedia/Scripts/Components/Media_Unity.cs:182)
    UnityEngine.GUIUtility:processEvent (int,intptr,bool&)
    3) Image looks like this:

    EDIT: apparently issue 3 is a demo version glitch, and the RGB thing is probably present in only one of your demo scenes?

    EDIT2: I have a 24fps video I'm playing back on a compiled app running @60fps. For the first time the video is played, it plays back 24fps, but after it loops for the first time, the playback rate jumps to 60fps. Is there a way to force it to run a) either at the video's own frame rate (24fps all the time) or 1 Unity frame = 1 video frame (60fps). The frame rate chaging after the first loop seems like a bug to me.
     

    Attached Files:

    Last edited: Apr 28, 2022
  39. leavittx

    leavittx

    Joined:
    Dec 27, 2013
    Posts:
    176
    Last edited: May 2, 2022
  40. cecarlsen

    cecarlsen

    Joined:
    Jun 30, 2006
    Posts:
    864
    Hi @leavittx

    Is Demolition Media Hap still being maintained and updated? The last Asset Store update was in Sep 16, 2020.

    Does it work in 2022.1?

    EDIT: I just tested your trial from May 2nd in 2022.1 and it seems to work, except I'm getting a warning every frame "d3d11: Creating a default shader resource view with dxgi-fmt=72 for a texture that uses dxgi-fmt=71". Any idea how to fix this?
     
    Last edited: Jul 28, 2022
  41. leavittx

    leavittx

    Joined:
    Dec 27, 2013
    Posts:
    176
    Hi there!
    I was trying it this weekend as well and unfortunately I don't recommend using the plugin in 2022.1 yet. There seem to be a memory leak when using with that Unity version. All other versions 2021/2020 are fine.

    I'll be working on a fix for that soon, and the updated plugin will also include all the general improvements made for the SYNC version (will be released mid-August). Also will check the warning you're getting. Thanks for taking a look at that!

    Just in case anyone needs a working HMD360Controls script with no compile errors for Unity 2021: please find it attached.
     

    Attached Files:

    Last edited: Aug 6, 2022
    cecarlsen likes this.
  42. leavittx

    leavittx

    Joined:
    Dec 27, 2013
    Posts:
    176
    Hi @cecarlsen
    I've made progress on getting things work in 2022/2023.
    If you're up there for some testing (or anybody else) feel free to write here or by the support e-mail, so I can send you a version for test. It will work now for OpenGL / DX12 / Vulkan also btw :)
    I'm getting things for the Asset Store now
     
  43. LostPanda

    LostPanda

    Joined:
    Apr 5, 2013
    Posts:
    173
    leavittx likes this.
  44. leavittx

    leavittx

    Joined:
    Dec 27, 2013
    Posts:
    176
    Hi!
    Ready to announce the new version features (just sent it to the Asset Store review):
    — HAP HDR - play 16-bit per color component floating point HDR videos. Ideal for playing things like 10-bit color depth footage. Or playing back encoded ambient occlusion/arbitrary data. Unsigned format recommended. Encoding possible with TouchDesigner (and JokyoHapEncoder soon)
    — 10-15% faster decoding compared to previous release - play even more videos.
    — DX12/Vulkan/OpenGL rendering supported in addition to DX11.
    — Added Unity 2022/2023 support.
    — Added Linear color workflow support.
    — Ability to disable all logging or INFO-level messages using by setting DEMOLITION_MEDIA_DISABLE_LOGS / DEMOLITION_MEDIA_DISABLE_INFO_LOGS define in the Project Settings

    Demo version available now: https://1drv.ms/u/s!AhRsdPdtJl1uhrs2NlD_HRbkeUtoew?e=7RfM5r
    It will be a major paid upgrade for all the existing plugin users (with a 60 days grace period, so if you purchased during last two months, then you get the update for free)
     
    Last edited: Nov 11, 2022
    aivo likes this.
  45. Ookoohko

    Ookoohko

    Joined:
    Sep 29, 2009
    Posts:
    103
    Hey,

    Been testing this - so far all the playback issues I had with the older version are gone. One question: is media.StepForward() supported only in the pro version, or also in the "normal" version? This is important to me, because I want to ensure I get 1:1 FPS matched frames without dropped frames, and this seems to do the trick.

    br,
    Sami
     
  46. leavittx

    leavittx

    Joined:
    Dec 27, 2013
    Posts:
    176
    Hi Sami,
    The media.StepForward() method is available in both versions without any restrictions.
    Just out of the interest, could you please share which issues did you have before that are solved now?

    Cheers,
    Lev
     
  47. Ookoohko

    Ookoohko

    Joined:
    Sep 29, 2009
    Posts:
    103
    Great news! On the old version, if I tried playing back a HAP-R file with framerate not matching the VSYNC framerate (say, a 25fps clip on 60fps VSYNC), the first time the movie played back was correct, but after looping it started syncing to whatever the VSYNC framerate was (so it started playing back @ 60fps). This doesn't seem to happen anymore, it plays back correctly even after looping.

    Also I wasn't able to get exact 1:1 frame matching with normal playback, there was always some drop frames, but with StepForward() this seems to be robust. I'll go buy the plugin now :)

    br,
    Sami
     
  48. leavittx

    leavittx

    Joined:
    Dec 27, 2013
    Posts:
    176
    Great to hear!
    One thing to note: there will be a separate asset matching the demo version you’ve tried! So, no need to buy the asset right now. Need to wait a bit (maybe couple of weeks or so) and then I post a new link here. But, if you already bought, no problem: you will get a free upgrade to the new one for free.

    Cheers,
    Lev
     
  49. leavittx

    leavittx

    Joined:
    Dec 27, 2013
    Posts:
    176
    cecarlsen and Ookoohko like this.
  50. leavittx

    leavittx

    Joined:
    Dec 27, 2013
    Posts:
    176
    Also, I've been trying to push the boundaries of decoding performance lately, gaining 2x+ faster overall results. So if you had any performance issues, I'd like to hear more about it and maybe we can make it work. Write me an e-mail in that case.