Log in

View Full Version : MeGUI: General Questions and Troubleshooting Thread


Pages : 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 [153] 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186

hello_hello
30th July 2014, 19:14
It seems to happen (sometimes) if the input audio is mono. I tried converting a mono flac file and that was fine, but a mono m4a file containing AAC produced a similar warning. The output file was stereo (dual mono). It seems under some circumstances, mono audio is decoded to stereo, hence the warning. At least that's how it appears. I'm not sure it's anything to worry about unless you particularly want a single channel output.

leon's MediaInfo report..... I don't know whether that'd be the input or the output file or why it reports Channel(s) and Channel(s)_Original. He wasn't terribly specific.

--[Information] [31/07/14 3:57:58 AM] Trying to open the file with NicAudio
--[Information] [31/07/14 3:57:58 AM] Failed opening the file with NicAudio()
--[Information] [31/07/14 3:57:58 AM] Trying to open the file with BassAudioSource()
--[Information] [31/07/14 3:58:01 AM] Successfully opened the file with BassAudioSource()
--[Warning] [31/07/14 3:58:03 AM] channel count mismatch! The input file is reporting 1 channels and the AviSynth script is reporting 2 channels
--[Information] [31/07/14 3:58:03 AM] Avisynth script
---[NoImage] ClearAutoloadDirs()
---[NoImage] AddAutoloadDir("C:\Program Files\MeGUI\tools\avs\plugins")
---[NoImage] LoadPlugin("C:\Program Files\MeGUI\tools\avisynth_plugin\BassAudio.dll")
---[NoImage] BassAudioSource("D:\test.m4a")
---[NoImage] # detected channels: 1 channel
---[NoImage] # detected channel positions: 1/0/0
---[NoImage] return last
--[Information] [31/07/14 3:58:03 AM] Commandline used: -ignorelength -q 0.5 -if - -of "{0}"
--[Information] [31/07/14 3:58:03 AM] Avisynth script environment opened
--[Information] [31/07/14 3:58:03 AM] Script loaded
--[Information] [31/07/14 3:58:03 AM] Output Decoder
---[Information] [31/07/14 3:58:03 AM] Channels: 2
---[Information] [31/07/14 3:58:03 AM] Bits per sample: 32
---[Information] [31/07/14 3:58:03 AM] Sample rate: 48000
--[Information] [31/07/14 3:58:03 AM] Job commandline: C:\Program Files\MeGUI\tools\eac3to\neroAacEnc.exe -ignorelength -q 0.5 -if - -of "D:\test_new.m4a"
--[Information] [31/07/14 3:58:03 AM] Process started
--[Information] [31/07/14 3:58:03 AM] Standard output stream
--[Information] [31/07/14 3:58:03 AM] Standard error stream
--[Information] [31/07/14 3:58:15 AM] MediaInfo
---[Information] [31/07/14 3:58:15 AM] File: D:\test_new.m4a
---[Information] General
----[Information] Format: MPEG-4
----[Information] FormatString: MPEG-4
----[Information] FileSize: 3241936
----[Information] PlayTime: 00:03:49.909
---[Information] Audio
----[Information] ID: 1
----[Information] StreamOrder: 0
----[Information] Format: AAC
----[Information] FormatProfile: LC
----[Information] FormatSettingsSBR: No (Explicit)
----[Information] FormatSettingsPS:
----[Information] SamplingRate: 48000
----[Information] SamplingRateString: 48.0 KHz
----[Information] Channels: 2
----[Information] ChannelsString: 2 channels
----[Information] ChannelPositionsString2: 2/0/0
----[Information] BitRateMode: VBR
----[Information] Delay:
----[Information] Title:
----[Information] Language:
----[Information] LanguageString:
----[Information] Default:
----[Information] DefaultString:
----[Information] Forced:
----[Information] ForcedString:
--[Information] [31/07/14 3:58:15 AM] Postprocessing
--[Information] [31/07/14 3:58:15 AM] Job completed

leon
30th July 2014, 23:09
@tebasuna51
Hi thank you for your help.
I think the original audio was mono and it's been upmixed but wrong.
in MeGUI log window detected channels is one but in the script it's 2 this applies to channel positions to.
if MeGUI loads what is in scripts so why they aren't match.
I finally converted the audio with "Xilisoft Video Converter" to WAVE 2 channels and then encoded it with QAAC.

leon
30th July 2014, 23:15
@hello_hello

Hi
it's the input (original) audio,the output reports channel as mono.
your detected channels and channel positions are correct but look at mine how could one detected channel be 2/0/0.
I use downmix to Dolby pro logic II maybe that's the problem.

hello_hello
31st July 2014, 02:03
Maybe I'm on the wrong track, but the info as to which channel is which is obviously saved as part of the audio stream (left, right, centre etc) so maybe it's possible for a mono channel to be configured as left and right rather than as centre only. That'd explain:

Channel(s) : 2 channels
Channel(s)_Original : 1 channel

in the MediaInfo report for the original file. If the output is reported as mono, maybe that's "correct" in respect to having the same number of channels?

The MeGUI log file.... before it tries to commence encoding, shows a MediaInfo report for the file. In my case it always includes this for a mono AAC input file (under MediaInfo/Audio):

[Information] Channels: 1
[Information] ChannelsString: 1 channel
[Information] ChannelPositionsString2: 1/0/0

For other formats such as MP3 the ChannelPositionsString2 field is empty. Does your input file look any different?

