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.

 

Go Back   Doom9's Forum > Video Encoding > MPEG-4 Encoder GUIs

Reply
 
Thread Tools Search this Thread Display Modes
Old 24th May 2018, 19:10   #8561  |  Link
kalehrl
Registered User
 
Join Date: Feb 2011
Posts: 331
Is there any direct way to cut an audio file such as webm or mp3?
There is 'audio cutter' in the 'tools' menu but it requires 'cut file'.
This file can only be created if audio is muxed with video which I don't have.
kalehrl is offline   Reply With Quote
Old 25th May 2018, 01:36   #8562  |  Link
hello_hello
Registered User
 
Join Date: Mar 2011
Posts: 4,823
kalehrl,
Yu could use something like DelayCut, but have you tried creating a temporary blank script? ie.

BlankClip(length=39144), where "length" is the duration of the audio in seconds multiplied by 24 (the default frame rate).

That'll give you video to open with the AVS Cutter so you can add cuts to the script and save a cuts file for splitting the audio in the usual way.

I guess you'd want to have "Add Time Position" checked for the Preview in MeGUI's settings so you can see where you are based on time rather than only by frame number. If you wanted the cuts to be more accurate than to within 41ms (cause the AVS Cutter still adds cuts based on frame numbers) you could use a higher frame rate for the blank clip.

Or you could create the cuts file yourself. It's just a text file with a cts extension. If you create one and open it with Notepad you should see how it works.
hello_hello is offline   Reply With Quote
Old 25th May 2018, 10:31   #8563  |  Link
tebasuna51
Moderator
 
tebasuna51's Avatar
 
Join Date: Feb 2005
Location: Spain
Posts: 6,890
1) To cut a audio file by exact points you need decode the file and use a wav editor or other wav tool.
If you want cut a audio file without recode, the cut points must be in audio frame boundaries because the method is delete some complete (from 11 ms in DTS until 32 ms in AC3) audio frames.

2) If you assume that limit and some clicks in cut points (between frames there are some info traslated) if aren't in silent points, there are some tools to do the job.
For instance:

a) MeGUI method (AVS cutter -> cuts.clt -> Audio cutter) based in the old Besplit.exe with a command line like:

"...\besplit.exe" -core( -input "INPUT.ac3" -prefix "OUTPUT" -type ac3 -a ) -split( 522.08 1960.32 2000.32 3017.6 3087.6 3440.2 )

Thats cuts the input file in parts, by the nearest 32 ms point, and after join the desired parts.
The points are in seconds and are calculated with fps (here 25) and Trim frames, here:
trim(13052,49007) + trim(50008,75439) + trim(77190,86004).

Of course you can use besplit.exe manually without need avs at all.
Besplit don't support all audio formats.

b) MkvMerge method. If you want a manual method I recommend you use a command line like:

"...\mkvmerge.exe" -o "OUTPUT.mka" "INPUT.EXT" --split parts:00:08:42.080-00:32:40.320,+00:33:20.320-00:50:17.600,+00:51:27.600-00:57:20.200

The points are the same, in format hh:mm:ss.mmm, the '-' show the range included, the ',+' add the next range.
MkvMerge support much more formats than the old BeSplit.
__________________
BeHappy, AviSynth audio transcoder.
tebasuna51 is offline   Reply With Quote
Old 25th May 2018, 13:58   #8564  |  Link
Cunhambebe
Registered User
 
Cunhambebe's Avatar
 
Join Date: Nov 2004
Location: São Paulo (Saint Paul) - Brazil
Posts: 208
Hi friends.
I recently updated w10 (April 2018 version). This happened las friday here. Sice then MEGUI 2828 stoped working, it doesn't start anymore. Then I've decided to install the new version 2836. Same thing. It says here: MeGUI encountered a fatal error and may not be able do proceed. Reason: external component added an exception.
Question: should I remove w10 last update or wait for a fix on MeGUI?
Thanks in advance.
Cunhambebe is offline   Reply With Quote
Old 25th May 2018, 20:56   #8565  |  Link
kalehrl
Registered User
 
Join Date: Feb 2011
Posts: 331
Thanks hello_hello and tebasuna51
It sounds way too complicated than I anticipated.
I tried using some mp3 cutting tools like mp3split-gtk but it was flaky so I thought of MeGUI and the avs stuff.
I will study those examples and hopefully come up with a solution that works for me.
kalehrl is offline   Reply With Quote
Old 6th June 2018, 01:21   #8566  |  Link
LouieChuckyMerry
Registered User
 
