View Full Version : DGMPGDec Development List
Cyberia
7th January 2005, 00:04
This is the list of requested fixes and enhancements for DGMPGDec. It's the wish list of features and fixes. Please feel free to add/correct to this list by posting to this thread.
This list is not prioritized or ordered in any way. Some of these may require extensive work, others may be easy changes. This is NOT intended to be a "to do" list for any one developer. Developers are invited to assign items to themselves for development. Please inform neuron2 if you with to do that, in order to avoid duplication of effort.
Fixes
-----
1) DGMPGDec needs to support no-I-frame streams.
2) Stopping a preview with a field structure clip can result in
display of fields from different pictures. This only affects
display in DGIndex after hitting stop, and does not affect video
output.
DGIndex Enhancements
--------------------
1) Auto detect and set Field Operation
a) can be overridden/changed
2) Multiangle support
3) Unicode character support
4) Some kind of free-space check before saving projects
5) Produce audio files with no delay necessary.
a) Also, tool for audio sync/PTS debugging
b) Proper correction for AV sync loss due to
video or audio losses due to stream errors.
6) (GUI) Frame accuracy. Individual frame stepping (both directions).
7) (GUI) Allow multiple simultaneous selection ranges to be set. Cutting.
8) (GUI) Audio Identification
a) Audio track selector reports valid tracks and some info
(types, bitrate, freq, length, language, etc)
AC3(5.1) 448Kbps 48Khz 849s En
AC3(2.0) 192Kbps 44Khz 243s Sp
DTS 768Kbps 48Khz 1843s Gr
9) (GUI) Audio playback
10) (GUI) Clipping option needs better granularity
11) (GUI) Save clipping settings if clipping is checked when ending the program
Cyberia's comment: Not sure if this is a good idea at all. Don't
save the setting, but don't clear it when you load a new vob. If you
save the clipping value, users will forget about it (especially
command-line users) and bad things will happen. Better
to preserve the current setting while the program is open and
allow the user to load multiple files without resetting the value.
12) (GUI) Enhanced Color/Luma controls
a) Possibly like AVIUTL or....
b) Invoke the AviSynth filters Tweak and Levels
13) (CLI) option to specify the process priority
14) (CLI) Add a commandline option to specify a range of "VOB Cell IDs" to
index. [mg262]
15) Process multiple audio streams at once for transport streams
(as is currently done for program streams).
DGDecode Enhancements
---------------------
1) Rationalize parameter definitions and functionality
a) See this thread: http://forum.doom9.org/showthread.php?s=&threadid=76625
2) Automatic D2V file generation
3) Allow "Info" to be used in AviSynth for conditional filtering
Cyberia
7th January 2005, 00:22
I am reposting this thread now that it seems some development has resumed on DGMPDec. The original thread can be found here (http://forum.doom9.org/showthread.php?s=&threadid=74081).
I believe these items have been resolved by the latest fixes from Tritical:
Fixes
------------
1) Upsampling based on progressive/interlaced picture indication
[AbsoluteDestiny]
DGDecode Enhancements
---------------------
2) Set ipp parameter automatically according to current frame type
4) Show clip TFF versus BFF in info dialog.
Please confirm these and ill remove them from the list. Also, thanks for the new coding!
Cyberia
8th January 2005, 01:14
Well, sorry everyone. The list originally posted was a bit out of date. I have updated it with the current issues, so please go over it again.
Guest
12th January 2005, 14:52
Originally posted by Cyberia
Please confirm these and I'll remove them from the list. Please don't remove them until they make it into my full releases. Otherwise, I may forget about them. :)
I am reviewing tritical's changes right now with a view to incorporating them.
Cyberia
24th January 2005, 17:59
The list has been updated as of 1/24/05 to reflect the changes made with DGMPGDec 1.1.0.
Guest
19th April 2005, 04:25
Updated the list.
iNFO-DVD
29th April 2005, 23:54
Just a little request if possible..... ;)
Are the [ and ] (around filenames) in the CLI of DGIndex there for just parsing???? I mean, any reason why they are "[ ]" or was that just what was chosen originally?
The reason I ask is because if I use DGIndex CLI I can now not have the "[" or "]" symbol in my path, which is a bit of a pain as I use them quite a lot.
Any chance you could change the symbol to something that you can't legally have in a path so it will never be an issue with anyone again?
Illegal folder/file names are:
\/:*?"<>|
Hope you can oblige.......
Cyberia
4th May 2005, 22:15
Originally posted by iNFO-DVD
Just a little request if possible..... ;)
Are the [ and ] (around filenames) in the CLI of DGIndex there for just parsing???? I mean, any reason why they are "[ ]" or was that just what was chosen originally?
The reason I ask is because if I use DGIndex CLI I can now not have the "[" or "]" symbol in my path, which is a bit of a pain as I use them quite a lot.
Any chance you could change the symbol to something that you can't legally have in a path so it will never be an issue with anyone again?
Illegal folder/file names are:
\/:*?"<>|
Hope you can oblige.......
Your only option would be to use the -BF([filelist]) option. I just tested it with [ ] in filenames and it does work fine.
You should also post questions like these in a new thread. I understand your confusion, but this is not a feature request thread.
Cyberia
Guest
15th May 2005, 02:58
Added a bug regarding multiple instances of DGVfapi. Well, I didn't add the bug, I added the notice of its existence. :)
Zetto
3rd June 2005, 23:50
Is there anyway to include the demuxed sound file name somewhere in the template.avs? I mean like substituting videofile name with the generated d2v, is it possible to introduce something similar for audio file? Thanks for the great work :D
Xesdeeni
4th June 2005, 19:22
How about adding DxVA support to DGMPEGDecode? That should allow much faster conversions, especially for HD material.
Also, is there any advantage to using the flags in the MPEG stream to help Decomb? I.e. would the decomb process (Telcide/Decimate) be any faster if rolled into DGIndex/DGMPEGDecode?
Xesdeeni
Pookie
4th June 2005, 21:29
Have you guys considered transport stream repair capability, ala Mpeg2Repair http://users.adelphia.net/~mwilczyn/mpeg2repair/ ? Not so much to fix the file, but rather to fix the errors before A/V demux and .d2v creation. I know it is a bit out of the scope of what DGmpgdec was designed to do, but hell, thought I'd ask.
Guest
4th June 2005, 23:29
Have you guys considered transport stream repair capability. Yes, I've considered it. It's possible but probably not before I personally start capturing transport streams. :)
Pookie
5th June 2005, 02:39
Thanks for your consideration, Donald. If you want a couple of DVDs worth of transport stream samples (laden with errors) for testing purposes, just say the word.
dvgeek
10th June 2005, 03:19
Great Tool Neuron2 !
New feature for demuxing is very useful - and I have a request here - when this option is selected, could it generate a d2v file that points to the demuxed m2v file instead of the original file (tp / mpg) ?
Thanks again.
Xesdeeni
13th June 2005, 16:24
The LinkPlayer2 is capable of playing ATSC TS and DiVX HD content from a DVD. But ATSC content can fill a single-layer DVD*R with as little as 30 minutes of video. So I'm converting some ATSC HD content to DiVX HD to shrink it, and for possible playback with a LinkPlayer2 or similar device.
On my Athlon XP 2400+, I can't play back the HD stream via DGMPEGDec faster than 15-20 fps. But it can play back at a full 60 fps using only 35% of the CPU with the FusionHDTV software decoder using DxVA (it can't quite handle 60 fps with 100% use without DxVA).
Is there any way we can help with decoder optimizations? Is it possible to add DxVA to the decoder?
Xesdeeni
mg262
3rd July 2005, 21:49
Would you consider adding a commandline option to specify a range of "VOB Cell IDs" to index?
I tend to rip the episodic DVDs I'm working on as .ISOs (to keep the originals safe), and in order to frameserve I have to (mount and) re-rip each episode as a separate VOB. Commandline selection of VOB Cell ID ranges would allow frameserving directly from the mounted .ISOs, saving a lot of hard disk space and substantially reducing the number of files that need to be managed.
Thanks very much!
M.
Guest
4th July 2005, 04:59
Is there any way we can help with decoder optimizations? Is it possible to add DxVA to the decoder?
I don't see DGIndex as a player. The play is there only for finding cut points and getting preview information. Therefore, optimized playback appears superfluous, especially without audio.
Guest
4th July 2005, 05:01
New feature for demuxing is very useful - and I have a request here - when this option is selected, could it generate a d2v file that points to the demuxed m2v file instead of the original file (tp / mpg) ? That's not easy because all the indexing is done on the stream parsed as demuxing occurs, and that is not the M2V stream. It would require a lot of changes. You'll have to just index the M2V.
Guest
4th July 2005, 05:02
Would you consider adding a commandline option to specify a range of "VOB Cell IDs" to index?. Yes, I'll consider it for 1.5.0.
mg262
4th July 2005, 10:38
Yes, I'll consider it for 1.5.0.
:) Thank you very much!
Xesdeeni
6th July 2005, 15:58
Is there any way we can help with decoder optimizations? Is it possible to add DxVA to the decoder?I don't see DGIndex as a player. The play is there only for finding cut points and getting preview information. Therefore, optimized playback appears superfluous, especially without audio.I thought DGIndex was just the front end for DGMPEGDec.dll. And I thought there was a decoder in DGMPEGDec.dll. Did I miss something?
Xesdeeni
Guest
6th July 2005, 16:16
You want an application that opens an AVS script invoking DGDecode() to play HD content in real-time? Possibly, you think that the performance of the MPEG decoder can be improved? Sure, that's probably true. If there is source code available for improved decoding, and it is usable under its licensing provisions, and it will not be a full-scale effort to use it, then it could be considered.
jackei has developed some optimizations for the motion compensation that we could pick up. I don't know how much of a performance gain it will give.
DxVA support would be possible only for an integrated DirectShow player application. DGMPGDec is intended for transcoding purposes. As I said, it is not intended as a player application.
Xesdeeni
6th July 2005, 16:37
You want an AVS script invoking DGDecode() to play HD content in real-time? In other words, you think that the performance of the MPEG decoder can be improved?Well, for conversion, I'd like something much better than real time :-) Decoding is only half the process, and the faster that goes the faster the conversion goes.DxVA is an issue for the application that opens the AVS script and plays the video, not an issue for DGMPGDec, unless I am misunderstanding things.As I understand it, DxVA is a standard (Microsoft API) way of accessing some video features of the VGA devices that accelerate some common video operations, including MPEG. I'm not familiar with the specifics, but I assume IDCT and probably motion compensation are included. However, the goal with these features was to accelerate playback on the display. So I don't know if using these features is practical when the resulting uncompressed images must be shipped back out of the VGA for processing.
Xesdeeni
Cyberia
6th July 2005, 20:33
Well, for conversion, I'd like something much better than real time :-) Decoding is only half the process, and the faster that goes the faster the conversion goes.
Can't argue with that.
I intend to do some testing with the MC code, and the iDCTs to see if there is anything else we can remove.
(Currently, I am trapped in Guild Wars however.) :devil:
Xesdeeni
6th July 2005, 20:48
In the interest of the complete background, my interest in speeding up MPEG decoding relates to conversion of HD ATSC MPEG-2 transport streams to DiVX (or h.264), so that HD programs longer than 30 minutes can be archived on a single DVD*R. (I'm not holding my breath about the 2 HD DVD formats to become standard or affordable any time soon.) For playback, I'm considering the LinkPlayer2 DVD player (or a clone from JVC that has digital out), which can play HD DiVX (and as a bonus, can play TS directly via a network). But the conversions currently take a very long time. I investigated and realized even the DGMPEGDec decoding was much slower than real time on the machines that could use a DxVA enabled codec and play back in real time, and still have 70-75% of the CPU free. So I thought I'd ask whether DxVA would help DGMPEGDec.
Xesdeeni
Guest
7th July 2005, 01:34
@xesdeeni
It's definitely a valuable issue to raise, and we should look into it. One problem will be that I don't have a graphics card that supports DxVA. Let's get the MC optimized and then revisit this down the road. Thank you for bringing it to the table.
Xesdeeni
7th July 2005, 20:20
One problem will be that I don't have a graphics card that supports DxVA.Wow! How old is your VGA card? I have this crappy on-board Intel mobo at work with built-in cheap VGA and it has DxVA (although I had to download a driver update from Intel's site). I downloaded nVidia's trial codec and even this low-performing mobo works great with HD (about 30% of a hyperthread CPU, which is about 60% of a single CPU). Without the codec, I get huge frame drops (I'd estimate at least 1/3 of the frames) with 50% CPU use (100% of one CPU). DGMPEGDec plays at less than half speed through AVISynth in VirtualDub, and it looks like at least 50% of the frames are dropped in MediaPlayer on the same machine.
Xesdeeni
Guest
7th July 2005, 22:41
Well, I just assumed it doesn't support it, but I could be wrong. I will try to find out.
CloudStrife
13th July 2005, 23:18
Yop,
Good Job neuron2 :) DGMPGDec is very good :) (And Good job at MarcFD, Nic, and other for MPEG2Dec3)
I have just a question... For the compilling, i use VC++ 2003, and for the compiling of assembler source, which compiler use you ?
I have use the last nasm (and i have modified the compiler path) but it's not work :/
(Sorry for my very bad english)
Guest
13th July 2005, 23:58
idctmmx.asm is built by ml; all the others are built by nasm.
CloudStrife
14th July 2005, 00:12
:(
don't work at me :(
which is your nasm version ?
Guest
14th July 2005, 04:18
NASM 0.98.37
I could help you better if you gave me the exact error output that you are getting, and told me the file name and which executable you are trying to build.
CloudStrife
14th July 2005, 11:40
i have d/l nasm and copy like you this file into d:\dosbin
I compile this...
And the error was :
Étape de génération personnalisée en cours
Le système ne peut exécuter le programme spécifié.
Project : error PRJ0019: Un outil a retourné un code d'erreur*à partir de "Étape de génération personnalisée en cours"
In English :
Stage of personalized generation in progress
The system cannot carry out the specified program.
Project: error PRJ0019: A tool turned over an error code starting from "Stage of personalized generation in progress"
In the batch file, the command line is :
@echo off
d:\dosbin\nasm -f win32 -DPREFIX -DWIN32 -o ".\Debug"\"skl_dct_sse".obj "f:\CloudStrife\Avisynth\dgmpgdec140src\dgdecode140src\skl_dct_sse.asm"
Guest
14th July 2005, 12:51
@echo off
d:\dosbin\nasm -f win32 -DPREFIX -DWIN32 -o ".\Debug\skl_dct_sse.obj" "f:\CloudStrife\Avisynth\dgmpgdec140src\dgdecode140src\skl_dct_sse.asm" BTW, this is off-topic for this thread. Please open a new one if you still can't make it work.
AllTimeSToneD
27th July 2005, 04:47
@neuron2
will the "closed gop" option be considered for the Development List? Would be great! :thanks:
stax76
30th July 2005, 13:51
I have a minor request, it needs a little explanation. Generally applications that can open files with CLI have to ways to open files. Either you open a file from within the application with the file browser or you open the file from the shell with the CLI. I'm the kind of user working with the shell extensively. To be more precise I'm working with a application that let me customize the explorer shell. I've got a explorer context menu allowing me to select files in the explorer and open them with the explorer context menu sorted in DGIndex. All this works great. There is however a limitation compared to open the files from within the application that is the target directory won't be picked up from the source, I have to browse always the target directory and furthermore enter the target filename. The ideal workflow would be open files from the shell, hit key to save (there is no key yet to demux), have target file path now already filled in the file browser to just hit enter to start to process instead of browsing a directory and entering a filename.
Guest
30th July 2005, 15:21
Cut to the chase: what are you asking me to change in DGIndex?
stax76
30th July 2005, 15:29
more terse (my style anyway): suggest always a file path in the file save dialog api
Guest
1st August 2005, 15:44
more terse (my style anyway): suggest always a file path in the file save dialog api I've added it to the development list. It's pretty easy so expect it in the next beta. Thank you for your suggestion.
HookedOnTV
12th August 2005, 05:07
5) Produce audio files with no delay necessary.
a) Also, tool for audio sync/PTS debugging
b) Proper correction for AV sync loss due to
video or audio losses due to stream errors.
I think I running in to the need of this sort of processing. Most specifically to deal with video stream errors. Glitches in HD TS files are by far more likely to be video, which easily causes a loss of a/v sync. I've haven't started investigating cause/solution in detail yet but thought I might pose a couple quick questions.
Are we talking a rather involved task to do this? Could we just insert black frames in place of damaged/missing frames?
I've done some coding related to mpeg2 transport streams and a little in decoding mpeg2 video headers in the past but haven't gotten in to ES/PES spec's yet.
Guest
12th August 2005, 13:39
Are we talking a rather involved task to do this? Could we just insert black frames in place of damaged/missing frames? Yes, it will be a big effort. It would be better to insert copies of the nearest decodable frame rather than using a black frame.
HookedOnTV
12th August 2005, 17:13
Couple more quick questions... will the demuxed m2v file contain the "errors"? Is there any app/utility that can scan such a file and report if there are errors? Not very efficient having to watch the whole movie before attempting a conversion. ;)
Saligia
14th September 2005, 03:02
@neuron2
ABOUT SUBTITLE DEMUXING.
Do you have any visions about subtitel demuxing, like idx/sub, or is this just totaly out of the question?
ABOUT INDEXING DEMUXED M2V.
You answered dvgeek that:
"That's not easy because all the indexing is done on the stream parsed as demuxing occurs, and that is not the M2V stream. It would require a lot of changes. You'll have to just index the M2V."
That figures. But then: would'nt it be possible to do an selectable auto-2-pass when demuxing, indexing the m2v in the second pass?
I know it aint no biggie (-at lest to ask for! ;) ), but it would be a usefull and convenient feauture, that like completes the demuxing feauture.
NEVERTHELESS.
Thanks you for using your time and effort, developing this superb piece of software, and keeping answering all those questions, questions questions...
Best regards
Guest
14th September 2005, 03:13
@Saliglia
Neither of those are likely in the near future because I am working on cutting functionality.
Saligia
14th September 2005, 03:54
@Saliglia
Neither of those are likely in the near future because I am working on cutting functionality.
I was'nt expecting to see it under the christmastree the 24. of september. :p
A vision can be a life-long dream that never come true!
The answer I was looking for was a lot more general, like: "Maybee, one newer knows" or "subtitels? Are you insane? Drop dead"
:) Best regards
Guest
14th September 2005, 04:07
Well, if you read it carefully, you'll see that my response leaves all doors open.
Saligia
14th September 2005, 04:47
@neuron2: Ups! The matter infact, Yo'r right.
Seems like your first answer must have hit some kind of "mental-linguistic-blind-spot" here! :p
Thats fine!
I mean.. One can always use a BIGGER limmo, but...
:) Best regards
WorldofRoss
14th September 2005, 14:31
I was wondering if its possible to turn off the Information window via the command Line when creating the D2V file in DGINDEX ?
Thanks
Guest
14th September 2005, 14:41
@Keith
In the most recent version you have the ability to start minimized or hidden, both of which will suppress the Info dialog.
vBulletin® v3.8.11, Copyright ©2000-2026, vBulletin Solutions Inc.