Log in

View Full Version : DVD2AVI & MPEG2DEC3 Development List


Pages : [1] 2

Cyberia
8th April 2004, 21:12
This is the list of requested fixes and enhancements for DGMPGDec/DVD2AVIdg/MPEG2DECdg for the past 6 months. Please feel free to add/correct to this list by posting here, or email me: cyberia-1@insightbb.com

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. Choose/fix these at your discression.


Fixes
------------

1) Upsampling based on progressive/interlaced picture indication [AbsoluteDestiny]

2) Fix or remove icon on:
a) confirmation dialog after saving project
b) 'save as' dialog before saving project
c) error dialog when saving project

3) Error dialog should report return code for failure.


DGIndex Enhancements
--------------------

1) Sort files loaded by drag-and-drop
a) possibly add "move up" and "move down" buttons to open dialog
to allow manual reordering

2) Store Field Order in d2v

3) Auto-select Field Operation
a) defaults on, but can be overridden

4) Individual frame stepping (both directions)

5) Remove(!) or replace Downsampling/Normalization/DRC code (with code from BeSweet)

6) Information window additions (for both Preview and Save Project modes)
a) Info field
b) Vob Cell ID
c) as many other fields as possible

7) Adjustable playback speed (possibly with a slider)
a) normal playback speed
b) faster speed (like now)

8) Logging. Create a small log similar to this:

DVD2AVIdg v1.77.3dg1.0.0RC2 by Donald A Graft.
----------------------------------------------
Force_Film = DISABLED
IDCT = 64-bit FP
Lum. Filter = DISBALED
Cropping = DISABLED
Resolution = 720 x 480 (will change if cropping)

Aspect Ratio = 16/9
Anamorphic? = YES
Avg. Bitrate = 2000 Kbps
Frame_Rate = 25 fps
Frame_Count = 65500 frames
Video Type = PAL
Frame Type = Progresive
Project File = C:\DVD\MYPROJECT.D2V

Decode Audio = DISABLED
Normalize = N/A
Demux Audio = ALL
Audio Track1 = C:\DVD\TRACK1_AC3_ETC_ETC.AC3
Audio Track2 = C:\DVD\TRACK2_AC3_ETC_ETC.AC3
...

Process time = 5:34
Process OK


9) MPEG-1 support
We really need a GOOD and proper way to read mpg files
other than DirectShowSource.

10) MPEG-2 slicing
a) ability to export select section "as-is" to an MPEG-2 file
Especially good for times when the deveopler wants to see a VOB slice

11) Audio Playback
a) Plays the selected track during Preview (or a similar mode)

12) Audio Identification
a) Audio track selector reports ONLY valid tracks and some info
(types, bitrate, length, language, etc (whatever))
DD3/2(448)-300s-Eng
DD2/0(384)-6543s-Ger
DTS(768)-1843s-Spa

13) Enhanced Color/Luma controls
a) Possibly like AVIUTL or....
b) Invoke the AviSynth filters Tweak and Levels

14) PVA support

15) Multiangle support

16) AAC demuxing

17) LPCM demuxing (necessary if Decode is to be removed)

18) Allow process priority to be changed during project file generation

19) Integrate DGFix and DGParse into the GUI

20) Save clipping settings if clipping is checked when ending the program

21) Demux MPEG audio and AAC from transport files (currently only AC3 is supported)

22) CLI option to specify the process priority

23) CLI to support filenames with commas.

24) CLI to start DGIndex minimized or hidden.

25) DGIndex clipping option to have better granularity.

26) Remove/disable ForceFilm option when processing PAL video.

27) Subtitle demuxing

28) Allow multiple simultaneous selection ranges to be set.
a) possibly add an 'Invert Selection' option


DGDecode Enhancements
---------------------

1) Rationalize parameter definitions and functionality
a) See this thread (http://forum.doom9.org/showthread.php?s=&threadid=76625)

2) Set ipp parameter automatically according to current frame type

3) Automatic D2V file generation

4) Show clip TFF versus BFF in info dialog.

Cyberia
8th April 2004, 21:13
I also found this list that Neuron2 made. Some of this may be fixed already:
--------------------------------------------------------------------


1. Correct the version string reported in the About box.

