Welcome to Doom9's Forum, THE in-place to be for everyone interested in DVD conversion.

Before you start posting please read the forum rules. By posting to this forum you agree to abide by the rules.

 

Go Back   Doom9's Forum > Video Encoding > MPEG-4 AVC / H.264

Closed Thread
 
Thread Tools Search this Thread Display Modes
Old 8th January 2009, 22:25   #1721  |  Link
laserfan
Aging Video Hobbyist
 
Join Date: Dec 2004
Location: Off the Map
Posts: 2,461
I didn't know there was a difference in libavcodec versions between ffdshow-tryout and ffmpeg. FWIW it was ffdshow-tryouts that has changed so much lately that I was inspired to ask in the first place...
laserfan is offline  
Old 10th January 2009, 17:38   #1722  |  Link
sneaker_ger
Registered User
 
Join Date: Dec 2002
Posts: 5,565
I wanted to use the cli of DGAVCIndex with a batch file (under Windows XP) using the "for" command, but instead of doing it one by one all instances of DGAVCIndex run at the same time. Any way to change that behavior?
sneaker_ger is offline  
Old 10th January 2009, 18:21   #1723  |  Link
rebkell
Registered User
 
Join Date: Oct 2006
Posts: 303
Quote:
Originally Posted by sneaker_ger View Post
I wanted to use the cli of DGAVCIndex with a batch file (under Windows XP) using the "for" command, but instead of doing it one by one all instances of DGAVCIndex run at the same time. Any way to change that behavior?
try putting start "" /WAIT in front the DGAVCDec command line, do a help start from the cmd window and check out all the options there.
rebkell is offline  
Old 10th January 2009, 18:58   #1724  |  Link
sneaker_ger
Registered User
 
Join Date: Dec 2002
Posts: 5,565
Quote:
Originally Posted by rebkell View Post
try putting start "" /WAIT in front the DGAVCDec command line, do a help start from the cmd window and check out all the options there.
thx, worked just fine.
sneaker_ger is offline  
Old 10th January 2009, 19:05   #1725  |  Link
laserfan
Aging Video Hobbyist
 
Join Date: Dec 2004
Location: Off the Map
Posts: 2,461
I-frame anomalies

I've been experiencing seemingly random frame corruptions in some of my 2-pass x264 encodings, which might occur only a couple of times in a 200,000 frame movie. In the most recent, I found just one instance of bad frames (7 of them) which occur after what appears to be an incorrect I-frame placement, i.e. the nearest I-frame was the frame immediately PRIOR to the scene change, and the first-thru-seventh frames into the new scene are (decreasingly) corrupt. I've uploaded 9 frames here (I-frame, seven bad, last good). To my eye it looks like the 2nd frame includes elements of the first frame (the grey locker door in the background).

Here's what I'd done:

1. Use DGAVCindex to make a .dga file from the original h264 video
2. Make an .avs w/DGDecode & AVCSource as input to x264
3. Make a two-pass x264 encoding, which yielded corruption at frames 155597-155603

Excerpt of the stats file from Pass 1:

Code:
in:155594 out:155595 type:b q:26.00 tex:65746 mv:15608 misc:5878 imb:693 pmb:1743 smb:5724 d:s;
in:155596 out:155596 type:I q:22.04 tex:1547034 mv:348958 misc:544 imb:8160 pmb:0 smb:0 d:s;
in:155599 out:155597 type:P q:27.80 tex:31803 mv:9705 misc:5412 imb:138 pmb:1668 smb:6354 d:s;
in:155597 out:155598 type:b q:30.00 tex:2809 mv:4908 misc:3091 imb:21 pmb:627 smb:7512 d:s;
in:155598 out:155599 type:b q:30.00 tex:3431 mv:5321 misc:2952 imb:36 pmb:645 smb:7479 d:s;
in:155603 out:155600 type:P q:26.98 tex:54207 mv:14962 misc:6935 imb:132 pmb:2988 smb:5040 d:s;
in:155600 out:155601 type:b q:30.00 tex:4579 mv:5640 misc:3229 imb:7 pmb:675 smb:7478 d:t;
in:155601 out:155602 type:b q:30.00 tex:4210 mv:5549 misc:2937 imb:7 pmb:601 smb:7552 d:s;
in:155602 out:155603 type:b q:29.99 tex:4443 mv:8272 misc:4461 imb:4 pmb:1106 smb:7050 d:s;
in:155607 out:155604 type:P q:26.02 tex:96382 mv:19707 misc:7047 imb:139 pmb:4204 smb:3817 d:s;
Note that 155596 is the *wrong frame* for the I-frame--should have been at the new scene frame 155597.

I've next made another Pass 1 at the movie, this time using not DGAVCindex, but rather
DirectShowSource("d:\videoAS.grf", audio=false) where videoAS.grf uses

video.264 --> Arcsoft MPEG Demux --> CoreAVC Video Decoder

This method yields a stats file that places the I-frame correctly it appears:

