Welcome to Doom9's Forum, THE in-place to be for everyone interested in DVD conversion. Before you start posting please read the forum rules. By posting to this forum you agree to abide by the rules. |
![]() |
#2761 | Link |
Registered User
Join Date: Jul 2018
Posts: 416
|
ffms2_r1369 (pass: BLxmx6YsVJ03):
- AviSynth: fixed GetParity (rffmode > 0) and _FieldBased. (bugs introduced in the previous version) - AviSynth: added support for audio channel mask. - AviSynth: fixed fps (rffmode > 0). (bug introduced by the new FFmpeg API from the beginning of 2023) - ffms2@cf7c4b2; - ffmpeg@9310ff; - zlib 1.3; - dav1d 1.2.1; - libxml2 v2.11.5. Does ffmpeg respect it by default? |
![]() |
![]() |
![]() |
#2762 | Link | |
Moderator
![]() Join Date: Feb 2005
Location: Spain
Posts: 6,783
|
Quote:
global OPT_UseWaveExtensible = true # Needed to use global OPT_dwChannelMask= audio=FFAudioSource("8w3D.ec3") global OPT_dwChannelMask=FFCHANNEL_LAYOUT Now is enough: audio=FFAudioSource("8w3D.ec3") to obtain the channel mask if is included in the source.
__________________
BeHappy, AviSynth audio transcoder. |
|
![]() |
![]() |
![]() |
#2763 | Link | |
Broadcast Encoder
Join Date: Nov 2013
Location: Royal Borough of Kensington & Chelsea, UK
Posts: 2,737
|
Quote:
Tebasuna and I are probably the only two people excited for it, but still, thank you! XD |
|
![]() |
![]() |
![]() |
#2765 | Link | |
Professional Code Monkey
Join Date: Jun 2003
Location: Kinnarps Chair
Posts: 2,530
|
Quote:
__________________
VapourSynth - proving that scripting languages and video processing isn't dead yet |
|
![]() |
![]() |
![]() |
#2766 | Link |
Moderator
![]() Join Date: Feb 2005
Location: Spain
Posts: 6,783
|
__________________
BeHappy, AviSynth audio transcoder. Last edited by tebasuna51; 29th September 2023 at 09:55. Reason: add info |
![]() |
![]() |
![]() |
#2767 | Link |
Professional Code Monkey
Join Date: Jun 2003
Location: Kinnarps Chair
Posts: 2,530
|
Oh, only as a single monolithic mess with no comments as to why certain parts are relevant? That's a lot less helpful.
I did however see that getparity is implemented for avisynth. Does anything actually use that?
__________________
VapourSynth - proving that scripting languages and video processing isn't dead yet |
![]() |
![]() |
![]() |
#2768 | Link | |
Registered User
Join Date: Jan 2018
Posts: 2,059
|
Quote:
![]() |
|
![]() |
![]() |
![]() |
#2769 | Link |
Registered User
Join Date: Jul 2018
Posts: 416
|
Just a heads up that from this version there is a regression about the handling of the unicode filenames.
If you have issues about unicode filenames complain to the used app for reading/opening the avs script that doesn't support unicode filenames or just active the Unicode UTF-8 support in Windows (if available). Starting from this post you can read about AvsPmod. I'll upload the code used for my builds to codeberg and then post a new version. |
![]() |
![]() |
![]() |
#2770 | Link |
Registered User
Join Date: Jul 2018
Posts: 416
|
Seeking test with ffms2_r1369 and ffms2 build from f20827c (both using the same versions of the external libraries). The used video files.
![]() |
![]() |
![]() |
![]() |
#2771 | Link |
Broadcast Encoder
Join Date: Nov 2013
Location: Royal Borough of Kensington & Chelsea, UK
Posts: 2,737
|
In other words, from the chart and the test assets, there's no scenario in which someone should be using the legacy Myrsloik 2020 version given that the new version 2023 builds you keep producing addressed plenty of the issues it had.
Once again, thank you for keeping the project alive, in fact your builds have now become the standard included in FFAStrans and also the one my colleagues and I use at work on a daily basis ![]() |
![]() |
![]() |
![]() |
#2773 | Link | ||
Broadcast Encoder
Join Date: Nov 2013
Location: Royal Borough of Kensington & Chelsea, UK
Posts: 2,737
|
Ok, so, after some rather extensive testing and after wondering "why?" many times, I actually realized one thing: FFMpeg's mxf muxer for MJPEG2000 RGB48 HDR PQ files is now completely broken.
It already had its own issues a year ago with the wrong bit depth being written in the container and the CDCI essence descriptor UL (i.e YUV 4:4:4) being used instead of the RGBA essence descriptor UL (i.e RGB48), but now it got worse. You now may be wondering: "Well, that's an ffmpeg problem, what does it have to do with FFVideoSource()"? Well, simply enough, now the video in the mxf container remuxed by ffmpeg is so broken that FFVideoSource() - albeit indexing it - shows repeated/duplicated frames all over the place while dropping some other frames (I tested both ffms2 version r1347 from January 2023 and version r1369 from September 2023) and they both have issues. I even tried different seeking modes like forcing linear, specifying fpsnum=24000 and fpsden=1001 etc but nothing really helped. Please note that this is not necessarily a problem of ffms2, but rather FFMpeg muxing the file blatantly incorrectly in the mxf container. On the other hand, muxing the very same file in the mkv container has no issues at all and in fact both versions of ffms2 index it just fine and without any repeated/duplicated frames, correctly reporting 23,976p. So, this post is to warn everyone and avoid having other people spending hours in debugging: if anyone has to deal with MJPEG2000 files in mxf muxed by FFMpeg, please remux them in mkv and they'll work like a charm. For reference, here's the original mxf file: Quote:
Quote:
In other words the container is lying as it's saying that it's a 4:4:4 16bit file, while it's actually an RGB48 file, which causes FFVideoSource() to be rather "confused" about it. The range information (originally full range) is also lost, which of course is very bad for any automation you might have depending on it to be set correctly in the Avisynth frame properties. On the other hand, remuxing it to .mkv has no issues at all and preserves everything correctly. So, in a nutshell, if you get an FFMpeg muxed MJPEG2000 in mxf, please remux it to a sensible container like mkv before indexing it, otherwise the result is gonna be completely wrong. Last edited by FranceBB; 6th November 2023 at 09:07. |
||
![]() |
![]() |
![]() |
#2774 | Link | |
Broadcast Encoder
Join Date: Nov 2013
Location: Royal Borough of Kensington & Chelsea, UK
Posts: 2,737
|
Quote:
![]() |
|
![]() |
![]() |
![]() |
#2775 | Link |
21 years and counting...
Join Date: Oct 2002
Location: Germany
Posts: 716
|
Same here with german characters. I stopped using ffms and LSmash some time ago. At least DGIndex doesn't have the slightest problem with special characters in file names. And it is still the most precise indexer imho as long as you use it on elementary steams and not containers.
|
![]() |
![]() |
![]() |
#2776 | Link | ||
Registered User
Join Date: Jul 2018
Posts: 416
|
Quote:
Quote:
|
||
![]() |
![]() |
![]() |
#2777 | Link | |
Broadcast Encoder
Join Date: Nov 2013
Location: Royal Borough of Kensington & Chelsea, UK
Posts: 2,737
|
Quote:
Validating scripts with ffprobe and ffmpeg results in an error on both sides. I'll come up with more examples on Monday. |
|
![]() |
![]() |
![]() |
#2778 | Link | |
Registered User
Join Date: Jul 2018
Posts: 416
|
Quote:
|
|
![]() |
![]() |
![]() |
#2779 | Link |
Registered User
Join Date: Jul 2018
Posts: 416
|
The source code is here.
ffms2_r1386 @FranceBB, you can try this version. If AvsPmod is used, make sure the used version is >=2.7.5.5 to avoid issues with the file names. |
![]() |
![]() |
![]() |
#2780 | Link | |
Broadcast Encoder
Join Date: Nov 2013
Location: Royal Borough of Kensington & Chelsea, UK
Posts: 2,737
|
Quote:
![]() Ok, so, tested on a real life workflow (slowmotion from 100fps to 25fps and encode in XDCAM-50) with a simple file called: Test accenti àèéùì.MP4 Version ffms2_r1369 (old): Validate: FFVideoSource: Failed to open 'Test accenti Ã*èéùì.MP4' ![]() Version ffms2_r1386 (new): the encoding started just fine ![]() and went on to complete just fine. ![]() ![]() Thank you, thank you, thank you! I upgraded all my production systems. ![]() This is gonna be a very nice surprise for the news department guys as they clock in just a few hours, at 5AM. |
|
![]() |
![]() |
![]() |
Thread Tools | Search this Thread |
Display Modes | |
|
|