I'll confess I'm guessing, but there does seem to be some inconsistencies when I tested some encodes of a mono file. If the source was mka, MP3 or an ffaudiosource script, the output was mono with no warnings. The same AAC audio in an m4a and the log file included the channel mismatch warning, the decoder output as 2 channels and the output file was stereo. Which seems odd, as the MediaInfo report was the same as above each time. The difference there seems to be the decoder used. It was NicAudio for the mka, BassAudio for the m4a.

Anyway, sorry..... I guess the channel mismatch I'm seeing in the log file is caused by a different circumstance than yours, but maybe I've helped someone work out why it's happening....?

LigH
31st July 2014, 06:47
I recently had a discussion about the M4A header created by QAAC which may indeed be slightly confusing. According to QAAC's author, nu774, there is an obsolete flag which only reports if the audio is mono or stereo (similar to MPEG1 audio), but most software is supposed to ignore it, because the AAC audio stream "kernel" has own flags which are more modern and detailed, as useful as e.g. WAVEFORMATEXTENSIBLE or Dolby Digital AC3 channel flags, supporting multi-channel audio configurations. Here in the HydrogenAudio forum (http://www.hydrogenaud.io/forums/index.php?showtopic=85135&view=findpost&p=867076):

mp4a.channelcount is intentionally set to either 1 or 2, since in the former spec (ISO 14496-12) only 1 or 2 was allowed. However, it seems that no such restriction present in the new spec (4th ed @2012-7-15). Therefore, maybe I should fix qaac to write actual number of channels.

On the other hand, I can say for sure that nothing in AudioSampleEntry (mp4a) matters and cannot be taken seriously.
For example, samplesize field (typically it is 16) is non-sense for AAC.
samplerate field is 16.16 fixed-point, so not enough to represent high samplerate such as 96kHz.
I don't understand why MediaInfo looks at it at all.

leon
31st July 2014, 07:51
Hi
MeGUI is good with 5.1 channel and it can detect channels ans channel positions.
with 2 channels most of the time can't detect positions.
and it's not good with mono but when I convert my audio to WAVE not matter 1,2 or 5.1 channel it works good.

hello_hello
31st July 2014, 22:53
I recently had a discussion about the M4A header created by QAAC which may indeed be slightly confusing. According to QAAC's author, nu774, there is an obsolete flag which only reports if the audio is mono or stereo (similar to MPEG1 audio), but most software is supposed to ignore it, because the AAC audio stream "kernel" has own flags which are more modern and detailed, as useful as e.g. WAVEFORMATEXTENSIBLE or Dolby Digital AC3 channel flags, supporting multi-channel audio configurations.

I guess that explains the "oddness" displayed by MediaInfo I noticed recently. I generally use NeroAAC but I was running some comparison encodes (using foobar2000) and noticed MediaInfo reported a 5.1ch AAC stream encoded with QAAC as:

Channel(s) : 2 channels
Channel(s)_Original : 6 channels

For the record, QAAC isn't alone when it comes to the flags it writes. The Fraunhofer AAC encoders seem to do the same thing. fdkaac.exe and fhgaacenc.exe (the front end for the Fraunhofer AAC encoder which comes with Winamp).
NeroAAC is the odd one out. It's the only encoder for which the output file was reported as simply being 6 channel by MediaInfo.

After muxing with the video in an MKV though, MediaInfo just reports 6 channels for the audio regardless of the AAC encoder.

(fhgaacenc.exe sure is fast. At least 50% faster than the rest. VBR encoding).

Anyway, that's getting away from leon's problem a little, although he hasn't uploaded a sample......

Hi
MeGUI is good with 5.1 channel and it can detect channels ans channel positions.
with 2 channels most of the time can't detect positions.
and it's not good with mono but when I convert my audio to WAVE not matter 1,2 or 5.1 channel it works good.

I can't say I've ever experienced any channel count mismatches when converting stereo audio with MeGUI.

leon
1st August 2014, 23:13
I said before that I converted the audio to WAVE with Xilisoft then encoded it so I don't have a sample.
wait hopefully I just found another file like that.
Audio
ID : 2
Format : AAC
Format/Info : Advanced Audio Codec
Format profile : LC
Codec ID : 40
Duration : 1h 3mn
Bit rate mode : Constant
Bit rate : 56.0 Kbps
Channel(s) : 2 channels
Channel(s)_Original : 1 channel
Channel positions : Front: C
Sampling rate : 44.1 KHz
Compression mode : Lossy
Stream size : 25.5 MiB (10%)

the whole file is big so I can't upload it. is there anyway that I can upload the audio only untouched?

hello_hello
2nd August 2014, 08:24
You said the original audio is mono and the output audio is mono, and from what we've been able to tell so far "Channel(s) : 2 channels" as reported by MediaInfo is probably wrong and "Channel(s)_Original : 1 channel" is probably correct. MeGUI is letting you know via the log file that MediaInfo reports two channels, but according to the Avisynth output there's only one. Unfortunately MeGUI doesn't have an option to convert mono to stereo as such. Mind you I'm not sure if there's any advantage to doing so anyway.

You could try loading the MP4 directly into MeGUI's audio section and re-encoding the audio that way (it doesn't matter if it also contains video). Every time I do, MeGUI uses BassAudioSource(), and even if the audio is actually mono, the output ends up being stereo (I assume BassAudio decodes it to stereo?), which I gather is what you're wanting. Currently you're using FFAudioSource() which seems to decode mono as mono.
Hopefully with BassAudio you'll go from mono input to stereo output with no channel mismatch being reported at all. If you try it that way, please report back with the result.

