Black Video with no audio


#1

So im making a video right…spent like 20 minutes making it and then waited another hour for it to render. But when i was done rendering the video… almost half of the video is black! Please help this is really frustrating!


#2

#3

I’m having the same problem with Shotcut 19.01.27 - black video after encode completes. Video preview looks great in Shotcut before the encode.

The solution was to revert back to Shotcut 18.11.18 - every single encode plays back without issues.

Here you can see the differences between the two encodes :-


#4

Which one works for you - the one on the left or right? Also, is it black when you try to play it in Shotcut as well?


#5

@shotcut

The one on the right works - Shotcut 18.11.18 - Lavf58.12.100

It previews fine in Shotcut and during the Editing process.


#6

I don’t know how you got the profile to be “High 4:4:4 Predictive”. I would expect most decoders to not support that profile.


#7

@brian

I didn’t choose or tell Shotcut 19.01.27 to select the settings on the left. Glad you noticed the profile "“High 4:4:4 Predictive@L5.2” which is really strange.

I always use the same encode preset to ensure the export is consistent. However, Shotcut 19.01.27 is doing something of it’s own volition.

Anyways, I’m back to Shotcut 18.11.18 with the same encode presets and not one single problem with black video.


#8

Which encode presets are you using that results in “High Profile” in version 18.11 and “High 4:4:4 Predictive Profile” in version 19.01?


#9

@brian @shotcut

[Update] - same encode result with “Shotcut 19.02.28”

This is the encode preset :-

movflags=+faststart
preset=fast
f=mp4
acodec=aac
channels=2
ar=48000
ab=384k
vcodec=libx264
crf=1
vmaxrate=60M
vbufsize=61440000
g=15
bf=2
width=3840
height=2160
aspect=1.77778
progressive=1
top_field_first=2
deinterlace_method=yadif
rescale=hyper
r=60
threads=0

#10

x264 automatically selects a H.264 profile based on your parameters if you do not specify one. Some combination of parameters - resolution, framerate, and rate control - is causing it to use High Predictive, which is not necessarily incorrect. It simply does not work for you. That crf value is very low. If you really want 100% quality, you should use the lossless preset. Or, try reducing it slightly like 90%, and you will see it go back to regular High Profile.


#11

Also, do not expect the result of the lossless/H.264 preset to playback in all players; it will not. The reason for the change is because FFmpeg and x264 upgraded between versions. When I try to force your preset to use High Profile by adding vprofile=high in the Other tab, then the job fails with this in the log:

x264 [error]: high profile doesn't support lossless
[libx264 @ 00000000074a1840] Error setting profile high.

Thus, it now interprets crf=1 as lossless and requires you to accept the profile it chooses or specifically use the lossless mode. The minimum crf to avoid this is 2, and the maximum quality % in Shotcut for that is 97%.


#12

@shotcut @brian @mxk

Thanks for responding and providing a solution - much appreciated.

I got the percentage up to 99% with Shotcut 19.02.28 using my original encode preset above. The results are below.

Summary - an Export Codec Quality setting of 100% is no longer the same between Shotcut 18.11.18 & Shotcut 19.02.28 and now encodes with profile High 4:4:4 Predictive@L5.2. Selecting an Export Codec Quality setting of 99% will encode with the common profile High@L5.2. The latter export will playback normally and the former will result a “black video” for some devices. The x264 parameter qp=0 switches to lossless encoding and the former encode profile.

Shotcut 18.11.18 - Encode Settings - CVBR 100%
cabac=1 / ref=2 / deblock=1:0:0 / analyse=0x3:0x113 / me=hex / subme=6 / psy=1 / psy_rd=1.00:0.00 / mixed_ref=1 / me_range=16 / chroma_me=1 / trellis=1 / 8x8dct=1 / cqm=0 / deadzone=21,11 / fast_pskip=1 / chroma_qp_offset=-2 / threads=12 / lookahead_threads=2 / sliced_threads=0 / nr=0 / decimate=1 / interlaced=0 / bluray_compat=0 / constrained_intra=0 / bframes=2 / b_pyramid=2 / b_adapt=1 / b_bias=0 / direct=1 / weightb=1 / open_gop=0 / weightp=1 / keyint=15 / keyint_min=1 / scenecut=40 / intra_refresh=0 / rc_lookahead=30 / rc=crf / mbtree=1 / crf=1.0 / qcomp=0.60 / qpmin=0 / qpmax=69 / qpstep=4 / vbv_maxrate=60000 / vbv_bufsize=61440 / crf_max=0.0 / nal_hrd=none / filler=0 / ip_ratio=1.40 / aq=1:1.00

Shotcut 19.02.28 - Encode Settings - CVBR 100%
cabac=1 / ref=2 / deblock=1:0:0 / analyse=0x1:0x111 / me=hex / subme=6 / psy=0 / mixed_ref=1 / me_range=16 / chroma_me=1 / trellis=0 / 8x8dct=1 / cqm=0 / deadzone=21,11 / fast_pskip=0 / chroma_qp_offset=0 / threads=12 / lookahead_threads=2 / sliced_threads=0 / nr=0 / decimate=1 / interlaced=0 / bluray_compat=0 / constrained_intra=0 / bframes=0 / weightp=1 / keyint=15 / keyint_min=1 / scenecut=40 / intra_refresh=0 / rc=cqp / mbtree=0 / qp=0

Shotcut 19.02.28 - Encode Settings - CVBR 99%
cabac=1 / ref=2 / deblock=1:0:0 / analyse=0x3:0x113 / me=hex / subme=6 / psy=1 / psy_rd=1.00:0.00 / mixed_ref=1 / me_range=16 / chroma_me=1 / trellis=1 / 8x8dct=1 / cqm=0 / deadzone=21,11 / fast_pskip=1 / chroma_qp_offset=-2 / threads=12 / lookahead_threads=2 / sliced_threads=0 / nr=0 / decimate=1 / interlaced=0 / bluray_compat=0 / constrained_intra=0 / bframes=2 / b_pyramid=2 / b_adapt=1 / b_bias=0 / direct=1 / weightb=1 / open_gop=0 / weightp=1 / keyint=15 / keyint_min=1 / scenecut=40 / intra_refresh=0 / rc_lookahead=30 / rc=crf / mbtree=1 / crf=1.0 / qcomp=0.60 / qpmin=0 / qpmax=69 / qpstep=4 / vbv_maxrate=60000 / vbv_bufsize=61440 / crf_max=0.0 / nal_hrd=none / filler=0 / ip_ratio=1.40 / aq=1:1.00