Plugins for 360 Video

Try https://bitbucket.org/leo_sutic/bigsh0t/downloads/bigsh0t-2.1-linux.tar.gz

I compiled it in a VM with Lubuntu, and I’m an absolute noob at Linux software distribution, so no guarantees that it works for you. If it does or doesn’t please let me know.

Thanks, but still I’ve got nothing in the filter tab.

Here is the log:
https://pastebin.com/TuziTY1m

Huge thanks for trying to help out.

From what I can see the app doesn’t even try to load the bigsh0t filters. Can you show me the contents of Shotcut.app/share/shotcut/qml/filters/ and Shotcut.app/lib/frei0r-1/? Also confirm that you are using a 64-bit version of Shotcut. (I don’t think there are any others, but this did trip me up on Windows.)

I tested the filters with Fedora 31 Shotcut 20.04.12.
The filters work.
There’s something a bit odd with the slider display.

image

The “deg” suffix is not leaving enough room for the digits. This control does not automatically adjust for that, and one needs to set the spinnerWidth property to increase it from the default of 90 px. I use 110 in Rotate and Scale filter UI.

Tried 110, it was not enough. Set the SpinnerWidth property to 120. This works nicely.
image

It’s odd that the spinner is displaying properly in Windows with the default 90 px, yet it does not display properly in Linux. :confused: :

1 Like

different font sizes

Tried 110, it was not enough. Set the SpinnerWidth property to 120. This works nicely.

Ah, more decimal digits required this

Thanks for checking and fixing. I’ll update the UI for next release.

1 Like

For the Linux version fixed all the spinners that needed fixing. Also increased the height of a few of the UIs to make them display a scrollbar on the right.

Made some modifications to the Windows UIs to make them display a scrollbar as well.

Updated Google Drive.

Linux.

Windows V 2.1

1 Like

@sauron, I appreciate you fixing things, and I’ll integrate the fixes in the bitbucket repo, but please don’t distribute the code with the exact same version number. Make it 2.1-sauron, or bigshot-sauron-2.1. It’s just going to be chaos if some 2.1’s are one way and some the other.

Apologies for my oversight.
Renamed the code.

1 Like

Ok, I’ve got it working!

When I was trying to use the Tree command to show you the what I got, I’ve got permission error… which led me thinking… Maybe Shotcut simply doesn’t have the right permission.
turns out, yep!

Also, I’ve seen the problem Sauron was talking about.
on the upside, when I was using his (or hers?) files, there wasn’t any permission problem.

Huge thanks to the both of you

Version 2.1.1 is out: https://bitbucket.org/leo_sutic/bigsh0t/downloads/

Should have all of sauron’s nice fixes.

2 Likes

Hi Folks!

Wow wonderful plugins! I just got a GoPro Fusion and I’m learning to process the files in linux. This stuff looks WAY better than using some nvidia vrworks C++ code from the command line!

I am able to get the “Hemispherical to Equirectangular” plugin to work, so thats great. However I can’t get the “Stabilize 360” plugin to show the “Filter Up Display”. I am in analysis mode.

I am using Ubuntu 18.04, a fresh copy of Shotcut version 20.04.12. I git cloned the bitbucket repo for these plugins, then ran the linux build and install scripts.

I follow exactly these steps:

  • Disable Realtime (frame dropping) in the Settings menu. It is important that the filter sees all frames.
  • Add the 360 footage
  • Apply a Hemispherical to Equirectangular filter to it so it is in equirectangular format.
  • Apply a Transform 360 filter
  • Apply the Stabilize 360 filter.
  • Select a file to store stabilization data in.
  • Enable Analyze mode.
  • Use the Transform 360 filter to rotate the footage so that the point straight ahead is over the center cluster of track points.
  • Play the footage from start to finish. The FUD (Filter-Up Display) should show an increasing frame count.

No Filter-Up Display is shown. Any ideas? Thank you!

Also Leo I really appreciate that you’ve open sourced these plugins! Before I found this, I did not see many good options for working with 360 video in linux. Your open source work is helping my open source robot project:

Ahhh I had to not only open the file with “open file” but add it to my timeline. Now I see the FUD!

What is a concise way to add that to the docs for a newbie like me? Maybe:

In the timeline, right click and select “Add Video Track” or press Ctrl + I. Then right click the track and select “Insert Track” or press Ctrl + Alt + I.

However I don’t know if Add and Insert are both necessary or if Insert would have done it.

What settings do y’all use for export? I am getting extremely blockly low quality output even when I save with a very high bitrate (120,000 kbps).

New users are only allowed to post one picture, so I have made a collage picture to show my issue and my export settings:

On the top left is the export result from Nvidia VRworks (no stabilization available). That video is 3680 x 1840 H.264 at 40,000 kb/s.

On the top right is the output from shotcut using the “Hemispherical to Equirectangular” and “Stabilize 360” filters. That video is 5760x2784 H.265 at 120,000 kb/s, and yet looks much, much worse. At the bottom of the image are my export settings.

Any help would be greatly appreciated!

Try disabling Parallel processing.

2 Likes

vpre=lossless may cause a problem. The hevc_nvenc version of that is vpreset=lossless. When I add vpreset=lossless my card reports in the log

[hevc_nvenc @ 000000000dbcb5c0] Lossless encoding not supported

vprofile=main is OK but that is default and not necessary.

flags2=-dct8x8 causes this in the export log

[hevc_nvenc @ 000000000db9b780] [Eval @ 000000000985eea0] Undefined constant or missing '(' in 'dct8x8'
[hevc_nvenc @ 000000000db9b780] Unable to parse option value "dct8x8"

When I try your bitrate on my GTX 980Ti NVENC with 3840x2160p 23.98 fps, ffprobe reports the bitrate as only fully 70 Mb/s meaning it will not comply. Quality is OK and not nearly as bad as yours. Do you use NVENC elsewhere? Maybe it is behaving badly. You can try without it as a baseline.

2 Likes

Thanks everyone. I finally realized what happened. It was not what I thought.

My camera (GoPro Fusion) produces two separate video files, so I combined them using hstack as per the bigsh0t documentation:

ffmpeg -i left.mp4 -i right.mp4 -filter_complex hstack output.mp4

Unfortunately this re-encodes the video, and my 60,000kbps streams combine to become one 12,000 kbps stream. This is what I fed in to Shotcut (not realizing the reduced quality) and this was the cause of my woes.

That line was recommended in the docs, but it looks like things are not so simple. It is not possible to directly copy the frames and use the hstack filter, so the video has to be re-encoded. Apparently the default quality settings are not sufficient.

Specifying the bitrate worked for me, though I don’t know if it’s optimal:

ffmpeg -i left.mp4 -i right.mp4 -filter_complex hstack -b:v 120M output.mp4

(where 120M is the combined bitrate of my raw inputs)

It can also be done faster using NVIDIA acceleration if applicable:

ffmpeg -vsync 0 -hwaccel cuvid -c:v h264_cuvid -i left.mp4 -hwaccel cuvid -c:v h264_cuvid -i right.mp4 -filter_complex ‘[0:v] hwdownload, format=nv12 [left]; [1:v] hwdownload, format=nv12 [right]; [left][right]hstack=inputs=2[mosaic]; [mosaic] hwupload_cuda’ -c:v hevc_nvenc -preset slow -rc vbr_hq -b:v 100M -maxrate:v 120M -c:a aac -b:a 240k output.mp4

There are some considerations for how to merge audio. This stack overflow post has some details on that:

The original command in question is in the bigsh0t readme under the heading “Hemispherical to Equirectangular”. Maybe it should be updated to include something about specifying bitrate?

2 Likes

Hi folks. I searched the forum in several ways but couldn’t find the answer to this. Are these plugins available to use on the Windows Store version of Shotcut? I can’t find where to put the files. I did find the AppData folder for Meltytech.Shotcut but I can’t find a lib or qml subfolder that would orient me as to where these plugins should go.
It would be great to be able to work with 360 videos better in Shotcut, as its my go-to tool for almost all other video editing.