LouieChuckyMerry's Avatar
 
Join Date: Feb 2014
Posts: 355
Quote:
Originally Posted by kalehrl View Post
Thanks hello_hello and tebasuna51
It sounds way too complicated than I anticipated.
I tried using some mp3 cutting tools like mp3split-gtk but it was flaky so I thought of MeGUI and the avs stuff.
I will study those examples and hopefully come up with a solution that works for me.
Hope it's not too late. I've been using Mp3DirectCut for years with excellent results.
LouieChuckyMerry is offline   Reply With Quote
Old 6th June 2018, 09:14   #8567  |  Link
kalehrl
Registered User
 
Join Date: Feb 2011
Posts: 331
Thank you.
It is much simpler and more useful than mp3spl-gtk so I'll keep using it.
kalehrl is offline   Reply With Quote
Old 19th June 2018, 07:59   #8568  |  Link
LigH
German doom9/Gleitz SuMo
 
LigH's Avatar
 
Join Date: Oct 2001
Location: Germany, rural Altmark
Posts: 6,753
After a few troubles, l33tmeatwad provided recent builds of L-SMASH Works and FFMS2. Possibly a few final tests pending?

Note: Due to L-SMASH Works issue #58 persisting, decoding VC-1 from MKV fails here (but works in FFMS2).
__________________

New German Gleitz board
MediaFire: x264 | x265 | VPx | AOM | Xvid
LigH is offline   Reply With Quote
Old 4th July 2018, 17:53   #8569  |  Link
leon
Registered User
 
Join Date: Nov 2013
Posts: 136
Quote:
decoding VC-1 from MKV fails here (but works in FFMS2).
It also fails in WMV.
leon is offline   Reply With Quote
Old 13th July 2018, 13:34   #8570  |  Link
rhaz
Registered User
 
Join Date: Mar 2010
Posts: 115
x64 2869 dev version crash x264 encoding with TIVTC x64 from https://github.com/pinterf/TIVTC/releases using tfm(order=1).tdecimate() all this selecting from a dropdown list of deinterlacers in the interface.

error: [Error] [2018-07-13 15:17:24] Process exits with error: 0xC0000005 STATUS_ACCESS_VIOLATION (-1073741819)

encodes fine if you remove tfm(order=1).tdecimate()
rhaz is offline   Reply With Quote
Old 13th July 2018, 20:28   #8571  |  Link
Danette
Registered User
 
Join Date: Apr 2013
Posts: 346
I just updated to 2836 and, now, all of my attempts to encode, using One-Click, result in instant failure after the indexing process, i.e.: when encoding starts. The progress window never appears. The avs error reported is: "Error occurred while writing frame 0" followed by another error message: "process exits with error: 0xFFFFFFFF (-1)". This happens with many different m2v files. Before updating, there were no problems.
Danette is offline   Reply With Quote
Old 19th July 2018, 13:37   #8572  |  Link
Zathor
Registered User
 
Join Date: Nov 2009
Posts: 2,405
Quote:
Originally Posted by Danette View Post
I just updated to 2836 and, now, all of my attempts to encode, using One-Click, result in instant failure after the indexing process, i.e.: when encoding starts. The progress window never appears. The avs error reported is: "Error occurred while writing frame 0" followed by another error message: "process exits with error: 0xFFFFFFFF (-1)". This happens with many different m2v files. Before updating, there were no problems.
Please provide a log and if possible update to the latest development version.
Zathor is offline   Reply With Quote
Old 29th July 2018, 13:08   #8573  |  Link
Pulp Catalyst
Registered User
 
Join Date: May 2006
Posts: 297
Is there any chance that someone can share simple profiles that can take care of most generic jobs.

like DVD's, and & Bluray conversions.

also a couple of QTGMC - Medium pre-sets for dealing with interlaced stuff.

i only ask, because there are hundreds of threads, and i hoped by asking, perhaps some f you more veteran users could share just some simple generic profiles that can get me started?

thanks.
Pulp Catalyst is offline   Reply With Quote
Old 29th July 2018, 14:18   #8574  |  Link
LigH
German doom9/Gleitz SuMo
 
LigH's Avatar
 
Join Date: Oct 2001
Location: Germany, rural Altmark
Posts: 6,753
Profiles for ... what? AviSynth filter sets, or encoder parameter sets?
__________________

New German Gleitz board
MediaFire: x264 | x265 | VPx | AOM | Xvid
LigH is offline   Reply With Quote
Old 31st July 2018, 18:39   #8575  |  Link
Pulp Catalyst
Registered User
 
