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. |
25th May 2015, 17:30 | #221 | Link | |
Registered User
Join Date: Mar 2012
Location: Texas
Posts: 1,666
|
Quote:
Hmm, whats up with the naming scheme? b21 in March and b50 in May? Either a lot of development or something else... |
|
25th May 2015, 18:38 | #222 | Link | |
Join Date: Mar 2006
Location: Barcelona
Posts: 5,034
|
Quote:
__________________
Groucho's Avisynth Stuff |
|
25th May 2015, 23:33 | #226 | Link |
Registered User
Join Date: May 2014
Posts: 33
|
Another quirk...
FFmpeg does not like muxing to AVI. It creates an ostensibly usable file, but the audio tags are messed up which causes some programs/devices to not properly recognize the audio codec. MP3 muxes have a minor issue in that they lack a "Frame Count" parameter which can cause CBR encodes to report as VBR. This does not appear to affect actual performance. The greater issue is muxing AC3 into AVI. In this circumstance, FFmpeg uses codec tags that may be completely foreign to some players causing them to balk with an error. Here are the tags created by a VirtualDub mux (as shown from MediaInfo): Code:
Codec ID : 2000 Codec : AC3 Codec : AC3 Codec/Family : AC3 Codec/Info : Dolby AC3 Codec/CC : 2000 Code:
Codec ID : 00001000-0000-0020-8000-00AA00389B71 Codec : AC3 Codec : AC3 Codec/Family : PCM Codec/Info : Extensible wave format Codec/CC : FFFE Given that I use Xvid/AVI just to maximize compatibility, I wish to use VirtualDub as the muxer instead of FFmpeg. To make this happen automatically, I have made an ad hoc muxing script using the old VirtualDubMod. This section of code can be added to the bottom of the XviD Batch Encoder sections: Code:
set VD=<PATH TO VIRTUALDUBMOD.EXE> set VCF=%temp_file%.vcf set track1=%encoder_out_file_track1% if "%track1:~-3%"=="ac3" ( set atype=0x00000203 ) else ( set atype=0x00000202 ) set txt=VirtualDub.Open("%encoder_out_file%","",0); set txt=%txt% VirtualDub.video.SetMode(0); set txt=%txt% VirtualDub.stream[0].SetSource("%track1%", %atype%, 0); set txt=%txt% VirtualDub.stream[0].SetMode(0); set txt=%txt% VirtualDub.stream[0].SetInterleave(1,500,1,0,%delay1%); set txt=%txt% VirtualDub.SaveAVI("%target_dir%\%target_name%.VD%encoder_ext%"); echo %txt:\\=\\\\% > "%VCF%" "%VD%" /x /s"%VCF%" && copy "%track1%" "%encoder_out_file%" Last edited by jkilez; 25th May 2015 at 23:41. |
26th May 2015, 01:39 | #227 | Link | ||
Registered User
Join Date: May 2014
Posts: 33
|
Quote:
|
||
26th May 2015, 07:24 | #228 | Link |
Registered User
Join Date: Aug 2006
Posts: 2,229
|
@Stax
I came across this interesting bit of information regarding cropping: http://avisynth.nl/index.php/Resize Say you wanted to use Spline36resize, instead of: Code:
Crop(%crop_left%, %crop_top%, -%crop_right%, -%crop_bottom%) Spline36Resize(%target_width%, %target_height%) Code:
Spline36Resize(%target_width%, %target_height%, %crop_left%, %crop_top%, -%crop_right%, -%crop_bottom%) Last edited by burfadel; 26th May 2015 at 07:27. |
26th May 2015, 14:17 | #229 | Link | |
Registered User
Join Date: May 2014
Posts: 33
|
Quote:
I can see one possible disadvantage: any pre-resize filters would now also be pre-crop, which is simply disadvantageous if your filter is slow to begin with, but can be catastrophic if your source is mod 2 and your filter requires mod 8. |
|
27th May 2015, 21:41 | #232 | Link | |||||
Registered User
Join Date: Jun 2002
Location: On thin ice
Posts: 6,837
|
Quote:
Quote:
Quote:
Quote:
Quote:
|
|||||
27th May 2015, 23:48 | #233 | Link | ||
Registered User
Join Date: May 2014
Posts: 33
|
Quote:
I will do some more testing with VeeDub64, if there is a possibility it will be incorporated into a release. If you have no real interest in it, I am content to stick with my current workaround. |
||
28th May 2015, 01:21 | #234 | Link | ||
Registered User
Join Date: May 2014
Posts: 33
|
Quote:
First, the abort now mostly works for the encoding process, but still does not work when using the "Run Compressibility Check" option. Second, you could eliminate the need to abort twice for two pass encodes by simply adding "|| exit" to the end of the first pass line. As a general rule, you would want to do this anyway because it makes no sense to run the second pass if there was an error running the first pass. Your example code would look like this: Code:
"%app:xvid_encraw%" -smoother 0 ><...snip...>< -pass1 "%temp_file%.stats" -i "%avs_file%" || exit "%app:xvid_encraw%" -smoother 0 ><...snip...>< -pass2 "%temp_file%.stats" -i "%avs_file%" -avi "%encoder_out_file%" ETA: I was hoping that I would have a solution to the third problem before posting, but so far no luck. The problem would be trivially easy to resolve if there was just some mechanism in VB that would allow you to find Parent Process IDs. ETA2: OK, here is stab at it from someone who has no way to check this stuff. The gist of the method is to use PerformanceCounter to find the PPID. First you need to find the unique instance of the process, then you can use that to find the parent. This is then compared to the PID of the CMD process that initiated the batch job. The code may be bad, but I believe the method is valid. In file "General\Proc.vb" lines 282- (changes in red) Code:
Sub KillAndThrow() TrowException = True Try If BatchCode <> "" Then Dim code = BatchCode.ToLower For Each i In System.Diagnostics.Process.GetProcesses() Try If code.Contains(i.ProcessName.ToLower + ".exe") Then Dim procName = System.Diagnostics.Process.GetProcessById(i.id).ProcessName Dim procsByName = System.Diagnostics.Process.GetProcessesByName(procName) Dim procIndexdName As String = Nothing Dim tempIndexdName As String = Nothing For idx As var = 0 To procsByName.Length - 1 tempIndexdName = If(idx = 0, procName, Convert.ToString(procName) & "#" & idx) Dim procId = New System.Diagnostics.PerformanceCounter("Process", "ID Process", tempIndexdName) If CInt(procId.NextValue()) = i.id Then procIndexdName = tempIndexdName End If Next Dim parentId = New System.Diagnostics.PerformanceCounter("Process", "Creating Process ID", procIndexdName) Dim ppid = CInt(parentId.NextValue()) If ppid = Process.id Then If Not i.HasExited AndAlso Msg("Confirm to kill " + i.ProcessName + ".exe", MessageBoxIcon.Question, MessageBoxButtons.OKCancel) = DialogResult.OK Then i.Kill() Thread.Sleep(2000) End If End If End If Catch End Try Next Else Process.Kill() End If Catch End Try End Sub Last edited by jkilez; 28th May 2015 at 19:39. |
||
29th May 2015, 21:04 | #236 | Link | ||||
Registered User
Join Date: Jun 2002
Location: On thin ice
Posts: 6,837
|
Quote:
Quote:
Quote:
I didn't really try to understand it or test it thoroughly but it seems to work. it's on github, only change since the last release since I'm still taking a break. Quote:
Last edited by stax76; 29th May 2015 at 21:06. |
||||
31st May 2015, 15:30 | #237 | Link |
Registered User
Join Date: Jan 2015
Posts: 286
|
Good News!
Hi everyone,
i've updated ffms2 to latest version which was released by Myrsloik. Since that no further audio delays in final encoded files. I hope the same for you |
31st May 2015, 17:34 | #238 | Link |
Registered User
Join Date: Jun 2002
Location: On thin ice
Posts: 6,837
|
Hello patman,
I tested it too, the delay issue is fixed, since the bug was fatal I made a small release: StaxRip x64 1.3.1.4 beta (2015-05-31)
http://github.com/stax76/staxrip/releases I've a better understanding of NTSC now and some ideas how to make it easier to deal with. Also I've been thinking about more control and manual workflow for a very very long time now and implemented a first feature today, what will follow is a demuxing dialog for mkv/mp4 and maybe more formats similar to the eac3to dialog, this way demuxing might be skipped without modifying the settings, this is useful for instance if the file was previously opened and demuxed. It' not gonna be a paradigm shift, the automatic workflow will remain, there will be just some new options for more control and flexibility. |
31st May 2015, 18:05 | #239 | Link | |
Registered User
Join Date: Jan 2015
Posts: 286
|
Quote:
so much for your continuous work on StaxRip x64 but a break looks different |
|
31st May 2015, 19:50 | #240 | Link | ||||
Registered User
Join Date: May 2014
Posts: 33
|
Quote:
Problem solved! |
||||
|
|