There's possibly no point extracting the audio and uploading it, because if the channel mismatch is being caused by flags saved to the MP4 container, then after extracting the audio you'll probably just have a mono aac file. You could maybe try splitting off a small section of the whole MP4 with something like My MP4Box GUI for uploading. Or even try opening the MP4 with MKVMergeGUI and remuxing it as an MKV, then checking the MKV version with MediaInfo. If I'm correct, once it's remuxed as an MKV, MediaInfo will probably only report the audio as being mono, if that's what it is.

leon
2nd August 2014, 13:37
The result of using BaseAudio:
Audio
ID : 1
Format : AAC
Format/Info : Advanced Audio Codec
Format profile : HE-AAC / LC
Codec ID : 40
Duration : 1h 3mn
Bit rate mode : Variable
Bit rate : 78.8 Kbps
Maximum bit rate : 102 Kbps
Channel(s) : 2 channels
Channel positions : Front: L R
Sampling rate : 96.0 KHz / 48.0 KHz
Compression mode : Lossy
Stream size : 35.9 MiB (98%)
Encoded date : UTC 2014-08-02 11:18:13
Tagged date : UTC 2014-08-02 11:26:38




The result of using FFAduioSource:
Audio
ID : 1
Format : AAC
Format/Info : Advanced Audio Codec
Format profile : HE-AAC / LC
Codec ID : 40
Duration : 1h 3mn
Bit rate mode : Variable
Bit rate : 82.2 Kbps
Maximum bit rate : 108 Kbps
Channel(s) : 1 channel
Channel positions : Front: C
Sampling rate : 96.0 KHz / 48.0 KHz
Compression mode : Lossy
Stream size : 37.4 MiB (98%)
Encoded date : UTC 2014-08-02 11:30:17
Tagged date : UTC 2014-08-02 11:34:14


in this test FFAudioSource was 2x faster than BassAudioSource.(?)
I think MeGUI should use Channel(s)_Original value 1st.

SacredCultivator
2nd August 2014, 23:01
I've noticed an error that's been happening often now but not too sure how to resolve.

-[Information] [8/2/2014 2:53:23 PM] Started handling job
-[Information] [8/2/2014 2:53:23 PM] Preprocessing
-[Information] [8/2/2014 2:53:23 PM] Avisynth input script
--[NoImage] #LoadPlugin("D:\Keepers\Subbing\VSFilterMod.dll")
--[NoImage] LoadPlugin("C:\Program Files (x86)\meGUI\tools\dgindex\DGDecode.dll")
--[NoImage] LoadPlugin("C:\Program Files (x86)\meGUI\tools\avisynth_plugin\ColorMatrix.dll")
--[NoImage] Load_Stdcall_Plugin("C:\Program Files (x86)\meGUI\tools\yadif\yadif.dll")
--[NoImage] DGDecode_mpeg2source("D:\Music\C-ute - Momoiro Sparkling (Close-up Ver.).d2v", info=3)
--[NoImage] ColorMatrix(hints=true, interlaced=true, threads=0)
--[NoImage] #Yadif(mode=1,order=1)
--[NoImage] #Yadif(order=1)
--[NoImage] #tfm(order=1).tdecimate(rate=23.976)
--[NoImage] #tfm(order=1).tdecimate(hybrid=1)
--[NoImage] TDecimate(cycleR=1)
--[NoImage] #Crop(left,top,right,bottom)
--[NoImage] Undot()
--[NoImage] Spline36Resize(720,480)
--[NoImage] global MeGUI_darx = 16
--[NoImage] global MeGUI_dary = 9
--[NoImage] #assumefps(23.976, 29.97, 59.94)
--[NoImage] AssumeFPS(24000, 1001)
--[NoImage] TextSubMod("D:\Music\C-ute - Momoiro Sparkling (Close-up Ver.).ass")
-[Information] [8/2/2014 2:53:26 PM] resolution: 720x480
-[Information] [8/2/2014 2:53:26 PM] frame rate: 24000/1001
-[Information] [8/2/2014 2:53:26 PM] aspect ratio: 16:9 (1.778)
-[Information] [8/2/2014 2:53:26 PM] Job commandline: "C:\Program Files (x86)\meGUI\tools\x264\x264.exe" --level 4.1 --crf 18.0 --keyint 230 --b-adapt 2 --ref 5 --vbv-bufsize 78125 --vbv-maxrate 62500 --rc-lookahead 50 --me umh --subme 11 --partitions all --trellis 2 --no-fast-pskip --sar 32:27 --output "D:\Music\C-ute - Momoiro Sparkling (Close-up Ver.) (H264).264" "D:\Music\C-ute - Momoiro Sparkling (Close-up Ver.) (H264).avs"
-[Information] [8/2/2014 2:53:26 PM] Process started
-[Information] [8/2/2014 2:53:26 PM] Standard output stream
-[Information] [8/2/2014 2:53:26 PM] Standard error stream
--[Information] [8/2/2014 2:53:29 PM] avs [info]: 720x480p 32:27 @ 24000/1001 fps (cfr)
--[Information] [8/2/2014 2:53:29 PM] x264 [info]: using SAR=32/27
--[Information] [8/2/2014 2:53:29 PM] x264 [info]: using cpu capabilities: MMX2 SSE2Fast SSSE3 SSE4.2 AVX XOP FMA4 FMA3 LZCNT BMI1
--[Information] [8/2/2014 2:53:29 PM] x264 [info]: profile High, level 4.1
-[Error] [8/2/2014 2:58:27 PM] Process exits with error: 0xC0000374 (-1073740940)
-[Information] [8/2/2014 2:58:27 PM] Job completed