2. CLI support for selection of 1.76 vs. dg style project files.

3. Support for transport streams and HD.

4. Improved random navigation performance.

5. Automatic D2V file generation for MPEG2DEC3dg.

6. Generate D2F files.

7. Record aspect ratio information in the D2V file.

8. Fix case presentation for CLI file names (don't map to all upper case).

Cyberia
9th April 2004, 02:59
I believe fix #3:

3) Fix bad PRO LOGIC header info in demuxed AC3
can be crossed off the list. See this thread: http://forum.doom9.org/showthread.php?s=&threadid=74093

bond
9th April 2004, 09:32
i would also love to see if nic's mpegdecoder could be updated to work with dvd2avidg correctly
its simply great and fast :)

Guest
16th April 2004, 18:30
My current work list is here:

http://neuron2.net/misc/Work_List.html

I have already coded and tested improved random access (most of the time it is not necessary to decode the previous GOP as it always does in the current released version). I will fix a few bugs and release a beta. Bug fixing has priority over new feature development.

Guest
17th April 2004, 04:56
I'm getting close to a beta release. As I said, fixes first, enhancements later. Here is the work done so far:

-----
Fixed
-----

Correct the version string reported in the About box.
-> 1.1.0beta1.

Fix or disable "Save AVI" functionality. (see below)
-> Disabled.

For the Save AVI option to be of any use, it has to be
fixed so that it works in YUV 4:2:2, codec dialogue needs
to be clearer, and a Color Space 4:2:0 option would be nice too
(save directly to divx for example with no upsample of color data
followed by the inherent downsample that would be needed. [mashadar]
-> N/A (see above).

Uninitialized motion_type in macroblock_modes() [Lord KiRon]
-> Fixed in both DVD2AVIdg and MPEG2DEC3dg.

Improved random navigation performance.
-> Greatly improved. Works only for dg-style D2V files. Requires
-> new versions of both DVD2AVIdg and MPEG2DEC3dg.

Fix case presentation for CLI file names (don't map to all upper case).
-> Fixed.

Better auto-loading of multiple VOBs [Cyberia]
a) Auto-load more than 0-9 files at a time
-> Fixed for GUI and CLI.
b) Ability to disable auto-loading on Open dialog
-> Fixed.

Fix drag-and-drop loading [Cyberia]
a) Always load ALL dropped files
-> Fixed.
b) Never auto-load from drag-and-drop (load ONLY dropped files)
-> Fixed.

Guest
19th April 2004, 21:47
Phwew! I finally got the backward stepping across VOB boundaries to work. So I'll make a beta release tonight (late) with the fixes made thus far.

The backward stepping was hard because you have to first switch to the previous file (easy) and then decide where to start scanning from to find the last I frame in that file (hard). If you start too early in the stream you might go back more than one GOP, and if you start too late you may miss the last GOP and increment back to the file you are trying to step backwards from! :scared: Accomplishing this without a total code rewrite was the challenge. I think what I did will work for all VOBs but that's why we have betas. ;)

The total rewrite will occur when I make the navigation have frame resolution rather than GOP resolution.

Boulder
20th April 2004, 12:18
Hi Don,

good to see you're back in business again:)

I have a small request regarding DVD2AVIdg: could you please add files with extension .mpg to the MPEG-2 stream list?

Guest
21st April 2004, 04:28
Umm, what is "the MPEG-2 stream list"?

Boulder
21st April 2004, 08:42
When you open files for processing, the program shows only files with .vob, .m2p, .m2v or .mpv as the extension. I mostly process files with .mpg as the extension since my capture board produces already muxed files.

Hope this clears that up:)

Wilbert
21st April 2004, 09:41
In general, mpg files are mpeg1. So, if you add that, people get the impression that mpeg1 files are also supported. Which is false ...

What's wrong with renaming them, manually?

Boulder
21st April 2004, 10:51
Originally posted by Wilbert
In general, mpg files are mpeg1. So, if you add that, people get the impression that mpeg1 files are also supported. Which is false ...

What's wrong with renaming them, manually?

Hm, I didn't think of that. That's a strong point.

