View Full Version : splitting h264 elementary stream
Vincent Vega
11th November 2009, 02:04
is there a tool allowing to split h264 ES streams directly without having to mux them into a container first? like at a specific frame or at a specific time (with fps given by user)?
MatLz
11th November 2009, 04:20
Hi!
DGavcindex can do that.
Specific frame? Yes at a keyframe...
qyqgpower
11th November 2009, 04:29
But you can't see current frame number in dg series tools, and backstep is very buggy.
MatLz
11th November 2009, 04:40
All work perfectly for my needs. It's a nice tool.
And it's just my suggestion...so if you have an other free software to propose to him...
Guest
11th November 2009, 05:16
But you can't see current frame number in dg series tools, and backstep is very buggy. Did you report these supposed bugs so they can be fixed?
Vincent Vega
11th November 2009, 23:45
guys thanx for replies, i did try using dgavcindex for this but it did not seem to be exactly what i needed. heres what i need to do: i encode to rawavc via megui, i have slow computer so at the end of the day i just hit abort to continue encoding next day where it left off. but in this scenario the last GOP of x264 stream quite often comes out broken and needs to be trimmed (cut off). so i run the "aborted" x264stream thru dgavcindex, open up dga, scroll down to the end of it and now i know where that last IDR frame is located where split needs to be made to remove the last GOP.
so maybe you could just give me a walkthru here whats the fastest way to do that with dgavc or whatever other tool you think is best for this.. thanks again
kieranrk
11th November 2009, 23:46
i have slow computer so at the end of the day i just hit abort to continue encoding next day where it left off. but in this scenario the last GOP of x264 stream quite often comes out broken and needs to be trimmed (cut off).
You should hibernate your computer instead of doing this.
Inspector.Gadget
11th November 2009, 23:48
You're using a completely backward workflow. Please, for your own sake, alter it. Cut and join in Avisynth since you're re-encoding anyway - or encode in sections of manageable length and join them later in containers rather than ES so you don't need to worry about broken GOPs. MeGUI bundles an AVS Cutter that also generates a cutlist to be applied to accompanying audio files: use that instead!
Also, your slow computer is likely responsible for the "bugs" in DGAVCIndex. Decoding H.264 is a computationally intensive task: of course it's going to take time on an slower PC!
Vincent Vega
11th November 2009, 23:51
it has a buggy ol' bios that will never be fixed by manufacturer, when it wakes up from hibernation theres acpi error in windows event log and system BSDs when attempting to run some video apps. so hibernation/sleep is just not an option here
Vincent Vega
11th November 2009, 23:55
[QUOTE=Inspector.Gadget;1342995]Cut and join in Avisynth since you're re-encoding anyway - or encode in sections of manageable length ..QUOTE]
i tried that too, but thats not the best way for me either cos one day i can encode 3 hours, another day 10 and etc, even in the beginning of the day i dont know whar the manageable length for this day is
Inspector.Gadget
12th November 2009, 00:00
So, the mathematical answer to that is to cut into many small segments and encode more of them on days when you have more time. Figure you can block out at least an hour, run an analysis pass of a few minutes to get a sense of average FPS, and then divide accordingly in a modified AVS script.
Vincent Vega
12th November 2009, 00:55
@neuron2:
i just thought one way to deal with this task easily would be if you added just one checkbox "split stream (& .dga) at last IDR" under File/Save Project and Demux Video/Save as.. dialog.
In that way i could run the aborted stream thru dgavc just once and as a result would have the healthy trimmed h264 stream and .dga for it too. what do you think?
Guest
12th November 2009, 01:24
I don't understand what you are saying.
qyqgpower
12th November 2009, 06:13
@Vincent Vega
dgavcindex is pretty suitable for your purpose.
Open the es in dgavc
move the slider to near the end
since the slider would only stop at IDR, just hit the ] button to end the selection
file-save project and demux the stream, you are done.
Vincent Vega
12th November 2009, 20:48
I don't understand what you are saying.
http://forum.doom9.org/showthread.php?p=1342993#post1342993
@Vincent Vega
dgavcindex is pretty suitable for your purpose.
Open the es in dgavc
move the slider to near the end
since the slider would only stop at IDR, just hit the ] button to end the selection
file-save project and demux the stream, you are done.
thanks qyqgpower, that seems to be best suggestion so far. so if i move the slider to the last frame viewable in dgavc it will also be the last IDR frame of the stream?
edit: just got home and tried that, thats exactly what i needed.
i just wish dgavcindex could also display frame number when navigating between key frames, and maybe also a Go To Frame.. menu option (as in vdub) to allow jumping to specific frame (or gop frame nearest to that frame)
vBulletin® v3.8.11, Copyright ©2000-2026, vBulletin Solutions Inc.