Code:
in:155596 out:155595 type:P q:25.02 tex:145561 mv:27198 misc:6969 imb:1606 pmb:2668 smb:3886 d:s;595
in:155595 out:155596 type:b q:27.00 tex:41510 mv:10972 misc:5238 imb:576 pmb:1170 smb:6414 d:s;
in:155597 out:155597 type:I q:23.04 tex:1368657 mv:337886 misc:537 imb:8160 pmb:0 smb:0 d:s;
in:155600 out:155598 type:P q:28.12 tex:31178 mv:9646 misc:5368 imb:138 pmb:1694 smb:6328 d:s;
in:155598 out:155599 type:b q:30.00 tex:2969 mv:5328 misc:3199 imb:12 pmb:675 smb:7473 d:s;
in:155599 out:155600 type:b q:30.00 tex:3752 mv:5476 misc:3060 imb:37 pmb:662 smb:7461 d:s;
in:155604 out:155601 type:P q:27.96 tex:33202 mv:11504 misc:6294 imb:86 pmb:2104 smb:5970 d:s;
in:155601 out:155602 type:b q:30.01 tex:4305 mv:5489 misc:3294 imb:7 pmb:674 smb:7479 d:t;
in:155602 out:155603 type:b q:30.00 tex:4928 mv:6322 misc:3462 imb:8 pmb:719 smb:7433 d:s;
in:155603 out:155604 type:b q:30.00 tex:4817 mv:9065 misc:4726 imb:4 pmb:1216 smb:6940 d:s;

I know this "calls for speculation--facts not in evidence" but does this seem like something that the libavcodec issues mentioned before might cause (selection of the previous/wrong frame as I-frame)? BTW I noticed a couple of other I-frames that occurred "1 frame too early" when looking at all the chapter points, but this one above is the only place where corruption occurred.

I will soon be migrating to neuron2's NV tools instead, but it might still be a week or more and I hate unsolved mysteries!
laserfan is offline  
Old 10th January 2009, 19:11   #1726  |  Link
Guest
Guest
 
Join Date: Jan 2002
Posts: 21,901
Remove the encoding from the picture. Can you see any issues just viewing the script in VirtualDub? I really have no control over what x264 is doing.

Is it PAFF? Can you post a link to the source video of the affected section?

Last edited by Guest; 10th January 2009 at 19:16.
Guest is offline  
Old 10th January 2009, 22:57   #1727  |  Link
laserfan
Aging Video Hobbyist
 
Join Date: Dec 2004
Location: Off the Map
Posts: 2,461
It's a Blu-ray disc of a feature film ("The Guardian") so no interlacing at all AFAIK. And viewing the original frame-by-frame reveals nothing; it appears perfect.