The request was just to make things a bit easier. There's no need to rename the files, I just have to select 'All files' and find the file I want to process. Sometimes there are a lot of files in the same directory with the captures and finding them can be a small PITA especially if they were not done recently:D

Cyberia
21st April 2004, 14:19
I agree with Wilbert... the mpg extension should not be added to the open dialog unless/until mpeg-1 support is added.

Wilbert
11th May 2004, 11:05
Not sure whether this is the development thread :)

I have a hdtv sample with two video streams. I can upload it somewhere if necessary?

vispgraedde
11th May 2004, 13:20
Originally posted by Cyberia
I agree with Wilbert... the mpg extension should not be added to the open dialog unless/until mpeg-1 support is added.

But .mpg is not mpeg-1 exclusive.

Guest
11th May 2004, 14:48
Originally posted by vispgraedde
But .mpg is not mpeg-1 exclusive. Right. And since we now reject MPEG-1 it is safe to add it to the list.

Guest
11th May 2004, 14:50
Originally posted by Wilbert
Not sure whether this is the development thread :)

I have a hdtv sample with two video streams. I can upload it somewhere if necessary? I'm releasing a beta of the transport stream support tonight, so you can test it yourself. :)

therealjoeblow
11th May 2004, 18:47
Originally posted by Boulder
Hm, I didn't think of that. That's a strong point.

The request was just to make things a bit easier. There's no need to rename the files, I just have to select 'All files' and find the file I want to process. Sometimes there are a lot of files in the same directory with the captures and finding them can be a small PITA especially if they were not done recently:D

On the 'Open' window, in the 'File name:' drop box, type '*.mpg', hit enter, and your file display will be filtered, then you can click whichever file you want.

CruNcher
11th May 2004, 22:30
- Bugfree PVA support :)
- Numerical Avg.Bitrate in Preview

Guest
12th May 2004, 01:00
Originally posted by CruNcher
Bugfree PVA support :)
http://www.technotrend.de/download/av_format_v1.pdf Sure, CruNcher. Give me a few days. :D

Got any streams for me? And your link is bad.

Guest
12th May 2004, 07:57
PVA support looks easy. I should be able to crank it out quickly. How do you want the audio demuxed? PES or ES?

DDogg
12th May 2004, 19:36
The text log report that rb's version makes would be a nice addition for me as it includes the ABR.

/Add: yes I should read better. Sorry. Still, ABR is not mentioned. Cyberia, could you add that to your list above?

zettai
12th May 2004, 20:05
Is it possible to have the option to change process priority during project file generation?

Thanks :)

Zep
12th May 2004, 20:12
Originally posted by Wilbert
Not sure whether this is the development thread :)

I have a hdtv sample with two video streams. I can upload it somewhere if necessary?


haha i sent DG one with 3 video and 2 audio and all are seen
as long as the PIDs are correct for the stream you want :)

what is funny you can grab the wrong audio if you
are not careful. fun to watch though when the audio has
absolutly nothing to do with what is happening on screen. :D

Cyberia
12th May 2004, 22:20
/Add: yes I should read better. Sorry. Still, ABR is not mentioned. Cyberia, could you add that to your list above?

Done.

FYI: I'll clean up the development list in a few days after I get back. I am currently distracted by surfer girls. :)

Wilbert
12th May 2004, 22:21
I tried it with a hdtv stream with two video streams. Work nice (all streams are detected and saved correctly).

Although a list of detected pids would be nice :)

There's one problem. If I open the avs script in wmp6.4, I see the following (it's the second video stream):

http://www.geocities.com/wilbertdijkhof/test.jpg

But it loads fine in vdubmod. So, I guess it's some colorspace conversion error? Strangely, the first stream shows up fine. If needed I can upload the clip somewhere.

zettai
12th May 2004, 22:25
Weird... that looks exactly like the kind of incorrectly decoded image you get when you try decoding YV12 without any YV12 decoders installed/registered... but if the first one works then I presume that's not the case.

How odd.

Wilbert
12th May 2004, 22:53
Weird... that looks exactly like the kind of incorrectly decoded image you get when you try decoding YV12 without any YV12 decoders installed/registered... but if the first one works then I presume that's not the case.

