View Full Version : DGMPGDec 1.4.9 Final
Pages :
[
1]
2
3
4
5
6
7
8
9
Guest
8th October 2006, 18:29
http://neuron2.net/dgmpgdec/dgmpgdec149.zip
1. Made AC3 parsing more robust by making audio data less likely to erroneously emulate a sync byte. Rare AC3 streams that couldn't be parsed are now handled correctly.
2. Changed the running time line at the bottom of the Parse D2V output so that it now includes fractions of a second.
3. Added additional MPEG syntax error checking to improve the robustness and error recovery. This fixes one reported stream that showed excessive macroblocking on one type of syntax error due to corruption.
4. Fixed an error in random frame access in the presence of RFF flags.
5. Added the PCR for transport streams and the SCR for program streams to the 'Log Timestamps' dump.
6. DGIndex can now automatically set the PIDs on file open for streams that lack PAT/PMT tables. If the PAT/PMT tables are absent, DGIndex falls back to using raw PID detection and sets the first audio and video PIDs seen in the stream.
7. The __aud__ variable in the AVS template now uses the first audio track found instead of the last.
8. 204-byte transport packets are now supported.
9. The info dialog now includes a stream type field.
10. If an exception occurs during processing, a message box pops up and allows the user to choose to continue or to abort.
11. The D2V file version is bumped to 16.
12. The AVS template path now defaults to a file called "template.avs" in the same directory as DGIndex.exe.
13. Fixed a bug in INI file loading that caused some parameters to be read incorrectly.
14. An error popup now appears if the user attempts to execute "Demux Audio Only" when the audio method is set to "Decode AC3 Track to WAV".
15. Fixed a bug in relative path handling that crashed DGIndex when "Load Project" was performed.
16. Revised the track selection interface to be more user friendly.
17. Added support for frame repeats. These are increasingly being found in 720P streams.
18. Added two new fields to the info dialog: number of frame repeats, and number of field repeats.
19. The Correct Field Order option is removed and the field order correction function is now available through the Tools menu.
20. A first attempt has been made to add a progress percentage field to the DGIndex window title bar.
21. When in CLI mode, DGIndex no longer grabs the foreground focus and beeps at the end of a Save Project operation.
22. Fixed a bug in the LumaYV12() filter (part of DGDecode) that could cause a crash in some circumstances.
23. Adding checking for audio file names to not be already open in another application before trying to demux to them.
24. Added a new tool in the Tools menu: Analyze Sync.
25. Revised the indexing code to support the case where an indexed unit (especially packs) might contain more than one I frame. Previously random navigation in DGDecode failed for this rare scenario.
26. Fixed a bug that caused DGIndex to sometimes use 601 colorimetry in the preview window and when doing Save BMP when 709 should have been used. The Info Dialog was correct, however.
27. Added support for M2TS (Blueray Disk MPEG2) files.
28. The reporting of matrix coefficients was off by one GOP so if they changed, one GOP would be reported wrongly. Fixed.
29. Multiple __vid__ and __aud__ per line are now supported in AVS template files.
30. Audio-only demuxing of LPCM audio was fixed.
31. Making a range that cuts from the start failed for some program streams. Fixed.
32. Added support for demuxing LPCM from M2TS (Blu-Ray) files. Note that the raw PCM is demuxed (same as xport.exe). You must use an audio processor, such as sox.exe, to repackage it as you want it (typically as a WAV file). Refer to the DGIndex Users Manual for instructions in that regard (Audio/Output Method section). PID detection and the Info dialog are supported for this new audio type. Thanks to drmpeg for showing the way with xport.exe.
33. Added a warning pop-up to notify the user that a field order transition was detected.
34. Added the __del__ keyword for Avisynth templates for generating the audio delay in DelayAudio(__del__).
Adub
8th October 2006, 18:41
Wow, I didn't even realize that I hadn't updated yet, and here you are crunching out another. Rock on, neuron2!
unskinnyboy
8th October 2006, 19:00
Thank you. Updating right away!
Guest
30th November 2006, 06:24
My previous fix for random access in the presence of RFF flags was incorrect (and in fact a significant regression). Beta 4 fixes it properly (I hope). Do not use 1.4.9 Beta 3!
http://neuron2.net/dgmpgdec/dgmpgdec149b4.zip
SeeMoreDigital
4th December 2006, 23:12
Hi Donald,
I'm embarrassed to say I've missed this thread :o
saulob
4th December 2006, 23:38
neuron2, this program Rocks MY WORLD! :D
thanks.
Guest
5th December 2006, 06:18
This version adds the PCR (for transport streams) and SCR (for program streams) to the 'Log Timestamps' dump. The PID detection/setting dialogs now allow for the specification of the PCR PID for transport streams.
http://neuron2.net/dgmpgdec/dgmpgdec149b5.zip
Guest
5th December 2006, 06:21
I'm embarrassed to say I've missed this thread Please provide an unprocessed dump of your brain contents, so that I may properly analyse your pathology.
SeeMoreDigital
5th December 2006, 10:52
Please provide an unprocessed dump of your brain contents, so that I may properly analyse your pathology.That would assume I have a brain to process!
Anyways.... Over in Buzzqw's AutoMKV thread a guy called FogBav posted a link to a [7.87MB] TS sample (http://forum.doom9.org/showthread.php?p=906613#post906613) that DGIndex 1.4.8 Final (and 1.4.9B5) can't automatically open...
Will analysing the contents of an erroneous TS stream satisfy you instead?
Cheers
Guest
5th December 2006, 14:45
Over in Buzzqw's AutoMKV thread a guy called FogBav posted a link to a [7.87MB] TS sample (http://forum.doom9.org/showthread.php?p=906613#post906613) that DGIndex 1.4.8 Final (and 1.4.9B5) can't automatically open... The stream has no PAT/PMT tables, which specify the programs and associated PIDs. DGIndex currently looks for the first program in the PAT/PMT to get the PIDs to set automatically. So if there is no PAT/PMT, nothing can happen automatically. I could revise it to fall back to raw PID detection and then use the first video and audio PIDs seen.
I'd be curious to know, however, about the origin of this stream, because PAT/PMT is mandatory in a transport stream.
SeeMoreDigital
5th December 2006, 15:00
I'd be curious to know, however, about the origin of this stream, because PAT/PMT is mandatory in a transport stream.Indeed... I thought you'd be interested.
I guess it's over to FogBav ;)
Guest
5th December 2006, 15:05
I've just now implemented and tested the raw PID detection fallback. It opens that stream automatically just fine. It will be in the next beta.
SeeMoreDigital
5th December 2006, 15:17
Many thanks... I'll let Buzzqw know. So we can test it within his proposed new build of AutoMKV.
Cheers
mvdzwaan
5th December 2006, 16:00
Any chance of a new feature which updates the AC3 info tag while processing ?
The window now shows 2/0 3/2 according to the first ac3 packet, but often this changes from leader to content.
Inventive Software
5th December 2006, 18:24
Something missing IMO is the information box with information coming up when you open a D2V file or a file that DGIndex can open, instead of having to play or preview the file to find out the key information, like whether it's interlaced and/or the field order.
Isochroma
7th December 2006, 00:02
First I'd like to thank the developer for this excellent tool which I use everyday!
Now on to the real business of this post: using 1.4.9b4 (the bug was not listed on the b5 changelog, so I assume it still exists in b5), I notice that even though it is set to remember to use Low priority, if it is started up and fresh files loaded and indexing is started, priority remains Normal, as observed in the Task Manager. Sometimes this happens and sometimes not.
However, if indexing is stopped and priority is switched to Normal then back to Low, it actually runs at Low. Also, it seems to regularly forget the priority setting when starting up (ie. Normal will be checked even though Low was set last sesssion). So there's definitely some bugs in the priority code.
Guest
7th December 2006, 01:27
So there's definitely some bugs in the priority code. I cannot duplicate any of your reported problems. Please describe an exact sequence of steps that I can use to recreate your issue.
Isochroma
7th December 2006, 04:16
Ok, so first I'm using 1.4.9b4, and assuming the changelog is complete, this issue hasn't been addressed so b5 should behave the same way.
First off, the Priority has already been set to Low from a previous run of DGIndex, so the checkmark is already there.
I run DGIndex, File/Open the .TS files, hit OK on the box, and then Save Project. DGIndex start running, then I bring up Task Manager and note the it is running in Normal priority.
So I hit escape to stop the demuxing, and then go Options/Process Priority. Noting that Low is checked I now select High. Then I leave that menu by clicking anywhere else. Then I go back into the menu and select Low.
Then I save the project again, now task manager shows it running in low priority.
Guest
7th December 2006, 05:52
then I bring up Task Manager and note the it is running in Normal priority. How do you note that? Where is it displayed?
Isochroma
7th December 2006, 06:57
First, run task manager (Start->Run->taskmgr), then click Processes tab, then if you don't see a Base Pri column, View Menu->Select Columns->check Base Priority then click OK, now you have Priority :)
Guest
7th December 2006, 14:50
I still can't duplicate any of your claims. What OS are you using?
Isochroma
7th December 2006, 20:03
XP Pro. The problem is that even though Low priority is shown checked in the menu when DGIndex first loads (remembers previous session setting), it doesn't actually run at low priority unless the setting is reshuffled. I just tested b5 and there are no differences in behaviour.
Ah, I just tested b5 on my other machine and it remembers the priority. So something strange is definitely happening. You could send me a debug version that logs the API call to change process priority, and its result. That way we could figure out what is going wrong. My system is pretty basic, and everything else works fine, so this is probably happening to some fraction of users out there too.
Specifically, we need to know the result of the SetPriorityClass() function, whether it is zero or not. If it's not zero then we need to do a GetLastError() to find out why it is failing.
Alternately, the function call may always be succeeding, but on some systems a quirk in the code prevents priming of the Priority variable from a previous session.
---
OK, next note: I just got the bright idea to use a .bat file to start DGIndex in Low priority:
START "a" /D"C:\Program Files\AviSynth 2.5\plugins" /LOW /B DGIndex.exe
So it starts the app in low, then I do file/open, then I start browsing in the Open window for the files. As soon as I single- or double-click a folder (but not the other items), the priority resets to Normal.
Since the Open window starts with a view to my Desktop, I copied a .ts file to that location and found that just hovering the mouse over a .ts file in the Open window causes a reset to normal. In fact, if All Files is selected to be shown (*.*), hovering over any file except special items (My Computer, My Documents, Recycle Bin, shortcuts), causes the reset.
Guest
7th December 2006, 21:16
Sorry, but I too have XP Pro and I cannot duplicate anything you say; everything behaves just as it should.
Is anyone else experiencing this?
Isochroma
7th December 2006, 21:17
It may be necessary to send a special debug version with logging to figure out what's going on.
Also, one minor bug which is probably easily fixable: when Demux Audio Only is selected, the output audio file doesn't contain the DELAY value necessary for remux, thus I always use Save Project instead.
Guest
7th December 2006, 21:41
It may be necessary to send a special debug version with logging to figure out what's going on.I have limited time available. If you are the only person and it happens on only one system, I find it hard to attribute it to DGIndex.
Isochroma
7th December 2006, 21:49
Oh well, that's ok - I'll just use Task Manager to manually set the priority. But is it possible to put the DELAY value in the output filename when just demuxing audio?
Guest
7th December 2006, 22:30
If you are just demuxing audio, the video is not examined, so the video PTS is not seen and therefore no delay value is possible. The feature is intended for use with streams that do not have video, in which case, the delay value is meaningless. If there is video, use Save Project as you stated.
Guest
8th December 2006, 15:07
* DGIndex can now automatically set the PIDs on file open for streams that lack PAT/PMT tables. If the PAT/PMT tables are absent, DGIndex falls back to using raw PID detection and sets the first audio and video PIDs seen in the stream.
http://neuron2.net/dgmpgdec/dgmpgdec149b6.zip
Guest
8th December 2006, 15:09
Any chance of a new feature which updates the AC3 info tag while processing ?
The window now shows 2/0 3/2 according to the first ac3 packet, but often this changes from leader to content. I'll see what I can do about it.
Romario
8th December 2006, 16:42
neuron2, what about H.264 TS support in your program? Can you do it for 1.50 version?
SeeMoreDigital
8th December 2006, 19:06
Patience, patience....
ChronoCross
8th December 2006, 21:57
neuron2, what about H.264 TS support in your program? Can you do it for 1.50 version?
wow a third thread where he's actually perfectly emulating KRP
Isochroma
8th December 2006, 23:00
Upgrading from b4 to b6 directly, I started indexing a new 1080i .ts and when done found that it was causing my simple .avs to run entirely out of memory (the avs refused to load in vdub with various out-of-memory errors, depending on the filter). For example, tfm() throws a "malloc" error, telecide() has its own message.
So I worried that it could be my system, but decided that since I'd just finished successfully with another 1080i .ts, I'd just re-test it.
So I re-indexed it using b6, taking care to preserve the .d2v from b4. Remember, I always replace all DG files in the plugins folder between version switches, and also re-index the .d2v with identical settings.
I found that the re-indexed previous .ts now no longer worked, throwing the same out of memory error. So I changed to b5, re-indexed, same error.
So I finally changed to b4 and re-indexed, and it works perfectly again!
Some change happened in b5 that broke 1080i .ts indexing, in both FF and IP modes. And I tested this on two different 1080i .ts, one of which was already verified to work with b4.
Also, I tested the newest b6 on the .d2v made by b4, and it decodes just fine in the avs script. So DGIndex is making flawed .d2v files after b4.
Guest
8th December 2006, 23:31
Please diff the two D2Vs (the one that works and the one that doesn't) and tell me the results. If you can't do a diff then provide the two files.
Guest
8th December 2006, 23:40
Find the line in the D2V that lists the PIDs and then delete the third PID value and the comma. Tell me if that fixes it. I may have forget to modify DGDecode to parse that (don't have the source code at work). If so, I'll make a new beta tonight with that repaired.
Isochroma
8th December 2006, 23:52
Will do, but I just started an encode so have to wait for it to finish before replacing DG files. Will do asap.
Isochroma
9th December 2006, 01:35
Here's the two .D2V files, and I can also make a small section of the .TS for you to test, but I don't remember now which tool you suggested to use for that?
Desperado.FF.D2V.Files.rar (http://isochroma.com/Testfiles/Misc/doom9/Desperado.FF.D2V.Files.rar)
Guest
9th December 2006, 14:39
Here is the fixed version. Note that the D2V file format version is bumped to 14.
http://neuron2.net/dgmpgdec/dgmpgdec149b7.zip
Guest
9th December 2006, 20:12
The window now shows 2/0 3/2 according to the first ac3 packet, but often this changes from leader to content. I need some test streams that have these audio format changes. Can anybody provide me with some for testing this feature? Thank you.
Isochroma
9th December 2006, 22:30
It pleases me greatly to report that after testing, b7 appears to function perfectly! Thanks again for the continued excellent development work on this powerful software.
Egh
9th December 2006, 23:57
Just a sidenote (checked in 149b7 package):
in DGDecodeManual.html, you have copyright as "2004, 2005"
in DGIndexManual.html, you have copyright as "2004-2006"
Is it intentional or have you just forgot to update the copyright notice ? :)
Guest
10th December 2006, 00:04
Is it intentional or have you just forgot to update the copyright notice? Rhetoric will get you nowhere. Thanks for pointing it out. I think I'll just make it 2004-2050. That's wishful thinking on my part, of course.
Isochroma
10th December 2006, 00:06
I guess after the last post I should also point out that the manual "DGIndexManual.html" distributed with b7 is titled "DGIndex v1.4.8", though perhaps this is appropriate since 1.4.9 final has not yet been released.
Guest
10th December 2006, 00:07
It pleases me greatly to report that after testing, b7 appears to function perfectly! Next time I'll actually test things before releasing a beta. :)
Thanks again for the continued excellent development work on this powerful software. Your contribution in testing the betas is also greatly appreciated.
Guest
10th December 2006, 00:09
I guess after the last post I should also point out that the manual "DGIndexManual.html" distributed with b7 is titled "DGIndex v1.4.8", though perhaps this is appropriate since 1.4.9 final has not yet been released. Oh my Darwin, how did I do that? I'll update the ZIP file right away. Thanks!
(The only thing I can think of is that I was hung over this morning from our office Christmas party last night.)
Guest
10th December 2006, 15:33
Any chance of a new feature which updates the AC3 info tag while processing ?
The window now shows 2/0 3/2 according to the first ac3 packet, but often this changes from leader to content.
On the off chance that you missed my post, I need a test stream. I have it coded but I can't release it without testing. Thank you.
john3voltas
14th December 2006, 13:43
Hello,
I am waaaay off topic but I just found out that the "demux audio only" can either demux or decode the audio depending on the options you set under "audio>output method>demux(or decode)".
So could you change the option name to "demux/decode audio only" in this next release and update the docs as well?
EDIT: just noticed that this is already beta 7 and soon will be entering RCs.
So at least consider my post to include in your to-do list and since this a very "minor" it can go down to the bottom of the list ;).
TIA and merry xmas to all.
Guest
14th December 2006, 14:50
That's not off topic.
Very interesting. My superifcial code reading confirms what you say. I'll do some testing. If it pans out for all stream types, then I'll follow your suggestion. A new feature for zero work!
Thank you for pointing this out.
john3voltas
14th December 2006, 15:34
You're welcome ;).
Cheers
SeeMoreDigital
14th December 2006, 16:26
....I just found out that the "demux audio only" can either demux or decode the audio depending on the options you set under "audio>output method>demux(or decode)".
So could you change the option name to "demux/decode audio only" in this next release and update the docs as well?I wonder whether third party encoding tools will be able to make use of this too?!
vBulletin® v3.8.11, Copyright ©2000-2026, vBulletin Solutions Inc.