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 > Programming and Hacking > Development

Reply
 
Thread Tools Search this Thread Display Modes
Old 20th March 2011, 21:50   #221  |  Link
mariush
Registered User
 
Join Date: Dec 2008
Posts: 589
No, in my case the temp wav generated before sox was 3.78 GB (4,069,374,056 bytes) . lamexp crashed it when triggering sox, but when i did it manually it worked fine. I didn't use the folders in the parameters though, so the whole command line was much smaller (could it be the case?)

Anyway, it's risky to use by default the C: drive.. i usually have a few GB only - now I had 7 GB... if someone rips a dts from a movie, you're making a 4 GB wav, then a 1.25 GB with sox ...

People will start to buy 40-80GB SSDs just for the OS and the situation probably won't improve in the future

ps. The length of the path to the temp files in my case is 170. You're getting close to the 256 limit on Windows - some programs have issues with that.
mariush is offline   Reply With Quote
Old 20th March 2011, 22:13   #222  |  Link
LoRd_MuldeR
Software Developer
 
LoRd_MuldeR's Avatar
 
Join Date: Jun 2005
Location: Last House on Slunk Street
Posts: 13,248
Quote:
Originally Posted by mariush View Post
No, in my case the temp wav generated before sox was 3.78 GB (4,069,374,056 bytes) . lamexp crashed it when triggering sox, but when i did it manually it worked fine. I didn't use the folders in the parameters though, so the whole command line was much smaller (could it be the case?)
Strange. It shouldn't make any difference whether LameXP calls SoX or you do it manually. The length of the command-line shouldn't be an issue.

Quote:
Originally Posted by mariush View Post
Anyway, it's risky to use by default the C: drive.. i usually have a few GB only - now I had 7 GB... if someone rips a dts from a movie, you're making a 4 GB wav, then a 1.25 GB with sox ...
That's why a warning will pop up when the disk space runs low. Also the intermediate files are stored in the secondary (user-defined) temp folder...

Quote:
Originally Posted by mariush View Post
ps. The length of the path to the temp files in my case is 170. You're getting close to the 256 limit on Windows - some programs have issues with that.
As far as I know, there is no way around the MAX_PATH limit on Windows. The limit is 260 tough ^^
__________________
Go to https://standforukraine.com/ to find legitimate Ukrainian Charities 🇺🇦✊
LoRd_MuldeR is offline   Reply With Quote
Old 20th March 2011, 22:25   #223  |  Link
mariush
Registered User
 
Join Date: Dec 2008
Posts: 589
For people that just start the application and just upgrade when the message pops up, well, they don't know such feature has been added without reading about it somewhere. I don't know how many people check each menu with every upgrade. Maybe a small window below the "new update available" or when the new version starts for the first time describing the significant changes would be useful?

Regarding file names. The actual limit is 256, because the MAX_PATH is 260 and you're using 3 for "X:\" and the fourth for the terminating NULL character.

Anyway, this is an API limit, and it's no longer the case for the Unicode versions of most functions - see this article: http://msdn.microsoft.com/en-us/library/Aa365247 - you can use up to about 32767 *bytes* (utf8 characters can take 1 to 3-5 bytes, normally maximum 3, more utf8 accepts and is valid according to standard, but for simplicity you're not supposed to use them)

The problem is you can't reliably know those command line tools are compiled and know how to read files with such long file names, without checking each one and building your own version, I'd say it's at least unreliable.
mariush is offline   Reply With Quote
Old 21st March 2011, 01:05   #224  |  Link
LoRd_MuldeR
Software Developer
 
LoRd_MuldeR's Avatar
 
Join Date: Jun 2005
Location: Last House on Slunk Street
Posts: 13,248
Quote:
Originally Posted by mariush View Post
For people that just start the application and just upgrade when the message pops up, well, they don't know such feature has been added without reading about it somewhere. I don't know how many people check each menu with every upgrade. Maybe a small window below the "new update available" or when the new version starts for the first time describing the significant changes would be useful?
Well, there is the Changelog, at which anybody can look. I even added a shortcut to the Changelog to the Help menu recently.

Quote:
Originally Posted by mariush View Post
Regarding file names. The actual limit is 256, because the MAX_PATH is 260 and you're using 3 for "X:\" and the fourth for the terminating NULL character.
I would consider the drive letter as a part of a fully-qualified path, but that's hairsplitting again

Quote:
Originally Posted by mariush View Post
Anyway, this is an API limit, and it's no longer the case for the Unicode versions of most functions - see this article: http://msdn.microsoft.com/en-us/library/Aa365247 - you can use up to about 32767 *bytes* (utf8 characters can take 1 to 3-5 bytes, normally maximum 3, more utf8 accepts and is valid according to standard, but for simplicity you're not supposed to use them)

The problem is you can't reliably know those command line tools are compiled and know how to read files with such long file names, without checking each one and building your own version, I'd say it's at least unreliable.
Even though the Win32 API support paths up to 32767 characters now, when the proper functions are used and when a special prefix is added to the path, it seems impossible to create paths longer than 260 characters in total on a physical disk. I don't know if that is a limitation of the filesystem, a limitation of the Windows Explorer or if they simply prevent longer file names for backward-compatibility reasons.

Anyway, on Windows 7 the length of the path to the default %TEMP% folder is 28 characters + length of the user account name (35 in total here). That's enough room for LameXP to create its temporary files.
__________________
Go to https://standforukraine.com/ to find legitimate Ukrainian Charities 🇺🇦✊

Last edited by LoRd_MuldeR; 21st March 2011 at 01:18.
LoRd_MuldeR is offline   Reply With Quote
Old 21st March 2011, 02:22   #225  |  Link
mariush
Registered User
 
Join Date: Dec 2008
Posts: 589
It's quite possible to create and work with such files, it's just that you need to use the unicode functions instead of the default ANSI ones. Oh, and I think you have to be sure each segment of the path is below 260 ansi characters.

Here's a code I wrote right now in a few minutes... it's visual basic 6 but uses the windows api:

Code:
Private Type SECURITY_ATTRIBUTES
    nLength As Long
    lpSecurityDescriptor As Long
    bInheritHandle As Long
End Type

Private Const FILE_SHARE_READ = &H1
Private Const FILE_SHARE_WRITE = &H2

Private Declare Function CreateDirectory Lib "kernel32" Alias "CreateDirectoryW" (ByVal lpPathName As String, lpSecurityAttributes As SECURITY_ATTRIBUTES) As Long
Private Declare Function CreateFile Lib "kernel32" Alias "CreateFileW" (ByVal lpFileName As String, ByVal dwDesiredAccess As Long, ByVal dwShareMode As Long, ByVal lpSecurityAttributes As Long, ByVal dwCreationDisposition As Long, ByVal dwFlagsAndAttributes As Long, ByVal hTemplateFile As Long) As Long
Private Declare Function CloseHandle Lib "kernel32" (ByVal hObject As Long) As Long

Private Sub Form_Load()
Dim ret As Long
Dim s As String
Dim sec As SECURITY_ATTRIBUTES

Const folname As String = "This is a folder with a very long name because I like very long names and nobody can stop me from making them, they are so cool and magical"
Const filname As String = "This is a file with a very long name because I like very long names and nobody can stop me from making them, they are so cool and magical"

ret = CreateDirectory(s, sec)
MsgBox "Created folder " & folname & ", got reply " & CStr(ret) & " (0 means failure)"
s = StrConv("\\?\C:\" & folname & "\" & filname, vbUnicode)
ret = CreateFile(s, GENERIC_WRITE, FILE_SHARE_READ Or FILE_SHARE_WRITE, ByVal 0&, CREATE_ALWAYS, 0, 0&)
MsgBox "Created file ::" & folname & "::, in the previously created folder, got handle " & CStr(ret)
ret = CloseHandle(ret)
end sub
The result is this:



Total length 281 characters.

Funny though, stuff like echo "1" >"This..." doesn't work, as it won't find the file... same with copy con "this..."

Code:
C:\This is a folder with a very long name because I like very long names and nob
ody can stop me from making them, they are so cool and magical>copy CON "This is
 a file with a very long name because I like very long names and nobody can stop
 me from making them, they are so cool and magical"
The file name is too long.
        0 file(s) copied.
ps. the vb6 "to unicode" functions converts it to utf-16 (two bytes per character) so that may be where you went wrong before if you tried it"

Last edited by mariush; 21st March 2011 at 02:26.
mariush is offline   Reply With Quote
Old 21st March 2011, 13:43   #226  |  Link
LeonLanford
Registered User
 
Join Date: Feb 2009
Posts: 20
@mulder
as mariush already said, it's wav to mp3/vorbis bug (haven't tested with other).
my wav is only 3gb, less than mariush's.
I have 20gb free space so I don't think space is the problem and I'm using the latest lamexp #326.

I think there's also no problem with long filenames, I have longer filenames before and it worked. Like I said before, I tried to convert to wav first, after that convert it to mp3/vorbis but still failed.

Code:
"C:/Documents and Settings/Leon Lanford/Local Settings/Application Data/Temp/0903bfae0f0d4faa8bdb392e36f54688.tmp/tool_oggenc2_sse2.exe" -b 56 -o "C:\Documents and Settings\Leon Lanford\Desktop\[Keroro].Movie.03.[CC0F1970]_track2_jpn.ogg" "C:\Documents and Settings\Leon Lanford\Desktop\[Keroro].Movie.03.[CC0F1970]_track2_jpn.wav"

Skipping chunk of type "JUNK", length 28
Opening with wav module: WAV file reader
Mode initialisation failed: invalid parameters for bitrate

Exited with code: 0x0001
I think something is wrong with the wav reader? I can convert the wav with foobar2000 conversion tool.
Sorry I cannot provide sample because my upload speed is really slow, maybe you can ask mariush.
LeonLanford is offline   Reply With Quote
Old 21st March 2011, 13:58   #227  |  Link
LoRd_MuldeR
Software Developer
 
LoRd_MuldeR's Avatar
 
Join Date: Jun 2005
Location: Last House on Slunk Street
Posts: 13,248
Hmm, I would understand if SoX failed to process Wave files with a size of 4+ GB, as normal Wave files can't exceed a size of 4 GB (a limitation to the underlying RIFF format).

So AC3Filter/Valibdec will output "RF64" Wave files, if the final size actually exceeds 4 GB. Wouldn't be a surprise of SoX failed to process such RF64 files, but with ~3GB files it should work.

I will try to re-produce the issue with a bigger Wave file. But if that turns out to be a limitation in SoX, there's not much I can do about it...
__________________
Go to https://standforukraine.com/ to find legitimate Ukrainian Charities 🇺🇦✊
LoRd_MuldeR is offline   Reply With Quote
Old 21st March 2011, 15:17   #228  |  Link
LoRd_MuldeR
Software Developer
 
LoRd_MuldeR's Avatar
 
Join Date: Jun 2005
Location: Last House on Slunk Street
Posts: 13,248
Okay, I just converted an 6ch AC3 file, which I had extracted from one of my DVD's, to the MP3 format with LameXP.

Everything went through just fine:
http://pastie.org/private/r3u9ngl7p875mm5p1j6pyg


The size of the source AC3 file is 316 MB, the intermediate Wave file was like ~3 GB in size, the downmixed version was still about 1 GB in size.

As you can see, the decoding (Valibdec), the downmixing (SoX) and the encoding (LAME) all completed successfully...

BTW: I just fixed a minor bug in LameXP's code for parsing the Valibdec output. This bug caused the log to be flooded with messages like this:
[ 0.5%] Frs: 3560 Err: 0 Time: 0:01.203 Level: 0 dB FPS: 2959 CPU: 17.9%
__________________
Go to https://standforukraine.com/ to find legitimate Ukrainian Charities 🇺🇦✊

Last edited by LoRd_MuldeR; 21st March 2011 at 15:30.
LoRd_MuldeR is offline   Reply With Quote
Old 21st March 2011, 23:53   #229  |  Link
mariush
Registered User
 
Join Date: Dec 2008
Posts: 589
What's with the

Code:
Duration : 01:34:07.97 = 271102464 samples ~ 423598 CDDA sectors
File Size : 42949672.00G
Bit Rate : 42949672.442949672.00G
in the pastie log? 32bit signed/unsigned issue? I didn't get that with the almost 4GB wav made from the dts file.
mariush is offline   Reply With Quote
Old 22nd March 2011, 00:39   #230  |  Link
LoRd_MuldeR
Software Developer
 
LoRd_MuldeR's Avatar
 
Join Date: Jun 2005
Location: Last House on Slunk Street
Posts: 13,248
Quote:
Originally Posted by mariush View Post
What's with the

Code:
Duration : 01:34:07.97 = 271102464 samples ~ 423598 CDDA sectors
File Size : 42949672.00G
Bit Rate : 42949672.442949672.00G
in the pastie log? 32bit signed/unsigned issue? I didn't get that with the almost 4GB wav made from the dts file.
Not sure. I will try with a DTS file later or tomorrow.

Meanwhile:
First attempt for cover artwork support.
__________________
Go to https://standforukraine.com/ to find legitimate Ukrainian Charities 🇺🇦✊