How odd.
I also don't get it. Looks like the delivered color format is different in both cases. Because adding ConvertToYUY2 after loading the second d2v, results in a script which loads fine in wmp6.4.

edit:

It's even weirder :) If I open the avs in wmp6.4 I got the green/purple picture, if I pauze it, minimize it, maximize it, then the picture shows up fine. However, if I press play again, it turns back to the green/purple stuff.

Let me first say that the second clip (720x480) is smaller than the first (1920x1088), probably not important. Maybe it's some memory buffer problem?

edit2: 10 Mb sample:
http://www.geocities.com/wilbertdijkhof/FaithHill10.ts

Moitah
13th May 2004, 00:37
I have the same problem when I try to play YV12. I think it's something to do with the overlay, if I change my display to 16 bit it works fine.

Guest
13th May 2004, 03:12
Guys, you're gonna get me grumpy!!!

PLEEZ Put bug reports in the release threads and feature requests here. Is it so hard?

Mtz
13th May 2004, 17:08
It is possible in the Preview Information window at "Avg. Bitrate" to see some numbers for the bitrate value (like in PowerDVD) ? Under that blue level bar, maybe ?
Also I want to thanks Donald for all his work. YOU are one of my "Video Gods".

10x, again!

DDogg
13th May 2004, 17:22
neuron2, please bear with some fuzzy thinking on my part. I am curious on your general feelings of 'rightness or wrongness' as it concerns whether an intelligent method to deal with problem sources like hard telecined, hybrid, weird PAL stuff from NTSC, etc. is appropriate for dvd2avidg in the future.

I ask because here you can actually 'see' the original structure of the source instead of the situation with decomb. Many times you ask users to send you a small piece of the source and you quickly answer, 'ABC, presto, here is how to do it', once you lay eyes on the source. Is this because the structure becomes evident to you based upon reports from tools used to analyze the source, or your brain and experience 'extrapolating' a solution for these problem sources? That's probably not very clear. In essence I am curious to know if you feel it is possible for a person such as yourself to program an AI that can automatically deal with nearly all sources based upon having access to the original source. To put that yet another fuzzy way, can the deinterlacing methods you are an expert in be broken down into some type of rule base that allows those rules to be applied in an automatic fashion for users with a tool users mentality?

Guest
13th May 2004, 18:50
@all

Requested noted. Will de discussed when 1.3.0 is released.

@DDogg

I have thought about this. I even made some flowcharts to document my analysis flow. Maybe I will publish them.

Regarding such functionality *within* DVD2AVI, no, I still regard the latter as basically a glorified stream indexer. It will be enhanced, however, to place the needed data in the index file (D2V). Then an external analysis tool can be used to inspect the video and generate suggestions.

Trahald
13th May 2004, 20:05
To be able to totally use the raw mode it would be helpful to have the nitty gritty of each frame.. tff bff rff is already given.. but not frame/field setting.. interlace/prog ... on a frame by frame basis... i think those are the main things i need in order to replicate the origional source from the RAW mode output. if this is already available.. point me there ;)

Guest
13th May 2004, 21:14
@trahald

In the very post above yours I indicate that it is coming!

Trahald
13th May 2004, 21:38
Originally posted by neuron2
@trahald

In the very post above yours I indicate that it is coming!

I read it as possibly such.. but I wanted to be 100 % clear. thanx a million. :D

Zeul
20th May 2004, 22:45
@neuron2

As per your suggestion what I would like to see in the log file is as follows:

FrameCount (D2VFrames)
Progressive Frame Count
Amount of TFF Frames and BFF Frames
Quantity of ZigZag Frames
FilmPercentage

GOP structure - Although not important at this stage

armed with this the correct CCE settings and field order diagnosis becomes quite straight forward.

Thanks
Zeul

Cyberia
20th May 2004, 22:46
Should I edit the dev list in this thread or start a new thread?

Guest
20th May 2004, 23:13
@Zeul

Thank you for your suggestions. Please tell me what you mean by a ZigZag frame.

@Cyberia

It would be nice to have a list that we keep up to date. Perhaps a link kept at the top of the thread. If you wanted to do that, I'm sure we all would greatly appreciate it. Well, anyway, I'm sure I would. :)