Join Date: May 2006
Posts: 297
forgive me,

i was referring to the all in one profiles used for one click encode, that the all in one click will take it que from (if you will)?

I'm aware that the script will need to be adjust for my system setup, but i was hoping for those that have already got there foot firmly in the door, to kindly share some simple yet effective generic profiles.

if at all possible?

Thanks,

note: i have a i7 3770k cpu (which is quad core, with 8 threads total).

i would like to have profiles that will be relatively efficient?

Last edited by Pulp Catalyst; 31st July 2018 at 18:41.
Pulp Catalyst is offline   Reply With Quote
Old 8th August 2018, 00:37   #8576  |  Link
hello_hello
Registered User
 
Join Date: Mar 2011
Posts: 4,823
Zathor,

I'm working on a new version of my cropping/resizing script, and it occurred to me it could play nice with MeGUI.

I discovered if a function creates the same global variables as MeGUI, the new values replace the original ones and MeGUI uses them when loading the script (I'd not thought about it before and assumed MeGUI read the actual text somehow).

Anyway, is there any limitation for the aspect ratio variables? Float seems to be a showstopper, but would particularly large integers cause problems?

global MeGUI_darx = 4
global MeGUI_dary = 3

And because you don't know unless you ask..... is that the only way to supply MeGUI with an aspect ratio via a script? Specifying a display or sample aspect ratio as float would be nice.
hello_hello is offline   Reply With Quote
Old 8th August 2018, 08:11   #8577  |  Link
LigH
German doom9/Gleitz SuMo
 
LigH's Avatar
 
Join Date: Oct 2001
Location: Germany, rural Altmark
Posts: 6,753
The MeGUI_dar* variables won't be interesting for AviSynth in any way, they are just variables which will be ignored because they are never used in calculations (at least not in the AviSynth script). MeGUI will recognize them as remarks, to calculate SAR values to pass them along for encoder command line options, e.g. x264/x265: "--sar <width:height|int>". I guess MeGUI is able to calculate brief SAR values either way...
__________________

New German Gleitz board
MediaFire: x264 | x265 | VPx | AOM | Xvid

Last edited by LigH; 8th August 2018 at 08:28.
LigH is offline   Reply With Quote
Old 8th August 2018, 10:40   #8578  |  Link
StainlessS
HeartlessS Usurer
 
StainlessS's Avatar
 
Join Date: Dec 2009
Location: Over the rainbow
Posts: 10,980
HH, here prototype script functions for setting dar prior to implementation in RT_Stats,
I regularly use scripts that set Display Aspect Ratio in MeGUI.

Code:
Function GetCropDAR(clip c,float DAR,float "X",float "Y",float "W",float "H") {
# Call prior to Crop/Resize with (possibly fractional) cropping to calc resultant DAR, X,Y,W,H are cropping coords
#   DAR = FAR * SAR   :::   FAR = DAR / SAR   :::   SAR = DAR / FAR
#
    X=Float(Default(X,0.0)) Y=Float(Default(Y,0.0)) W=Float(Default(W,0.0)) H=Float(Default(H,0.0))
    W=W<=0.0?c.width+W-X:W  H=H<=0.0?c.height+H-Y:H
    # we dont allow eg -ve X
    Assert(X>=0.0&&X  < c.width, "GetCropDAR: Invalid X("+String(X)+")")
    Assert(Y>=0.0&&Y  < c.height,"GetCropDAR: Invalid Y("+String(Y)+")")
    Assert(W> 0.0&&X+W<=c.width, "GetCropDAR: Invalid W("+String(W)+")")
    Assert(H> 0.0&&Y+H<=c.height,"GetCropDAR: Invalid H("+String(H)+")")
    Return c.GetSAR(DAR) * W / H
}

#--------------

# From MeGUI Wiki:
Function GetDAR(clip c, float SAR) { return Float(c.width) * SAR / Float(c.height)}     # Gets the DAR from the SAR
Function GetSAR(clip c, float DAR) { return DAR * Float(c.height) / Float(c.width) }    # Gets the SAR from the DAR
Function SignalDAR(float DAR){ # Signal DAR for MEGUI (Name change from SetDar)
    Assert(DAR>0.0, "SignalDAR: Error, DAR must be greater than zero")
    Global MeGUI_darx=Round(1000*DAR) Global MeGUI_dary=1000
}
Function SignalDAR2(int DARX,int DARY){
    Assert(DARX>0 && DARY>0, "SignalDAR2: Error, DARX and DARY must be greater than zero")
    Global MeGUI_darx=DARX Global MeGUI_dary=DARY
}
EDIT: GetDAR and GetSAR return results as Float, not integer pairs.
EDIT: Might also be of interest:- http://avisynth.nl/index.php/Interna...2C_Denominator
__________________
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; 8th August 2018 at 10:53.
StainlessS is offline   Reply With Quote
Old 8th August 2018, 15:42   #8579  |  Link
hello_hello
Registered User
 
Join Date: Mar 2011
Posts: 4,823
Quote:
Originally Posted by LigH View Post
The MeGUI_dar* variables won't be interesting for AviSynth in any way, they are just variables which will be ignored because they are never used in calculations (at least not in the AviSynth script). MeGUI will recognize them as remarks, to calculate SAR values to pass them along for encoder command line options, e.g. x264/x265: "--sar <width:height|int>". I guess MeGUI is able to calculate brief SAR values either way...
Not of an interest to Avisynth itself, but they can still be used by scripts.
MeGUI doesn't seem to recognize them as remarks as such, but as global variables just as Avisynth does. I don't know how it works, but that's what happens.

For instance if I create a simple function such as this one:

Code:
function MeGUIAspect(clip c)     {
global MeGUI_darx = 16
global MeGUI_dary = 9
Return c     }
And add it to a script after MeGUI has added it's own aspect ratio variables:

Code:
# Set DAR in encoder to 4 : 3. The following line is for automatic signalling
global MeGUI_darx = 4
global MeGUI_dary = 3

LoadPlugin("C:\Program Files\MeGUI\tools\dgindex\DGDecode.dll")
DGDecode_mpeg2source("D:\video.d2v")

MeGUIAspect()
When the script is saved and loaded, MeGUI will see the display aspect ratio as 16:9, not 4:3.

The only "gotcha" is MeGUI decides on the aspect ratio when it loads the script, so you can't change it later. If you change the resolution after loading a script and there's no aspect info (it's not anamorphic), MeGUI will still adjust the SAR to give you the original DAR, so you have to delete the script from the job queue and load it again.
I'm not sure why it works that way as the log file informs you the aspect ratio has changed, although I think it should be a warning message, but MeGUI uses the original DAR even though it's aware it's changed.

Changing my function above to a 2:1 aspect ratio after adding the script to the job queue:

Code:
-[Information] [09/08/18 12:36:21 AM] AviSynth input script
--[NoImage] # Set DAR in encoder to 4 : 3. The following line is for automatic signalling
--[NoImage] global MeGUI_darx = 4
--[NoImage] global MeGUI_dary = 3
--[NoImage] LoadPlugin("C:\Program Files\MeGUI\tools\dgindex\DGDecode.dll")
--[NoImage] DGDecode_mpeg2source("D:\video.d2v")
--[NoImage] MeGUIAspect()
-[Information] [09/08/18 12:36:22 AM] resolution: 720x480
-[Information] [09/08/18 12:36:22 AM] frame rate: 30000/1001
-[Information] [09/08/18 12:36:22 AM] frames: 44477
-[Information] [09/08/18 12:36:22 AM] length: 00:24:44.049
-[Information] [09/08/18 12:36:22 AM] aspect ratio (avs): 2:1 (2.000)
-[Information] [09/08/18 12:36:22 AM] aspect ratio (job): 16:9 (1.778)

Last edited by hello_hello; 8th August 2018 at 15:51.
hello_hello is offline   Reply With Quote
Old 8th August 2018, 15:43   #8580  |  Link
hello_hello
Registered User
 
Join Date: Mar 2011
Posts: 4,823
Quote:
Originally Posted by StainlessS View Post
HH, here prototype script functions for setting dar prior to implementation in RT_Stats,
I regularly use scripts that set Display Aspect Ratio in MeGUI.
Thanks for that, it should help once I get my head around it.

I think I understand what you quoted from the wiki, but to confirm, there's no other way to give MeGUI an aspect ratio via a script other than using global MeGUI_darx & global MeGUI_dary?

Cheers.

Last edited by hello_hello; 8th August 2018 at 16:10.
hello_hello is offline   Reply With Quote
Reply

Tags
megui

Thread Tools Search this Thread
Search this Thread:

Advanced Search
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off

Forum Jump


All times are GMT +1. The time now is 00:17.


Powered by vBulletin® Version 3.8.11
Copyright ©2000 - 2024, vBulletin Solutions Inc.