For the error; Process exits with error: 0xC0000374 (-1073740940)
Before I used the 64-bit of x264 and it suggested to disable it, but even so, same error.

So not too sure what's causing it. And I can still mux the video, the issue before it seems to miss out on maybe .5/1 second at the end of the video.

hello_hello
3rd August 2014, 09:13
in this test FFAudioSource was 2x faster than BassAudioSource.(?)

That's probably due to the fact the output is mono for FFAudioSource and it's easier to encode. As a quick experiment I converted a stereo MP3 to AAC (QAAC) with foobar2000. The first time it encoded at around 38x. The second time I got foobar2000 to downmix it to mono. Encoding speed was around 90x.

I think MeGUI should use Channel(s)_Original value 1st.

It seems like that'd make more sense, although it wouldn't give you a stereo output from a mono file. You just wouldn't have a channel mismatch warning in the log file.

leon
3rd August 2014, 13:23
http://www.mediafire.com/download/aj9a9wkatdl1zet/1.mp4

This is a sample of that file and I split it as you said.

hello_hello
4th August 2014, 04:40
I'm getting the same result as you now.
FFAudioSource, mono input, mono output, channel mismatch warning in the log file.
BassAudioSource, mono input, stereo output, no channel mismatch warning.

In the end, I guess the problem is MediaInfo reports the info in the obsolete MP4 flags to MeGUI but it's no big deal given it doesn't stop MeGUI re-encoding it.

It's interesting BassAudioSource outputs stereo when the source is mono. I wasn't aware it did that. I wonder if it's by design?

leon
4th August 2014, 06:37
if it's by design so there is no way you can give a mono audio to encoder and have a mono output!!!
I'm not sure the problem is MediaInfo cause the video's been ripped from DVD and it suppose to be stereo.
or maybe I'm wrong and it's been encoded this way.I think the original channels was 2 and MediaInfo reports it as 1 and it's wrong.

