Skip to content
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

[Help!] PS VR Littlstar v1.21 Don't Display Some MP4 Files' Thumbnail (First Added via iTunes) #9

Closed
JaminZhang opened this issue Apr 18, 2018 · 2 comments

Comments

@JaminZhang
Copy link

@JaminZhang JaminZhang commented Apr 18, 2018

Sorry for posting the PS VR Littlstar problem here.
Since your PS VR Littlstar is not open source.

I'm a user of PS VR Littlstar. When the Littlstar updated to v1.20, it has sideload thumbnail support, I'm very happy because this is the feature what I want.

But I encountered a problem about the MP4 video thumbnail display.

Here is my software version:

  • Littlstar Version: PS VR Littlstar Version 1.21
  • iTunes Version: Windows 10 x86 iTunes 12.7.3.46

Here is the problem details:

  1. I added a thumbnail to a MP4 file via iTunes. I do it according to the website's instructions. https://littlstar.atlassian.net/wiki/spaces/CG/pages/4855036/PlayStation+VR+Video+Sideloading

  2. Then I open the PSVR Littlstar and I can not see the thumbnail of the MP4 file.

  3. But the thumbnail can display in iTunes, and it also can display in Mp3tag.

  4. Then I use the Mp3tag to add the thumbnail to the same MP4 file. It takes about 7min20s(In the iTunes it's very fast) to embed the jpg image in the 7.14 GB MP4 file in my PC. I can not stand the time, because I have thousands of GBs files. And it also generate a TMP file during remuxing.

So the problem is: PS VR Littlstar Don't Display Some MP4 Files' Thumbnail That First Added Via iTunes ?

I want use iTunes to add a thumbnail because it's fast. And it does't need time and disk space to remux while Mp3tag needs.

Any good to use tools for adding a thumbnail that can successfully use in Littlstar except iTunes and Mp3tag?

Update:

I test my some vr1d video format mp4 files and there is something to show:

My mp4 video files that don't show cover in LS and who's media info is below(Call It FileA):

General
Complete name                  : H:\Littlstar\XXVR\XXVR-38 = XXVR18-5-3K_180_sbs.mp4
Format                         : vr1d
Codec ID                       : vr1d (mp42/isom/avc1)
File size                      : 11.5 GiB
Duration                       : 54mn 30s
Overall bit rate mode          : Variable
Overall bit rate               : 30.1 Mbps
Encoded date                   : UTC 2018-03-23 10:50:53
Tagged date                    : UTC 2018-03-23 10:50:53
Writing application            : TMPGEnc Video Mastering Works 6 Version. 6.2.6.33
Cover                          : Yes

Video
ID                             : 2
Format                         : AVC
Format/Info                    : Advanced Video Codec
Format profile                 : Baseline@L5.2
Format settings, CABAC         : No
Format settings, ReFrames      : 9 frames
Format settings, GOP           : M=1, N=30
Codec ID                       : avc1
Codec ID/Info                  : Advanced Video Coding
Duration                       : 54mn 30s
Bit rate mode                  : Variable
Bit rate                       : 30.0 Mbps
Maximum bit rate               : 100.0 Mbps
Width                          : 3 200 pixels
Height                         : 1 600 pixels
Display aspect ratio           : 2.000
Frame rate mode                : Constant
Frame rate                     : 59.940 (60000/1001) fps
Standard                       : Component
Color space                    : YUV
Chroma subsampling             : 4:2:0
Bit depth                      : 8 bits
Scan type                      : Progressive
Bits/(Pixel*Frame)             : 0.098
Stream size                    : 11.3 GiB (99%)
Writing library                : x264 core 148
Encoding settings              : cabac=0 / ref=9 / deblock=1:0:0 / analyse=0x1:0x111 / me=hex / subme=7 / psy=1 / psy_rd=1.00:0.00 / mixed_ref=1 / me_range=16 / chroma_me=1 / trellis=1 / 8x8dct=0 / cqm=0 / deadzone=21,11 / fast_pskip=1 / chroma_qp_offset=-2 / threads=12 / lookahead_threads=2 / sliced_threads=0 / slices=1 / nr=0 / decimate=1 / interlaced=0 / minigop=0 / stitchable=1 / constrained_intra=0 / bframes=0 / weightp=0 / keyint=30 / keyint_min=3 / scenecut=40 / intra_refresh=0 / rc_lookahead=40 / rc=abr / mbtree=1 / bitrate=30000 / ratetol=1.0 / qcomp=0.60 / qpmin=0 / qpmax=69 / qpstep=4 / vbv_maxrate=100000 / vbv_bufsize=100000 / nal_hrd=vbr / filler=0 / ip_ratio=1.40 / aq=1:1.00
Encoded date                   : UTC 2018-03-23 10:50:53
Tagged date                    : UTC 2018-03-23 10:50:53
Color range                    : Limited
Color primaries                : BT.709
Transfer characteristics       : BT.709
Matrix coefficients            : BT.709

Audio
ID                             : 1
Format                         : AAC
Format/Info                    : Advanced Audio Codec
Format profile                 : LC
Codec ID                       : 40
Duration                       : 54mn 30s
Bit rate mode                  : Variable
Bit rate                       : 317 Kbps
Maximum bit rate               : 576 Kbps
Channel(s)                     : 2 channels
Channel positions              : Front: L R
Sampling rate                  : 48.0 KHz
Frame rate                     : 46.875 fps (1024 spf)
Compression mode               : Lossy
Stream size                    : 124 MiB (1%)
Default                        : Yes
Alternate group                : 1
Encoded date                   : UTC 2018-03-23 10:50:53
Tagged date                    : UTC 2018-03-23 10:50:53

Then I download a short sample video(Call it FileB, it has the same video format as FileA) ,
both FileA's and FileB's cover was added in iTunes.
But FileB can display cover in LS.
The below is the FileB media info:

General
Complete name                  : H:\Littlstar\Sample\VRXX082-180_sbs.mp4
Format                         : vr1d
Codec ID                       : vr1d (mp42/isom/avc1)
File size                      : 406 MiB
Duration                       : 1mn 54s
Overall bit rate mode          : Variable
Overall bit rate               : 29.6 Mbps
Encoded date                   : UTC 2018-04-16 01:18:25
Tagged date                    : UTC 2018-04-16 01:18:25
Writing application            : TMPGEnc Video Mastering Works 6 Version. 6.2.4.31
Cover                          : Yes

Video
ID                             : 2
Format                         : AVC
Format/Info                    : Advanced Video Codec
Format profile                 : Baseline@L5.2
Format settings, CABAC         : No
Format settings, ReFrames      : 9 frames
Format settings, GOP           : M=1, N=30
Codec ID                       : avc1
Codec ID/Info                  : Advanced Video Coding
Duration                       : 1mn 54s
Bit rate mode                  : Variable
Bit rate                       : 29.3 Mbps
Nominal bit rate               : 32.0 Mbps
Maximum bit rate               : 100.0 Mbps
Width                          : 3 200 pixels
Height                         : 1 600 pixels
Display aspect ratio           : 2.000
Frame rate mode                : Constant
Frame rate                     : 59.940 (60000/1001) fps
Standard                       : Component
Color space                    : YUV
Chroma subsampling             : 4:2:0
Bit depth                      : 8 bits
Scan type                      : Progressive
Bits/(Pixel*Frame)             : 0.095
Stream size                    : 401 MiB (99%)
Writing library                : x264 core 148
Encoding settings              : cabac=0 / ref=9 / deblock=1:0:0 / analyse=0x1:0x111 / me=hex / subme=7 / psy=1 / psy_rd=1.00:0.00 / mixed_ref=1 / me_range=16 / chroma_me=1 / trellis=1 / 8x8dct=0 / cqm=0 / deadzone=21,11 / fast_pskip=1 / chroma_qp_offset=-2 / threads=12 / lookahead_threads=2 / sliced_threads=0 / slices=1 / nr=0 / decimate=1 / interlaced=0 / minigop=0 / stitchable=1 / constrained_intra=0 / bframes=0 / weightp=0 / keyint=30 / keyint_min=3 / scenecut=40 / intra_refresh=0 / rc_lookahead=40 / rc=abr / mbtree=1 / bitrate=32000 / ratetol=1.0 / qcomp=0.60 / qpmin=0 / qpmax=69 / qpstep=4 / vbv_maxrate=100000 / vbv_bufsize=100000 / nal_hrd=vbr / filler=0 / ip_ratio=1.40 / aq=1:1.00
Encoded date                   : UTC 2018-04-16 01:18:25
Tagged date                    : UTC 2018-04-16 01:18:25
Color range                    : Limited
Color primaries                : BT.709
Transfer characteristics       : BT.709
Matrix coefficients            : BT.709

Audio
ID                             : 1
Format                         : AAC
Format/Info                    : Advanced Audio Codec
Format profile                 : LC
Codec ID                       : 40
Duration                       : 1mn 54s
Bit rate mode                  : Variable
Bit rate                       : 317 Kbps
Maximum bit rate               : 576 Kbps
Channel(s)                     : 2 channels
Channel positions              : Front: L R
Sampling rate                  : 48.0 KHz
Frame rate                     : 46.875 fps (1024 spf)
Compression mode               : Lossy
Stream size                    : 4.35 MiB (1%)
Default                        : Yes
Alternate group                : 1
Encoded date                   : UTC 2018-04-16 01:18:25
Tagged date                    : UTC 2018-04-16 01:18:25

Compare FileA's and FileB's media info, they have the same video format:

General
Format                         : vr1d
Codec ID                       : vr1d (mp42/isom/avc1)
Overall bit rate mode          : Variable

Video
ID                             : 2
Format                         : AVC
Format/Info                    : Advanced Video Codec
Format profile                 : Baseline@L5.2
Format settings, CABAC         : No
Format settings, ReFrames      : 9 frames
Format settings, GOP           : M=1, N=30
Codec ID                       : avc1
Codec ID/Info                  : Advanced Video Coding

There are also some major differences between FileA and FileB:

  • FileA's and FileB's filesize and video time(FileA: 11.5GB, FileB: 406MB)
  • I also noticed a small difference: FileB have a Nominal bit rate, but FileA not.

I don't know whether if the above differences may cause LS not to recognize the cover...

How does the LS recognize the mp4 video cover?

I also post the problem in Reddit, there are more testing info. https://www.reddit.com/r/PSVR/comments/8cv1s6/help_ps_vr_littltar_v121_dont_display_mp4/

@JaminZhang JaminZhang changed the title [Help!] PS VR Littltar v1.21 Don't Display Some MP4 Files' Thumbnail (First Added via iTunes) [Help!] PS VR Littlstar v1.21 Don't Display Some MP4 Files' Thumbnail (First Added via iTunes) Apr 19, 2018
@JaminZhang

This comment has been minimized.

Copy link
Author

@JaminZhang JaminZhang commented Apr 19, 2018

I just do more research. And here is what I have found.

I prepare a small sample mp4 file.
The media info of the file is:

General
Complete name                  : H:\Littlstar\Sample\Sample.mp4
Format                         : vr1d
Codec ID                       : vr1d (mp42/isom/avc1)
File size                      : 173 MiB
Duration                       : 49s 24ms
Overall bit rate mode          : Variable
Overall bit rate               : 29.5 Mbps
Encoded date                   : UTC 2017-10-25 00:03:43
Tagged date                    : UTC 2017-10-25 00:03:43
Writing application            : TMPGEnc Video Mastering Works 6 Version. 6.2.5.32

Then I use iTunes and Mp3tag to add a cover art to the sample mp4 file.
And there are three mp4 files as below:

  • Sample.mp4
  • Sample-iTunes-Tagged.mp4
  • Sample-Mp3Tag-Tagged.mp4

Then I use a mp4info program to see the above mp4 files' format.

Sample.mp4 file format
Sample.mp4 file format

Sample-iTunes-Tagged.mp4 file format
Sample-iTunes-Tagged.mp4 file format

Sample-Mp3Tag-Tagged.mp4 file format
Sample-Mp3Tag-Tagged.mp4 file format

From the above, we can see that:

  1. When using iTunes to add a cover art to a mp4 file, it directly added a metadata moov.udta.meta.ilst.covr

  2. When using Mp3tag to add a cover art to a mp4 file, it also added a metadata moov.udta.meta.ilst.covr , but it move the moov box to the front of the file after the ftyp box
    So this can explain adding a cover is very fast in iTunes but not in Mp3tag. Because Mp3tag does the extra remuxing work, move the moov box at the end of mp4 file to the front of the mp4 file.

So why the Lilttstar doesn't recognize my mp4 videos cover art ?
According to the above things, I guess that Littlstar can not recognize my mp4 file cover art correctly
because the mp4 file is too big and the mp4 mooc box at the end of the file?

I've test different size files(Added cover in iTunes):

  • 172MB, 405MB are small size that can display cover in Littlstar
  • The other big files(2GB~11GB) that can not display cover in Littlstar
@agrathwohl

This comment has been minimized.

Copy link
Member

@agrathwohl agrathwohl commented Jun 26, 2018

Thank you for reaching out about this issue.

Your codec format ID vr1d reports itself as being compatible with the MPEG-4 ftyp brands: (mp42/isom/avc1). However, neither the mp42 nor isom brands define the iTunes Tagging Items List (ilst) box in their specifications. So user-defined iTunes tagging cannot be expected to work with your vr1d format.

The best fix is to re-mux to a QuickTime ftyp: ffmpeg -i INPUT -f mov OUTPUT.mov. Then you can embed the moov.udta.meta.ilst.covr atom in the .mov file via iTunes.

We recommend using this ls-psvr-encoder tool if thumbnails are desired, because it will automatically add one to your file upon output. In your particular case, this may be especially helpful because the vr1d codec ID in your mediainfo output is one that I have never seen before, nor is it among the list of ftyp codes at http://www.ftyps.com/. Therefore, this vr1d is not one of the standardized ftyp IDs for the MPEG-4 container format. Our ls-psvr-encoder tool will automatically convert to an appropriate ftyp that is officially supported by the Littlstar VR Cinema PSVR app.

A couple of additional notes:

  • The moov.udta.meta.ilst.covr atom is the correct placement for the embedded cover art. We can rule that out.
  • There should be no problem if the moov is fast-started to the front of the container file.

I will now be closing this issue because it is not related to the ls-psvr-encoder tool. Please reach out to media@littlstar.com if you have any additional comments or questions. Thanks!

@agrathwohl agrathwohl closed this Jun 26, 2018
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
2 participants
You can’t perform that action at this time.