Zeul
20th May 2004, 23:49
>I meant ZigZag scanning or Alternate scanning.

OK. I'm curious as to how that assists you. Care to elaborate for us? Thank you.

Trahald
20th May 2004, 23:54
i presume he means % of frames encoded zigzag (as opposed to alternate scan)

generally interlace frames would be encoded alternate scan, and progresive encoded with zigzag but this is not always the case

Guest
21st May 2004, 03:00
Oh, OK, thanks. I didn't see your post before responding to Zeul because it was on the next page.

I'll get 1.3.0 out final and then for 1.4.0, I'll make the logging and upsampling high priorities.

Cyberia
21st May 2004, 17:35
In preparation for DGMPGDec 1.0, I have updated the Development list at the top of the thread. I believe it is complete and correct. Recent enhancement requests are at the bottom of the list. The list is not prioritized or ordered.

Please let me know if I missed anyone's request or suggestions.

vion11
25th May 2004, 16:53
I like the new naming scheme for DGMPGDec, has fixed ad hoc version conflicts.
Is it possible to include a -nongui option to commandline?
It will keep pc usable when indexing a lot of small files, if windows are suppressed.

Cyberia
25th May 2004, 18:12
@neuron2

-nogui ??? Sounds OK to me.

Also, if things fails from the CLI, there is no indication of why. I entered the wrong path and the GUI popped up, but nothing said "hey dummy, no such file exists!"

Guest
25th May 2004, 18:40
Originally posted by vion11
I like the new naming scheme for DGMPGDec, has fixed ad hoc version conflicts.
Is it possible to include a -nongui option to commandline?
It will keep pc usable when indexing a lot of small files, if windows are suppressed. It would be a major project, I'm afraid, which means it probably won't happen in your lifetime.

vion11
26th May 2004, 11:34
It would help when window is not visible only.

Guest
26th May 2004, 11:54
The main window could be started minimized or hidden. OK, I'll add it to the list.

Cyberia
1st June 2004, 04:04
These are very picky...

How about renaming the "Clipping" option to "Crop Filter" for consistency.

Also how about renaming "48->44.1KHz" to "48kHz -> 44.1kHz" (get the k's right, sheesh how did anyone EVER figure out how to use this with the k's wrong???!?!?! :) ) I realize this option may be removed soon anyway. Just wanted to post it for the record.

eb
1st June 2004, 05:54
@ Wilbert,

I am too short to take part in this advanced discussions, but I processed to .avi this sample:

http://www.geocities.com/wilbertdijkhof/FaithHill10.ts

and result you will find on:

ftp://www.eb.enterpol.pl
user: www.eb.enterpol.pl
password : eb
sample name Faith.avi 650kB
eb

Analise:Summary:

MPEG Transport Packets = 55775
PID 0000, Program Association Table packets = 11, total bytes = 2024
PID 0010, Other packets = 11, total bytes = 2024
PID 0011, Video stream 0 packets = 41512, total bytes = 7635091
PID 0014, Private Stream 1 packets = 1217, total bytes = 207728
PID 0020, Other packets = 11, total bytes = 2024
PID 0021, Video stream 0 packets = 10136, total bytes = 1862642
PID 0024, Private Stream 1 packets = 1216, total bytes = 207544
PID 0E00, Other packets = 29, total bytes = 5336
PID 0E01, Other packets = 11, total bytes = 2024
PID 0E02, Other packets = 11, total bytes = 2024
PID 0E03, Other packets = 11, total bytes = 2024
PID 0E88, Other packets = 14, total bytes = 2576
PID 0E89, Other packets = 5, total bytes = 920
PID 0E8A, Other packets = 6, total bytes = 1104
PID 0E8B, Other packets = 6, total bytes = 1104
PID 0F0A, Other packets = 21, total bytes = 3864
PID 1FFB, Other packets = 174, total bytes = 32016
PID 1FFF, Null packets = 1373, total bytes = 252632

EDITED:
PIDs that I can interpret:
PID 0011 main video stream
PID 0014 audio stream 1 AC3 2.0
PID 0024 audio stream 2 AC3 2.0 exactly the same as 0014 a little shorter
PID 0021 subpicture stream
PID 1FFF padded with null packets just to keep bandwidth