hello_hello
4th August 2014, 06:59
The sample you uploaded is definitely mono. There's only a single audio channel. It's not especially uncommon for DVD audio to be mono, at least when it comes to old movies which had mono audio originally. Sometimes it's "dual mono" (ie stereo) but sometimes it's just mono. Even Bluray audio can be mono (mostly old movies, once again). Much like the audio for which someone posted a MediaInfo report here (http://forum.doom9.org/showthread.php?p=1688842#post1688842).

leon
4th August 2014, 09:19
yes the sample was mono but I'm sure that it originally was stereo and it isn't old movie.
I had a question too:
my speaker has 1 left 1 right and 1 center (only bass not sound) channels.my question is that what channel settings is best for it in encoders?
and what is Channel : 2\0x3?

Kurtnoise
4th August 2014, 09:29
@Leon : your mp4 sample is from the original track or from the transcode one ?

You should upload a sample from the original track...

btw, I've a patch for MediaInfo library when there is a mismatch between the Channels Count and the Channels Position. (http://pastebin.com/5VPSnSSX)

hello_hello
4th August 2014, 11:43
my speaker has 1 left 1 right and 1 center (only bass not sound) channels.my question is that what channel settings is best for it in encoders?
and what is Channel : 2\0x3?

You have stereo speakers with a subwoofer?
My setup is the same. I don't there's any best encoder settings as such. If the audio is multi-channel I either keep the original or re-encode it as multi-channel. You never know, one day I might change my mind and decide surround sound doesn't completely suck. It gets downmixed to stereo on playback anyway (or it should be).
I guess if you're trying to keep the file size as small as possible then downmixing to stereo would be the way to go. It's all personal preference.

Channel : 2\0x3? I've no idea. Maybe it's just some oddness in respect to what MediaInfo is displaying.

tebasuna51
4th August 2014, 11:57
@Kurtnoise: seems the original.

The .aac extracted by mp4mux -> MediaInfo:
Codec : AAC LC
Channel(s) : 1 channel
Channel positions : 1/0/0

But the 1.mp4 -> MediaInfo:
Channel(s) : 2 channels
Channel(s)_Original : 1 channel
Channel positions : 1/0/0

BassAudio (and Faad) always decode mono AAC like stereo.
NeroAacDec works fine with mono AAC from Qaac, fhgaacenc and NeroAacEnc, but output stereo with this one.
FFAudioSource and LSMASHAudioSource work fine also with this one.

hello_hello
4th August 2014, 11:58
I still think MeGUI could be a little more clever when it comes to extracting audio and writing any delay to the file name. Not that it happens much, but....

If there's a positive delay for the video in an MKV, it effectively means there's a negative audio delay. MediaInfo reports a video delay in an MKV as a negative audio delay, but MeGUI doesn't take it into account.

leon
4th August 2014, 12:07
@Leon : your mp4 sample is from the original track or from the transcode one ?

You should upload a sample from the original track...

btw, I've a patch for MediaInfo library when there is a mismatch between the Channels Count and the Channels Position. (http://pastebin.com/5VPSnSSX)

Hi
please read previous posts.
of course it's from the original file I split it as hello_hello said.

leon
4th August 2014, 12:11
@hello_hello
I don't know exactly what subwoofer is if it doesn't have sound too then my speaker is stereo with a subwoofer.
is there any advantages playing a surround sound instead of a stereo sound from a stereo speaker ?

leon
4th August 2014, 12:19
@tebasuna51

if it's mono why Mediainfo shows Channel(s) : 2 channels ?
I think it WAS stereo before and now it's mono so if Mediainfo change Channel(s) and Channel(s)_Original values it would be better.(I assume here Original means what it was before)
I remember you suggested me to use FFAudioSource ,isn't it better to use BassAudioSource?

hello_hello
4th August 2014, 18:17
@hello_hello
I don't know exactly what subwoofer is if it doesn't have sound too then my speaker is stereo with a subwoofer.
is there any advantages playing a surround sound instead of a stereo sound from a stereo speaker ?

Subwoofers do make noise, but it's only the very low frequencies.
A typical stereo setup might be a subwoofer (a box which sits on the floor) which contains a sub-speaker and also the amplifiers for the stereo speakers. The audio goes to the subwoofer where the low frequencies are separated to be amplified by the subwoofer, and the rest are amplified and sent to the stereo speakers.
It's common to have a stereo setup without the separate subwoofer (the speaker amplifiers are in the speakers), but without it they usually can't reproduce low frequencies as well.

is there any advantages playing a surround sound instead of a stereo sound from a stereo speaker ?

Not really. It's either downmixed to stereo and encoded that way or it's encoded as multi-channel and downmixed to stereo on playback. There may be a volume difference, as when downmixing for encoding, the audio is often "normalised" (the volume adjusted until the peaks are at maximum). The same can be done for stereo to stereo and multichannel to multichannel, however you might find the volume of the original and encoded versions are a bit different, but that's about it.

I use my PC as my media player with ffdshow decoding the audio. It downmixes to stereo and you can adjust the volume of individual channels. I give the centre channel a bit of a boost as that's where most of the dialogue is, so that helps me keep the over-all volume down at night, and obviously if the audio is already downmixed to stereo you can't do that, but it's not something most people would normally do.

hello_hello
4th August 2014, 18:25
if it's mono why Mediainfo shows Channel(s) : 2 channels ?
I think it WAS stereo before and now it's mono so if Mediainfo change Channel(s) and Channel(s)_Original values it would be better.(I assume here Original means what it was before

Read this post (http://forum.doom9.org/showthread.php?p=1688445#post1688445) again.
The flags are obsolete and MediaInfo probably should ignore them.

A similar question was asked here (http://forum.doom9.org/showthread.php?t=170972), and thanks to this thread I knew the answer.

5.1ch input, 5.1ch output, and MediaInfo displays this for the output file:

Channel(s) : 2 channels
Channel(s)_Original : 6 channels

leon
5th August 2014, 07:50
Thank you so much (everyone involved in this discussion)
where is Mr. Zathor I posted a few bugs and feature requests in sourceforge but there were no answers.
anyone knows if MeGUI has anything to do with D3D?
I mean recently it shows me an error containing D3D.

LigH
5th August 2014, 07:58
Depending on the renderer you selected, this renderer may use Direct3D functions to "project" a video onto a 3D plane for fast rendering, possibly even with shader effects.

If another program (e.g. a game) already uses a lot of video memory, a media player may not have enough video RAM left to use this feature, so the renderer may have to fall back to a more compatible technique.

For more details, please post the error message as exactly as possible (try to press Ctrl+C while this dialog pops up, you might be able to paste it with Ctrl+V; or press Alt+PrtScr and save it as PNG).

leon
5th August 2014, 12:50
Depending on the renderer you selected, this renderer may use Direct3D functions to "project" a video onto a 3D plane for fast rendering, possibly even with shader effects.

If another program (e.g. a game) already uses a lot of video memory, a media player may not have enough video RAM left to use this feature, so the renderer may have to fall back to a more compatible technique.

For more details, please post the error message as exactly as possible (try to press Ctrl+C while this dialog pops up, you might be able to paste it with Ctrl+V; or press Alt+PrtScr and save it as PNG).

Hi
you're right Mr. LigH , MeGUI shows this error when I play a game like "Batman Arkham City" but when I play Counter Strike it shows the same error CS is very low quality game and I think a 64MB VRAM can handle it.

(press Alt+PrtScr and save it as PNG): thank you but I'm not that noob :)

http://i58.tinypic.com/whce9t.jpg

LigH
5th August 2014, 15:20
Well, OK, I thought of a completely different topic, apparently.

This kind of error probably means that your AviSynth script contains functions related to GPU accelerarion which are not reliably accessible when you are playing a game while encoding in the background. Your graphic card may have problems switching between rendering 3D game graphics and decoding or filtering video frames (so I could imagine, at least...).

We will certainly have to know your whole script and your exact graphic chipset to discover the reason.

leon
5th August 2014, 16:13
Well, OK, I thought of a completely different topic, apparently.

This kind of error probably means that your AviSynth script contains functions related to GPU accelerarion which are not reliably accessible when you are playing a game while encoding in the background. Your graphic card may have problems switching between rendering 3D game graphics and decoding or filtering video frames (so I could imagine, at least...).

We will certainly have to know your whole script and your exact graphic chipset to discover the reason.

I'm sure that the problem is not my GPU.
reason:I encoded videos before,when I was playing "Batman AC" and had no problems.
the only differences : MeGUI version,Avisynth version (was 2.5.8) and my script.

MosquitoNR(strength=13,restore=128,radius=2,threads=0)
f3kdb(range=25,sample_mode=2,dither_algo=3,grainY=90,grainC=90,dynamic_grain=true,Y=90,Cb=90,Cr=90,blur_first=true,keep_tv_range=false)
Tweak(hue=0,sat=1.10,bright=0,cont=1.0,coring=false,startHue=0,endHue=360,maxSat=150,minSat=0,interp=16,dither=true)
Removegrain(mode=2,modeU=2,modeV=2)
FFT3DGPU(sharpen=1.0,plane=4,mode=1,interlaced=false)
GradFun3()

GPU: GeForce GT 440

poisondeathray
5th August 2014, 16:36
I suspect problem is FFT3DGPU - it relies on DirectX. If you're playing games simultaneously, try changing that to the non GPU accelerated filter, FFT3DFilter

leon
7th August 2014, 17:07
I suspect problem is FFT3DGPU - it relies on DirectX. If you're playing games simultaneously, try changing that to the non GPU accelerated filter, FFT3DFilter

Thank you so much :)
after switching to FFT3Dfilter the problem gone.

leon
8th August 2014, 19:34
Hi
when I try to open this script MeGUI stops working.

Spline64Resize(960,544) # Spline64 (Sharp)
MosquitoNR(strength=16,restore=128,radius=2,threads=0)
f3kdb(range=28,sample_mode=2,dither_algo=3,grainY=90,grainC=90,dynamic_grain=true,Y=90,Cb=90,Cr=90,blur_first=true,keep_tv_range=false)
Tweak(hue=0,sat=1.10,bright=0,cont=1.01,coring=false,startHue=0,endHue=360,maxSat=150,minSat=0,interp=16,dither=true)
Removegrain(mode=2,modeU=2,modeV=2)
Dither2Pre (flt="FFT3DGPU(sigma=4, sharpen=2.0, plane=4, mode=1, interlaced=false)")
SmoothGrad (radius=16, thr=0.25, elast=2)
Dither_resize16 (960, 544)
DitherPost ()


I checked "Apply auto Preview" box but there were no problem with this script.
problem occurs when I want to load it.

I know it's filter overkill :) and maybe not correct.

another thing : when I change sigma to 2 preview window only shows half of the frames.

Zathor
9th August 2014, 11:34
I checked "Apply auto Preview" box but there were no problem with this script.
problem occurs when I want to load it.
Workaround: Disable "Options\Settings\Show video preview..."

Or try to disable "Improved AVS opening" on the same page.

leon
9th August 2014, 12:56
Hi
I opened a video with Avisynth script creator then modified and saved Avisynth profile and when I applied preview I got a frame from another video(TWD).:eek::eek::eek:

http://i58.tinypic.com/6fbb55.jpg

then I noticed that I've encoded that video before and "The Walking Dead E02.mkv.ffindex" was in the same folder as the video that I want to encode now.

leon
9th August 2014, 13:23
I was wrong "The Walking Dead E02.mkv.ffindex" wasn't there MeGUI creates it when I apply preview :eek::eek::eek::eek::eek::eek:

I have no idea but maybe it is still in RAM and MeGUI loads it again.
I'm gonna restart my computer and see if anything changes.

hello_hello
9th August 2014, 15:35
I've had the script creator do odd things after modifying or creating AVS profiles in the past. I don't think it's ever happened when I've modified an AVS profile directly after opening MeGUI, but it often does after I've indexed and encoded video. What seems to happen is when you modify an AVS template something causes MeGUI to try to open a previously encoded video as you close the AVS profile configuration. It'll sometimes pop up with an error message about not be able to open one. Sometimes I think it's offered several error messages in a row, all regarding video encoded since MeGUI was last restarted.

In my case I'm not sure I've modified a template while the preview window has been opened, and it definitely hasn't managed to open a preview of a video which was no longer on the hard drive (hence the error messages instead) but I suspect the cause is the same.

hello_hello
10th August 2014, 06:44
Hi
when I try to open this script MeGUI stops working.


Do you actually use that script??

I got it to run perfectly in the script creator preview. I managed to load it into the video section once, but it was all over after that. I couldn't preview it again. For me it seemed to be a video card memory problem. Changing FFT3DGPU to fft3dfilter (and removing mode=1) solved the problem. I could then load and preview the video fine.
I've no idea what video card you have but when it comes to my old card, FFT3DGPU slows the encoding process down a little compared to fft3dfilter anyway.

another thing : when I change sigma to 2 preview window only shows half of the frames.

I couldn't duplicate that, however....
I have found in the past that the conversion to 16 bit and back can sometimes confuse MeGUI's preview in respect to resizing. Is that what you meant? The preview is only displaying half of each frame?
If so, you might find it'd pay to close the video preview completely and re-open it every time you modify a script in respect to any 8/16 bit conversions.

Dither_resize16 (960, 544).... maybe that's why you've included it in your script. I'm fairly sure it's not actually needed.

The Dither help file says DitherNPre is pretty much a hack in order to use 8 bit filters with 16 bit video and might cause artefacts etc. To quote the help file:
"Use these functions only when there is no other way to achieve the desired filtering."

leon
10th August 2014, 10:01
@hello_hello

Thank you for your reply.
that was my 1st time I used that script :)
I use GPU version cause it's much faster for me.
I tested this script and had no problem so far :

SetMTMode(2, 0)
MosquitoNR(strength=10,restore=128,radius=2,threads=0)
f3kdb(range=22,sample_mode=2,dither_algo=3,grainY=90,grainC=90,dynamic_grain=true,Y=90,Cb=90,Cr=90,blur_first=true,keep_tv_range=false)
Tweak(hue=0,sat=1.0,bright=0,cont=1.0,coring=false,startHue=0,endHue=360,maxSat=150,minSat=0,interp=16,dither=true)
Removegrain(mode=2,modeU=2,modeV=2)
Dither2Pre(flt="FFT3DGPU(sharpen=1.0,plane=4,mode=1,interlaced=false)")
DitherPost()


so what is your suggestion instead of using Dither2pre ?
sometimes when I use Dither the noise in the video increases like a lot of dust on a picture.
when I encode my video to 10bit it's much clearer but it's also more incompatible I want to process my video in 10bit and then output it to 8bit.
it seems MT version of Avisynth is much stable and also faster.

hello_hello
10th August 2014, 13:06
so what is your suggestion instead of using Dither2pre ?

There's a 16 bit version of dfttest (http://forum.doom9.org/showthread.php?p=1386559). The consensus seems to be that it's better than fft3dfilter, but slower.

I'm maybe not the best person to ask about noise filtering, as once I decided QTGMC in progressive mode fixes everything I stopped experimenting all that often. ;)

When QTGMC is overkill, I find this (http://forum.doom9.org/showthread.php?p=1583955#post1583955) works well for noise removal and it's easy to adjust. If you run it in 16 bit mode, you need to add DitherPost() to the end.

This (http://forum.videohelp.com/threads/358043-A-comparison-of-AVIsynth-denoise-filters?p=2283228&viewfull=1#post2283228) is from a while back when I was experimenting a little. There's a zip file attached with a torture test video sample along with a few encodes using different filtering. No doubt each filter could be tweaked a little to do a better job, but I just compared the default settings for each as a starting point. Except for the adjustments to QTGMC's noise filtering.
If you have a script which does a better job than QTGMC or TemporalDegrain (http://avisynth.nl/index.php/Temporal_Degrain) I'd be happy to try it whether it's 8 bit, 16 bit, or 4.25 bit. :)


sometimes when I use Dither the noise in the video increases like a lot of dust on a picture.

Are you sure it's the dithering or could it be un-removed noise?
I can't say I've experienced that but mostly if I've used noise removal I just dither this way:
gradfun3()

it seems MT version of Avisynth is much stable and also faster.

I dunno.... a lot of it probably depends on the plugins you're using and whether it's raining.....
I couldn't seem to get MT Avisynth perfectly stable with QTGMC and that's what I mainly cared about. It'd sometimes cause x264 to crash in the middle of an encode so I went back to the single threaded version. Instead, I copy a script, use Trim() so each script encodes half the video, then I run them at the same time.

leon
10th August 2014, 14:02
Hi hello_hello :)
I tried QTGMC but it's toooo slow.
Are you sure it's the dithering or could it be un-removed noise?
yes I'm sure cause when I remove it the original video has less noise :)
I decided to use Gradfun3 again cause I got more problems with 16bit and the last one is this (AvisynthMT):

http://i57.tinypic.com/wrxm5c.jpg

Instead, I copy a script, use Trim() so each script encodes half the video, then I run them at the same time.
Can you please say me how?how to use Trim()?
is that faster?

If you have a script which does a better job than QTGMC or TemporalDegrain I'd be happy to try it whether it's 8 bit, 16 bit, or 4.25 bit.
I simply use Removegrain and FFT3DGPU (faster and also preserves more detail).

hello_hello
10th August 2014, 15:06
Hi hello_hello :)
I tried QTGMC but it's toooo slow.

If QTMC is slower than the script you originally posted I'd be a little surprised, but yes it is slow. However it also has speed presets, although the slower presets tend to work better. The default is "slower".

yes I'm sure cause when I remove it the original video has less noise :)

Very odd.

Can you please say me how?how to use Trim()?
is that faster?

If an encode isn't pushing your CPU to the limit because the filtering is a bottleneck (ie QTGMC), the encoding speed won't be any faster as such, but you can run more than one encode at a time and push your CPU to 100% that way.
Make a copy of your script. If you add this to the end of the first one (for example):
Trim(0, 54634)
And this to the second:
Trim(54635, 0)
The first script will encode the first 54634 frames and the second will encode the rest. Add both scripts to the job queue and run them together.
The AVS Cutter under MeGUI's Tools menu will give you a preview while adding trims to a script. It'd pay to start the second script at the beginning of a scene change and make sure to check "stitchable" in MeGUI's x264 encoder configuration, so when the two encodes have finished you won't have any problem appending them together with MKVMergeGUI.

I simply use Removegrain and FFT3DGPU (faster and also preserves more detail).

Preserves more detail than what? I assume you didn't look at the samples I linked to?

leon
10th August 2014, 16:14
Hi
If QTMC is slower than the script you originally posted I'd be a little surprised, but yes it is slow. However it also has speed presets, although the slower presets tend to work better. The default is "slower".
I used default settings for QTGMC and it was always slower than my scripts.

If an encode isn't pushing your CPU to the limit because the filtering is a bottleneck (ie QTGMC), the encoding speed won't be any faster as such, but you can run more than one encode at a time and push your CPU to 100% that way....
my CPU never reaches 100% when I encode so I also play a game to reach it to 100% :)
thank you so much for the info.
why to the end ? can't I add Trim() to the start of each script?

Preserves more detail than what? I assume you didn't look at the samples I linked to?
than dfttest.sorry hadn't time to look at it but I'll look at it tonight.

I want to output my video in 16bit in order to use it in X264_10bit but I get this result:

http://i62.tinypic.com/141iclf.jpg

I simply use Dither_convert_8_to_16() in the end of my script.

sneaker_ger
10th August 2014, 17:06
You don't need "Dither_convert_8_to_16()" to encode in 10 bit. Delete that line and go into settings->external program configuration->X264:enable 10 bit encoding.

leon
10th August 2014, 19:30
You don't need "Dither_convert_8_to_16()" to encode in 10 bit. Delete that line and go into settings->external program configuration->X264:enable 10 bit encoding.

Thank you but I know that.
I want to deband and denoise in 16bit and have 16bit output too(not get back to 8bit) but I always get a half or whole frame like that.

sneaker_ger
10th August 2014, 22:09
AviSynth does not natively support 16 bit, only 8 bit. It has to put those extra 8 bits somewhere - that's why the picture resolution doubles (either stacked or interleaved). MeGUI probably does not (fully) support this hack, hence the garbled preview. Is MeGUI using avs4x264mod for piping? Then using e.g. "--input-depth 16" as an additional cli parameter for x264 might produce correct output even if the preview is garbled. Make sure to use interleaved 16 bit hack (like in your screenshot), not vertically stacked.

hello_hello
11th August 2014, 06:36
leon,
As far as I'm aware there's no way to output 16 bit video using MeGUI and encode it correctly. The Avisynth output is always assumed to be 8 bit so you need to make sure any 16 bit filtering is dithered to 8 bit in the script.
You can still use the 10 bit encoder and I'm pretty sure it'll still be a bit more efficient and still less susceptible to banding etc, but you have to be outputting 8 bit in an Avisynth script to use it with MeGUI for encoding.

AviSynth does not natively support 16 bit, only 8 bit. It has to put those extra 8 bits somewhere - that's why the picture resolution doubles (either stacked or interleaved). MeGUI probably does not (fully) support this hack, hence the garbled preview. Is MeGUI using avs4x264mod for piping? Then using e.g. "--input-depth 16" as an additional cli parameter for x264 might produce correct output even if the preview is garbled.

MeGUI includes avs4x264mod in it's collection of tools/utilities, but I've no idea when it decides to use it. Maybe Zathor can enlighten us.

There's no way for the x264 encoder to automatically determine the correct bitdepth, is there?

I'd assume MeGUI's x264 encoder configuration would need an option along with the one for using the 10 bit encoder in order to output 16 bit. One which gets MeGUI to use an appropriate commandline including "--input-depth 16" etc.
I assume avs4x264mod wouldn't be able to automatically determine the correct bitdepth either?

Make sure to use interleaved 16 bit hack (like in your screenshot), not vertically stacked.

As I've done almost no 10 bit encoding, could I ask why? The Dither plugin seems to use "vertically stacked" by default. If you add nothing but "Dither_convert_8_to_16 ()" to a script and use MeGUI's preview, the 16 bit result seems to be "stacked" (video on top, green on bottom).

Does the following from the dither help file imply using the interleaved 16 bit hack is not a good idea?

"Some functions may also use an MSB/LSB decomposition as interleaved pictures, but this format should be considered deprecated and is only supported for backward compatibility."

"There are specifically modified denoising plug-ins allowing 16-bit output (I called them “mod16”), currently dfttest, MDegrain1, MDegrain2 and MDegrain3. They are included in the Dither package and can safely replace the regular versions, when up-to-date. Use the named parameter lsb=true to enable 16 bit output. Then, MSB is stacked on top of the LSB."

One last question.... aside from MeGUI's preview, how do you determine which method is being used?

Cheers.

hello_hello
11th August 2014, 07:12
why to the end ? can't I add Trim() to the start of each script?

I think..... and someone could correct me if I'm wrong....

Filtering is usually added to a script in the order you want it applied. Some filtering (noise removal, IVTC) is effectively applied to a group of frames. If you put Trim() first, it might effect the output a tad, so as a general rule you'd apply other filtering first, then use Trim() to output only the required frames.

Mind you, I sometimes use Trim() to apply different filtering to different parts of a script, so mostly I'd add the "apply to everything" filtering, followed by the trims, maybe followed by filtering which is just applied to each frame independently. Something like this (just as an example):

tfm(order=-1).tdecimate(hybrid=1)
FluxSmoothST(7,7)

Trim(0,999).crop(2, 0, -2, 0).Spline36Resize(688,384)\
++Trim(1000,1999).crop(18, 4, 0, 0).Spline36Resize(688,384)\
++Trim(2000,2999).Tweak(cont=1.1).Spline36Resize(688,384)

ColorMatrix(mode="Rec.709->Rec.601", clamp=0)

Zathor
11th August 2014, 07:25
MeGUI includes avs4x264mod in it's collection of tools/utilities, but I've no idea when it decides to use it.

When 32bit MeGUI (and therefore 32bit AviSynth) is used together with 64bit x264.