Here's the Mediainfo for the ffmpeg conversion as above: Code: General Unique ID : 207880934855092730025596288713893036104 (0x9C6469672AEBA552A56A54FB702F4048) Complete name : C:\Users\(deleted)x265.mkv.mkv Format : Matroska Format version : Version 4 File size : 880 MiB Duration : 1 h 15 min Overall bit rate : 1 620 kb/s Writing application : Lavf58.29.100 Writing library : Lavf58.29.100 ErrorDetectionType : Per level 1 Video ID : 1 Format : AVC Format/Info : Advanced Video Codec Format profile : High@L4 Format settings : CABAC / 4 Ref Frames Format settings, CABAC : Yes Format settings, Reference frames : 4 frames Codec ID : V_MPEG4/ISO/AVC Duration : 1 h 15 min Width : 960 pixels Height : 720 pixels Display aspect ratio : 4:3 Frame rate mode : Constant Frame rate : 23.810 FPS Color space : YUV Chroma subsampling : 4:2:0 Bit depth : 8 bits Scan type : Progressive Writing library : x264 core 159 Encoding settings : cabac=1 / ref=3 / deblock=1:0:0 / analyse=0x3:0x113 / me=hex / subme=7 / 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=3 / b_pyramid=2 / b_adapt=1 / b_bias=0 / direct=1 / weightb=1 / open_gop=0 / weightp=2 / keyint=250 / keyint_min=23 / scenecut=40 / intra_refresh=0 / rc_lookahead=40 / rc=crf / mbtree=1 / crf=18.0 / qcomp=0.60 / qpmin=0 / qpmax=69 / qpstep=4 / ip_ratio=1.40 / aq=1:1.00 Language : English Default : Yes Forced : No ENCODER_APPLICATION : Internet Friendly Media Encoder ENCODER_LIBRARY : Nemu 7 Audio ID : 2 Format : AAC LC SBR Format/Info : Advanced Audio Codec Low Complexity with Spectral Band Replication Commercial name : HE-AAC Format settings : Explicit Codec ID : A_AAC-2 Duration : 1 h 15 min Channel(s) : 2 channels Channel layout : L R Sampling rate : 44.1 kHz Frame rate : 21.533 FPS (2048 SPF) Compression mode : Lossy Delay relative to video : 33 ms Language : English Default : Yes Forced : No Frame Rate is different? Here is a clip from the original file:
Yeah I know. Versions after 43 don't fit the screen of my laptop and I haven't been able to adjust the font size, etc to make it fit without having to hit the scroll bar all the time.
If you are interested in conducting a quick experiment - try remuxing one of your troublesome files but only leaving the video track. No sound, subs or chapters and then see if it will play. This MIGHT be associated with " * mkvmerge: AAC reader: fixed mkvmerge aborting to read AAC files bigger than 2 GB with a message about not being able to allocate memory. This was fixed around the release of version 54 If this temp remux allows the file to play then it's an easy matter to convert the AAC audio to AC3.
Not only framerate, but also color bitdepth. You may want to consider keeping original bitdepth during transcode.
Think I've sussed it. This is a really odd file - the frame rate is 23.976 (24000/1001) but the Default Duration in the header is listed as 42000000 nanoseconds. This is the duration of a frame and this means the header shows an incorrect frame rate of 23.8095... fps. Also, as @Whitfield pointed out, the colour subsampling is 4:4:4 - this is lossless which is generally only used for acquisition and deliverables, and this is why the Zidoo chokes on it - it's not a standard consumer format. So in order to fix these files you need to first reset the default duration to 41708333 nanoseconds which equates to 23.976fps and then re-encode. If you don't reset the default duration first you'll encode at 23.810fps and get lipsync issues. A "fixed" sample is attached. I reset the header with MKVToolnix and encoded to 10-bit H.265 (4:2:0!) with Staxrip using NVenc. FFMpeg would be fine but as I say, the default duration must be changed first.
Nice work, Mark. A writing library can end up with a wrong framerate header because of faulty timecodes within the videostream. Should there be incorrect timestamps, MKVToolnix will not correct these when you would only change the Default duration header to its proper value. The file is indeed rather odd. With "dodgy" files like this I always do a remux with setting the Default duration/FPS to its proper value, but also checking "Fix bitstream timing info". Even then things can go wrong. Sometimes you'll need to do a demux to the elementary streams and work from there.
Thanks Mark. I'm still on the learning curve but I should be able to fix the files although there are quite a few of them. Got to get Staxrip to try out.
Staxrip is a frontend for many other programs (ffmpeg included) but once it's set up properly it's a very powerful interface - worth a look - as I say I use it with NVEnc which gives me hardware encoding with an NVidia graphics card which is very fast (>200fps for 2K and about 65fps for 4K).
Alright, I think that Vidcoder can do a one-stop conversion. I converted my test file in about 45 minutes. It has framerate settings and appears to have worked as expected and the Zidoo plays the file. Vidcoder can do batch conversions. Let me know if you see anything that's unusual. Thanks for your help with these weird files. Here's the Mediainfo data for my converted file: Code: General Unique ID : 37461207150508976713279974008650916202 (0x1C2EC41C88E5E031A4DB2195C77EE16A) Complete name : C:\Users\(deleted)720p.x265.mkv Format : Matroska Format version : Version 4 File size : 252 MiB Duration : 1 h 15 min Overall bit rate : 464 kb/s Encoded date : UTC 2021-05-06 20:16:30 Writing application : HandBrake 1.3.3 2020061300 Writing library : Lavf58.29.100 ErrorDetectionType : Per level 1 Video ID : 1 Format : HEVC Format/Info : High Efficiency Video Coding Format profile : Main 10@L4@Main Codec ID : V_MPEGH/ISO/HEVC Duration : 1 h 15 min Width : 960 pixels Height : 720 pixels Display aspect ratio : 4:3 Frame rate mode : Constant Frame rate : 23.976 (24000/1001) FPS Color space : YUV Chroma subsampling : 4:2:0 Bit depth : 10 bits Writing library : x265 3.2.1+1-b5c86a64bbbe:[Windows][GCC 9.2.0][64 bit] 10bit Encoding settings : cpuid=1049583 / frame-threads=3 / numa-pools=8 / wpp / no-pmode / no-pme / no-psnr / no-ssim / log-level=2 / input-csp=1 / input-res=960x720 / interlace=0 / total-frames=0 / level-idc=40 / high-tier=1 / uhd-bd=0 / ref=2 / no-allow-non-conformance / no-repeat-headers / annexb / no-aud / no-hrd / info / hash=0 / no-temporal-layers / open-gop / min-keyint=24 / keyint=240 / gop-lookahead=0 / bframes=4 / b-adapt=0 / b-pyramid / bframe-bias=0 / rc-lookahead=15 / lookahead-slices=4 / scenecut=40 / radl=0 / no-splice / no-intra-refresh / ctu=64 / min-cu-size=8 / no-rect / no-amp / max-tu-size=32 / tu-inter-depth=1 / tu-intra-depth=1 / limit-tu=0 / rdoq-level=0 / dynamic-rd=0.00 / no-ssim-rd / signhide / no-tskip / nr-intra=0 / nr-inter=0 / no-constrained-intra / strong-intra-smoothing / max-merge=2 / limit-refs=3 / no-limit-modes / me=1 / subme=1 / merange=57 / temporal-mvp / no-hme / weightp / no-weightb / no-analyze-src-pics / deblock=0:0 / sao / no-sao-non-deblock / rd=2 / selective-sao=4 / early-skip / rskip / fast-intra / no-tskip-fast / no-cu-lossless / no-b-intra / no-splitrd-skip / rdpenalty=0 / psy-rd=2.00 / psy-rdoq=0.00 / no-rd-refine / no-lossless / cbqpoffs=0 / crqpoffs=0 / rc=abr / bitrate=420 / qcomp=0.60 / qpstep=4 / stats-write=0 / stats-read=0 / ipratio=1.40 / pbratio=1.30 / aq-mode=2 / aq-strength=1.00 / cutree / zone-count=0 / no-strict-cbr / qg-size=32 / no-rc-grain / qpmax=69 / qpmin=0 / no-const-vbv / sar=1 / overscan=0 / videoformat=5 / range=0 / colorprim=1 / transfer=1 / colormatrix=1 / chromaloc=0 / display-window=0 / cll=0,0 / min-luma=0 / max-luma=1023 / log2-max-poc-lsb=8 / vui-timing-info / vui-hrd-info / slices=1 / no-opt-qp-pps / no-opt-ref-list-length-pps / no-multi-pass-opt-rps / scenecut-bias=0.05 / no-opt-cu-delta-qp / no-aq-motion / no-hdr / no-hdr-opt / no-dhdr10-opt / no-idr-recovery-sei / analysis-reuse-level=5 / scale-factor=0 / refine-intra=0 / refine-inter=0 / refine-mv=1 / refine-ctu-distortion=0 / no-limit-sao / ctu-info=0 / no-lowpass-dct / refine-analysis-type=0 / copy-pic=1 / max-ausize-factor=1.0 / no-dynamic-refine / no-single-sei / no-hevc-aq / no-svt / no-field / qp-adaptation-range=1.00 Default : Yes Forced : No Color range : Limited Color primaries : BT.709 Transfer characteristics : BT.709 Matrix coefficients : BT.709 Audio ID : 2 Format : AAC LC SBR Format/Info : Advanced Audio Codec Low Complexity with Spectral Band Replication Commercial name : HE-AAC Format settings : Explicit Codec ID : A_AAC-2 Duration : 1 h 15 min Channel(s) : 2 channels Channel layout : L R Sampling rate : 44.1 kHz Frame rate : 21.533 FPS (2048 SPF) Compression mode : Lossy Delay relative to video : 33 ms Title : Stereo Language : English Default : Yes Forced : No Menu 00:00:00.000 : :00:00:00.000 00:06:00.610 : :00:06:00.560
That looks fine - the Profile and Level is higher than needed but that doesn't matter. Just before you let rip, is lipsync ok? - I'd expect it to be but just worth a check... By the way - it really took me back seeing a bit of Columbo again
Lipsync looks good, I always worry about that. Don't know when I'll let 'er rip, got to plan to have enough disk space, etc. These old shows are great, especially seeing actors who are no longer with us.