-
Notifications
You must be signed in to change notification settings - Fork 434
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
No support for advanced codecs (for 8K resolution) #159
Comments
@Kregus you can store vp9 in mp4 (eg https://github.com/Netflix/vp9-dash/blob/master/VPCodecISOMediaFileFormatBinding.docx) |
@kodabb Thanks for this suggestion, but it seems like a strange, not so user-friendly workaround. Also, the resulting file was unplayable for me. VP9 is Google's very own codec, so it seems more than reasonable for YouTube 360 to support this. |
The first version of the spec has always had support for webm/mkv: Do you have a sample video that isn't working that we can look at? |
You can use ffmpeg to insert the V1 version of the spherical metadata. I just tested on your file with the following command:
and the result worked. I also tried mkvmerge, but I can't figure out how to get the spherical-video xml embedded in a string tag within mkvmerge's xml-based metadata description. |
webm is a subset of mkv. The reason to use mkv extension is that previously the webm spec didn't support the "tag" mechanism used to carry the v1 metadata. It does now, but ffmpeg hasn't been updated to allow tags to appear in webm. |
Alright, I think you are almost there. The windows shell is behaving differently than bash, and the double quotes are getting lost (you can see in the ffmpeg log that the " is missing). So try either removing those fields:
or better yet, try to see if you get get those double quotes inserted in the output. I think to escape them properly in windows you need to use """ for each single ":
|
I have noticed that this script does not do .mkv, or even h265 encoded into .mp4 containers either. |
@evertvorster in general please avoid using the V1 specification as it is deprecated and replaced by V2. If you can deal with mp4 files only you can check my branch https://github.com/kodabb/spatial-media/tree/sphericaltoolsv2 (PR here: #155) |
As @kodabb points out, the v1 spec is deprecated, so it may be good to check if the link he provided can be used to inject v2 metadata for your use case. I know ffmpeg has support for passing V2 metadata through, but I'm not sure if there is a way to inject it yet. Also, there are two other tools to inject v2 metadata using other open source tools into webm/mkv.
Finally, If you still must use V1, there is a StereoMode tag: |
This works for mkv:
This sets it to 1 for the stream 0. But is there a way that doesn't require knowing which stream ID the video has? (If I just omit the And is there a way to inject it into an existing file without creating a new file? Because the file is usually huge (several GBs) and I would delete the non-360 file right afterwards anyway. @nbirkbeck Is there currently a way to inject the metadata for mp4 or mkv using ffmpeg? I tried this but it's not working:
I also tried it with a mp4 file, also not working. @evertvorster What's the current solution for injecting the metadata into h265 mp4 files? I also tried this:
(Using this uuid.) But it gives an error:
|
Hi,
According to the YouTube uploading specs for 360º video, the input resolution can be up to 8192x8192.
However, this injector only seems to support MPEG4 video, of which the h.264 codec only supports up to 4k and the h.265 codec is not supported as an upload format on YouTube, or MOVs, which are huge.
The only way to achieve the promised 8192x8192 resolution at the moment is to use a .mov file, which will be multiple gigabytes in size and therefore very unpractical to upload.
I therefore suggest to add support for the VP9 codec, which will drastically reduce file size but still support the 8192x8192 resolution.
Thanks!
Nick
The text was updated successfully, but these errors were encountered: