Log in

View Full Version : Mpeg4Toolkit 1.0.0.4 Merge (Multiplatform) Mpeg4 Modifier Based 08-30-2008


Pages : [1] 2 3

god2003
15th July 2006, 21:09
Hi, i just developed a Moitah's mpeg4modifier child which name is Mpeg4Toolkit.

http://dark-g.sourceforge.net/images/screen_en_4.png
The program, is hosted at sourceforge.net and of course licenced as GPL.
the program is for now in beta, but can be downloaded. (Source Code and or binary)

The features of this program are:

Multilanguage (Spanish (Spain) English (USA)).
Default language is Spanish but can be esasily changed. I'm Spanish ;-)

- Uses MediaInfo project to give more information about the video.

-Based on Mpeg4 modifier 1.3.4 (Moitah)

- option to process directories (non recursive) or files.

- option to process files (or Rename them with MFE) or directories using contextual menu in Windows Explorer.

- Option "Do not interrupt" which in the case of an error (system, or other refering video file),
will not interrupt the process. Just you can read it in the log.

- Option to edit names and synchronize with external subtitles (srt, sub, txt).
Using an external program (mine) called MFE (Multiple Filename Editor). You also can edit
names of other types of files with MFE. MFE can:
add (insert) modify word(s) and 3 more options "Remove from here", "Remove until here" and "Replace "."
, and "_" to white space"
This will avoid problems with subtitles, because of typos (or upper case problems).

http://dark-g.sourceforge.net/images/screen_en_2.png

- Option to warn (configurable) if B-frames, GMC, QPEL, or No audio (or not MP3 nor dolby AC3).

- option configurable to auto save when in manual mode. The orinal will be keeped
in a subdirectoy called "original" and the unpacked one will go to a "Unpacked" subdirectory.
Just a the automatic process do.

- Option to not process files when CODEC is DIVX (many standalone players support packed bitstream on this),
but still is configurable.

This program is intented to warn and process for use with Standalone players.

The webpage is: dark-g.sourceforge.net

You Can download from here:
http://sourceforge.net/project/showfiles.php?group_id=167569
P.D. The multiple file process from the explorer is semi automatic. Will process one file and then wait,
for user to watch results in the log, and when the user closes the window the next file will be processed.
I'm working to make it automatic.
The program needs Microsoft .NET Framework 2.0

Zero1
15th July 2006, 21:24
This looks pretty fun to play around with. I'll give it a go.

Looks great judging by the screenshots, thanks :cool:

unskinnyboy
15th July 2006, 21:35
Oh, this one is here at last. I had seen this in Sourceforge, downloaded and messed around with it, but my Spanish was pathetic so I couldn't properly understand what improvements it exactly offered over MPEG4 Modifier.

And thanks for adding the option to switch to an English interface, because as you can see from the version that I have on my hard disk as to why I was lost..:o

http://img205.imageshack.us/img205/4131/mpeg4toolkitks7.jpg

Moitah
15th July 2006, 21:51
Looks interesting, I'll check it out :).

god2003
17th July 2006, 22:51
I included an option to convert AVI 2.0 OpenDML to AVI 1.0 Compatible (max 1GB). If the file size is more than 1 gb, the file must be splitted in 1gb chunks (-1byte). In order to do this Nandub will be used (which support 2 audios). The resultant files will be saved in a subdirectory called "TMP"

Nandub is included in the 0.49 version
http://prdownloads.sourceforge.net/dark-g/mpeg4toolkit_0.49_bin.zip?download

I will include a reencode option (in the 0.50) in one pass to get the same size but, without GMC,QPEL,>2Bframes,Packed bitstream.

Selur
18th July 2006, 06:10
may be better use avimux (gui) instead if nandub for the Avi v2-> Avi v1 remuxing. (not sure if avimux can be used via commandline)

mp4 and mkv support for the tool would be nice.

Cu Selur

god2003
18th July 2006, 09:54
I'm doing test now to change from nandub to virtualdubmod. Nadub is not updated since 2001.

There are some Avi 2.0 OpenDML which the moitah's original code opens, in my test the only files that fails, are the segmented avi files. I this is true then, i could change from savecompatibleavi to saveavi (avi 2.0 NON segmented), but i don't have, use, make, avi's larger than 2 GB so i can't test this, and for now i don't have time to develop, test, or make various files to do that (At least, this week).

The reason for me to use xxxdub, is that i can do more thing with only one program, and xxxdub does what i want, and can use to reencode and maybe othe things.

Support for non avi files, is out of question, because, (as i said above) the program is intented to warn and process for use with Standalone players, which do NOT support mp4 or MKV or OGM, Once the status of Program changes to Final maybe, and only maybe i can search to convert mp4,ogm,mkv to avi.

