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. Domains: forum.doom9.org / forum.doom9.net / forum.doom9.se |
|
|
#1501 | Link | |
|
Registered User
Join Date: Aug 2016
Posts: 465
|
Quote:
Assuming RT_Call waits until the command is complete before allowing the next Avisynth filter in the chain (MPEG2Source) to be called - can you clarify StainlessS?
|
|
|
|
|
|
|
#1502 | Link |
|
HeartlessS Usurer
Join Date: Dec 2009
Location: Over the rainbow
Posts: 11,498
|
Flossy, no, but see CallCmd(Synchronous=7), [EDIT: Using Open command]
https://forum.doom9.org/showthread.php?t=166063 Code:
CallCmd(clip,string "Command"="", string "Frames"="",string "Insert"="",int "Digits"=6,bool "Once"=true,int "Offset"=0,
bool "Hide"=false,bool "Debug"=false,string "Open"="",string "Close"="",int "Synchronous"=7)
Synchronous (default 7, range 0 - 7)
The Synchronous arg is a group of 3 bitflags,
bit 0 if set means wait for process to terminate before returning from the 'Open' command.
bit 1 if set means wait for process to terminate before returning from the 'Frames' commands.
bit 2 if set means wait for process to terminate before returning from the 'Close' command.
0 = All Asynchronous, ie dont wait at all.
1 = Wait only on 'Open' command.
2 = Wait only on 'Frames' commands.
3 = Wait on 'Open' and 'Frames' commands.
4 = Wait on 'Close' command.
5 = Wait on 'Open' and 'Close' commands.
6 = Wait on 'Frames' and 'Close' commands.
7 = Wait on ALL commands (default).
Beware, if you dont wait it is very possible that any future reliance upon output of command may fail due to the
output file being in use. Also, if debug true and waiting for process to complete, then will also show the process return
code on successful process creation (and completion) in DebugView, cannot do this if NOT waiting completion.
during frameserve stage. [EDIT: Actually on CallCmd filter construction, during filter graph creation and BEFORE frameserving starts] Maybe you could call eg RT_Sleep(10.0), and pole for existing index file, else loop. EDIT: If using DGIndex Template, then created AVS file is created last after indexing. [Using DGIndex GUI, dont know about CMD line ver$] EDIT: Gone t' pub.
__________________
I sometimes post sober. StainlessS@MediaFire ::: AND/OR ::: StainlessS@SendSpace "Some infinities are bigger than other infinities", but how many of them are infinitely bigger ??? Last edited by StainlessS; 5th December 2023 at 14:01. |
|
|
|
|
|
#1504 | Link | |
|
Registered User
Join Date: Aug 2016
Posts: 465
|
Quote:
|
|
|
|
|
|
|
#1506 | Link |
|
Moderator
![]() Join Date: Feb 2005
Location: Spain
Posts: 7,457
|
WARNING: the sintax in last L-SMASH-Works-r1156.0.0.0 have a important change:
the recommended parameter for LWLibavAudioSource/LSMASHAudioSource(..., drc_scale=0,...) not work now, must be: (..., ff_options = "drc_scale=0", ...) |
|
|
|
|
|
#1507 | Link | ||
|
HeartlessS Usurer
Join Date: Dec 2009
Location: Over the rainbow
Posts: 11,498
|
Quote:
Quote:
then just use index as per normal. [object being to use Callcmd with Syncronous=7 to wait until target file index is actually created] [Open="..." being the command line to call the indexer on target file. Also, see BLUE EDIT line in above quote] But it looks like the problem is solved anyway.
__________________
I sometimes post sober. StainlessS@MediaFire ::: AND/OR ::: StainlessS@SendSpace "Some infinities are bigger than other infinities", but how many of them are infinitely bigger ??? Last edited by StainlessS; 5th December 2023 at 14:01. |
||
|
|
|
|
|
#1508 | Link |
|
Registered User
Join Date: Aug 2016
Posts: 465
|
Yes, DG released auto indexer for DGDecode but it's not compatible with mkv's (I remuxed all my physical copy DVD's to mkv using MakeMKV and plan to continue using that application for various reasons).
FFMS2 is also a good option now too, it seems. So I'm quite spoiled for choice when it comes to accurate DVD playback, and DGDecode is still nice to have as a backup option (just need to give it .vob files from eg. DVD Decrypter or DVD Shrink). Last edited by flossy_cake; 7th December 2023 at 07:45. |
|
|
|
|
|
#1509 | Link |
|
Registered User
Join Date: Aug 2016
Posts: 465
|
In the interest of improving LWLibAV compability, here is an mkv which FFMpegSource2 can play but LWLibAV cannot:
https://drive.google.com/u/0/uc?id=1...xport=download It is MPEG2 video remuxed from DVD using MakeMKV. Code:
FFVideoSource("C:\S01E01.mkv", rffmode=1) # works
LWLibavVideoSource("C:\S01E01.mkv", repeat=true) # doesn't work
![]() Curiously, if I trim 2 seconds off the end of it with: Code:
"c:\program files\ffmpeg\bin\ffmpeg.exe" -ss 00:00:00 -to 00:23:52 -i "C:\S01E01.mkv" -c copy -map 0 "C:\S01E01_trimmed.mkv" So the offending data appears to be within the last couple of seconds of the clip - hopefully that offers a clue as to why LWLibAV doesn't like it. It may very well be that the last 2 seconds is somehow incorrectly encoded and FFMS2 should refuse to play it as well, but that is a decision for the authors of the source filters to decide how "fault tolerant" they should be. Last edited by flossy_cake; 7th December 2023 at 07:44. |
|
|
|
|
|
#1510 | Link |
|
Registered User
Join Date: Jan 2018
Posts: 2,170
|
You neeed create issue here
https://github.com/HomeOfAviSynthPlu...H-Works/issues |
|
|
|
|
|
#1511 | Link | |
|
Registered User
Join Date: Aug 2016
Posts: 465
|
Quote:
|
|
|
|
|
|
|
#1512 | Link | |
|
HeartlessS Usurer
Join Date: Dec 2009
Location: Over the rainbow
Posts: 11,498
|
Quote:
I've just myself discovered that problem and was about to report it. I guess that I've got a lot of scripts to change, would have been nice if old args could remain as was, and any changes coped with within the LSmash dll, ie create dll internal ff_options string from eg LSmashAudioSource(..., drc_scale=0). It should be fairly easily 'do-able' - EDIT: From the doc file, Code:
LSMASHVideoSource(string source, int track = 0, int threads = 0, int seek_mode = 0, int seek_threshold = 10,
bool dr = false, int fpsnum = 0, int fpsden = 1, string format = "", string decoder = "",
int prefer_hw = 0, int ff_loglevel = 0, string ff_options = "")
# ...
+ ff_options (default : "")
Set the decoder options in FFmpeg.
The format is `key=value` separated by " ". (e.g. "drc_scale=0 auto_convert=0").
Code:
LSMASHAudioSource(string source, int track = 0, bool skip_priming = true, string layout = "", int rate = 0,
string decoder = "", int ff_loglevel = 0, string ff_options = "")
# ...
+ ff_options (defalut: "")
Same as 'ff_options' of LSMASHVideoSource().
EDIT: I guess that if there are likely to be many more ffmpeg options added, then would be easiest to just leave it as is, and change all existing scripts instead
__________________
I sometimes post sober. StainlessS@MediaFire ::: AND/OR ::: StainlessS@SendSpace "Some infinities are bigger than other infinities", but how many of them are infinitely bigger ??? Last edited by StainlessS; 9th December 2023 at 15:32. |
|
|
|
|
|
|
#1514 | Link | |
|
Registered User
Join Date: Aug 2016
Posts: 465
|
Oh it's just been added back: https://github.com/HomeOfAviSynthPlu...orks/issues/51
Quote:
Last edited by flossy_cake; 10th December 2023 at 08:43. |
|
|
|
|
|
|
#1515 | Link | |
|
.
![]() Join Date: Oct 2001
Location: Germany
Posts: 7,988
|
Quote:
|
|
|
|
|
|
|
#1517 | Link |
|
Registered User
Join Date: Aug 2016
Posts: 465
|
I wasn't even aware drc_scale was supported as it isn't mentioned at the avisynth.nl page (only in readme.md on github).
I am interested in using it, but can't really test it out as I can't seem to find a filter or other tool that can report on whether the AC-3 track has DRC encoding. Can anyone suggest a tool for getting DRC info from video files with ac-3 tracks? MediaInfo doesn't seem to say, I think possibly as it's not flagged as metadata but is somehow baked into the packets inside the audio stream. Last edited by flossy_cake; 10th December 2023 at 10:35. |
|
|
|
|
|
#1518 | Link | |
|
Moderator
![]() Join Date: Feb 2005
Location: Spain
Posts: 7,457
|
Quote:
The metadata are in the Audio Block, a value for each block, normally a frame have 6 blocks Code:
File: test.ac3 Size: 961536 bytes ----------------------------------------- First Frame Info SampleRate ..................: 0 (48000 Hz) BitRate .....................: 14 (384 Kb/s) FrameSize....................: 1536 bytes ... Dynamic Range gain ..........: 5.89 dB (first block) ----------------------------------------- Revised full AC3 Info Dyn. Range min/max : -11.51/5.89 dB ... ------------------------------------------------- End Info |
|
|
|
|
![]() |
| Thread Tools | Search this Thread |
|
|