View Full Version : Question for neuron2!
cdrinfo
17th September 2005, 11:06
Hi there and thanks for your wonderful software. I have two questions for you:
a) I asked this over the Avisynth forum, and someone suggested i post the same question here...Is there any way when parsing the VOB->D2V to produce a file that contains information about the used bitrate of the movie? I would like a Avisynth DLL file for this purpose but i guess DGIndex can do this too... :devil:
b) I am using DGDecode to make D2V from VOB...Is there any chance that you can upgrade the DLL file to support direct VOB import (that produces automatically D2V files), instead of manually doing VOB->DGIndex->D2V etc...? ;)
Guest
17th September 2005, 13:17
a) It would not be hard to add that to the DGDecode info display and/or write it to a file. The main question is the window over which it is defined. You could report the bit rate per entire move, per sequence, per N pictures, per picture. What specifically did you require?
b) That's on the development list already but it doesn't have a high priority.
mg262
18th September 2005, 23:19
b) I am using DGDecode to make D2V from VOB...Is there any chance that you can upgrade the DLL file to support direct VOB import (that produces automatically D2V files), instead of manually doing VOB->DGIndex->D2V etc...? You can do this with an AVISynth script function. Since DGIndex can be invoked from the command line, and there are AVISynth plug-ins that will run a commandline program, you need to make the script call DGIndex and then open the resulting D2V file.
Are you dealing with an episodic source or some other material that requires indexing a large number of files?
cdrinfo
19th September 2005, 21:16
Hi neuron2 and thanks for your answer.
1) I would like to create some graphs about the used bitrate of specific d2v projects (that comes from VOB files), Bitrate vs Capacity (or time), i think a moving average mark would be enough so we have a smooth bitrate line, don't you think? Now if that would be per frame/cell/movie, probably just make some option for this, or whats easier for you.
2) Hopefully will come one day!
@mg262, can you please give me an example how can I do this? I have a specific DVD9 movie that used by several DVD Transcoders to shrinked down to DVD5
mg262
19th September 2005, 21:27
Well, the exact command line arguments that you should use depend on your project. For what it's worth, these are the batch files I use for commandline invocation on my current project:
index.bat:
C:\Capture\dgmpgdec144rc1\DGIndex.exe -OM 0 -IF=[E:\dub\dvd\BS_%2\VTS_01_PGC_%3_1.VOB] -OF=[%1 dvd] -EXIT
indexall.bat:
call index 1 1 03
call index 2 1 04
call index 3 1 05
call index 4 1 06
call index 5 1 10
...
So you will first want to figure out the command line that you should be using for your particular project; then you can either put that in a batch file or invoke it directly. In order to run a system command from AVISynth, you can use either the Call plug-in by Nic or the Run plug-in.The simplest script would look like this:
Run("index.bat " + filename)# create d2v file
MPEG2source(...)
(here index.bat just takes one argument and calls DGIndex)
Now this has the downside that it will recreate the d2v file everytime the script is run. It may be that there are DGIndex commandline parameters you can use to prevent the d2v file being created if it already exists; if not you will need to use a mechanism that checks if the file exists, which may need another plug-in (which wouldn't be too hard to write). Given a hypothetical plug-in FileExists, returning a Boolean value, you would write something like this:
FileExists("whatever.d2v") ? 0 :Run("index.bat " + filename)# create d2v file if it doesn't exist
MPEG2source(...)
I have a specific DVD9 movie that used by several DVD Transcoders to shrinked down to DVD5I'm sorry, I don't understand this comment. The particular issue I was trying to get that was why you found it was awkward to create the .d2v manually.for the
Edit: from the documentation
Exist (filename): returns TRUE or FALSE after checking if the file exists.
Please be warned that I haven't checked the above (pseudo-)scripts...
Trahald
19th September 2005, 22:42
i started working on something to get the bitrate using the .d2v.. its doable at the gop level since all versions of dvd2avi/dgindex give the location of the start of the gop. (dgindex gives it byte accurate and dvd2avi gives it sector (2048bytes) accurate).. you have that and the frame rate (you have to factor in fake fields caused by RFF).. i got it working fairly reliably... (well.. at least if iirc.. i havent messed with the code for a couple weeks and wast done)... of course having that built in would be really nice...
gop accuracy should be good enough to figure it out for other intervals (with a very high but possibly not perfect accuracy)
Guest
19th September 2005, 23:18
i started working on something to get the bitrate using the .d2v For program streams, that's OK if you want the audio included. For transport streams, you're in trouble if there are mutiple programs.
cdrinfo
20th September 2005, 22:18
@ Trahald, so if i understood correctly, you have made a custom version of DGIndex that can report Bitrate?
@ neuron2, any time frame of the bitrate feature officially added to the DGIndex software?
@mg262, thanks for the tip, i will try it later today
Trahald
21st September 2005, 01:20
@cdrinfo
no.. i use the info already in the .d2v file to determine bitrate. as neuron2 points out that method is best for elementary streams (which is what i use it for) and so-so for program streams as it includes the audio(s).
cdrinfo
21st September 2005, 06:48
@ Trahald, i see, so have you created a special software for that purpose or its another method?
vBulletin® v3.8.11, Copyright ©2000-2026, vBulletin Solutions Inc.