Last edited by LoRd_MuldeR; 25th March 2011 at 12:55.
LoRd_MuldeR is offline   Reply With Quote
Old 4th April 2011, 22:12   #231  |  Link
LoRd_MuldeR
Software Developer
 
LoRd_MuldeR's Avatar
 
Join Date: Jun 2005
Location: Last House on Slunk Street
Posts: 13,248
LameXP v4.01 Final
https://github.com/lordmulder/LameXP/downloads

Quote:
Changes between v4.00 and v4.01:
* Added an option to manually specify the number of parallel instances
* Added an option to select a user-defined TEMP directory
* Added an option to shutdown the computer as soon as all files are completed
* Added an option to add directories recursively
* Added support for embedding cover artwork (currently works with LAME, FLAC and Nero AAC only)
* Updated Qt runtime libraries to v4.7.2
* Updated LAME encoder to v3.99.0.16 (2011-04-04), compiled with ICL 12.0.2
* Updated Vorbis encoder to v2.87 using aoTuV Beta-6.02 (2011-02-28), compiled with ICL 11.1 and MSVC 9.0
* Updated TTA decoder multiplatform library to v2.1 (2011-03-11), compiled with MSVC 9.0
* Updated SoX to v14.3.2 (2010-02-27), compiled with ICL 12.0.2
* Updated MediaInfo to v0.7.43 (2011-03-20), compiled with ICL 12.0.2 and MSVC 9.0
* Updated language files (big thank-you to all contributors !!!)
* Fixed a problem with the LAME encoder that could cause glitches (VBR mode), reported by Wolfgang Waldeck
* Fixed a problem with the LAME encoder that could cause very slow encoding speed
* Fixed a bug that caused AAC encoding to fail in CBR mode (the "-2pass" parameter was set wrongly)
* A warning message will be emitted, if diskspace drops below a critical limit while processing
__________________
Go to https://standforukraine.com/ to find legitimate Ukrainian Charities 🇺🇦✊
LoRd_MuldeR is offline   Reply With Quote
Old 8th April 2011, 22:21   #232  |  Link
LoRd_MuldeR
Software Developer
 
LoRd_MuldeR's Avatar
 
Join Date: Jun 2005
Location: Last House on Slunk Street
Posts: 13,248
New experimental snapshot available:

This is the first build compiled with Visual Studio 2010, so please report any issues you may encounter.
Due to a limitation of Visual Studio 2010, the minimum supported operating system is Windows XP with Service Pack 2 from now on.
Furthermore we have a new translation: Korean!
__________________
Go to https://standforukraine.com/ to find legitimate Ukrainian Charities 🇺🇦✊

Last edited by LoRd_MuldeR; 11th April 2011 at 14:40.
LoRd_MuldeR is offline   Reply With Quote
Old 11th April 2011, 14:42   #233  |  Link
LoRd_MuldeR
Software Developer
 
LoRd_MuldeR's Avatar
 
Join Date: Jun 2005
Location: Last House on Slunk Street
Posts: 13,248
I overhauled the initialization routine, so the startup should be slightly faster now, as fewer files need to be extracted.

(BTW: Is anybody else experiencing that SourceForge suddenly takes extremely long, like 5 hours or so, to make new downloads available?)
__________________
Go to https://standforukraine.com/ to find legitimate Ukrainian Charities 🇺🇦✊

Last edited by LoRd_MuldeR; 14th April 2011 at 11:42.
LoRd_MuldeR is offline   Reply With Quote
Old 11th April 2011, 15:34   #234  |  Link
lethedoom
Registered User
 
lethedoom's Avatar
 
Join Date: Dec 2010
Location: california
Posts: 23
re Source Forge

"(BTW: Is anybody else experiencing that SourceForge suddenly takes extremely long, like 5 hours or so, to make new downloads available?)"

For what it is worth I have been offered and downloaded updates using LameXP 'Check For Updates' before they appeared on the beta folder list @ http://sourceforge.net/projects/lame...%20%28BETA%29/
lethedoom is offline   Reply With Quote
Old 11th April 2011, 15:42   #235  |  Link
LoRd_MuldeR
Software Developer
 
LoRd_MuldeR's Avatar
 
Join Date: Jun 2005
Location: Last House on Slunk Street
Posts: 13,248
Quote:
Originally Posted by lethedoom View Post
For what it is worth I have been offered and downloaded updates using LameXP 'Check For Updates' before they appeared on the beta folder list @ http://sourceforge.net/projects/lame...%20%28BETA%29/
That's not a surprise. The auto-update server is completely unrelated to the SourceForge file release system.

And I usually push updates to the auto-update server first, before uploading them to other mirrors. However no updates have been pushed to auto-update since the v4.01 final release.

So all builds prior to #418 should still update #418 (aka "v4.01 final") and later snapshot builds should not update at all, at the time being...
__________________
Go to https://standforukraine.com/ to find legitimate Ukrainian Charities 🇺🇦✊

Last edited by LoRd_MuldeR; 14th April 2011 at 11:42.
LoRd_MuldeR is offline   Reply With Quote
Old 13th April 2011, 10:54   #236  |  Link
digitaltoast
Registered User
 
Join Date: Mar 2005
Posts: 34
I'm liking the new Lame build 4.01 especially now the "hanging when selecting output folder is fixed" but talking of ogg...

Quote:
Originally Posted by Przemek_Sperling View Post
BTW, can anyone explain me why newer Ogg encoders produce significially larger files than the older ones?
I've noticed that when using quality based vbr, the output size of 0, -1 and -2 quality is always identical.

When using abr bitrate, at very low bitrates (32k) speech sounds like it has a tiny but noticeable "echo" to it. Has anyone else heard this? Is there a setting to get round this?

Apart from that - great!
digitaltoast is offline   Reply With Quote
Old 13th April 2011, 20:12   #237  |  Link
LoRd_MuldeR
Software Developer
 
LoRd_MuldeR's Avatar
 
Join Date: Jun 2005
Location: Last House on Slunk Street
Posts: 13,248
Quote:
Originally Posted by digitaltoast View Post
I'm liking the new Lame build 4.01 especially now the "hanging when selecting output folder is fixed"
I did not fix anything with that regard. If there was any improvement, then it is because I updated the Qt framework to v4.7.2

Quote:
Originally Posted by digitaltoast View Post
but talking of ogg...

I've noticed that when using quality based vbr, the output size of 0, -1 and -2 quality is always identical.

When using abr bitrate, at very low bitrates (32k) speech sounds like it has a tiny but noticeable "echo" to it. Has anyone else heard this? Is there a setting to get round this?

Apart from that - great!
I don't do a lot of ultra-low bitrate encodes, but maybe what your hear is a side-effect of the the latest aoTuV Vorbis tweaks?

(BTW: Maybe you want to try a Speech-Codec, like Speex, for ultra-low bitrate speech encodes)
__________________
Go to https://standforukraine.com/ to find legitimate Ukrainian Charities 🇺🇦✊

Last edited by LoRd_MuldeR; 14th April 2011 at 01:02.
LoRd_MuldeR is offline   Reply With Quote
Old 16th April 2011, 21:34   #238  |  Link
LoRd_MuldeR
Software Developer
 
LoRd_MuldeR's Avatar
 
Join Date: Jun 2005
Location: Last House on Slunk Street
Posts: 13,248
New experimental snapshot available:
LAME v3.99 has finally gone Beta. Please see the LAME Changelog for details
__________________
Go to https://standforukraine.com/ to find legitimate Ukrainian Charities 🇺🇦✊

Last edited by LoRd_MuldeR; 19th April 2011 at 22:07.
LoRd_MuldeR is offline   Reply With Quote
Old 19th April 2011, 22:06   #239  |  Link
LoRd_MuldeR
Software Developer
 
LoRd_MuldeR's Avatar
 
Join Date: Jun 2005
Location: Last House on Slunk Street
Posts: 13,248
New experimental snapshot available:
http://sourceforge.net/projects/lame...A)/2011-04-19/

Updated to Qt SDK v1.1 (Qt v4.7.3).
__________________
Go to https://standforukraine.com/ to find legitimate Ukrainian Charities 🇺🇦✊
LoRd_MuldeR is offline   Reply With Quote
Old 20th April 2011, 19:25   #240  |  Link
codeit
Registered User
 
Join Date: Mar 2011
Posts: 6
I just Updated to the newest Version and everytime i encode with CBR/320kbit/s the Final File is encoded @ 160kbit/s

I tried it a few times but everytime i encode it the 160kbit/s File is the Result


Is this a Bug?



Greetings!
codeit is offline   Reply With Quote
Reply

Tags
aac, aotuv, flac, lame, lamexp, mp3, mp4, ogg, oggenc, opus, vorbis

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 23:32.


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