I don't know how x264 works, so I was guessing at a decoding issue in the 1st pass (whereby x264.stats assertion sometimes places an I-frame wrongly) and then again in the 2nd pass i.e. that x264 just encodes the glitches it sees. But your post caused me to do the obvious (slaps head) which is to make a snippet of the problem area and process it again. Naturally the snippet alone re-encodes perfectly across this scene break (using of course .dga as input), so a sample doesn't expose the issue. I've not done a lot of these, but seems to me that when I've seen this problem before, as this time, that it tends to occur well-into a 2 hour movie (and yes I've done extensive memtest & prime95 on this machine to no errors)...

The last parts for my new Nvidia PC arrived after I posted so I'm going to focus instead on getting that built, so I can try your NV tools. Thanks for reading & replying--your expertise & active presence at doom9 is most appreciated!
laserfan is offline  
Old 22nd January 2009, 21:10   #1728  |  Link
Underground78
Registered User
 
Underground78's Avatar
 
Join Date: Oct 2004
Location: France
Posts: 567
Hello,

Reading DGAVCDec user manual, it seems that the only way to demux an audio track using the CLI is to demux all audio streams with the -a flag. But I have seen in the GUI that a selection of audio tracks to be demuxed is possible so to you have any plan to port this feature to the CLI ?

Anyway thank you very much for your work on DGAVCDec !
Underground78 is offline  
Old 23rd January 2009, 00:35   #1729  |  Link
Guest
Guest
 
Join Date: Jan 2002
Posts: 21,901
Didn't plan to. How would you know what audio ID to specify?
Guest is offline  
Old 23rd January 2009, 03:30   #1730  |  Link
Chumbo
Registered User
 
Chumbo's Avatar
 
Join Date: Feb 2005
Posts: 585
Quote:
Originally Posted by neuron2 View Post
Didn't plan to. How would you know what audio ID to specify?
Doesn't the UI identify the ID? No pun intended. If I had to do a bunch, I wouldn't mind identifying, manually, the IDs through the UI and then putting them in my batch file.
__________________
Chumbo
Chumbo is offline  
Old 23rd January 2009, 05:15   #1731  |  Link
kemuri-_9
Compiling Encoder
 
kemuri-_9's Avatar
 
Join Date: Jan 2007
Posts: 1,348
Another possible venue would be to add an option to have it display all the available IDs so you wouldn't have to open the GUI at all.
__________________
custom x264 builds & patches | F@H | My Specs
kemuri-_9 is offline  
Old 23rd January 2009, 07:22   #1732  |  Link
Underground78
Registered User
 
Underground78's Avatar
 
Join Date: Oct 2004
Location: France
Posts: 567
I think that the informations given by MediaInfo could be used too.

Code:
Audio
ID                               : 130 (0x82) <--
ID de menu                       : 1281 (0x501)
Format                           : AC-3
[...]
Langue                           : Français
Underground78 is offline  
Old 1st February 2009, 12:40   #1733  |  Link
hellfred
FFmpeg fan
 
Join Date: Dec 2003
Location: Germany
Posts: 427
Motivated FFmpeg developer

Quote:
Originally Posted by neuron2 View Post
Nah, I need the tracker to see if the known bugs have been addressed. Can't remember the bug numbers.

EDIT: I just built and tested ffmpeg16456. The bugs are still present.
Hi neuron2

A motivated new developer named Ivan Schreter showed up on the ffmpeg mailing list, who is working hard on the H264 parser / time stamp issues. See e. g. this mail and this follow up. You will find more when searching the ffmpeg-devel mail archives of January and February for Ivan Schreter.
Did you observe that development? Will his work help you to fix the random access problems? This guy seems to be motivated, maybe you should contact him to get your problems addressed, too.

Lately there was a long discussion about libavformat usability on the mailing list, too. So now you have a good chance to get your issues addressed.

Thank you for your hard work on DGAVGDec and the other tools and filters that you have provided for us.

Hellfred

Update:
I have missed this message. So Ivan will not have that much time in the near future.

Last edited by hellfred; 2nd February 2009 at 00:19.
hellfred is offline  
Old 2nd February 2009, 11:21   #1734  |  Link
AntiJw
Banned
 
Join Date: Jun 2008
Location: Too north/cold
Posts: 63
Hey, neuron2. I wonder, is it okey to join-demux a m2ts (AVC) file, in eac3to:
eac3to 00118.m2ts+00119.m2ts 2: mainvideo.source.1080p.264

and use it in DGAVCDec (to encode in x264), or do I lose something by demuxing to *.264, not *.m2ts?

EDIT: Thanks for the answer, although I used DSS. "Herr"=Mister (translated). The other is something I don't like. "neuron2" doesn't mean someone with only 2 neurons?!
Curiosity killed the cat Thinking of your avatar.

Last edited by AntiJw; 3rd February 2009 at 00:08.
AntiJw is offline  
Old 2nd February 2009, 14:43   #1735  |  Link
Guest
Guest
 
Join Date: Jan 2002
Posts: 21,901
You don't lose anything, it's OK.

I'm curious about the significance of:

"AntiJw
Herr"

Can you explain it to me?
Guest is offline  
Old 4th February 2009, 02:43   #1736  |  Link
tebasuna51
Moderator
 
tebasuna51's Avatar
 
Join Date: Feb 2005
Location: Spain
Posts: 6,890
Sorry if is a old question.

But, if we can't use a list of m2ts files (like vob's with DGIndex), if the decoder is libavcodec.dll like in ffdshow (installed), what is the difference between use

AVCSource("D:\Video\00001.dga")

supposed 00001.dga the DGAVCIndex output from D:\Video\00001.m2ts and

DirectShowSource("D:\Video\00001.m2ts", audio=false) ?
__________________
BeHappy, AviSynth audio transcoder.
tebasuna51 is offline  
Old 4th February 2009, 03:53   #1737  |  Link
Guest
Guest
 
Join Date: Jan 2002
Posts: 21,901
Frame accurate seeking.
Guest is offline  
Old 4th February 2009, 13:57   #1738  |  Link
tebasuna51
Moderator
 
tebasuna51's Avatar
 
Join Date: Feb 2005
Location: Spain
Posts: 6,890
Thanks neuron2.
Then for a complete linear transcoding is the same but with Trim's in the avs we can see differences?
__________________
BeHappy, AviSynth audio transcoder.
tebasuna51 is offline  
Old 4th February 2009, 15:07   #1739  |  Link
Guest
Guest
 
Join Date: Jan 2002
Posts: 21,901
Not just trim's; any Avisynth processing that requires seeking can be wrong with DirectShowSource(). E.g., consider SelectEvery().
Guest is offline  
Old 4th February 2009, 15:14   #1740  |  Link
djloewen
Registered User
 
Join Date: Aug 2007
Posts: 112
Sorry, I realize this is OT, but I've been wondering about this for awhile too: is frame-accurate seeking needed for FieldDienterlace, IVTC(decomb), or bobbing?
djloewen is offline  
Closed Thread

Thread Tools Search this Thread
Search this Thread:

Advanced Search
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off

Forum Jump


All times are GMT +1. The time now is 16:25.


Powered by vBulletin® Version 3.8.11
Copyright ©2000 - 2024, vBulletin Solutions Inc.