Selur
21st July 2006, 08:28
There are standalone players that support mpeg4 asp inside a .mp4 shell ('Nero Digital' support), but I understand if you don't want to support other containers.

Cu Selur

Moitah
21st July 2006, 09:04
VirtualDub always writes an 'odml' list and a 'dmlh' chunk, MPEG4 Modifier doesn't care about that. The error is thrown only when an 'indx' or 'ix00' chunk is found, because MPEG4 Modifier doesn't know how to rewrite these indexes.

god2003
21st July 2006, 09:19
i know that, but first i want to focus in avi container and then, try others.

(Selur) For the Record, I am making test with avimux too, because it can also split files in one operation, so, with that, i can open files OpenDML any size to 2gb (or 1gb compatible mode).
And, yes as you suggested avimux supports scripts, so i guess i will use avimux for opendml, and virtualdubmod for reencoding.

I dont like using lot's of external programs, but, i think it will be better.

god2003
21st July 2006, 09:34
(Moitah) If use SavecompatibleAVI script or check Save avi in old format(1.0 max 1gb). does not write the dmlh chunk, but if the error is the 'indx' or 'ix00' chunks then i can rewrite files (anysize) that have this and use virtualdubmod to rewrite without 'indx' or 'ix00', without splitting.

SeeMoreDigital
21st July 2006, 10:01
There are standalone players that support mpeg4 asp inside a .mp4 shell ('Nero Digital' support), but I understand if you don't want to support other containers.Selur's right.... I have 4No standalone players/devices that can play MPEG-4 (Part2) streams placed within the .MP4 container.

Support would be really, really useful ;)

god2003
10th August 2006, 17:40
Updated the base code to the Moitah's Mpeg4 modifier 1.41.


AVI handling code completely rewritten, supports OpenDML and incomplete files (rebuilds the index including keyframe flags).

Ability to add/readd packed bitstream. Necessary with some standalone players (Like Sigma).
Added Option to choose if packed bitstream is needed or not (default). In this way application will add, readd, or remove packed bitstream, acording to the user preferences, and keeping automatic and autosave as always.

Packed Bitstream will be added only if Bframes are found.

MFE. now shows a preview of the renamed files before the rename procedure and allows to Cancel. To avoid catastrophic errors between "Remove From Here" and "Remove Until Here".

Nandub is now unnecessary. (removed).

Update to MediaInfo 0.7.3.1
http://dark-g.sourceforge.net/images/screenshot3.png

god2003
11th August 2006, 11:32
0.5.1 Released:

Added application update checking. If a new version is detected, the user is asked if want to go to the web page to download the new version.

vio_man
13th August 2006, 16:06
@god2003: I want to ask you if you can add AVI 2.0 (OpenDML) to AVI 1.0 container conversion like the AVIMux-GUI does? My MPEG4 standalone player doesn't like XVID+AC3 inside OpenDML container, and I have to use AVIMux-GUI, but if you add that option I would only use 1 application :)
Thanks in advance.

nix0
14th August 2006, 00:56
0.5.1 Released:

Added application update checking. If a new version is detected, the user is asked if want to go to the web page to download the new version.

wouldn't it better if this was a configurable option.
- some people may not always be online for it to check
- some people are wary about apps connecting to web without expecting it.


great application though, I like the high configurability of it.

god2003
14th August 2006, 02:04
nix0 You can disable the update check, by unchecking the option "Comprobar Actualizaciones" (I forgot to translate this. It's "Check Updates") and the application will not connect, i will add a manual check in the next version.

vio_man Yes, i can convert from avi 2.0 to avi 1.0 (using virtualdub MOD scripting within the application), but file must be less than 1 gb (avi 1.0 file limit).

vio_man
14th August 2006, 15:50
vio_man Yes, i can convert from avi 2.0 to avi 1.0 (using virtualdub MOD scripting within the application), but file must be less than 1 gb (avi 1.0 file limit).

No problem at all m8. Please add that feature when you can :) Thank you.

unskinnyboy
5th September 2006, 11:55
After I open a file in MPEG4Toolkit v0.4.8 and the file is scanned and the properties reported, if I swap the languages (Inglés <-> Español), file is scanned *again*. Is there a need to do that? Why can't the language be changed seamlessly without re-scanning?

god2003
6th September 2006, 12:05
Please upgrade to version 0.51 (actual) which will not do that.
This ocurrs because i use an option (application.restart) which launchs the original commandline (only when used from explorer context menu). The new version moves all files processed to a sub folder named "processed" ("procesados" in spanish) this subfolder replace the "unpack" subfolder (used in the previous version), and makes sure you do not process twice one file. all files in that directorie will not be repprocessed unless you pull out from that directorie.
The actual version will not do that because the file is moved and when restarts there is no file so it is not reprocessed.
I will ensure the next version, to prevent this from ocurring. So thanks for the warning.

boombastic
7th September 2006, 13:03
It would be very usefull if i would be allowed to scan an entire directory,for example to remove Packed Bitstream, but specifying another directory to put the output files.
I've got an Hard Disk of my own backup which has no empty space adnd i need to remove PB to ensure compatibility with my new Standalone player.

god2003
8th September 2006, 21:24
that can be arranged. :-)

boombastic
8th September 2006, 21:56
i can't wait to see that implemented!

kis2005
9th September 2006, 02:41
What is the link for version .051? I can only locate .49.

unskinnyboy
9th September 2006, 15:55
What is the link for version .051? I can only locate .49.
http://prdownloads.sourceforge.net/dark-g/mpeg4toolkit_0.51_bin.zip?download

god2003 forgot to update the first post, I guess.

god2003
10th September 2006, 11:46
unskinnyboy: You're right i edited the firt post and changed to the main dowload so you can choose the download you want bin src of the actual an last version.

god2003
24th September 2006, 16:04
# Updated the base code to 1.4.2 moitah's mpeg4 modifier.

# Added support to add & remove packed bitstream (added by moitah).Through configuration will work Automatically. You just have to choose if you want to add or remove (by default) packed bitstream.

# The processed files (all) have or not Packed Bitstream, will be moved (or saved) in a subdirectory named "Processed", and the ogiginal files, will be keeped in a subfolder named "Original".

# Added an option to choose a alternative destination (in manual or automatic mode, if autosave is active). The "Processed" Subdirectory will be created.

# The processed files, wich are inside de "Processed folder, cannot be reanalyzed (to avoid reprocessing one file twice). If it's required to reanalyse a file, the file must pull out the file from the "Processed" directory.

# Even if the option alternative destination is active, the original file will be moved to a subfolder ("Original") inside the actual folder. Those files that are correct (no need to (re)add packed bitsytream)will be moved to the destination folder (subfolder "Processed"). Only the Original of the processed (saved) files will be keeped in the original folder.

# General update of the programs to guidelines of Windows Vista. The Programs are being modified to start with administrator rights, taht will launch a warning from Windows Vista.
On Windows Vista a normal user(default) cannot write,modify on root drives i.e. C:\...Z:\, and neither the folder "Program Files" (and subfolders), and also in those folder with restricted rights (most of folder from Windows XP have this problem because of security rights are not defined).
For that reason, and in spite of the warning (inevitable), I choosed to give to my user the right to write their files were they want.

# Added Option to save the information of the processed files. (Will be saved on a file "Processed.mpeg4toolkit") in the original folder. Info will be reopened, when procesing another file of the same folder or manually opening the file (to watch)

# The Auto search for updates is deactivated by default.

# Added option to search manually for updates. (For those who have auto search deactivated)

# Due to the "Virtualization" of the registry in Windows Vista i changed the saving of configuration from HKey_Local_Machine to HKey_Current_User, so when updating to the 0.5.2 version, configuration will be by default (please reconfigure).

# Application is now resizable, and remembers the size. Positin will be centered at start.

# Now there is an installer. (If you want it)

Download 0.5.2 Installer (http://prdownloads.sourceforge.net/dark-g/setup0.52.exe?download)

http://dark-g.sourceforge.net/images/ScreenShotvista.jpg

pancserzso
26th September 2006, 18:06
It would be a great program if I could switch it to English! The interface doesn't mind what language did I select!

god2003
26th September 2006, 20:27
Update to Version 0.5.3

A problem in the user data management provoked jerky playing on Windows Vista (maybe other O.S.) (Thanks to Manuel) Please update to 0.5.3.
I Will see that problem tomorrow(language).

pancserzso
26th September 2006, 20:42
If that helps, I have set my default regional settings to non-english.

god2003
26th September 2006, 20:45
0.54 Released

Multilanguage it's working again.

drob
2nd October 2006, 15:08
god2003, just discovered your program and it saves lots of work, thanks for that!

Regarding bframes - could you add an option of "my player supports up to 2 consecutive bframes", allot of mediatek players support up to 2. Also could you display the number of consecutive bframes as an absolute number and not just percentage - that is "2 consecutive be frames".

god2003
3rd October 2006, 09:46
It is already done, and a few bugs, implementations more. I expect to release the v0.5.5 in the next days.

cya.

pancserzso
3rd October 2006, 12:24
0.54 Released

Multilanguage it's working again.

Not for me... Always remains spanish!

drob
3rd October 2006, 12:29
It is already done, and a few bugs, implementations more. I expect to release the v0.5.5 in the next days.

cya.

Great -Thanks :D

god2003
3rd October 2006, 22:37
pancserzso Seems like the installer i used does not create the needed structure (look below). Please use the binary. I Removed the installer.



I tested in my Windows XP (Spanish, Spain) and in my Windows Vista (English, USA) and works.

Be sure you have v 0.5.4 (loook at title bar on the form at start), and, in the location of the executable, must be a subdirectory named "en" with two (2) files inside "MPEG4Toolkit.resources.dll" and "MFE2.resources.dll"
if that files are not there application cannot be multilanguage because in that files are the english translation of the projects.

The files MUST be in that subdirectory and that directory must be in the same location of the main executables.

drob
6th October 2006, 14:40
Heres another idea, when scanning a whole directory, not only unpack bitstream, but also create a 3rd directory of files not matching your player specs, and calling it might not play, re encode or something like that.

god2003
7th October 2006, 15:14
0.5.5 released.

# Drag & Drop, now supports multiple files at once, and the drop zone, has been expanded to the whole form, instead of the textbox of the files.

# Corrected he problem with the QPEL. Action/Response Inverted. Now warns correctly.

# Now, shows the information about Consecutive B-Frames, GMC and QPEL always, and the warning acordly configuration.

# Added, Absolute number of cosecutive B-Frames.

# Added. New configuration option: "My standalone MPEG4 player, supports up to 2 consecutive B-Frames.

drob
9th October 2006, 17:57
god2003, all seems to work fine, just i am not prompted to select deferent directory for saving, even that i choose that option, is there a possibility to define default paths for the saved files?

god2003
10th October 2006, 14:22
When you activate the option "let me choose an alternative destination" a browse for folder form will be prompted, when you open the file. That is: You click open file or directory choose the file and after that you must choose the destination folder.

The destination is choosed before the opening. I forgot to translate the message. The form is like this:

http://dark-g.sourceforge.net/images/altersave.JPG

Translation. "Save the files in a diferent directory. If you Cancel this, the operation will be cancelled."

You must choose the origin and dest before the processing if you do not do both operation is cancelled and nothing is processed.

drob
11th October 2006, 14:20
Thanks i got it working now, only it seems just the processed file will be saved in the custom directory, the original folder remains in its present location.

Mtz
11th October 2006, 15:20
2 options from the program are confusing the user: the first and the last:
If I check that my player support packed bistream, why at the last option I have ony "not support" or "need"?

I think all players (I have many MTK players) have problems with avi and mp3 if the Interleave is not "1". Can you add the option to detect if the interleave is not 1 and if not to solve the problem? Actually I solve this problem only if I'm loading the avi in virtualdubmod and make a save as from it.

enjoy,
Mtz

god2003
12th October 2006, 10:56
drob As i Said in the changelog on v0.5.2 Even if the option alternative destination is active, the original file will be moved to a subfolder ("Original") inside the actual folder. Those files that are correct (no need to (re)add packed bitstream)will be moved to the destination folder (subfolder "Processed"). Only the Original of the processed (saved) files will be keeped in the original folder.

Mtz The first option is only for DIVX codec, because there are many standalone player supporting packed bitstream on Avi files with DIVX codec.

The Last option, in the default mode "Don't Support packed bitstream", is meant for Xvid Codec, but when the "Need packed bitstream" is on, then overrides the first option and add packed bitstream to all avi files DIVX and XVID. Because there are some chips (Some Sigma i think. Maybe others) that need Packed Bitstream when B-Frames are present. So in that cases i add PB to all codecs (if Bframes are present)

I will put a little explanation in the tooltip, to avoid confusing.

I have a standalone player with MTK, and with one of your firmwares (i f you are who i think you are). So i can make some testing, but a have a limited time, and i will need quite time.

About the interleaving problem i don't know, i must reserch (or I+D) the detection. I Can control VirtualDub (scripting) so the problem can be easily solved, but first i need to detect them.
Or I can add an option to process (with virtualdub mod) in batch mode, to make easy that (that is faster for develop) or ... I+D.

I hope to make myself clear, with this. As I said in the first Post, i'm spanish, so i think in spanish an then write that in english, so the result may not be clear for you, but i don't know your expressions, so that's the better i can do.

pancserzso
14th October 2006, 11:56
Thanks, now the language works fine!

Mtz, which settings should we use for Pio575? AFAIK it supports everything, except Packed Bitstream, right?

drob
14th October 2006, 12:19
I believe this is for all Mediatek chipsets, up to 2 Bframes, OK with Qpel, no packed bitstream, no GMC, OK for Divx packed bitstream.

BTW god2003, there is a misspell in the bitstream, you missed the "st".

drob
17th October 2006, 15:31
god2003, can you make shell integration an option, it seems even if i delete the reg keys, it recreate itself.

god2003
17th October 2006, 22:22
yes, i can make it optional. For now the application recreates the registry keys, when starts, so don't try to delete, because you can't. I add that in the 0.5.6.

seewen
18th October 2006, 09:43
I used this program with Windows XP Sp2, and it worked perfectly.

But since a few hours I installed Win Xp x64, and since then "mpeg4toolkit" doesn't work anymore.

I can open MPEG4toolkit without any problem, but when I try to open an *.avi file (divx or xvid), an error popup at the end of the file loading, and mpeg4toolkit crash.
(MPEG4Modifier 1.42 can stil open/depack avi files. no change since x64)


Exception from HRESULT: 0x8007000B

See the end of this message for details on invoking
just-in-time (JIT) debugging instead of this dialog box.

************** Exception Text **************
System.BadImageFormatException: Tentative de chargement d'un programme de format incorrect. (Exception from HRESULT: 0x8007000B)
at MediaInfoLib.MediaInfo.MediaInfo_New()
at MediaInfoLib.MediaInfo..ctor()
at VideoModifier.frmMPEG4Modifier.Loadmediainfo(String path)
at VideoModifier.frmMPEG4Modifier.openWorker_RunWorkerCompleted(Object sender, RunWorkerCompletedEventArgs e)


************** Loaded Assemblies **************
mscorlib
Assembly Version: 2.0.0.0
Win32 Version: 2.0.50727.42 (RTM.050727-4200)
CodeBase: file:///C:/WINDOWS/Microsoft.NET/Framework64/v2.0.50727/mscorlib.dll
----------------------------------------
MPEG4Toolkit
Assembly Version: 0.5.5.0
Win32 Version: 0.5.5.0
CodeBase: file:///C:/Documents%20and%20Settings/Lenn/Desktop/mpeg4toolkit_055/MPEG4Toolkit.exe
----------------------------------------
System.Windows.Forms
Assembly Version: 2.0.0.0
Win32 Version: 2.0.50727.42 (RTM.050727-4200)
CodeBase: file:///C:/WINDOWS/assembly/GAC_MSIL/System.Windows.Forms/2.0.0.0__b77a5c561934e089/System.Windows.Forms.dll
----------------------------------------
System
Assembly Version: 2.0.0.0
Win32 Version: 2.0.50727.42 (RTM.050727-4200)
CodeBase: file:///C:/WINDOWS/assembly/GAC_MSIL/System/2.0.0.0__b77a5c561934e089/System.dll
----------------------------------------
System.Drawing
Assembly Version: 2.0.0.0
Win32 Version: 2.0.50727.42 (RTM.050727-4200)
CodeBase: file:///C:/WINDOWS/assembly/GAC_MSIL/System.Drawing/2.0.0.0__b03f5f7f11d50a3a/System.Drawing.dll
----------------------------------------
MPEG4Toolkit.resources
Assembly Version: 0.5.5.0
Win32 Version: 0.5.5.0
CodeBase: file:///C:/Documents%20and%20Settings/Lenn/Desktop/mpeg4toolkit_055/en/MPEG4Toolkit.resources.DLL
----------------------------------------

************** JIT Debugging **************
To enable just-in-time (JIT) debugging, the .config file for this
application or computer (machine.config) must have the
jitDebugging value set in the system.windows.forms section.
The application must also be compiled with debugging
enabled.

For example:

<configuration>
<system.windows.forms jitDebugging="true" />
</configuration>

When JIT debugging is enabled, any unhandled exception
will be sent to the JIT debugger registered on the computer
rather than be handled by this dialog box.

god2003
18th October 2006, 10:05
seewen Mpeg4Toolkit works for X64 (due to .net framework use), but the mediainfo (http://mediainfo.sourceforge.net) dll is a 32 bits dll and cannot work on 64 bits. The author doesn't compile the dll for x64. And sorry i have a x86 CPU (P4) and will not upgrade to a x64 until 2007 at least.

The only i can do is to add code o detect x64 and disable mediainfo for x64 (you will loose information about file, but the main application will work).

foxyshadis
18th October 2006, 10:48
Perhaps the command-line mediainfo could provide a partial substitute in this case?