View Full Version : DGAVCDec 1.0.9


Pages : [1] 2

Guest
23rd February 2007, 01:45
I have created an Avisynth source filter for AVC/H.264 streams. I would appreciate feedback and suggestions for the most important features to add. At this point it is fast and reliable but limited in functionality. I need your guidance to prioritize future work. I also ask to be notified about any streams that are problematic with DGAVCDec.

Please read the help file carefully, especially the part about DLL loading.

Thanks to Michael Niedermayer for helping me to understand low-level accessing of libavcodec.

Guest
23rd February 2007, 03:06
I had a bad version up there for a while. If you get a stack overflow, please re-download.

Why do people make streams with 500-frame GOPs? :)

akupenguin
23rd February 2007, 03:47
Because they don't seek very often, so a fraction of a % bitrate is worth adding a few cpu-seconds to the seek cost.
Because movies have some 500-frame scenes, and it looks bad to put an I-frame in the middle of a scene (if the encode isn't already transparent quality).

cacepi
23rd February 2007, 03:57
Please read the help file carefully, especially the part about DLL loading.
Avisynth open failure:
LoadPlugin: Unable to load "C:\Program Files\AviSynth\plugins\DGAVCDecode.dll"

AviSynth script (2.5.7) on Windows XP SP2:

LoadPlugin("C:\Program Files\AviSynth\plugins\DGAVCDecode.dll")

AVCSource("C:\Projects\Test\07OP_track1.dga")

All the dlls are under AviSynth's load path, and commenting out LoadPlugin() gives the same error message. Directly loading all the dlls in the script don't seem to help either. What am I doing wrong?

check
23rd February 2007, 05:15
It seems to break when the path length is >256chars :)

Very nice plugin though, I am looking forward to using it for real encodes :)

Hans Ohlo
23rd February 2007, 13:27
if it is based on libavcodec, paff decoding is not implemented (just mentioning this).

Guest
23rd February 2007, 14:25
Avisynth open failure:
LoadPlugin: Unable to load "C:\Program Files\AviSynth\plugins\DGAVCDecode.dll"

AviSynth script (2.5.7) on Windows XP SP2:

LoadPlugin("C:\Program Files\AviSynth\plugins\DGAVCDecode.dll")

AVCSource("C:\Projects\Test\07OP_track1.dga")

All the dlls are under AviSynth's load path, and commenting out LoadPlugin() gives the same error message. Directly loading all the dlls in the script don't seem to help either. What am I doing wrong? I don't know what you mean by "Avisynth's load path". You have to follow Windows DLL loading rules. Try putting them in the same directory as DGAVCDecode.dll or even Windows/System32.

You can't load these DLLs with LoadPlugin.

Guest
23rd February 2007, 14:27
It seems to break when the path length is >256chars :) Stupid Windows Platform SDK. I'll fix that. Thank you for pointing it out.

holzi
23rd February 2007, 14:37
the plugin loaded once for me then I too get can't load plugin.
And I seem to have decoding problems. I think or I did mess up with mkvextract or I hit a b-frame or something not that good in this stuff :)
Anyway it's a x264 encoding so some features of x264 are not implementet in libavcodec yet or something
http://img242.imageshack.us/img242/8461/avcsoucegs6.th.jpg (http://img242.imageshack.us/my.php?image=avcsoucegs6.jpg)

Edit ok just checked using DirectShowSource and that decodes fine. So I guess it's a decoding problem.
Runtine is wrong too.

http://img242.imageshack.us/img242/9233/directshowfo8.th.jpg (http://img242.imageshack.us/my.php?image=directshowfo8.jpg)

Guest
23rd February 2007, 14:44
the plugin loaded once for me then I too get can't load plugin. Where did you put the DLLs and where did you put the plugin itself?

And I seem to have decoding problems. Please post a link to a fragment of the .264 stream.

holzi
23rd February 2007, 14:54
Where did you put the DLLs and where did you put the plugin itself?

Please post a link to a fragment of the .264 stream.

I put everything in the avisynth plugin directory.

http://archiv.to/?Module=Details&HashID=FILE45DF328C22BB7
I don't know how to split raw x264 files. So I uploaded a mkv. I guess mkvextract just dosn't extract it right or something. But I don't know anything else right now do extract the video stream.

unskinnyboy
23rd February 2007, 14:58
Great stuff, DG! Works fine with the test files supplied. Will test with other stuff later and report bugs, if any. :thanks:

Guest
23rd February 2007, 15:04
I put everything in the avisynth plugin directory. Take them out of there and put them in /Windows/System32. In the next beta, I will improve things in that regard.

I'm uploading a sample right now. Thank you.

Guest
23rd February 2007, 15:07
http://archiv.to/?Module=Details&HashID=FILE45DF328C22BB7
I don't know how to split raw x264 files. So I uploaded a mkv. I guess mkvextract just dosn't extract it right or something. But I don't know anything else right now do extract the video stream. I don't have mkvextract. But I don't get it...if you can upload the MKV, why can't you upload the 264 extracted from it?

holzi
23rd February 2007, 15:10
I don't have mkvextract. But I don't get it...if you can upload the MKV, why can't you upload the 264 extracted from it?

The orginal is 50MB that's a little to big.
Give me a hint how to make a segment of the x264.
And I will upload that too

Guest
23rd February 2007, 15:11
Can't you just extract the 264 from the MKV you uploaded?

holzi
23rd February 2007, 15:15
har har of cause I can :) Should get some sleep :)
Just one moment:
Here you go: http://archiv.to/?Module=Details&HashID=FILE45DF3796A66A0

Zarxrax
23rd February 2007, 15:19
neuron2, I love you :D
I'll start testing this a lot this weekend!

Guest
23rd February 2007, 15:29
har har of cause I can Thanks. I have it and have duplicated the issue. Obviously, I haven't done all my homework on H.264. I don't know why the DGA file shows multiple pictures with the same POC. I'll review the H.264 specs and try to figure this out tonight.

EDIT: Had a quick look but have to go to work now. There are SEI NALUs before each picture slice. My implementation doesn't inject the SEIs into the decoder. I assume that is the problem and it can be fixed easily. I'll be curious tonight to see what is in those SEIs.

Kurth
23rd February 2007, 20:00
Well I copied the files:

avcodec-51.dll, avformat-51.dll and avutil-49.dll to C:\windows\system32

DGAVCDecode.dll to C:\Program Files\AviSynth 2.5\plugins

And the plugin load without any problems.

But I got some problems with files that dont have a MOD 16 resolution and files that was encoded with more than 1 slice.

Video with non mod 16 resolution
http://img152.imageshack.us/img152/1587/video01bh7.jpg

Video decoding error with AVCSource on a non mod 16 resolution
http://img152.imageshack.us/img152/2619/error01rw9.jpg

Raw 264 file download of the non mod 16 resolution file
http://www.mytempdir.com/1228817

Video encoded with two slices
http://img152.imageshack.us/img152/104/video02vh7.jpg

Video decoding error with AVCSource on a file encoded with two slices
http://img81.imageshack.us/img81/2011/error02do9.jpg

Raw 264 file download of the file encoded with two slices
http://www.mytempdir.com/1228821

Thank you very much for this AVCSource filter it is really more fast to decode H264 streams than using DirectShowSource. This filter just need some little fixes to work perfectly ^_^

Guest
23rd February 2007, 20:24
@Kurth

Thank you for the problematic streams. That is just what I need to iron out the wrinkles. I have only x264-generated streams to work with until now. They all worked fine. I will fix this for future releases.

guada2
23rd February 2007, 20:45
@neuron2

Great work.
But i don't have real index as your demo with sonic cinevision.


Just that:
DGAVCIndexFile1

C:\Documents and Settings\Administrateur\Mes documents\CineVision Encodes\untitled1.264

SPS 6
FPS 50000 / 2000
PPS 67
SIZ 720 x 576
IDR 117 0
PPS 749843
PPS 1499831 and etc..........

Thanks.

MatMaul
23rd February 2007, 20:52
Seems to do not work with mbaff streams :
http://www.mytempdir.com/1228896
http://www.mytempdir.com/1228934
The playback simply doesn't begin.

I can play this streams with mplayer.

Guest
23rd February 2007, 21:43
But i don't have real index as your demo with sonic cinevision To help you, I need the 264 stream. Thank you.

tomos
23rd February 2007, 21:49
is there a way to check if the video is mbaff or not?

the first i have tried doesnt work for me. (raw 264 demuxed via mplayer from TS)

i tried the test file supplied with dgavc and the raw file. both are accepted and indexed with no probs at all.

i have 2 files, raw.dga and test.dga

with the same avs script:

AVCSource("whatever.dga")

the test works fine in vdub, but the demuxed video gives errors saying it cant load the dll file - DGAVCDecode.dll

then i try again and all of a sudden it loads in vdub. but if i move forward one frame forward then vdub closed itself down instantly. no errors, just gone. same if i drop the avs onto mpc.

i will try other files and test them

Guest
23rd February 2007, 21:55
@tomos

We are in a mode of fixing support for different streams. So you have to give me the streams if you want them to be supported. I can't wave a magic wand; I have to analyze the stream to see what features I am missing.

Regarding the DLL loading, please take them (but not DGAVCDecode.dll!) out of your Avisynth plugins folder (or whatever) and put them into /Windows/System32 as I said in an earlier post.

MeteorRain
24th February 2007, 15:50
Fantastic works!

Well btw, is it about to support index and read avc-in-mp4?

tomos
24th February 2007, 15:51
sample 1 (this indexes ok but crashes MPC/vdub etc)

http://www.mytempdir.com/1229927

sample 2 (this also indexes fine but shows as 0 frames in vdub - there's over a 1000 in the sample)

http://www.mytempdir.com/1229952

unskinnyboy
24th February 2007, 16:01
I did some poking around. DGAVCDEC was able to index the raw AVC stream of a full length movie encode just fine. I muxed the same stream into different containers and tried those next. The AVI one also got indexed fine, but I faced problems with the MP4 and the MKV one. For MKV, I get an 'undefined level' and the MP4 just crashes DGAVCDEC kicking off the Dr. Watson debugger. Not sure if you wanted a sample?

Looks like the SPS, PPS, IDR values are container dependent because they are different in the dga files of the raw AVC and the AVC in AVI one. But both decoded just fine.

bob0r
24th February 2007, 16:11
http://x264.nl/h.264.samples/

Many different satellite streams, all H.264.
If all those work, we are finally getting somewhere with H.264

Hopefully, unlike mkvtoolnix, 10+GB files are not a problem with this filter.


Time i have not, bandwidth i have..... enjoy testing :p

bond
24th February 2007, 17:13
Fantastic works!

Well btw, is it about to support index and read avc-in-mp4?i dont think its necessary to index mp4, as mp4 has an index

Guest
24th February 2007, 17:15
@MeteorRain

Of course! But you have to walk before you can run.

@bond

The idea is to support the container so that demuxing is not required.

@tomos

Thank you. Your streams are in the hopper for analysis.

@unskinnyoby

As stated in the help file, only ES is currently supported.

@bob0r

Thank you. I will test those streams.

@all

I have enough streams to fix for now. Please defer further reports until the next beta.

leiming2006
25th February 2007, 06:11
This filter didn't work well here.

this is avs script:

fs="F:\11.dga"
loadplugin("d:\avs\DGAVCDecode.dll")
avcsource(fs)

and this is the error:
http://img246.imageshack.us/img246/6516/untitledgt9.jpg (http://imageshack.us)

Guest
25th February 2007, 14:23
It's not finding the DLLs. Please read this thread carefully.

guada2
25th February 2007, 14:51
@neuron2
If that can help you

a new encode, index result:

DGAVCIndexFile1

C:\Documents and Settings\Administrateur\Mes documents\CineVision Encodes\untitled2_HD DVD.264

SPS 6
FPS 50000 / 2000
PPS 67
SIZ 720 x 576
IDR 118 0
IDR 10585 0
IDR 32544 0
IDR 63175 0
PPS 913983 3 3 3
PPS 1505271 1 1 1
PPS 1539872 2 2 2
PPS 1738726 6 6 6
PPS 2152264 4 4 4
PPS 2250865 5 5 5
PPS 2353539 9 9 9
PPS 2776117 7 7 7
PPS 2882828 8 8 8
PPS 30227811 11 11 11
PPS 33899610 10 10 10
SPS 348139
PPS 348200
IDR 348250 0
IDR 359262 0
IDR 384369 0
IDR 418322 0
PPS 4456923 3 3 3
PPS 4883971 1 1 1
PPS 5014982 2 2 2
PPS 5164846 6 6 6
PPS 5604724 4 4 4
PPS 5719815 5 5 5
PPS 5850789 9 9 9
PPS 6320897 7 7 7
PPS 6440878 8 8 8
PPS 65776211 11 11 11
PPS 70308510 10 10 10 etc.....

for more informations:
look at this link: http://profile.imageshack.us/prefs/index.php
(if there is no reaction, use Google).

orbitlee
25th February 2007, 16:19
@neuron2:

Thanks for the effort.
I don't know whether you have already received any samples from BBC HD, but the fact is, there is no IDR frame in BBC HD at all. I'll send sample if you want.

Guest
25th February 2007, 17:55
Thank you. I'll ask for it later. I have my hands full right now fixing issues with libavcodec.

Blue_MiSfit
25th February 2007, 23:45
Thanks neuron2!

Amazing results, I get between 80fps (for complex scenes) and 130fps (for black and credits etc) decoding speed, compared to 60-110fps for directshowsource("F:\Movies\The Departed.mkv", fps=23.976, convertfps=true), which uses haali's splitter, and ffdshow for decoding.

Note that my source was made by x264, it's high profile with CABAC, 704x352, 4 references, default matrix. My most recent backup actually, which I was very VERY happy with the results... I was able to improve image quality over the source with some gentle denoising and sharpening - AND reduce the file size by about 75% (2.2 GB vs ~9GB)

Impressive results! Of course, the added time to demux and index sort of negates any advantage this might present, but I'm always happy to not use DirectShow!

A welcome addition to our swiss army frameserver :D

~MiSfit

Sgt_Strider
25th February 2007, 23:57
Please excuse my stupidity, but what is this filter for?

Guest
26th February 2007, 00:06
Of course, the added time to demux and index sort of negates any advantage this might present, but I'm always happy to not use DirectShow! DGAVCIndex will of course have a preview like DGIndex and it will accept the container formats directly. Right now, I am getting the decoding correct. There are some problems with the interface to libavcodec, but Michael and I are working them out.

Thank you for your test results.

leiming2006
26th February 2007, 07:02
wonderful filter!~
it works quite well this time.
thanks.
not only the .264 file in package, my own .264 file (encoded by x264) is read successfully.

Guest
26th February 2007, 15:11
Please excuse my stupidity, but what is this filter for? It is intended to not only be faster than typical DirectShow filters invokable by DirectShowSource(), but also to implement random access (seeking) in a fully correct way, something that the DirectShow filters tend to be very weak at. Also, when mature, the toolset will offer useful features such as those already available for MPEG1/2 in DGMPGDec.

Ask yourself why most people choose DGDecode for DVD processing rather than DirectShowSource().

guada2
26th February 2007, 22:47
orbitlee,

I don't know whether you have already received any samples from BBC HD, but the fact is, there is no IDR frame in BBC HD at all. I'll send sample if you want.

there is no IDR frame in BBC HD at all.

Interesting to know that, But why and why not (specific to BBC or all Great Channel) ???

Please, Could you precise more?
:thanks:

Blue_MiSfit
27th February 2007, 04:07
DGAVCIndex will of course have a preview like DGIndex and it will accept the container formats directly. Right now, I am getting the decoding correct. There are some problems with the interface to libavcodec, but Michael and I are working them out.

Thank you for your test results.

No problem! I look forward to a full-on DGIndex work-alike :D

~MiSfit

orbitlee
27th February 2007, 04:26
orbitlee,



there is no IDR frame in BBC HD at all.

Interesting to know that, But why and why not (specific to BBC or all Great Channel) ???

Please, Could you precise more?
:thanks:


It's just an observation, I don't know why streams from BBC don't have IDR too. Verified for about 5-6 clips(all I have) from BBC.
No idea how to precise more. Any way, I will upload the sample and post the link at here later.

guada2
27th February 2007, 13:57
OK orbitlee.

Any way, I will upload the sample and post the link at here later.

Thanks.

kraftfahrer
27th February 2007, 20:16
Source ts (Astra 19.2 - Sat.1 HD) : http://ultrashare.de/f/6720/sat1hd20070209blitz4.ts.html
The same, but demuxxed 264 : http://archiv.to/?Module=Details&HashID=FILE45E4CD53EDA2D


Source Stream Info Pictures:
http://img16.imagevenue.com/loc253/th_01017_tsc_01_122_253lo.jpg (http://img16.imagevenue.com/img.php?image=01017_tsc_01_122_253lo.jpg)http://img172.imagevenue.com/loc72/th_01022_tsc_02_122_72lo.jpg (http://img172.imagevenue.com/img.php?image=01022_tsc_02_122_72lo.jpg)http://img168.imagevenue.com/loc129/th_01025_tsc_03_122_129lo.jpg (http://img168.imagevenue.com/img.php?image=01025_tsc_03_122_129lo.jpg)http://img150.imagevenue.com/loc7/th_01027_tsc_04_122_7lo.jpg (http://img150.imagevenue.com/img.php?image=01027_tsc_04_122_7lo.jpg)


after demuxxing error in the lower left.

http://img147.imagevenue.com/loc171/th_05298_gdavc_dem_122_171lo.jpg (http://img147.imagevenue.com/img.php?image=05298_gdavc_dem_122_171lo.jpg)

Inventive Software
27th February 2007, 23:21
Hey Donald, is this planned to be integrated into DGIndex, so's H.264 TS streams are workable in that then?

steve77
28th February 2007, 00:14
I tried loading an *.mp4 file in the DGAVCIndex program and it didn't wanna go. I encoded it originally with meGui.

I get the error: "Undefined Level"

Guest
28th February 2007, 00:17
Hey Donald, is this planned to be integrated into DGIndex, so's H.264 TS streams are workable in that then? No, it will be DGAVCIndex. But that will (it is hoped) support containers including transport at a later time. Right now, I need to get the ES decoding shaken out.

Guest
28th February 2007, 00:20
I tried loading an *.mp4 file in the DGAVCIndex program and it didn't wanna go. I encoded it originally with meGui.

I get the error: "Undefined Level" The help file says ES only, and a response here says it too.

I'll say it again:

FOR NOW ONLY ELEMENTARY STREAMS ARE SUPPORTED. THAT MEANS NO CONTAINERS ARE YET SUPPORTED. THIS WILL CONTINUE TO BE THE CASE UNTIL THE ES DECODING IS STABLE. THANK YOU FOR YOUR UNDERSTANDING AND PLEASE DO NOT REPORT IT AS A BUG.

steve77
28th February 2007, 00:31
The help file says ES only, and a response here says it too.

I'll say it again:

FOR NOW ONLY ELEMENTARY STREAMS ARE SUPPORTED. THAT MEANS NO CONTAINERS ARE YET SUPPORTED. THIS WILL CONTINUE TO BE THE CASE UNTIL THE ES DECODING IS STABLE. THANK YOU FOR YOUR UNDERSTANDING AND PLEASE DO NOT REPORT IT AS A BUG.

My apologies... bear in mind that not everybody has full knowledge of the ins and outs of video encoding. I was just trying to be helpful, and as your DGIndex software takes VOBs, I figured it would be the same.

Big fan of your work, sorry for the inconvenience.

guada2
28th February 2007, 01:18
@steeve and neuron2

FOR NOW ONLY ELEMENTARY STREAMS ARE SUPPORTED. THAT MEANS NO CONTAINERS ARE YET SUPPORTED. THIS WILL CONTINUE TO BE THE CASE UNTIL THE ES DECODING IS STABLE. THANK YOU FOR YOUR UNDERSTANDING AND PLEASE DO NOT REPORT IT AS A BUG.

I had the same problem with a specific files:
DGAVCIndexFile1

C:\Documents and Settings\Administrateur\Mes documents\elecard xmuxer pro 2\BBC HD.264

But it is not a container. but a BBC HD ts movie.

I import it in Xmuer pro 2. it is OK.
My problem: i would like to decrypt index file (.mlmix) Xmuxer pro as a notepad (.txt)

Neuron, is it possible or not?

thanks

Guest
28th February 2007, 01:23
My problem: i would like to decrypt index file (.mlmix) Xmuxer pro as a notepad (.txt) Totally off topic for this thread. Ask Elecard support.

Inventive Software
28th February 2007, 02:35
What the....? 15 MB? What did ya do, include some sample streams? :p

EDIT: It appears YES! :D

theturtle
28th February 2007, 17:52
anyone else have any problems with this and demuxed evos? if i demux an evo with evodemux or dvbportal dump, and index it. I try to load an avs in virtualdub and I can't view the video. No errors to say of , but it only says there's 15 frames and I can't play or seek the video. Odd :s

The resulting file from both demux and dump SHOULD be a h.264 es I do believe. :s

Both of these files load fine with directshowsource.(well if i put them in mkv or mp4 first)

Guest
28th February 2007, 18:32
If You Want To Post About A Problematic Stream, I Will Ignore Your Post Unless You Include A Link To A Fragment Of The Stream That I Can Use To Reproduce Your Issue.

theturtle
1st March 2007, 07:01
sry neuron2 , I'm working on putting together a small clip of it. Not sure how to clip a h.264 es, perhaps I can if i mux it to mp4 first.

*edit* pm'd u link

*edit* oddly this new sample i created and sent u is not indexable :s

guada2
1st March 2007, 13:18
Totally off topic for this thread. Ask Elecard support.

Ok, it is not a "real" problem.

Later, neuron2 for others questions :)

guada2
1st March 2007, 14:47
@neuron2

Hey, neuron your Dgindex is very good :)

look at two examples:

The first (norm encode test):
DGAVCIndexFile1

C:\Documents and Settings\Administrateur\Mes documents\2 TESTS DGAVCIndex\testavc1.264

SPS 0
FPS 50 / 2
PPS 14
SIZ 352 x 288
IDR 22 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114

The second:
1280*720 / YUV 4.2.0 10 bits / stream size (3615) / Ref Frame(Pred L0, Pred L1) / H264/AVC HP 10 level4

DGAVCIndexFile1

C:\Documents and Settings\Administrateur\Mes documents\2 TESTS DGAVCIndex\testavc2.264

SPS 0
FPS 50 / 2
PPS 86
SIZ 1280 x 720
IDR 95 0 2 1 4 3 6 5 8 7 10 9 12 11 14 13 16 15 18 17 20 19 22 21 24 23 26 25 28 27 30 29 32 31 34 33 36 35 38 37 40 39 42 41 44 43 46 45 48 47 50 49 52 51 54 53 56 55 58 57 60 59 62 61 64 63 66 65 68 67 70 69 72 71 74 73 76 75 78 77 80 79 82 81 84 83 86 85 88 87 90 89 92 91 94 93 96 95 98 97 100 99 102 101 104 103 106 105 108 107 110 109 112 111 114 113 116 115 118 117

Guest
1st March 2007, 14:58
It depends on the stream. Currently it indexes only IDRs as seek points. But it needs to index recovery point SEIs as well. I'm working on it. More important right now is getting the decoding to work properly. There is an issue with feeding individual NALUs into libavcodec.

guada2
1st March 2007, 15:18
However , i have a problem.
I have a video file H264/AVC.ts from BBS HD, and i would like transform it to (Es).

Information from ECS:
-File size: 119,3 Mo
-VIDEO:AVC/H264 (1440*1080 25fps)
-AUDIO: AC3 Stereo (48.0 Khz)
-Stream: TS
-Duration: 40s

ECS accept my proposition (Ts to Es) but in fact, it didn't change anything.
I don't know if Procoder3 could to do it.
Someone have an idea?

Guest
1st March 2007, 15:31
@guada2

Again off topic for this thread. Stop it.

guada2
1st March 2007, 15:49
Sorry,
I'm very sorry neuron2.....

Just to say your soft is great
another test: a reencode ED mpeg2 HD from Drmpeg

DGAVCIndexFile1

C:\Documents and Settings\Administrateur\Mes documents\TEST H264\encode_ED 1080p.h264

SPS 6
FPS 27000000 / 1124998
PPS 48
SIZ 1920 x 1088
IDR 92 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22
SPS 759926
PPS 759968
IDR 760010 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32
SPS 1856479
PPS 1856521
IDR 1856562 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32
SPS 2932492
PPS 2932534
IDR 2932575 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31

Sorry again.
Mario. Bye.

guada2
2nd March 2007, 02:38
@neuron2
Could you explain me this index, please?

DGAVCIndexFile1

C:\Documents and Settings\Administrateur\Mes documents\logiciel\filmdemuxelecard.h264

SPS 6
FPS 50 / 2
PPS 37
SPS 3038664
PPS 3038695
SIZ 1920 x 1088
IDR 3038703 0
IDR 3049399 0
IDR 3060430 0
IDR 3071098 0
IDR 3079634 0
IDR 3090816 0
SPS 3104881
PPS 31049120 0 0 0 0 0 1 1 1 1 1 1 1 1 1 1 1 1 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 3 3 3 3 3 3 3 4 4 4 4 4 4 4 4 4 4 4 4 5 5 5 5 5 5 5 5 5 5 5 5 6 6 6 6 6 6 6 6 6 6 6 6 7 7 7 7 7 7 7 7 7 7 7 7 8 8 8 8 8 8 8 8 8 8 8 8 9 9 9 9 9 9 9 9 9 9 9 9 10 10 10 10 10 10 10 10 10 10 10 10 11 11 11 11 11 11 11 11 11 11 11 11 12 12 12 12 12 12 12 12 12 12 12 12 13 13 13 13 13 13 13 13 13 13 13 13 14 14 14 14 14 14 14 14 14 14 14 14 15 15 15 15 15 15 15 15 15 15 15 15 16 16 16 16 16 16 16 16 16 16 16 16 17 17 17 17 17 17 17 17 17 17 17 17 18 18 18 18 18 18 18 18 18 18 18 18 19 19 19 19 19 19 19 19 19 19 19 19 20 20 20 20 20 20 20 20 20 20 20 20 21 21 21 21 21 21 21 21 21 21 21 21 22 22 22 22 22 22 22 22 22 22 22 22 23 23 23 23 23 23 23 23 23 23 23 23 24 24 24 24 24 24 24 24 24 24 24 24 25 25 25 25 25 25 25 25 25 25 25 25 26 26 26 26 26 26 26 26 26 26 26 26 27 27 27 27 27 27 27 27 27 27 27 27 28 28 28 28 28 28 28 28 28 28 28 28 29 29 29 29 29 29 29 29 29 29 29 29 30 30 30 30 30 30 30 30 30 30 30 30 31 31 31 31 31 31 31 31 31 31 31 31 32 32 32 32 32 32 32 32 32 32 32 32 33 33 33 33 33 33 33 33 33 33 33 33 34 34 34 34 34 34 34 34 34 34 34 34 35 35 35 35 35 35 35 35 35 35 35 35 36 36 36 36 36 36 36 36 36 36 36 36 37 37 37 37 37 37 37 37 37 37 37 37 38 38 38 38 38 38 38 38 38 38 38 38 39 39 39 39 39 39 39 39 39 39 39 39 40 40 40 40 40 40 40 40 40 40 40 40 41 41 41 41 41 41 41 41 41 41 41 41 42 42 42 42 42 42 42 42 42 42 42 42 43 43 43 43 43 43 43 43 43 43 43 43 44 44 44 44 44 44 44 44 44 44 44 44 45 45 45 45 45 45 45 45 45 45 45 45 46 46 46 46 46 46 46 46 46 46 46 46 47 47 47 47 47 47 47 47 47 47 47 47
SPS 6405758
PPS 6405789
IDR 6405797 0
IDR 6414822 0
IDR 6430342 0
IDR 6445622 0
IDR 6459380 0
IDR 6477855 0
SPS 6494543
PPS 64945740 0 0 0 0 0 1 1 1 1 1 1 1 1 1 1 1 1 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 3 3 3 3 3 3 3 4 4 4 4 4 4 4 4 4 4 4 4 5 5 5 5 5 5 5 5 5 5 5 5 6 6 6 6 6 6 6 6 6 6 6 6 7 7 7 7 7 7 7 7 7 7 7 7 8 8 8 8 8 8 8 8 8 8 8 8 9 9 9 9 9 9 9 9 9 9 9 9 10 10 10 10 10 10 10 10 10 10 10 10 11 11 11 11 11 11 11 11 11 11 11 11 12 12 12 12 12 12 12 12 12 12 12 12 13 13 13 13 13 13 13 13 13 13 13 13 14 14 14 14 14 14 14 14 14 14 14 14 15 15 15 15 15 15 15 15 15 15 15 15 16 16 16 16 16 16 16 16 16 16 16 16 17 17 17 17 17 17 17 17 17 17 17 17 18 18 18 18 18 18 18 18 18 18 18 18 19 19 19 19 19 19 19 19 19 19 19 19 20 20 20 20 20 20 20 20 20 20 20 20 21 21 21 21 21 21 21 21 21 21 21 21 22 22 22 22 22 22 22 22 22 22 22 22 23 23 23 23 23 23 23 23 23 23 23 23 24 24 24 24 24 24 24 24 24 24 24 24 25 25 25 25 25 25 25 25 25 25 25 25 26 26 26 26 26 26 26 26 26 26 26 26 27 27 27 27 27 27 27 27 27 27 27 27 28 28 28 28 28 28 28 28 28 28 28 28 29 29 29 29 29 29 29 29 29 29 29 29 30 30 30 30 30 30 30 30 30 30 30 30 31 31 31 31 31 31 31 31 31 31 31 31 32 32 32 32 32 32 32 32 32 32 32 32 33 33 33 33 33 33 33 33 33 33 33 33 34 34 34 34 34 34 34 34 34 34 34 34 35 35 35 35 35 35 35 35 35 35 35 35 36 36 36 36 36 36 36 36 36 36 36 36 37 37 37 37 37 37 37 37 37 37 37 37 38 38 38 38 38 38 38 38 38 38 38 38 39 39 39 39 39 39 39 39 39 39 39 39 40 40 40 40 40 40 40 40 40 40 40 40 41 41 41 41 41 41 41 41 41 41 41 41 42 42 42 42 42 42 42 42 42 42 42 42 43 43 43 43 43 43 43 43 43 43 43 43 44 44 44 44 44 44 44 44 44 44 44 44 45 45 45 45 45 45 45 45 45 45 45 45 46 46 46 46 46 46 46 46 46 46 46 46 47 47 47 47 47 47 47 47 47 47 47 47
SPS 9573645
PPS 9573676
IDR 9573684 0
IDR 9578658 0
IDR 9590540 0
IDR 9599746 0
IDR 9607468 0
IDR 9618724 0
SPS 9627813
PPS 96278440 0 0 0 0 0 1 1 1 1 1 1 1 1 1 1 1 1 2 2 2 2 2 2 5 5 5 5 5 5 3 3 3 3 3 3 4 4 4 4 4 4 8 8 8 8 8 8 6 6 6 6 6 6 7 7 7 7 7 7 11 11 11 11 11 11 9 9 9 9 9 9 10 10 10 10 10 10 14 14 14 14 14 14 12 12 12 12 12 12 13 13 13 13 13 13 17 17 17 17 17 17 15 15 15 15 15 15 16 16 16 16 16 16 20 20 20 20 20 20 18 18 18 18 18 18 19 19 19 19 19 19 23 23 23 23 23 23 21 21 21 21 21 21 22 22 22 22 22 22 26 26 26 26 26 26 24 24 24 24 24 24 25 25 25 25 25 25 29 29 29 29 29 29 27 27 27 27 27 27 28 28 28 28 28 28 32 32 32 32 32 32 30 30 30 30 30 30 31 31 31 31 31 31 35 35 35 35 35 35 33 33 33 33 33 33 34 34 34 34 34 34 38 38 38 38 38 38 36 36 36 36 36 36 37 37 37 37 37 37 41 41 41 41 41 41 39 39 39 39 39 39 40 40 40 40 40 40 44 44 44 44 44 44 42 42 42 42 42 42 43 43 43 43 43 43 47 47 47 47 47 47 45 45 45 45 45 45 46 46 46 46 46 46
SPS 10897317
PPS 1089734850 50 50 50 50 50 48 48 48 48 48 48 49 49 49 49 49 49 53 53 53 53 53 53 51 51 51 51 51 51 52 52 52 52 52 52 56 56 56 56 56 56 54 54 54 54 54 54 55 55 55 55 55 55 59 59 59 59 59 59 57 57 57 57 57 57 58 58 58 58 58 58 62 62 62 62 62 62 60 60 60 60 60 60 61 61 61 61 61 61 65 65 65 65 65 65 63 63 63 63 63 63 64 64 64 64 64 64 68 68 68 68 68 68 66 66 66 66 66 66 67 67 67 67 67 67 71 71 71 71 71 71 69 69 69 69 69 69 70 70 70 70 70 70 74 74 74 74 74 74 72 72 72 72 72 72 73 73 73 73 73 73 77 77 77 77 77 77 75 75 75 75 75 75 76 76 76 76 76 76 80 80 80 80 80 80 78 78 78 78 78 78 79 79 79 79 79 79 83 83 83 83 83 83 81 81 81 81 81 81 82 82 82 82 82 82 86 86 86 86 86 86 84 84 84 84 84 84 85 85 85 85 85 85 89 89 89 89 89 89 87 87 87 87 87 87 88 88 88 88 88 88 92 92 92 92 92 92 90 90 90 90 90 90 91 91 91 91 91 91 95 95 95 95 95 95 93 93 93 93 93 93 94 94 94 94 94 94
SPS 12136946
PPS 1213697798 98 98 98 98 98 96 96 96 96 96 96 97 97 97 97 97 97 101 101 101 101 101 101 99 99 99 99 99 99 100 100 100 100 100 100 104 104 104 104 104 104 102 102 102 102 102 102 103 103 103 103 103 103 105 105 105 105 105 105 106 106 106 106 106 106 107 107 107 107 107 107 108 108 108 108 108 108 111 111 111 111 111 111 109 109 109 109 109 109 110 110 110 110 110 110 114 114 114 114 114 114 112 112 112 112 112 112 113 113 113 113 113 113 117 117 117 117 117 117 115 115 115 115 115 115 116 116 116 116 116 116 120 120 120 120 120 120 118 118 118 118 118 118 119 119 119 119 119 119 123 123 123 123 123 123 121 121 121 121 121 121 122 122 122 122 122 122 126 126 126 126 126 126 124 124 124 124 124 124 125 125 125 125 125 125 129 129 129 129 129 129 127 127 127 127 127 127 128 128 128 128 128 128 132 132 132 132 132 132 130 130 130 130 130 130 131 131 131 131 131 131 135 135 135 135 135 135 133 133 133 133 133 133 134 134 134 134 134 134 138 138 138 138 138 138 136 136 136 136 136 136 137 137 137 137 137 137 141 141 141 141 141 141 139 139 139 139 139 139 140 140 140 140 140 140 144 144 144 144 144 144 142 142 142 142 142 142 143 143 143 143 143 143
SPS 13162643
PPS 13162674147 147 147 147 147 147 145 145 145 145 145 145 146 146 146 146 146 146 150 150 150 150 150 150 148 148 148 148 148 148 149 149 149 149 149 149 153 153 153 153 153 153 151 151 151 151 151 151 152 152 152 152 152 152 156 156 156 156 156 156 154 154 154 154 154 154 155 155 155 155 155 155 159 159 159 159 159 159 157 157 157 157 157 157 158 158 158 158 158 158 162 162 162 162 162 162 160 160 160 160 160 160 161 161 161 161 161 161 165 165 165 165 165 165 163 163 163 163 163 163 164 164 164 164 164 164 168 168 168 168 168 168 166 166 166 166 166 166 167 167 167 167 167 167 171 171 171 171 171 171 169 169 169 169 169 169 170 170 170 170 170 170 174 174 174 174 174 174 172 172 172 172 172 172 173 173 173 173 173 173 177 177 177 177 177 177 175 175 175 175 175 175 176 176 176 176 176 176 180 180 180 180 180 180 178 178 178 178 178 178 179 179 179 179 179 179 183 183 183 183 183 183 181 181 181 181 181 181 182 182 182 182 182 182 186 186 186 186 186 186 184 184 184 184 184 184 185 185 185 185 185 185 189 189 189 189 189 189 187 187 187 187 187 187 188 188 188 188 188 188 192 192 192 192 192 192 190 190 190 190 190 190 191 191 191 191 191 191
SPS 14143387
PPS 14143418195 195 195 195 195 195 193 193 193 193 193 193 194 194 194 194 194 194 196 196 196 196 196 196 199 199 199 199 199 199 197 197 197 197 197 197 198 198 198 198 198 198 202 202 202 202 202 202 200 200 200 200 200 200 201 201 201 201 201 201 205 205 205 205 205 205 203 203 203 203 203 203 204 204 204 204 204 204 208 208 208 208 208 208 206 206 206 206 206 206 207 207 207 207 207 207 211 211 211 211 211 211 209 209 209 209 209 209 210 210 210 210 210 210 214 214 214 214 214 214 212 212 212 212 212 212 213 213 213 213 213 213 217 217 217 217 217 217 215 215 215 215 215 215 216 216 216 216 216 216 220 220 220 220 220 220 218 218 218 218 218 218 219 219 219 219 219 219 223 223 223 223 223 223 221 221 221 221 221 221 222 222 222 222 222 222 224 224 224 224 224 224 227 227 227 227 227 227 225 225 225 225 225 225 226 226 226 226 226 226 228 228 228 228 228 228 229 229 229 229 229 229 230 230 230 230 230 230 233 233 233 233 233 233 231 231 231 231 231 231 232 232 232 232 232 232 236 236 236 236 236 236 234 234 234 234 234 234 235 235 235 235 235 235 239 239 239 239 239 239 237 237 237 237 237 237 238 238 238 238 238 238 242 242 242 242 242 242 240 240 240 240 240 240 241 241 241 241 241 241
SPS 15245181
PPS 15245212245 245 245 245 245 245 243 243 243 243 243 243 244 244 244 244 244 244 248 248 248 248 248 248 246 246 246 246 246 246 247 247 247 247 247 247 249 249 249 249 249 249 250 250 250 250 250 250 253 253 253 253 253 253 251 251 251 251 251 251 252 252 252 252 252 252 0 0 0 0 0 0 254 254 254 254 254 254 255 255 255 255 255 255 3 3 3 3 3 3 1 1 1 1 1 1 2 2 2 2 2 2 6 6 6 6 6 6 4 4 4 4 4 4 5 5 5 5 5 5 9 9 9 9 9 9 7 7 7 7 7 7 8 8 8 8 8 8 10 10 10 10 10 10 11 11 11 11 11 11 12 12 12 12 12 12 13 13 13 13 13 13 14 14 14 14 14 14 15 15 15 15 15 15 16 16 16 16 16 16 17 17 17 17 17 17 18 18 18 18 18 18 19 19 19 19 19 19 20 20 20 20 20 20 23 23 23 23 23 23 21 21 21 21 21 21 22 22 22 22 22 22 24 24 24 24 24 24 27 27 27 27 27 27 25 25 25 25 25 25 26 26 26 26 26 26 28 28 28 28 28 28 29 29 29 29 29 29 30 30 30 30 30 30 31 31 31 31 31 31 32 32 32 32 32 32 33 33 33 33 33 33 36 36 36 36 36 36 34 34 34 34 34 34 35 35 35 35 35 35
SPS 16367179
PPS 1636721039 39 39 39 39 39 37 37 37 37 37 37 38 38 38 38 38 38 42 42 42 42 42 42 40 40 40 40 40 40 41 41 41 41 41 41 45 45 45 45 45 45 43 43 43 43 43 43 44 44 44 44 44 44 48 48 48 48 48 48 46 46 46 46 46 46 47 47 47 47 47 47 51 51 51 51 51 51 49 49 49 49 49 49 50 50 50 50 50 50 54 54 54 54 54 54 52 52 52 52 52 52 53 53 53 53 53 53 57 57 57 57 57 57 55 55 55 55 55 55 56 56 56 56 56 56 60 60 60 60 60 60 58 58 58 58 58 58 59 59 59 59 59 59 63 63 63 63 63 63 61 61 61 61 61 61 62 62 62 62 62 62 66 66 66 66 66 66 64 64 64 64 64 64 65 65 65 65 65 65 69 69 69 69 69 69 67 67 67 67 67 67 68 68 68 68 68 68 72 72 72 72 72 72 70 70 70 70 70 70 71 71 71 71 71 71 75 75 75 75 75 75 73 73 73 73 73 73 74 74 74 74 74 74 78 78 78 78 78 78 76 76 76 76 76 76 77 77 77 77 77 77 81 81 81 81 81 81 79 79 79 79 79 79 80 80 80 80 80 80 84 84 84 84 84 84 82 82 82 82 82 82 83 83 83 83 83 83
SPS 17298106
PPS 1729813787 87 87 87 87 87 85 85 85 85 85 85 86 86 86 86 86 86 90 90 90 90 90 90 88 88 88 88 88 88 89 89 89 89 89 89 93 93 93 93 93 93 91 91 91 91 91 91 92 92 92 92 92 92 96 96 96 96 96 96 94 94 94 94 94 94 95 95 95 95 95 95 97 97 97 97 97 97 100 100 100 100 100 100 98 98 98 98 98 98 99 99 99 99 99 99 103 103 103 103 103 103 101 101 101 101 101 101 102 102 102 102 102 102 106 106 106 106 106 106 104 104 104 104 104 104 105 105 105 105 105 105 109 109 109 109 109 109 107 107 107 107 107 107 108 108 108 108 108 108 112 112 112 112 112 112 110 110 110 110 110 110 111 111 111 111 111 111 115 115 115 115 115 115 113 113 113 113 113 113 114 114 114 114 114 114 118 118 118 118 118 118 116 116 116 116 116 116 117 117 117 117 117 117 121 121 121 121 121 121 119 119 119 119 119 119 120 120 120 120 120 120 124 124 124 124 124 124 122 122 122 122 122 122 123 123 123 123 123 123 127 127 127 127 127 127 125 125 125 125 125 125 126 126 126 126 126 126 130 130 130 130 130 130 128 128 128 128 128 128 129 129 129 129 129 129 133 133 133 133 133 133 131 131 131 131 131 131 132 132 132 132 132 132
SPS 18326457
PPS 18326488136 136 136 136 136 136 134 134 134 134 134 134 135 135 135 135 135 135 139 139 139 139 139 139 137 137 137 137 137 137 138 138 138 138 138 138 140 140 140 140 140 140 141 141 141 141 141 141 142 142 142 142 142 142 145 145 145 145 145 145 143 143 143 143 143 143 144 144 144 144 144 144 146 146 146 146 146 146 147 147 147 147 147 147 148 148 148 148 148 148 151 151 151 151 151 151 149 149 149 149 149 149 150 150 150 150 150 150 154 154 154 154 154 154 152 152 152 152 152 152 153 153 153 153 153 153 157 157 157 157 157 157 155 155 155 155 155 155 156 156 156 156 156 156 160 160 160 160 160 160 158 158 158 158 158 158 159 159 159 159 159 159 161 161 161 161 161 161 162 162 162 162 162 162 163 163 163 163 163 163 164 164 164 164 164 164 165 165 165 165 165 165 166 166 166 166 166 166 169 169 169 169 169 169 167 167 167 167 167 167 168 168 168 168 168 168 172 172 172 172 172 172 170 170 170 170 170 170 171 171 171 171 171 171 175 175 175 175 175 175 173 173 173 173 173 173 174 174 174 174 174 174 178 178 178 178 178 178 176 176 176 176 176 176 177 177 177 177 177 177 181 181 181 181 181 181 179 179 179 179 179 179 180 180 180 180 180 180 182 182 182 182 182 182
SPS 19383267
PPS 19383298185 185 185 185 185 185 183 183 183 183 183 183 184 184 184 184 184 184 188 188 188 188 188 188 186 186 186 186 186 186 187 187 187 187 187 187 191 191 191 191 191 191 189 189 189 189 189 189 190 190 190 190 190 190 194 194 194 194 194 194 192 192 192 192 192 192 193 193 193 193 193 193 197 197 197 197 197 197 195 195 195 195 195 195 196 196 196 196 196 196 200 200 200 200 200 200 198 198 198 198 198 198 199 199 199 199 199 199 201 201 201 201 201 201 202 202 202 202 202 202 203 203 203 203 203 203 204 204 204 204 204 204 205 205 205 205 205 205 206 206 206 206 206 206 207 207 207 207 207 207 208 208 208 208 208 208 209 209 209 209 209 209 212 212 212 212 212 212 210 210 210 210 210 210 211 211 211 211 211 211 215 215 215 215 215 215 213 213 213 213 213 213 214 214 214 214 214 214 218 218 218 218 218 218 216 216 216 216 216 216 217 217 217 217 217 217 221 221 221 221 221 221 219 219 219 219 219 219 220 220 220 220 220 220 224 224 224 224 224 224 222 222 222 222 222 222 223 223 223 223 223 223 227 227 227 227 227 227 225 225 225 225 225 225 226 226 226 226 226 226 230 230 230 230 230 230 228 228 228 228 228 228 229 229 229 229 229 229
SPS 20406605
PPS 20406636233 233 233 233 233 233 231 231 231 231 231 231 232 232 232 232 232 232 236 236 236 236 236 236 234 234 234 234 234 234 235 235 235 235 235 235 239 239 239 239 239 239 237 237 237 237 237 237 238 238 238 238 238 238 242 242 242 242 242 242 240 240 240 240 240 240 241 241 241 241 241 241 245 245 245 245 245 245 243 243 243 243 243 243 244 244 244 244 244 244 248 248 248 248 248 248 246 246 246 246 246 246 247 247 247 247 247 247 251 251 251 251 251 251 249 249 249 249 249 249 250 250 250 250 250 250 254 254 254 254 254 254 252 252 252 252 252 252 253 253 253 253 253 253 1 1 1 1 1 1 255 255 255 255 255 255 0 0 0 0 0 0
SPS 20929418
PPS 209294494 4 4 4 4 4 2 2 2 2 2 2 3 3 3 3 3 3 5 5 5 5 5 5 6 6 6 6 6 6 6 6 6 6 6 6 7 7 7 7 7 7 7 7 7 7 7 7 8 8 8 8 8 8 8 8 8 8 8 8 9 9 9 9 9 9 9 9 9 9 9 9 10 10 10 10 10 10 10 10 10 10 10 10 11 11 11 11 11 11 11 11 11 11 11 11 12 12 12 12 12 12 12 12 12 12 12 12 13 13 13 13 13 13 13 13 13 13 13 13 14 14 14 14 14 14 14 14 14 14 14 14 15 15 15 15 15 15 15 15 15 15 15 15 16 16 16 16 16 16 16 16 16 16 16 16 17 17 17 17 17 17 17 17 17 17 17 17 18 18 18 18 18 18 18 18 18 18 18 18 19 19 19 19 19 19 19 19 19 19 19 19 20 20 20 20 20 20 20 20 20 20 20 20 21 21 21 21 21 21 21 21 21 21 21 21 22 22 22 22 22 22 22 22 22 22 22 22
SPS 22142851
PPS 22142882
IDR 22142890 0
IDR 22149353 0
IDR 22159024 0
IDR 22174098 0
IDR 22183104 0
IDR 22195245 0
SPS 22209930 etc.....

guada2
2nd March 2007, 02:47
This movie come from HDTV forum "lossless cut HD"
http://forum.doom9.org/showthread.php?t=122798

I only demux it with Xmuxer pro and try to DGAVCindex.
You can verify...

Bye..

Guest
2nd March 2007, 04:56
I'm closing this thread until the next release to avoid further reports related to limitations that I have already acknowledged and clearly stated that I am working on.

Guest
5th March 2007, 02:40
I'm back with Alpha 2 and the thread is re-opened. Thank you for your patience.

This version fixes decode issues. All but one of the streams previously provided now work, and that one was corrupted, I believe.

As described in the help file, the last several frames of the BBC streams may be incorrect. I am working on it.

Note that you have to replace all the DLLs (avcodec-51.dll, avformat-51.dll, avutil-49.dll), even though their names have not changed. I am still working on a better solution. The easiest thing to do is to put them in \windows\system32 or somewhere else on your DLL search path. If you can't, the help file points you to an alternate solution.

http://neuron2.net/dgavcdec/dgavcdec100a2.zip

Please do not post large index files. Give me the stream instead. Thank you.

Inventive Software
5th March 2007, 02:44
Any chance you can resize / cut the libavcodec DLL so that it's only the H.264 decoder that's used? It's quite bloated otherwise, is my only thought with this.

Guest
5th March 2007, 02:49
Eventually, yes.

In the meantime, get broadband. :)

EDIT: BTW, I am now looking for streams with pulldown and/or frame repeats.

DSP8000
5th March 2007, 04:24
Wow, great work neuron2.

Decoding is just fine, works very good for me, however, did you think about optimizing you filter in some way so we can use it for playback as well?
CPU usage peaks @ 100% in MPC when I'm watching your test sample.
Maybe some implementation in MCP as well?;)
Tnx. again

tomos
5th March 2007, 04:32
just tried some clips here and they all worked fine

will give it a proper run through tomorrow on a full length cap.

thanks again :)

are you going to merge this and dgindex in the future or leave them seperate?

Inventive Software
5th March 2007, 04:46
I asked that, and I think he said they'll be separate, since DGIndex is for primarily MPEG-2. http://forum.doom9.org/showthread.php?p=962381#post962381

tomos
5th March 2007, 05:24
cool. was caught up in a dream of being able to index mpeg-2, AVC and VC1 in 1 program ;)

right now i am just testing to compare encoding this way versus DSS. should be done by the morn i hope.

laters all

Guest
5th March 2007, 05:25
did you think about optimizing you filter in some way so we can use it for playback as well? It's just libavcodec under the hood, so just use any player that uses libavcodec. See here:

http://ffmpeg.mplayerhq.hu/projects.html

ffdshow and VideoLAN (VLC) are well-known.

holzi
5th March 2007, 07:44
thx for the new version.
All streams I have right now seem to work. :)

Hans Ohlo
5th March 2007, 07:48
hi,
could you strip the example streams into another archive? this way the download of new versions would be not that heavy...

-chris

Pookie
5th March 2007, 22:33
Don, the new Alpha 2 is returning great looking video, where Alpha 1 had returned mush. Mucho thanks:)

Kurth
6th March 2007, 02:05
Encoding speed test using:
DGAVCDec 1.0.0 Alpha 2
Latest FFDshow
CoreAVC 1.2
Latest X264 encoding with megui profile CQ-ASP_Q2_eq(crf)

AVCSource:
Encoding speed 9.43 fps

DirectShowSource FFDshow:
Encoding speed 8.90 fps

DirectShowSource CoreAVC:
Encoding speed 9.07 fps

AVCSource is faster than any DirectShowSource that we use.

Thanks for the fixes on this new version everything here work fine now.

Revgen
6th March 2007, 04:20
Just tried this out (Alpha 2). It works fine on my 320x480 29.97 progressive vid.

One option I would like to see is to be able to turn off deblocking. Sometimes I'd rather deal with blocking issues myself using avisynth. I'm sure you were planning on doing that anyway, so other than that it worked well with this vid. I'll try others eventually.

Keep up the great work! :thanks:

Guest
6th March 2007, 07:07
One option I would like to see is to be able to turn off deblocking. Sometimes I'd rather deal with blocking issues myself using avisynth. Good idea. I have implemented and tested it. You'll do it like this:

AVCSource("file.dga",deblock=false)

I'm sure you're aware that in H.264 the deblocked picture becomes the reference picture, so you may see inaccuracies that get progressively worse within a GOP.

It will be in the next alpha. The next alpha will also add an option to DGAVCIndex to generate a decoded video using the JVT reference software.

EDIT: It's 25% faster without deblocking. For one 25fps HD clip I have that made the difference in allowing me to play it at full frame rate.

Revgen
6th March 2007, 08:05
Good idea. I have implemented and tested it. You'll do it like this:

AVCSource("file.dga",deblock=false)

I'm sure you're aware that in H.264 the deblocked picture becomes the reference picture, so you may see inaccuracies that get progressively worse within a GOP.

It will be in the next alpha. The next alpha will also add an option to DGAVCIndex to generate a decoded video using the JVT reference software.

EDIT: It's 25% faster without deblocking. For one 25fps HD clip I have that made the difference in allowing me to play it at full frame rate.

Thanks a lot.

I'm aware of some of the drawbacks, but in certain cases it just works better without it.

ToS_Maverick
6th March 2007, 08:58
first of all, thanks neuron2 for the great work!

my workflow looks like this:
Pro7 HD Transport Stream => mux to Matroska => cut with mkvtoolnix => demux with mkvextractgui => index => avisynth

i want to report the following issues:
- in your GUI, you can add files via drag&drop. after add file via D&D => index, if i drag another file into it, the indexfile will be created, but if i want to load it, an avisyntherror occurs: no video

- if i load a file, which was splitted with mkvmerge and demuxed, DGAVCSource looses the first ~60 frames, compared to DirectShowSource("file.mkv").

lucassp
6th March 2007, 13:05
LoadPlugin("DGAVCDecode.DLL")
AVCSource("D:\HD\sky.dga")

Everytime I try to play the AVS file I get this message:

Evaluate: System exception - Access Violation

the streams are the ones from x264.nl:confused:

Manao
6th March 2007, 13:07
neuron2 : can't you try to copy the decoded picture in the output buffer before deblocking it ? That way, there are no decoding accuracies.

foxyshadis
6th March 2007, 15:05
- if i load a file, which was splitted with mkvmerge and demuxed, DGAVCSource looses the first ~60 frames, compared to DirectShowSource("file.mkv").

You can't expect anything to get fixed if you don't upload a test file. For what it's worth, I can't reproduce, it comes out on the correct frame here.

ToS_Maverick
6th March 2007, 15:25
ok sry, i noticed the problem yesterday and just wanted to report it. when i get home, i'll upload a sample for you, no problem ;)

Seba-
6th March 2007, 15:56
Hey,
Maybe it is possible to make avc/h264 support for satelite hdtv avc streams? Sample from FTA channel below:

Sample File (http://s3b4.internetdsl.pl/luxetv.ts)

lucassp
6th March 2007, 16:25
Hey,
Maybe it is possible to make avc/h264 support for satelite hdtv avc streams? Sample from FTA channel below:

Sample File (http://s3b4.internetdsl.pl/luxetv.ts)

first, you've got to demux the Transport Stream: MPlayer FILE.TS -dumpvideo -dumpfile FILE.264. and then do the job with DGAVCIndex

Seba-
6th March 2007, 16:51
I tried but obviously it's not working with hdtv streams...

Guest
6th March 2007, 17:24
I tried but obviously it's not working with hdtv streams... You have to give me the .264 elementary stream if you want support!

Guest
6th March 2007, 17:27
LoadPlugin("DGAVCDecode.DLL")
AVCSource("D:\HD\sky.dga")

Everytime I try to play the AVS file I get this message:

Evaluate: System exception - Access Violation

the streams are the ones from x264.nl:confused: If you want a failing stream to be supported, you have to give me the stream for testing. Otherwise, there is nothing I can do. I do not have a magic wand.

My guess is that it is PAFF, which is not supported. But I'd like to see the stream to verify that and to test out a more graceful exit.

Guest
6th March 2007, 17:30
neuron2 : can't you try to copy the decoded picture in the output buffer before deblocking it ? That way, there are no decoding inaccuracies. Yes, that would be possible. You'd lose the speed advantage of course. But I'd have to modify libavcodec. We'll see. Let's find out how significant the effect is.

Guest
6th March 2007, 17:34
- in your GUI, you can add files via drag&drop. after add file via D&D => index, if i drag another file into it, the indexfile will be created, but if i want to load it, an avisyntherror occurs: no video Yeah, because the DGA file is empty. :) I'll fix it.

- if i load a file, which was splitted with mkvmerge and demuxed, DGAVCSource looses the first ~60 frames, compared to DirectShowSource("file.mkv"). Need the ES, please.

ToS_Maverick
6th March 2007, 19:15
i think i know the source of the problem! wanted to split 20mb from the problematic file with mkvmerge, which couldn't do it... got a whole bunch of errors! i'll talk to mosu to find a solution and start a further investigation. i'll keep you posted ;)

Revgen
6th March 2007, 19:20
Okay I just tried this on another video and getting some strange issues when trying to fast seek to certain points. I don't know if this has anything to do with the IDR/SEI issues you mentioned.

1) The video is 640x480 @ 60fps and 400334 frames long.

2) I CAN fast seek anywhere in the video from frame 0 to about frame 189257. If I try to fast seek anywhere past frame 189257, VirtualDub will return me to the beginning of the video. When this happens I can even press "play" and it'll start playing at the begining of the video.

3) Furthermore, if I try to fast seek past about the frame 377623, VirtualDub doesn't even go back to the beginning of the video. Instead it shows a blank green screen. If I press "play" at this point, VirtualDub will play the green screen and sometimes the real video will shift in and out during playback.

4) Fortunately, none of these problems occur if I just press "play" before the 189257 frame. I can play all the way through the video and just press "stop" and it'll stop at the right spot. Unfortunately, this is a lot slower than just fast-seeking.

5) This also causes a problem with the trim command.

If I use trim(0,185000)+trim(370000,0) and I set my mark to lets say 184000 and press "play" in VirtualDub, by the time VDub plays past the 185000 frame it starts playing at the beginning of the video. I haven't tried any encodes doing this yet (I plan to later), but I wouldn't be surprised if it screws up the vid.

6) I have not encountered any of these issues using DirectShowSource on my original .mkv. I'm going to remux the .264 file I demuxed back into another .mkv and play it back to see if MKVExtract made a mistake probably later today.

EDIT: I just remuxed the .264 file I originally extracted and it seeked fine with directshowsource, so obviously MKVExtract can't be the culprit.

7) The entire .264 file is 4.21 GB. If you're interested, I might be better off sending you a DVD-R in the mail.

Guest
6th March 2007, 20:01
@RevGen

First, please post a link to the entiire DGA file.

lucassp
6th March 2007, 20:34
If you want a failing stream to be supported, you have to give me the stream for testing. Otherwise, there is nothing I can do. I do not have a magic wand.

My guess is that it is PAFF, which is not supported. But I'd like to see the stream to verify that and to test out a more graceful exit.

http://x264.nl/h.264.samples/force.php?file=./sky.movies.9.hd.ts

MPlayer plays it using libavcodec :confused:

Inventive Software
6th March 2007, 20:39
Neuron'll lynch you for not demuxing it...

Revgen
6th March 2007, 20:45
@RevGen

First, please post a link to the entiire DGA file.

Here you go.

http://www.mediafire.com/?amermndmhuz

lucassp
6th March 2007, 21:38
Neuron'll lynch you for not demuxing it...

I demuxed it using MPlayer (read a few posts back ;) ). the link is from the source TS file.

Guest
6th March 2007, 22:00
I demuxed it using MPlayer (read a few posts back ;) ). the link is from the source TS file. May I please have the ES? I don't have all these obscure demuxers installed. Thank you.

It's perverse to me that you have demuxed the ES for testing and then instead of giving it to me, you give me the container file!

lucassp
6th March 2007, 22:09
May I please have the ES? I don't have all these obscure demuxers installed. Thank you.

It's perverse to me that you have demuxed the ES for testing and then instead of giving it to me, you give me the container file!

sorry...here it is. hope you're not too mad at me :D

http://rapidshare.com/files/19752559/sky.264

Guest
6th March 2007, 22:11
Here you go. The IDR line contains the location in the file of the IDR frame. Everything is fine until it reaches 2GB and turns negative:

IDR -2147217683
FRM 0
FRM 3
FRM 2
FRM 1
FRM 6
...

Then the seek fails and just goes to the start of the file. :p

I thought I had __int64 everywhere important but obviously not. I think it is the fprintf().

I'll fix it. Thanks for pointing it out. That's why it's called an alpha. :)

Revgen
6th March 2007, 22:19
The IDR line contains the location in the file of the IDR frame. Everything is fine until it reaches 2GB and turns negative:

IDR -2147217683
FRM 0
FRM 3
FRM 2
FRM 1
FRM 6
...

Then the seek fails and just goes to the start of the file. :p

I thought I had __int64 everywhere important but obviously not. I think it is the fprintf().

I'll fix it. Thanks for pointing it out. That's why it's called an alpha. :)

Glad I could help.:)

Guest
7th March 2007, 07:35
here it is I fixed the crash and it now plays properly. It will be in the next alpha release.

EDIT: It was actually a crash in libavformat, strangely enough.

lucassp
7th March 2007, 11:33
I fixed the crash and it now plays properly. It will be in the next alpha release.

u the man :D :thanks:

Eragon4ever
7th March 2007, 18:23
Looks good.:thanks:

However:
1. Load a file in DGAVCIndex.exe (e.g. your test.264).
2. Hit 'Index'.
3. Hit 'Index' again while it is still working.
-> DGAVCIndex crashes.

Seba-
7th March 2007, 23:49
I have a problem when I am trying to make dga from .264 file which size is like 9GB (ERROR: Undefined level).
When the file is smaller everything is fine...

tomos
8th March 2007, 02:09
strange. worked fine for me with a 264 file 14.4 GB in size

seeking is strange and it tends to crap out and give me a green screen if i jump to a frame too far into the vid. just re-encoding etc though works fine with it

Guest
8th March 2007, 04:08
3. Hit 'Index' again while it is still working.
-> DGAVCIndex crashes. Fixed for alpha 3. Thank you.

@Seba-

Does it happen with a smaller fragment of the file? If so, please post a link to it.

@tomos

The raison d'etre of DGAVCDec is seeking, so alpha 2 doesn't work fine. But as I said, it is fixed in alpha 3, which will be out soon.

fenomeno83
8th March 2007, 11:29
I didn't understand...Can I use this decoder to decode an h264 movie for example with kmplayer,setting dgavcindex as h264 external decoder?and in realtime sat stream as luxehd with dvbviewer?

Eragon4ever
8th March 2007, 13:41
An other odd thing:
1. Index a file (again, you may use your test.264).
2. Index the file agian (or an other one) but DO NOT close DGAVCIndex.
-> The output of the first run is fine however the second one seams not to finish. For test.264 the broken output ends at line 502 of the fine one (551 lines).

It seems to break when the path length is >256chars :)

Hm. For me it breaks with paths >99 chars.

Guest
8th March 2007, 15:06
I didn't understand...Can I use this decoder to decode an h264 movie for example with kmplayer,setting dgavcindex as h264 external decoder? and in realtime sat stream as luxehd with dvbviewer? DGAVCDec is an Avisynth source filter. It is not a DirectShow filter.

bob0r
8th March 2007, 16:11
@neuron2

So you want all http://x264.nl/h.264.samples/ demuxed into .264, then you will test them?

Guest
8th March 2007, 16:19
So you want all http://x264.nl/h.264.samples/ demuxed into .264, then you will test them? For you, bob0r, I will be happy to demux them and test them. I have Manzanita Muxer, which has a demuxing tool. I tried it on the first sample and everything worked fine.

Inventive Software
8th March 2007, 16:29
@Neuron: What does H.264 need to seek accurately? Currently, you use IDR frames, which is fair enough. Any chance of increasing this so reference frames are used too? (This assuming reference frames apply to I, P and B frames.)

Guest
8th March 2007, 17:26
What does H.264 need to seek accurately? Currently, you use IDR frames, which is fair enough. Any chance of increasing this so reference frames are used too? (This assuming reference frames apply to I, P and B frames.) There are three possibilities for starting valid decoding in a bitstream:

1. IDR
2. Recovery point SEI
3. All-I-slice frame (not IDR, slice_type=7)

I support 1 and 2 now. I have not yet seen an instance of 3 in the wild. I will support 3 if and when needed.

I don't understand your point about reference frames. A frame can be a reference frame without being a valid starting point for decoding.

Note that we distinguish between being a valid starting point for decoding and being seekable. Any frame is seekable but it may not be a valid starting point for decoding. Don't forget that you can seek to any frame by backing off to the previous frame of types 1, 2, or 3 as above and then decoding from there, finally outputting the picture you want. That is what both DGMPGDec and DGAVCDec do.

EDIT: Possibility 3 is not a valid starting point. See the discussion lower in this thread.

Inventive Software
8th March 2007, 19:47
Right, i misunderstood the reference frames thing.

Guest
8th March 2007, 19:55
I have a problem when I am trying to make dga from .264 file which size is like 9GB (ERROR: Undefined level). OK, I have fixed this. It will be in alpha 3.

Guest
9th March 2007, 01:08
This version:

* Fixes bugs (as described in the above posts).
* Adds a checkbox to enable info/warnings encountered when parsing your stream.
* Adds the ability to decode the stream with the JVT reference decoder and display that with an Avisynth script.
* Adds the ability to disable AVC deblocking.
* Removes the sample streams from the distribution.
* FRM line in DGA file now contains frame type field (P=0, B=1, I=2).

http://neuron2.net/dgavcdec/dgavcdec100a3.zip

You need to update all your DLLs!

I forgot to bump the DGA file version, so remake existing DGA files.

Revgen
9th March 2007, 03:31
Thanks.:)

The seeking works fine in the vid now. Deblocking works too.

Guest
9th March 2007, 04:02
Oops, had to withdraw Alpha 3 temporarily. It has a rather large memory leak.

EDIT: I put it back because it appears to not be a problem with the filter but just something strange with one stream that plays and then gets slower and slower and then crashes VirtualDub. I am investigating.

EDIT2: Stupid PAFF again! I'll add an error popup to the next alpha.

Guest
9th March 2007, 05:45
@bob0r

Here are the test results for the streams you linked:

anixe.hd.264 -- fails (PAFF)
arte.hd.ts -- fails (PAFF)
astra.hd.ts -- ok
bbc.hd.ts -- ok
euro1080.hd5.ts -- ok
hd.forum.tf1.hd.ts -- ok, but with minor artifacts (file corruption?)
lux.hd.ateme.ts -- ok
lux.hd.ts -- ok
premiere.hd.ts -- ok
prosieben.hd.ts -- ok
sky.movies.9.hd.ts -- ok

I'm considering having a go at adding PAFF support to libavcodec.

Guest
9th March 2007, 06:01
I updated the Alpha 3 release with a check for PAFF. So re-download it if you want that.

I'm still looking for streams with soft pulldown or frame repeats, so let me know if you think you have one.

orbitlee
9th March 2007, 12:29
I updated the Alpha 3 release with a check for PAFF. So re-download it if you want that.

I'm still looking for streams with soft pulldown or frame repeats, so let me know if you think you have one.


Here is a sample(some corruption in the middle though)
http://www.sendspace.com/file/t1mee0

Every frame has PIC_TIMING SEI,
pic_struct=4, number_clock_ts=2
pic_struct=5, number_clock_ts=3
pic_struct=6, number_clock_ts=3
pic_struct=3, number_clock_ts=2

I wish that's what you are looking for.

For frame repeats sample, do you mean hard telecine or something else?

Sergey A. Sablin
9th March 2007, 14:12
There are three possibilities for starting valid decoding in a bitstream:

1. IDR
2. Recovery point SEI
3. All-I-slice frame (not IDR, slice_type=7)


considering multi-reference encoding point 3 is not possible.

Guest
9th March 2007, 14:21
Here is a sample... I wish that's what you are looking for. Yes, that's it. Thank you. If you have any other uncorrupted ones like that, that would be helpful too.

For frame repeats sample, do you mean hard telecine or something else? That would be streams using pic_struct 7 (frame doubling) or 8 (frame tripling).

Guest
9th March 2007, 14:21
considering multi-reference encoding point 3 is not possible. I don't understand your point. Can you please try to explain it some more? Thank you.

Sergey A. Sablin
9th March 2007, 15:01
I don't understand your point. Can you please try to explain it some more? Thank you.

fe you have next sequence:

IDR P P P P P P P P P I P P P P P ...
^ ^ |
|_|_|
if there are more than 1 effective ref frame (lets take 2) then it is impossible to start decoding from I-frame (which fe consists of only I-slices, i.e. slice_type = 7), cause first P-frame after I-frame might take use of P-frame just before this I-frame (see picture) - so P-frames after I-frame can't be decoded correctly.

BTW, one could create 3:2i (interlaced pulldown) and 3:2p (frame doubling & tripling) videos using Elecard Converter Studio.

Guest
9th March 2007, 15:23
Yes, you're right. I was thinking of trick modes, where one could do fast forward/reverse play by displaying just the all-I-slice frames. Thank you for the correction, and for the pointer to Elecard.

bob0r
9th March 2007, 15:50
@neuron2

So you are saying only PAFF-interlaced frames cause a problem?

Most of those files are PAFF, but with only progressive frames.

Oh btw, that possible corrupt file, i plays fine and demuxes fine, however its the only different guessed encoder file: scientific atlanta hd.forum.tf1.hd.ts (see h.264.samples.info.txt)

Seba-
9th March 2007, 15:58
When trying to index file about 9gb size i have this error in alpha3:

http://img177.imageshack.us/img177/2258/error2ob3.jpg

bob0r
9th March 2007, 16:02
I think neuron/haali/mosu really need to sit around a table, and fix support for 1-100gb files once and for all :D

Guest
9th March 2007, 16:02
The test for PAFF is done for every slice and looks like this:

if sps->frame_mbs_only_flag=0 and field_pic_flag=1
PAFF encountered

So, yes, if the stream fragment contains no such slices, it can't be considered PAFF and it will decode correctly with DGAVCDec (libavcodec).

Guest
9th March 2007, 16:04
I think neuron/haali/mosu really need to sit around a table, and fix support for 1-100gb files once and for all :D I generally fix things pretty quickly when they are brought to my attention, and this filter is just a baby. So I somewhat resent that comment, even with the smilie.

Furthermore, that memory leak is in the JVT code. :) That doesn't mean I won't fix it, of course.

bob0r
9th March 2007, 16:07
I should have typed: neuron can you help mkvtoolnix and haali's muxer to work with 1-1000000000gb files? :D

And yup about the PAFF, that makes sense then.


..... maybe ask for coreavc source :devil: ?

* runs

Guest
9th March 2007, 16:15
I should have typed: neuron can you help mkvtoolnix and haali's muxer to work with 1-1000000000gb files? Wow, I didn't know that they made hard disks that big. Can you donate one to allow me to duplicate this problem?

bob0r
9th March 2007, 16:29
http://x264.nl/slap.gif

Diodato
9th March 2007, 17:52
VFAPIConv 1.05 can't load the simplest Avisynth file - states 'invalid'.

Is it a bug?

Just for reference the avs file is:
loadplugin("C:\dgavcdec100a3\DGAVCDecode.dll")
AVCSource("C:\xxx.dga")

BTW, thanx for the nice work.


Edit: No bug, all OK. Forgot that VFAPIConv accepts only RGB colorspace.

guada2
9th March 2007, 21:05
@Diodato

Is it a bug?
No.
You must put "VFAPIConv 1.05" at the same place of VDM, as DGAvCindex.

Hans Ohlo
10th March 2007, 01:01
I'm considering having a go at adding PAFF support to libavcodec.
other than your great work with this DGAVCDecode, adding PAFF to libavcodec would make _very_ much people fall on their knees for you!

Guest
12th March 2007, 03:50
Just an update on progress. I have converted DGAVCIndex into a DGIndex look-alike. It opens the file and previews it, allowing you to navigate around without making a project, just like DGIndex. I will release that when I clear out a few small bugs. That makes the toolset start to be useful.

My big question now is which container format to start with. I'm thinking transport, but mp4 is also possible. Your thoughts?

PAFF will come.

HookedOnTV
12th March 2007, 04:16
Got one that I can't get to decode. Using rev 3 of your tool. After reading the thread I'm thinking maybe it is PAFF but I don't know how to determine that. Link to ES in PM.

Inventive Software
12th March 2007, 04:55
TS. I think people with H.264 transport capture streams would love you more that way. MP4 would also be nice too.

Revgen
12th March 2007, 08:41
MKV would be nice.

TS files are often interlaced as PAFF and MBAFF, so I don't know what good it would do to include it yet.

ToS_Maverick
12th March 2007, 08:58
for me it the prioritylist goes like that:
TS > MKV > MP4

TS or MKV would be really nice and it wouldn't make a difference for me, which one is first.

lucassp
12th March 2007, 09:04
1. TS (there are lots of progressive streams)
2. EVOB :D
3. MKV
4. MP4

bob0r
12th March 2007, 12:37
With container you mean file>open support or file>mux support?

If you go for mkv also, i am sure Haali is willing to write a patch, same as for x264 :D

Guest
12th March 2007, 14:14
Got one that I can't get to decode. Using rev 3 of your tool. After reading the thread I'm thinking maybe it is PAFF but I don't know how to determine that. Link to ES in PM. What player are you able to successfully play that stream with? Where/how did you get it?

Guest
12th March 2007, 14:16
With container you mean file>open support or file>mux support? Both.

If you go for mkv also, i am sure Haali is willing to write a patch, same as for x264 :D You keep making cryptic comments that I don't understand. Can't you just be straightforward? What patch would I need?

HookedOnTV
12th March 2007, 14:24
What player are you able to successfully play that stream with? Where/how did you get it?

While in TS it plays with Elecard's player. It is from Sat (r5000).

sillKotscha
12th March 2007, 15:16
TS. I think people with H.264 transport capture streams would love you more that way. MP4 would also be nice too.

yes, TS support should be considered to be chosen in the first place and MP4 as second...

I don't consider MKV to be important as MP4 is the native container format for h.264 and MKV just a container supporting that raw format too...

if someone considers MKV to be important than neuron2 should also add support for avi, as avi is also able to store h.264 streams and as you will agree with me, avi doesn't makes sense, as does MKV ;)

Manao
12th March 2007, 15:23
AVI can be read with AVISource + ffvfw, while MKV can only be read through DirectShowSource. So AVI doesn't really need DGAVC support, while MKV would benefit from it ( DirectShowSource is mostly unreliable ).

So, imho, TS > MP4=MKV. I haven't seen any EVOB yet, but it will become usefull soon enough :)

sillKotscha
12th March 2007, 15:26
So AVI doesn't really need DGAVC support

as I said - maybe long winded but that conclusion was my intention :)

Guest
12th March 2007, 16:17
While in TS it plays with Elecard's player. It is from Sat (r5000). Yes, but you gave me the ES! What are you able to play it in?

Better to give me the TS to rule out a bad demuxing.

Hans Ohlo
12th March 2007, 16:58
PAFF will come.
despite all the container requests here i think this is the best news!

could you fill us in if you do this yourself or someone other is doing it (and mybe a eta ;)?

thanks man!

HookedOnTV
12th March 2007, 17:17
Yes, but you gave me the ES! What are you able to play it in?

Better to give me the TS to rule out a bad demuxing.

Link to TS in PM. I used h264tsto to demux it. Had tried bbdmux but no program would take the output file (mkvmerge, mp4box). Couldn't get anything to play the ES other than ffdshow which does a horrible job so I figured that either ffdshow doesn't have some features implemented or the ES file is bad.

Update: The Elecard player will play it muxed into mkv so it probably isn't a bad demux.

bond
12th March 2007, 21:47
parsing mp4 by using mp4's own index (so not needing DGAVCIndex) would be nice

Guest
12th March 2007, 22:02
parsing mp4 by using mp4's own index (so not needing DGAVCIndex) would be nice Please point me to the spec and section number that describes this index. Thank you.

Guest
12th March 2007, 22:03
could you fill us in if you do this yourself or someone other is doing it (and mybe a eta ;)?
I will attempt it myself. No ETA. It works in the JVT decoder, so there is an extant example of how to do it.

bond
12th March 2007, 22:23
Please point me to the spec and section number that describes this index. Thank you.http://standards.iso.org/ittf/PubliclyAvailableStandards/c041828_ISO_IEC_14496-12_2005(E).zip

basically chapter 8.15, stts and ctts atoms

ilhyfe
12th March 2007, 23:37
Hi,

I just tested this software, but it doesn't work with the streams I use. I record from satelite with DVBVier PRO in .ts and .mpg format, but it seemd DGAIndex doesn't like the streams I record. Does anyone have an idea what I can do to solve it?

BTW: The most common errors are:
1. "Found NALU type 0, len xxx undefined, ignore NALI, moving on"
2. "Found NALU w/ forbidden_bit set, bit error? Let's try..."
3. "Garbage at start of bitstream... skipping it"

Guest
12th March 2007, 23:41
I just tested this software, but it doesn't work with the streams I use. I record from satelite with DVBVier PRO in .ts and .mpg format, but it seemd DGAIndex doesn't like the streams I record. Does anyone have an idea what I can do to solve it? Yes. As clearly stated several times in this thread (in bold!), if you want support make an elementary stream available for testing. You see, my magic wand is broken, so I have to do it the old-fashioned way.

You didn't try to open the TS or MPG file, did you? I haven't added container support yet, again, as clearly stated several times.

ilhyfe
13th March 2007, 00:00
You didn't try to open the TS or MPG file, did you? I haven't added container support yet, again, as clearly stated several times.

Hehe, I did. I demuxed the movie now with elecard xmuxer and DGAIndex works. Bit while opening the .avs script I get this error:

AVCSource: Could not open one of the input files (test.avs, line 2).

HookedOnTV
13th March 2007, 01:27
PM'd you links to another file that doesn't seem compatable. This one is from another channel and it is 720p. Basically the same behavior except that ffdshow will play it fine. File indexes fine but no decoding.

Guest
13th March 2007, 02:45
AVCSource: Could not open one of the input files (test.avs, line 2). Please provide the stream if you want support. Thank you.

Guest
13th March 2007, 02:48
PM'd you links to another file that doesn't seem compatable. This one is from another channel and it is 720p. Basically the same behavior except that ffdshow will play it fine. File indexes fine but no decoding. Your first one was PAFF so forget it. This second one appears to have no IDRs or recovery points, which confuses the heck out DGAVCDecode. I'm investigating further because libavcodec does spit out a good first frame, so DGAVCDecode ought to be able to as well.

EDIT: The second one does have recovery points. Should be decodable...stand by.

ilhyfe
13th March 2007, 18:03
Please provide the stream if you want support. Thank you.

Hi,

I recorded a new stream (10 MB) for you, but now I get "Field pictures not supported". Since I don't know how to cut my old streams (a ~6GB), I can't send you a sample yet.

thany
15th March 2007, 10:42
I can't get it to work :(

DGAVCIndex works just fine, as it generates a dga file. Then I create an avisynth script like this:
loadplugin("DGAVCDecode.dll")
AVCSource("tloeg.dga")
But when I open it in Vdub, it says
Avisynth open failure
AVCSource: Could not open one of the input files.
F:\Download\tloeg.avs
The first chunk of the dga file looks like so:
DGAVCIndexFile2

F:\Download\tloeg.avc

SPS 6
PPS 96
IDR 157
FRM 7 0
PPS 1488
FRM 5 3
PPS 1662
FRM 6 1
PPS 2144
FRM 6 2
PPS 2629
FRM 5 6
PPS 2806
FRM 6 4
PPS 3291
FRM 6 5
PPS 3772
FRM 5 9
PPS 3946
FRM 6 7
PPS 4427
FRM 6 8
PPS 4911
FRM 5 12
PPS 5088
FRM 6 10
PPS 5572
FRM 6 11
PPS 6053
FRM 5 15
PPS 6227
FRM 6 13
PPS 6708
FRM 6 14
PPS 7192
FRM 5 18
PPS 7369
FRM 6 16
PPS 7851
FRM 6 17
PPS 8330
FRM 5 21
PPS 8504
FRM 6 19
PPS 8983
FRM 6 20
SPS 9465
PPS 9555
FRM 7 24
PPS 10942
FRM 6 22
PPS 11424
FRM 6 23
PPS 11903
FRM 5 27
PPS 12077
FRM 6 25
PPS 12559
FRM 6 26
PPS 13044
FRM 5 30
PPS 13221
FRM 6 28
PPS 13706
FRM 6 29
PPS 14188
FRM 5 1
PPS 14362
FRM 6 31
PPS 14843
FRM 6 0
PPS 15327
FRM 5 4
PPS 15504
FRM 6 2
PPS 15988
FRM 6 3
SPS 16469
PPS 16559
FRM 7 7
PPS 17945
FRM 6 5
PPS 18426
FRM 6 6
PPS 18910
FRM 5 10
PPS 19087
FRM 6 8
PPS 19572
FRM 6 9
PPS 20054
FRM 5 13
PPS 20228
FRM 6 11
PPS 20710
FRM 6 12
PPS 21195
FRM 5 16
PPS 22219
FRM 6 14
PPS 22704
FRM 6 15
PPS 23189
FRM 5 19
PPS 102847
FRM 6 17
PPS 111355
FRM 6 18
SPS 141724
PPS 141814
IDR 141874
FRM 7 0
PPS 286164
FRM 5 3
PPS 381650
FRM 6 1
PPS 436848
FRM 6 2
PPS 488249
FRM 5 6
PPS 584625
FRM 6 4
PPS 632564
FRM 6 5
PPS 684384
FRM 5 9
PPS 796977
FRM 6 7
PPS 857664
FRM 6 8
PPS 904314
FRM 5 12
PPS 983756
FRM 6 10
PPS 1026181
FRM 6 11
PPS 1064744
FRM 5 15
PPS 1139978
FRM 6 13
PPS 1181892
FRM 6 14
PPS 1221000
FRM 5 18
PPS 1296883
FRM 6 16
PPS 1339205
FRM 6 17
PPS 1383369
FRM 5 21
PPS 1481305
FRM 6 19
PPS 1534642
FRM 6 20
SPS 1587835
PPS 1587925
FRM 7 24
PPS 1771298
FRM 6 22
PPS 1830881
FRM 6 23
PPS 1903379
FRM 5 27
PPS 2046878
FRM 6 25
PPS 2122813
FRM 6 26
PPS 2183204
FRM 5 30
PPS 2294158
FRM 6 28
PPS 2366403
FRM 6 29
PPS 2427841
FRM 5 1
PPS 2514537
FRM 6 31
PPS 2564817
FRM 6 0
PPS 2614611
FRM 5 4
PPS 2680869
FRM 6 2
PPS 2723513
FRM 6 3
PPS 2761543
FRM 5 7
PPS 2824438
FRM 6 5
PPS 2864656



And it keeps going like that. Did something go wrong?

ilhyfe
15th March 2007, 11:12
I can't get it to work :(

DGAVCIndex works just fine, as it generates a dga file. Then I create an avisynth script like this:
loadplugin("DGAVCDecode.dll")
AVCSource("tloeg.dga")
But when I open it in Vdub, it says
Avisynth open failure
AVCSource: Could not open one of the input files.
F:\Download\tloeg.avs
The first chunk of the dga file looks like so:
And it keeps going like that. Did something go wrong?

Some problem here...

Guest
15th March 2007, 13:51
I need a stream to help you. I am getting tired of saying it.

thany
15th March 2007, 14:36
Alright alright, here you go (http://www.thany.org/downloads/tloeg.avc).

Unfortunately, the whole stream is a little too much (like, 13GB), so I'm only publishing the first 1MB. Hope that's enough.

Guest
15th March 2007, 16:38
Rename it to "tloeg.264" :)

I'll fix that in the next release.

thany
15th March 2007, 20:28
Works like a charm, thanks :)

Eastermeyer
16th March 2007, 16:42
Just tried to use DGAVCIndex. But the Indexing-Tool isn't doing anything , even after an hour.

I am using WinXPH SP2 and a raw h264-File created with Haali Splitter / Dump Filter (Graphedit).

Here is a 15MB Sample cutted with a binary splitter from the beginning auf the h264-file :

http://files.to/get/395915/41023/cut.h264

Guest
16th March 2007, 17:52
Just tried to use DGAVCIndex. But the Indexing-Tool isn't doing anything , even after an hour.

I am using WinXPH SP2 and a raw h264-File created with Haali Splitter / Dump Filter (Graphedit).

Here is a 15MB Sample cutted with a binary splitter from the beginning auf the h264-file :

http://files.to/get/395915/41023/cut.h264 It doesn't look like an ES and VLC crashes when trying to play it. Also, Elecard XMuxer doesn't like it. So it's not a valid ES.

What is the original container format?

Eastermeyer
16th March 2007, 18:07
TransportStream.

Oh I am very sorry , it seems to be Haali Splitter's fault. It seems to work with a File demuxxed by Intervideo Filter. But it's PAFF , so unsupported.

Guest
16th March 2007, 18:52
I'm beginning to get disillusioned with libavcodec. I keep running into crashes and obscure bugs. I am unable to debug/trace the code due to the inability to build it in my windows development environment. And of course the lack of PAFF is very irritating. So I am considering starting again with the JM reference software, which I can actually build and debug in my environment. It should be possible to optimize it to an acceptable level (borrowing from libavcodec source for key things like transforms, etc.). Then we would have proper open source for a full featured decoder that is usable in standard windows development environments, as opposed to kludgy pseudo-unix environments.

Any thoughts?

Adub
16th March 2007, 18:58
I have to admit, that is a good idea. But you have to consider, would it be easier to start from scratch, or to just go through the old code of libavcodec and make bug fixes and so on. Personally I don't know enough code to make a judgement on this, but if you feel up to it neuron2, more power to you.

In short, I vote for the whole overall and start from scratch idea.

foxyshadis
16th March 2007, 21:44
ffdshow incorporates a MSVC-buildable version of libavcodec. Very helpful for debugging, but I know a couple of months ago it wasn't quite buildable anymore. I've seen a few MSVC compatibility messages go through svn since then, not sure of the exact status now, I'll test when I get home. That might be simpler to use than the raw ffmpeg version. (MSVC can't do any of the inline asm, though.)

Inventive Software
16th March 2007, 22:18
I think libavcodec was recently made MSVC buildable according to the SVN changelog...

ToS_Maverick
16th March 2007, 23:40
just a small bug report:
- if the disk is full, dgavcindex continues, without an error, but the file is incomplete, because the disk is full ;)

foxyshadis
17th March 2007, 11:12
Okay, it builds fine in VC 2005. Can't test whether the VC 2003 project is up to date. If you want to check it out, it's under sourceforge project ffdshow-tryout, path /trunk/src/ffmpeg, and it will build the dll by default in /trunk/bin. Of course, you can strip out all the extraneous codecs.

It has some dependencies on ffdshow, mainly replacing its codec naming/ordering etc with ffdshow's, and some ffdshow-specific hooks, so it's worth checking the whole project out, or at least the trunk branch. Any patch you make against it should be applyable back onto the svn ffmpeg code.

Guest
17th March 2007, 14:30
Is there a free version of VC 2005 that will build it? I still use VC 6.0 :)

Does it also build the libs needed to dynamically link the DLLs?

orbitlee
17th March 2007, 15:23
Is there a free version of VC 2005 that will build it? I still use VC 6.0 :)

Does it also build the libs needed to dynamically link the DLLs?


@neuron2: VC2005 Express edition is free.
http://msdn.microsoft.com/vstudio/express/support/faq/

Eastermeyer
17th March 2007, 17:48
I would appreciate a version based on the reference implentation by JM , because of the PAFF-Support and the Accurancy.

Inventive Software
17th March 2007, 18:48
I still use VC 6.0 :)

Dinosaur! :p

VC Express is indeed the way to go for a free kit. I think they were doing the VC2003 binaries a while ago too, not sure if they're still kicking around MSDN somewhere.

lucassp
17th March 2007, 18:57
I would appreciate a version based on the reference implentation by JM , because of the PAFF-Support and the Accurancy.

it would be nice. but that will take a lot of time to optimize. i don't want to even imagine how fast it will run on my A64 3000+@2,34GHz :D

bond
17th March 2007, 19:05
the reference is damn slow. i doubt people would be happy reencoding their stuff a whole week

Guest
17th March 2007, 19:12
the reference is damn slow. Well yes, but so was the reference MPEG2 decoder that developed into the heart of DVD2AVI, DGMPGDec, etc. I'm still mulling it over.

foxyshadis
18th March 2007, 14:42
Does it also build the libs needed to dynamically link the DLLs?

Yeah, the libs will show up in ./Release (Debug, whatever), and not the bin folder, though.

Guest
19th March 2007, 14:19
OK, thank you. I have managed to build it using VC 2005. Now it seems sensible to just make DGAVCIndex buildable under VC 2005 and then incorporate the AVC decoder code directly, so that no external DLL is necessary.

Then add PAFF. :)

BTW, active SPS/PPS management is something of a nightmare for random access.

Hans Ohlo
19th March 2007, 17:20
Then add PAFF. :)
;).... oh 'then' :/

;)

bob0r
20th March 2007, 18:45
@neuron2

Only if you care:
Video: MPEG4 Video (H264) 960x1088 [Video] <-- AR 16:9
(from canal ad on hispasat 30 west)
(maybe bond is interested too, how crappy it looks)

But for DGAVCDEC testing purposes:
Canal.AD.ts (http://mirror02.x264.nl/public/force.php?file=./Canal.AD.ts) 23mb

(playback: mpc internal .ts splitter works, haali splitter says: Unspecified error, reported to Haali)

bond
20th March 2007, 19:27
Only if you care:
Video: MPEG4 Video (H264) 960x1088 [Video] <-- AR 16:9
(from canal ad on hispasat 30 west)
(maybe bond is interested too, how crappy it looks)yeah gimme gimme. at the start bbc also used that res

SeeMoreDigital
20th March 2007, 20:03
But for DGAVCDEC testing purposes:
Canal.AD.ts (http://mirror02.x264.nl/public/force.php?file=./Canal.AD.ts) 23mb

(playback: mpc internal .ts splitter works, haali splitter says: Unspecified error, reported to Haali)Jeez....

That sample contains six different "Program" sectors. Only the last one (Program 900) contains the video and audio stream.

G_M_C
22nd March 2007, 09:21
I want to make this post just to thank you, and compliment you on your excellent work.

I've just used DGAVCIndex to succesfully replace the video on my DVD with a, resized but very much improved, AVC-720p version :) My DVD went from OK to sublime after the replacing (50i PAL to PAL anamorphic 25 fps progressive). So for me the tool works like a charm.

Now only VC-1 is left to do, as far as i can read around here, and all HD-possible formats can be input in AviSynth succesfully (i.e. without using DSS() ).

So :thanks:

Guest
22nd March 2007, 13:20
Glad to hear it. But there's still a lot of work to do. Right now I am in the midst of upgrading to VC++ 2005 and pulling in libavcodec code so that I will be able to develop and debug transparently, without the hassle of DLLs built in a different environment, etc.

Guest
27th March 2007, 03:13
Just a little progress update in case you're wondering what is going on.

Recall that I am in the process of moving to the ffdshow-tryouts based code that will allow me to build the DLLs using Visual Studio and later integrate the code directly, eliminating the DLLs. That will greatly simplify further development and debugging, especially adding PAFF support.

Converting DGAVCIndex and DGAVCDecode for building under Visual Studio 2005 Express was straightforward. (I also did it for DGMPGDec.)

The first problem I ran into was that the ffdshow-tryouts build of ffmpeg's DLLs includes only a stub for libavformat, whereas I was heavily relying on it. So I had to find a way to use libavcodec for H264 decoding without libavformat. I have now accomplished that successfully.

The next step is to convert from the DLLs built in the pseudo-linux (MSYS) environment to the DLLs built in the ffdshow-tryouts environment. At that point everything will be buildable and debuggable using Visual Studio. After that I will integrate the decoder directly and eliminate the DLLS. Then proper development of needed functionality will resume.

MatMaul
27th March 2007, 06:59
thanks for your works !

what about all the inline assembly code which can't be compiled with visual compiler (works with icl and gcc, you can use icl as compiler in visual if I remember good) and greatly improve the speed of the code ?

lexor
29th March 2007, 16:45
Then proper development of needed functionality will resume.
A quick Q. Are you by any chance qualified to participate in Google's Summer of Code 2007? FFmpeg project participates and one of its accepted ideas (with a mentor already assigned) for inclusion of "PAFF decoding for H.264/AVC". From what I understand there are cash to be got for completion (that would be 4500 USD for you and 500 USD for FFmpeg project). If you gonna code it anyway, might as well get paid :)

Guest
30th March 2007, 02:42
That's interesting. The problem is that I can't drop my other responsibilities to spend full-time trying to accomplish it within some arbitrary deadline. And I'm already well-compensated for my time, so the $$$ is not a motivation for me.

Do you know who the mentor is?

Revgen
30th March 2007, 03:26
It's Loren Merritt.

http://wiki.multimedia.cx/index.php?title=Summer_Of_Code_2007#PAFF_decoding_for_H.264.2FAVC

Daodan
2nd April 2007, 08:35
Very nice tool that got pretty good in last version. One small request though: if it's possible to implement the reference decoder in onthefly decoding also, not only to uncompressed file. I understand the reasons for this are the fact that it's incredibly slow, for tests only, not to be done again after first try, etc :rolleyes:. But in some cases it's the only one that doesn't give any frame errors (so only solution), while the decoding done with index only still has in some cases. And of course, uncompressed is huge, so not suitable for full scale movie.
Thank you for your work so far.

Guest
13th April 2007, 06:48
Time for a new alpha.

* DGAVCIndex is now a DGIndex-work-alike, i.e., you can open a file, see video, and immediately seek around and do GOP stepping without generating an index. Play, preview, frame single-stepping, and save BMP also work. Over time the grayed-out options will be implemented (where applicable) and an info dialog will be created. Stepping back by GOPs can be slow for very large GOPs, so be patient after hitting the < button.

* libavformat is no longer required.

http://neuron2.net/dgavcdec/dgavcdec100a4.zip

Solving the problem of random access without an index in AVC video was quite challenging. :)

holzi
13th April 2007, 08:11
thank you!
Gonne test it now :)

Edit:
Ok seems to work good atm.
But the av*.dll still needs to be in the system dir looking forward to not have them there anymore :)

G_M_C
13th April 2007, 08:52
Congrats on the development of this fantastic utillity, wich makes life much easier :)

But, i remember seeing a VC1source thread in AviSynth development, where development hit similar problems in seeking and the decoders used (libavformat in DGAVCDEC's case).

EDIT: Found the thread -> http://forum.doom9.org/showthread.php?p=945917#post945917

For me as a non-programmer the problems seemed similar ... and maybe the development of VC1source could be implemented in DGAVCIndex (wich than evolves into DGHDIndex) ?

But anyway, thx for this usefull programm !

Guest
13th April 2007, 14:37
But, i remember seeing a VC1source thread in AviSynth development, where development hit similar problems in seeking and the decoders used (libavformat in DGAVCDEC's case). Actually, libavcodec.

For me as a non-programmer the problems seemed similar ... and maybe the development of VC1source could be implemented in DGAVCIndex The difference is that I was willing to confront the seeking issues and solve them. The VC1 development has stalled because the author is apparently unwilling to tackle it. Maybe I will do it for VC1 after DGAVCDec reaches some kind of stability.

Guest
13th April 2007, 14:39
But the av*.dll still needs to be in the system dir looking forward to not have them there anymore Don't worry, the DLLs will be going away entirely.

And if you read the help file, you will find a way to put the DLLs anywhere you like.

Guest
13th April 2007, 14:41
Found a few bugs in alpha 4.

* If you play until the end, it doesn't exit play mode automatically, and you have to hit stop.

* After the above occurs, GOP stepping is buggy.

G_M_C
13th April 2007, 20:10
Actually, libavcodec.

The difference is that I was willing to confront the seeking issues and solve them. The VC1 development has stalled because the author is apparently unwilling to tackle it. Maybe I will do it for VC1 after DGAVCDec reaches some kind of stability.

Yep, i saw your reply in that thread.

PS: I overlooked the author's remark to DGIndex though, that remark of his wasn't called for at all.

Revgen
14th April 2007, 07:25
Found a few bugs in alpha 4.

* If you play until the end, it doesn't exit play mode automatically, and you have to hit stop.

* After the above occurs, GOP stepping is buggy.

One more thing. When I drag the cursor to certain points the video, the cursor will jump around and I sometimes have to force it to go where I want it.

This is the same vid I had mentioned in an earlier post with the "green frames" problem.This shouldn't be a problem until you start implementing cut points like you have in DGIndex.

Other than that it still indexes correctly.

Guest
14th April 2007, 13:22
One more thing. When I drag the cursor to certain points the video, the cursor will jump around and I sometimes have to force it to go where I want it. That's by design. You can navigate only to random access points, i.e., IDR frames or recovery points. When you position with the trackbar, it will then search forward for the next random access point and decode and display one frame starting from there, finally setting the trackbar position to that point. So, if your GOPs are big, you will see behavior like you describe. You can cut only at GOP boundaries anyway, so it doesn't adversely impact cutting.

DGIndex works the same way, but in MPEG2 people don't often make large GOPs like we see with AVC.

J-Wo
15th April 2007, 22:20
Rename it to "tloeg.264" :)

I'll fix that in the next release.

ohmigod that was the solution to all my problems! Alpha 3 gave me a strange error message (I was too lazy to copy it down) then Alpha 4 would simply crash without any error message. I guess it was the long filenames that screwed it up. Thanks!

Guest
15th April 2007, 23:45
ohmigod that was the solution to all my problems! Alpha 3 gave me a strange error message (I was too lazy to copy it down) then Alpha 4 would simply crash without any error message. I guess it was the long filenames that screwed it up. Thanks! It's still broke? Please tell me the filename that doesn't work in alpha 4.

J-Wo
16th April 2007, 00:17
desperate.housewives.s03e17.720p.hdtv.x264-ctu.0_Track2.h264

Guest
16th April 2007, 01:05
That's strange. It works fine for me. What OS are you running? How did you open it? Drag and drop onto a shortcut to DGAVCIndex is broken, I know about that.

J-Wo
16th April 2007, 03:01
I am using Windows XP. I dragged and dropped from windows explorer into DGAVCIndex, but just now I tried to open from within the program (F2) and it also crashed. I then simply renamed it to something shorter (I tried both test.264 and test.h264) and it worked. So I think there might be something wrong with long filenames, or perhaps one of those characters was causing DGAVC to crash

ChronoCross
16th April 2007, 03:14
desperate.housewives.s03e17.720p.hdtv.x264-ctu.0_Track2.h264

other than the fact that this is a rule 6 issue if renaming it fixed it then it is likely that the directory index is longer then 255 characters. I have had that issue before in ituned due to my insane organization making the folder structure too long.

Guest
16th April 2007, 14:12
@J-Wo

What was the length of the entire pathname?

CruNcher
22nd April 2007, 13:06
I have created an Avisynth source filter for AVC/H.264 streams. I would appreciate feedback and suggestions for the most important features to add. At this point it is fast and reliable but limited in functionality. I need your guidance to prioritize future work. I also ask to be notified about any streams that are problematic with DGAVCDec.

Blue-Ray .m2ts with AVC doesn't work (feature request) ;)

Guest
22nd April 2007, 16:05
Blue-Ray .m2ts with AVC doesn't work (feature request) Do you mean the demuxed elementary stream or the m2ts file itself? Obviously the latter doesn't work because I haven't added container support yet. I will be adding transport stream support first, followed by MP4.

If the elementary stream is not working, please post a link to the stream if you want support.

CruNcher
22nd April 2007, 17:43
no no everything fine with the elementary stream (except that the slider seems to sometimes flip back/forth @ when seeking with the mouse hard todo fine seeks that way with the mouse useing the arrow buttons is precise and works fine hmm) i meant container support :)
huh and it crashed after bringing the main window into the back and then onto the front again boom dgavcindex terminated itself, only happens with a Stream loaded. Jep happens allways with every kind of elementary loaded in the preview window

Guest
22nd April 2007, 17:53
huh and it crashed after bringing the main window into the back and then onto the front again boom dgavcindex terminated itself, only happens with a Stream loaded. Jep happens allways with every kind of elementary loaded in the preview window Oops. I'll fix that.

bob0r
22nd April 2007, 19:27
Blu-Ray

BLU-RAY

REPEAT AFTER ME:
BLU-RAY BLU-RAY is without an E!
BLU-RAY BLU-RAY is without an E!
BLU-RAY BLU-RAY is without an E!
BLU-RAY BLU-RAY is without an E!

(in dutch it rhymes, but oh well :p)

CruNcher
22nd April 2007, 19:35
okay BLU-RAY (will forget it in 2 secs anyway yeah dementia is something bad) ;)

tomos
23rd April 2007, 14:42
not sure if this has been mentioned previously, but i found that dgavc doesnt like AVC files named *.mpv.

it scans fine but just times out loading. renaming the video to .h264 and editing the filename in the dga file so it ends with .h264 works fine. no re-scanning needed

Guest
24th April 2007, 00:41
it scans fine but just times out loading. renaming the video to .h264 and editing the filename in the dga file so it ends with .h264 works fine. no re-scanning needed I'm not able to duplicate this. What do you mean by "times out loading"?

tomos
24th April 2007, 01:16
at the moment i am messing with the hd-dvd movie 'babel'.

i am doing this now.

i run the file babel.mpv through dgavcindex. runs fine. no probs. then the probs start.

I drag and drop the AVS file onto vdub and it sits there for aaaages. task manager shows the cpu use going from 5-25%.

after a while (takes longer depending on the length/size of the source file i think) i get this error from vdub (for the trailer. took about 5 mins. would take 20+ for the actual movie)

---------------------------
VirtualDub Error
---------------------------
Avisynth open failure:
AVCSource: Could not open one of the input files.
(L:\Babel\extra\Trailer.avs, line 2)
---------------------------
OK
---------------------------

After this i change the extension of the file from movie.mpv to movie.h264. i change the extension in the dga file as well. then drag and drop onto vdub and bingo. works fine.

if you still have probs replicating it, i suppose it could be this particular clip maybe?

Guest
24th April 2007, 01:41
Please give me the AVS script and a fragment of the source stream that causes the problem. Thank you.

tomos
24th April 2007, 02:01
Hi,

took 5 megs worth of the video and included the files in a rar file here

http://www.mytempdir.com/1306335

replicated the same issue with this sample

thanks :)

Guest
24th April 2007, 05:07
Still works fine for me.

Can anyone else duplicate it with the files supplied?

Trahald
24th April 2007, 06:47
if i use his files i get the same, 'avcsource:could not open one of the input files' errors.

i tried to drop the file directly into dgavcindex and i get '
---------------------------
Warning
---------------------------
slice_qp_delta makes slice_qp_y out of range

Hit Yes to continue with further popups, hit No to disable them.
---------------------------
Yes No
---------------------------
warnings..
renaming the extension made no difference... dunno if it has to do with where he cut the file? the warnings pop up pretty much immediately

Guest
24th April 2007, 13:47
renaming the extension made no difference Do you mean just to the warnings? Did it make it possible to open the AVS in VirtualDub.

I cannot duplicate this, everything works fine for opening the AVS. Yes, I have the warning popup but it is harmless.

There is nothing in the code that even looks at the filename extension!

Deinorius
24th April 2007, 20:59
I get an error with DGAVCIncx a4. By indexing it shows this warning (attachment). For a second it works, then it stops. But it uses still 50 % CPU, which is much with mine.

Indexing with a3 und decoding with a4 .dlls works fine.

Guest
25th April 2007, 00:30
For the hundred millionth time, if you want support give me the unprocessed input stream, or a fragment thereof.

tomos
25th April 2007, 00:41
Do you mean just to the warnings? Did it make it possible to open the AVS in VirtualDub.

I cannot duplicate this, everything works fine for opening the AVS. Yes, I have the warning popup but it is harmless.

There is nothing in the code that even looks at the filename extension!

i'll give it a go at some point on some other systems and retry. it does seem a little weird.

Guest
25th April 2007, 01:25
Only thing I can think of is that you are inadvertently using DGAVCDecode.dll from alpha 3. You did update both DGAVCIndex and DGAVCDecode, yes?

tomos
25th April 2007, 02:31
crap. sorry, i missed the update.

sorry about wasting your time :(

Deinorius
25th April 2007, 11:00
For the hundred millionth time, if you want support give me the unprocessed input stream, or a fragment thereof. If you want so.

DGAVCIndex stops just before the end of this track. Well, with Index a3 I have no problem.

http://rapidshare.com/files/27821327/test.h264.html

Guest
25th April 2007, 13:44
DGAVCIndex stops just before the end of this track. Well, with Index a3 I have no problem. I can't duplicate it. Everything works just fine for me. When you say stops, do you mean the DGA file is never completed?

Trahald
25th April 2007, 16:03
Do you mean just to the warnings? Did it make it possible to open the AVS in VirtualDub.

I cannot duplicate this, everything works fine for opening the AVS. Yes, I have the warning popup but it is harmless.hmm. i remade the .dga and i still get the avisynth 'avcsource...' error.. my path to the decode.dll goes right into the a4 install dir (if i comment the load plugin line i get avcsource isnt valid error to confirm an old .dll isnt loading.) having said that, if tomos isnt getting the error anymore, then i'll let it go and assume its my config somewhere.

Guest
25th April 2007, 17:21
@Trahald

Your problem sounds like a DLL loading issue for the lavc DLLs. You must update them with the ones in Alpha4 and make sure they are being used.

Deinorius
25th April 2007, 21:54
By Indexing it stops at the beginning of the whole movie, which ist at the end of this track I uploaded.
It never completes, it just hang there and produce a 50 % CPU load. Not to forget this error message.

Eragon4ever
25th April 2007, 22:16
Using the sample by Deinorius I can reproduce the error message (but finishes indexing) and found a crash:
1. Index the sample.
2. Minimize DGAVCIndex.
3. Try maximizing -> crash

Guest
25th April 2007, 22:52
Already reported and fixed. A new alpha will come very soon.

Eragon4ever
26th April 2007, 12:45
I'm sorry. I didn't notice.

lucassp
26th April 2007, 20:07
http://rapidshare.com/files/28075924/test.264.html

when I decode that file using DirectShow it works perfectly, but I decode it using DGAVCIndex it gives me the following errors:
Starting job job1-1 at 21:43:51
Starting preprocessing of job...
Preprocessing finished!
encoder commandline:
--pass 1 --bitrate 9000 --stats "D:\Codecs\test.stats" --bframes 3 --b-pyramid --subme 1 --analyse none --me dia --threads 2 --thread-input --progress --no-psnr --no-ssim --output NUL "D:\Codecs\test.avs"
successfully started encoding
Processing ended at 21:44:25
----------------------------------------------------------------------------------------------------------

Log for job job1-1

avis [info]: 1920x1088 @ 25.00 fps (236 frames)
x264 [info]: using cpu capabilities MMX MMXEXT SSE SSE2 3DNow!
[h264 @ 68980000]non existing PPS referenced
[h264 @ 68980000]decode_slice_header error
[h264 @ 68980000]non existing PPS referenced
[h264 @ 68980000]decode_slice_header error
[h264 @ 68980000]non existing PPS referenced
[h264 @ 68980000]decode_slice_header error
[h264 @ 68980000]non existing PPS referenced
[h264 @ 68980000]decode_slice_header error
[h264 @ 68980000]non existing PPS referenced
[h264 @ 68980000]decode_slice_header error
[h264 @ 68980000]non existing PPS referenced
[h264 @ 68980000]decode_slice_header error
[h264 @ 68980000]non existing PPS referenced
[h264 @ 68980000]decode_slice_header error
[h264 @ 68980000]non existing PPS referenced
[h264 @ 68980000]decode_slice_header error
[h264 @ 68980000]non existing PPS referenced
[h264 @ 68980000]decode_slice_header error
[h264 @ 68980000]non existing PPS referenced
[h264 @ 68980000]decode_slice_header error
[h264 @ 68980000]non existing PPS referenced
[h264 @ 68980000]decode_slice_header error
[h264 @ 68980000]non existing PPS referenced
[h264 @ 68980000]decode_slice_header error
[h264 @ 68980000]non existing PPS referenced
[h264 @ 68980000]decode_slice_header error
[h264 @ 68980000]non existing PPS referenced
[h264 @ 68980000]decode_slice_header error
[h264 @ 68980000]non existing PPS referenced
[h264 @ 68980000]decode_slice_header error
[h264 @ 68980000]non existing PPS referenced
[h264 @ 68980000]decode_slice_header error
[h264 @ 68980000]non existing PPS referenced
[h264 @ 68980000]decode_slice_header error
[h264 @ 68980000]non existing PPS referenced
[h264 @ 68980000]decode_slice_header error
[h264 @ 68980000]non existing PPS referenced
[h264 @ 68980000]decode_slice_header error
[h264 @ 68980000]non existing PPS referenced
[h264 @ 68980000]decode_slice_header error
[h264 @ 68980000]non existing PPS referenced
[h264 @ 68980000]decode_slice_header error
[h264 @ 68980000]non existing PPS referenced
[h264 @ 68980000]decode_slice_header error
[h264 @ 68980000]non existing PPS referenced
[h264 @ 68980000]decode_slice_header error
[h264 @ 68980000]non existing PPS referenced
[h264 @ 68980000]decode_slice_header error
[h264 @ 68980000]non existing PPS referenced
[h264 @ 68980000]decode_slice_header error
[h264 @ 68980000]non existing PPS referenced
[h264 @ 68980000]decode_slice_header error
[h264 @ 68980000]non existing PPS referenced
[h264 @ 68980000]decode_slice_header error
[h264 @ 68980000]non existing PPS referenced
[h264 @ 68980000]decode_slice_header error
[h264 @ 68980000]non existing PPS referenced
[h264 @ 68980000]decode_slice_header error
[h264 @ 68980000]non existing PPS referenced
[h264 @ 68980000]decode_slice_header error
[h264 @ 68980000]non existing PPS referenced
[h264 @ 68980000]decode_slice_header error
[h264 @ 68980000]non existing PPS referenced
[h264 @ 68980000]decode_slice_header error
[h264 @ 68980000]non existing PPS referenced
[h264 @ 68980000]decode_slice_header error
[h264 @ 68980000]non existing PPS referenced
[h264 @ 68980000]decode_slice_header error
[h264 @ 68980000]non existing PPS referenced
[h264 @ 68980000]decode_slice_header error
[h264 @ 68980000]non existing PPS referenced
[h264 @ 68980000]decode_slice_header error
[h264 @ 68980000]non existing PPS referenced
[h264 @ 68980000]decode_slice_header error
[h264 @ 68980000]non existing PPS referenced
[h264 @ 68980000]decode_slice_header error
[h264 @ 68980000]non existing PPS referenced
[h264 @ 68980000]decode_slice_header error
[h264 @ 68980000]non existing PPS referenced
[h264 @ 68980000]decode_slice_header error
[h264 @ 68980000]non existing PPS referenced
[h264 @ 68980000]decode_slice_header error
[h264 @ 68980000]non existing PPS referenced
[h264 @ 68980000]decode_slice_header error
[h264 @ 68980000]non existing PPS referenced
[h264 @ 68980000]decode_slice_header error
[h264 @ 68980000]non existing PPS referenced
[h264 @ 68980000]decode_slice_header error
[h264 @ 68980000]non existing PPS referenced
[h264 @ 68980000]decode_slice_header error
[h264 @ 68980000]non existing PPS referenced
[h264 @ 68980000]decode_slice_header error
[h264 @ 68980000]non existing PPS referenced
[h264 @ 68980000]decode_slice_header error
[h264 @ 68980000]non existing PPS referenced
[h264 @ 68980000]decode_slice_header error
[h264 @ 68980000]non existing PPS referenced
[h264 @ 68980000]decode_slice_header error
[h264 @ 68980000]non existing PPS referenced
[h264 @ 68980000]decode_slice_header error
[h264 @ 68980000]non existing PPS referenced
[h264 @ 68980000]decode_slice_header error
[h264 @ 68980000]non existing PPS referenced
[h264 @ 68980000]decode_slice_header error
[h264 @ 68980000]non existing PPS referenced
[h264 @ 68980000]decode_slice_header error
[h264 @ 68980000]non existing PPS referenced
[h264 @ 68980000]decode_slice_header error
[h264 @ 68980000]non existing PPS referenced
[h264 @ 68980000]decode_slice_header error
[h264 @ 68980000]non existing PPS referenced
[h264 @ 68980000]decode_slice_header error
[h264 @ 68980000]non existing PPS referenced
[h264 @ 68980000]decode_slice_header error
[h264 @ 68980000]non existing PPS referenced
[h264 @ 68980000]decode_slice_header error
[h264 @ 68980000]non existing PPS referenced
[h264 @ 68980000]decode_slice_header error
[h264 @ 68980000]non existing PPS referenced
[h264 @ 68980000]decode_slice_header error
[h264 @ 68980000]non existing PPS referenced
[h264 @ 68980000]decode_slice_header error
[h264 @ 68980000]non existing PPS referenced
[h264 @ 68980000]decode_slice_header error
[h264 @ 68980000]non existing PPS referenced
[h264 @ 68980000]decode_slice_header error
[h264 @ 68980000]non existing PPS referenced
[h264 @ 68980000]decode_slice_header error
[h264 @ 68980000]non existing PPS referenced
[h264 @ 68980000]decode_slice_header error
[h264 @ 68980000]non existing PPS referenced
[h264 @ 68980000]decode_slice_header error
[h264 @ 68980000]non existing PPS referenced
[h264 @ 68980000]decode_slice_header error
[h264 @ 68980000]non existing PPS referenced
[h264 @ 68980000]decode_slice_header error
[h264 @ 68980000]non existing PPS referenced
[h264 @ 68980000]decode_slice_header error
[h264 @ 68980000]non existing PPS referenced
[h264 @ 68980000]decode_slice_header error
[h264 @ 68980000]non existing PPS referenced
[h264 @ 68980000]decode_slice_header error
[h264 @ 68980000]non existing PPS referenced
[h264 @ 68980000]decode_slice_header error
[h264 @ 68980000]non existing PPS referenced
[h264 @ 68980000]decode_slice_header error
[h264 @ 68980000]non existing PPS referenced
[h264 @ 68980000]decode_slice_header error
[h264 @ 68980000]non existing PPS referenced
[h264 @ 68980000]decode_slice_header error
[h264 @ 68980000]non existing PPS referenced
[h264 @ 68980000]decode_slice_header error
[h264 @ 68980000]non existing PPS referenced
[h264 @ 68980000]decode_slice_header error
[h264 @ 68980000]non existing PPS referenced
[h264 @ 68980000]decode_slice_header error
[h264 @ 68980000]non existing PPS referenced
[h264 @ 68980000]decode_slice_header error
[h264 @ 68980000]non existing PPS referenced
[h264 @ 68980000]decode_slice_header error
[h264 @ 68980000]non existing PPS referenced
[h264 @ 68980000]decode_slice_header error
[h264 @ 68980000]non existing PPS referenced
[h264 @ 68980000]decode_slice_header error
[h264 @ 68980000]non existing PPS referenced
[h264 @ 68980000]decode_slice_header error
[h264 @ 68980000]non existing PPS referenced
[h264 @ 68980000]decode_slice_header error
[h264 @ 68980000]non existing PPS referenced
[h264 @ 68980000]decode_slice_header error
[h264 @ 68980000]non existing PPS referenced
[h264 @ 68980000]decode_slice_header error
[h264 @ 68980000]non existing PPS referenced
[h264 @ 68980000]decode_slice_header error
[h264 @ 68980000]non existing PPS referenced
[h264 @ 68980000]decode_slice_header error
[h264 @ 68980000]non existing PPS referenced
[h264 @ 68980000]decode_slice_header error
[h264 @ 68980000]non existing PPS referenced
[h264 @ 68980000]decode_slice_header error
[h264 @ 68980000]non existing PPS referenced
[h264 @ 68980000]decode_slice_header error
[h264 @ 68980000]non existing PPS referenced
[h264 @ 68980000]decode_slice_header error
[h264 @ 68980000]non existing PPS referenced
[h264 @ 68980000]decode_slice_header error
[h264 @ 68980000]non existing PPS referenced
[h264 @ 68980000]decode_slice_header error
[h264 @ 68980000]non existing PPS referenced
[h264 @ 68980000]decode_slice_header error
[h264 @ 68980000]non existing PPS referenced
[h264 @ 68980000]decode_slice_header error
[h264 @ 68980000]non existing PPS referenced
[h264 @ 68980000]decode_slice_header error
[h264 @ 68980000]non existing PPS referenced
[h264 @ 68980000]decode_slice_header error
[h264 @ 68980000]non existing PPS referenced
[h264 @ 68980000]decode_slice_header error
[h264 @ 68980000]non existing PPS referenced
[h264 @ 68980000]decode_slice_header error
[h264 @ 68980000]non existing PPS referenced
[h264 @ 68980000]decode_slice_header error
[h264 @ 68980000]non existing PPS referenced
[h264 @ 68980000]decode_slice_header error
[h264 @ 68980000]non existing PPS referenced
[h264 @ 68980000]decode_slice_header error
[h264 @ 68980000]non existing PPS referenced
[h264 @ 68980000]decode_slice_header error
[h264 @ 68980000]non existing PPS referenced
[h264 @ 68980000]decode_slice_header error
[h264 @ 68980000]non existing PPS referenced
[h264 @ 68980000]decode_slice_header error
[h264 @ 68980000]non existing PPS referenced
[h264 @ 68980000]decode_slice_header error
[h264 @ 68980000]non existing PPS referenced
[h264 @ 68980000]decode_slice_header error
[h264 @ 68980000]non existing PPS referenced
[h264 @ 68980000]decode_slice_header error
[h264 @ 68980000]non existing PPS referenced
[h264 @ 68980000]decode_slice_header error
[h264 @ 68980000]non existing PPS referenced
[h264 @ 68980000]decode_slice_header error
[h264 @ 68980000]non existing PPS referenced
[h264 @ 68980000]decode_slice_header error
[h264 @ 68980000]non existing PPS referenced
[h264 @ 68980000]decode_slice_header error
[h264 @ 68980000]non existing PPS referenced
[h264 @ 68980000]decode_slice_header error
[h264 @ 68980000]non existing PPS referenced
[h264 @ 68980000]decode_slice_header error
[h264 @ 68980000]non existing PPS referenced
[h264 @ 68980000]decode_slice_header error
[h264 @ 68980000]non existing PPS referenced
[h264 @ 68980000]decode_slice_header error
[h264 @ 68980000]non existing PPS referenced
[h264 @ 68980000]decode_slice_header error
[h264 @ 68980000]non existing PPS referenced
[h264 @ 68980000]decode_slice_header error
[h264 @ 68980000]non existing PPS referenced
[h264 @ 68980000]decode_slice_header error
[h264 @ 68980000]non existing PPS referenced
[h264 @ 68980000]decode_slice_header error
[h264 @ 68980000]non existing PPS referenced
[h264 @ 68980000]decode_slice_header error
[h264 @ 68980000]non existing PPS referenced
[h264 @ 68980000]decode_slice_header error
[h264 @ 68980000]non existing PPS referenced
[h264 @ 68980000]decode_slice_header error
[h264 @ 68980000]non existing PPS referenced
[h264 @ 68980000]decode_slice_header error
[h264 @ 68980000]non existing PPS referenced
[h264 @ 68980000]decode_slice_header error
[h264 @ 68980000]non existing PPS referenced
[h264 @ 68980000]decode_slice_header error
[h264 @ 68980000]non existing PPS referenced
[h264 @ 68980000]decode_slice_header error
[h264 @ 68980000]non existing PPS referenced
[h264 @ 68980000]decode_slice_header error
[h264 @ 68980000]non existing PPS referenced
[h264 @ 68980000]decode_slice_header error
[h264 @ 68980000]non existing PPS referenced
[h264 @ 68980000]decode_slice_header error
[h264 @ 68980000]non existing PPS referenced
[h264 @ 68980000]decode_slice_header error
x264 [info]: slice I:5 Avg QP:20.40 size:178162
x264 [info]: slice P:149 Avg QP:21.73 size: 55220
x264 [info]: slice B:82 Avg QP:24.37 size: 21680
x264 [info]: mb I I16..4: 36.5% 0.0% 63.5%
x264 [info]: mb P I16..4: 38.7% 0.0% 0.0% P16..4: 52.4% 0.0% 0.0% 0.0% 0.0% skip: 8.9%
x264 [info]: mb B I16..4: 3.9% 0.0% 0.0% B16..8: 30.5% 0.0% 0.0% direct:25.4% skip:40.2%
x264 [info]: final ratefactor: 22.24
x264 [info]: kb/s:9234.2

encoded 236 frames, 7.06 fps, 9234.89 kb/s

----------------------------------------------------------------------------------------------------------
The current job contains errors. Skipping chained jobs

ToS_Maverick
26th April 2007, 20:53
i can confirm this, it happens sometimes with recordings from german dvb-s2.

Guest
26th April 2007, 21:11
I don't know what you guys are talking about. What is that log from?

If you are decoding using DGAVCDecode.dll via an avisynth script, that delivers decompressed video, so how could the log say anything about invalid PPSs?

Tell me more because I can't guess what your entire process is. You're giving me logs from other software without telling me about it.

Does the Avisynth script play correctly in VirtualDub?

lucassp
26th April 2007, 21:22
DGAVCDecode_AVCSource("D:\Codecs\test.dga")

that's my .avs file and it plays well under Media Player. the log is from MeGUI.

Guest
27th April 2007, 02:48
DGAVCDecode_AVCSource("D:\Codecs\test.dga")

that's my .avs file and it plays well under Media Player. the log is from MeGUI. You better ask the MeGui guys, then. First, I have no idea what DGAVCDecode_AVCSource() is. I didn't make it and never heard of it. Second, my filter delivers uncompressed video so there's no way it could be responsible for unreferenced PPS's, etc.

ChronoCross
27th April 2007, 05:20
that looks like a x264 output.

@neuron2
DGAVCDecode_AVCSource() is simply a different way of calling a filer. Basically think if you have both DVD2AVI's dll and DGDecode's dll loading with avisynth.

DVD2AVI_MPEG2Source() would call the DVD2AVI dll.

DGDecode_MPEG2Source() would call DGindex's dll.

ToS_Maverick
27th April 2007, 08:10
lucassp's log is from megui + x264, i sometimes get the same messages from megui + xvid. don't know if the encoder or megui throws the errors :(

here's my log:

Looking for job processor for job...
Processor found!
Starting job job2 at 05:00:26
Starting preprocessing of job...
Preprocessing finished!
encoder commandline:
-i "M:\Video\DVB\collateral.avs" -pass2 "M:\Video\DVB\collateral.stats" -bitrate 4720 -chigh 15 -clow 5 -overhead 0 -max_key_interval 25 -nopacked -qtype 1 -closed_gop -imin 3 -imax 4 -pmin 3 -pmax 5 -max_bframes 2 -bvhq -bquant_ratio 162 -bquant_offset 0 -bmin 3 -bmax 5 -threads 2 -mkv "M:\Video\DVB\collateral.mkv"
successfully started encoding
Processing ended at 09:38:42
----------------------------------------------------------------------------------------------------------

Log for job job2

xvid_encraw - raw mpeg4 bitstream encoder written by Christoph Lampert 2002-2003

[h264 @ 68980000]top block unavailable for requested intra mode at 44 56
[h264 @ 68980000]error while decoding MB 44 56, bytestream (14949)
[h264 @ 68980000]top block unavailable for requested intra4x4 mode -1 at 61 56
[h264 @ 68980000]error while decoding MB 61 56, bytestream (42193)
[h264 @ 68980000]top block unavailable for requested intra4x4 mode -1 at 69 56
[h264 @ 68980000]error while decoding MB 69 56, bytestream (21491)
Trying to retrieve width and height from input header
Input colorspace is YV12
xvidcore build version: xvid-1.2.0-dev
Bitstream version: 1.2.-127
Detected CPU flags: ASM MMX MMXEXT SSE SSE2 TSC
Detected 2 cpus, using 2 threads.

Tot: enctime(ms) =8404354.00, length(bytes) = -235050453
Avg: enctime(ms) = 48.80, fps = 20.49, length(bytes) = -1364
I frames: 7723 frames, size = 63123/487504004, quants = 3 / 3.00 / 3
P frames: 82609 frames, size = -18999/-1569517360, quants = 3 / 3.04 / 4
B frames: 81746 frames, size = 10360/846961705, quants = 4 / 4.03 / 5
N frames: 150 frames, size = 7/ 1198
desired video bitrate of this job: 4720 kbit/s - obtained video bitrate (approximate): 4717 kbit/s
----------------------------------------------------------------------------------------------------------
Starting postprocessing of job...
Job completed successfully and deletion of intermediate files is activated
Postprocessing finished!


edit: wrong logfile ;)

lucassp
27th April 2007, 10:04
You better ask the MeGui guys, then. First, I have no idea what DGAVCDecode_AVCSource() is. I didn't make it and never heard of it. Second, my filter delivers uncompressed video so there's no way it could be responsible for unreferenced PPS's, etc.

ok! but that file handled with DirectShowSource works perfectly while handled with DGAVCIndex fails to encode!

ToS_Maverick
27th April 2007, 12:16
x264 refuses to code the file, xvid_encraw works fine... but sometimes the encoded stream has artifacts due to an error in the stream/decoder, don't know which one ;)

squid_80
27th April 2007, 13:37
Second, my filter delivers uncompressed video so there's no way it could be responsible for unreferenced PPS's, etc.
The external dlls are throwing errors to stderr. They're only visible when using a command line program like x264 or xvid_encraw.

Guest
27th April 2007, 16:54
ok! but that file handled with DirectShowSource works perfectly while handled with DGAVCIndex fails to encode! But you said the AVS plays fine in Media Player. I'll look into it.

lucassp
28th April 2007, 20:47
But you said the AVS plays fine in Media Player. I'll look into it.

It plays well in Media Player using both source (Direct Show and DGAVCIndex) filters, but encoding fails using DGAVCIndex,

Guest
28th April 2007, 21:41
It plays well in Media Player using both source (Direct Show and DGAVCIndex) filters, but encoding fails using DGAVCIndex, Please give me the x264 command line that fails with the linked stream. Thank you.

Another question: Your log says it encoded 236 frames, and that is how many there are when I play the script in Avisynth. So in what way did encoding fail? Is it just the PPS messages that bother you?

tomos
28th April 2007, 23:21
all fine on 32 bit vista now. cant get it to work at all on 64 bit vista though. using alpha 4 and dragging and dropping the video onto dgavcindex loads the video fine. it indexes fine but i have no joy at all in opening the AVS file after.

with only the avcsource line in the AVS script i get:

there is no function named "AVCSource"

if i use 'load plugin', i get:

LoadPlugin: ƒvƒ‰ƒOƒCƒ““ÇžƒGƒ‰[

reading back to the start of this thread it seems it's because the dll isnt being loaded?

tried various combos of having the dll's in the avisynth folder as i do in 32 bit vista and in win/system32 but no joy.

anyone using Vista x64 with dgavc

alls fine via DSS btw

Thunderbolt8
29th April 2007, 01:22
Many different satellite streams, all H.264.
If all those work, we are finally getting somewhere with H.264
do you mean with that that mkvmerge has problems with file sizes > 10 gb and therefore this could be part of my problems I posted in the other threads ?

squid_80
29th April 2007, 05:13
reading back to the start of this thread it seems it's because the dll isnt being loaded?
tried various combos of having the dll's in the avisynth folder as i do in 32 bit vista and in win/system32 but no joy.
anyone using Vista x64 with dgavc
If you're using a 64-bit version of windows put the dlls in windows\syswow64, not windows\system32.

tomos
29th April 2007, 06:39
doh!

thanks. will gibe that a go :)

edit
-----

it worked :)

lucassp
29th April 2007, 19:00
Please give me the x264 command line that fails with the linked stream. Thank you.

Another question: Your log says it encoded 236 frames, and that is how many there are when I play the script in Avisynth. So in what way did encoding fail? Is it just the PPS messages that bother you?

--pass 1 --bitrate 9000 --stats "D:\Codecs\test.stats" --bframes 3 --b-pyramid --subme 1 --analyse none --me dia --threads 2 --thread-input --progress --no-psnr --no-ssim --output NUL "D:\Codecs\test.avs"

--pass 2 --bitrate 9000 --stats ".stats" --ref 5 --mixed-refs --no-fast-pskip --bframes 3 --b-pyramid --b-rdo --bime --weightb --subme 6 --trellis 2 --analyse all --8x8dct --threads auto --thread-input --progress --no-psnr --no-ssim --output "D:\Codecs\test.mp4" "D:\Codecs\test.avs"

The first pass gives me the PPS messages and the second pass doesn't even start. The log that I posted on the 26th April is the log from the first pass.

J-Wo
8th May 2007, 21:23
Great program neuron2. Just wondering if there are any plans in the next release to add usage of a template.avs file in the DGAVCDec program directly. It would work much like template.avs does with DGIndex. Basically my template file would allow DGAVCDec to automatically create an avisynth script file with every project created. For my purposes I would want the script to contain the AVCSource("") line but with the correct filename automatically generated for me.

G_M_C
8th May 2007, 22:12
Great program neuron2. Just wondering if there are any plans in the next release to add usage of a template.avs file in the DGAVCDec program directly. It would work much like template.avs does with DGIndex. Basically my template file would allow DGAVCDec to automatically create an avisynth script file with every project created. For my purposes I would want the script to contain the AVCSource("") line but with the correct filename automatically generated for me.

If i understand Neuron2's post about this a bit, that he has the idea to get most, if not all, DGIndex features into DGAVCIndex. Might even end up with the same GUI.

And my hope is that in the long run DGIndex, DGAVCIndex (and my utlimate hope for DGVC1Index) will all be integrated into the ultimate tool: DGHDIndex. But thats my hope, and since i dont have a chrystal ball her, i dont know if Neuron2 has the same idea of it (and sadly my programming skillz are not good enough, so that i can help out).

In the mean time i give this opinion on DG(AVC)Index and Neuron2's effords: http://gathering.tweakers.net/global/smileys/worshippy.gif

Guest
8th May 2007, 22:51
I already have AVS template generation working in my private build. I want to get DGMPGDec 1.4.9 out first and then I will resume fulltime on DGAVCDec and get out a new alpha.

I doubt that DGMPEGDec and DGAVCDec will merge but you never know.

Gannjunior
9th May 2007, 22:49
hi big neuron and thanks for your new tool!! :)

trying to open avc files (.mts) produced by my panasonic HDC-SD1 but when i drop the file into dgavcdec, its not able to open...any suggestion? do you want a little clip?

ciao!

ToS_Maverick
9th May 2007, 22:53
i'll ask instead of neuron2, to keep him from asking the same question over and over again:

did you demux the stream? cause avcindex currently only supports .h264 files

Gannjunior
9th May 2007, 23:14
hi maverick...yes... i was reading now that i have to demux...but i'm having some trouble...do i demux it by mencoder? reading here http://forum.doom9.org/showthread.php?t=114361&highlight=avchd , but im not able to get any demux...

lucassp
9th May 2007, 23:17
even if he demuxes the .mts files, he cannot open the .h264 streams with DGAVCIndex because that camcoder records at 1440x1080i.

Guest
9th May 2007, 23:48
even if he demuxes the .mts files, he cannot open the .h264 streams with DGAVCIndex because that camcoder records at 1440x1080i. That shouldn't be a problem unless it is PAFF. Is that what you are referring to?

Inventive Software
10th May 2007, 11:49
That shouldn't be a problem unless it is PAFF. Is that what you are referring to?

I thought you'd implemented PAFF support, or at least was working on it....

lucassp
10th May 2007, 12:16
That shouldn't be a problem unless it is PAFF. Is that what you are referring to?

I don't know for sure if it's PAFF :) It would be useful if Gannjunior could provide us a short stream so we can check.

LE: After some google searches I found that the AVCHD standard encodes only PAFF.

Gannjunior
11th May 2007, 09:17
hi luca,
i'll provide a little "raw" clip from my pana later. :)

I solved the problem in this way: i passed the raw avc file to nero vision that it should be able to edit avc directly, but, in the facts, it has some problems. However it permits me to get a passage file: infact i can obtain an hd-mpjpeg file that i can work in pinnacle 10.7 (waiting for may 15th the 11 version)..-> new edited mjpeg file that finally i can pass to nero recode or megui to obtain the final hd-avc file edited.
i would like to show the litte 'job'...what subforum could be better? avc-forum?

thanks,
ciao

Deinorius
11th May 2007, 15:19
Is there any documentation about Commandline using of DGAVCIndex?
I would like to use DGAVCIndex in StaxRip per Event Command.

I just can open the file. How can I make the .dga?

Gannjunior
11th May 2007, 15:48
dgavcindex will produce the .dga file..and after you have to load it in avisynth by using dgavcdecode.dll...

----------
for luca and neuron:

here your are a 33" clip as shot from my panasonic HDC-SD1, at 13 mbit HF.

http://www.savefile.com/files/713171

ciao!!

Guest
11th May 2007, 16:55
Is there any documentation about Commandline using of DGAVCIndex?
I would like to use DGAVCIndex in StaxRip per Event Command.

I just can open the file. How can I make the .dga? You'll have to wait for a later version for command line support.

lucassp
11th May 2007, 19:47
hi luca,
i'll provide a little "raw" clip from my pana later. :)

I solved the problem in this way: i passed the raw avc file to nero vision that it should be able to edit avc directly, but, in the facts, it has some problems. However it permits me to get a passage file: infact i can obtain an hd-mpjpeg file that i
can work in pinnacle 10.7 (waiting for may 15th the 11 version)..-> new edited mjpeg file that finally i can pass to nero recode or megui to obtain the final hd-avc file edited.
i would like to show the litte 'job'...what subforum could be better? avc-forum?

thanks,
ciao

You can recode a AVCHD stream using Haali Media Splitter, CoreAVC, AVISynth and MeGUI (from what I know CoreAVC is the only solution for PAFF):

DirectShowSource("D:\Codecs\00003.MTS",fps=29.9700898503294,audio=false)
LanczosResize(1440,784) # Lanczos (Sharp)
ConvertToYV12()

Deinorius
12th May 2007, 08:19
You'll have to wait for a later version for command line support. I see. I hope, we don't have to wait too long. :devil:

@Gannjunior
I talked about the Commandline Interface, not the GUI.

dirio49
19th May 2007, 22:50
HI.

When i minimize it and then try to get it back up it crashes.( this happens when i have something loaded)
I am running Microsoft Windows XP Professional (5.1, Build 2600 : Service Pack 2).
thanks

Guest
20th May 2007, 04:13
Yeah, I know, it's already been reported and fixed. Alpha 5 is very near.

Guest
22nd May 2007, 04:56
Here is alpha 5. I regret that I can't remember exactly what I did, because I neglected to keep a copy of the alpha 4 source to diff against. :( I do know that I fixed a lot of stuff and added some new stuff, such as Save BMP and AVS template creation.

http://neuron2.net/dgavcdec/dgavcdec100a5.zip

Deinorius
22nd May 2007, 07:30
I'm afraid, you didn't add Commandline? When will it be added?

ChronoCross
22nd May 2007, 07:47
how about we let him finish actual decoding features before asking for command line =)

You know.....mbaff paff support hehe.

Guest
22nd May 2007, 08:15
I'm afraid, you didn't add Commandline? When will it be added? As I said earlier, it will be added in a future version, in the fullness of time.

@ChronoCross

MBAFF is already there. It's PAFF that is missing.

lucassp
22nd May 2007, 13:22
hello

when I'm trying to open this file:

http://rapidshare.com/files/32723790/test.264.html

I get the following messege and nothing happens no matter what option I make:

http://img515.imageshack.us/img515/8182/testet9.png (http://imageshack.us)

Guest
22nd May 2007, 14:00
The file is garbage. There are no start code prefixes at all. Search for 00 00 01 and there aren't any! It also doesn't play in VLC.

I see in my binary editor that the file came from an x264 encode. What did you do to mess it up so bad? If you didn't do anything, you better inform akupenguin about this.

lucassp
22nd May 2007, 14:50
The original file is a MKV file and I dumped the video stream using Mplayer. Now I've dumped the video stream using another MKV demuxer and it works ok. My conclusion is that Mplayer doesn't dump tracks from MKV files correctly.

G_M_C
22nd May 2007, 15:17
The original file is a MKV file and I dumped the video stream using Mplayer. Now I've dumped the video stream using another MKV demuxer and it works ok. My conclusion is that Mplayer doesn't dump tracks from MKV files correctly.

I found that it is best to use the tools that go with the MKV-package (in this case MKVExtract tracks "file.mkv" <options>). It's never made an error as yet.

I'll try the newer DGAVCIndex-version later tonight on a complete 2 hours long 1080p that i'm using to sprucing up my old DVD. See if it works as well as the alpha 4 version.

mellon
22nd May 2007, 20:54
Can you incorporate VC-1 decoding in the same rush? When decoding is delegated to ffmpeg and ffmpeg has a VC-1 decoder now. I don't know about the efforts - just asking.

Best wishes

Deinorius
22nd May 2007, 21:07
how about we let him finish actual decoding features before asking for command line =)

You know.....mbaff paff support hehe. Maybe, but it would make my life easier. :p

Actually I'm just asking. :devil:

G_M_C
22nd May 2007, 22:09
I'm not interested in a CLI at all, i'd rather see the implementation of a "information panel" like DGMPGIndex has. Not to see the kind of frame-type/video-info (interlaced/Rec709 or such), but to monitor progress when you save the project (the other info for the panel will come later, i'm shure).

This because it is very hard to guess the progress from the movement of the tiny frame selector, especially on 2 hours plus video-files. Atm i put up my taskmanager to see when exactly the CPU-usage drops, to be shure the indexation has ended (and that is offcourse not my preferred method ;) ).

But i put up with it, just because this tool works so well when doing my transcode-work through AviSynth etc.

Guest
23rd May 2007, 01:21
Yeah, I hear ya. I was thinking the same thing the other day. How do I know when it is done? I'll definitely put something in the next alpha to resolve that. Thanks for highlighting it, G_M_C.

I want to just point out to people that I have limited time for all this stuff; it's a hobby for me. That means I have to pick and choose and do the important stuff first. And I have to have fun doing it! So please be patient about functionality. I'm listening and I appreciate your ideas. But they may take a while to rise to the top of the priority list.

Right now, I want to get the DLLs eliminated so that I can trace/debug the decoder directly. That will be essential for implementing PAFF support.

Deinorius
23rd May 2007, 06:29
Oh, that's really important. So don't worry about me. :)

G_M_C
23rd May 2007, 08:26
Yeah, I hear ya. I was thinking the same thing the other day. How do I know when it is done? I'll definitely put something in the next alpha to resolve that. Thanks for highlighting it, G_M_C.

I want to just point out to people that I have limited time for all this stuff; it's a hobby for me. That means I have to pick and choose and do the important stuff first. And I have to have fun doing it! So please be patient about functionality. I'm listening and I appreciate your ideas. But they may take a while to rise to the top of the priority list.

Right now, I want to get the DLLs eliminated so that I can trace/debug the decoder directly. That will be essential for implementing PAFF support.

I know that you're only doing this for a hobby; That's why i dont ask for miracles, or all knids of features. But I got the feeling you ported some code from DGMPGIndex, so i thought of the info-panel. And the only thing i ask for in that panel is the indicater that stetes the estimated time remaining / elapsed time, and the "FINISHED" :)

On the subject of the ported code; I noticed the ini's are (allmost) the same, and i have a question about that: Does changing the DCT to 5 (IEEE 1180) and the scale to 0 (TV scale) produce the disired effect (ie ouputting TV scaled IEEE1180) ?

PS: In the original ini they are on 6 (SSEMMX SKAL) and 1 (PC-scale).

Guest
23rd May 2007, 12:30
The INI file is currently just an artifact. I haven't addressed that yet.

Inventive Software
23rd May 2007, 13:49
Are IDCT's actually used with AVC or not?

Guest
23rd May 2007, 14:15
Yes, of course.

Toti
23rd May 2007, 18:14
@ Neuron2, I am mostly a reader this is why I have just a few post due to my long time membership.

I do want to say that this is an impressive software, yes it is alpha but works excellent. DGMPGIndex is not just a tool is a masterpiece.

I see this DGAVCIndex becoming another masterpiece. Although, I don't place many comments I do use and wait in anticipation for every release of yours.

Thanks, for the great programs. :)

Pookie
24th May 2007, 04:56
She's really starting to look like another app we all know and love :) Thanks for your hard work.

G_M_C
24th May 2007, 22:08
I've got the feeling that Alpha 5 is slower than Alpha 4, or are those feelings just figments of my imagination :rolleyes: ?

Guest
24th May 2007, 22:54
Can't you time it for the same stream with both versions?

I can't think of any change that would have affected the speed.

kweek
25th May 2007, 00:36
Just started an x264 encode with 1.0.0 Alpha 5 and I saw this in the console

Compiler did not align stack variables. Libavcodec has been miscompiled
and may be very slow or crash. This is not a bug in libavcodec,
but in the compiler. Do not report crashes to FFmpeg developers.

It's encoding and i'll leave it on, hope nothing's wrong. Thanks for this great prog!

Guest
25th May 2007, 01:26
Oops, forgot to zap that message.

It's a big can of worms. Search for it on Google for details.

Anyway, it'll disappear when I get the native Windows compilation done for the DLLs.

I'm curious about your application. You're transcoding H264 to H264. What is the origin of the source material and why are you transcoding it?

bob0r
25th May 2007, 02:39
In general 3 things:
1: H.264 HDDVD
2: H.264 BLURAY
3: H.264 (MBAFF/PAFF) Satellite streams

Mostly transcoded to fit on dvd5 or dvd9, for your burning pleassures.

G_M_C
25th May 2007, 08:29
Can't you time it for the same stream with both versions?

I can't think of any change that would have affected the speed.

Good idea, i'll do that tonight when im back from work.

But i woulnd be at all surprised if it was just my imagination after all http://gathering.tweakers.net/global/smileys/bonk3.gif

:D

kweek
25th May 2007, 15:20
tnx for your answer


I'm curious about your application. You're transcoding H264 to H264. What is the origin of the source material and why are you transcoding it?

Blu Ray -> DVD9

The console is giving errors like this one many times
[h264 @ 68980000]top block unavailable for requested intra mode at 99 50
[h264 @ 68980000]error while decoding MB 99 50, bytestream (24803)
[h264 @ 68980000]error while decoding MB 60 43, bytestream (-22)
[h264 @ 68980000]concealing 1418 DC, 1418 AC, 1418 MV errors

G_M_C
25th May 2007, 22:49
Good idea, i'll do that tonight when im back from work.

But i woulnd be at all surprised if it was just my imagination after all http://gathering.tweakers.net/global/smileys/bonk3.gif

:D

Welll; Got the results in .... the difference between Alpha-3 and newer versions was indeed remarkable. The difference between Alpha-4 and 5 was negible.

Test was done on my "used to be über machine", dual Xeon 3.06 / 2 Gb registered, HT swithed on.

Test file used was 151604 frames@23.976fps, approx. 1hrs, 45mins, 23secs.


avis [info]: 1920x800 @ 23.98 fps (151604 frames)
x264 [info]: slice I:1955 Avg QP:17.72 size:156220a 0:00:00
x264 [info]: slice P:89115 Avg QP:19.57 size: 67233
x264 [info]: slice B:60534 Avg QP:20.51 size: 28493
x264 [info]: mb I I16..4: 1.8% 97.4% 0.8%
x264 [info]: mb P I16..4: 0.0% 7.5% 0.1% P16..4: 46.5% 24.9% 13.6% 0.2% 0.1%
skip: 7.0%
x264 [info]: mb B I16..4: 0.0% 0.6% 0.0% B16..8: 31.7% 1.6% 3.8% direct: 8.4%
skip:53.9%
x264 [info]: 8x8 transform intra:98.4% inter:84.7%
x264 [info]: direct mvs spatial:96.0% temporal:4.0%
x264 [info]: ref P 47.6% 23.7% 13.5% 8.7% 6.5%
x264 [info]: ref B 53.3% 30.2% 6.9% 6.4% 3.3%
x264 [info]: kb/s:10149.0

Indexed this same file 2 times per alpha-version, and took average on the time needed. Rebooted in between runs, and disconnected network/killed firewalls and virus-scanners.

Indexing on:
- Alpha-3 took approx. 300 seconds
- Alpha-4 took approx.1530 seconds
- Alpha-5 took approx 1530 seconds.

Also observed that the programm used 1 tread, out of max. of 4 possible threads.

My conclusions, based on the huge difference between A3 and A4 and the reported errors in previous posts, is that it looks like something went wrong when AVformat-51.dll was eliminated/build into the package. But thats only a guess; It could also be that integrating/switching to the new GUI is somehow involved.

Hope this helps Neuron2.

But anyway, taking long or not, it's s
till looking out to be a very good tool :)

MatMaul
26th May 2007, 00:14
I think inline asm code of ffmpeg is skipped during the compilation with visual c++

Guest
26th May 2007, 03:35
The indexing does not use libavcodec, it uses code from the reference decoder only. I will investigate. My tests show just under a factor of two, though.

Anyway, libavcodec is still being compiled with mingw/msys.

G_M_C
26th May 2007, 09:26
Oops forgot to note that I observed that 1 thread was used bij de programm, out of max 4 possible threads. But i knew that it isnt multi-threaded yet. Edited my post to include this info, so it's easier to read back.

Guest
26th May 2007, 15:12
I finally managed to get DGAVCDec to work with the libavcodec from ffdshow_tryouts. That means I am now able to trace and debug the decoder DLL seamlessly with my application. Another step towards PAFF. :)

Performance seems no worse than with the mingw/msys build.

kweek
26th May 2007, 23:35
The errors that i mentioned earlier didn't have any influance on the encode. Everythin went fine.

Something new has come up, when I load a h.264 file thats in a directory with a long name (48chars) DGAVCIndex crashes.

Guest
27th May 2007, 01:36
Something new has come up, when I load a h.264 file thats in a directory with a long name (48chars) DGAVCIndex crashes. Please give me the entire path name and file name. Thank you.

kweek
27th May 2007, 01:45
Please give me the entire path name and file name. Thank you.

Path
C:\MPG\DVDSource\Romeo.and.Juliet.1996.DVD5.720p.HDTV.x264.PROPER\Romeo.and.Juliet.1996.DVD5.720p.HDTV.x264.PROPER.dga

DGAVCDecode.dll is in C:\MPG\AviSynth 2.5\plugins

AVS
AVCSource("Romeo.and.Juliet.1996.DVD5.720p.HDTV.x264.PROPER.dga")
spline36resize(1280,720,2,0,1916,1076)
FluxSmoothT(3)
LimitedSharpenFaster(ss_x=1.0, ss_y=1.0, Smode=3, strength=80, overshoot=1)
SPresso(limit=2, limitC=0, bias=15, biasC=0, RGmode=17, RGmodeC=0)

I did not read the previsious 15 pages of this thread btw :s

Guest
27th May 2007, 02:11
You said DGAVCIndex crashes. When does it crash? When you open the file (then give me the path and file name for the input file)? When you Save Project?

Or did you mean the crash occurs when you load the AVS into something?

Please be precise. There's no point to give me the script if DGAVCIndex is crashing! You're just confusing me.

kweek
27th May 2007, 02:32
You said DGAVCIndex crashes. When does it crash? When you open the file (then give me the path and file name for the input file)? When you Save Project?

Or did you mean the crash occurs when you load the AVS into something?

Please be precise. There's no point to give me the script if DGAVCIndex is crashing! You're just confusing me.

Oh yeah that's right. Sowwy for the mixup, stupid me. DGAVCIndex is indeed crashing when opening C:\MPG\DVDSource\Romeo.and.Juliet.1996.DVD5.720p.HDTV.x264.PROPER\romeo.and.juliet.1080p.h264.dd51_video1.h264

Doesn't crash when opening C:\MPG\DVDSource\Romeo\romeo.and.juliet.1080p.h264.dd51_video1.h264 or My Documents\romeo.and.juliet.1080p.h264.dd51_video1.h264

Guest
27th May 2007, 02:41
Ok, thank you kweek. I've duplicated it and will fix it for the next alpha release.

EDIT: The JM reference software has some paths limited to 100 characters!

G_M_C
27th May 2007, 11:48
Looked back at the test i did, i saw a (cosmetic ?) slight error.

The test-file is in 23.976 fps, but the programm-bar of DGAVCIndex reports 23.98 fps. The .dga opens as 23.976 though, so it is probably just cosmetic.

hajj_3
27th May 2007, 12:28
Does the latest alpha support dvb-s2 h264 .ts files?? if not please can you add it.

here is a clip for you to test with to get it working, its a dvb-s2 h264 .ts file recorded from discovery channel in sweden:

http://www.sendspace.com/file/hwr40h (58mb)

G_M_C
27th May 2007, 12:33
Does the latest alpha support dvb-s2 h264 .ts files?? if not please can you add it.

here is a clip for you to test with to get it working, its a dvb-s2 h264 .ts file recorded from discovery channel in sweden:

http://www.sendspace.com/file/hwr40h (58mb)

Please read the earlier posts. It isnt supported yet, it only works with RAW H264 files.

You'll have to demux it, and hope it isnt encoded in PAFF, because that's not yet supported either.

hajj_3
27th May 2007, 13:20
i see. hope its supported soon, europe has had dvb-s2 .ts for quite a while now, dgavc and videoredo dont support it yet, its a real shame as the quality it fantastic!

keep up the great work neuron!

lucassp
30th May 2007, 18:56
does DGAVCIndex work with AVISynth 2.5.7 MT 0.7?

Raere
1st June 2007, 14:33
I just wanted to thank you neuron2 for this awesome plug-in, it's just what I needed for my latest projects. Keep up the good work!

Guest
2nd June 2007, 12:43
does DGAVCIndex work with AVISynth 2.5.7 MT 0.7? I don't know. Please report your results.

Guest
2nd June 2007, 12:50
* Fixed broken GOP stepping after play/preview.

* Title bar FPS indication now has three places after the decimal point.

* A "Finished!" popup now appears at the end of the Save Project operation.

* Fixed an uninitialized variable in DGAVCDecode that could cause crashes in some circumstances.

* Redesigned the whole decoder DLL situation (read the help text carefully before using alpha 6):

- Now only one decoder DLL is required (libavcodec.dll).
- The decoder DLL is stripped down to include just AVC decoding.
- The decoder DLL must be placed in the same directory as DGAVCIndex.exe. The path is automatically passed to DGAVCDecode.dll in the DGA file.
- The decoder DLL project is buildable in Visual Studio 2005, allowing for direct tracing/debugging.
- The decoder DLL is derived from the ffdshow_tryouts project.

http://neuron2.net/dgavcdec/dgavcdec100a6.zip

I think I'll add transport stream support next, and then tackle PAFF.

lucassp
2nd June 2007, 22:55
I don't know. Please report your results.

using Alpha 5: the first pass works fine but the second pass hangs after the first few frames, the timer goes on and the fps drops to zero.

using Alpha 6: it crashes right after I hit the start button.

Guest
3rd June 2007, 02:44
>AVISynth 2.5.7 MT 0.7

Since I have never heard of this, you should find out who made it and talk to them about it.

And I have no idea what you are talking about with first pass and second pass.

lucassp
3rd June 2007, 08:57
>AVISynth 2.5.7 MT 0.7

Since I have never heard of this, you should find out who made it and talk to them about it.

And I have no idea what you are talking about with first pass and second pass.

AVISynth 2.5.7 MT 0.7 is the multithreaded version of AVISynth 2.5.7 made by tsp (http://forum.doom9.org/showthread.php?t=94996). The "first pass" and "second pass" are the x264 encoding passes of this AVS file:

SetMTMode(2,0)
DGAVCDecode_AVCSource("D:\Codecs\test.dga",deblock=false)
LanczosResize(960,544)

hajj_3
6th June 2007, 09:00
I think I'll add transport stream support next, and then tackle PAFF.

yay, finally dvb-s2 .TS support coming:PPPPPPPP

thankyou!!!!!!!

klinika
7th June 2007, 13:52
Darn it, alpha 6 crashes on everything I try to open with it, and the error popup points out libavcodec in futile effort to shift the blame. But happily, alpha 5 works like a charm. Running regular xp32.

Guest
7th June 2007, 14:24
Darn it, alpha 6 crashes on everything I try to open with it, and the error popup points out libavcodec in futile effort to shift the blame. But happily, alpha 5 works like a charm. Running regular xp32. What does the popup say exactly? Did you follow the instructions for installation?

klinika
7th June 2007, 15:46
What does the popup say exactly? Did you follow the instructions for installation?

Well, the whole alpha 6 archive is on its own in one dir, libavcodec and all. I mean, is there something more, have I overlooked something?

The popup says nothing useful:

AppName: dgavcindex.exe AppVer: 0.0.0.0 ModName: libavcodec.dll
ModVer: 0.0.0.0 Offset: 00028bb2

Can't seem to select or copy any of the detailed information, but it's available, just need to know which parts of it would be needed. I wouldn't rule out reformatitis just yet though. There's nothing seemingly wrong with the files I tried, they're encoded with recent version of x264 using basic options and play just fine.

Guest
7th June 2007, 15:56
Make a screenshot of the popup and post that.

Also, search your entire system for libavcodec.dll and let me know if there is another one than the one that sits with DGAVCIndex.exe.

Also, post a link to a fragment of a stream that causes this problem. Does it happen with the file test.264 that is included in:

http://neuron2.net/dgavcdec/dgavcdec100a2.zip

Guest
7th June 2007, 16:08
Oh, and install this:

http://www.microsoft.com/downloads/details.aspx?familyid=32bc1bee-a3f9-4c13-9c99-220b62a191ee&displaylang=en

Let me know the result.

klinika
7th June 2007, 16:56
Installed the vcredist, nada, didn't do anything. No duplicate libavcodecs except the one in ffdshow dir, and that's nowhere near any PATH variables. And test.264 crashes dgavcindex on open too.

Here's (http://luuranko.freeshell.org/clip.264) a link to a 5s clip I encoded just for this, which I'm sure you'll find working perfectly on your end, but crashes on mine.

Here's a pertinent screenshot, along with the Amazing Error Popup That Refuses To Be Copied, which I meant before (there's info about every dll loaded in memory there if one scrolls down, and down, and down):

http://luuranko.freeshell.org/error.jpg

The offset, address, and code stays the same whatever clip I try to open. If that means anything.

I'm acutely aware that no one else has reported similar problems, and I'm not sure if it's worth the effort to investigate as it most probably is an isolated case of conflict somewhere in the bowels of my pc. At least such it would seem to be. Still, alpha 5 works, and with a bit of luck, the next alpha works too :p But it sure is a perplexing problem :confused:

xc3ll
7th June 2007, 17:44
Hi neuron2, I tried your program, but get an this error:

[h264 @ 0100700C]Internal error, IDCT permutation not set

when I try encoding w/meGUI, source is a bd disc.

Guest
7th June 2007, 19:10
Installed the vcredist, nada, didn't do anything. No duplicate libavcodecs except the one in ffdshow dir, and that's nowhere near any PATH variables. And test.264 crashes dgavcindex on open too. Please rename that one, reboot, and try again.

Guest
7th June 2007, 19:11
Hi neuron2, I tried your program, but get an this error:

[h264 @ 0100700C]Internal error, IDCT permutation not set

when I try encoding w/meGUI, source is a bd disc. Are you sure it is H.264 and not VC1? If so, please post a source stream fragment that I can use to duplicate the issue.

Inventive Software
7th June 2007, 20:02
Also be well aware that you have to demux the video stream from the BD files. DGAVCIndex only accepts raw .264 files. ;)

klinika
8th June 2007, 00:27
Please rename that one, reboot, and try again.

I'm sorry to say it didn't change a thing... Tried even moving the whole thing to c partition's root, just in case, but that didn't change anything either. Can't think of anything else really, except if there'd be an easy way to debug it.

Inventive Software
8th June 2007, 01:02
The link to the VC redist neuron posted earlier, try the SP1 update on top of it and see if that helps or not.

Guest
8th June 2007, 05:05
Is anyone else having this issue with Alpha 6?

Revgen
8th June 2007, 07:47
^ I'll try it tomorrow after I'm done encoding.

G_M_C
8th June 2007, 08:24
Is anyone else having this issue with Alpha 6?

I havent been able to get to testing out this new version. I'll do some testing tonight on a new project.

But my first thought is this (i'm at work right now,so forgive me if i make some mistake in my reasoning ;) );
When i remember correctly the previous versions came with 2(3) separate DLL's. It was advised that you put those DLL's in your
"windows/system" directory. Cant i be that you have forgotten to remove the old DLL's from your "windows/system" directory xc3ll ?

ToS_Maverick
8th June 2007, 08:29
Is anyone else having this issue with Alpha 6?

I havent been able to test it either, but i've some PAFF streams on my disk, who i'd love to test for you, with a new version :D

canTsTop
8th June 2007, 09:20
Is anyone else having this issue with Alpha 6?

hello, i get same error like klinika. here is my error log

http://rapidshare.com/files/35905893/error.txt.html

klinika
8th June 2007, 09:23
The link to the VC redist neuron posted earlier, try the SP1 update on top of it and see if that helps or not.

Good catch, but it didn't work either..

klinika
8th June 2007, 09:32
hello, i get same error like klinika. here is my error log

http://rapidshare.com/files/35905893/error.txt.html

Ah, of course! Dr. Watson to the rescue :p I have it disabled by default and forgot all about it.

Revgen
8th June 2007, 20:49
I've had no problems with this new version.

Then again I don't have any AVC source from Blu-Ray or HD-DVD.

Guest
8th June 2007, 21:40
Ah, of course! Dr. Watson to the rescue :p I have it disabled by default and forgot all about it.
Can you get me a Dr. Watson dump as well then, please?

canTsTop
8th June 2007, 23:22
here is my Dr Watson dump
http://rapidshare.com/files/36034597/Dr_Watson.7z.html

Guest
9th June 2007, 00:43
here is my Dr Watson dump
http://rapidshare.com/files/36034597/Dr_Watson.7z.html Thank you.

Can you please try this debug DLL and give me a Dr Watson dump using that? Thanks.

http://neuron2.net/guest/libavcodec.zip

klinika
9th June 2007, 01:23
Can you get me a Dr. Watson dump as well then, please?

Uh oh, well I quite suddenly decided to upgrade mobo & cpu, and no more crashing. But the FAULT text (or whatever it read) in the debug log was at the same spot. Sorry for not being able to be of further help in the issue :o I do hope it gets solved for everyone's benefit though, and more importantly, thank you for the immensely useful program!

Guest
9th June 2007, 05:11
Uh oh, well I quite suddenly decided to upgrade mobo & cpu What was your processor before and after, please?

Kurth
9th June 2007, 05:14
Any .264 file that I try to open on DGAVCIndex Alpha 6 crashes I found that the problem is the libavcodec.dll that come inside the dgavcdec100a6.zip
I copied my libavcodec.dll from the FFDshow directory and pasted it on the DGAVCIndex.exe directory and now the Alpha 6 version works fine.
The libavcodec.dll that you made have problems you should check it.

Guest
9th June 2007, 05:34
The libavcodec.dll that you made have problems you should check it. I guess you missed the last several posts, where I am attempting to debug libavcodec.dll. :)

xc3ll
9th June 2007, 06:51
neuron2, just sent u a pm w/a video snippet.

btw, I'm very interested in helping. If you could direct me as to what books/websites to go to, I would like to learn how to help out.

thx

canTsTop
9th June 2007, 08:16
Thank you.

Can you please try this debug DLL and give me a Dr Watson dump using that? Thanks.

http://neuron2.net/guest/libavcodec.zip

with this DLL, DGAVCIndex dont start at all, and no Dr Watsons dump
this is error

http://www.ipix.lt/out.php/i30941_error.PNG

klinika
9th June 2007, 09:09
What was your processor before and after, please?

Before amd sempron 2800, now intel c2d 6600.

humanzoo666
9th June 2007, 10:29
First of all, I would like to thank you, neuron2, for your whole work and for the great pieces of software you are giving to the community.
I have made a fresh install (unzipped to a new directory) of alpha6
and it works like a charm. I have tested with the 2 samples bundled in alpha2 archive and with a custom made x264 encode and they all work fine. I have tried a simple avs script and it works too.

P.S. I do not have ffmpeg installed on my computer and I have no other libavcodec.dll in my system directory.

Neo Fagin
9th June 2007, 11:49
I love this tool. It works fine on about 50% of AVC BluRay discs right now. Notably, worked for me on

0.5a worked on Identity (produced lots of ignoreable errors but worked fine)
0.6a worked on Pursuit of Happyness (produced [h264 @ 00D1700C]Internal error, IDCT permutation not set error but worked fine)
0.4a worked on The League of Extraordinary Gentlemen

0.6a did NOT work on

Pirates of the Caribbean: Curse of the Black Pearl (worked but video colors were severely distorted with a purple/green "haze")
Pirates of the Caribbean: Dead Man's Chest (same)
Freedom Writers (worked but color distortion problem occured 20 minutes in)

Revgen
9th June 2007, 16:59
@ Neo Faggin

Do the "not working" videos play well with ffdshow or VLC Player? Elementary streams can be played directly with VLC Player. If the problem is libavcodec, then it would be different then if the problem was DGAVCDec's.

xc3ll
9th June 2007, 20:37
I love this tool. It works fine on about 50% of AVC BluRay discs right now. Notably, worked for me on

0.5a worked on Identity (produced lots of ignoreable errors but worked fine)
0.6a worked on Pursuit of Happyness (produced [h264 @ 00D1700C]Internal error, IDCT permutation not set error but worked fine)
0.4a worked on The League of Extraordinary Gentlemen

0.6a did NOT work on

Pirates of the Caribbean: Curse of the Black Pearl (worked but video colors were severely distorted with a purple/green "haze")
Pirates of the Caribbean: Dead Man's Chest (same)
Freedom Writers (worked but color distortion problem occured 20 minutes in)

Neo, you say that Pursuit worked even tho you got the IDCT error... did you have to do anything special? When I get it, x264 skips the second pass, although it does seem to complete the first.

EDIT: It seems as if I can run the 2nd pass... we'll see how it turns out.

Neo Fagin
9th June 2007, 23:31
@ Neo Faggin

Do the "not working" videos play well with ffdshow or VLC Player? Elementary streams can be played directly with VLC Player. If the problem is libavcodec, then it would be different then if the problem was DGAVCDec's.

None of them played with ffdshow/VLC, except the pirates movies which produced the same weird color issue, but when playing those with ffdshow they skipped huge amounts of frames, whereas dgavcdec did not.

tomos
10th June 2007, 00:07
i have the same issue. playing the raw avc in graphedit with sonics decoder and demultiplexer played it back fine. DSS also fine.

Revgen
10th June 2007, 01:02
@tomos and Neo Fagin

I could be wrong, but this sounds like a libavcodec issue that I doubt Neuron2 wants to solve by himself. The only libavcodec issue he's publicly proclaimed interest in solving is the PAFF support issue. You might want to report this issue to the FFMPEG dev team instead.

xc3ll
10th June 2007, 21:16
Encoding finished, and it looks good. Neo Fagin was correct, the IDCT configuration does not seem to be a real problem.

lucassp
10th June 2007, 23:36
0.6a worked on Pursuit of Happyness (produced [h264 @ 00D1700C]Internal error, IDCT permutation not set error but worked fine)


I get the same error when I'm trying to encode some 1080p trailers, from Apple, with x264. the encoding stops after the first pass.

Selur
11th June 2007, 07:44
Don't know if it helps, but:
Over in the german Doom9 forum a user had the same problem and mentioned that the problem was solved for him when exchanging libavcodec.dll through the one that comes with ffdshow.

G_M_C
11th June 2007, 10:48
Don't know if it helps, but:
Over in the german Doom9 forum a user had the same problem and mentioned that the problem was solved for him when exchanging libavcodec.dll through the one that comes with ffdshow.

Yep, that was reported here too. But the point is that Neuron2 is trying to compile his own DLL for debugging purposes and because the DLL included in ffdshow contains code not needed for this tool. This is quite an important step in the further development of AVCIndex.

In stead of exchanging the DLL's i'd rather keep using Alpha5, untill Neuron2 finds the problem, and comes up with a fix :)

Guest
11th June 2007, 13:42
I've replaced the libavcodec.dll in the alpha 6 package with the non-stripped one. Apparently I messed up something when stripping it down, although it doesn't crash on all machines. It's not urgent to have it stripped; I can still debug and trace with it.

Please advise if this one causes any problems. Just re-download alpha 6 and use the libavcodec.dll in there.

http://neuron2.net/dgavcdec/dgavcdec100a6.zip

canTsTop
12th June 2007, 21:38
i re-download alpha 6, its not working for me, it crash then i open video. but with libavcodec.dll from ffdshow its working

foxyshadis
13th June 2007, 05:08
Do you have the 2005 runtime (http://www.microsoft.com/downloads/details.aspx?familyid=32bc1bee-a3f9-4c13-9c99-220b62a191ee&displaylang=en) and 2005sp1 runtime (http://www.microsoft.com/downloads/details.aspx?familyid=200B2FD9-AE1A-4A14-984D-389C36F85647&displaylang=en)? One or the other will be necessary to run it, but if you can run ffdshow tryouts, you should already have that. Hmm.

Daodan
13th June 2007, 11:24
You can add to me to the list of people for which included .dll doesn't work on 0.6. CPU: athlon XP 2600+
Is there any problem using the one from ffdshow, or should I use older versions of dvdavc?

Guest
13th June 2007, 12:47
The thing I don't understand is that the one included in alpha 6 now *is* the one I built from ffdshow_tryouts. I will regenerate it this evening from a fresh SVN checkout and we'll see if that is OK.

If you have one from ffdshow that works, that is fine. The only thing missing will be the warning if you hit a PAFF frame.

Guest
14th June 2007, 14:28
I have updated the alpha 6 package with a new build of libavcodec.dll. I simply took ffdshow_tryouts and built the beta 2 branch in release mode.

Please advise if you still have problems with this DLL.

To those people who are using the DLL from ffdshow: Do you mean the real ffdshow or ffdshow_tryouts? If the former please give me a link to the project.

lucassp
14th June 2007, 16:58
It works ok with the new DLL!

canTsTop
14th June 2007, 18:50
I have updated the alpha 6 package with a new build of libavcodec.dll. I simply took ffdshow_tryouts and built the beta 2 branch in release mode.

Please advise if you still have problems with this DLL.

To those people who are using the DLL from ffdshow: Do you mean the real ffdshow or ffdshow_tryouts? If the former please give me a link to the project.

still not working for me

i using ffdshow from here http://sourceforge.net/project/showfiles.php?group_id=173941

(Nightly builds by clsid, generic builds)

G_M_C
15th June 2007, 09:48
Still havent been able to test, i'll make it a priority for tonight

But could you provide us with an example 264-stream canTsTop, cause maybe it is something else ?

Guest
15th June 2007, 13:53
He said it crashes with the test files included in the early alphas.

G_M_C
15th June 2007, 16:12
Welll, i'm sorry to say that i get exactly the same error ("Couldn't load ....."). Even tried to register the DLL, wich didnt work.

Looked in my event logs, and there were errors in it (3 per time i tried to start DGAVCIndex). I wont put them here, because i do not think you be any wiser (i run a Dutch version of Win XP pro the errors etc. are all in Dutch and i dont know if you understand Dutch). Maybe CanTsTop has an English version ?

Guest
15th June 2007, 17:18
@G_M_C

Does this popup come right away when opening DGAVCIndex?

Just for grins, please extract alpha 6 into a folder "c:\dg". and try running it from there. I'm wondering if there is a path problem.

If that doesn't work I will provide you with a debug DGAVCIndex so we can get to the bottom of this.

Can't you translate the error log events for me?

canTsTop
15th June 2007, 17:58
not working in "c:\dg"

FreeCommander - Contents of folder: C:\dg 2007.06.15 19:57

Date Time Attrib Bytes File name
---------- -------- ------ ---------------- --------

C:\dg
2007.06.01 21:13:40 A----- 143.360 DGAVCDecode.dll
2007.06.01 21:12:40 A----- 499.712 DGAVCIndex.exe
2007.06.14 08:22:34 A----- 1.585.152 libavcodec.dll
2007.06.01 21:19:34 A----- 1.165 Readme.txt
2007.02.17 20:46:32 A----- 12.168.444 test.264
-------------------
14.397.833 5 Files

Summary of C:\dg
Directories = 1
Files = 5
Bytes = 14.397.833

crapz0rs
15th June 2007, 19:02
I have updated the alpha 6 package with a new build of libavcodec.dll. I simply took ffdshow_tryouts and built the beta 2 branch in release mode.

Please advise if you still have problems with this DLL.Works fine here on a skyhd h264 cap :thanks:

Guest
15th June 2007, 19:27
not working That's no help to me. What exactly goes wrong and when?

canTsTop
15th June 2007, 19:48
not working in "c:\dg"


DGAVCIndex crashes when i open video

G_M_C
15th June 2007, 19:51
Hi Neuro2,

It gives the "couldn't load ...."-error right upon startup. Looks like the app is calling the DLL, and Windows cant load it. Ill'do a search on google and see if i can find the translation of the event-log errors.

To be complete, before you get into it; I use a rather old version of Win XP Pro, SP1. I never bothered keeping that system up-to-date, because i just use it mainly in "stand-allone-mode". So there's no dot-net and other "fancy" stuff on it etc.

I just pump a huge amount of data in from my main PC through the managed switch. After that i disconnect the patch cable, boot up that system in "stand-allone-mode" with bare minimum on drivers w/o virus-scanner & firewall to do its encode-work and burn the DVD. So i dont have any need for most of the SP2 patchwork, just makes things even slower (and video-stuff isn't fast to begin with :D)

Guest
15th June 2007, 20:27
Do you have the Studio 2005 runtime installed as linked above?

http://forum.doom9.org/showthread.php?p=1013559#post1013559

G_M_C
15th June 2007, 20:47
Do you have the Studio 2005 runtime installed as linked above?

http://forum.doom9.org/showthread.php?p=1013559#post1013559

I should have, but i'll make shure and (re)install the packages you linked to, and try again.

Might be tomorrow (GMT+1) that i'm able to report back, cause i've got friends over atm. But i'll keep you posted as best i can !

klinika
16th June 2007, 22:09
Could someone check the new & old alpha 6 with files with cqm's? I wanna verify it's not my system, they seem to get borked here. Alpha 5 works without a hitch.

Warren
17th June 2007, 01:24
Neuron: based on all the problems with the redist not being present why not add a check into the main program to check for the dlls and pop up a box with the url to the redist if they're not found?

bob0r
18th June 2007, 13:32
@neuron2

H.264 MBAFF decoding is partly supported (as in just the bits pengvado likes a bit... :p)

Here I have a sample:
http://x264.nl/ateme.luxe.tv.hd.eutelsat.w3a.12.jun.2007.whole.ts.sample.ts

Which is MBAFF + Spatial Direct Mode..... This is a sample of Ateme, which with any luck, will be on more satellite channels soon.

Might you add support for full MBAFF decoding too?

Inventive Software
18th June 2007, 15:25
@neuron: Lots of queries since you replied, but this is a rather key one... which part of the program uses VC2005 redists? As in, is it in the program .exe, or in the DLLs it uses?

Guest
18th June 2007, 16:00
DGAVCIndex.exe requires it.

libavcodec.dll requires it when built via ffdshow_tryouts code. When built with MSYS/MINGW then not.

DGAVCDecode.dll I can't remember and I'm at work so can't check.

Inventive Software
19th June 2007, 10:51
Woah, hang on... ffdshow-tryouts IIRC recommend that you build libavcodec.dll and libmplayer.dll with MinGW anyway.... odd that it should require it when built with VS2005.

Guest
19th June 2007, 13:29
ffdshow-tryouts IIRC recommend that you build libavcodec.dll and libmplayer.dll with MinGW anyway I never heard that. What is your source?

Eragon4ever
19th June 2007, 18:14
http://ffdshow-tryout.sourceforge.net/phpBB2/viewtopic.php?t=362

foxyshadis
19th June 2007, 20:22
With gcc you get some assembly optimizations that VC isn't able to compile. But you then have to use gdb to debug it, which is irritating when the VC debugger is so much more powerful.

adrianmak
20th June 2007, 00:30
does DGAVCIndex support h264 stream in mkv container ???
I failed to load mkv in DGAVCIndex.

Guest
20th June 2007, 04:26
Please read the help file. Thank you.

adrianmak
25th June 2007, 02:43
When I tried to open a raw .h264 file,
dgavcindex crash and maybe it is related to lubavcodec.dll

Guest
25th June 2007, 03:09
Have you tried any of the remedies discussed here?

Does VLC play the file correctly?

dukey
25th June 2007, 13:56
tried this with some streams i capped from bbc hd
works fine
only problem is
when i demux the audio and video streams
the audio gets miles outa sync
(when you adding .ts support ? :))

Guest
25th June 2007, 14:10
when you adding .ts support? It is in progress.

What kind of audio is in those streams?

dukey
25th June 2007, 15:21
Audio: PCM (AC3) 48000Hz 6ch 384Kbps [Output]

btw, thanks for your awesome tools :]

Guest
25th June 2007, 16:07
I don't know what you mean by PCM (AC3). When you demux do you get an AC3 file?

dukey
25th June 2007, 16:15
thats just what media player classic said the stream was

I think it's just a bog standard AC3 file ..

Audio: PCM (AC3) 48000Hz 6ch 384Kbps

AM_MEDIA_TYPE:
majortype: MEDIATYPE_Audio {73647561-0000-0010-8000-00AA00389B71}
subtype: MEDIASUBTYPE_DOLBY_AC3 {E06D802C-DB46-11CF-B4D1-00805F6CBBEA}
formattype: FORMAT_WaveFormatEx {05589F81-C356-11CE-BF01-00AA0055595A}
bFixedSizeSamples: 1
bTemporalCompression: 0
lSampleSize: 1
cbFormat: 18

WAVEFORMATEX:
wFormatTag: 0x0001
nChannels: 6
nSamplesPerSec: 48000
nAvgBytesPerSec: 48000
nBlockAlign: 0
wBitsPerSample: 0
cbSize: 18 (extra bytes)

Guest
25th June 2007, 16:56
OK, thanks. I'll start by supporting AC3 first then.

bob0r
26th June 2007, 01:23
AC3 and MP2 are the most common audio in satellite broadcasts, i have seen some HE-AAC test broadcast samples, but thats about it.

As for samples for .ts video/audio my link is still active: http://x264.nl/h.264.samples/

I am no expert in .ts at all, but i helped Haali fix many ts issues by supplying samples.

I do not know anything about .ts theoretical specs or practical specs, but i guess Haali can get you a list of all "tweaks" he had to perform for his splitter(and muxer).
http://haali.cs.msu.ru/mkv some are briefly explained here, some were called "work around".

I have had many H.264 ts files with issues, but ever since the fixes/work arounds no files have failed yet.
These include 99% of all Europe H.264 broadcasts, and some Dish Network (echostar) H.264 broadcasts from abc/nbc/cbs/fox.

Guest
26th June 2007, 02:13
Thank you, I will keep that in mind if I run into any problems.

quantum
26th June 2007, 03:45
Alpha 6 works for me. I have VS 2005 full suite installed. However I'm getting strange coloring problems. The weird colors are displayed in the index viewer and in VirtualDub via AVS file. PowerDVD plays the clip normally.

I will send a link to a sample clip via PM.

Great work by the way. This will be appreciated by many.

klinika
26th June 2007, 13:58
However I'm getting strange coloring problems. The weird colors are displayed in the index viewer and in VirtualDub via AVS file. PowerDVD plays the clip normally.

Could you see if the issue is present with alpha 5?

http://neuron2.net/dgavcdec/dgavcdec100a5.zip

Guest
26th June 2007, 14:03
It's a libavcodec problem. It won't play right in VLC either.

crapz0rs
26th June 2007, 14:20
neuron2: sent you a pm with an url to a h264 sample from a hddvd.
dgavcdec says it's 29.97 fps (all hddvd are 23.976), and the colours are real strange.
They are normal if cyberlink's decoder is used.

Also sent it to the ffmpeg-dev mailing list.

adrianmak
27th June 2007, 23:01
Have you tried any of the remedies discussed here?

Does VLC play the file correctly?


VLC can play the extracted .h264 file.
I read all posts of this thread and tried other libxxx.dll posted by other members with no success.
DGAVCindex still cash when opening a h264 file. I installed VS 2005 sp1 runtime.

Guest
28th June 2007, 02:41
Please post a link to the file or a fragment thereof.

adrianmak
28th June 2007, 05:32
Please post a link to the file or a fragment thereof.


Not only just my h264 file, I tried a clip posted by others are having the same problem.

The is a clip posted by other (on page 15 of this thread)
http://rapidshare.com/files/32723790/test.264.html

lucassp
28th June 2007, 09:05
that file is garbage, don't use it. it a h264 stream demuxed from a MKV file with mplayer. the same thing worked ok when I replaced mplayer with the MKV tools that come with MeGUI!

adrianmak
28th June 2007, 12:30
My h264 files are demuxed from mkv thru mkvextract.

Inventive Software
28th June 2007, 12:37
Then post the file you had that was causing problems. ;)

adrianmak
28th June 2007, 14:35
This is my h264 clip

http://www.divshare.com/download/1103616-217

crapz0rs
28th June 2007, 18:33
This is my h264 clip

http://www.divshare.com/download/1103616-217I can playback/index this track perfectly fine with dgavcdec alpha 5 & 6 :)

adrianmak
29th June 2007, 00:23
I can playback/index this track perfectly fine with dgavcdec alpha 5 & 6 :)

Then Why dgavcindex crach while reading a h264 file ?? Any other factors casuing this problem ?

Guest
29th June 2007, 00:39
Did you try the libavcodec from ffdshow?

Try putting the file in c:\ and opening it there (to rule out path problem).

adrianmak
29th June 2007, 01:20
Did you try the libavcodec from ffdshow?

Try putting the file in c:\ and opening it there (to rule out path problem).

I tried reading the h264 file where put under c:\ but DGAVCindex still crash.

ffdshow ??? I ve ffdshow installed but not the tryout version mentioned in this thread.

adrianmak
29th June 2007, 03:53
I guess there are some software conflicts on Windows XP and I can't figure it out.
Is it possible to trace out which software conflict with dgavcindex without reinstalltion of OS

ps. I'm able to open h264 file on another PC.

Inventive Software
29th June 2007, 10:10
Only things I can think of are Dependancy Walker (http://www.dependencywalker.com/), and Process Explorer (http://www.microsoft.com/technet/sysinternals/utilities/ProcessExplorer.mspx). Run both and see what's conflicting. Dependancy Walker should be able to tell you if there's a DLL missing; open DGAVCIndex.exe and libavcodec.dll to find out. Process Explorer is good to find the DLL that the program's missing while it's running so that you can diagnose what's causing the problem.

adrianmak
29th June 2007, 10:43
Only things I can think of are Dependancy Walker (http://www.dependencywalker.com/), and Process Explorer (http://www.microsoft.com/technet/sysinternals/utilities/ProcessExplorer.mspx). Run both and see what's conflicting. Dependancy Walker should be able to tell you if there's a DLL missing; open DGAVCIndex.exe and libavcodec.dll to find out. Process Explorer is good to find the DLL that the program's missing while it's running so that you can diagnose what's causing the problem.

How to use dependencywalker for investigation ?
I opened the dgavcindex.exe and show an warning
"Warning: At least one module has an unresolved import due to a missing export function in a delay-load dependent module."
This is the screen cap
http://i108.photobucket.com/albums/n16/adrianmak/Snap1-75.jpg

Inventive Software
29th June 2007, 13:31
OK, give us this info if you would be so kind. :)

Scroll down both lists and give us the names of the offending item(s) (they have exclamation marks next to them). Hopefully, we can nail this lil bugger. :D

adrianmak
29th June 2007, 14:06
OK, give us this info if you would be so kind. :)

Scroll down both lists and give us the names of the offending item(s) (they have exclamation marks next to them). Hopefully, we can nail this lil bugger. :D


I can't see any item with an exclamation marks.

Inventive Software
29th June 2007, 14:59
OK, I'll have to do some digging on my system then and see if I have the same issue.

Seba-
3rd July 2007, 21:28
Any news with implementing PAFF support?:)

Guest
3rd July 2007, 21:37
I'm working on transport stream support right now. I'll let you know if and when I start working on that.

dorati
3rd July 2007, 22:01
deblock=false

What mean this parameter?
When i must use deblock=false and when not?

Guest
3rd July 2007, 22:03
If you want to see the effect of turning off the AVC in-loop deblocking. It's not recommended to encode that way but it is interesting to be able to see the effect of this AVC feature.

adrianmak
4th July 2007, 00:27
Any findings of my problems ??????

Guest
4th July 2007, 03:50
ffdshow ??? I ve ffdshow installed but not the tryout version mentioned in this thread. You need to get the libavcodec.dll from ffdshow_tryouts and install it in place of the one that comes with DGAVCDec, i.e., put it in the same directory as DGAVCIndex. Having ffdshow installed is not the same thing.

adrianmak
4th July 2007, 08:09
You need to get the libavcodec.dll from ffdshow_tryouts and install it in place of the one that comes with DGAVCDec, i.e., put it in the same directory as DGAVCIndex. Having ffdshow installed is not the same thing.


It's work now!!! Thx

Inventive Software
5th July 2007, 10:33
Oh thank dear God for that! ;)

reb0rn
9th July 2007, 03:25
I get very strange effect using 0.6 alfa version (like ghosting)
the file is:
x264 avc
codec profile: Hight@L5.1
1920*800 23.97 fps

Revgen
9th July 2007, 15:59
I get very strange effect using 0.6 alfa version (like ghosting)
the file is:
x264 avc
codec profile: Hight@L5.1
1920*800 23.97 fps

neuron2 usually likes people to post a sample if there is a problem.

reb0rn
10th July 2007, 01:46
ok a managed to upload 17mb h264 clip (mine wifi suxxx)

http://rapidshare.com/files/42021698/video006.h264.html

ACrowley
12th July 2007, 08:12
It is in progress.

What kind of audio is in those streams?

So m2ts support cant be far ?
When i can help you with Bluray m2ts AVC Samples, let me know


I have a Problme on a m2ts BluRay Mpeg4 AVC
With dgavc i get these Decoding Error in megui. I use the latest 1.006 with fixed libavcodec.dll
Its at the End of x264 1pass a

starting job job7 at 16:18:46
Starting preprocessing of job...
Preprocessing finished!
encoder commandline:
--pass 1 --bitrate 10640 --stats "G:\Casino\casino.stats" --bframes 3 --b-pyramid --direct auto --filter -3,-3 --subme 1 --analyse none --me dia --threads auto --thread-input --cqmfile "C:\Programme\megui\tools\x264\PrestigeCQM.cfg" --progress --no-psnr --no-ssim --output NUL "G:\Casino\casino.avs" --aq-strength 0.3
successfully started encoding
Processing ended at 16:20:56
----------------------

Log for job job7

avis [info]: 1920x800 @ 23.98 fps (1089 frames)
x264 [info]: using cpu capabilities: MMX MMXEXT SSE SSE2 3DNow!
x264 [info]: slice I:20 Avg QP:23.45 size:212556
x264 [info]: slice P:695 Avg QP:26.05 size: 68642
x264 [info]: slice B:374 Avg QP:28.81 size: 25687
x264 [info]: mb I I16..4: 42.5% 0.0% 57.5%
x264 [info]: mb P I16..4: 38.3% 0.0% 0.0% P16..4: 51.7% 0.0% 0.0% 0.0% 0.0% skip:10.0%
x264 [info]: mb B I16..4: 3.3% 0.0% 0.0% B16..8: 29.6% 0.0% 0.0% direct:32.2% skip:35.0%
x264 [info]: final ratefactor: 24.91
x264 [info]: direct mvs spatial:97.1% temporal:2.9%
x264 [info]: kb/s:10843.5

encoded 1089 frames, 8.43 fps, 10843.84 kb/s
[h264 @ 30885100]top block unavailable for requested intra4x4 mode -1 at 0 0
[h264 @ 30885100]error while decoding MB 0 0, bytestream (td)
[h264 @ 30885100]left block unavailable for requested intra4x4 mode -1 at 0 16
[h264 @ 30885100]error while decoding MB 0 16, bytestream (td)
[h264 @ 30885100]top block unavailable for requested intra4x4 mode -1 at 0 34
[h264 @ 30885100]error while decoding MB 0 34, bytestream (td)
[h264 @ 30885100]left block unavailable for requested intra mode at 0 50
[h264 @ 30885100]error while decoding MB 0 50, bytestream (td)
[h264 @ 30885100]top block unavailable for requested intra4x4 mode -1 at 18 0
[h264 @ 30885100]error while decoding MB 18 0, bytestream (td)
[h264 @ 30885100]top block unavailable for requested intra mode at 50 16
[h264 @ 30885100]error while decoding MB 50 16, bytestream (td)
[h264 @ 30885100]top block unavailable for requested intra mode at 11 34
[h264 @ 30885100]error while decoding MB 11 34, bytestream (td)
[h264 @ 30885100]top block unavailable for requested intra mode at 66 50
[h264 @ 30885100]error while decoding MB 66 50, bytestream (td)
[h264 @ 30885100]top block unavailable for requested intra mode at 23 0
[h264 @ 30885100]error while decoding MB 23 0, bytestream (td)
[h264 @ 30885100]top block unavailable for requested intra4x4 mode -1 at 40 16
[h264 @ 30885100]error while decoding MB 40 16, bytestream (td)
[h264 @ 30885100]top block unavailable for requested intra mode at 47 34
[h264 @ 30885100]error while decoding MB 47 34, bytestream (td)
[h264 @ 30885100]top block unavailable for requested intra mode at 39 50
[h264 @ 30885100]error while decoding MB 39 50, bytestream (td)
[h264 @ 30885100]top block unavailable for requested intra4x4 mode -1 at 47 34
[h264 @ 30885100]error while decoding MB 47 34, bytestream (td)
[h264 @ 30885100]top block unavailable for requested intra mode at 3 0
[h264 @ 30885100]error while decoding MB 3 0, bytestream (td)
[h264 @ 30885100]top block unavailable for requested intra4x4 mode -1 at 52 50
[h264 @ 30885100]error while decoding MB 52 50, bytestream (td)
[h264 @ 30885100]top block unavailable for requested intra4x4 mode -1 at 5 16
[h264 @ 30885100]error while decoding MB 5 16, bytestream (td)
[h264 @ 30885100]top block unavailable for requested intra4x4 mode -1 at 90 34
[h264 @ 30885100]error while decoding MB 90 34, bytestream (td)
[h264 @ 30885100]top block unavailable for requested intra4x4 mode -1 at 54 0
[h264 @ 30885100]error while decoding MB 54 0, bytestream (td)
[h264 @ 30885100]top block unavailable for requested intra mode at 26 0
[h264 @ 30885100]error while decoding MB 26 0, bytestream (td)
[h264 @ 30885100]top block unavailable for requested intra4x4 mode -1 at 44 16
[h264 @ 30885100]error while decoding MB 44 16, bytestream (td)
[h264 @ 30885100]top block unavailable for requested intra mode at 87 0
[h264 @ 30885100]error while decoding MB 87 0, bytestream (td)
[h264 @ 30885100]top block unavailable for requested intra mode at 57 34
[h264 @ 30885100]error while decoding MB 57 34, bytestream (td)
[h264 @ 30885100]top block unavailable for requested intra mode at 4 50
[h264 @ 30885100]error while decoding MB 4 50, bytestream (td)
[h264 @ 30885100]top block unavailable for requested intra mode at 6 34
[h264 @ 30885100]error while decoding MB 6 34, bytestream (td)
[h264 @ 30885100]top block unavailable for requested intra4x4 mode -1 at 9 50
[h264 @ 30885100]error while decoding MB 9 50, bytestream (td)
[h264 @ 30885100]top block unavailable for requested intra mode at 119 34
[h264 @ 30885100]error while decoding MB 119 34, bytestream (td)
[h264 @ 30885100]top block unavailable for requested intra4x4 mode -1 at 4 0
[h264 @ 30885100]error while decoding MB 4 0, bytestream (td)
[h264 @ 30885100]top block unavailable for requested intra mode at 4 34
[h264 @ 30885100]error while decoding MB 4 34, bytestream (td)
[h264 @ 30885100]top block unavailable for requested intra4x4 mode -1 at 14 50
[h264 @ 30885100]error while decoding MB 14 50, bytestream (td)

----------------------
End of log for job7
-------------------------------------------------------

EDIT:
Mabe it was caused by a Error from demuxing with Xport. The .264 was few minutes/mb to short

cscxk
15th July 2007, 03:19
I had find a error.source is xport from The Rock Blu-Ray.I use DGAVCDec create index from 00065.m2ts,and find lost 126 frame;with 00066.m2ts,lost 219 frame

ChuckUFarley
15th July 2007, 07:09
Whew, this looks like it's going to be a life saver.

I've been working on a project for weeks editing an x264 source with avisynth and directshowsource not knowing it wasn't frame accurate. Boy did I get a rude awakening.

So far things are pretty smooth with Alpha 6 (except for the occasional crash (Memory access violation) while scanning in VDub.)

I have a question though. It LOOKS like DGAVCDec is currently restricted to YV12 output only (regardless of original colorspace).

Is there a way to tweak that since my source is YUY2 and I'd like to keep it that way?
Btw, I'm using ffdshow_beta3_rev1324_20070701 (the last stable tryout).

reb0rn
15th July 2007, 11:55
I manage to reencode mine movie, seams also color space was problem....

foxyshadis
15th July 2007, 13:44
Chuck, are you sure your source is 4:2:2? Almost every AVC encoder will convert to 4:2:0 on encoding, and I don't think ffmpeg supports decoding of higher colorspaces at all. If it's an interlaced source that gets color smeared on preview, try adding converttorgb32(interlaced=true) at the end of the script to fix that, as long as the interlacing was properly encoded in the stream.

ChuckUFarley
15th July 2007, 16:01
Yup it's definitely YUY2.
Using DirectShowSource(), AviSynth & VDub File Information:
CoreAVC= FourCC: [YUY2] - YUV 4:2:2 (YUY2 Decompressor)
ffdshow= FourCC: [YV12] - ATI YVU12 4:2:0 Planar (Xvid Decompressor)

CoreAVC has no problems playing AVC back in any colorspace, Libavcodec.dll seems to be limited right now.

It's a shame DGAVCDec can't use CoreAVC, but I can complete understand why not. Hopefully we'll get more colorspaces in future releases.

(Btw, the video is progressive so interlace artifacts aren't an issue.)

Guest
15th July 2007, 16:05
I'll bet dollars to donuts that it is YV12. Would you like to provide a sample so I can check that?

ChuckUFarley
15th July 2007, 17:15
You got it: http://rapidshare.com/files/43070135/Clip-002.mkv.html

It's 1 minute (in .mkv) cut with mkvtoolnix (23mb).

I didn't know if you wanted the raw x264 or not, but I did remove the audio to save on file size.

I would definitely like to know if CoreAVC is wrong. This is not the first x264 file I've come across that it reports as YUY2.

Edit: Hmm. The video renderer in MPC reports YV12.... that's odd.
I wonder which program is going wrong.

Inventive Software
15th July 2007, 17:57
Yup it's definitely YUY2.
Using DirectShowSource(), AviSynth & VDub File Information:
CoreAVC= FourCC: [YUY2] - YUV 4:2:2 (YUY2 Decompressor)
ffdshow= FourCC: [YV12] - ATI YVU12 4:2:0 Planar (Xvid Decompressor)

I'll bet dollars to donuts that it is YV12.

Sure you don't want that dollars to dollars? :D

@ChuckUFarley: BTW, raw x264 for him is better, as that's what DGAVCIndex currently supports. ;)

ChuckUFarley
15th July 2007, 18:23
neruon2: if you need me to extract the raw video let me know...

Either way I know now you prefer raw, it was just easier to split still in the container.

Guest
15th July 2007, 19:06
If you want me to look at it, you need to give me a raw H264 elementary stream. I don't have any MKV tools, nor am I interested in installing any.

ChuckUFarley
15th July 2007, 20:16
No problem: http://rapidshare.com/files/43099016/Clip.h264.html

Edit: (Insane babbling removed)

Currently the colorspace is the least of my problems.
I get random crashes (i.e. not the same place each time) when trying to encode my script with CCE.
I tried installing today's build of libavcodec and it got much further before crashing, but I still can't encode the full movie.

Scanning through with MPC I get "CAVIStreamSynth: System exception - Access Violation at 0x0, reading from 0x0".

I don't know if that's the same thing making CCE crash or not.

ChuckUFarley
17th July 2007, 03:12
Ok, so no help here I guess.

I do recommend to anyone having problems to try the nightly build of ffdshow.
The July 15 got me a lot farther than the stable beta 3 build.

Guest
17th July 2007, 04:39
Ok, so no help here I guess. You think my only responsibility in life is to help you, and if I don't answer in a day, you can cop an attitude? Well, you know what. I had a death in the family this weekend, and on the previous Friday, my company let 1300 people go (not me!). So I've been a little distracted. Know'm sayin'?

Furthermore, your nick violates rule 4. So I want you to ask the admins to change it. Otherwise I'll start striking you. I'm going to be generous, though, and give you more than a day. A week seems reasonable to me.

And I looked at your stream. It is 4:2:0 (YV12). chroma_format_idc is 1.

ChuckUFarley
17th July 2007, 05:37
Dude, I'm sorry. That all sucks.
But I was not dogging you personally. I assumed more people (besides you) had some experience and might have tips.

Finally, I will request a name change, I wasn't aware it would be an issue.

ChuckUFarley
19th July 2007, 01:02
I managed to completely encode the movie, but it required splitting it into 5 scripts of about 30-45 minutes each.
Any more and CCE would throw an error.
Possible memory leak?

I intend to encode the same script in x264 later. Hopefully that will be able to make it in one go.

Guest
19th July 2007, 02:56
You can also try a different MPEG2 encoder, such as HC. That would help us to determine if the problem is in DGAVCDec or CCE.

BTW, your nick has been declared OK by the powers that be, so there's no need to change it. I disagree, but I just work here. :)

ChuckUFarley
19th July 2007, 22:11
HC is unable to completely encode either. I got a standard Windows error that wasn't informative.

I don't know if I mentioned that the script uses multiple trim commands to edit the film... if that makes any difference.

Deinorius
20th July 2007, 00:28
May be, I found a bug. Look at the screenshots I made. Source ist totally fine. Indexing with DGAVCIndex brings big block artefacts.

Uploaded 1 min of the source stream. I use Alpha 6 with Original libavcodec.dll. Didn't try tryout.dll, just recognized it yet.

http://rapidshare.com/files/43901389/dga.h264.html

Source has 720p.

ChuckUFarley
20th July 2007, 02:43
You probably should install one of the tryout libavcodec's first.

Most people aren't even able to get DGAVCDec to load video with the older versions of the .dll let alone get it to index properly.

Gannjunior
28th July 2007, 10:32
hi Neuron,

i know that dgindex is able to read mpeg2 video inside .evo container from hd-dvd.

What's about vc1 video inside .evo? Is dgindex able to read it?

Because i would like a little raw clip from an hd-dvd of my friend, but i would like to cut it, because he's not able to upload me a big file... So, since Dgindex is able to get cut operations, i would like to know if it is possible or not with vc1-evo...

TIA

ciao

Guest
28th July 2007, 13:37
No VC1. DGIndex works on MPEG only.

SpAwN_gUy
30th July 2007, 12:16
What's about vc1 video inside .evo? Is dgindex able to read it? try this one (http://forum.doom9.org/showthread.php?t=121466&highlight=VC1source) .. but .. unfortunately it IS halted(i guess).. and ther is NO seeking.

OFFTOP: maybe, after completeing AVCDec, neuron could make the TRUe DGVC1Dec ... (i assume this will not be such a problem, when ffvc1(???)decoder will be there, and after messing around with ffavcdecoder (names are probbably wrong)).. so we would get DG(HD)Index and Decoders :)

hajj_3
2nd August 2007, 13:42
any update on progress neuron?

harissa
12th August 2007, 21:09
can anyone help me i can't open the ts h264 hdtv file
my guess is that i have to convert it to raw 264 so it can be loaded in dgavcdec100a6 , but i cant find any procedure anywhere

harissa
13th August 2007, 04:22
I manage to extract the raw *.264 from the ts hd file with mencoder
but i got this msg in DGAVCDec
"" paff interlacing not currently supported ""
any help ?
hd file is 1440*1080 29.9frame , so it s interlaced

harissa
13th August 2007, 05:11
megaupload.com/?d=Q87R16OG

here s the file it was recorded with a dvb appz
so i used the TsRemux.exe to rewrite a new ts
and used mencoder to extract the h264
for information all h264 1280*720 60fps can be easly open with DGAVCDec
only the interlaced one have this problem

mitsubishi
13th August 2007, 05:22
"" paff interlacing not currently supported ""

The error message is pretty clear, paff isn't supported, so it won't work until it is.

foxyshadis
13th August 2007, 05:25
Your stream isn't supported at all, it's been mentioned over and over in this thread, and it won't work in ffmpegsource either, so your only option is really directshowsource. Since development has stalled, there's no much point in waiting for the next version, which might be next week or next year.

harissa
13th August 2007, 05:29
directshowsource
i ve tried that the file didnt load at all
do i have to keep the ts or directshowsource. the raw file ?

foxyshadis
13th August 2007, 06:21
Whatever you have directshow splitters installed for. TS will probably be a lot easier to find than raw, haali's supports it for instance.

pyrates
18th August 2007, 08:45
I know that with a raw h.264 file, the framerate can't be found out. But if there can be an option that I can set what the framerate of the h.264 file should be, then the proper framerate can be set in the dga file that is created by opening it up in Notepad and making the change. Right now it defaults to 60000/2002, it should be either that, or 24000/1001 or 25/1. Or entering in a custom value would be good too for those weird sources.

Guest
18th August 2007, 13:22
I know that with a raw h.264 file, the framerate can't be found out. That's not always true. The frame rate is specified in the raw stream's SPS for fixed framerate files:

if (sps->vui_seq_parameters.fixed_frame_rate_flag == 1)
{
nalu->time_scale = sps->vui_seq_parameters.time_scale;
nalu->num_units_in_tick = sps->vui_seq_parameters.num_units_in_tick;
}
else
{
nalu->time_scale = 50;
nalu->num_units_in_tick = 1;
}

Then:


fprintf(p_aif, "\nFPS %d / %d", nalu->time_scale, 2 * nalu->num_units_in_tick);

Anyway, you can simply edit the DGA file and go to the bottom and change the FPS line.

pyrates
20th August 2007, 15:31
That's not always true. The frame rate is specified in the raw stream's SPS for fixed framerate files:

Anyway, you can simply edit the DGA file and go to the bottom and change the FPS line.

Yeah thats what I do right now, but it would be nice if the gui had an option to specify the framerate. But even better to detect it using that code.

Guest
20th August 2007, 15:51
But even better to detect it using that code. It already does use that code.

pyrates
21st August 2007, 06:32
It already does use that code.

Didnt work for me when I used it. Read it as 60000 / 2002 instead of 24000 / 1001. Had to go in and manually change it.

Guest
21st August 2007, 13:35
Didnt work for me when I used it. Read it as 60000 / 2002 instead of 24000 / 1001. Had to go in and manually change it. The default is 50 / 2, so those values must be in your stream. I'll look at it if you'd like to post a small source sample. Make sure that you get the same result when you index the sample (needs to contain the SPS).

pyrates
24th August 2007, 06:59
The default is 50 / 2, so those values must be in your stream. I'll look at it if you'd like to post a small source sample. Make sure that you get the same result when you index the sample (needs to contain the SPS).

Too late I guess for that now. Already is gone. But that was the only problem. Other then the usual last frame not being in the video but that's not even noticeable. The video encoded perfectly with no artifacts in it at all. The hd dvd in this case was Pay Back. Even when I tried to demux it with evodemux, it didn't show the framerate in their either. But I know all hd dvd that are movies are mastered to run at 24000/1001, so that's how i knew to use that value.

Alosaur
24th August 2007, 07:56
Too late I guess for that now. Already is gone. But that was the only problem. Other then the usual last frame not being in the video but that's not even noticeable. The video encoded perfectly with no artifacts in it at all. The hd dvd in this case was Pay Back. Even when I tried to demux it with evodemux, it didn't show the framerate in their either. But I know all hd dvd that are movies are mastered to run at 24000/1001, so that's how i knew to use that value.

Actually if you were dealing with a stream from an HD DVD it was perfectly correct in reporting 29.97 and not 23.976. HD DVD video streams, as with DVD, have soft telecine flags and that's why you get it reported as 29.97. The issue isn't with DGAVCIndex as it's just reporting the way the stream is flagged. Blu-Ray on the other hand stores the stream natively at 23.976 and has no telecine flags.

Revgen
27th September 2007, 01:55
Any news lately Neuron2?

JK1974
27th September 2007, 09:34
Has anybody seen this: http://lists.mplayerhq.hu/pipermail/ffmpeg-devel/2007-September/035591.html

It´s a first PAFF implementation for ffmpeg, but I don´t know how good it is working.

onlym3
28th September 2007, 20:07
I have Spiderman 3 here and when i index the movie with dgavcindex it ends up 11 seconds too short. When i build a graph Filesource - Sonic HD Demuxer - Sonic VideoDecoder 4.2 and use that in an .avs i get the correct length, so dgavcindex is somehow "loosing" 11 seconds.
Any ideas how or why this happens?

Guest
28th September 2007, 23:17
Has anybody seen this: http://lists.mplayerhq.hu/pipermail/ffmpeg-devel/2007-September/035591.html

It´s a first PAFF implementation for ffmpeg, but I don´t know how good it is working. That's great because I won't have to do it. :)

Regarding news: after 8 years of tireless work I am taking a little break. I hope to regain my energy in not too long.

Guest
28th September 2007, 23:18
I have Spiderman 3 here and when i index the movie with dgavcindex it ends up 11 seconds too short. When i build a graph Filesource - Sonic HD Demuxer - Sonic VideoDecoder 4.2 and use that in an .avs i get the correct length, so dgavcindex is somehow "loosing" 11 seconds.
Any ideas how or why this happens? Is it really a big deal for you? Do you lose sync or any important part of the video? What is the frame rate reported by the two applications? What is the movie length? If you play it using VLC or any other libavcodec-based player, does it also lose 11 seconds?

Adub
29th September 2007, 04:52
Good for you neuron2!! You deserve a break, I dare say. What with DGindex, decomb, DGAVCDec, and everything other thing you have done in the past 8 years, I'd damn well say you have earned a vacation!

Have a nice break!

Revgen
29th September 2007, 05:05
Regarding news: after 8 years of tireless work I am taking a little break. I hope to regain my energy in not too long.

Is it really a big deal for you? Do you lose sync or any important part of the video? What is the frame rate reported by the two applications? What is the movie length? If you play it using VLC or any other libavcodec-based player, does it also lose 11 seconds?

Wow! You've regained your energy pretty quick. ;)

Yet seriously, I really appreciate your work on both DGAVCDec and DMPGDec. It's always a good idea to take a break to prevent burnout. Enjoy your time off and take it easy. :thanks:

Toti
1st October 2007, 01:59
Awesome tool but does it work only in XP. No VISTA support?

Guest
1st October 2007, 02:18
Buy me a copy of Vista and I will let you know. Are you having some issues?

Toti
1st October 2007, 05:02
@Neuron 2, I'll be more than happy to send you Windows Vista if you provide me with your address send me a pm. Yes, the issue is that it just doesn't work in vista. The .avs file is not recognized.

Trahald
1st October 2007, 05:17
Hmmm... works ok here.. (vista ultimate x86) what does '.avs file is not recognized' mean?

Guest
1st October 2007, 05:44
@Toti

Are you talking about a shrink-wrapped legit Vista, or an illegal copy? I cannot accept the latter, but I appreciate the offer.

Yes, please explain your problem more. What exactly do you do and what goes wrong?

dk75
1st October 2007, 20:19
Master Yoda I am, I explain that to you then.

@neuron2: Toti installed DGAVCDec in system, indexed AVC stream, build AVS script and... he thinks that it is standalone.

@Toti: DGAVCDec isn't standalone program and AVS isn't part of it. DGAVCDec is part of AVS instead and that means that it's useful if you have and use AVS already. It is plugin to AVS with some helper tool along.
So you must install AVS BEFORE useing DGAVCDec.

Toti
2nd October 2007, 06:28
Hi Neuron, I am running Windows Vista Ultimate 32-bit. I index .264 file create an .avs file and Virtual Dub gives me an error.

If works fine to other people then its probably something wrong at my end or more likely imcompability with programs.

CineVision "not a valid video stream"
MainConcept "No Video stream found"
TMPGEnc "No Video found"

Neuron, let me know just a pm away.

Guest
2nd October 2007, 14:44
Does it play properly in DGAVCIndex? Have you installed Avisynth? What is the exact error you get in VirtualDub?

Toti
2nd October 2007, 15:50
My PC originally comes with WinXP and it works fine there. However, on Windows Vista, the slider doesn't work but if you press preview then I can see the video just fine.

Yes, I do have Avisynth 2.5 installed and the script file is pretty simple just like you put on your "Read Me". I am not doing anything different from XP where it worked flawlessly.

I can import the file via directshow/graphedit but I always rather use your products. :)

dk75
2nd October 2007, 16:18
UPS!
So Yoda Master not I am?

Guest
2nd October 2007, 16:59
@dk75

Stop making useless posts or you will be struck.

Toti
12th October 2007, 18:10
Neuron2; I found the problem. Haali Media Splitter installed doesn't let DGAVCindex work.

Uninstalling Haali Media Splitter does not help. Just don't install it at all.

Thanks anyway.

Guest
12th October 2007, 22:58
Are you sure? I don't see any way they could interfere with each other.

Toti
17th October 2007, 08:15
Are you sure? I don't see any way they could interfere with each other.

Don't worry neuron2, I gave up on trying to encode in Vista. CineVision the only app that I have the produces a compliant AVC stream for AVCHD & HD-DVD.

I am back on XP where everything works great.

LigH
28th October 2007, 16:08
ffdshow_rev1579_20071026_xxl.exe is able to decode PAFF AVC video.

Unfortunately, it is not possible to copy libavcodec.dll from ffdshow to DGAVCDec and make it index such a file. DGAVCIndex "knows it better" and refuses to even try it.

Donald Graft, please update...

Guest
28th October 2007, 23:49
Yes, I'm aware of it and it is on the agenda.

tjmitchem
31st October 2007, 17:34
Can someone take a look at this H.264 stream (http://mostlyharmless.dyndns.org/264/test_video1.264) and tell me if it's valid/okay? DGAVCIndex doesn't like it at all, and crashes when I try to open it.

The stream is from Dish Network, and was recorded with an R5000-HD modded receiver.

Any and all help is appreciated.

harissa
31st October 2007, 18:32
dont even bother I use a genpix 8psk and a R-5000 to record from dish , ( even the PPVHD arent scarmbeld )
and i wasnt able at all to encod any h264 1440*1080
I spent the whole summer trying
even directshow crach
only ABC FOX H264 can be encoded cauz they are 1280*720

canTsTop
31st October 2007, 18:35
for some reason DGAVCIndex aplha 6 crashes on my pc to, try older DGAVCIndex (dgavcdec100a5) and you will see that your video is PAFF, it not supported now.

tjmitchem
1st November 2007, 01:28
for some reason DGAVCIndex aplha 6 crashes on my pc to, try older DGAVCIndex (dgavcdec100a5) and you will see that your video is PAFF, it not supported now.

Dang! I was hoping it would be a simple fix and then I could go beg squid_80 for a 64-bit version of the avisynth plugin :)

harissa
1st November 2007, 01:45
dont expect h264 from dish network easy to manipulate like any other h264
it quit hard to cut , to encod , to play ,
it s not even worth it ,
the quality is way worse than canadian hd , I wasnt expectin that

tjmitchem
1st November 2007, 03:10
dont expect h264 from dish network easy to manipulate like any other h264
it quit hard to cut , to encod , to play ,
it s not even worth it ,
the quality is way worse than canadian hd , I wasnt expectin that

I haven't had any problems playing it at all.

G_M_C
1st November 2007, 14:26
for some reason DGAVCIndex aplha 6 crashes on my pc to, try older DGAVCIndex (dgavcdec100a5) and you will see that your video is PAFF, it not supported now.

Yep, there were more problems; Alpha 6 crashes on my version too, and the earlier versions (up till Alpha 3). were much faster. In the end it was something or another with libavcodec, when Neuron2 tried to incorporate it into the application (to remove the need for .DLL's in system-directory's).

Too bad that development seems to have stopped after this snag was found on alpha 6.

Guest
1st November 2007, 14:35
No, it was the move to the Windows based build for libavcodec. If you use the one from ffdshow_tryouts, you should not have crashes. And PAFF will be added soon. The project has not stopped, only paused.

G_M_C
1st November 2007, 18:18
No, it was the move to the Windows based build for libavcodec. If you use the one from ffdshow_tryouts, you should not have crashes. And PAFF will be added soon. The project has not stopped, only paused.

Good to hear that the project has not stopped :)

I still use it whenever i need to get an X264 stream openend in AviSynth, best tool for it imho.

But i've read that FFMPEGSource () can also open AVC-streams, but since you tool works fine, i havent felt the need to it try out.

zurv
4th November 2007, 02:03
gdavcdec works fine for stuff encoded in x264, but avc files from blu-ray's i get odd bands on it. I've seen it on all the blu-ray i've tried it on. Please see linked pix.

http://www.kickassanime.org/derp/test/tekkon01.png

Ideas?

i guess in the meantime i can use directshow() orFFMPEGSource() - but of which are pretty useless for seeking around with (ie, going back and forward u can wind up with different frame numbers for the same frame - which is a problem when doing subtitles)

^_^

yes, the video was demuxed from the m2ts to a avc/h.265 elementary stream

Guest
4th November 2007, 03:41
Post a link to an unprocessed source stream. I can't do anything with a PNG.

ACrowley
4th November 2007, 09:15
[QUOTE=zurv;1061670]gdavcdec works fine for stuff encoded in x264, but avc files from blu-ray's i get odd bands on it. I've seen it on all the blu-ray i've tried it on. Please see linked pix.

http://www.kickassanime.org/derp/test/tekkon01.png

Ideas?

i guess in the meantime i can use directshow() orFFMPEGSource() - but of which are pretty useless for seeking around with (ie, going back and forward u can wind up with different frame numbers for the same frame - which is a problem when doing subtitles)

^_^

Try to use a new ffdshow Build which supports PAFF and copy over the libavcodec.dll from ffdhsow to the dgavc folder

Also you can perfectly encode directly from the .m2ts

HaaliMediaSplitter-ffdshowVidedecoder (or you can use Sonic Decoder)

I pers never demux the m2ts with H264 before encoding.

Schmendrick
4th November 2007, 10:42
@tjmitchem: Your avc-stream is a valid stream, but it does not contain I-frames (key frames), which might be the reason why DGAVCDec doesn't like it. If you have PowerDVDUltra or WinDVDPlatinum with their AVC/H.264-decoders and Avisynth installed there should be no problem to properly feed this clip to a video editor for cutting and reencoding. As far as I understand all AVC/H.264-editors like DGAVCDec and H264TS_Cutter rely on cutting on I-frame, so if there are no I-frames within the video they choke on such a video. So the only way to cut such a video-clip without reencoding it would be the tedious method to use a hex editor.

I have also seen other streams which either do not contain I-frames or only very few, so they have long frame sequences just consisting out of P- and B-frames. No author of these AVC-editor programmes so far has seemed to have addressed a provision to cut such streams as far as I have seen.

Schmendrick

Deinorius
4th November 2007, 11:18
Videostreams without I-Frames? What the hell ist that? AFAI understand video coding there ist no possibility of videos without I-Frames. What are you talking about?
Videos with few I-Frames... how many do you mean. I can't imagine such videos, where I-Frames are more than 300 Frames away from each another. Of course it's possible, but seeking suffers.

Or may be, there is something I didn't know up to day.

drmpeg
4th November 2007, 12:03
tjmitchem's stream contains an I-field picture every 80 fields. That makes the GOP equal to 40 frames. A little long, but not excessive.

Ron

Guest
4th November 2007, 15:07
Videostreams without I-Frames? What the hell ist that? AFAI understand video coding there ist no possibility of videos without I-Frames. What are you talking about? MPEG2 video without I frames is possible and used in practice. There is a progressive refresh of intra encoded macroblocks.

Now you understand more. :)

tjmitchem
4th November 2007, 17:35
If you have PowerDVDUltra or WinDVDPlatinum with their AVC/H.264-decoders and Avisynth installed there should be no problem to properly feed this clip to a video editor for cutting and reencoding.

I do have PowerDVD Ultra, but it's a 32 bit app, and I need to frameserve these streams from 64bit avisynth to 64bit virtualdub. There is definitely a speedup with the 64 bit tools.

For now, I'm perfectly content to play my DishNet h.264 streams with PowerDVD Ultra (works fine) while waiting for the next version of dgavcdec/dgavcindex. :)

Schmendrick
4th November 2007, 21:45
@drmpeg: tjmitchem's stream contains an I-field picture every 80 fields.
Hi Ron,
I have to disagree as tjmitchem's stream does not contain I-frames which are flaged by "00 00 00 01 25" byte flag sequence. The last byte also can be "65". „H264 Sequenz Parameter Set“ flags ("00 00 00 01 27") and „H264 Picture Parameter Set“ flags ("00 00 00 01 28") are included at about 80 fields (I have not counted the number of fields). So as far as I can judge like neuron2 has written also within AVC/H.264-streams streams without I-frames or with very frame sequences without I-frames seem to be used.

Schmendrick

drmpeg
4th November 2007, 23:06
@drmpeg:
Hi Ron,
I have to disagree as tjmitchem's stream does not contain I-frames which are flaged by "00 00 00 01 25" byte flag sequence. The last byte also can be "65". „H264 Sequenz Parameter Set“ flags ("00 00 00 01 27") and „H264 Picture Parameter Set“ flags ("00 00 00 01 28") are included at about 80 fields (I have not counted the number of fields). So as far as I can judge like neuron2 has written also within AVC/H.264-streams streams without I-frames or with very frame sequences without I-frames seem to be used.

Schmendrick
00 00 01 25 is the start code for a coded slice of an IDR picture. An I picture may or may not be an IDR picture. So while it is true that there are no IDR pictures in the stream, there are I pictures every 80 fields.

IDR pictures are not required for random access. H.264 can still use open and closed GOP's, just like MPEG-2. This stream decodes fine after the SPS is encountered, so it's possible that the GOP's are closed by using unidirectional motion vectors in the B fields that precede the I field in display order.

Ron

Deinorius
4th November 2007, 23:10
MPEG2 video without I frames is possible and used in practice. There is a progressive refresh of intra encoded macroblocks.

Now you understand more. :) Really. Now I understand more. :devil:

But is it really useful?

Guest
5th November 2007, 01:55
If you can use the saved bandwidth to cram an extra channel or two in a transponder or head-end and convince the users that the cool progressive macroblocking that wipes across the screen on a channel change is a feature, and then suck up the ad revenues on the two extra channels, then yes, it is useful.

G_M_C
5th November 2007, 09:59
If you can use the saved bandwidth to cram an extra channel or two in a transponder or head-end and convince the users that the cool progressive macroblocking that wipes across the screen on a channel change is a feature, and then suck up the ad revenues on the two extra channels, then yes, it is useful.

Gotta love the sarcasm in this :D

But anyway, a few posts back ACrowley posted a possible workaround;

[...]
Try to use a new ffdshow Build which supports PAFF and copy over the libavcodec.dll from ffdhsow to the dgavc folder
[...]


Does that work ?

Guest
5th November 2007, 14:32
No, it doesn't, because DGAVCDec alpha 6 sees the PAFF and refuses to proceed.

ACrowley
5th November 2007, 16:11
No, it doesn't, because DGAVCDec alpha 6 sees the PAFF and refuses to proceed.


AH, didnt know that. THX

@G_M_C

Then simply encode directly from the m2ts.
As i say :
Haalimediasplitter-ffdshow

directshowsource("c:\xxx.grf",audio=false,fps=23.976)

klinika
5th November 2007, 18:03
It's most likely a problem related to cqm's, using fresh libavcodec.dll should solve it. I asked about that on page 20 in this thread. At least that's what the problem was for me with those kind of stripes on the decoded video.

NorthPole
6th November 2007, 01:32
Thank you neuron2 for providing DGAVCDec.

I did a comparison of re-encoding a mp4 between quick time 7 and DGAVCDec and was off by one frame.

I used Yamb to demux the original mp4 and used the following script to frameserve for encoding

LoadPlugin("C:\Program Files\Media\dgavcdec\dgavcdecode.dll")
AVCSource("D:\testfile.dga")
Lanczos4Resize(last,848,480,0,0,1280,720)

I used AVInaptic to review the three files

the original file reported a total # of frames = 5737 and a framerate of 23.976

the quick time export reported a total # of frames = 5737 and a framerate of 23.976024.

the DGAVCdec file reported a total # of frames = 5636 and a framerate of 23.974427.

Guest
6th November 2007, 04:05
From the Readme.txt:

"2. Due to an ffmpeg bug, the last frame may be lost."

NorthPole
6th November 2007, 15:16
Sorry, I didn't catch that. Thank you

LigH
7th November 2007, 20:08
AH, didnt know that. THX

I already complained about it in ^reply #507 (http://forum.doom9.org/showpost.php?p=1059431&postcount=507)^... :rolleyes:

canTsTop
11th November 2007, 10:00
hi,

i find way to work with PAFF video, you need to index your video with dgavcdec100a2, then change dga file in beginning to:

DGAVCIndexFile3

C:\bits0001.264
C:\dgavcdec100a6\libavcodec.dll
and avs:
loadplugin("C:\dgavcdec100a6\DGAVCDecode.dll")
AVCSource("bits0001.dga")

but now i have other problem, demuxed video is longer then it was in TS. if i remux that TS file with gdsmux (from MatroskaSplitter) and then get time codes from mkv i get this time code file:
# timecode format v1
Assume 23.976
0,97,25.0000
98,99,50.0000
100,302,25.0000
303,304,50.0000
305,16338,25.0000
16340,16340,25.0000
16342,16342,25.0000
16344,16344,25.0000
16346,55059,25.0000
55061,55061,25.0000
55063,55063,25.0000
55065,55065,25.0000
55067,61089,25.0000
61090,61101,50.0000
61102,61110,25.0000
61111,61114,50.0000
61115,62277,25.0000
there are a few frames that should have 50fps instead 25fps

Inventive Software
12th November 2007, 01:42
@neuron2: My coding experience is limited, and this would be something only somebody as stupid as I would attempt, but I was thinking earlier... since DGDecode is pretty much solely MPEG-2 sussed and much more advanced than DGAVCDecode, roughly how easy is it to use DGAVCDecode as a code-base and swap out the AVC decoding for VC-1 decoding?

Guest
12th November 2007, 02:48
Is there a decent VC1 decoder that I can access through a DLL and decode frame by frame? Or is there a decent open source decoder that I can use?

Chumbo
12th November 2007, 03:37
Is there a decent VC1 decoder that I can access through a DLL and decode frame by frame? Or is there a decent open source decoder that I can use?
The Microsoft WMVideo Decoder DMO decodes VC-1. I'm sure it's not open source, but it is part of the WMP 11 SDK. The link below may provide you with what you need hopefully.

http://msdn2.microsoft.com/en-us/windowsmedia/bb190327.aspx

Oh also, it looks like the WMP 11 SDK has been merged into the Windows SDK 6 and it's also part of the Vista Platform SDK incase you can't find it separately.

Inventive Software
12th November 2007, 03:44
Is there a decent VC1 decoder that I can access through a DLL and decode frame by frame? Or is there a decent open source decoder that I can use?

I was thinking using libavcodec, since it's under the same license as DGAVCDecode..... I'm not sure on its limitations though. :(

Guest
12th November 2007, 04:00
It's do-able, then, but I have a lot of work to do on AVC first.

Inventive Software
12th November 2007, 04:06
I figured that, just thought I'd chuck the idea in the open for opinions. :)

Guest
17th November 2007, 08:25
Here's a nice shiny new version for y'all:

* Indexing is 6 times faster! I knew you'd like that. :) I ditched the JM Reference code NALU processing and made my own. Their code was doing fgetc() on every byte and was chock full of useless memcpy's and dynamic memory allocation.

* When pulldown flags are seen, the user is offered the chance to force the IVTC'ed frame rate. "Force Film" is not yet implemented, so you need pure telecine throughout for this interim solution to work right.

* In preparation for implementation of "Honor Pulldown Flags" and "Force Film", a new index key was added to the DGA file:

PIC n

...where n is the pic_structure type of the following frame. This is the equivalent of TFF/RFF in MPEG2. Remember that the picture timing SEIs are optional, so don't be surprised if you don't see any in the DGA file.

* The DGA file format version is bumped to 4.

* An MRU list has been added to the File menu.

* It no longer rejects PAFF out of hand, but I haven't yet got it working properly with any version of libavcodec.dll that I can find. Hopefully there will be a working version and it will slot in without further changes.

http://neuron2.net/dgavcdec/dgavcdec100a7.zip

It ships with my stripped down libavcodec.dll, but you can replace it with any version you like. I'm hoping this version no longer crashes after I recompiled it with VS 2005 SP1.

The changes were extensive, so please pound away.

adhoya
17th November 2007, 09:03
why libavcdec.dll(alpha7) is so small. i couldn't even open dgavcdec. got some error.
couldn't load....libavcdec.dll
when i use alpha 6.indexing is ok and preview is also ok in megui but i couldn't encode, because of this error message in megui. pls help~~[h264 @ 01DB6098]top block unavailable for requested intra4x4 mode -1 at 0 0
Job commandline: "C:\Program Files\megui\tools\x264\x264.exe" --pass 1 --bitrate 8500 --stats "D:\movie.stats" --bframes 16 --b-pyramid --direct auto --filter 4,4 --subme 1 --analyse none --me dia --threads auto --thread-input --sar 1:1 --progress --no-psnr --no-ssim --output NUL "D:\carsharpen.avs"
avis [info]: 1920x800 @ 23.98 fps (901 frames)
x264 [info]: using SAR=1/1
x264 [info]: using cpu capabilities: MMX MMXEXT SSE SSE2 SSSE3
[h264 @ 01DB6098]top block unavailable for requested intra4x4 mode -1 at 0 0
[h264 @ 01DB6098]error while decoding MB 0 0, bytestream (82112)
[h264 @ 01DB6098]left block unavailable for requested intra4x4 mode -1 at 0 16
[h264 @ 01DB6098]error while decoding MB 0 16, bytestream (108428)
[h264 @ 01DB6098]top block unavailable for requested intra4x4 mode -1 at 0 34
[h264 @ 01DB6098]error while decoding MB 0 34, bytestream (76171)
[h264 @ 01DB6098]top block unavailable for requested intra4x4 mode -1 at 3 50
[h264 @ 01DB6098]error while decoding MB 3 50, bytestream (63639)
[h264 @ 01DB6098]top block unavailable for requested intra4x4 mode -1 at 0 16

Guest
17th November 2007, 09:21
Try replacing the libavcodec.dll with the one from alpha 6 and tell me if that works. Anybody else having problems with the shipped alpha 7 libavcodec.dll?

I can't help you with Megui. Looks like a corrupted stream.

Koti
17th November 2007, 09:33
I get this new error message in x264-680 using alpha7 - alpha6 with the same avs script has no error


avis [info]: 704x400 @ 23.98 fps (145682 frames)
[h264 @ 010C700C]Internal error, IDCT permutation not set
encoded frames: 729/145682 (0.5%), 14.55 fps, eta 2:46:00

changed to a different libavcodec.dll (from ffdshow 10-09-2007) and error is gone
* libavcodec.dll from alpha6 works too

squid_80
17th November 2007, 09:33
why libavcdec.dll(alpha7) is so small. i couldn't even open dgavcdec. got some error

Install the Visual Studio 2005 SP1 redistributable package.

Guest
17th November 2007, 09:46
OK, I have replaced the libavcodec.dll in the alpha 7 zip with one built from ffdshow. Please advise if that one is working.

Koti
17th November 2007, 09:54
Working perfectly :)

also thx for the nice speed increase on indexing from a6 :D

Guest
17th November 2007, 09:55
Thanks for your test results, Koti. I'm off to bed now.

Edit: Timeline navigation and GOP stepping is messed up, especially after a play operation. I'll fix it and make a new alpha.

ToS_Maverick
17th November 2007, 14:06
tested your new alpha on various satellite streams, with and without PAFF, all working perfectly :D

took a sample and coded it (1080p25 => 720p25) with
DGAVCDec @ 7fps and
CoreAVC @ 8 fps

only got problems with seeking in vdubmod :(

volence
17th November 2007, 14:25
I tested it on my computer and got the same problem with #546, counld not load the libavcodec.dll. And then I tested again on another computer with MS Visual Studio 2005 installed, it worked fine. Alpha6 worked fine on both computers, and I replaced the dll in a7 with that in a6, it can work, but I don't konw whether this will cause problem.

Thanks again for this nice tool!

tjmitchem
17th November 2007, 15:19
Tested with a stream from Dish Network and got the following popup:

"GetAnnexbNALU can't read start code".

I realize that PAFF is not really supported, but thought I'd give it a shot anyway :)

No problems at all w/ libavcodec.

Squid_80: Are you going to do an x64 version of dgavcdecode.dll?

Guest
17th November 2007, 15:43
"GetAnnexbNALU can't read start code". Even if it is PAFF, you shouldn't get that error. Can you provide a stream?

Squid_80: Are you going to do an x64 version of dgavcdecode.dll? It would be hard for him to do that without the source code. You'll have to wait until I get out of alpha status for that.

tjmitchem
17th November 2007, 17:10
Even if it is PAFF, you shouldn't get that error. Can you provide a stream?

Arrrghh! #$%$%#*!!

It works just fine. I forgot that you can't load .ts files in dgavcindex. I demuxed it to mpa and 264 and the 264 stream indexed just fine. Sorry about that. I'm usually not this stupid in the morning :confused:

I encoded a very short (1100 frames) clip, and got about 1 frames/sec. This was on dual 2.8ghz Xeons (first generation). This seems about right, given that the processors are not exactly speedy by today's standards. I suspect it would run much faster on my dual opteron box.


It would be hard for him to do that without the source code. You'll have to wait until I get out of alpha status for that.

Yes, access to the code would seem to be a prerequisite :)

Guest
17th November 2007, 17:17
It works just fine. I forgot that you can't load .ts files in dgavcindex. He he. Actually, it accepts TS files and I had that working in my local build, but when I redesigned the NALU processing, I didn't yet change the TS parser to work with it. So when I do that (and add TS support to DGAVCDecode) we will have TS files working.

Guest
17th November 2007, 17:18
This fixes the timeline navigation problems in alpha 7.

http://neuron2.net/dgavcdec/dgavcdec100a8.zip

tjmitchem
17th November 2007, 17:19
He he. Actually, it accepts TS files and I had that working in my local build, but when I redesigned the NALU processing, I didn't yet change the TS parser to work with it. So when I do that we will have TS files working.

Great. I, for one, really appreciate all the work you do.

One quick question. How much of the plugin source is assembly?

Guest
17th November 2007, 17:45
When you talk about the plugin source, I assume you mean DGAVCDecode.dll.

There is no assembly code at all. The time-consuming work is done in libavcodec.dll. I believe that has some assembly code.

Regarding DGAVCIndex, again, there is no assembly code. But the decoding relies on libavcodec.dll and the indexing is already very fast without needing assembly code.

Note: Please re-download alpha 8, as I had a little bug in it. Playing until end of file messed up subsequent navigation.

tjmitchem
17th November 2007, 18:08
When you talk about the plugin source, I assume you mean DGAVCDecode.dll.

There is no assembly code at all. The time-consuming work is done in libavcodec.dll. I believe that has some assembly code.

I was wondering about how difficult it would be to do an x64 version. I've done some x64 avisynth plugins for use with squid_80's port, but they didn't contain any assembly, which is more difficult to convert.

Note: Please re-download alpha 8, as I had a little bug in it. Playing until end of file messed up subsequent navigation.

Grabbing it now.

Guest
17th November 2007, 18:14
I was wondering about how difficult it would be to do an x64 version. I've done some x64 avisynth plugins for use with squid_80's port, but they didn't contain any assembly, which is more difficult to convert. Has anyone made a 64 bit version of libavcodec.dll? If so, I'll release the current source code to DGAVCDec so that somebody can make a 64 bit version. If not, there's no point to it.

tjmitchem
17th November 2007, 18:43
Has anyone made a 64 bit version of libavcodec.dll? If so, I'll release the current source code to DGAVCDec so that somebody can make a 64 bit version. If not, there's no point to it.

Unfortunately, no. The main problem right now is that the mingw tools can't generate native x64 executables for windows, and the libavcodec code requires a C99-compliant compiler. This means that the Visual Studio compilers can't do it.

X64 mingw is being worked on, but it's not there yet. Once that's done, an x64 libavcodec.dll should follow shortly.

It's obvious that the guys who have done x64 versions of ffdshow can do it, but I don't remember them releasing libavcodec.dll. Maybe I'll ask them if they can release an x64 version of the current libavcodec code. That would make a number of people very happy :)

Terry

Guest
17th November 2007, 18:48
ffdshow-tryouts has a Visual Studio buildable libavcodec.dll. In fact, that's the one in the alpha 8 zip file!

tjmitchem
17th November 2007, 19:09
ffdshhow-tryouts has a Visual Studio buildable libavcodec.dll. In fact, that's the one in the alpha 8 zip file!

Hmm. I thought it was the ffmpeg guys who were officially "in charge" of libavcodec, so that's where I got the code. I'm checking out the code from ffdshow tryouts svn right now.

BTW, I just got this warning from DGAVCIndex:
"Field Pictures (PAFF) found. This may blow up in your face! Continue?"

I like that message :)

LigH
17th November 2007, 19:19
Congratulations.

DGAVCDec 1.00a8 works quite well with libavcode.dll from ffdshow_rev1611_20071116_clsid.exe and decodes at least the short "wedding" clip. I will keep testing the material. You are on a good track!

Guest
17th November 2007, 19:27
Is the wedding clip PAFF? If so, can you point me to it? Thank you.

squid_80
18th November 2007, 02:00
It's obvious that the guys who have done x64 versions of ffdshow can do it, but I don't remember them releasing libavcodec.dll. Maybe I'll ask them if they can release an x64 version of the current libavcodec code. That would make a number of people very happy :)
If you install the x64 version of ffdshow, you end up with a 64-bit libavcodec.dll in the ffdshow directory.
X64 mingw is being worked on, but it's not there yet. Once that's done, an x64 libavcodec.dll should follow shortly.It's not that simple. Assembly code is different depending on the OS (linux or windows). Someone would need to translate it to the windows ABI if it doesn't match.

tjmitchem
18th November 2007, 02:24
If you install the x64 version of ffdshow, you end up with a 64-bit libavcodec.dll in the ffdshow directory.

Yes. But the latest released version of ffdshow for x64 doesn't have the PAFF support. Luckily, I'm happily running the the build that I just compiled. I didn't realize that the ffdshow-tryouts stuff would just compile right out of the box. I was pleasantly surprised.


It's not that simple. Assembly code is different depending on the OS (linux or windows). Someone would need to translate it to the windows ABI if it doesn't match.

Unfortunately, assembly translation is way above my head. I haven't touched assembly since I was 9 years old, when my parents got me a TRS-80 Model I.

Sheesh, now I feel old :)

Terry

Guest
18th November 2007, 07:08
I'm implementing the Info window now. I'd like to know what you think is pertinent information that should be displayed for the AVC video. I currently intend:

Stream Type
Profile
Level
Frame Size
Aspect Ratio (will show sar and resulting display size)
Frame Rate
Video Type
Colorimetry
Picture Structure
Field Order
Coded #
Playback #
Field Repeats
Frame Repeats
Bitrate
Bitrate (Avg)

Anything else you'd like to have?

Inventive Software
18th November 2007, 07:45
Progressive or Interlaced, and what type of interlaced video it is (MBAFF or PAFF), would be useful.

Deinorius
18th November 2007, 11:54
Don't know exactly, if someone asked this before, but would it be possible to use for decoding/indexing CoreAVC too? Of course, both should be supported in this situation.
I'm just interested, if it's possible. Would there be even a significant advantage?

Inventive Software
18th November 2007, 13:15
Conflict of licenses there. DGAVCIndex is GPL, CoreAVC is proprietary.

Deinorius
18th November 2007, 13:41
I know. Therefore I thought just of the possibility of using CoreAVC by switching between libavcodec and CoreAVC. Well, CoreAVC ist just a .ax File, where libavcodec ist a .dll File. I don't know it by myself, if it can be used so easily.

Inventive Software
18th November 2007, 13:43
Short answer: no. Long answer: maybe......

Koti
18th November 2007, 19:47
Problems with supplied libavcodec.dll and artifacts ( I tested libavcodec.dll supplied with a6 a7 a8 )

http://img230.imageshack.us/img230/6421/blockh0000iz5.th.png (http://img230.imageshack.us/my.php?image=blockh0000iz5.png)

these artifacts / blocks are gone if I use a different libavcodec.dll (from ffdshow Rev1523 clsid's compile)

Note : if I use the libavcodec.dll supplied with a6 a7 a8 in my ffdshow folder the artifacts appear when decoding with ffdshow

Guest
19th November 2007, 01:46
Problems with supplied libavcodec.dll and artifacts ( I tested libavcodec.dll supplied with a6 a7 a8 )

http://img230.imageshack.us/img230/6421/blockh0000iz5.th.png (http://img230.imageshack.us/my.php?image=blockh0000iz5.png)

these artifacts / blocks are gone if I use a different libavcodec.dll (from ffdshow Rev1523 clsid's compile)

Thanks for pointing that out. Please give me a link to that version. Does it have the PAFF support?

But, um, I don't see any artifacts in your picture. What are you talking about?

Koti
19th November 2007, 03:57
here is a better view

Artifacts.avi (http://www.mediafire.com/?6ixtqjzkimd)

I have not noticed / reproduced this on any other source yet

paff support is just added in this version - libavcodec.dll (http://www.mediafire.com/?4lb0edqzzp3) from ffdshow Rev1523 clsid

Guest
19th November 2007, 04:16
OK, that version fixes a similar stream that I have.

Can you please point me to the site where these builds are published. I'll need to get the corresponding source code.

Have you tried the PAFF DLLs to see if they are OK for this problem?

I will update the alpha 8 package with this version.

Thank you for bringing this to my attention.

Guest
19th November 2007, 04:32
Alpha 8 package is now updated.

Koti
19th November 2007, 04:39
http://ffdshow-tryout.svn.sourceforge.net/viewvc/ffdshow-tryout/trunk/?pathrev=1523

Track1.264 (http://www.mediafire.com/?anx4m0zxzzx)

yw :)

check
19th November 2007, 06:59
I'd like to see a 'frame type' (ie, I, P, B) box in the info window. I'd like it partly for plain interest, and partly to know possible cut points.

foxyshadis
19th November 2007, 10:15
http://sourceforge.net/project/showfiles.php?group_id=173941 is where the actual builds are published, in case you want to test them for compatibility.

raziel666
19th November 2007, 15:47
I have a VFR MP4. I try to extract the raw AVC stream with Yamb and then use DGAVCindex to play with it, but what I get is a 29.97 fps video. In the bottom I see that the fps has a value of 60000 / 2002 (=29.97fps), but the video originally is 23.976fps except for a part that is 60fps. Am I doing something wrong? Or maybe there is some kind of evil problem with DGAVCindex handling VFR AVC streams?

LigH
19th November 2007, 16:01
Is the wedding clip PAFF? If so, can you point me to it? Thank you.

http://forum.doom9.org/showthread.php?p=1053242#post1053242

Comes from a SONY AVCHD camera. May contain some PAFF (DGAVCIndex 1.00a6 complained it).

I indexed and converted a longer video (~ 20 min, with interlaced/progressive changes due to changing lightness) without problems, too.

VirtualDub crashed (simply disappeared) when dragging the position slider around on a loaded AviSynth script. But this is not really the recommended treatment anyway. :D

Guest
19th November 2007, 17:01
I have a VFR MP4. I try to extract the raw AVC stream with Yamb and then use DGAVCindex to play with it, but what I get is a 29.97 fps video. In the bottom I see that the fps has a value of 60000 / 2002 (=29.97fps), but the video originally is 23.976fps except for a part that is 60fps. Am I doing something wrong? Or maybe there is some kind of evil problem with DGAVCindex handling VFR AVC streams? You didn't give me the stream so I can only guess...

Probably it has 23.976 parts pulled-down to 29.97 mixed with 29.97 parts. To handle that, DGAVCDec could honor the pulldown flags and then you can decide in your Avisynth script how to deal with that (just as for DGMPGDec), or DGMPGDec could apply Force Film. But I haven't yet implemented the Honor Pulldown Flags or Force Film functionality, so you'll have to be patient.

It's not so easy, because when decoding, libavcodec.dll is doing the work and it doesn't honor pulldown either, so I have to do it after decoding the frame. But I don't have access to the picture timing SEI, because libavcodec.dll decoded the frame and all I get back is the decoded frame data. So I either have to make a special build of libavcodec.dll that passes back data I need (which I prefer not to do so that users can switch out different libavcodec.dll versions as they come along), or I have to parse the NALUs as they flow by on the way into libavcodec.dll. I can do the latter but some redesign will be needed. I'm working on it.

raziel666
19th November 2007, 17:12
Thanks for your quick answer neuron2. The stream is some 800mb so I don't know how I can give it to you.

But according to the timecodes I get if I mux into mkv, there are 60fps parts and 23.976 parts. It's an anime episode and the part in 60fps is the ED.

P.S. What I noticed some minutes ago, is that i get some 886 frames less than I should have got. I don't know if this is related with your explanation though...

Guest
19th November 2007, 20:12
But according to the timecodes I get if I mux into mkv, there are 60fps parts and 23.976 parts. It's an anime episode and the part in 60fps is the ED. This sounds like a big rule 6 violation. You better knock it off if you want to stay on this board.

SeeMoreDigital
19th November 2007, 20:50
This sounds like a big rule 6 violation. You better knock it off if you want to stay on this board.Given .MKV appears to be the container of choice for pirated high-def downloads, I reckon we're going to get a lot more questions from people wanting to know how to gain access to the elementary streams. Not to mention re-muxing the elementary streams to other containers!

LigH
19th November 2007, 21:36
Are there any ... well, kind of statistics, which kind of generator / encoder / producer prefers which kind of "interlaced vs. progressive" encoding? I have a suspicion that e.g. hardware encoders (like in AVCHD cameras) may prefer the more generic and faster solutions (e.g. switch to low-res progressive on low brightness), and that different HDTV broadcasters may use different encoders and settings.

Furthermore, I wonder why PAFF was harder to implement than MBAFF, although to me it sounds like PAFF defines the "interlaced" behaviour of all macroblocks in the whole frame, in contrast to MBAFF which defines it per macroblock -- or did I misunderstand them?

bob0r
19th November 2007, 21:43
Encoding anime to .mkv is highly illegal, they have banned it in The Netherlands.

J_Darnley
19th November 2007, 23:06
What? Can you point to any article which reports this? From what I know encoding any source to any other format is just as illegal anywhere in Europe. Why should anime be different from any other source? I'm glad I don't live a bit further north then.

Or have I just been trolled?

tjmitchem
19th November 2007, 23:52
I installed 1.0.0 Alpha 8 and tried to index a file. The stream came from DishNetwork and contains PAFF. I know it's not supported, but decided to try it just for the heck of it.

When I opened the file, dgavcindex hung for about 10 minutes, then came back and gave me the paff warning. I cheerfully told it to go ahead and blow up in my face :D

At this point, it's been unresponsive for about 2 hours. Interestingly enough, it has generated a 99k .dga file, so it definitely processed some of the stream.

If anyone wants to test this, the first 15MB of the stream are at:
http://mostlyharmless.dyndns.org/264/sample.264

The DGA file is at:
http://mostlyharmless.dyndns.org/264/test.dga

Terry

Guest
20th November 2007, 08:07
This version adds the Info dialog functionality.

http://neuron2.net/dgavcdec/dgavcdec100a9.zip

One tip: To see the frame types, set the playback speed to Single Step before starting your preview. Otherwise that field is just a blur.

The changes were extensive as I had to implement the parallel parsing I described in my earlier post. So pound on it with relish. :D

Guest
20th November 2007, 08:10
I installed 1.0.0 Alpha 8 and tried to index a file. The stream came from DishNetwork and contains PAFF. I know it's not supported, but decided to try it just for the heck of it. Looking at it in a hex editor, it doesn't look like a clean raw stream. And I can't play it in any of my players, nor is it accepted by my muxers. Maybe it's encrypted?

Guest
20th November 2007, 08:43
OK, have at it.

drmpeg
20th November 2007, 09:26
Looking at it in a hex editor, it doesn't look like a clean raw stream. And I can't play it in any of my players, nor is it accepted by my muxers. Maybe it's encrypted?
It's a Transport Stream. Didn't the 0x47 at the beginning tip you off?

Ron

LigH
20th November 2007, 09:39
Great, "Info dialog" was a missed little gem!

Due to the possible complexity of AVC, it may be useful to see a few more AVC specific details here, like the referencing amount. If you like...

SeeMoreDigital
20th November 2007, 10:27
If anyone wants to test this, the first 15MB of the stream are at:
http://mostlyharmless.dyndns.org/264/sample.264

The DGA file is at:
http://mostlyharmless.dyndns.org/264/test.dga

TerryIn order to get at the elementary .h264 stream I used MP4box. And MP4box again to mux the elementary stream into the .MP4 container.

Anyway, here's what AVInaptic (18-11-2007) had to say about it: -
[ About file ]

Name: sample.264_pid17.mp4
Date: 20/11/2007 09:18:57
Size: 5,591,649 bytes (5.333 MB)

[ Generic infos ]

Play duration: 00:00:16 (15.76 s)
Container type: MP4/MOV
Major brand: ISO Base Media version 1
Compatible brands: JVT AVC
Creation time: 19/11/2007 09:18:57 UTC
Modification time: 19/11/2007 09:18:57 UTC
Number of streams: 1
Type of stream nr. 1: video (avc1) {GPAC ISO Video Handler}
Audio streams: 0

[ Relevant data ]

Resolution: 1440 x 1080
Width: multiple of 32
Height: multiple of 8

[ Video track ]

Codec: avc1
Resolution: 1440 x 1080
Frame aspect ratio: 4:3 = 1.333333
Pixel aspect ratio: 4:3 = 1.333333
Display aspect ratio: 16:9 = 1.777777
Framerate: 25 fps
Number of frames: 394
Bitrate: 2834.996446 kbps

[ About H.264 encoding ]

SPS id: 0
Profile: Main@L4
Num ref frames: 4
Aspect ratio: Custom pixel shape (4:3 = 1.333333)
Chroma format idc: YUV 4:0:0
PPS id: 0 (SPS: 0)
Entropy coding type: CABAC
Weighted prediction: No
Weighted bipred idc: No
8x8dct: No
PPS id: 4 (SPS: 0)
Entropy coding type: CABAC
Weighted prediction: P slices - explicit weighted prediction
Weighted bipred idc: #undef#
8x8dct: Yes
Custom inter4X4 chromau:
8 8 244 244
254 246 243 241
254 243 242 241
242 242 241 241
Custom inter4x4 chromav:
9 9 11 12 12 11 12 12
12 13 12 9 12 12 9 9
50 54 52 95 41 0 0 0
0 0 0 0 100 101 45 117
110 100 101 114 108 105 110 101
45 102 105 101 108 100 45 118
97 108 117 101 0 101 0 51
40 0 0 0 65 0 0 0
Custom intra8X8 luma:
9 9 6 6 15 15 14 13
12 6 13 16 16 14 22 16
19 10 16 16 15 22 16 16
10 11 17 15 22 16 13 15
10 16 15 12 16 13 14 15
16 16 15 20 13 13 95 84
16 15 17 13 13 95 84 84
18 17 14 14 98 84 84 84
Custom inter8X8 luma:
9 12 17 17 206 207 206 206
12 18 210 211 207 206 206 237
18 211 211 208 206 206 236 237
211 211 208 206 211 236 237 3
211 209 208 211 236 216 211 3
209 208 211 236 216 212 3 3
209 211 227 216 217 3 3 3
224 224 216 217 3 3 3 3

[ Profile compliancy ]

Resolution: 1440 x 1080 > 720 x 576
Framerate: Ok
Warning: If you need a more complete report, then click on "DRF analysis"

This report was created by AVInaptic (18-11-2007) on 20 nov 2007, h 09:25:32

Cheers

Guest
20th November 2007, 14:41
It's a Transport Stream. Didn't the 0x47 at the beginning tip you off?
Yes, it did, but the one at location 0x50 made me think it was spurious. I should have looked at more sync bytes to find the 188-byte sync. But I was busy with the info dialog and only looked at it briefly.

After demuxing, it plays fine with CoreAVC but it crashes VLC, so libavcodec doesn't like it. Therefore, it doesn't work in DGAVCDec either. Most likely the PAFF encoding is the problem.

tjmitchem
20th November 2007, 14:57
Yes, it did, but the one at location 0x50 made me think it was spurious. I should have looked at more sync bytes to find the 188-byte sync. But I was busy with the info dialog and only looked at it briefly.

After demuxing, it plays fine with CoreAVC but it crashes VLC, so libavcodec doesn't like it. Therefore, it doesn't work in DGAVCDec either. Most likely the PAFF encoding is the problem.

This is weird. If that was a transport stream, then it means that the demuxer I used is not really demuxing the stream.

I just redid the file with a different demuxer. Can someone take a look at it now and tell me if it's actually a raw H.264 stream? I cut the file down to 5MB

Thanks,
Terry

Guest
20th November 2007, 15:15
I just redid the file with a different demuxer. Can someone take a look at it now and tell me if it's actually a raw H.264 stream? Yes, that is a raw stream.

tjmitchem
20th November 2007, 15:20
Yes, that is a raw stream.

Thanks.

D-Train
20th November 2007, 16:33
I installed 1.0.0 Alpha 8 and tried to index a file. The stream came from DishNetwork and contains PAFF. I know it's not supported, but decided to try it just for the heck of it.

I also have a bunch of Dish Network HD files I've been wanting to re-encode. You can download a small sample here (darren78.homeip.net/dish_hd.264) (hopefully downloading is not too slow).

I know these are PAFF, and I'm pretty sure they have no IDR frames. I think this combination causes issues for libavcodec. For the larger files (1 hour), seek times are really bad. Avisynth basically hangs for 20 minutes per seek. Anyways, if someone wants to experiment with this then have at it. The uploaded file indexes fine but only decodes the first frame.

Thanks neuron2, I'm mostly a lurker but have found a lot of use for DGMPGDec, and now DGAVCDec.

Guest
20th November 2007, 16:52
Thank you for the test stream. Fairly soon, I will be turning my attention to this libavcodec problem with some PAFF streams.

Guest
22nd November 2007, 00:28
* Lots of GUI bugs and crashing bugs fixed.

* New info window field: max bitrate seen.

* Major code cleanup and purging of DGIndex leftovers. Conversion to exclusive C++ compilation.

http://neuron2.net/dgavcdec/dgavcdec100a10.zip

Please delete your INI file before running this, or replace it with the one in the zip file.

Note that the previous message box popup for forcing the IVTC'ed frame rate is now replaced by Force Film in the Video menu. I have not yet implemented decimation of non-film sections, so for now this will not work on hybrid video.

With the disappearance of a lot of menu options, some explanation is in order. It is really very hard to integrate the container parsers with the stream buffering, NALU parsing, and parallel parsing and keep everything working right. For DGMPGDec, it is a nightmare that I still lose sleep over. I'm not sure I even fully understand how it works and if it is provably correct. I do know of several low-probability cases that can cause explosions. Yes, it's low probability but with enough uses, it's going to happen to someone. The code base is also very hard to modify and enhance.

So I am taking a new tack with DGAVCDec. I want to keep it simple and provably correct. So my plan is that cutting, demuxing, container verification and repair, etc., will be done by separate tools. DGAVCDec will be for serving video only. There are existing tools for these things but I plan to make my own and make them available via the Tools menu. This approach will allow me to keep my sanity as well as to continue moving forward despite my limited time for coding these days. I don't need another massive nightmare on my hands!

Probably, then, the [ and ] arrow keys will simply allow for cutting out portions of your AVC raw stream. Yes, you can use Trim() in your script, but it's more convenient this way and it's useful sometimes to generate a cut AVS raw stream as well.

canTsTop
22nd November 2007, 01:03
thank you neuron2 for your great tool.
in my video, i noticed in information windows, aspect ration is 12:11 but i think it should be 15:11
http://img210.imageshack.us/img210/8998/infora8.png

:confused:

Guest
22nd November 2007, 04:00
It prints what is in the stream. Why do you think it should be something else? Can you post a link to the stream?

LigH
22nd November 2007, 08:00
It is about pixel aspect ratio (stored pixels vs. straightened-for-display pixels)

12:11 ~ 785:720 (the width of 785 was calculated as 720*12:11)

canTsTop
22nd November 2007, 11:32
sorry for my mistake, i thought it was display aspect ratio.
576*15:11~785

this is my sample http://rapidshare.com/files/71446036/raw.h264.html

p.s. i would be grateful if some one advise how to deal with this video, demuxed audio is 3min 17s but video is 4min 11s :confused:

Guest
22nd November 2007, 12:07
p.s. i would be grateful if some one advise how to deal with this video, demuxed audio is 3min 17s but video is 4min 11s :confused: I can't help you with just the raw stream. You'll have to supply the un-demuxed source container sample.

canTsTop
22nd November 2007, 12:43
thank you for answer, this is un-demuxed TS sample http://rapidshare.com/files/71459314/ttt.ts.html

g0blez
22nd November 2007, 16:05
I have a question concerning the latest alpha 10.
I've demuxed an EVO file. evodemux claimed the source was 60fps. However, looking at the number of calculated frames and taking into consideration the total length of the stream, I calculated that the frame rate was 23.976fps.

When I opened the demuxed mpv (h.264) file in DGAVCDec, the frame rate listed was 29.970030 fps.
How should I treat this stream? Should I force film it?

bob0r
22nd November 2007, 21:54
thank you for answer, this is un-demuxed TS sample http://rapidshare.com/files/71459314/ttt.ts.html

Heh, interesting, the .ts file contain no errors, but when you demux/remux the h.264 file, it is indeed: 04:10, while the .ts plays as 03:17

I remuxed the video into .mkv and it plays uhm, variable FPS, i never seen this before.

drmpeg
22nd November 2007, 23:27
Heh, interesting, the .ts file contain no errors, but when you demux/remux the h.264 file, it is indeed: 04:10, while the .ts plays as 03:17

I remuxed the video into .mkv and it plays uhm, variable FPS, i never seen this before.
It's a PAFF bitstream that actually switches between field and frame pictures. Here's the output from the reference decoder that shows if a frame is a field pair.

----------------------------- JM 13.0 (FRExt) -----------------------------
Decoder config file : (null)
--------------------------------------------------------------------------
Input H.264 bitstream : bits0001.mpv
Output decoded YUV : test_dec.yuv
Output status file : log.dec
Input reference file : test_rec.yuv does not exist
SNR values are not available
--------------------------------------------------------------------------
POC must = frame# or field# for SNRs to be correct
--------------------------------------------------------------------------
Frame POC Pic# QP SnrY SnrU SnrV Y:U:V Time(ms)
--------------------------------------------------------------------------
Warning: Decoding does not start with an IDR picture.
00023( I ) 46 96 30 4:2:0 220
00020( b ) 40 97 30 4:2:0 150
00021( b | b ) 43 97 51 4:2:0 130
00022( b ) 44 97 48 4:2:0 111
00027( P ) 54 97 33 4:2:0 160
00024( b ) 48 98 29 4:2:0 100
00025( b ) 50 98 33 4:2:0 110
00026( b ) 52 98 32 4:2:0 110
00031( P ) 62 98 31 4:2:0 181
00028( b ) 56 99 28 4:2:0 150
00029( b ) 58 99 31 4:2:0 120
00030( b ) 60 99 31 4:2:0 140
00035( P ) 70 99 30 4:2:0 180
00032( b ) 64 100 27 4:2:0 121
00033( b ) 66 100 30 4:2:0 150
00034( b ) 68 100 30 4:2:0 130
00039( P ) 78 100 29 4:2:0 190
00036( b ) 72 101 26 4:2:0 130
00037( b ) 74 101 30 4:2:0 121
00038( b ) 76 101 30 4:2:0 120
00043( P ) 86 101 29 4:2:0 200
00040( b ) 80 102 26 4:2:0 130
00041( b ) 82 102 30 4:2:0 130
00042( b ) 84 102 30 4:2:0 141
00047( P ) 94 102 30 4:2:0 160
00044( b ) 88 103 27 4:2:0 130
00045( b ) 90 103 30 4:2:0 130
00046( b ) 92 103 30 4:2:0 120
00051( P ) 102 103 30 4:2:0 141
00048( b ) 96 104 27 4:2:0 170
00049( b ) 98 104 30 4:2:0 220
00050( b ) 100 104 30 4:2:0 120
00055( P ) 110 104 30 4:2:0 151
00052( b ) 104 105 27 4:2:0 120
00053( b ) 106 105 30 4:2:0 130
00054( b ) 108 105 30 4:2:0 120
00059( P ) 118 105 30 4:2:0 140
00056( b ) 112 106 27 4:2:0 241
00057( b ) 114 106 30 4:2:0 130
00058( b ) 116 106 30 4:2:0 110
00063( P ) 126 106 30 4:2:0 130
00060( b ) 120 107 27 4:2:0 130
00061( b ) 122 107 30 4:2:0 131
00062( b ) 124 107 30 4:2:0 120
00067( P ) 134 107 30 4:2:0 220
00064( b ) 128 108 27 4:2:0 130
00065( b ) 130 108 30 4:2:0 130
00066( b ) 132 108 30 4:2:0 131
00068( P ) 136 108 30 4:2:0 140
00069( P ) 138 109 27 4:2:0 140
00000(IDR| P ) 1 0 24 4:2:0 341
00001( I | P ) 3 1 31 4:2:0 250
00002( P | P ) 5 2 37 4:2:0 190
00003( P | P ) 7 3 41 4:2:0 170
00004( P | P ) 9 4 42 4:2:0 171
00005( P ) 10 5 39 4:2:0 210
00006( P ) 12 6 40 4:2:0 190
00007( P ) 14 7 40 4:2:0 181
00008( P ) 16 8 39 4:2:0 220
00009( P ) 18 9 37 4:2:0 200
00010( P | P ) 21 10 38 4:2:0 381
00014( P ) 28 11 32 4:2:0 260
00011( b ) 22 12 35 4:2:0 210
00012( b ) 24 12 33 4:2:0 221
00013( b ) 26 12 33 4:2:0 230
00018( P ) 36 12 32 4:2:0 280
00015( b ) 30 13 29 4:2:0 261
00016( b ) 32 13 32 4:2:0 240
00017( b ) 34 13 31 4:2:0 240
00019( P ) 38 13 31 4:2:0 281
00020( P ) 40 14 28 4:2:0 240
00024( P ) 48 15 28 4:2:0 271
00021( b ) 42 16 29 4:2:0 210
00022( b ) 44 16 31 4:2:0 220
00023( b ) 46 16 30 4:2:0 211
00028( P ) 56 16 29 4:2:0 280
00025( b ) 50 17 26 4:2:0 220
00026( b ) 52 17 29 4:2:0 221
00027( b ) 54 17 28 4:2:0 230
00029( P ) 58 17 28 4:2:0 280
00030( P ) 60 18 25 4:2:0 261
00031( P ) 62 19 27 4:2:0 240
00032( P | P ) 65 20 32 4:2:0 240
00033( P | P ) 67 21 32 4:2:0 261
00034( P | P ) 69 22 33 4:2:0 400
00035( P | P ) 71 23 33 4:2:0 251
00036( P | P ) 73 24 32 4:2:0 240
00037( P ) 74 25 29 4:2:0 230
00038( P | P ) 77 26 33 4:2:0 591
00039( P | P ) 79 27 32 4:2:0 241
00040( P | P ) 81 28 32 4:2:0 260
00041( P | P ) 83 29 34 4:2:0 260
00042( P | P ) 85 30 34 4:2:0 241
00046( P | P ) 93 31 35 4:2:0 240
00043( b | b ) 87 32 36 4:2:0 230
00044( b | b ) 89 32 37 4:2:0 231
00045( b | b ) 91 32 35 4:2:0 230
00047( P | P ) 95 32 30 4:2:0 250
00051( P | P ) 103 33 31 4:2:0 271
00048( b | b ) 97 34 36 4:2:0 230
00049( b | b ) 99 34 34 4:2:0 250
00050( b | b ) 101 34 35 4:2:0 221
00000(IDR| P ) 1 0 30 4:2:0 320
00001( P | P ) 3 1 32 4:2:0 231
00002( P | P ) 5 2 32 4:2:0 220
00003( P | P ) 7 3 32 4:2:0 230
00007( P | P ) 15 4 33 4:2:0 241
00004( b | b ) 9 5 37 4:2:0 300
00005( b | b ) 11 5 35 4:2:0 270
00006( b | b ) 13 5 34 4:2:0 251
00008( P | P ) 17 5 31 4:2:0 280
00012( P | P ) 25 6 25 4:2:0 260
00009( b | b ) 19 7 29 4:2:0 281
00010( b | b ) 21 7 28 4:2:0 230

The reference decoder produces 4940 frames from this bitstream. 4940 / 25 = 197.6 seconds, or 3 minutes 17.6 seconds.

Ron

G_M_C
23rd November 2007, 11:24
I'll tabe a stab at guessing why this is;

My guess it that it is a TS from a digital TV-station that has used this method to "speed-up" and/or "speed-down" parts of the movie, so that it'll fit nicely bewtween commercial breaks.

I've seen movies encoded in MPEG2 with variable pull-up/pull-down rhythms, for the same reasons (Finding Nemo, ABC, Xmas last year springs to mind)

LigH
23rd November 2007, 11:51
Thread Topic Reminder:

DGMPGDec 1.0.0a10 was already released.

Guest
23rd November 2007, 17:48
I have a question concerning the latest alpha 10.
I've demuxed an EVO file. evodemux claimed the source was 60fps. However, looking at the number of calculated frames and taking into consideration the total length of the stream, I calculated that the frame rate was 23.976fps.

When I opened the demuxed mpv (h.264) file in DGAVCDec, the frame rate listed was 29.970030 fps.
How should I treat this stream? Should I force film it? Do you see frame repeats in the Info dialog when you preview it? If so, then Force Film may be correct. If not, can I please see a sample of the stream?

g0blez
24th November 2007, 00:14
Do you see frame repeats in the Info dialog when you preview it? If so, then Force Film may be correct. If not, can I please see a sample of the stream?

No Frame Rpts.
I get Field Rpts however; do you still need a sample?

g0blez
24th November 2007, 01:12
What I've done...

DGAVCDEC:
- Opened .mpv file (h.264 stream)
- Selected force film
- Saved project as dga; during the long process (source is accessed by wifi network), I got one pop-up mentioning something about "NALUs'. Sorry, I didn't carefully read but chose to ignore it.

Notepad:

- Created AVS script:
loadplugin("C:\Program Files\dgavcdec100a10\DGAVCDecode.dll")
AVCSource("video.dga")
Lanczos4Resize(1280,720)

meGUI (x264 build 699):

- Selected SA-HD-DVD profile, RAWAVC container
- Started 1st Pass; at the end of the pass, I got the following logs:
[h264 @ 6FD461F0]reference picture missing during reorder
[h264 @ 6FD461F0]error while decoding MB 18 59, bytestream (td)
[h264 @ 6FD461F0]left block unavailable for requested intra4x4 mode -1 at 0 46
[h264 @ 6FD461F0]error while decoding MB 0 46, bytestream (td)
[h264 @ 6FD461F0]left block unavailable for requested intra4x4 mode -1 at 0 38
[h264 @ 6FD461F0]error while decoding MB 0 38, bytestream (td)
[h264 @ 6FD461F0]reference picture missing during reorder
[h264 @ 6FD461F0]left block unavailable for requested intra mode at 0 10
[h264 @ 6FD461F0]error while decoding MB 0 10, bytestream (td)
[h264 @ 6FD461F0]reference picture missing during reorder


I realize I have an issue but I'm not sure if this is caused by DGAVCDEC or something else.
neuron2, can you comment?

Guest
24th November 2007, 01:57
As I said, I need the source stream.

Turtleggjp
24th November 2007, 07:43
I have a question concerning the latest alpha 10.
I've demuxed an EVO file. evodemux claimed the source was 60fps. However, looking at the number of calculated frames and taking into consideration the total length of the stream, I calculated that the frame rate was 23.976fps.

When I opened the demuxed mpv (h.264) file in DGAVCDec, the frame rate listed was 29.970030 fps.
How should I treat this stream? Should I force film it?

I ran into this same thing when I transcoded my HD-DVD of Transformers. I was concerned, but I just added AssumeFPS(23.976) to my AVI Synth script, and everything came out fine. I used Alpha 6 (that was the latest when I did this) so there was no Force Film option available then.

canTsTop
24th November 2007, 10:40
It's a PAFF bitstream that actually switches between field and frame pictures. Here's the output from the reference decoder that shows if a frame is a field pair.

----------------------------- JM 13.0 (FRExt) -----------------------------
Decoder config file : (null)
--------------------------------------------------------------------------
Input H.264 bitstream : bits0001.mpv
Output decoded YUV : test_dec.yuv
Output status file : log.dec
Input reference file : test_rec.yuv does not exist
SNR values are not available
--------------------------------------------------------------------------
POC must = frame# or field# for SNRs to be correct
--------------------------------------------------------------------------
Frame POC Pic# QP SnrY SnrU SnrV Y:U:V Time(ms)
--------------------------------------------------------------------------
Warning: Decoding does not start with an IDR picture.
00023( I ) 46 96 30 4:2:0 220
00020( b ) 40 97 30 4:2:0 150
00021( b | b ) 43 97 51 4:2:0 130
00022( b ) 44 97 48 4:2:0 111
00027( P ) 54 97 33 4:2:0 160
00024( b ) 48 98 29 4:2:0 100
00025( b ) 50 98 33 4:2:0 110
00026( b ) 52 98 32 4:2:0 110
00031( P ) 62 98 31 4:2:0 181
00028( b ) 56 99 28 4:2:0 150
00029( b ) 58 99 31 4:2:0 120
00030( b ) 60 99 31 4:2:0 140
00035( P ) 70 99 30 4:2:0 180
00032( b ) 64 100 27 4:2:0 121
00033( b ) 66 100 30 4:2:0 150
00034( b ) 68 100 30 4:2:0 130
00039( P ) 78 100 29 4:2:0 190
00036( b ) 72 101 26 4:2:0 130
00037( b ) 74 101 30 4:2:0 121
00038( b ) 76 101 30 4:2:0 120
00043( P ) 86 101 29 4:2:0 200
00040( b ) 80 102 26 4:2:0 130
00041( b ) 82 102 30 4:2:0 130
00042( b ) 84 102 30 4:2:0 141
00047( P ) 94 102 30 4:2:0 160
00044( b ) 88 103 27 4:2:0 130
00045( b ) 90 103 30 4:2:0 130
00046( b ) 92 103 30 4:2:0 120
00051( P ) 102 103 30 4:2:0 141
00048( b ) 96 104 27 4:2:0 170
00049( b ) 98 104 30 4:2:0 220
00050( b ) 100 104 30 4:2:0 120
00055( P ) 110 104 30 4:2:0 151
00052( b ) 104 105 27 4:2:0 120
00053( b ) 106 105 30 4:2:0 130
00054( b ) 108 105 30 4:2:0 120
00059( P ) 118 105 30 4:2:0 140
00056( b ) 112 106 27 4:2:0 241
00057( b ) 114 106 30 4:2:0 130
00058( b ) 116 106 30 4:2:0 110
00063( P ) 126 106 30 4:2:0 130
00060( b ) 120 107 27 4:2:0 130
00061( b ) 122 107 30 4:2:0 131
00062( b ) 124 107 30 4:2:0 120
00067( P ) 134 107 30 4:2:0 220
00064( b ) 128 108 27 4:2:0 130
00065( b ) 130 108 30 4:2:0 130
00066( b ) 132 108 30 4:2:0 131
00068( P ) 136 108 30 4:2:0 140
00069( P ) 138 109 27 4:2:0 140
00000(IDR| P ) 1 0 24 4:2:0 341
00001( I | P ) 3 1 31 4:2:0 250
00002( P | P ) 5 2 37 4:2:0 190
00003( P | P ) 7 3 41 4:2:0 170
00004( P | P ) 9 4 42 4:2:0 171
00005( P ) 10 5 39 4:2:0 210
00006( P ) 12 6 40 4:2:0 190
00007( P ) 14 7 40 4:2:0 181
00008( P ) 16 8 39 4:2:0 220
00009( P ) 18 9 37 4:2:0 200
00010( P | P ) 21 10 38 4:2:0 381
00014( P ) 28 11 32 4:2:0 260
00011( b ) 22 12 35 4:2:0 210
00012( b ) 24 12 33 4:2:0 221
00013( b ) 26 12 33 4:2:0 230
00018( P ) 36 12 32 4:2:0 280
00015( b ) 30 13 29 4:2:0 261
00016( b ) 32 13 32 4:2:0 240
00017( b ) 34 13 31 4:2:0 240
00019( P ) 38 13 31 4:2:0 281
00020( P ) 40 14 28 4:2:0 240
00024( P ) 48 15 28 4:2:0 271
00021( b ) 42 16 29 4:2:0 210
00022( b ) 44 16 31 4:2:0 220
00023( b ) 46 16 30 4:2:0 211
00028( P ) 56 16 29 4:2:0 280
00025( b ) 50 17 26 4:2:0 220
00026( b ) 52 17 29 4:2:0 221
00027( b ) 54 17 28 4:2:0 230
00029( P ) 58 17 28 4:2:0 280
00030( P ) 60 18 25 4:2:0 261
00031( P ) 62 19 27 4:2:0 240
00032( P | P ) 65 20 32 4:2:0 240
00033( P | P ) 67 21 32 4:2:0 261
00034( P | P ) 69 22 33 4:2:0 400
00035( P | P ) 71 23 33 4:2:0 251
00036( P | P ) 73 24 32 4:2:0 240
00037( P ) 74 25 29 4:2:0 230
00038( P | P ) 77 26 33 4:2:0 591
00039( P | P ) 79 27 32 4:2:0 241
00040( P | P ) 81 28 32 4:2:0 260
00041( P | P ) 83 29 34 4:2:0 260
00042( P | P ) 85 30 34 4:2:0 241
00046( P | P ) 93 31 35 4:2:0 240
00043( b | b ) 87 32 36 4:2:0 230
00044( b | b ) 89 32 37 4:2:0 231
00045( b | b ) 91 32 35 4:2:0 230
00047( P | P ) 95 32 30 4:2:0 250
00051( P | P ) 103 33 31 4:2:0 271
00048( b | b ) 97 34 36 4:2:0 230
00049( b | b ) 99 34 34 4:2:0 250
00050( b | b ) 101 34 35 4:2:0 221
00000(IDR| P ) 1 0 30 4:2:0 320
00001( P | P ) 3 1 32 4:2:0 231
00002( P | P ) 5 2 32 4:2:0 220
00003( P | P ) 7 3 32 4:2:0 230
00007( P | P ) 15 4 33 4:2:0 241
00004( b | b ) 9 5 37 4:2:0 300
00005( b | b ) 11 5 35 4:2:0 270
00006( b | b ) 13 5 34 4:2:0 251
00008( P | P ) 17 5 31 4:2:0 280
00012( P | P ) 25 6 25 4:2:0 260
00009( b | b ) 19 7 29 4:2:0 281
00010( b | b ) 21 7 28 4:2:0 230

The reference decoder produces 4940 frames from this bitstream. 4940 / 25 = 197.6 seconds, or 3 minutes 17.6 seconds.

Ron

sorry for not understanding. so what does it means? libavcodec is not supporting this video or it something to do with DGAVCIndex? or maybe i need to do some workaround with Avisynth script? :confused:

SeeMoreDigital
24th November 2007, 11:02
sorry for not understanding. so what does it means? libavcodec is not supporting this video or it something to do with DGAVCIndex? or maybe i need to do some workaround with Avisynth script? :confused:Your sample is certainly a bit odd...

For instance. I'm able to play the .TS sample in MediaPlayer Classic (using FFdshow's AVC decoder filter) without any issues - apart from being able to see the interlaced fields.

However, if I de-mux the AVC video stream and re-mux it into the .MP4 container, the file wont play at all.


Cheers

foxyshadis
24th November 2007, 11:29
Isn't that because mp4box doesn't support field/frame repeats, or does it now?

drmpeg
24th November 2007, 12:08
sorry for not understanding. so what does it means? libavcodec is not supporting this video or it something to do with DGAVCIndex? or maybe i need to do some workaround with Avisynth script? :confused:
Sorry to be vague. I'm not sure exactly where the problem is, but whatever tool you use with this stream must be aware that some coded pictures are fields and some coded pictures are frames.

The number of coded pictures in the bitstream is 6278. If a tool thinks those are all frames, it will arrive at the incorrect length of approximately 04:10 that you have been reporting.

6278 / 25 = 251.12 = 4 minutes 11.12 seconds.

Ron

Guest
24th November 2007, 14:13
DGAVCDec needs to divide the field picture count by two. I thought I did that but there must be a bug. You'll have to wait until I get around to it. As the documentation says, PAFF is not yet supported.

canTsTop
24th November 2007, 15:05
thank you neuron2 and others for help, will be waiting for full PAFF suport

Guest
24th November 2007, 20:31
thank you neuron2 and others for help, will be waiting for full PAFF suport
You're welcome.

I have made the fix for your stream (and others like it) and it now comes out right at 3:17 and 4940 frames for the video. I'll put out a new beta later today for you. There are a few other things I am tinkering with. :)

EDIT: See below.

Guest
25th November 2007, 02:43
* Properly counts each pair of field coded pictures as one frame. Should improve PAFF support.

http://neuron2.net/dgavcdec/dgavcdec100a11.zip

PhillipWyllie
25th November 2007, 05:22
Thank neuron2 for this excellent tool. I have a problem though, when I open up the an avs file(using avcsource) in VDub, VDubMod or CCE and try to look at the info (file ->file information in VDubMod for example) it crashes. In CCE when I hit the "chapters" button(a preview window usually pops up) CCE crashes.

When I try using alpha6 this doesn't happen, I also tried using libavcodec.dll from earlier releases of DGAVCDec to no avail.

I'm using alpha11.

Guest
25th November 2007, 05:41
Does it happen for all source files?

PhillipWyllie
25th November 2007, 05:50
Sorry, I don't know what you mean by all source files.

check
25th November 2007, 05:53
source file = the input .264 file.

g0blez
26th November 2007, 05:30
I ran into this same thing when I transcoded my HD-DVD of Transformers. I was concerned, but I just added AssumeFPS(23.976) to my AVI Synth script, and everything came out fine. I used Alpha 6 (that was the latest when I did this) so there was no Force Film option available then.

How did you manage that? Each time I open my demuxed stream (transformers) with alpha 6, it crashes.

Guest
26th November 2007, 14:03
How did you manage that? Each time I open my demuxed stream (transformers) with alpha 6, it crashes. Why do you want to use alpha 6. Use the latest alpha and select Force Film.

g0blez
26th November 2007, 14:52
Why do you want to use alpha 6. Use the latest alpha and select Force Film.

Because I get NALU errors with the latest alpha with or without force film.
I would send a sample if i knew which tool to use to cut an h.264 mpv from coded frame 166132 or from 6,929s.
But apparently Turtleggjp was able to transcode successfully with alpha 6.

Guest
26th November 2007, 15:48
Use DGSplit from my website to make five 5GB pieces. Then find which one gives the NALU error. Throw away the others. Then split the remaining one and find which one gives the NALU error. Continue until you have a 50MByte file containing the NALU error. Then upload it for me.

I could process my Transformers HD-DVD and see if I run into the same issue, *IF* I had the key. Do you have it? If not, how did you get the raw stream?

@turtleggjp

Have you tried your Transformers decode with the latest alpha?

desta
26th November 2007, 16:45
How did you manage that? Each time I open my demuxed stream (transformers) with alpha 6, it crashes.
Did you update your libavcodec?

g0blez
26th November 2007, 17:05
Did you update your libavcodec?

Using alpha 11's bundled lbavcodec with alpha 6 seems to get rid fo the crashes. I'll see if I get any error messages with alpha 6 (assuming they were implemented at that time).

desta
26th November 2007, 17:18
Out of curiosity, when you open the transformers raw stream in DGAVCIndex, do you get any corrupted frames in the end credits? Scroll to about 2 hrs, 22 mins, 52 secs, and then let it play.

g0blez
26th November 2007, 18:17
Out of curiosity, when you open the transformers raw stream in DGAVCIndex, do you get any corrupted frames in the end credits? Scroll to about 2 hrs, 22 mins, 52 secs, and then let it play.

With alpha 6 or alpha 11?
I can check tonight.

Guest
26th November 2007, 18:32
I have downloaded AnyDVD and I can now get the H.264 stream from my copy of Transformers. So I will try to duplicate your error.

canTsTop
26th November 2007, 18:46
thank you neuron2 for DGAVCDec 1.0.0 Alpha 11

its working good, except it sometimes crashes. i don't know if it DGAVCDec problem, probably its libavcodec.dll or my PC.
DGAVCDec index file without problem, crashes always happens then i try to analyze video (sample i uploaded previously http://rapidshare.com/files/71446036/raw.h264.html) for interlace detection with megui, or this tool http://forum.doom9.org/showthread.php?t=104760 this is my avs:
loadplugin("C:\dgavcdec100a11\DGAVCDecode.dll")
AVCSource("raw.dga")

also it crashed then i encoding with virtualdub (not the same sample) after ~76% was completed, this is avs:
loadplugin("C:\dgavcdec100a11\DGAVCDecode.dll")
AVCSource("bits0001.dga")
Trim(1153, 72423)
Trim(0, 3005) ++ Trim(15038, 71270)
Trim(0, 35708) ++ Trim(48150, 59238)
Trim(0, 46402)
Load_Stdcall_Plugin("C:\Program Files\megui\tools\yadif\yadif.dll")
Yadif(order=1)
Crop(16, 4, -14, -4)
LanczosResize(512,384)
Undot()

this is error report from virtualdub (if it useful):
VirtualDub crash report -- build 28769 (release)
--------------------------------------

Disassembly:
004c01a0: c20800 ret 0008
004c01a3: cc int 3
004c01a4: cc int 3
004c01a5: cc int 3
004c01a6: cc int 3
004c01a7: cc int 3
004c01a8: cc int 3
004c01a9: cc int 3
004c01aa: cc int 3
004c01ab: cc int 3
004c01ac: cc int 3
004c01ad: cc int 3
004c01ae: cc int 3
004c01af: cc int 3
004c01b0: 53 push ebx
004c01b1: 55 push ebp
004c01b2: 56 push esi
004c01b3: 8bf1 mov esi, ecx
004c01b5: 8b8624050000 mov eax, [esi+524]
004c01bb: 83e0fe and eax, 0feh
004c01be: 83f802 cmp eax, 02h
004c01c1: 57 push edi
004c01c2: 7524 jnz 004c01e8 (VideoSourceAVI::_isKey+38)
004c01c4: 8b5e10 mov ebx, [esi+10h]
004c01c7: 8b4c2414 mov ecx, [esp+14h]
004c01cb: 8b6e14 mov ebp, [esi+14h]
004c01ce: 8b542418 mov edx, [esp+18h]
004c01d2: 6a00 push 00h
004c01d4: 2bcb sub ecx, ebx
004c01d6: 50 push eax
004c01d7: 1bd5 sbb edx, ebp
004c01d9: 52 push edx
004c01da: 51 push ecx
004c01db: e880ee0a00 call 0056f060 (_alldiv)
004c01e0: 8bfa mov edi, edx
004c01e2: 03c3 add eax, ebx
004c01e4: 13fd adc edi, ebp
004c01e6: eb08 jmp 004c01f0 (VideoSourceAVI::_isKey+40)
004c01e8: 8b7c2418 mov edi, [esp+18h]
004c01ec: 8b442414 mov eax, [esp+14h]
004c01f0: 8bae1c050000 mov ebp, [esi+51c]
004c01f6: 85ed test ebp, ebp
004c01f8: 7432 jz 004c022c (VideoSourceAVI::_isKey+7c)
004c01fa: 8b4e10 mov ecx, [esi+10h]
004c01fd: 8b5614 mov edx, [esi+14h]
004c0200: 2bc1 sub eax, ecx
004c0202: 1bfa sbb edi, edx
004c0204: 8bc8 mov ecx, eax
004c0206: 83e11f and ecx, 1fh
004c0209: bb01000000 mov ebx, 00000001
004c020e: d3e3 shl ebx, cl
004c0210: 8bd7 mov edx, edi
004c0212: b105 mov cl, 05h
004c0214: e8a7ea0a00 call 0056ecc0 (_allshr)
004c0219: 235c8500 and ebx, [ebp+eax*4+00h]
004c021d: 5f pop edi
004c021e: f7db neg ebx
004c0220: 1bdb sbb ebx, ebx
004c0222: 5e pop esi
004c0223: f7db neg ebx
004c0225: 5d pop ebp
004c0226: 8ac3 mov al, bl
004c0228: 5b pop ebx
004c0229: c20800 ret 0008
004c022c: 8b8ed0040000 mov ecx, [esi+4d0]
004c0232: 8b11 mov edx, [ecx]
004c0234: 57 push edi
004c0235: 50 push eax
004c0236: 8b4210 mov eax, [edx+10h] <-- FAULT
004c0239: ffd0 call eax
004c023b: 5f pop edi
004c023c: 5e pop esi
004c023d: 5d pop ebp
004c023e: 5b pop ebx
004c023f: c20800 ret 0008
004c0242: cc int 3
004c0243: cc int 3
004c0244: cc int 3
004c0245: cc int 3
004c0246: cc int 3
004c0247: cc int 3
004c0248: cc int 3
004c0249: cc int 3
004c024a: cc int 3
004c024b: cc int 3
004c024c: cc int 3
004c024d: cc int 3
004c024e: cc int 3
004c024f: cc int 3
004c0250: 53 push ebx
004c0251: 56 push esi
004c0252: 8bf1 mov esi, ecx
004c0254: 83bebc04000000 cmp dword ptr [esi+4bc], 00h
004c025b: 57 push edi
004c025c: 7457 jz 004c02b5 (VideoSourceAVI::nearestKey+65)
004c025e: 8b5c2414 mov ebx, [esp+14h]
004c0262: 3b5eb4 cmp ebx, [esi-4ch]
004c0265: 7c43 jl 004c02aa (VideoSourceAVI::nearestKey+5a)
004c0267: 8b7c2410 mov edi, [esp+10h]
004c026b: 7f05 jg 004c0272 (VideoSourceAVI::nearestKey+22)
004c026d: 3b7eb0 cmp edi, [esi-50h]
004c0270: 7238 jc 004c02aa (VideoSourceAVI::nearestKey+5a)
004c0272: 3b5ebc cmp ebx, [esi-44h]
004c0275: 7f33 jg 004c02aa (VideoSourceAVI::nearestKey+5a)
004c0277: 7c05 jl 004c027e (VideoSourceAVI::nearestKey+2e)
004c0279: 3b7eb8 cmp edi, [esi-48h]
004c027c: 732c jnc 004c02aa (VideoSourceAVI::nearestKey+5a)
004c027e: 8b46a0 mov eax, [esi-60h]
004c0281: 8b5060 mov edx, [eax+60h]
004c0284: 8d4ea0 lea ecx, [esi-60h]
004c0287: 53 push ebx
004c0288: 57 push edi
004c0289: ffd2 call edx
004c028b: 84c0 test al, al
004c028d: 740a jz 004c0299 (VideoSourceAVI::nearestKey+49)
004c028f: 8bc7 mov eax, edi
004c0291: 5f pop edi
004c0292: 5e pop esi
004c0293: 8bd3 mov edx, ebx
004c0295: 5b pop ebx
004c0296: c20800 ret 0008
004c0299: 8b06 mov eax, [esi]
004c029b: 8b5060 mov edx, [eax+60h]
004c029e: 53 push ebx
004c029f: 57 push edi

Built on KOS-MOS on Mon Nov 19 23:14:32 2007 using compiler version 1400

EAX = 00008b94
EBX = 00c476e0
ECX = 00bd8618
EDX = 00000000
EBP = 00000000
ESI = 00c47008
EDI = 00000000
ESP = 0623fc3c
EIP = 004c0236
EFLAGS = 00010246
FPUCW = ffff027f
FPUTW = ffffffff

Crash reason: Access Violation

Crash context:
An out-of-bounds memory access (access violation) occurred in module 'VirtualDub'...

...reading address 00000010...

...while running thread "Processing" (thread.cpp:152).

Pointer dumps:

EBX 00c476e0: 005a5084 005a5088 000003c0 00000a0c 005a5080 0012f464 00c479a8 3f800000
ECX 00bd8618: 00000000 0033b574 00bd8290 037b8eb0 00bddf80 00bd8580 00040004 010801cc
ESI 00c47008: 005b3920 00000002 00bd8658 00000028 00000000 00000000 0000b543 00000000
ESP 0623fc38: 00245688 00008b94 00000000 00008b94 005b3920 0623fcc4 00c476e0 004bfbce
0623fc58: 00008b94 00000000 00c47068 004c185c 00008b94 00000000 00c478a8 00c478b4
0623fc78: 00c476e0 05d10020 00000000 00000000 00000000 00c2afd8 00bdd780 00000008
0623fc98: 0623fcbc 004f7c75 05e87c94 0623fcec 00000008 00c2a940 00cc3f98 0623fc70

Thread call stack:
004c0236: VideoSourceAVI::_isKey()
004bfbce: VideoSource::isKey()
004c185c: VideoSourceAVI::streamGetFrame()
004f7c75: VDFileAsyncNT::FastWrite()
004a0362: AVIOutputFileStream::partialWrite()
004665bf: VDDubProcessThread::WriteVideoFrame()
7c917e3f: ntdll!RtlCompareUnicodeString [7c900000+17988+4b7]
7c917de9: ntdll!RtlCompareUnicodeString [7c900000+17988+461]
004a2eae: AVIOutputFile::init()
00577010: _ceil_default()
00469164: VDStreamInterleaver::PushStreams()
00467111: VDDubProcessThread::ThreadRun()
7c812adb: kernel32!RaiseException [7c800000+12a89+52]
7c80def3: kernel32!DuplicateHandle [7c800000+de7e+75]
004f0154: VDSetThreadDebugName()
7c80def3: kernel32!DuplicateHandle [7c800000+de7e+75]
0045cc20: VDThreadInitHandler()
004f02db: VDThread::StaticThreadStart()
00573da8: _callthreadstartex()
00573e4d: _threadstartex@4()
7c80b703: kernel32!GetModuleFileNameA [7c800000+b54f+1b4]

-- End of report

Guest
26th November 2007, 18:55
I can't help you with crashes in MeGUI or any other app with your first stream. Talk to the authors.

Regarding your second stream (and any streams), strip your script down to just avcsource(). Does it still fail when played in VirtualDub? If so, I will look at it if you give me the stream. If not, look to the other filters for the problem.

canTsTop
26th November 2007, 21:18
also it crashed then i encoding with virtualdub (not the same sample) after ~76% was completed, this is avs:
loadplugin("C:\dgavcdec100a11\DGAVCDecode.dll")
AVCSource("bits0001.dga")
Trim(1153, 72423)
Trim(0, 3005) ++ Trim(15038, 71270)
Trim(0, 35708) ++ Trim(48150, 59238)
Trim(0, 46402)
Load_Stdcall_Plugin("C:\Program Files\megui\tools\yadif\yadif.dll")
Yadif(order=1)
Crop(16, 4, -14, -4)
LanczosResize(512,384)
Undot()

strange, i encoded this video one more time with same settings and it crashed again at ~76%, then i encoded third time but changed xvid settings to 1pass and it finished without errors.

i searched this forum and found this http://forum.doom9.org/showthread.php?p=1067116#post1067116 about virtualdub disappearing then moving forth and back, some times i get this to

and then playing my TS video in mplayer i get this error:
Interlaced pictures + spatial direct mode is not implemented
its probably something to do with crashes, but then its libavcodec fault

Guest
26th November 2007, 21:31
If you want my help, you're going to have to read what I say and answer my specific questions. If you don't I will start ignoring you.

Guest
26th November 2007, 22:03
Out of curiosity, when you open the transformers raw stream in DGAVCIndex, do you get any corrupted frames in the end credits? Scroll to about 2 hrs, 22 mins, 52 secs, and then let it play. Yes, I saw it. I'll investigate.

g0blez
26th November 2007, 22:14
I have downloaded AnyDVD and I can now get the H.264 stream from my copy of Transformers. So I will try to duplicate your error.

Thanks neuron2. An error should pop-up at coded frame 166132 when saving the dga.

Turtleggjp
26th November 2007, 22:46
I could process my Transformers HD-DVD and see if I run into the same issue, *IF* I had the key. Do you have it? If not, how did you get the raw stream?

@turtleggjp

Have you tried your Transformers decode with the latest alpha?

I used AnyDVD HD (as I see you did), so no I don't have the key. I believe the last alpha I tried indexing Transformers with was 10, but that was only to see if the credits glitches had been fixed yet. I guess if you are seeing them with alpha 11, then they are still a problem. I played the raw stream in PowerDVD Ultra, and never saw any glitching, so I guess it's not an error in the stream.

I remember getting NALU errors too (with alpha 10) a little over halfway through the indexing. After seeming to repeat the same error several times, I told it not to give me any more messages, and it continued without further incident. I have not testing this index run though in this area.

Yes, I saw it. I'll investigate.

Thank you. I was going to bring up the glitches in the credits too, but it's nice to see someone already beat me to it.

Matt

canTsTop
26th November 2007, 23:52
If you want my help, you're going to have to read what I say and answer my specific questions. If you don't I will start ignoring you.

sorry,

with just AVCSource() in virtualdub file plays fine

but with just AVCSource() in virtualdub if i randomly move slider forward and back it some times crashes, i tried it on sample i uploaded earlier, but it crashes more frequently on files with long duration

Guest
27th November 2007, 00:49
@canTsTop

Thank you, I will look into it.

desta
27th November 2007, 01:39
Out of curiosity, when you open the transformers raw stream in DGAVCIndex, do you get any corrupted frames in the end credits? Scroll to about 2 hrs, 22 mins, 52 secs, and then let it play.
Yes, I saw it. I'll investigate.
Tbh, I think the problem may reside with libavcodec, and not a fault with DGAVCDec.

If I use directshowsource() with ffdshow (various builds) as the decoder then I get the same corrupted frames, but with coreavc it's fine.

Guest
27th November 2007, 05:22
* Fixed g0blez's problem with NALU parsing. Transformers now indexes all the way without errors.

* Fixed a problem with random access that caused bad frames to be displayed sometimes. @canTsTop, please advise if this affects your scrolling crashes.

* Preliminary implementation of Honor Pulldown Flags. Note that this affects only the output of DGDecode.dll; the DGAVCIndex display always shows the non-pulled down stream. You can set Honor Pulldown Flags for Transformers and you will see the standard 3-progressive/2-interlaced pattern when viewing the output of your script.

http://neuron2.net/dgavcdec/dgavcdec100a12.zip

Turtleggjp
27th November 2007, 07:31
* Fixed a problem with random access that caused bad frames to be displayed sometimes. @canTsTop, please advise if this affects your scrolling crashes.

Cool, I had noticed this too when jumping around in Transformers looking for those glitched areas in the credits. I was worried that these random access glitches would show up in my transcode, but none ever did (except for the known glitches during the credits, which I agree are probably the fault of libavcodec.dll, not DGAVCDec). I figured they might become a problem though when doing Trim commands in an AVISynth script, such as editing some AVCHD camera footage. Glad to see this has been fixed now.:thanks:

canTsTop
27th November 2007, 10:53
sorry to report, but it still crashes on my PC. i captured video how it crashes http://rapidshare.com/files/72593752/crash_video.avi.html
it would be good if anyone else try this sample http://rapidshare.com/files/71446036/raw.h264.html and see if it crashes on others PC (moving forward in small steps in virtualdub, like i did in crash_video.avi).
maybe its just my old PC (athlon xp 1700+ with 320mb sdram pc100)

g0blez
27th November 2007, 13:10
* Fixed g0blez's problem with NALU parsing. Transformers now indexes all the way without errors.

* Fixed a problem with random access that caused bad frames to be displayed sometimes. @canTsTop, please advise if this affects your scrolling crashes.

* Preliminary implementation of Honor Pulldown Flags. Note that this affects only the output of DGDecode.dll; the DGAVCIndex display always shows the non-pulled down stream. You can set Honor Pulldown Flags for Transformers and you will see the standard 3-progressive/2-interlaced pattern when viewing the output of your script.

http://neuron2.net/dgavcdec/dgavcdec100a12.zip

Thanks neuron2!
I'll give it a go!

Guest
27th November 2007, 14:48
@canTsTop

I duplicated your crash. These CAVIStreamSynth crashes are notoriously difficult to debug. Investigating...

squid_80
27th November 2007, 15:13
I duplicated your crash. These CAVIStreamSynth crashes are notoriously difficult to debug. Investigating...
Because avisynth is programmed to catch ANY exception thrown, including good ol' access violation (0xc0000005), the debugger thinks everything is okay and doesn't break program execution. If it helps at all: In VS2005 go to the debug menu->exceptions. Expand Win32 Exceptions and put a tick next to c0000005 Access Violation. This should break to the debugger when the error/exception occurs; just beware these exceptions may get thrown when it's NOT an error (on startup there's normally a few).

Guest
27th November 2007, 15:54
@squid_80

Thanks for that tip! I've caught the error and am hot on the trail now.

Guest
28th November 2007, 03:21
It turned out to be a serious bug in libavcodec. When it deblocks, it tries to deblock the top and left edges of the picture, even though there are no macroblocks above the top edge or to the left of the top edge! It's a wonder it doesn't crash more often. I fixed it in my brute force way but will check it with the author of libavcodec's H.264 decoder (Michael Niedermayer) to be sure I haven't missed anything. You can find the patched libavcodec.dll in the alpha 12 zip, which I have updated:

http://neuron2.net/dgavcdec/dgavcdec100a12.zip

Please let me know how this works for you.

canTsTop
28th November 2007, 10:31
sorry but i cant check if its ok now, with this new libavcodec.dll DGAVCIndex crashes then i try to open video (like was with alpha 6). if i open previously created *.dga in virtualdub at the bottom it says: Avisynth read error: CAVIStreamSynth: Sys "" then move one frame forward and virtualdub crashes.

Guest
28th November 2007, 14:57
Something goofy is going on with my builds. Investigating...

canTsTop
28th November 2007, 16:00
unfortunately it still crashes. but if i use avs: AVCSource("bits0001.dga",deblock=false) it no more crashes. and easiest way to make it crash its to load avs in megui>tools>avisynth script creator and in filters tab Analyse, it will crash after few seconds. if i add to avs deblock=false it analyze till the end

Guest
28th November 2007, 16:14
I took the deblock fix version back and I have the broken one there still now, because with my fixed one you say that one crashes too. So you are not testing with a good one yet. What processor do you have? This DLL requires SSE2.

canTsTop
28th November 2007, 16:25
im testing with: libavcodec.dll MD5 is 4DD30386330BBFD5D98D0127967B2466

my processor: AMD Athlon XP 1700+, it supporting only MMX, 3DNow! and SSE :(

Guest
28th November 2007, 17:37
OK, I think it is the SSE2 thing that is causing your crashes for the DLLs that I build. I will try to make one without SSE2.

g0blez
29th November 2007, 02:47
meGUI (x264 build 699):

- Selected SA-HD-DVD profile, RAWAVC container
- Started 1st Pass; at the end of the pass, I got the following logs:
[h264 @ 6FD461F0]reference picture missing during reorder
[h264 @ 6FD461F0]error while decoding MB 18 59, bytestream (td)
[h264 @ 6FD461F0]left block unavailable for requested intra4x4 mode -1 at 0 46
[h264 @ 6FD461F0]error while decoding MB 0 46, bytestream (td)
[h264 @ 6FD461F0]left block unavailable for requested intra4x4 mode -1 at 0 38
[h264 @ 6FD461F0]error while decoding MB 0 38, bytestream (td)
[h264 @ 6FD461F0]reference picture missing during reorder
[h264 @ 6FD461F0]left block unavailable for requested intra mode at 0 10
[h264 @ 6FD461F0]error while decoding MB 0 10, bytestream (td)
[h264 @ 6FD461F0]reference picture missing during reorder



neuron2, do you think these issues are caused by DGAVCdec or something else?
Dark Shikari seems to think it's a decoding issue.

Using alpha 12 (first version - original dll).

Guest
29th November 2007, 05:41
I need the stream, but see below and retest with a clsid build.

The libavcodec.dll situation has become clarified. First, it turns out that the clsid builds are not made with Visual Studio, but with MINGW/MSYS/gcc. There are currently two problems with building with Visual Studio. The first is easy to fix. The project had SSE2 enabled, which would cause crashes for anybody with a processor without SSE2. OK, so just turn off SSE2. The more serious problem is that the Visual Studio build does not have the asm optimizations, and the corresponding C code is buggy, e.g., it causes blocking for some streams, and possibly other problems. So, currently the Visual Studio builds of libavcodec.dll are unusable, and I won't be making any more releases of those until I get the second problem resolved.

Additionally, all the builds have a bug in deblocking for interlaced streams, which can cause crashes when navigating. Michael Niedermayer has sent me the proper fix and I have tested it. He will commit it for the main line. I will build a new libavcodec.dll with that fix using MINGW/MSYS/gcc for the next alpha release. In the meantime use a libavcodec.dll from a recent clsid build.

All the mysteries are now, I think, resolved and we can bring the situation to a good point soon.

Mtz
29th November 2007, 05:50
I posted just to thank you for your hard work. Things like this make us happy.

enjoy,
Mtz

Guest
30th November 2007, 01:15
@Mtz

Thank you. Your kind words are appreciated.

@all

I have made a good libavcodec.dll that:

1. Does not require SSE2.
2. Contains the optimized assembler (which means decoding is faster).
3. Fixes the deblocking bug.

You can get it out of the alpha 12 zip. Feedback will be appreciated.

http://neuron2.net/dgavcdec/dgavcdec100a12.zip

canTsTop
30th November 2007, 10:45
thank you neuron2 for all your hard work, like Mtz wrote: Things like this make us happy :thanks:

this build of libavcodec.dll dont't crash on my pc :)
on sample i uploaded previously everything works good

i have other video which still crashes (in virtualdub or megui), i made a sample, but in sample it no longer crashes in virtualdub, but still crashes in megui then analyzing video (load avs in megui>tools>avisynth script creator and in filters tab Analyse). but if i add in avs deblock=false it no longer crashes
this is sample http://rapidshare.com/files/73281324/222.264.html maybe you can look at it

g0blez
30th November 2007, 15:20
neuron2,
I'll give my stream a try and see if I still get the errors.
Is there an advantage in setting "deblock=false" when encoding ?

Fishman0919
30th November 2007, 17:09
I'm getting an error trying to load a script with HC with dgavcdec100a12. If I go back to dgavcdec100a11 it loads fine.

The same script load fine with both 11 and 12 with QuEnc

loadplugin("DGAVCDecode.dll")
AVCSource("file.dga")
LanczosResize(720,458)
AddBorders(0, 11, 0, 11)
ConvertToYV12()

Guest
30th November 2007, 20:32
Remake the project with the new version of DGAVCIndex and make sure your DGAVCIndex and DGAVCDecode are both from alpha 12. Get rid of any old stray versions that HC might find.

Fishman0919
30th November 2007, 21:21
Thx neuron2.

Odd, if I have any other ver around I get the error... and they are in diff folders. As soon as I zip or rar up the others ver... it works fine.

Deckard2019
1st December 2007, 16:21
I have a Problme on a m2ts BluRay Mpeg4 AVC
With dgavc i get these Decoding Error in megui. I use the latest 1.006 with fixed libavcodec.dll
Its at the End of x264 1pass a

...

encoded 1089 frames, 8.43 fps, 10843.84 kb/s
[h264 @ 30885100]top block unavailable for requested intra4x4 mode -1 at 0 0
[h264 @ 30885100]error while decoding MB 0 0, bytestream (td)
[h264 @ 30885100]left block unavailable for requested intra4x4 mode -1 at 0 16
[h264 @ 30885100]error while decoding MB 0 16, bytestream (td)
[h264 @ 30885100]top block unavailable for requested intra4x4 mode -1 at 0 34
[h264 @ 30885100]error while decoding MB 0 34, bytestream (td)
[h264 @ 30885100]left block unavailable for requested intra mode at 0 50
[h264 @ 30885100]error while decoding MB 0 50, bytestream (td)
...


Exactly same problem here, with same kind of source, using latest DGAVCDec release.
At the end of first pass, MeGUI throws some errors :
encoded 1001 frames, 9.59 fps, 7095.30 kb/s
[h264 @ 6FCFD810]left block unavailable for requested intra4x4 mode -1 at 0 0
[h264 @ 6FCFD810]error while decoding MB 0 0, bytestream (td)
[h264 @ 6FCFD810]top block unavailable for requested intra4x4 mode -1 at 1 16
[h264 @ 6FCFD810]error while decoding MB 1 16, bytestream (td)
[h264 @ 6FCFD810]top block unavailable for requested intra4x4 mode -1 at 0 34
[h264 @ 6FCFD810]error while decoding MB 0 34, bytestream (td)
[h264 @ 6FCFD810]top block unavailable for requested intra mode at 0 50
[h264 @ 6FCFD810]error while decoding MB 0 50, bytestream (td)

Actually, before launching full length encoding, I test only a few frames, using Trim() in .avs. Is it a problem ?
I'm not sure to be able to give you a sample neuron2, I know it's the only way for you to help me. But can you give me some clues ?

Thank you.

g0blez
2nd December 2007, 05:09
New dll generates additional errors after a single x264 pass:

encoded 206365 frames, 2.55 fps, 6902.02 kb/s
Compiler did not align stack variables. Libavcodec has been miscompiled
and may be very slow or crash. This is not a bug in libavcodec,
but in the compiler. You may try recompiling using gcc >= 4.2.
Do not report crashes to FFmpeg developers.
[h264 @ 6FCFD810]reference picture missing during reorder
[h264 @ 6FCFD810]error while decoding MB 18 59, bytestream (td)
[h264 @ 6FCFD810]left block unavailable for requested intra4x4 mode -1 at 0 46
[h264 @ 6FCFD810]error while decoding MB 0 46, bytestream (td)
[h264 @ 6FCFD810]left block unavailable for requested intra4x4 mode -1 at 0 38
[h264 @ 6FCFD810]error while decoding MB 0 38, bytestream (td)
[h264 @ 6FCFD810]reference picture missing during reorder
[h264 @ 6FCFD810]left block unavailable for requested intra mode at 0 10
[h264 @ 6FCFD810]error while decoding MB 0 10, bytestream (td)
[h264 @ 6FCFD810]reference picture missing during reorder

Guest
2nd December 2007, 05:10
Does it affect the encoded result?

I'd like to try to duplicate this. How do I see those log messages in MeGUI?

g0blez
2nd December 2007, 17:44
Does it affect the encoded result?

I'd like to try to duplicate this. How do I see those log messages in MeGUI?

- Select 2 pass encoding (I select HD-DVD Profile but don't think it matters)
- Wait until first pass is done; MegUI will report that the first pass had errors and you can view them in the "log" tab.

Can't say if it affects the output of the encode but I would assume it does; all you get after a 1st pass is a .stats file.

You can probably reproduce with a 1-pass encode.

Guest
2nd December 2007, 17:49
Can't say if it affects the output of the encode but I would assume it does; all you get after a 1st pass is a .stats file. Do you mean that you cannot run the second pass?

Also, I asked for the stream and you haven't given it to me. I can't help you without it.

Guest
2nd December 2007, 18:16
OK, I tried with the ttt.264 stream and I got errors and MeGUI would not start the second pass. I tricked MeGUI by deleting the jobs from the queue and then re-enqueing the whole job, then delete just pass 1 and start pass 2.

The encode completed and the video looks fine.

So I think this is something that should be addressed by MeGUI. libavcodec is sometimes going to report harmless or recoverable errors, and MeGUI should not abort everything.

Deckard2019
2nd December 2007, 20:03
I tried what you did neuron2. And you're right, the encode completed. But with exactly the same errors as pass 1. Although, the file is playable and video looks fine.
So I think MeGUI stops processing pass 1 only because it reports too many errors. But these errors exist for real. Where do they come from ?
Thank you.

g0blez
2nd December 2007, 23:13
OK, I tried with the ttt.264 stream and I got errors and MeGUI would not start the second pass. I tricked MeGUI by deleting the jobs from the queue and then re-enqueing the whole job, then delete just pass 1 and start pass 2.

The encode completed and the video looks fine.

So I think this is something that should be addressed by MeGUI. libavcodec is sometimes going to report harmless or recoverable errors, and MeGUI should not abort everything.

Are these really harmless/recoverable errors? The log is from x264...

g0blez
3rd December 2007, 01:27
Do you mean that you cannot run the second pass?

Also, I asked for the stream and you haven't given it to me. I can't help you without it.

Stream is Transformers HD-DVD (144 minutes).

Guest
3rd December 2007, 02:43
So I think MeGUI stops processing pass 1 only because it reports too many errors. But these errors exist for real. Where do they come from ?
Thank you. They come from libavcodec.dll, not x264. See the "h264" below?

[h264 @ 6FCFD810]reference picture missing during reorder

It is not happy with the stream. For encoding linearly, I am just handing it the data from the source file. This would have to be taken up with the author of libavcodec. You can use the MP4tech mailing list for that. I'll look into it, but my priority is to get my code working right. I may patch libavcodec.dll to return warnings instead of errors so that MeGUI doesn't give up. I also posted a request to the MeGUI thread asking for an option to ignore errors.

g0blez
3rd December 2007, 03:54
They come from libavcodec.dll, not x264. See the "h264" below?

[h264 @ 6FCFD810]reference picture missing during reorder

It is not happy with the stream. For encoding linearly, I am just handing it the data from the source file. This would have to be taken up with the author of libavcodec. You can use the MP4tech mailing list for that. I'll look into it, but my priority is to get my code working right. I may patch libavcodec.dll to return warnings instead of errors so that MeGUI doesn't give up. I also posted a request to the MeGUI thread asking for an option to ignore errors.

Thanks for the info neuron2.

Taxidermista
3rd December 2007, 05:41
I've demuxed the AVC video from the japanese "Band of Brothers" HD DVD and it seems that DGAVCDec 1.0.0 Alpha 12 has some problems decoding it, I get funny colors after the first few seconds with the HBO logo.

neuron2, I've uploaded a 30 MB sample to Rapidshare for you: BoB HD DVD sample (http://rapidshare.com/files/73929927/Band_of_Brothers_HDDVD.rar.html)

Guest
3rd December 2007, 08:12
That appears to be another libavcodec problem, as it does the same thing in VLC.

Soshen
3rd December 2007, 17:48
Can you exply me how that program work with h264 vfr?

Deinorius
3rd December 2007, 17:57
Normally you demux the stream, index with dgavcindex and convert. Then you use the Timecode file from the source to mux again. That's all instead you wanted to know something else. Then you have to ask again.

azazel1103
4th December 2007, 00:00
i try to open .ts file and i get the following errors:
1. found nalu w/forbidden_bit set, bit error? let's try ...
hit yes ...
2. found nalu type 29 len 31769 undefined, ignore nalu, moving on
hit yes ...
3. found nalu w/forbidden_bit set, bit error? let's try ...
hit yes ...
4. found nalu type 29 len 12997 undefined, ignore nalu, moving on
hit yes ...
5. trying to use an invalid (unintialized) picture parameter set with id0, expect the unexpected ...
hit yes ...
6. picparset 0 references an invalid (uninitialized) sequence parameter set with id0, expect the unexpected ...
hit yes ...
7. and so on

8. field pictures (PAFF) found. this may blow up in your face! continue?
hit yes ...
9.reserved picture_structure used (can't determine numclockts)
hit ok

game over. what's wrong?

ts parameters:

Format : MPEG-4 Transport
Format/Family : MPEG-4
File size : 2.18 GiB
PlayTime : 26mn 48s
Bit rate : 12 Mbps

Video #0
Codec : AVC
Codec/Info : MPEG-4 AVC
Codec profile : Main@L4.0
PlayTime : 26mn 48s
Bit rate : 11 Mbps
Width : 1920 pixels
Height : 1088 pixels
Aspect ratio : 16/9

or

Format : MPEG-4 Transport
Format/Family : MPEG-4
File size : 6.94 GiB
PlayTime : 59mn 1s
Bit rate : 17 Mbps

Video #0
Codec : AVC
Codec/Info : MPEG-4 AVC
Codec profile : High@L4.0
PlayTime : 59mn 1s
Bit rate : 16 Mbps
Width : 16 pixels
Height : 16 pixels
Aspect ratio : 1.000

the errors are similar

Guest
4th December 2007, 00:10
i try to open .ts file Did you bother to read the help file section listing the limitations of this software? It clearly states that only raw streams are supported.

You have to demux your video from the transport stream.

canTsTop
4th December 2007, 00:11
azazel1103, first you need to demux ts, then open with DGAVCDec

Guest
4th December 2007, 00:29
@canTsTop

Apparently the libavcodec.dll deblocking fix is not complete, as I duplicated your second crash. My problem is that I can't make it fail for my debug DLL. I'll try to find it with code reading, but it might be a while.

canTsTop
4th December 2007, 00:39
thank you neuron2 for looking in to this problem

Guest
4th December 2007, 23:38
Please read the help file and refer to this post:

http://forum.doom9.org/showthread.php?p=1072368#post1072368

nurbs
5th December 2007, 01:36
As neuron2 was saying, DGAVCindex cannot open .ts files. You need to demux it and use the program on the raw stream.

Guest
5th December 2007, 03:19
If it can't open .ts files, then why do they show in the Open dialog? Perhaps the next version, if it does not support .ts, will not show these files, thus preventing users from making such a basic, yet human, mistake, like other applications do. Because it's still an alpha release. Thanks for pointing that out; I'll fix it.

Also, as far as I know AVC elementary streams don't even have a framerate, so how can the user be sure that the reported framerate is correct? Your supposition is incorrect. Of course raw streams have a frame rate. Do you think DGAVCIndex just makes one up? It is derived from the stream according to the spec. You are correct in that the spec allows a stream to not declare a frame rate. In that case, I default to 25 fps. But I have never seen such a stream. Have you?

Guest
5th December 2007, 06:34
* Fixed the problem of MeGUI stopping after a first pass when libavcodec reports warnings/errors.

* Fixed some incorrect seeks.

* Added real help files.

* Miscellaneous little bug fixes.

http://neuron2.net/dgavcdec/dgavcdec100a13.zip

rack04
5th December 2007, 15:24
Using alpha 13 I get the following AviSynth script error:

LoadPlugin: unable to load "C:\Program Files\AviSynth 2.5\Plugins\DGAVCDecode.dll"
C:\Personal\Videos\Heroes.avs, line 1)

Here are the contents of the avs file:

loadplugin("C:\Program Files\AviSynth 2.5\plugins\DGAVCDecode.dll")
AVCSource("C:\Personal\Videos\Heroes_Track1.dga",deblock=false)
Spline36Resize(640,352)

Here is a screenshot of the source folders:

http://i11.photobucket.com/albums/a199/rack04/test.jpg

Here are the contents of the dga text file:

Stream Type: AVC Elementary
Profile: High
Level: 5.1
Frame Size: 1280x704
Aspect Ratio: Unspecified
Frame Rate: 23.976024 fps
Colorimetry: BT.709* [2]
Frame Structure: Frame
Frame Type: P
Coded Number: 61367
Playback Number: 61367
Frame Repeats: 0
Field Repeats: 0
Bitrate: 1.549
Bitrate (Avg): 2.822
Bitrate (Max): 8.015
Elapsed: 0:01:27
Remain: 0:00:00
FPS:
Info: Finished!

Guest
5th December 2007, 15:32
Normally, when you put something in the plugins folder, you don't also load it explicitly as you are doing.

Try putting the correct DGAVCDecode.dll in some other directory, delete the one in the plugins folder, and load it explicitly.

Is this the first time for you to use DGAVCDec? Or are you saying that alpha 12 was OK and alpha 13 is not?

rack04
5th December 2007, 15:42
Normally, when you put something in the plugins folder, you don't also load it explicitly as you are doing.

Try putting the correct DGAVCDecode.dll in some other directory, delete the one in the plugins folder, and load it explicitly.

Is this the first time for you to use DGAVCDec? Or are you saying that alpha 12 was OK and alpha 13 is not?

I'll try as you suggested then report back. Alpha 12 worked.

rack04
5th December 2007, 15:48
If I remove the LoadPlugin I get the following AviSynth error:

Script error: there is no function named "AVCSource"
(C:\Personal\Videos\Heroes.avs, line 1)

rack04
5th December 2007, 15:56
I reverted back to alpha 12 and it loads fine.

Guest
5th December 2007, 16:22
If I remove the LoadPlugin I get the following AviSynth error: That's not what I asked you to do. If you don't follow my instructions, you are on your own.

rack04
5th December 2007, 16:35
That's not what I asked you to do. If you don't follow my instructions, you are on your own.

Harsh :scared:

1st attempt:

1.) Remove DGAVCDecode.dll from the AviSynth Plugin folder
2.) Copy DGAVCDecode.dll from Alpha 13 to temporary folder on C: drive
3.) Changed the AVS script to read LoadPlugin("C:\Temp\DGAVCDecode.dll")
4.) Open AVS in Media Player Classic
5.) Same AviSynth error

2nd attempt:

1.) Copy DGAVCDecode.dll from Alpha 13 to AviSynth Plugin folder
2.) Remove LoadPlugin from AVS script
3.) Open AVS in Media Player Classic
4.) Same AviSynth error

3rd attempt:

1.) Remove all traces of Alpha 13 from computer.
2.) Copy DGAVCDecode.dll from Alpha 12 to AviSynth Plugin folder
3.) Create .dga file with Alpha 12
3.) Open AVS in Media Player Classic
4.) Works

Guest
5th December 2007, 16:40
You don't mention remaking the project with alpha 13. Maybe your DGA file points to the version of libavcodec.dll from alpha 12. I now check for a fully consistent file set.

rack04
5th December 2007, 16:56
1.) Remove all traces of DGAVCDec 1.0.0 Alpha 12 and Alpha 13
2.) Copy DGAVCDecode.dll from the Alpha 13 package to ("C:\Temp\")
3.) Copy remaining files from the Alpha 13 package to ("C:\Program Files\DGAVCIndex\")
4.) Create project file using DGAVCIndex in Alpha 13 package
5.) Create AVS script

loadplugin("C:\Temp\DGAVCDecode.dll")
AVCSource("C:\Personal\Videos\Heroes_Track1.dga",deblock=false)
Spline36Resize(640,352)

6.) Open AVS in Media Player Classic
7.) Same AviSynth error

Guest
5th December 2007, 17:00
Try opening in VirtualDub and see if you get a ThrowError message in the status line, please.

rack04
5th December 2007, 17:07
Try opening in VirtualDub and see if you get a ThrowError message in the status line, please.

I'm not too familiar with VirtualDub. Is this what you mean?

http://img222.imageshack.us/img222/9582/vdubvo7.jpg

Guest
5th December 2007, 17:15
I'm at work and can't get links like that. Please tell me in words.

rack04
5th December 2007, 17:24
In virtualdub I went file->open and immediately it threw an error.

AviSynth open failure: LoadPlugin: unable to load "C:\Program Files\AviSynth 2.5\Plugins\DGAVCDecode.dll"
C:\Personal\Videos\Heroes.avs, line 1)

Maybe you can explain what you meant by "ThrowError message in the status line". Maybe I didn't do what you requested.

Guest
5th December 2007, 18:07
When you open the script in VirtualDub and get the error popup, look at the status line at the bottom of the main VirtualDub window. Is there an error string there?

What's happening for other people, are you getting it to load OK?

canTsTop
5th December 2007, 18:13
loading DGAVCDecode.dll without problems
and thank you for help files, didn't know about avs templates, it makes life easier :)

LigH
5th December 2007, 20:02
@ neuron2:

In rack04's screenshot, the status line is empty. There is only the basic "VirtualDub Error" dialog.

Guest
5th December 2007, 22:14
Maybe he needs the VS 2005 SP1 redistributable package, although I'm sure I built it statically.

azazel1103
5th December 2007, 22:49
thx for your help. srry for my previous posts, but indeed i didn't read the info about the program. i presumed (i will not do that in the future) that it works similar with dgindex directly with entire ts file. i have extracted raw video data from a .ts file obtain a .264 file and i haved loaded into dgavcindex. i used for the extraction mencoder and mplayer. the 2 files where similar but not identically. odd. one has dimension 7,078,536,054 bytes (mplayer) and the other 7,077,972,593 bytes (mencoder). never mind skip that. i load the 2 files into dgavcindex. i can play them, but when i hit F4 nothing happends. i am prompted where to save my . dga file and then nothing happend. did someone know what's wrong?
btw i tested only the last 2 versions of dgavcindex. also i have tested 2 different .ts (.264) files with the same result.
maybe it's something wrong with the command lines for .264 file so here they are:
~F:\Documents and Settings\Administrator\Desktop\MPlayerhu\mplayer>mencoder D:\HD-WORK\Vegas1080ih264.ts -of rawvideo -nosound -ovc copy -o D:\HD-WORK\Vegas1080ih264.264
~F:\Documents and Settings\Administrator\Desktop\MPlayerhu\mplayer>mplayer -dumpvideo -dumpfile C:\encodehd264\michael.264 C:\encodehd264\michael.ts

i almost forgot something. the option open somehow doesn't work also. i open the .264 fie and nothing. i use drag@drop from win_explorer to dgavcindex ... maybe this help too. also in paralel i have an working encoding with automkv. it's on second pass ... maybe this help too?

thx in advanced

rack04
5th December 2007, 23:04
Maybe he needs the VS 2005 SP1 redistributable package, although I'm sure I built it statically.

Is there a way to test which package I have installed?

Guest
5th December 2007, 23:15
Control Panel/Add Remove Programs

Look for Microsoft Visual Studio Redistributable package.

There's a link in this thread if you haven't got it installed.

rack04
5th December 2007, 23:32
Control Panel/Add Remove Programs

Look for Microsoft Visual Studio Redistributable package.

There's a link in this thread if you haven't got it installed.

That was the problem. Thanks.

liquidator87
5th December 2007, 23:59
Hi, I keep getting "Microsoft VC++ Runtime Error"...

This is the first time it happens, I've been using DGAVCDec without problems, but now it gives me this error...
The dga file is created with no problems, the encode starts and goes well till 10,4%, then it crashes...
The source is a bd file.

I checked and reinstalled VC redist, but no solution... any idea?

Guest
6th December 2007, 00:52
That was the problem. Thanks. Thanks to you too for bearing with my gruff nature. I'll investigate this because I thought I had linked with static libraries. I'll also add a big warning in the readme.

Guest
6th December 2007, 00:53
Hi, I keep getting "Microsoft VC++ Runtime Error"...

This is the first time it happens, I've been using DGAVCDec without problems, but now it gives me this error...
The dga file is created with no problems, the encode starts and goes well till 10,4%, then it crashes...
The source is a bd file.

I checked and reinstalled VC redist, but no solution... any idea? You have the SP1 version of the redist package, yes?

If so, I will need a stream fragment that I can use to duplicate the issue.

liquidator87
6th December 2007, 01:54
Yes, I installed this (http://www.microsoft.com/downloads/details.aspx?familyid=200b2fd9-ae1a-4a14-984d-389c36f85647&displaylang=en)

Here's the segment --> Link (http://rapidshare.com/files/74584887/Sample.h264.html)

Little notes:
- It will give you a warning because the first frame is not a I-Frame
- If you save the project the process ends with no error, but you get the error when you try to encode with x264
- If you preview the file into DGAVCIndex, it will crash

Guest
6th December 2007, 03:29
It's another libavcodec.dll problem. VLC uses the same decoder so if it doesn't play in VLC it won't play in DGAVCDec. I'm happy to collect such bad streams and pass them along to the libavcodec.dll authors, but beyond that there's little I can do.

Guest
6th December 2007, 07:48
I found out that I had accidentally built DGAVCDecode.dll alpha 13 dynamically instead of statically, which caused the dependency on the VS 2005 redistributable package. I have updated alpha 13 to be fully static, so it is no longer necessary to have the VS 2005 redistributable package installed.

azazel1103
6th December 2007, 09:00
back again with more info

i have tested alpha 13 on another machine. with the same .264 file works perfectly. my home machine is running win2k. is this the issue?

dgavcindex is not working on win2k?
or it's something else (win2k problems)?
can anyone say something?

thx again in advance

liquidator87
6th December 2007, 12:00
It's another libavcodec.dll problem. VLC uses the same decoder so if it doesn't play in VLC it won't play in DGAVCDec. I'm happy to collect such bad streams and pass them along to the libavcodec.dll authors, but beyond that there's little I can do.

So, how can I solve this? I cannot use DirectShowSource because of this problem (http://forum.doom9.org/showthread.php?t=132340)...

Is there any way I can correctly import a 1080p stream in AviSynth? Is it possible to use DGAVCIndex with other decoders?

ToS_Maverick
6th December 2007, 13:00
you cannot use another decoder, because DGAVCIndex just passes the stream on to the libavcodec.dll

it would also be very difficult to use the direct-show interface, because every decoder behaves differently (synch errors, features).

Deckard2019
6th December 2007, 13:49
* Fixed the problem of MeGUI stopping after a first pass when libavcodec reports warnings/errors.
* Fixed some incorrect seeks.
* Added real help files.
* Miscellaneous little bug fixes.
http://neuron2.net/dgavcdec/dgavcdec100a13.zip
Thank you neuron2. Works fine now with MeGUI.

Also, I used to get some errors with a12, during 1st pass :
[h264 @ 6FCFD810]left block unavailable for requested intra4x4 mode -1 at 0 0
[h264 @ 6FCFD810]error while decoding MB 0 0, bytestream (td)
[h264 @ 6FCFD810]top block unavailable for requested intra4x4 mode -1 at 1 16
[h264 @ 6FCFD810]error while decoding MB 1 16, bytestream (td)
...

Now, MeGUI log don't report any error of that kind (x264).
Does it mean you fixed this ? If so, is it what you call "incorrect seeks" ?

Guest
6th December 2007, 15:27
back again with more info

i have tested alpha 13 on another machine. with the same .264 file works perfectly. my home machine is running win2k. is this the issue?

dgavcindex is not working on win2k?
or it's something else (win2k problems)?
can anyone say something?
It has not been tested on Win2K. I fixed the file open problem on Win2K for DGMPGDec, so I need to make the same fix for DGAVCDec. I have a Win2K machine at work and will test it today and try to get a working version for you. Thank you for reporting this issue.

Guest
6th December 2007, 15:36
Now, MeGUI log don't report any error of that kind (x264).
Does it mean you fixed this ? If so, is it what you call "incorrect seeks" ? It means that I intercepted the libavcodec errors so that MeGUI doesn't see them. :)

In DGAVCIndex, I report them via popups. In DGAVCDecode, I throw them in the bit bucket.

The incorrect seeks were due to a deficiency in my original seeking algorithm. According to my testing it is now working properly. I am testing it by adding reverse() at the end of the script and then playing the script. This causes DGAVCDec to have to seek to every frame that it displays, instead of playing linearly forward.

Guest
6th December 2007, 15:40
it would also be very difficult to use the direct-show interface, because every decoder behaves differently (synch errors, features). That needn't be an issue, as long as I require a certain decoder. I have thought about this. The decoder must provide an SDK for accessing the codec and it must be able to accept a stream of NALUs. I may contact the CoreAVC guys to see if something like this could be done.

liquidator87
6th December 2007, 16:00
neuron2, I think the problem with my sample is that it's not fully BD+ decrypted...

azazel1103
6th December 2007, 16:16
It has not been tested on Win2K. I fixed the file open problem on Win2K for DGMPGDec, so I need to make the same fix for DGAVCDec. I have a Win2K machine at work and will test it today and try to get a working version for you. Thank you for reporting this issue.

ok let's make it work on win2k machine. I will wait for your next release to test it. Until then I will generate the dga file on my xp laptop and the encoding an my win2k dektop. it's not a problem. but i am also thinking to change the os on my desktop with xp.

thank's for answering. also it is posible that the generation of dga file on win2k machine to be related with your fix. let's wait and see...

Deckard2019
6th December 2007, 17:40
It means that I intercepted the libavcodec errors so that MeGUI doesn't see them. :)
Ok. I see. So finally, is DGAVCDec reliable enough to be used to decode sources ?
Thank you.

Guest
6th December 2007, 18:03
As long as libavcodec can decode your stream, you will find DGAVCDec to be just fine.

g0blez
6th December 2007, 18:04
That needn't be an issue, as long as I require a certain decoder. I have thought about this. The decoder must provide an SDK for accessing the codec and it must be able to accept a stream of NALUs. I may contact the CoreAVC guys to see if something like this could be done.

CoreAVC support would be great =p

Guest
7th December 2007, 03:11
ok let's make it work on win2k machine. I have updated the alpha 13 zip file with a fixed version of DGAVCIndex that works on Win2K.

Milvus
7th December 2007, 11:40
Yes, great News ! Alpha 13 works perfectly for me, first version since Alpha 6.

Thanks a lot !

harissa
7th December 2007, 21:51
I'm having this error msg when I process the avs in vdub
it open fine ,but it just don't scrol or encode

Microsoft visual c++ runtime library
runtime error !
programe : d:/****/vitualdubmod.exe
this application has requested the runtime to terminate it in an unusual way

I'm using dgavcdec100a13 with a simple avs
newest win xp pro +ffdshow+avisynth
http://rapidshare.com/files/74996531/1.ts

Guest
7th December 2007, 22:01
Did you demux the video and open that? If so, why are you giving me the transport file?

harissa
7th December 2007, 22:03
yes I demux , I just didnt realize that I uploaded the ts
http://rapidshare.com/files/75011503/00.264

Seba-
9th December 2007, 10:14
I have the same situation as harrisa: media player classic, windows media player, virtualdub mod etc crashes with the same error message which harrisa described.

Guest
9th December 2007, 13:44
The stream won't play in VLC, so it's a libavcodec issue. I'm not in the mode of trying to fix those issues right now. I'm in the mode of getting my code right. Later I may try to address those issues.

azazel1103
10th December 2007, 18:58
Hi neuron,

I have tested the latest version. WORKS PERFECTLY on WIN2K OS.

thank's for your efort.

vlada
10th December 2007, 21:12
neuron2> Since there is now a ffmpeg version which supports PAFF interlacing, could you make a new version with support for such interlaced content? AVCHD uses PAFF and also many TV broadcasts are PAFF interlaced.

I have a very interesting sample and I can't figure out, what are the parameters of the video: http://rapidshare.com/files/75135863/HDedit.rar.html

I do believe it is 50p but by a mistake encoded as PAFF interlaced. What do you think?

Thank you very much and I appreciate your great work.

Guest
11th December 2007, 00:27
Since there is now a ffmpeg version which supports PAFF interlacing, could you make a new version with support for such interlaced content? Have you been hiding in a hole?

I have a very interesting sample and I can't figure out My demuxers tell me that the transport file is corrupt. Give me the raw AVC stream if you want me to look at it.

xxx666yyy777
11th December 2007, 14:42
Very nice and handy tool Neuron2. I have a question/possible request: Is it possible to at least provide audio delay information with dgavcdec, similar to dgmpegdec? That would be very nice...;-) Or does anyone know, how to obtain audio delay information from .ts files via different means?

Thx.

SpAwN_gUy
11th December 2007, 16:40
BWAHAHAHA ;)

i'm here too ;) ... and i'm still farming.. ;) ..

'kay.. the Rezzults:
i've tried (and made a new test-script.. for my purposes..)
so..
i've tried DGAVCDec.. alpha 13 (not the last one with win2k patch)..
and.. It Worked flawlessly.. (deblock=false) .. perfect seeking, and no errors.. 4-5 agents.. and lots of FPSes..
nice work, thanks...

and.. guess what i needed to do? ;) ... you know, neuron2..
yes.. i had to change the internals.. to.. yes.. "Relative-paths" .. and NOT only to .dga.. but for libavcoded.dll also..

so.. as i've seen in .ini.. there is no "default path to libavcodec.dll" and path is stored in the .dga-file..

will this ever be changed (as MPEGDec does not need any external dlls)?
and maybe a ".dll path" option..
and "relativity" request..

sorry.. don't blame me for my requests.. please

ACrowley
11th December 2007, 18:01
CoreAVC support would be great =p


CoreAVC for Directshowsource Decoding = not good.
Can Produce Blocking

ChronoCross
11th December 2007, 20:24
CoreAVC for Directshowsource Decoding = not good.
Can Produce Blocking

hey troll,

CoreAVC works fine and another update will be coming out shortly.

shambles
15th December 2007, 17:50
hey, i haven't used this tool yet but i will, and i was wondering about seamless branching blu-ray titles.. is it better to concatenate the m2ts files and then demux video, or demux video from all the m2ts files and then concatenate the demuxed files if you intend to load the resultant file into dgavcdec? or will it not make any difference?

vlada
15th December 2007, 18:16
neuron2
Sorry I haven't been watching the development closely. I got a warning that the file is PAFF and the DGAVCDec crashed, so I thought that your program still uses an old version of libavcodec. I tried the file after demuxing and it works fine. DGAVCDec says it is 50p. I thought it is impossible to get framerate from a raw avc stream. Was I wrong?

My main interest was to know what is the framerate and if it is interlaced or not. So I do believe my problem is solved...

Guest
16th December 2007, 01:15
hey, i haven't used this tool yet but i will, and i was wondering about seamless branching blu-ray titles.. is it better to concatenate the m2ts files and then demux video, or demux video from all the m2ts files and then concatenate the demuxed files if you intend to load the resultant file into dgavcdec? or will it not make any difference?I would concatenate the m2ts files first.

Guest
16th December 2007, 01:16
I thought it is impossible to get framerate from a raw avc stream. Was I wrong? Yes, that's wrong. I don't know where this canard is coming from.

Isochroma
16th December 2007, 02:30
As well as MP4Box, MKVToolnix also requires the user to enter the framerate if a raw .264 stream is muxed. Presumably this is because the .264 stream contains no framerate information.

drmpeg
16th December 2007, 02:49
As well as MP4Box, MKVToolnix also requires the user to enter the framerate if a raw .264 stream is muxed. Presumably this is because the .264 stream contains no framerate information.
The frame rate information is optional. However, on captures from just about any terrestrial or satellite service and HD DVD and Blu-ray, the frame rate information is always present. Here's a Blu-ray example (at 23.976 fps):

h264_parse - mpeg4ip version 1.5.0.1
Nal length 6 start code 4 bytes
ref 0 type 9 Access unit delimeter
primary_pic_type: 0
Nal length 47 start code 4 bytes
ref 3 type 7 Sequence parameter set
profile: 100
constaint_set0_flag: 0
constaint_set1_flag: 0
constaint_set2_flag: 0
constaint_set3_flag: 0
level_idc: 41
seq parameter set id: 0
chroma format idx: 1
bit depth luma minus8: 0
bit depth chroma minus8: 0
Qpprime Y Zero Transform Bypass flag: 0
Seq Scaling Matrix Present Flag: 0
log2_max_frame_num_minus4: 12
pic_order_cnt_type: 0
log2_max_pic_order_cnt_lsb_minus4: 12
num_ref_frames: 4
gaps_in_frame_num_value_allowed_flag: 0
pic_width_in_mbs_minus1: 119 (1920)
pic_height_in_map_minus1: 67
frame_mbs_only_flag: 1
derived height: 1088
direct_8x8_inference_flag: 1
frame_cropping_flag: 1
frame_crop_left_offset: 0
frame_crop_right_offset: 0
frame_crop_top_offset: 0
frame_crop_bottom_offset: 4
vui_parameters_present_flag: 1
aspect_ratio_info_present_flag: 1
aspect_ratio_idc:1
overscan_info_present_flag: 0
video_signal_info_present_flag: 1
video_format: 2
video_full_range_flag: 0
colour_description_present_flag: 1
colour_primaries: 1
transfer_characteristics: 1
matrix_coefficients: 1
chroma_loc_info_present_flag: 0
timing_info_present_flag: 1
num_units_in_tick: 1001 <------------------
time_scale: 48000 <------------------
fixed_frame_scale: 1
nal_hrd_parameters_present_flag: 1
cpb_cnt_minus1: 0
bit_rate_scale: 1
cpb_size_scale: 3
bit_rate_value_minus1[0]: 265623
cpb_size_value_minus1[0]: 234374
cbr_flag[0]: 0
initial_cpb_removal_delay_length_minus1: 17
cpb_removal_delay_length_minus1: 17
dpb_output_delay_length_minus1: 7
time_offset_length: 0
vcl_hrd_parameters_present_flag: 0
low_delay_hrd_flag: 0
pic_struct_present_flag: 1
motion_vectors_over_pic_boundaries_flag: 1
max_bytes_per_pic_denom: 0
max_bits_per_mb_denom: 0
log2_max_mv_length_horizontal: 13
log2_max_mv_length_vertical: 11
num_reorder_frames: 4
max_dec_frame_buffering: 4


Ron

Guest
16th December 2007, 15:51
The frame rate information is optional. However, on captures from just about any terrestrial or satellite service and HD DVD and Blu-ray, the frame rate information is always present.
And here too:

http://forum.doom9.org/showthread.php?p=1072735#post1072735

This is going to become one of those urban legends. :)

SeeMoreDigital
16th December 2007, 19:35
And here too:

http://forum.doom9.org/showthread.php?p=1072735#post1072735

This is going to become one of those urban legends. :)Indeed...

After de-muxing the elementary streams from my early VfW generated AVC in .AVI encodes, DGAVCIndex reports some bizarre fps speeds.

By contrast, after de-muxing the elementary streams from my CLI generated AVC in .MP4 encodes, DGAVCIndex reports the correct fps speeds ;)

Guest
16th December 2007, 22:38
Put AVC in a VFW container and you deserve all the grief that will ensue. :)

Inventive Software
16th December 2007, 23:04
Amen! :D

SeeMoreDigital
16th December 2007, 23:29
Put AVC in a VFW container and you deserve all the grief that will ensue. :)Yep...

Hopefully DivX will take note (but somehow I doubt it) :eek:

Atak_Snajpera
17th December 2007, 01:15
neuron2
Could you check this sample because I get black screen after importing to .avs

http://www.mediafire.com/?3tazu2dy0d5

Guest
17th December 2007, 02:08
Sorry but as I have said before I'm not into the mode of debugging/enhancing libavcodec right now. If it doesn't play in VLC, then DGAVCDec code is not at fault, and you should report it to the ffmpeg guys.

Guest
18th December 2007, 14:37
I had a brainstorm and found a way to cleanly integrate container support without making a parsing nightmare. So transport streams and MP4 are back on the table. The design changes were extensive to support this new concept so I'd like to throw out a DGAVCIndex version for testing that supports transport files. If it is OK, then I will carry it through to DGAVCDecode, add cutting and demuxing, etc. So please pound on it. Use it with the libavcodec.dll that comes with alpha 13.

http://neuron2.net/misc/DGAVCIndex.exe

BTW, I am off to Pondicherry for 18 days tomorrow, so may have sporadic access to Doom9.

Flaarn
18th December 2007, 15:39
I had a brainstorm and found a way to cleanly integrate container support without making a parsing nightmare. So transport streams and MP4 are back on the table. The design changes were extensive to support this new concept so I'd like to throw out a DGAVCIndex version for testing that supports transport files. If it is OK, then I will carry it through to DGAVCDecode, add cutting and demuxing, etc. So please pound on it. Use it with the libavcodec.dll that comes with alpha 13.

Seems to open my usual .ts files no problem mbaff, paff(with usual warning)ok, also works with luxe tv HD not sure what thats using, so for me at least TS container support seems to be working, obviously the save function isnt available yet, but this is a welcome development and I would like to thank you for your continuing work with this.

Guest
18th December 2007, 16:19
You're welcome and thank you for the feedback.

The new architecture is so clean that I'm thinking of fitting it to DGMPGDec too for its next version.

canTsTop
18th December 2007, 16:20
hello, i tested it with my TS files and it works good with some TS files. but it cant open some TS files. it always can open recorded TS from one tv channel, but always can't open recorded TS from another tv channel

sorry for bad english

here is sample http://rapidshare.com/files/77428242/TV1_sample.ts.html

Guest
18th December 2007, 17:53
Thanks, canTsTop. You guys are great testers. :)

I goofed on the PID parsing, so some PIDs won't work. I'll give you a fixed one later today. It will also handle M2TS 192-byte packets and have a timeout for no data found as in DGIndex.

ToS_Maverick
18th December 2007, 19:10
thank you very much for the .ts support neuron2!

i can confirm, i got 1 stream that works (EinsFestival HD) while the others don't (Pro7 HD, Premiere HD, Anixe HD).

Kurtnoise
18th December 2007, 20:30
1/ Here is (http://www.mediafire.com/?fnzgn8hxvth) a sample which doesn't work properly with the last build.
2/ Feature Request: a hexToInt conversion for PIDs could be great.

Guest
19th December 2007, 00:44
Here is the fixed version:

http://neuron2.net/misc/DGAVCIndex.exe

Next one will do both hex and decimal pids.

canTsTop
19th December 2007, 12:52
thank you for update, now all my TS files working


i have noticed one thing, then i open video and preview it (F5) in information window Frame Struct is Fields (BFF), but then i save project in Information window Frame Struc is Fields (TFF)

Guest
19th December 2007, 13:35
i have noticed one thing, then i open video and preview it (F5) in information window Frame Struct is Fields (BFF), but then i save project in Information window Frame Struc is Fields (TFF) Hmm, can you post a sample that does that? If you can't post it in the next 3 hours before I leave for India, can you please hold on to it so I can get it on my return? Thank you.

It's quite possible that the frame types really did change and when you do Save Project you are left looking at the last frame's type. I have clips like that. But I'm surprised that the field order would change.

canTsTop
19th December 2007, 13:51
here is sample http://rapidshare.com/files/73281324/222.264.html
its same i posted previously

Guest
19th December 2007, 13:59
I used the stream you posted previously, and it switches between Fields (BFF) and Frame, which is normal. When I do Save Project, it shows Frame in the Info box at the end, not Fields (TFF).

canTsTop
19th December 2007, 14:05
TFF shows in beginning, not in the end, my PC is slow and i can see when it saving project, last frame is Frame

this is beginning of that sample http://rapidshare.com/files/77636850/222.264_0.html
in this is showing TFF in information window in the end, then you save project

here is video of this http://rapidshare.com/files/77668545/proof.avi.html


Happy Holidays for you and all doom9 forum :)

Turtleggjp
22nd December 2007, 03:36
Did the Transformers credits glitches get fixed? I thought I read they had, but I just tried it again with Alphas 11, 12, and 13 (re-indexing every time) and they all still show the deblocking errors starting at frame# 198599. Thanks.

crypto
22nd December 2007, 10:19
I tested DGAVCIndex on several HD satellite recordings and it is working like a charm. Thanks for this great tool.

ficofico
26th December 2007, 00:48
It's possible to use this amazing tool using command line input ?

Chug a Bug
28th December 2007, 21:20
:thanks: It's nice to be able to open .ts streams in DGAVCdec now.

I'm getting some errors on opening BBC .ts streams with it:

----
Warning

top block unavailable for requested intra mode at 41810284 1875496140

Hit Yes to continue with further libavcodec error/warning popups, Hit No to disable them.

----

error while decoding MB 41811148 1875496140, bytestream (td)

Hit yes.. etc.

----

concealing 41811356 DC, 1875496140 AC, 3149008 MV errors

Hit yes.. etc.

----

I'm assuming they're libavcodec problems however, VLC player has problems with it too; it keeps crashing, etc. Xport demuxes it nicely however so it's not the end of the world.

Snowknight26
29th December 2007, 00:41
Open the demuxed stream in DGAVCDec, not the .ts itself.

hajj_3
29th December 2007, 03:20
how can i open the created .dga file in gordian knot, i have a .h264 file and a .ac3 and i want to re-encode it to xvid using gordian knot. can anyone help?

J_Darnley
29th December 2007, 11:10
You will have to load the AviSynth script yourself into GK as it doesn't support avcindex files.

hajj_3
29th December 2007, 12:59
You will have to load the AviSynth script yourself into GK as it doesn't support avcindex files.

please could you show me, i read things for 1hr yesterday, couldnt figure it out which directories each of the files needed to be in and how to create the .avs file properly, ive only done mpeg2 stuff before. sorry for being a pain!

crypto
29th December 2007, 18:19
Ok, the DGAVCDecode.dll goes into avisynth's plugins directory. Your avs script should read like:

v = AVCSource("movie.dga")
a = WavSource("movie.wav")
AudioDub(v, a)

deathadder
2nd January 2008, 21:18
When I try DGAVCDec 1.0.0 Alpha 13 on a m2ts file that is AVC level 4.1 I get the error message:

Found NALU w/forbidden_bit set, bit error? after saying yes to move on I get:
Found NALU type 0, len 16 undefined, moving on again I get the first error message.

Any idea what is the cause?

:thanks:

LigH
3rd January 2008, 07:50
Again, and again, and again ...

Use DGAVCIndex only on raw AVC streams (*.264), not on still multiplexed Transport Streams!

Donald Graft: Could you possibly include an early check, and a closer matching warning message?

ChronoCross
3rd January 2008, 23:20
Again, and again, and again ...

Use DGAVCIndex only on raw AVC streams (*.264), not on still multiplexed Transport Streams!

Donald Graft: Could you possibly include an early check, and a closer matching warning message?

you know he added .ts support right?

Guest
5th January 2008, 05:27
Did the Transformers credits glitches get fixed? I thought I read they had, but I just tried it again with Alphas 11, 12, and 13 (re-indexing every time) and they all still show the deblocking errors starting at frame# 198599. Thanks. I'm not fixing libavcodec problems right now. Maybe later.

Guest
5th January 2008, 05:28
It's possible to use this amazing tool using command line input ? Not yet. Be patient.

Guest
5th January 2008, 05:30
you know he added .ts support right? It's just partial support right now. I am currently adding the indexing and DGAVCDecode support.

Guest
5th January 2008, 05:31
When I try DGAVCDec 1.0.0 Alpha 13 on a m2ts file that is AVC level 4.1 I get the error message: Please provide a test stream that I may use to duplicate your issue.

deathadder
6th January 2008, 08:49
Please provide a test stream that I may use to duplicate your issue.

Neuron2,

Here is a tiny section that gives the same error. I hope this helps.

:thanks:

Turtleggjp
7th January 2008, 02:47
I'm not fixing libavcodec problems right now. Maybe later.

Thanks for the reply, and welcome back!

I guess I'll just wait on redoing my transcode of that movie. Easy to do when you own it. :cool:

Chumbo
7th January 2008, 04:58
I finally downloaded this tool to tinker with it. Very nice. I love the avs template stuff, so I messed with it first. I know this is alpha and these are probably known, but incase they're not, I ran into the following.

- If the avs file already exists, saving the project does not rewrite the file. This would be nice incase a change is made to the template.

- if the avs file already exists, opening the same-named.avc file again in DGAVCIndex locks the existing same-named.avs file. So if I want to delete it, I can't. I have to close DGAVCIndex, delete it, reopen DGAVCIndex, load the .avc file and reprocess it.

- Using the latest alpha 13 and virtualdub 1.77, I tried loading the .avs file into VirtualDub and got the following:
Avisynth open failure
Script error: avcsource does not have a named argument "cpu"
My avs script is pretty basic as I copied it from the Quickstart guide. ;) I've removed the complete paths for readibility:loadplugin("DGAVCDecode.dll")
loadplugin("Decomb.dll")
avcsource("00012.dga",cpu=6)
fielddeinterlace()
I did search the thread to see if any of these were reported already and I did not find any other instances using the search words I used.

Very, very nice neuron2. :)

Deinorius
7th January 2008, 09:39
AVCSource don't have any cpu argument. It's just what the error message says. Of course, it would not run. Read the instructions.

Deblock is the only argument, which is supported.

And I don't know exactly, if I understand your first two parts correctly.

Chumbo
7th January 2008, 15:49
AVCSource don't have any cpu argument. It's just what the error message says. Of course, it would not run. Read the instructions.

Deblock is the only argument, which is supported.
...correctly.
Yes I realize that. Did you not read my entire message? My point is that "I copied it from the Quickstart guide" so why is it in the guide if it's not an argument?

Deinorius
7th January 2008, 16:56
Perfect question for neuron2. I already asked myself too, after I read your post. oO

Guest
7th January 2008, 17:46
It was a mistake when making the guide cloned on the DGMPGDec one. I will fix it. Thank you for pointing it out.

Chumbo
7th January 2008, 19:52
It was a mistake when making the guide cloned on the DGMPGDec one. I will fix it. Thank you for pointing it out.
No worries, thank you. :) Did the avs file issues make any sense?

7oby
13th January 2008, 11:48
It's possible to use this amazing tool using command line input ?
Not yet. Be patient.

I'd really appreciate such a feature as well (dpmpgdec121 had also supported it). Wouldn't require full command line support, just the DGAVCIndex .dga generation.

I have some MPEG4-AVC elementary streams extracted from European Sports DVB-S2. Those are real interlaced streams (not 24p, 25p, 29,97p pull-ups) featuring 50fps. They have all sorts of features like PAFF and these two filters fail terrible:

. CoreAVC 1.5.0.0
. ffdshow beta4a rev1723

Besides - I'd really like to get rid of DirectShowSource() dependency.

Best results I get with dgavcdec100a13, but can't automate it.

regards,
7oby

MoUCLAs
3rd February 2008, 09:39
i have the same problem..

http://www1.picfront.org/picture/Ht7GA43q/thb/dgavc_error.PNG (http://www.picfront.org/d/Ht7GA43q/dgavc_error.PNG) http://www1.picfront.org/picture/CQktXSA2C/thb/dgavc_error2.png (http://www.picfront.org/d/CQktXSA2C/dgavc_error2.png)

Guest
4th February 2008, 05:55
For the PAFF warning, just hit Yes to continue. It may or may not work, depending on libavcodec. If it doesn't play in ffdshow or VLC, it will probably fail in DGAVCDec as well. BTW, I've removed the PAFF warning in alpha 14, which I will post shortly.

For the other warning, hit No to disable further warnings. The streams I have with this warning decode correctly. This is a libavcodec issue.

Guest
4th February 2008, 07:10
* Completes transport stream support for video. You can now do Save Project on transport streams and serve the video with DGAVCDecode.

* Added Save Project and Demux Video option in the File menu.

* Added Loop Playback option in the Options menu.

* Added option to control creation of the info log in the Options menu.

* Corrected some manual problems and linked them in the Help menu.

* Removed the PAFF blow-up warning.

http://neuron2.net/dgavcdec/dgavcdec.html

Next up is audio demuxing and project ranges (cutting).

7oby
4th February 2008, 10:16
http://neuron2.net/dgavcdec/dgavcdec.html

Next up is audio demuxing and project ranges (cutting).

Great work!

Given that there are already tools for demuxing (xport, tsremux, ...) and project ranges (H264TS_Cutter), ... I'd really need that command line option.

Nothing fancy. Just stupid Open + Save Project + Exit.

DGAVCIndex -AIF=[video.h264] -Video_PID 1234 -EXIT -OF=video

regards,
7oby

Deinorius
4th February 2008, 13:01
Yeah, me too. But good things need time (if this is the correct translation into english). :cool:

@neuron2
:thanks:

Guest
4th February 2008, 18:10
OK, I'll do the CLI next.

It's going to have UNIX-style syntax, not the problematic one in DGMPGDec.

check
5th February 2008, 05:22
It's going to have UNIX-style syntax, not the problematic one in DGMPGDec.Best news I've heard all week! ;)

Adub
5th February 2008, 07:08
Now, how about the next step?
Linux support!

lucassp
5th February 2008, 13:15
How do you use AVISynth on Linux?

nm
5th February 2008, 13:34
Currently with Wine. DGAVCDec probably works too already.

Adub
5th February 2008, 18:48
I meant native linux support.

Actually does anyone know what the overhead is like when running Avisynth or DGAVCDec on linux is? How does it compare when running on native windows xp?

dk75
5th February 2008, 19:20
First - must be an AVS for Linux. Thought, AVS3 will be for Linux too, but it will be useable... somewere in the distant future ;P

Guest
6th February 2008, 00:35
OK, here's your primitive CLI:

http://neuron2.net/dgavcdec/dgavcdec.html

Guest
6th February 2008, 00:50
- If the avs file already exists, saving the project does not rewrite the file. This would be nice incase a change is made to the template. It's intentional. If you have made any changes to the automatically generated file, you don't want to lose them. Yes, I know you can argue it both ways, but I think changes to the generated script are more likely than changes to the template.

- if the avs file already exists, opening the same-named.avc file again in DGAVCIndex locks the existing same-named.avs file. So if I want to delete it, I can't. I have to close DGAVCIndex, delete it, reopen DGAVCIndex, load the .avc file and reprocess it. That's a bug. I'll fix it at some point.

Chumbo
6th February 2008, 01:32
It's intentional. If you have made any changes to the automatically generated file, you don't want to lose them. Yes, I know you can argue it both ways, but I think changes to the generated script are more likely than changes to the template.

That's a bug. I'll fix it at some point.
Thank you.

LigH
6th February 2008, 08:34
Big Hooray, Donald. With TS support and CLI interface, you made a few milestones towards integration into some automating GUIs.

P.S.: Please check the CLI table in your manual, regarding the description of the pcrPID parameter. I assume it's not another "video stream"?

Deinorius
6th February 2008, 13:13
OK, here's your primitive CLI: Yippieh, thank you very much! :cool:

7oby
6th February 2008, 23:06
OK, here's your primitive CLI:

That is awesome! :thanks:

Finally I got rid of all this nasty DirectShowFilter stuff and have a fully automatic DVB-S2 HDTV -> PS3 conversion running:

:script:
(german only):
http://forum.gleitz.info/showpost.php?p=357992&postcount=221

bg,
7oby

LigH
13th February 2008, 14:46
I tried to open the "wedding shot (http://forum.doom9.org/showthread.php?p=1053242#post1053242)". Unfortunately, DGAVCDec 1.00a15 could not index it:

---------------------------
Error
---------------------------
reserved picture_structure used (can't determine NumClockTs)
---------------------------

Just for testing, similar issues with a transmuxed *.ts using "tsremux":

---------------------------
Warning
---------------------------
Found NALU w/ forbidden_bit set, bit error? Let's try...

Hit Yes to continue with further DGAVCIndex error/warning popups, hit No to disable them.
---------------------------

Hitting "No" here makes DGAVCIndex crash (with "Send report to MS?"). With "Yes" there are lots of more errors, you can try yourself (didn't want to bloat this reply; if you need, ask me for them).

Opening the raw stream demuxed using "tsremux" works well.

Guest
13th February 2008, 15:25
M2TS support is broken. I'll fix it in the next version, which will also have audio demux. Thank you for providing this test stream.

Atak_Snajpera
13th February 2008, 15:46
which will also have audio demux

Don't forget about audio delay :) Thanks!

Guest
13th February 2008, 18:40
Don't forget about audio delay :) Thanks! What do you mean by that? Is there some particular design that you are hoping for?

As it happens, I am experimenting in this area. At first I will release a version with no solution just to get feedback on my demuxing code. Meanwhile I'll continue my experiments and follow up with another version with some solution.

BTW, the M2TS bug is fixed and I'm just regression testing and testing all the transport streams with audio that I can find before giving you a new version.

Atak_Snajpera
13th February 2008, 19:53
What do you mean by that? Is there some particular design that you are hoping for?

Let's say some noob didn't cut TS files on Keyframes. Then he tries to encode file but after that he realizes that audio is out of sync. Some badly cut samples should be still available on x264.nl :) In Dgindex you store audio delay in file name so you could use the same method or cut audio according to keyframe. It's up to you.

Guest
14th February 2008, 21:26
I'm about to release a version with audio demuxing. I have the following supported:

MPEG audio
AAC ADTS (not LATM/LOAS yet)
AC3

I can add DTS and LPCM if needed, but I need test streams for that. So does anybody have any transport streams with AVC video and audio in a format not listed above? If so, please make the streams available so I can add support for them. Thank you.

Atak_Snajpera
14th February 2008, 22:46
http://www.mediafire.com/?ezyxmgmioss - m2ts with DTS

http://www.mediafire.com/?bzojtnioymt - ts with DTS , and 3 AC3

Guest
15th February 2008, 02:03
Thanks.

But are you sure about the first one? Everything I have says there is no audio in that stream.

check
15th February 2008, 02:53
does AC3 include EAC3?

ChronoCross
15th February 2008, 03:21
Thanks.

But are you sure about the first one? Everything I have says there is no audio in that stream.

I can hear it when I playback in nero.

Guest
15th February 2008, 03:47
does AC3 include EAC3? Maybe. Do you have a test stream for me?

Flaarn
15th February 2008, 10:46
I think neuron2 may have some "fun" with the audio delay if he decides to implement it, my own experience with broadcast streams that have demuxed so far has always required some manual syncing as none of the demuxers seem to give identical output and what something like pts calc gives as the offset, and what the output is from the demuxer dont always marry up, what I mean here is a lot dont seem to output from what many folks would regard as a valid startpoint hence the need for some manual intervention.
Something I would like clarified if possible the switches between 2.0/5.1 do they throw a spanner in the works or not, some of the information I've come across suggests it's a change in bitrate ie 192/384 etc, that can cause an issue rather than the amount of channels but i've also come across information that suggests different, in any case I've found one size does not fit all so far.
Something that actually gets it right would be great. :)

Guest
15th February 2008, 23:55
I can hear it when I playback in nero. It's using another "undocumented" stream type: 0x82. So I added code to interpret that as DTS and it is working now.

This is the last call for TS streams before the first release with demuxing. I now support MPA, AAC, AC3, and DTS. I can try to add EAC3 (which may work already; I've no test stream) and LPCM. If you want something supported, send me a link to a stream.

BTW, the new design allows for demuxing all audio streams at once, instead of having to demux each PID separately (as in DGIndex).

Atak_Snajpera
16th February 2008, 00:20
It's using another "undocumented" stream type: 0x82. So I added code to interpret that as DTS and it is working now.

File was muxed with TSMuxer :) I just wanted to make sure that your app will also support files muxed with this tool.


How did you solve problem with correct audio delay? For example xport cuts audio stream according to first key frame , DGindex stores delay value in filename...

Unearthly
16th February 2008, 00:41
http://www.mediafire.com/?5n0czjmvxtg - m2ts with stereo LPCM.

Guest
16th February 2008, 01:02
File was muxed with TSMuxer :) I just wanted to make sure that your app will also support files muxed with this tool. I hope the author is following the appropriate specifications.

How did you solve problem with correct audio delay? For example xport cuts audio stream according to first key frame , DGindex stores delay value in filename... I haven't decided yet. The first version just starts outputing audio at the first audio frame header following the first decodable frame. Video starts at the first decodable frame. So they're likely to be close. Let me know how it works.

@Unearthly

Thank you for the test stream.

Southstorm
17th February 2008, 01:58
@neuron2

Just wanted to say thankyou for some excellent programs.
They make life that much simpler!

Guest
18th February 2008, 00:00
This is the first cut at audio demuxing. Notes:

* The paradigm for setup of audio PIDs and demuxing is different than in DGIndex, so read the users manual! This version allows all PIDs to be processed at the same time. (The idea of moving it from the Stream menu is to allow for generalizing it to include MP4 files later.)

* AAC LOAS/LATM not yet supported.

* AV sync solution not yet decided. Currently, audio starts at the first audio frame after the start of the first decodable picture.

* CLI for audio demux not yet implemented.

* An audio stream must be listed in the PAT/PMT for demuxing to work. This limitation will be removed in a future version.

* M2TS support was fixed. E.g., the "wedding" stream now works if you dismiss the libavcodec errors, which appear harmless.

http://neuron2.net/dgavcdec/dgavcdec100a16.zip

Atak_Snajpera
18th February 2008, 01:11
Excellent job!!!

I have suggestion for new version

AV sync solution not yet decided. Currently, audio starts at the first audio frame after the start of the first decodable picture.

Audio should start at first IDR frame otherwise after encoding I have bad a/v synch. You may try yourself with astra.ts sample at x264.nl. If I cut properly ts file with Transport Stream Packet Editor everything is ok.

CLI for audio demux not yet implemented.

I'm waiting for this :) Once it's ready I will get rid of Haali + h264tsto + dump.ax method to demux all audio streams in RipBot264.

Guest
18th February 2008, 01:14
I'm waiting for this :) Once it's ready I will get rid of Haali + h264tsto + dump.ax method to demux all audio streams in RipBot264. How do you want it to work? Will you specify the PID only? How do you know the PID? Do you know the audio type or will you expect DGAVCIndex to figure it out? The more details you give me, the more likely it is that the CLI will meet your needs.

Still pondering AV sync issues... I have streams with no IDRs, just recovery points. So your idea is a non-starter. Remember, the first decodable frame is either an IDR or a recovery point.

Atak_Snajpera
18th February 2008, 01:34
How do you want it to work?
I would like to demux all audio streams at once. Currently I use h264tsto with -audioonly -demux switches. So I get every detected audio stream from TS/M2TS.

Do you know the audio type or will you expect DGAVCIndex to figure it out?
It would be nice if DGAVCIndex detects audio automatically.

Still pondering AV sync issues... I have streams with no IDRs, just recovery points.

Where did you get those streams? They must be very rare. BTW. Did you check method used by xport ?

foxyshadis
18th February 2008, 04:05
Where did you get those streams? They must be very rare. BTW. Did you check method used by xport ?

TV stations make them like crazy.

neuron2, why not start audio at first IDR or recovery point then? Wherever the first decodable video frame is, start decoding audio. Might be a bit difficult for video with multiple slices with recovery points on different frames on different slices (for rate control reasons). hmmm. But then I don't know how you deal with those anyway. (Don't have a sample handy.)

Guest
18th February 2008, 04:37
neuron2, why not start audio at first IDR or recovery point then? Wherever the first decodable video frame is, start decoding audio. That's what I am doing! I said I start demuxing at the first IDR or RPS, which is the same as the first decodable frame.

http://forum.doom9.org/showthread.php?p=1100913#post1100913

@Atak_Snajpera

Just for fun I played with h264tsto. It dumps all audio types as files with extension .mpa. How then do you know the audio types? Or don't you care?

I also have streams for which it does not demux the video correctly.

Snowknight26
18th February 2008, 05:25
I'm trying to open the 1st of the two main .m2ts files for Stranger Than Fiction, but when I try, DGAVCDec crashes after I dismiss the NALU error. Infact, all the .m2ts for that movie crash it.

Just tried the Jesse James .m2ts files, but this time it couldn't detect the PIDs properly. Even tried to set them manually but no go.

Then finally, tried the Tudors .m2ts files.. those seem to work fine (except seeking is a little strange).


Need some samples?

Guest
18th February 2008, 05:33
Need some samples? No, I'll just wave my magic wand. :)

Let's put it this way...if you want it fixed you'll provide streams that let me duplicate your issue.

Snowknight26
18th February 2008, 05:50
I thought you were some master of telekinesis, my mistake. D:

http://www.stfcc.org/misc/stf.clip.m2ts
http://www.stfcc.org/misc/jessejames.clip.m2ts

Edit: Scratch that.. I must be getting old. Neither of them are AVC. Sorry for the false hope of being able to fix something. ><
However, it would be nice for DGAVCDec to give some kind of warning message box saying that the format is invalid instead of crashing.

LigH
18th February 2008, 08:52
* M2TS support was fixed. E.g., the "wedding" stream now works if you dismiss the libavcodec errors, which appear harmless.

Hooray! :thanks:

G_M_C
18th February 2008, 09:04
I thought you were some master of telekinesis, my mistake. D:

http://www.stfcc.org/misc/stf.clip.m2ts
http://www.stfcc.org/misc/jessejames.clip.m2ts

Edit: Scratch that.. I must be getting old. Neither of them are AVC. Sorry for the false hope of being able to fix something. ><
However, it would be nice for DGAVCDec to give some kind of warning message box saying that the format is invalid instead of crashing.

:p

Just for fun: Neuron2, you could maybe implement a check + error-message that says "Oops, dont recognise this video-stream. Are you shure it's AVC ?". Or if you detect it's MPEG2, "This is not a AVC-stream, but an MPEG2-stream. You might want to use DGIndex instead"

Just for all of us that are getting old (like ... me too, as i allmost made the same error :D )

canTsTop
18th February 2008, 11:23
hello, thank you for DGAVCDec updates

i have this sample http://www.mediafire.com/?bybsn2brxm5
then i open it with DGAVCDec and preview, i get this error:

http://img149.imageshack.us/img149/4402/12546173ye6.png

and if i move slider with, DGAVCDec crashes.

in ffdshow-tryout there is update for libavcodec:
Updated libavcodec.
H.264 decoding now supports interlaced + spacial direct mode.
here is link http://ffdshow-tryout.svn.sourceforge.net/viewvc/ffdshow-tryout?view=rev&revision=1837

maybe you can update libavcodec next time

p.s. i dont know if you missed this, or here is everything is ok
TFF shows in beginning, not in the end, my PC is slow and i can see when it saving project, last frame is Frame

this is beginning of that sample http://rapidshare.com/files/77636850/222.264_0.html
in this is showing TFF in information window in the end, then you save project

here is video of this http://rapidshare.com/files/77668545/proof.avi.html


sorry for bad english

Guest
18th February 2008, 11:31
Then finally, tried the Tudors .m2ts files.. those seem to work fine (except seeking is a little strange).
What about this one? What do you mean by strange? Do you want me to look at it?

Guest
18th February 2008, 11:37
@canTsTop

Thank you for pointing out the libavcodec update. I'll upgrade.

Yes, I missed your other post. I downloaded the video but it was all black. Then I couldn't download the test stream because my "download limit" was reached. Please use a proper upload site or explain better what your problem is. Is it just a case of the stream switching to Frame at the end? That's not illegal or unusual. Why do you think it is a problem?

Guest
18th February 2008, 11:41
Neuron2, you could maybe implement a check + error-message that says "Oops, dont recognise this video-stream. Are you shure it's AVC ?". Or if you detect it's MPEG2, "This is not a AVC-stream, but an MPEG2-stream. You might want to use DGIndex instead" I'll try to move that up in priority.

canTsTop
18th February 2008, 12:14
this is sample http://www.mediafire.com/?8iavxrftzm9

and its in all sample, not in last frame

then i load it in DGAVCDec and go File>Preview i see this:
http://img262.imageshack.us/img262/615/70009161lf8.png

then i save project (file>save project) i see this:
http://img262.imageshack.us/img262/520/32382630kx6.png

i dont understand why then i preview sample its: Fields (BFF)
then save project its: Fields (TFF)

here is video of this, converted to xvid http://www.mediafire.com/?3zzmzgkmgmx

Atak_Snajpera
18th February 2008, 12:30
Just for fun I played with h264tsto. It dumps all audio types as files with extension .mpa. How then do you know the audio types? Or don't you care?

I use MediaInfo.dll to detect audio streams and then rename files with correct extension. However MediaInfo is not perfect and sometimes AC3 or DTS is detected as VC1 (!?!?). But I found solution. If input file has AC3 extension instead of MPA then it will be correctly detected as DTS or AC3. Weird.

Guest
18th February 2008, 15:07
If input file has AC3 extension instead of MPA then it will be correctly detected as DTS or AC3. Weird. OK, but if the splitter gives all MPA extensions, how do you know to rename them to AC3?

Atak_Snajpera
18th February 2008, 15:10
OK, but if the splitter gives all MPA extensions, how do you know to rename them to AC3?

I rename all mpa to AC3. So all my streams have AC3 extensions instead of mpa. Then I use mediainfo to get real extensions.

Guest
18th February 2008, 15:29
@Atak_Snajpera

LOL. I'm going to give you the right extensions.

@canTsTop

It's a bug that I will fix. Thank you for pointing it out.

Diodato
18th February 2008, 22:13
Hi Donald,

First of all thank you for your work.
If I can bias your decision about A/V synch I would greatly appreciate PTS based. From my experience DVB-S2 transmissions have a hefty audio delay respect to video. The sample stream indicated has almost a 3000ms audio "delay". Yes, I know, I can always adjust it afterwards, but would be nice to have a PTS based option :)
How do you handle corrupt streams? Skip to the nearest IDR or RPS? And the audio in that case?

Greetz

http://rapidshare.com/files/92970704/mad1.ts.html

Guest
18th February 2008, 22:34
I would greatly appreciate PTS based. From my experience DVB-S2 transmissions have a hefty audio delay respect to video. The sample stream indicated has almost a 3000ms audio "delay". Yes, I agree that assuming the audio and video are aligned in the stream is not correct. So, at a minimum I will still display the offset. My current debate with myself is whether to leave it at that or try to create "zero-delay" demuxed streams.

How do you handle corrupt streams? I don't. I think fixing those should be for a preprocessing tool.

Renzz
19th February 2008, 11:56
Hi Neuron2 - thanks for this great bit of software. It certainly makes life easier.

However, I'm having a problem demuxing the AC3 track out of a BBC-HD TS *after* it has been edited using H264TS_Cutter (http://www.h264tscutter.de/). Ok, it's obviously something this software is doing to the stream, but it seems to play ok after in MPC, and TSRemux can recognise and demux it so I'm not sure. Basically, DGAVCIndex doesn't seem to detect the AC3 track and doesn't demux it. It does work fine on the unedited TS file.

What happens is that I only get the MPEG track demuxed, not the AC3 one.

I've put a small sample of the cut TS at http://www.mediafire.com/?9mjmqzwfmym

Again, I fully understand if you say that it's H264TS_Cutter that's at fault, and not DGAVCIndex.

Thanks again

Guest
19th February 2008, 15:13
As I wrote above:

* An audio stream must be listed in the PAT/PMT for demuxing to work. This limitation will be removed in a future version.

ArcticFox
19th February 2008, 22:06
Is there any reason why you cant add more than 1 .ts file so it creates 1 dga file for the 3 clips i have combined?

Guest
20th February 2008, 00:20
Is there any reason why you cant add more than 1 .ts file It's not yet implemented. For now, you can join them outside DGAVCIndex, e.g., with DOS copy /b

Guest
22nd February 2008, 01:41
1. libavcodec.dll was updated to the version from ffdshow-tryouts version 1837. This fixes decoding of some streams that previously didn't work.

2. Audio demuxing was redesigned so that streams do not need to be present in the PAT/PMT to be demuxed. A Preview operation will show all detected audio streams in the Info display; they do not have to be selected for demuxing.

3. TFF/BFF reporting for field structure streams was fixed.

4. CLI support for audio demuxing was added (-a).

http://neuron2.net/dgavcdec/dgavcdec.html

Renzz
22nd February 2008, 11:00
Hi Neuron2 - thanks for this, I can now demux the AC3 audio out of my BBC HD stream where it's not listed in the PAT/PMT.

One minor problem, though - after it's finished, DGAVCIndex seems to retain an exclusive file lock on the AC3 file, preventing anything from opening it. Even closing the TS doesn't release it, so you have to close the prog.

Guest
22nd February 2008, 15:25
That doesn't happen for me. Please tell me the exact steps you go through to make this happen.

Renzz
22nd February 2008, 15:44
I open the TS (just a single file), then go to Audio/Audio Demux and select only the AC3 track (click 'Set' then 'Done'). I then do Save Project, it gives me a warning about decoding not starting with an IDR picture and I click 'No' to disable further warnings. It then does it's stuff, and finishes. At this point, I can't open the AC3 file - I have Unlocker installed and that confirms the dgavcindex.exe has a lock on. There's no lock on the .dga file.

Guest
22nd February 2008, 16:15
OK, I found the problem. Will fix for the next version. Thanks for pointing it out.

Atak_Snajpera
22nd February 2008, 17:46
One cosmetic change in next version : demuxed audio with .mp2 or .mp3 instead of .mpa :)

karl_lillevold
22nd February 2008, 18:12
I received some Sony HDCAM footage in m2ts format, and set out to convert with dgavcdec. Little did I know of Sony's evil plan. I found this post (http://forum.doom9.org/showthread.php?p=1084239&highlight=sony+m2ts#post1084239) by langman10 : "...these are files taken on what I believe is a Sony camera that records to Blu-Ray, which brings Sony's own pseudo-format of transport stream complete with an extra 4 bytes per packet".

So I guess there's little hope of being able to use dgavcdec ..?

DGAVCIndex a17 reports "Found NALU w/ forbidden bit set", then crashes.

EDIT: I am able to view it with Haali Media Splitter -> CoreAVC Decoder in graphedit, but DirectShowSource in Avisynth crashes. Well, there is progress. I will update these to the latest versions.

Guest
22nd February 2008, 20:01
So I guess there's little hope of being able to use dgavcdec ..? There's hope if you provide a test stream. :)

M2TS is supported in DGAVCDec.

DGAVCIndex a17 reports "Found NALU w/ forbidden bit set", then crashes. That usually happens when the video is not AVC.

karl_lillevold
22nd February 2008, 20:05
I will PM the location of my stream. I was told by the camera operator that it is AVC, and with Haali + CoreAVC I was able to view the video in 1440x1080, so chances are high it is AVC :)

Thanks!

SeeMoreDigital
22nd February 2008, 20:29
I will PM the location of my stream. Hi Karl,

May I have a link to this stream too please? I'd like to add it to my collection.


Many thanks

SeeMoreDigital
22nd February 2008, 21:27
Hi Karl,

Thanks for the link..... Here's something you may find of interest!

If you run your sonyhdcamsample.m2ts file thru' TSremux or TSmuxer and re-mux it to .TS (instead of .M2TS). DGAVCDec Alpha 17 is able to open it (after pressing "No" to the warning).


Cheers

Guest
22nd February 2008, 21:31
How did you download that so fast? Did you get a smaller sample? If so, I want that, because 700MBytes is a PITA for me.

CruNcher
22nd February 2008, 21:32
.m2ts can save some metadata stuff maybe that makes problems here it saves for example shutter speed, focal point and timecode i would wish that dgindex would support this :) (AVC and Mpeg-2 Version) and display it in the Preview Window would be nice for now i use HDVinfo for Avisynth to get those info (works nice).

karl_lillevold
22nd February 2008, 21:32
Yes, I have made a 25 MB sample (https://tobor2.prognet.com/~klillevold/pub/) for your download convenience :)

EDIT: added link to file, file will automatically disappear after a day or two...

karl_lillevold
22nd February 2008, 21:41
TSRemux 188 byte TS output:
DGAVCIndex gives no errors.

Opening avcsource via Avisynth in VDub:
AVCSource: No GOPs found (no IDRs or recovery points)

TSRemux to 192 byte output still crashes DGAVCIndex.

Will look into the other suggestions when I have time later today (TSmuxer and HDVinfo)

EDIT: It sees 188 byte TS output also results in the same DGAVCIndex warning, and then crash when I press "No".

Guest
22nd February 2008, 22:04
OK, I have it fixed. It was a bug in my code to detect M2TS on file open, so the code thought it was an elementary stream.

I'll give you a fix when I get home tonight. Also a fix for the demuxed audio being held locked.

SeeMoreDigital
22nd February 2008, 22:06
Hi Don,

Should this not read 16:9?

http://i25.tinypic.com/15hg7qp.jpg

Frame size is 4:3. The output is 16:9....


Cheers

Guest
22nd February 2008, 22:13
No, it is correct. In AVC, that is the stretch ratio. It is telling the decoder to stretch the coded 1440x1080 by 4:3 for display. You turn 4:3 into the fraction 4/3 and multiply the coded width by that to get the display width.

4/3 * 1440 = 1920

karl_lillevold
22nd February 2008, 22:13
hey, that's me and one of my R/C helis ;)

Isochroma
22nd February 2008, 22:16
About the aspect ratio, it seems that DGAVCDec should report the AR as 16:9, rather than reporting how much it must be stretched to look right. After all, the value reported is "aspect ratio" not "stretch amount".

Guest
22nd February 2008, 22:22
About the aspect ratio, it seems that DGAVCDec should report the AR as 16:9, rather than reporting how much it must be stretched to look right. After all, the value reported is "aspect ratio" not "stretch amount". I prefer to follow the terminology of the AVC specification. After all, that Info field is reporting the value of the aspect ratio syntax element, and it is specified (correctly) as 4:3.

Don't you chaps read specs? :)

I'll clarify the users manual a bit more. After all, saying there that it is the stretch factor is apparently not enough. ;)

Isochroma
22nd February 2008, 22:24
It probably isn't enough, considering that the text in the UI next to the value says "Aspect Ratio", not "Stretch Amount". People make mistakes, especially when they are misled.

Guest
23rd February 2008, 03:36
* Fixed a problem that caused some M2TS files to be detected as elementary streams.

* Fixed a problem that caused demuxed audio files to be held locked by DGAVCIndex.

* MPEG audio is now demuxed with file extension .mp1, mp2, or mp3, depending on the layer detected (previously .mpa was always used).

http://neuron2.net/dgavcdec/dgavcdec.html

On some streams, libavcodec.dll reports an unknown NAL unit type. If you dismiss the warnings things seem to go OK. I've verified that no such NALU is being passed from my code and I'm investigating the reason for this warning. For now, just dismiss these messages.

hajj_3
23rd February 2008, 19:04
nice progress:)

Atak_Snajpera
23rd February 2008, 22:20
Neuron I've discovered something weird. If I open this file http://www.sendspace.com/file/rjohqw via command line with -h switch DGAVCIndex crashes but if I remove -h everything is fine.

http://img299.imageshack.us/img299/4513/new1aq1.th.png (http://img299.imageshack.us/my.php?image=new1aq1.png)

Guest
24th February 2008, 03:54
Neuron I've discovered something weird. Yes, it is indeed weird. Here's what happened. You cut the stream and truncated an SEI message at the end of the file. The SEI parser code that I took from the JM reference software happily keeps parsing past the end of the available data and runs into whatever is on the stack. On the stack after the SEI message buffer is the command line string. So when the -h is not there the parser fortuitously terminates and returns. When the -h is there, it carries on and blows past the size of the SEI message buffer and crashes.

I put a check in to prevent this. I didn't want to make a new release so I updated the alpha 18 package. Please re-download it and test it.

But worse, this points up a deficiency of the AVC specification. The spec says that the end of a NALU is determined by when the following NALU starts, or when EOF is encountered. That means the spec gives no way to avoid passing back a truncated NALU at the end of the file (because there's no way to know the NALU isn't complete when we hit EOF). It's up to the application to not crash! So I'll probably have to implement a try/except block because finding and testing all possible crash locations is not ideal. For now, I've just patched the SEI parser, as this is the only known crashing case on premature EOF to date.

Thank you for finding this weird issue. :p

Guest
24th February 2008, 06:04
It probably isn't enough, considering that the text in the UI next to the value says "Aspect Ratio", not "Stretch Amount". People make mistakes, especially when they are misled. As I explained, the name of the field in the AVC specification is "sample aspect ratio" (section E.2.1 and Table E.1). You have an attitude problem if you think that by following the specification I am misleading people.

Isochroma
24th February 2008, 08:50
The unqualified term "aspect ratio (http://en.wikipedia.org/wiki/Aspect_ratio_%28image%29)", generally refers to "Frame Aspect Ratio". It has been since the first days of photography and beyond into film, the width of the frame, divided by its height. It is the final presentation geometry, after whatever the industry has defined as corrective measures.

What the AVC specification calls "sample aspect ratio" or as it is also known, "pixel aspect ratio (http://en.wikipedia.org/wiki/Pixel_aspect_ratio)" aka. "PAR" (Windows Media Encoder), is usually referred to using those qualified names, in order to differentiate it from the unqualified term.

If you don't believe me, then show me one example of image or video software where the UI refers to the unqualified term "Aspect Ratio" and the value presented is not presentation width divided by height, aside from your own.

If you want to present various values, here's a couple good ways to do it:

Resolution: 1440x1080
Aspect Ratio: 16:9
Pixel Aspect Ratio: 4:3

or

Resolution: 1440x1080
Frame Aspect Ratio: 16:9
Pixel Aspect Ratio: 4:3

Brother John
24th February 2008, 18:11
Imo Isochroma has a valid point. “Aspect Ratio” is ambivalent. We’ve been living with DVD’s DAR 4:3 for years and now there’s PAR 4:3 for HD material. That’s a prime source of confusion. Even SMD got trapped, and he’s anything but a newbie.

Why not change the name to “Pixel AR” or “Sample AR”? AR is a very well known acronym. Such a labelling would be precise, would fit into the current dialog width and prevent confusion at least among the more experienced users.

SeeMoreDigital
24th February 2008, 18:14
How about something like this: -

http://i29.tinypic.com/1t7i88.png

G_M_C
24th February 2008, 18:30
How about something like this: -

http://i29.tinypic.com/1t7i88.png

Actually,

That not bad ... good compromise :)

Isochroma
24th February 2008, 19:33
There's many ways to provide the frame/pixel information to the user unambiguously, as the suggestions indicate. A garden of variety from the creativity of society.

Guest
24th February 2008, 20:19
Here's what I did.

http://neuron2.net/misc/sarinfo.jpg

...and here is the help text:

Frame Size - Displays the encoded size of the frame in the currently displayed video. Note that this is the encoded frame size, which differs from the display frame size (see below).

SAR - Displays the sample aspect ratio specified in the AVC stream.

Display Size - Displays the display frame size that results from applying the SAR to the encoded frame size. Here's how it works: Suppose you have a 1440x1080 video with a reported SAR of 4:3. You convert 4:3 to the fraction 4/3 and multiply that by 1440, giving a display width of 1920. Thus, the SAR field will show 4:3 and the Display Size field will show 1920x1080 as the display size.

@SeeMoreDigital

Where'd you get the source code for my dialog box? :confused:

Snowknight26
24th February 2008, 20:30
Its easy to change it neuron2... either with photoshop or a resource hacker.

Guest
24th February 2008, 20:39
or a resource hacker Wouldn't he need my resource files for that?

And while I'm asking dumb questions... Why is his window pretty and mine is clunky?

Snowknight26
24th February 2008, 21:19
Wouldn't he need my resource files for that?

And while I'm asking dumb questions... Why is his window pretty and mine is clunky?

It's in the exe. (http://www.angusj.com/resourcehacker/)

Hes using the default XP theme, you're using the other one.

SeeMoreDigital
24th February 2008, 21:33
Hi Donald,

Nice one, that GUI is a great compromise :)

There's no mystery to what I did. I took a screen grab of DGAVCIndex using HyperSnap (with WinXP Home) and manipulated the resulting image.

I'm not clever (or disrespectful) enough to pinch or alter source code :eek:


Cheers mate

Guest
24th February 2008, 21:59
It's in the exe. (http://www.angusj.com/resourcehacker/) Wouldn't that be a rule 6 violation? :)

He's using the default XP theme, you're using the other one. You mean I can change my theme? Who'd have known?

I'm not clever (or disrespectful) enough to pinch or alter source code Actually, it's available upon request. I usually wait for the first beta to publish it.

Thanks for the answers guys. I learned something today! It's not quite as much fun as being corrected by scharfis_brain, but it'll do. :)

Snowknight26
24th February 2008, 22:37
Wouldn't that be a rule 6 violation? :)

I don't see how. It only changes dialog box locations/strings/icons.

You mean I can change my theme? Who'd have known?

Then why'd you ask? :p

Guest
25th February 2008, 01:47
>Then why'd you ask?

My brain fart was telling me that all this was involved:

http://virtualdub.org/blog/pivot/entry.php?id=164#body

Which is really stupid because I have the XP theme on my PC at work, loaded by our corporate staff. Hmmm, desktop properties. Who'd have thunk it?

What does that stuff Avery is talking about look like? I give anyone permission to post a totally off-topic screenshot here to show me. Maybe it would be nice for my tools.

squid_80
25th February 2008, 06:05
He's talking about making the app use common controls v6 instead of v5.

I compiled dgindex with this line in mpeg2dec.cpp: #pragma comment(linker,"/manifestdependency:\"type='win32' name='Microsoft.Windows.Common-Controls' version='6.0.0.0' processorArchitecture='x86' publicKeyToken='6595b64144ccf1df' language='*'\"")

Pictures:
http://216.75.63.164/andrew/dgindex%20file%20list.JPG

http://216.75.63.164/andrew/dgindex%20bar.JPG

Personally I dislike v6 and prefer the old style. Also the changes here are fairly innocuous, it's when you use combo-boxes and tabs that things start to get messed up like Avery mentioned.

halsboss
26th February 2008, 11:16
Did a DGAVCIndex.exe over a .h264 file which successfully created the .dga file. Couldn't understand why my script poking the filtered video into HC failed, so created this simple script and tried to open it in Vdub
LoadPlugin("C:\SOFTWARE\DGAVCIndex\DGAVCDecode.dll")
AVCSource("G:\DVD\NAB.Cup.Rd2.Adelaide.v.Fremantle\NAB.Cup.Rd2.Adelaide.v.Fremantle.dga", deblock=true)
AssumeFPS(29.97)
SetPlanarLegacyAlignment(True)
but it throws the error AVCSource: could not open one of the input files...
Top part of the .dga file:

DGAVCIndexFile6

G:\DVD\NAB.Cup.Rd2.Adelaide.v.Fremantle\NAB.Cup.Rd2.Adelaide.v.Fremantle_track1.h264
C:\SOFTWARE\DGAVCIndex\libavcodec.dll

STREAM 0
FO 0

LPOC 0
SPS 1
PPS 30 0
IDR 663
FRM 7 0
FRM 5 1
FRM 5 2
FRM 5 3
FRM 5 5
FRM 6 4
FRM 5 9
FRM 6 7
FRM 6 6
FRM 6 8
FRM 5 13
FRM 6 11
FRM 6 10
FRM 6 12
FRM 5 14
FRM 5 15
FRM 5 16
FRM 5 17
FRM 5 18
FRM 5 19
FRM 5 20
FRM 5 21
FRM 5 22
FRM 5 23
FRM 5 24
FRM 5 25
FRM 5 26
FRM 5 27
FRM 5 28
FRM 5 29
FRM 5 30
FRM 5 31
FRM 5 32
FRM 5 33
FRM 5 34
FRM 5 35
FRM 5 36
FRM 5 37
IDR 111700

any suggestions ?

Guest
26th February 2008, 15:05
The DGA path string has "_track1" at the end and the AVS script path string is missing it.

halsboss
27th February 2008, 00:33
of course. cut'n'pasted wrongly. silly me. too late at night. thankyou.

halsboss
5th March 2008, 01:29
Kudos to neuron2 in post
http://forum.videohelp.com/topic346331.html?sid=9964c95820e1596af389ac5915dcdf8f#1817866

Guest
5th March 2008, 01:58
Thanks for the link. It's always satisfying to see that one's efforts are useful to someone.

Now that DGMPGDec 1.5.0 RC3 is out too, I am going to take a break from the Big 2 and make a new version of FDecimate() that more accurately decimates duplicates, observing a maximum allowed running AV desync tolerance. It'll be basically a one-pass MultiDecimate on steroids.

Gannjunior
8th March 2008, 00:47
Hi neuron,

any progress about the possibility to read .m2ts from AVCHD camera as sony, panasonic, canon... ?

if you need some .m2ts panasonic "raw" for testing, i can upload for you.

thanks in advance for your great work!

ciao

Atak_Snajpera
8th March 2008, 00:50
what about the possibility to read .m2ts from AVCHD camera as sony, panasonic, canon... ?

I have samples from Canon and sony and everything is ok! DGAVCDec indexes without problems...

Gannjunior
8th March 2008, 00:57
really? maybe the problem is only with panasonic... just tried again with alpha 18 on my m2ts from panasonic SD1, but it doesn't work...

Atak_Snajpera
8th March 2008, 01:12
Send sample to Neuron2

Gannjunior
8th March 2008, 02:06
ok, here it is a sample for neuron:
http://www.savefile.com/files/1426101

ciao!!

Guest
8th March 2008, 05:02
It worked just fine for me in alpha 18. What do you mean exactly when you say "it doesn't work"?

jase99
9th March 2008, 17:43
Hi neuron2, I find that deblock=false produces sharper, more detailed images on fairly static scenes but produces more blocking in fast motion scenes. I was looking at a 1080p hd broadcast. Reading various posts around the net this appears to be what is expected, i.e., that deblocking smoothes (and therefore reduces detail) in the image, do you agree?

Why has deblock=false been made available as an option? I understand deblock=true is a mandatory part of the spec. Would you be able to provide a scenario where deblock=false may be desirable?

Inventive Software
9th March 2008, 18:27
Mandatory inloop deblocking is only compulsory if there isn't an option to disable it. libavcodec has that option to disable it, consequently DGAVCDecode does. If I'm wrong, please correct me.

If you're finding non-deblocked passages better than when it's enabled, consider using "Trim" in AviSynth, with AVCSource("file.dga",deblock=false) or AVCSource("file.dga",deblock=true) for the relevant sections. Those are off the top of my head, and may be incorrect.

Guest
9th March 2008, 20:25
Why has deblock=false been made available as an option? I understand deblock=true is a mandatory part of the spec. Would you be able to provide a scenario where deblock=false may be desirable? It seemed like a fun thing to do at the time, just to investigate the effect of turning it off. It has no real practical use.

jase99
10th March 2008, 12:31
Thanks for the info :)

Sharktooth
10th March 2008, 18:12
It seemed like a fun thing to do at the time, just to investigate the effect of turning it off. It has no real practical use.
it has... speeds up the decoding at the cost of some blocking.
anyways, at very low quantizers, blocks are rare, so sometimes skipping the deblocking is safe.

Gannjunior
13th March 2008, 09:58
It worked just fine for me in alpha 18. What do you mean exactly when you say "it doesn't work"?

now it worked. i was under vista 64...but, under xp 32, my panasonic avchd stream worked fine in alpha 18... ;-)

another question: i just demuxed video stream from an hddvd by EVOdemux, obtaining an .mpv file... but i'm not able to run it in alpha 18 neither under xp 32...is that possible?

thank you!

Atak_Snajpera
13th March 2008, 10:06
It is possible because DGAVCDec means AVC decoding not VC-1. Simple!

Gannjunior
13th March 2008, 10:18
when i'll arrive at home i check, but i believe to remember that film has the main video in avc stream, and the special extra streams in mpeg2...

Gannjunior
13th March 2008, 21:04
just arrived at home and checked the stream...off course dgavc wasn't able to read it...atak you were right...the video stream is VC1...but what is strange is that i'm now reading on my hddvd box that video stream is AVC...:rolleyes:

ciao!

Encoder888
14th March 2008, 05:29
I have a few problems with DGAVCDec. First of all, it quite frequently crashes, especially if i'm trying to do other things while it's indexing a file. If I leave it alone, most of the time it will finish. But that's not the main problem. I demuxed a Blu-Ray audio file (tried Superbad and Spider-Man 3) and the original raw .pcm that the program created is total garbage. I mean, you can play it and you can tell it's the English audio, but the quality is absolutely horrible, it's full of noise and just completely unusable. I was wondering if anyone else had the same issue and how you solved it? When can we expect a stable release ?

Atak_Snajpera
14th March 2008, 08:02
Send sample to neuron2 (m2ts)

Guest
14th March 2008, 13:40
@Encoder888

You are the only person reporting crashes during indexing, so you might look to your system for the cause of any instability.

If you want me to look at your audio issue, you have to provide a link to a good sized chunk of your M2TS. You can use DGSplit to split off the first 50MBytes and then upload it to a hosting site. Alternatively, you can upload it to my FTP site if you prefer. I'll PM you the password if you request it.

The measure of how badly you want this issue addressed is how much effort you are willing to expend to get me a source sample. :)

Guest
15th March 2008, 01:48
1. Changed the name of the "Aspect Ratio" field in the Info display to "SAR".

2. Added a "Display Size" field to the Info display.

3. Fixed a bug in demuxing of LPCM audio from transport streams.

http://neuron2.net/dgavcdec/dgavcdec.html

@Encoder888

This is what you are looking for.

Atak_Snajpera
15th March 2008, 12:51
Fixed a bug in demuxing of LPCM audio from transport streams.
Neuron, What do you think about demuxing directly to PCM (*.wav) instead of LPCM (.pcm) ?

buzzqw
15th March 2008, 13:15
Neuron, What do you think about demuxing directly to PCM (*.wav) instead of LPCM (.pcm) ?

my doubt is that wav file over 2 gb (easy with 6 channel) loose index (iirc) and so isn't well suited for decoding via standard methods

i prefer a raw pcm, decode to lossless flac then encoded to whatever encoder you want (as i do in new automkv)
or piping from raw pcm to encoder ... but intermediate wav.. could be a perilius trail

BHH

Diodato
17th March 2008, 00:14
Hi Donald,

I have a problematic TS stream. Can you take a look?
Remuxed with tsRemux or tsMuxeR works fine with alpha 19, but not the original DVB-S2 stream.

http://rapidshare.com/files/100092112/intro.ts.html

Guest
17th March 2008, 01:08
Please use a host that doesn't have a download limit. I already downloaded a file from there today and they want me to pay now. :p

Maybe megaupload.com.

bob0r
17th March 2008, 02:17
Hi Donald,

I have a problematic TS stream. Can you take a look?
Remuxed with tsRemux or tsMuxeR works fine with alpha 19, but not the original DVB-S2 stream.

http://rapidshare.com/files/100092112/intro.ts.html

Please use a host that doesn't have a download limit. I already downloaded a file from there today and they want me to pay now. :p

Maybe megaupload.com.

http://files.x264.nl/intro.ts

Guest
17th March 2008, 04:03
Thanks, bob0r.

If I demux it with xport and then open the elementary stream in DGAVCIndex, it's OK. So there's something wrong with my transport parsing. Investigating...

laserfan
18th March 2008, 14:56
Newbie alert! My first attempt w/DGAVCDec to convert an h264 to HD Xvid worked spectacularly well, except that I stupidly left DGAVCIndex at its default "Ignore Pulldown Flags" setting, where it needed Force Film. So the playback of the resulting avi was at 29.970 (speeded-up) and the length was 23.976/29.970 too short, though of course all the movie's frames were there.

I found a tool from the Zoomplayer folks called AVI Frame Rate Changer v1.10 which fixed the problem for me in less that one second (!) so I guess only a simple header change was needed to the avi.

Anyway just wanted to feed back that Alpha 19 worked great for me, where my previous method of building a grf and using DirectShowSource was choking at one point in the program which I hadn't been able to figure out. Many thanks neuron2 for this terrific new tool! :)

shambles
18th March 2008, 20:05
i have a problem with spider-man2 blu-ray disk. the video is 183372 frames long, but when i save the project, dgavcdec stops at 183207 frames and it just says finished, doesn't spit out any errors.

it's a seamless branching title so before loading it i have to copy /b 22 m2ts files. don't know if that's why this is happening but i've tried just saving the project, saving + demuxing video, i even tried demuxing the video with xport and loading that into dgavcdec and then saving, but with all those methods it stops at 183207 frames.

muxing the video to mkv with eac3to gives me the correct amount of frames, and if i seek on the timeline when it's loaded in dgavcdec i can see the missing frames, and if i load the last m2ts segment and then save project it works fine and the frames are included.

Guest
18th March 2008, 20:12
Please post a link to the entire DGA file. Thank you.

shambles
18th March 2008, 20:27
http://www.dump.ro/download.php?file=bits0001.dga&id=YThhZWNlMDg4MjM3MWY0MzhjODI5YmNjYjk5NWE5Mjc=&download=true

Guest
19th March 2008, 00:26
Well, the DGA shows the truncated count and there are no frame repeat SEIs to account for the missing frames. Indexing stops at the end of the input file.

So, I would guess it's a result of the concatenation of all the M2TS files. The only way to check that is for you to give me links to:

1. The last M2TS file
2. A split of the last chunk of the combined file

Then I could compare them. You could do it too, if you are a geek.

Last resort, send me all the M2TS files on a disk by smail mail.

Is the last 7 seconds REALLY important?

Chumbo
19th March 2008, 00:41
...it's a seamless branching title so before loading it i have to copy /b 22 m2ts files....
There's another thing you can try. After you've concatenated the files into one. Run that file through tsremux and then try the resulting file. If you still have a problem, then you might need to run the resulting file through tsremux too.

There has been at least one title (DeJa Vu) that needed that done, i.e., run the concatenated file through tsremux, then run that output file through tsremux.

shambles
19th March 2008, 14:29
the last m2ts file is 7gb :( i guess it's not that important. i can always use directshowsource which will return all the frames.

There's another thing you can try. After you've concatenated the files into one. Run that file through tsremux and then try the resulting file. If you still have a problem, then you might need to run the resulting file through tsremux too.

There has been at least one title (DeJa Vu) that needed that done, i.e., run the concatenated file through tsremux, then run that output file through tsremux.

gah. i'll give that a try later.

Atak_Snajpera
19th March 2008, 23:15
Neuron I have small request.
When I use command line log file is always empty (no information about stream). I will need that file because I want to know if source is interlaced or progressive. Another thing. Log file should be saved in the same directory as *.dga file.

Thank you.

Encoder888
22nd March 2008, 06:06
neuron2,

I'm still getting the crashes every now and then... You said I was the only one and I believe you, but I'm just trying to figure out what may be causing it. Definitely, it tends to crash more when I'm trying to play another video file at the same time its demuxing, be it a DVD, BD or any MPEG-4... And by crashing, I mean it just closes and leaves the demuxed audio to where it got. Is DGAVCDec not very friendly with certain programs, like AnyDVD ? Anyhow, I'm sure the issue is with me, I may just have to reinstall Windows.

Also, I wanted to ask you if it was possible for DGAVCDec to maybe generate audio delay? I use it mainly through AutoMKV and I've been getting progressive delays, as in it starts with almost no delay at the beginning of the movie and it gets worse as it progresses until near the end the audio is delayed by about a second. AutoMKV's own delay tools can't fix it either and I'm just trying to figure out if the problem occurs after demuxing or after encoding with AAC... Or maybe when the final file is muxed ? Any advice there?

Thanks and sorry for the long post.

Inventive Software
22nd March 2008, 15:39
I'm unable to download DGAVCDecode for some reason! It keeps timing out. Anybody else had this problem?

Guest
22nd March 2008, 18:42
Fixes audio detection and demuxing and consequent video decoding errors for some streams.

http://neuron2.net/dgavcdec/dgavcdec.html

Guest
22nd March 2008, 18:44
I use it mainly through AutoMKV and I've been getting progressive delays, as in it starts with almost no delay at the beginning of the movie and it gets worse as it progresses until near the end the audio is delayed by about a second. You're messing up the video frame rate somehow. Nothing to do with me. :)

LigH
24th March 2008, 08:11
Thread title update?
__

Slight progressive delays are possibly related to some confusion about NTSC / FILM frame rates. Make sure you know exactly if it has 23.976 or 24.0 fps / 29.97 or 30.0 fps!

ChiDragon
25th March 2008, 13:43
Long time no post... I've decrypted the Die Hard 3 Blu-ray and this is my first attempt at working with AVC. DGIndex is of course invaluable for MPEG-2 in AviSynth, so here I turn again to neuron2's wizardry. :)

The other day I started trying out Alpha 19 to process and demux the m2ts and it kept giving me an error along the lines of "Cannot find audio or video stream" at a seemingly random point a few thousand frames in every time I tried to demux, but worked fine if I just used regular old Save Project. After turning to mplayer to get at the raw h264 file, today I had a brainwave: "oh yeah! I was running out of space on this drive!" Sure enough, demuxing it to a different drive completed perfectly. So it was just my stupidity, but a stupidity check for the destination's free space would be nice when we're working with these large files, if possible. I double-checked to see if I still get the "Cannot find" error in a20 by saving to yet another drive, this one with 1.37GB free, and it dies with 800MB still to be used.

It also crashes instantly when I try to demux without setting an audio PID (hey, I just wanted the video).

Now, to my questions... Is there a reason for AVC deblocking defaulting to "true" when it didn't in DGIndex? I would think we'd want access to the pure frames themselves, but I'm probably missing something regarding the new format. Second, I saw the "frame struct" field bouncing between Frame and MBAFF throughout processing. I thought MBAFF was an interlaced format, shouldn't a stream Fox describes as 1080p show up as Frame only?

P.S. I think you missed replacing one reference to DGIndex in the manual, and then 3 in the command line section to VOBs. ;)

Guest
25th March 2008, 13:54
I double-checked to see if I still get the "Cannot find" error in a20 by saving to yet another drive, this one with 1.37GB free, and it dies with 800MB still to be used. Can you provide a stream that I can use to duplicate this?

It also crashes instantly when I try to demux without setting an audio PID (hey, I just wanted the video). Can you provide a stream that I can use to duplicate this? Nothing can be done unless I can duplicate your issue.

Now, to my questions... Is there a reason for AVC deblocking defaulting to "true" when it didn't in DGIndex? I would think we'd want access to the pure frames themselves In AVC, deblocking is an integral part of the decoding. If you turn off deblocking, then you have impure frames. Refer to the AVC spec and literature for details.

I saw the "frame struct" field bouncing between Frame and MBAFF throughout processing. I thought MBAFF was an interlaced format, shouldn't a stream Fox describes as 1080p show up as Frame only? It's normal. The encoding is adaptive.

P.S. I think you missed replacing one reference to DGIndex in the manual, and then 3 in the command line section to VOBs. ;) Thanks for pointing it out.

ChiDragon
25th March 2008, 18:24
Touche, I thought the error/crash would be repeatable with any file but I just tried with one of the small SD clips from the disc and it can be demuxed fine without specifying any audio. I've made a 50MB chunk that I can repeat the 2nd issue with but I've filled the drive completely with 0 bytes remaining and it still lets me demux the chunk (into 0-byte files) without giving the Cannot Find error so I'll have to do a little more testing...

Edit: Well I can't seem to repeat the first issue with anything but the original 30GB file so I guess that'll have to remain unexplained. I split it with HDBDSplitGUI. 10MB chunk for demux with no audio crash (chidragon.thedessie.com/part0001.m2ts). I've noticed that some of my earlier, larger chunks crash the program as soon as I try to open them. I'm uploading a 50MB chunk to show that. It plays garbled junk in my old version of VLC but doesn't crash, and in MPC it starts with green junk then corrects to normality. Almost definitely something caused by the file splitting but I thought you might want to check it out anyway.

Edit2: http://www.megaupload.com/?d=RUBQTXA4

Guest
25th March 2008, 20:56
The first one fails due to a bug in my DTS audio demuxing. If DTS is present and you don't demux it, it will crash. I'll fix it in the next version.

I'm still investigating the second one.

Guest
25th March 2008, 21:37
OK, I have the second one resolved now as well.

Unfortunately alpha 20 is messed up. If there are more than 256 PPS's encountered in the stream during the fixed inital parsing, then it dies when it starts to decode the first picture. I don't know how many streams that is true for, but it needs to be fixed ASAP.

I'll get a new alpha out tonight.

liquidator87
26th March 2008, 18:44
Is input from m2ts supported? I assume yes looking at the "open file" dialog, but every time I try to save the *.dga the program crashes... which doesn't happen when I do the same thing from the *.h264

Guest
26th March 2008, 19:01
Gosh, I already explained why less than a few posts above. Unless it's another cause of course. :)

Open the m2ts. Then do Audio/Audio Demux. Is there a DTS track listed. If, select it for deum and then save the project. Does it still crash?

Atak_Snajpera
26th March 2008, 19:05
is 21 ready?

Guest
26th March 2008, 19:07
It is ready. I'll post it this evening.

Guest
27th March 2008, 00:01
1. Fixed a bug that caused DGAVCIndex to crash when doing Save Project on a stream that contains a DTS audio track, and that track is not selected for demuxing.

2. Fixed a bug that caused DGAVCIndex to crash if more than 256 PPS's are encountered during the initial parsing following the opening of a stream.

http://neuron2.net/dgavcdec/dgavcdec.html

canTsTop
27th March 2008, 14:34
...

i have other video which still crashes (in virtualdub or megui), i made a sample, but in sample it no longer crashes in virtualdub, but still crashes in megui then analyzing video (load avs in megui>tools>avisynth script creator and in filters tab Analyse). but if i add in avs deblock=false it no longer crashes
this is sample http://rapidshare.com/files/73281324/222.264.html maybe you can look at it

@canTsTop

Apparently the libavcodec.dll deblocking fix is not complete, as I duplicated your second crash. My problem is that I can't make it fail for my debug DLL. I'll try to find it with code reading, but it might be a while.

any news on this?

also with this sample DGAVCDec crashes then it finish indexing, or if i start indexing and stop it

p.s. i reuploaded this sample http://www.mediafire.com/?n0qxdmmyyy3

shadowchen
27th March 2008, 14:54
DGAVCDec crashes when it finish indexing.

buzzqw
27th March 2008, 15:11
DGAVCDec crashes when it finish indexing.

here NO

so, post a sample where is replicable, and also specify all options/switch used

thanks

BHH

Atak_Snajpera
27th March 2008, 20:36
I've noticed something weird in a21. DGAVCDec demuxes audio steams which do not exist. (mp3 and ac3)

http://img233.imageshack.us/img233/3889/new1ov3.th.png (http://img233.imageshack.us/my.php?image=new1ov3.png)

http://www.64k.it/andres/data/a/SuperbadBD_100.m2ts

Guest
28th March 2008, 04:56
I have the crashing bugs fixed and will release a new version in an hour. It happens only with elementary streams.

Guest
28th March 2008, 05:31
* Fixed crashes for elementary streams.

http://neuron2.net/dgavcdec/dgavcdec100a22.zip

shadowchen
28th March 2008, 06:27
* Fixed crashes for elementary streams.

http://neuron2.net/dgavcdec/dgavcdec100a22.zip

when i upgrade to A22,the crash bug has fixed.:thanks:

Encoder888
29th March 2008, 14:09
@neuron2,

I'm having trouble with this m2ts, it was originally a seamless branching movie, which I've concatenated with copy /b and then remuxed with TSRemux, after which I got a normal synced copy. After I ran it through dgAVCDec, though, I got a slightly longer audio, which after it gets encoded and remuxed with the video by AutoMKV causes significant audio delay in the final mux. I'm not sure if the problem actually comes from dgAVCDec, but I did notice the difference in length between the original m2ts and the demuxed audio ac3, and so I thought this could be causing the delay. You may wanna look into it. Here's a 60MB sample of it:

http://www.mediafire.com/?ygeyxxlddg9

It's really hard to notice the difference in length here, because the file is only 15 seconds long, but when I demux the whole movie, it adds up to 3 additional seconds... You may wanna run some tests :) Please, let me know what you found :)

ALSO - all of the above happens when I use the AC3 version of the audio, but the movie also comes with TrueHD audio, which after I demux with dgAVCDec isn't playable and eac3to crashes when I try to convert it to wav, which was another reason for me to think the problem comes from the demuxing...

So, I also tried it with xport and got the same bad results:

xport -h part60.m2ts 1 1 2 (which is the AC3) - This time I actually got a shorter mpa file (by 1 second) than the original m2ts is...... very weird. I muxed it with TSMuxer and I still got a huge delay

xport -h part60.m2ts 1 1 1 (which is the TrueHD) - here the .mpa file isn't playable by itself, when muxed with TSMuxer I get the same huge delay... :(

I hope you can help me. Thank you an keep up the good work!

Guest
29th March 2008, 16:26
The stream you posted has 19 frames before the first IDR, so DGAVCIndex must lose them. That is ~0.8 seconds. When I serve the video I get 16.05 seconds. When I demux the audio I get 16.79. So the difference is accounted for by the leading non-decodable frames. As I have written before, I have not yet decided on what I want to do for AV sync yet, so manual adjustment of the offset is necessary for now.

Regarding TrueHD, I get a binary identical demux compared to xport. So I don't know what to tell you about how to process TrueHD, as I know nothing about it.

Guest
29th March 2008, 16:28
I've noticed something weird in a21. DGAVCDec demuxes audio steams which do not exist. (mp3 and ac3)

http://img233.imageshack.us/img233/3889/new1ov3.th.png (http://img233.imageshack.us/my.php?image=new1ov3.png)

http://www.64k.it/andres/data/a/SuperbadBD_100.m2ts They all have audio. One is misidentified as MPA. I am working on improving audio stream type detection.

Flash_Git
29th March 2008, 19:47
Is there anyway of moving frame-by-frame in this program?
I'm trying to use to for taking screenshots of specific frames with no luck. In the non playback mode it moves quite a few frames at a time (i-frame to i-frame?) and when you do play at frame step speed once you stop in order to save a BMP it shoots forward a few frames.

Thank you.

SeeMoreDigital
29th March 2008, 20:42
Is there anyway of moving frame-by-frame in this program?Go to: Options -> Playback Speed -> Single Step

Flash_Git
29th March 2008, 20:52
Go to: Options -> Playback Speed -> Single Step

Read the rest of my post, I know about that. It only does frame stepping when it's playing and in that 'mode' you can't save images unfortunately. :/

SeeMoreDigital
29th March 2008, 21:04
Read the rest of my post, I know about that. It only does frame stepping when it's playing and in that 'mode' you can't save images unfortunately. :/My apologies...

Guest
29th March 2008, 23:50
I'll try to fix it to have the Save BMP command enabled during play/preview.

Guest
30th March 2008, 00:10
OK, it turned out to be easy. Re-download alpha 22. I updated it.

We aim to please.

SeeMoreDigital
30th March 2008, 00:28
OK, it turned out to be easy. Re-download alpha 22. I updated it.

We aim to please.You know what that means now Donald...

You'll have to add this feature to DGMPGIndex as well :)

Flash_Git
30th March 2008, 01:45
OK, it turned out to be easy. Re-download alpha 22. I updated it.

We aim to please.

Thank you, very much appreciated!

------

Seperate issue. Probably known but I couldn't find anything on it.

http://img156.imageshack.us/img156/1381/68560741sl9.th.gif (http://img156.imageshack.us/my.php?image=68560741sl9.gif)
http://img168.imageshack.us/img168/954/44451799tf3.th.gif (http://img168.imageshack.us/my.php?image=44451799tf3.gif)
http://img156.imageshack.us/img156/3663/94199475xb6.th.gif (http://img156.imageshack.us/my.php?image=94199475xb6.gif)

On a m2ts containing AVC from a BD I get the first two about 6-7 times when I hit Play (F6) and move forward a frame. After that no more errors unless I stop and play again.

On an AVC file demuxed from an HD-DVD EVO I get all three quite a few times when seeking anywhere. And when playing and moving forward a step the first 2 twice, and then the first 2 twice again when going to the next frame. After that nothing unless I stop and play again.

There doesn't actually appear to be any problem though; no frames missing and all appear to be decoded correctly.

Guest
30th March 2008, 03:05
I can't help you without a stream sample to duplicate your issue.

Guest
30th March 2008, 03:07
You'll have to add this feature to DGMPGIndex as well Good point. I'll do it.

Gannjunior
2nd April 2008, 15:37
@neuron,

is normal that alpha 22 regonizes 1440x1080 AVCHD .mts 16:9 aspect ratio as a 4:3 ?
That is what's happening to me:
http://www.savefile.com/files/1426101

ciao!

Guest
2nd April 2008, 16:10
Please read the users manual about it and then if you think there is still a problem, tell me what you think the problem is. I can't get to your upload site when I am at work due to a firewall.

Post the contents of the info log that DGAVCIndex generates. It will show me the fields I need. Post it as text so I don't have any firewall problem seeing it.

rack04
2nd April 2008, 16:32
Please read the users manual about it and then if you think there is still a problem, tell me what you think the problem is. I can't get to your upload site when I am at work due to a firewall.

Post the contents of the info log that DGAVCIndex generates. It will show me the fields I need. Post it as text so I don't have any firewall problem seeing it.

Are you wanting the dga or txt file?

Guest
2nd April 2008, 16:37
As I said, the info log. It is generated when you have Enable info log checked under Options.

rack04
2nd April 2008, 16:41
Stream Type: Transport [192]
Profile: High
Level: 4
Frame Size: 1440x1080
SAR: 4:3
Display Size: 1920x1080
Frame Rate: 25.000000 fps
Colorimetry: BT.709* [2]
Frame Structure: Fields (TFF)
Frame Type: B
Coded Number: 468
Playback Number: 468
Frame Repeats: 0
Field Repeats: 0
Bitrate: 11.773
Bitrate (Avg): 11.554
Bitrate (Max): 12.395
Audio Stream: 1100: AC3 3/2 384
Elapsed: 0:00:00
Remain: 0:00:00
FPS:
Info: Finished!

SeeMoreDigital
2nd April 2008, 16:49
@neuron,

is normal that alpha 22 regonizes 1440x1080 AVCHD .mts 16:9 aspect ratio as a 4:3 ?There's no problem with this... It's giving you the Aspect Ratio Signalling (ie: PAR, SAR) value.

1440 x 1.33333 (ie: 4/3) = 1920 Perfect :)
Whereas, 1440 x 1.77777 (ie: 16:9) = 2560 :eek:

audyovydeo
2nd April 2008, 16:52
@neuron,

is normal that alpha 22 regonizes 1440x1080 AVCHD .mts 16:9 aspect ratio as a 4:3 ?



??

1440 / 1080 = 1.333 = 4:3

ciao
audyovydeo

Gannjunior
2nd April 2008, 16:56
thanks rack.

yes seemoredigital, you are right about the calculation.

but if you download the sample and you see it (first in a player as nero show time and after in dgavcdec), you'll understand what i mean.

EDIT: the point is that, even if 1440/1080 is, by number, 1.333 (4:3), it has to be recognized and reproduced as 16:9 to see it with the correct proportion...i don't know how to explain but if you see the sample guys, you understand.

audyovydeo
2nd April 2008, 17:04
EDIT: the point is that, even if 1440/1080 is, by number, 1.333 (4:3), it has to be recognized and reproduced as 16:9 to see it with the correct proportion...i don't know how to explain but if you see the sample guys, you understand.

Ciao zeneize.

1.333 is the value that should be signalled to the playback application to tell it to play your 1440x1080 stream at 16:9 ratio.

cheers
audyovydeo

Guest
2nd April 2008, 17:09
the point is that, even if 1440/1080 is, by number, 1.333 (4:3), it has to be recognized and reproduced as 16:9 to see it with the correct proportion...i don't know how to explain but if you see the sample guys, you understand. DGAVCDec is going to deliver the video frame as decoded. It does not apply the resizing specified by the stream. You need to do that in your Avisynth script.

SeeMoreDigital
2nd April 2008, 17:23
EDIT: the point is that, even if 1440/1080 is, by number, 1.333 (4:3), it has to be recognized and reproduced as 16:9 to see it with the correct proportion...i don't know how to explain but if you see the sample guys, you understand.You are getting confused because when calculating this sort of thing, you're introducing the frame height (ie: 1080).... Which you must not do!

Bear in mind you are distorting the shape of the pixels "width-ways". Not "height-ways".

Atak_Snajpera
2nd April 2008, 23:08
As I said, the info log. It is generated when you have Enable info log checked under Options.

I does not work when I use commad line. I always get this:

Stream Type:
Profile:
Level:
Frame Size:
SAR:
Display Size:
Frame Rate:
Colorimetry:
Frame Structure:
Frame Type:
Coded Number:
Playback Number:
Frame Repeats:
Field Repeats:
Bitrate:
Bitrate (Avg):
Bitrate (Max):
Elapsed:
Remain:
FPS:
Info:

My ini file
Version=DGAVCIndex 1.0.0 Alpha 22
Window_Position=100,100
Info_Window_Position=100,100
YUVRGB_Scale=1
Field_Operation=2
Process_Priority=2
Playback_Speed=3
AVS_Template_Path=C:\Users\Dawidos\Documents\Delphi_Projects\RipBot264\Tools\dgAVCDec\template.avs
Full_Path_In_Files=1
MRUList[0]=D:\TS samples\Video Test Samples\SuperbadBD_100_.m2ts
MRUList[1]=
MRUList[2]=
MRUList[3]=
Enable_Info_Log=1
Loop_Playback=0

Guest
2nd April 2008, 23:27
You reported this already. I'll get to it, there's no need to keep reminding me.

Atak_Snajpera
2nd April 2008, 23:32
I thought you ignored me because you didn't say anything.

Guest
2nd April 2008, 23:39
Well, it's a CLI feature and I said when I released it that it was an incomplete quick and dirty thing. I still need to implement preview and other things. You can always PM me if you think I have missed something. Thank you for your feedback, know that your suggestions are always appreciated.

LigH
3rd April 2008, 10:35
There's no problem with this... It's giving you the Aspect Ratio Signalling (ie: PAR, SAR) value.

1440 x 1.33333 (ie: 4/3) = 1920 Perfect :)
Whereas, 1440 x 1.77777 (ie: 16:9) = 2560 :eek:

Surprise! -- 1080 × 16:9 = 1920 :eek:

See: So many aspect ratios, so different relations (pixel dimensions / image dimensions / image stretching factor). You have to be careful about what which specific abbreviation really means. ;)

Gannjunior
3rd April 2008, 11:49
ok guys,
it's clear, i will adjust resize by avisynth (since this video will be converted in huffyuv to pass it to premiere, i was hoping to avoid every kind of resize before to edit it...).
tnks!

@audyovydeo

belin ! :D

Guest
3rd April 2008, 14:22
DGAVCDec does not do the resizing because it would be pointless to reproduce all the existing Avisynth resizers in the DGAVCDec code when adding a simple line to the script suffices. It is interesting to consider possibly having DGAVCDec automatically generate the resize line in the Avisynth script that it creates, but that's a low-priority thing right now.

Gannjunior
3rd April 2008, 14:49
...It is interesting to consider possibly having DGAVCDec automatically generate the resize line in the Avisynth script that it creates, but that's a low-priority thing right now.
Good! when you have a bit of time, i think that could be a really good idea.
The possibility to do reszize/crop during dgavc/dgindex passage, it could become very useful.

Tnks and ciao!

saint-francis
3rd April 2008, 15:54
Good! when you have a bit of time, i think that could be a really good idea.
The possibility to do reszize/crop during dgavc/dgindex passage, it could become very useful.

I agree with this. It would be revolutionary. Resizing and cropping are the two most arduous parts of making the script; for me at least.