Without knowing for certain in many discussions what constitutes a codec vs what constitutes a container (because most/many in the general population seems to be confused on this topic) itās likely that we are not being specific enough.
For my part, I have been re-encoding files as: (according to what Iām able to view of my preset in HandBrake)
I didnāt set these values directly though, I believe I picked .MKV, H.265 with a constant quality of 26, and an upper vertical pixel limit that I wanted them all to be.
So, this issue is likely that ScriptPlayer isnāt handling (without a codec pack in my scenario) the H.265 (HEVC) stuff whereas H.264 (MPEG4?) does work.
It is possible ScriptPlayer is relying on the system codecs which, based on the symptoms described would mean you need the Media Foundation Codecs on this page: Windows Media Foundation Codecs
Regreribly the HEVC codec isnāt free and costs 1$/1⬠on the Microsoft App store.
H.264 is AVC
Mpeg4 is a media standardās group that encompasses a whole bunch of codecs, of which AVC HEVC AAC belong to. MPEG-2 on the other hand is a codec.
I know, itās all very confusing
The Mpeg-4 group charges licensing for the HEVC codec per download, thatās why Microsoft charges 1$/ā¬. Once itās purchased, itās tied to your MS account.
Just to make sure thereās no confusion. the HEVC codec from the Microsoft Store isnāt going to fix AV1 playback. Just HEVC/H.265.
I meanwhile asked chatGPT about ScriptPlayer and it confirms it uses the system codecs.
The best solution for the dev would be to integrate libmpv, which isnāt that hard actually. (Itās what OFS uses).
Why donāt I do it? I donāt want to maintain or provide support for it.
āJust to make sure thereās no confusion. the HEVC codec from the Microsoft Store isnāt going to fix AV1 playback. Just HEVC/H.265.ā
Iāve been down that route.
I was pretty excited to use a single product vs a ācodec packā but the problem is the Microsoft offered HEVC codec seems to have issues around 22 minutes into a video (with ScriptPlayer at least, I donāt recall if other players showed the same issue or not)
If the video plays, but has issues only in specific parts, itās not the codec. At least, Iāve never heard of such a thing where the codec would play some parts of a video and not others. And assuming there hasnāt been tampered with metadata timestamps to hide another video within the video.
What are the symptoms exactly?
EDIT: It could also be that itās encoded with x.265 which can have flags not supported by the official Mpeg HEVC standard.
To clarify, it seemed that the video would stop playing permanently around 21-22 minutes. While it could be coerced to play again sometimes or at an earlier point skip forward to then get past that 21-22 minute boundary, it still would often eventually stop playing the video. (perhaps only the video channel, I donāt remember if audio stopped or not)
Perhaps it was running out of memory? I did try it with a few different Windows 10 boxes but the 21-22 minute issue seemed consistent.
The problem entirely went away after uninstalling the MS HEVC codec and going back to the K-Lite Codec Pack.
I upgraded the whole project to the newest supported .net framework and fixed some playback issues for windows 11.
Works on my machine but i would need a few testers to see if that was an actual fix or only one for me.