Topic: x264 CLI...
I've been beating my brains out about this forever and I just cannot figure it out, so I thought I might come here and plead and grovel to see if you will help me.
This seems just SO simple, I can't figure out why it isn't working. I'm using what I think is extremely simple CMD line code just to do a plain re-encode of an MKV file that will not play on my OPPO Blu-ray player. Now, just so you know if you didn't, the OPPO will play a large variety of MKV files as long as the encodes don't go above L4.1 and the ref and B frames are not too high. So, even on the original encode, I can't figure out why it won't play. But, I figured that if I just re-encode it to simple specs, then it SHOULD set those to standard settings and play, but it isn't.
So, I'm taking a basic MKV file that is already encoded using AVC video at L4.1 with AC3 audio, both of which the OPPO should normally play. Here is the simple CMD line code I used:
D:\EXECUTABLES\BD-RBV05003\BD_Rebuilder\Tools\x264-64.exe "C:\x\test.mkv" --level 4.1 --preset fast --crf 24 --tune film --output "C:\x\Encode.mkv"
Now, I KNOW that the way I did it is kind of clunky, but this way I KNOW that I am calling the very latest x264-64.exe version which happens to be in THAT folder, which is where BDRB keeps it. I've also done it before with just the plain 264.exe with the same results. And, the re-encode runs just fine on VLC player, BUT it won't play on my OPPO afterward and I cannot for the life of me see why. I mean, I AM re-encoding it, so wouldn't that set all the parameters to the standard that they should be? Do I need to specify the 'bitrate' maybe? I've checked the resulting MediaInfo file and from looking at the parameters, they all SEEM to be withing playable specs.
Here is the initial MediaInfo specs from the original file:
cabac=1 / ref=1 / deblock=1:-1:-1 / analyse=0x3:0x113 / me=hex / subme=2 / psy=1 / psy_rd=1.00:0.15 / mixed_ref=0 / me_range=16 / chroma_me=1 / trellis=0 / 8x8dct=1 / cqm=0 / deadzone=21,11 / fast_pskip=1 / chroma_qp_offset=0 / threads=6 / lookahead_threads=2 / sliced_threads=0 / nr=0 / decimate=1 / interlaced=0 / bluray_compat=0 / constrained_intra=0 / bframes=3 / b_pyramid=2 / b_adapt=1 / b_bias=0 / direct=1 / weightb=1 / open_gop=0 / weightp=1 / keyint=300 / keyint_min=30 / scenecut=40 / intra_refresh=0 / rc_lookahead=10 / rc=2pass / mbtree=1 / bitrate=1110 / ratetol=1.0 / qcomp=0.60 / qpmin=0 / qpmax=69 / qpstep=4 / cplxblur=20.0 / qblur=0.5 / vbv_maxrate=62500 / vbv_bufsize=78125 / nal_hrd=none / ip_ratio=1.40 / aq=1:1.00
Now, the only thing that kind of jumps out at me is that the vbv stuff looks way too high, or maybe does the lookahead_threads=2 matter? I don't know...
Here is the MediaInfo specs AFTER I re-encode it:
cabac=1 / ref=2 / deblock=1:-1:-1 / analyse=0x3:0x113 / me=hex / subme=6 / psy=1 / psy_rd=1.00:0.15 / mixed_ref=1 / me_range=16 / chroma_me=1 / trellis=1 / 8x8dct=1 / cqm=0 / deadzone=21,11 / fast_pskip=1 / chroma_qp_offset=-3 / threads=6 / lookahead_threads=1 / sliced_threads=0 / nr=0 / decimate=1 / interlaced=0 / bluray_compat=0 / constrained_intra=0 / bframes=3 / b_pyramid=2 / b_adapt=1 / b_bias=0 / direct=1 / weightb=1 / open_gop=0 / weightp=1 / keyint=250 / keyint_min=25 / scenecut=40 / intra_refresh=0 / rc_lookahead=30 / rc=crf / mbtree=1 / crf=24.0 / qcomp=0.60 / qpmin=0 / qpmax=69 / qpstep=4 / ip_ratio=1.40 / aq=1:1.00
Can YOU see any reason why this shouldn't play? I even sent snippets to OPPO and THEY haven't even figured it out yet. These re-encode settings are a little lighter than what I normally use when I want to do a full re-encode of a movie. In most cases what I would use in the CMD line would be crf--18 and preset--medium. But, these are small documentaries, so I set it to a faster, lesser setting. But, those wouldn't play either. I was thinking that maybe it was the preset--medium setting, but the --fast doesn't play either. But, BOTH presets are well within specs for my OPPO to play, so it doesn't make sense...
Man, I sure would appreciate it if you can help me in any way to figure out what the heck is wrong. I MUST be doing something wrong when re-encoding that caused my player to choke.
Thank you Selur!