Log in

View Full Version : OGM and AC3 doesn't seem to work.


Pages : [1] 2

pirata
27th October 2002, 18:59
Hi all.

I am trying to create OGMs with multiple audio streams (one film in 4 or 5 languages; going from 2CDs rips to 3CDs rips). One of the streams is AC3. I'd like to retain the quality of AC3 for the future, for I think I will have a Home Theater in one year or so (when I get the money). I am also not very keen on transcoding (there's an unavoidable quality loss in it).

In this forum I have seen many threads celebrating that OGM could carry AC3, ogg vorbis and mp3.

I have tried to mux ac3 and ogg (both at 48000Hz), and:

-Cyrius's VirtualDub OGM crashes when it begins to mux.
-Koepi's OGGMux generates a file that none of BSPlayer and Zoom Player will play (BSPlayer simply does not start playing, Zoom Player stops and the picture goes black if the AC3 track is selected using "Audio Track"; it plays only if the ogg track is selected; Stream selection with "Languages" option is impossible).
(for these both cases, the ac3 is a wav-ac3)
-Waldogel's DShow filters, used form GraphEdit, generate a file that has 3 seconds length. This happens in both players.
(for this case, the ac3 is placed in an AVI, with the video, as the OGM-AC3 threads say)

My gear: PIII@800MHz. M/B Elitegroup P6BAP-Me (chipset VIA Apollo Pro133). 256 RAM. HD 60GB. Windows XP. Geforce2 MX 32MB.
OGGMux: 0.9.3
VDub OGM: 17-10-2002 version.
OGG Directshow filters: 0.9.9.5
OGG Subtitle mixer: 1.4.0.0
BSPlayer: 0.85 Build490
Zoom Player: 2.80

Has anybody any idea of what I should do to get ac3 working with OGM?
Has anybody noticed the AC3 stopped working with OGM after the last releases of the OGG directshow filters?

If details here are not enough, don't hesitate to ask for more.

Please, help me. It is really sad having 5 channels and having to reduce it to 2. Isn't it?

I guess there is no solution to this, so: can multichannel vorbis substitute AC3? Can it be outputted through spdif, like ac3?

pirata
27th October 2002, 19:08
Another issue that will come my way if AC3 and OGM finally work together is cutting. I have read some threads where it was discussed that cutting OGM could result in loss of frames or empty gaps when playing back. It could be even worse if there are AC3s and mp3s involved. Are there some proofs of that, and if there are, is there any workaround? I mean it clearly: do OGGCut or VirtualDub OGM cut OGMs with AC3/vorbis/mp3 propperly?

Many thanks to those who share their wisdom. :-)

Suiryc
27th October 2002, 20:13
Hi

well with older versions of my VirtualDub mod there were a "lot" of bugs, that I tried to fix (at least a lot of them, maybe not "all" of them ;)).
Maybe using the latest version (22-10-2002) VirtualDub won't crash (I hope :)).

For OggMux, there is a known issue where using an AC3 (waved) track make the OGM unplayable (it's a problem with OggDS/DirectShow it seems).

For cutting I tried to make a proper job with VirtualDub (normally there won't be lost information in the cutting process, and I tried to get the streams synchronized :)). But I cannot do miracles, maybe there are cases where it won't work as expected.

pirata
28th October 2002, 04:19
First of all: an honour to talk directly with the creator of this mod. It's a good job, man.

I have tried with your latest version (28-10-02). And it doesn't hang!! The resulting file is playable with both players. Just one flaw, which maybe you can help me with. It is with Zoom Player. The movie won't start by itself. Once you load in into ZP, and hit play, the time counter starts and time passes, but the movie stands still at the first (black) frame. You have to seek to a point into the movie, and then it goes right. Any idea? This doesn't happen with BSPlayer, but BSPlayer plays ac3 and one ogg channel at the same time, though (some known fix to that)... :confused:

Anyway: thanks, man.

About Tobias's DirectShow filters screwing up AC3-ogm: do we have to wait for a new release of OGGMux, or is there already a workaround?

About cutting: is the tool able to cut OGM containing mp3, vorbis, subtitles and ac3 all together? And one question about the tool's workflow: it is a long readme, and I'm not sure if I picked up the big picture right. The tool reads AVI and OGMs. You can process the video and each audio channel if the input is OGM (subsets, filtering, recompression), but only the video and first audio channel if it is AVI. Ain't that right? Can you capture to OGM? Can you change frame rate of an OGM?

Another question: should I understand that you VDub mod is using exactly the same code of your wonderful OGMTools? If I am right, why don't you integrate OGInfo in the File Information box. showing all that packet stuff? That would integrate your tools more tightly, I think. This has come also to my mind: can you merge/demux an OGMwith your tool? How? (not with Append AVI nor Save WAV I guess...)

By the way, you will also make us a favour if, in your infinite goodness, you completed the VDub Help file including some insight on the file structure of a OGG/OGM file (header, packetization... all the things that make you capable of finding solutions when you get a screwed up file and you don't know what to do -other than going to Doom9's forum :-)- ). Also some Summary about AVIs will be definitely a help (or links to HUMAN-READABLE, technical overviews on AVI or OGM.

I can imagine your face right now: what the f*ck is saying this guy? Excuse me, Mister Pirata! I AM NOT YOUR MOTHER!! Stop demmanding things right now! :-)

Bye and thanks again.

pirata
28th October 2002, 04:37
One last feature request, Cyrius: it would be really useful having a preview for each OGM channel (including subtitles), where you can (e.g.) synchronize audio streams with the video, or see if the Subtitle mixer can read the subtitle streams. You will have to select which stream to preview (if you change from one atream to another, the processing settings -such delays- should change accordingly).

Suiryc
28th October 2002, 14:58
:scared:
Originally posted by pirata
Once you load in into ZP, and hit play, the time counter starts and time passes, but the movie stands still at the first (black) frame. You have to seek to a point into the movie, and then it goes right. Any idea? This doesn't happen with BSPlayer, but BSPlayer plays ac3 and one ogg channel at the same time, though (some known fix to that)... :confused:
Yeah I already experienced such problems but I don't know where it comes from neither how to solve them (other than by seeking).

About Tobias's DirectShow filters screwing up AC3-ogm: do we have to wait for a new release of OGGMux, or is there already a workaround?
AFAIK there is no workaround.
Maybe future versions of OggMux or OggDS will solve the problem (but maybe it is not easy).

About cutting: is the tool able to cut OGM containing mp3, vorbis, subtitles and ac3 all together?
Theorically you should be able to cut OGM files containing up to the maximum number of streams an OGM gile can handle, whatever are those streams (well, there must be only one video stream, and other streams must be audio or text).

And one question about the tool's workflow: it is a long readme, and I'm not sure if I picked up the big picture right. The tool reads AVI and OGMs. You can process the video and each audio channel if the input is OGM (subsets, filtering, recompression), but only the video and first audio channel if it is AVI. Ain't that right? Can you capture to OGM? Can you change frame rate of an OGM?
Well sometimes I am lost in this readme too ;)
To sum up : I didn't changed anything regarding the natural behaviour of VirtualDub (regarding AVI/WAV files, ...).
I added features so that you can open an OGM file, and save to an OGM file.
If you open an OGM file the audio (and text) streams won't be handled like VirtualDub does for AVI (i.e. you cannot recompress the audio, nor change framerate, ..., but you can use an offset).
However you should be able to use a WAV file (and so use recompression, ...) with the "Audio" menu.
But the video is handled as usual, which means you can do what you want (recompress, add filters, change framerate, use subsets, ...). Of course when you use subsets those subsets will also apply to all the streams you want to add.

Another question: should I understand that you VDub mod is using exactly the same code of your wonderful OGMTools? If I am right, why don't you integrate OGInfo in the File Information box. showing all that packet stuff? That would integrate your tools more tightly, I think. This has come also to my mind: can you merge/demux an OGMwith your tool? How? (not with Append AVI nor Save WAV I guess...)
Well I used the same muxing process than in OGMuxer, so in this way this mod use the same code.
If I ever integrate OGMInfo I think this won't be in the File Information Box, because for large files it takes some times to gather the info. Moreover I won't show all the information (-v1, -v2 or -v3) because it can take up to 10% of the filesize (a 700MB OGM file => 70MB of text info using -v3 ; a bit too much to show that ;)).
No you cannot merge or demux with this mod. Merging is a bit too hard to do, so don't expect it to be integrated in a near future (at least not by me) ... or maybe if I have nothing else to do and enough time ;). However I may add a demux button (surely in the "OGM inputs" window) soon (well ... or not, depending if I am motivated ;) ).

By the way, you will also make us a favour if, in your infinite goodness, you completed the VDub Help file including some insight on the file structure of a OGG/OGM file (header, packetization... all the things that make you capable of finding solutions when you get a screwed up file and you don't know what to do -other than going to Doom9's forum :-)- ). Also some Summary about AVIs will be definitely a help (or links to HUMAN-READABLE, technical overviews on AVI or OGM.
Even if I am not sure this would help anybody with a screwed up OGM file, I can add some info. What do you mean by "VDub help file"?

One last feature request, Cyrius: it would be really useful having a preview for each OGM channel (including subtitles) ...
Well this would be great, but I have no way to do that :(
I don't know enough things on how to do that (the way VirtualDub does it) for audio, and it's worse for text streams (I cannot use DirectShow/SubtiDS that easily because VirtualDub doesn't use DirectShow) :(
But if anybody wants to give a look on that and add this feature, feel free to do so :).

I can imagine your face right now: what the f*ck is saying this guy? Excuse me, Mister Pirata! I AM NOT YOUR MOTHER!! Stop demmanding things right now! :-)
WTF are you saying? Excuse me, Mister Pirata! I AM NOT YOUR MOTHER!! Stop demmanding things right now!
:devil: :p

pirata
28th October 2002, 18:27
I did 2 more tests with VDub OGM.

Test 1 : vídeo + ac3+ mp3 + 3 ogg vorbis + subs. Cut in two halfs.
Result: first part plays with Zoom Player. Synch seems right with all streams, also subs. It freezes at the beginning (black picture but the timer counts) because the first stream is AC3. If you switch to any other stream, the movie goes to the point the counter is and plays well. Some freezing by seeking and switching audiotrack, but it recovers when seeking a little bit back or forth). The second half definitely doesn't play, no matter what you do. It seems a file problem (produced when cutting), not a player problem, since the first half plays well. Any idea?

BSPlayer plays the first half only if you enable all streams in the oggspliter DSF. It plays ac3, mp3 and one vorbis, all at once. The decoding of all that streams plus video makes the playback slow! It won't play the second half, no matter what you do.

Test2: video + ogg vorbis (44100) + ogg vorbis (48000). No subsets involved. Just straight muxing.
Result: perfect! I thought I would get those speed-up problems I read about in some threads (if you mux vorbis at different sample rates, when you change the stream, the movie is played at a differetn frame rate). They also stated that muxing mono vorbis with stereo vorbis makes the file unplayable, which I confirmed in my computer. Then, I discarded the possibility of using 5-channels-vorbis because it would screw things up, but maybe it won't. Is 5-channels vorbis a replacement for ac3? I mean can you output it via spdif and heard it in a dolby pro logic amp? May be I could use it and save all this trying and checking...

About yuor reply:

-"VirtualDub help file" is simply the help that Avery Lee wrote. By the way: can you capture directly in OGM?

-I have opened a OGM and couldn't see all the audio streams in show inputs screen. I suposed it should be so, but I am not sure. Maybe not. I also opened an avi and supposed the audio stream would appear in Show inputs windows, but also not. What's wrong?

-For the help you just had to include a summary of the documentation you used to understand AVI or OGG, or simply give links to some archive in your webpage with those docs. But I think I'll be completely honest to you: I have been involved with C++ and QT one year ago, during the last year of my studies. My golden dream is to restart with it again as soon as I have my final project done (in 2 or 3 months), in order to understand and enhance the tools I so much depend on (encoding tools -DVD2AVI-, editing tools -VDub- and other, desktop tools around). I fell only them I will have some possibilities to solve problems and help people solve problems. I'd like to get involved with AVI and OGG in the meantime, but I don't have the time to read those thick specs from xiph.org, unless some helping hand guides me. I am en electrotechnical engineer, and I feel myself able to do these things, but I really feel I need help. For that reason, some kind of summary (with some insight and references to deeper docs) would be highly appreciated.

OK. I look forward to news from you. Cheers!

Pirata

Suiryc
28th October 2002, 19:10
Originally posted by pirata
The second half definitely doesn't play, no matter what you do. It seems a file problem (produced when cutting), not a player problem, since the first half plays well. Any idea?
Arrgh, seems like theory and reality are different ;)
I will do some tests (again) to see what it could be.
I am sure you tried it but : seeking doesn't solve the problem? (sometimes playback doesn't start and I have to seek somewhere in the clip so that it can start)
(NB : when having so much streams be sure to disable "Enable all streams" in OggDS because this generally prevent the OGM from being played).
Could you use OGMinfo (without -v? option, a check up will be enough) on the second part to see if it doesn't find problems (like Invalid streams or similar) ?

Is 5-channels vorbis a replacement for ac3? I mean can you output it via spdif and heard it in a dolby pro logic amp? May be I could use it and save all this trying and checking...
No idea, but I am sure someone else on this forum can answer :)

I have opened a OGM and couldn't see all the audio streams in show inputs screen. I suposed it should be so, but I am not sure. Maybe not.
The "OGM inputs" window should show all the (valid audio or text) streams in your (OGM) input file.
What are the streams not shown in your case? All streams are valid (i.e. you can enable any of them when playing back) ?
You can also use OGMInfo to see if everything is OK with the file.

I also opened an avi and supposed the audio stream would appear in Show inputs windows, but also not. What's wrong?
Hehe, it is in the readme file ;)
When your input file is an OGM file, all streams are "transfered" in the "OGM inputs" window (thus not allowing you to recompress, change samplerate, ...).
When your input file is an AVI, the main (i.e. first) audio stream remains in the "Audio" menu (so you can recompress it, change samplerate, ...). Other audio streams are not taken into account.

For the help you just had to include a summary of the documentation you used to understand AVI or OGG, or simply give links to some archive in your webpage with those docs. But I think I'll be completely honest to you: I have been involved with C++ and QT one year ago, during the last year of my studies. My golden dream is to restart with it again as soon as I have my final project done (in 2 or 3 months), in order to understand and enhance the tools I so much depend on (encoding tools -DVD2AVI-, editing tools -VDub- and other, desktop tools around). I fell only them I will have some possibilities to solve problems and help people solve problems. I'd like to get involved with AVI and OGG in the meantime, but I don't have the time to read those thick specs from xiph.org, unless some helping hand guides me. I am en electrotechnical engineer, and I feel myself able to do these things, but I really feel I need help. For that reason, some kind of summary (with some insight and references to deeper docs) would be highly appreciated.
:)
Well I just used VirtualDub for the AVI part. But I will do my best to write some sort of guide for Ogg/OGM file structure (hmm maybe it will looks like the doc on Xiph site which is the one I read to start ;) ).

pirata
29th October 2002, 01:58
Well: the second half will play only if the selected audio stream is other than the ac3 stream. If you try to play with the ac3 stream enabled it freezes. If you go from mp3 or vorbis to ac3 it freezes. One difference between the first half and the second half is that when you start the first half the timer starts counting. This does not happen in the second half (it sounds unimportant, but maybe it is not). And believe me (I told you this with tears in my eyes): SEEKING DOESN'T FIX IT. :-(

Look Cyrius: I begin to have the impression the original ac3 stream is fucked up. It doesn't play quite right in my player. I'll do another test with another ac3 I just got from a friend. I'll tell you tomorrow. I hope things will be right this time and evrything will work (cutting included).

(NB : when having so much streams be sure to disable "Enable all streams" in OggDS because this generally prevent the OGM from being played).

I have it always disabled.

The "OGM inputs" window should show all the (valid audio or text) streams in your (OGM) input file.
What are the streams not shown in your case? All streams are valid (i.e. you can enable any of them when playing back) ?
You can also use OGMInfo to see if everything is OK with the file.

The film I loaded was precisely the first half of the movie. All steams are valid and playable in Zoom Player, and DONE OF THEM is showed in the Show inputs dialog window.

When your input file is an AVI, the main (i.e. first) audio stream remains in the "Audio" menu (so you can recompress it, change samplerate, ...). Other audio streams are not taken into account.

So is it impossible to transfer an AVI to OGM without demuxing the audio? Wouldn't it be nice to load the avi with audio and video and to have a switch in the Audio menu named "Transfer avi audio stream to ogm inputs"? :-) It seems something natural for a OGM-modified VirtualDub. Would it be difficult to implement?

One more thing: the first half is prone to freezing when you seek, switch the language, switch for some seconds to another application window, or post the Zoom Player context menu. Seems that the movie is not very easy to play. In AVIs, it could mean some bad interleaving value. Is there something similar in OGM? Can it be there a playability issue in files generated by your tool?

One last thing: you have said that things like OGM merging/demuxing or synch preview wil be really difficult to implement. I understand it, and just have one thing to say. Have you tried to contact withthe other OGM-guys, Koepi and Tobias? Maybe they can be helpful with the OGM details (not the VDub details, by which only Avery Lee can be helpful), so that the implementation becomes a little bit easier. It is just one idea. Always thought working in group makes things easier. :-)

OK. I let you alone and stop bugging you! Seriously: thank you for your time and patience.

Pirata

Asmodian
29th October 2002, 02:01
Sorry but 5 (or 6) channel vorbis cannot be decoded by a dolby pro logic amp, and afaik doesn't do cross channel compression so the size per sound quality gain will not be very much if any at all (relative to ac3).

ps
Thanks for the great mod of vdub Suiryc, it is so much easier to find a good split point for my multi-cd movies :)

pirata
29th October 2002, 02:42
one error in my last post:

Where it states "and DONE OF THEM is showed in the Show inputs dialog window", it should state "and NONE OF THEM is showed in the Show inputs dialog window".

Suiryc
29th October 2002, 13:16
Originally posted by pirata
The film I loaded was precisely the first half of the movie. All steams are valid and playable in Zoom Player, and NONE OF THEM is showed in the Show inputs dialog window.
Oops, I think you like to open your files by using "Open with" or Drag'n'drop with VirtualDub ...
Sorry but I just (think about and) noticed those two ways don't work with OGM files (well it works for opening the file but it then doesn't load the streams in the "OGM inputs" window) :(

So is it impossible to transfer an AVI to OGM without demuxing the audio? Wouldn't it be nice to load the avi with audio and video and to have a switch in the Audio menu named "Transfer avi audio stream to ogm inputs"? :-) It seems something natural for a OGM-modified VirtualDub. Would it be difficult to implement?
The audio stream handled in the "Audio" menu is muxed in the OGM file. This mean you can transfer an AVI (but only video+first audio stream) to OGM.
The other possibility is to use OGMuxer which take into account all the audio streams in the AVI (and can solve some out of synch issues when some of the audio streams are VBR ones - and that VirtualDub give you the well-known message about a VBR stream ;) )

One more thing: the first half is prone to freezing when you seek, switch the language, switch for some seconds to another application window, or post the Zoom Player context menu. Seems that the movie is not very easy to play. In AVIs, it could mean some bad interleaving value. Is there something similar in OGM? Can it be there a playability issue in files generated by your tool?
Maybe, but in some ways I cannot do that much against that because it is also the Ogg library which makes the interleaving.
I give data to the Ogg layer (and I think I use a good way), which in return give me "Pages" (which size is generally about 4kB). Then I write the Pages in the "good order" (i.e. time order) in the file.

One last thing: you have said that things like OGM merging/demuxing or synch preview wil be really difficult to implement. I understand it, and just have one thing to say. Have you tried to contact withthe other OGM-guys, Koepi and Tobias? Maybe they can be helpful with the OGM details (not the VDub details, by which only Avery Lee can be helpful), so that the implementation becomes a little bit easier. It is just one idea. Always thought working in group makes things easier. :-)
I already make tools that allow merging and demuxing. The demuxing tool is not that hard to do (it is in fact the easiest), but the merging is.
But what is more difficult is to integrate that in VirtualDub (I mean using VirtualDub internal structure and routines).


PS : no need to post errata for previous posts, you can edit the faulty one ;)

Suiryc
30th October 2002, 15:29
Hi

I made a (really basic) doc on some things to know when manipulating Ogg streams. I put it on the site.

I am not really good at making docs, so if you don't understand some/anything, tell me.
If you need other information tell me too.
(Nb : for the moment I didn't talked of headers in Packets)

pirata
30th October 2002, 18:33
Hi Cyrius. I have tested with the new AC3 I got, and I ran into problems.

I muxed video+ac3+ogg vorbis+ogg vorbis+ mp3 +srt with your tool, cutting into 2 halfs.

The ac3 comes from a movie which is not the same as the one I take the video track of -I am still downloading the ac3 for that video track!-, although their durations are almost equal. So: the movie I take the ac3 of is split in 2 AVIs, so I had to join them and extract the audio with Nandub (actually with a modified version that also opens MPEG2, meybe you have heard about it).

After muxing, the first half plays as usual (you have to seek to have it start playing; subs OK; synch SEEMS OK -far much more testing needed-, language switching and playback are quite smooth).

In the second half it plays well (you don't even have to seek to have it start playing!?!), but... there's a problem. If you seek circa 8 minutes into the movie, the ac3 track ends exactly at the joining point of the 2 original avi files. So, somehow, Nandub joins the 2 ac3s in such a way your muxer does not accept, and when it hits the joint point, it considers there is no more ac3 data left to mux.

After searching in the threads, I have seem nothing but some comments about Nandub not muxing nor cutting properly AC3. There is also the possibility of bad preload/interleaving values. What is the problem about Nandub not cutting right? And does OGM use interleave values I should take care of? I mean, if interleave values are responsible for jerky/choppy playback, how can I fix that in OGM? Are those prolems impossible to fix in OGM?

I have also found comments about BeSweet, BeSplit and BeSliced being able to fix that. I have ripped the AC3 streams from each AVI separatedly, and I want to fix/mux them with those tools. BeSplit and BeSweet seem able to fix and join, but I get only fixing , no joining. Do you know the right command line options for that? An what about the WAV header? It will be erased by any of those tools. It is not necessary for your muxer tool?

I've tried this, from the AUDIO FAQs:

"7) how can i join ac3 files ?
let's say you want to join stream1.ac3,stream2.ac3,stream3.ac3 into stream.ac3.
create a listfile. join.lst :
stream1.ac3
stream2.ac3
stream3.ac3

and then, use BeSweet :

code:---------------------------------------------------------
BeSweet -core( -input join.lst -output stream.ac3 -payload )
--------------------------------------------------------------

this will also work on CBR mp3 files.
note - Since BeSweet v1.4, this process requires VOBInput.dll. get it from BeSweet's PlugIn Page. "

...BUT IT DOESN'T WORK. BeSplit is able of doing the same, but they both just answer with the help tips when I give such input. The dlls semm to be there (they all). The lst file seems right, also.

I've also seen written by DarkAvenger:

In fact a copy /b file1.ac3+file2.ac3 out.ac3 should do it. Only thing is, the time stamps are not correct and you must make sure, that the first ac3 doesn't end in the middle of a frame. (If you open it in HeadAC3he and don't get a warning, you are fine.) If you do get a warning, choose ac3 target and start. Then you can merge the files safely.

HeadAC3 says the files are right, but I know that copying includes the header of the second file... don't like that.

Put simply: I don't know how to join the ac3s to make an ac3 that your muxer will mux right. Any idea?


Some questions on your last reply post:

Oops, I think you like to open your files by using "Open with" or Drag'n'drop with VirtualDub ...
Sorry but I just (think about and) noticed those two ways don't work with OGM files (well it works for opening the file but it then doesn't load the streams in the "OGM inputs" window)

-Yeah, the problem was drag'n drop and file associations. If you open VDub OGM and then open the file, OGM inputs do appear properly. Could you make VDub OGM compatible with that features? :-) I mean they are really useful.

The audio stream handled in the "Audio" menu is muxed in the OGM file. This mean you can transfer an AVI (but only video+first audio stream) to OGM.
The other possibility is to use OGMuxer which take into account all the audio streams in the AVI (and can solve some out of synch issues when some of the audio streams are VBR ones - and that VirtualDub give you the well-known message about a VBR stream )

- I've opened the AVI correctly, but the audio stream is not present in OGM Inputs anyway. You mean it is muxed although it is not visible? ANd how do you set comments for it?

Suiryc
30th October 2002, 19:31
Originally posted by pirata
So: the movie I take the ac3 of is split in 2 AVIs, so I had to join them and extract the audio with Nandub (actually with a modified version that also opens MPEG2, meybe you have heard about it).
You are talking of VirtualDubMpg2? :) Look here (http://forum.doom9.org/showthread.php?s=&threadid=36797).

In the second half it plays well (you don't even have to seek to have it start playing!?!), but... there's a problem. If you seek circa 8 minutes into the movie, the ac3 track ends exactly at the joining point of the 2 original avi files. So, somehow, Nandub joins the 2 ac3s in such a way your muxer does not accept, and when it hits the joint point, it considers there is no more ac3 data left to mux.
Exact. I read the AC3 file frame by frame. Unfortunately Nandub doesn't care of cutting in the middle of a frame.
So when my tool jump on the point where Nandub cut (or where the file may be corrupted), it doesn't find a new frame and assume the stream is finished.
See below for a workaround.

And does OGM use interleave values I should take care of? I mean, if interleave values are responsible for jerky/choppy playback, how can I fix that in OGM? Are those prolems impossible to fix in OGM?
No there is no real interleaving values (like for AVI) with OGM.

I have also found comments about BeSweet, BeSplit and BeSliced being able to fix that. I have ripped the AC3 streams from each AVI separatedly, and I want to fix/mux them with those tools. BeSplit and BeSweet seem able to fix and join, but I get only fixing , no joining. Do you know the right command line options for that?
Sorry I don't use those tools features so don't know how to use them.

An what about the WAV header? It will be erased by any of those tools. It is not necessary for your muxer tool?
VirtualDub need the WAV header only if you use the "Audio -> WAV audio" menu. You want to get the AC3 working in your OGM, so there are two ways to do the job for you here :
1. Extract the WAV from your merged AVI, and open it using the "Audio" menu ("WAV audio"). This way I use the standard routines of VirtualDub (which means VirtualDub won't artificially end the stream where Nandub joined the files, because it doesn't take care of that). To set the comments, use "OGM -> Audio comments"
2. extract each AC3 part (remove the WAV header if any), fix them, join them, and use the merged AC3 in "OGM inputs"

I've also seen written by DarkAvenger:
...
Unfortunately the copy /b won't fix cut AC3 frames.

- I've opened the AVI correctly, but the audio stream is not present in OGM Inputs anyway. You mean it is muxed although it is not visible? ANd how do you set comments for it?
:p lol sometimes my english sucks. So : when you open an AVI file, the first audio stream is handled as usual (in the "Audio" menu), so you won't see it in the "OGM inputs" window (which only show streams concerning OGM files).
To set its comments, use the "OGM -> Audio comments" menu.

pirata
30th October 2002, 20:41
VirtualDub need the WAV header only if you use the "Audio -> WAV audio" menu. You want to get the AC3 working in your OGM, so there are two ways to do the job for you here :
1. Extract the WAV from your merged AVI, and open it using the "Audio" menu ("WAV audio"). This way I use the standard routines of VirtualDub (which means VirtualDub won't artificially end the stream where Nandub joined the files, because it doesn't take care of that). To set the comments, use "OGM -> Audio comments"
2. extract each AC3 part (remove the WAV header if any), fix them, join them, and use the merged AC3 in "OGM inputs"


About broken frames: so the comments I read about Nandub not cutting ac3 properly is that the last frame gets can get fractioned, right? What happens with the remainder of that frame? Is it placed in the first frame of the second half (so it is half-a-frame), or is it discarded (so padding is needed)? DarkAveger says that such an issue should be detected by HeadAC3 and a message should arise when opening the ac3 with that tool. I tried that and no message arose, so the file should be OK. But your muxer says the contrary. I believe your muxer.

About 1.: so the ac3 will get muxed in the OGM? And what about when the player reach the broken frame? Is that frame somehow padded by the original VDub routines? What will I be getting if I go this way?

About 2: HOW??? It seems the "cleanest" way, and removing the headers/fixing the broken frame is possible with besplit/besweet, but I don't know how to merge them.

By the way: when VDubOGM cuts the OGM file, is it a clean cut (no broken ac3 frames) as far as a keyframe is selected for cutting? So, if I cut it now and I try to merge with OGMerger later, should the resulting file be as it never had been cut, or are there issues and cautions I should consider? (I am thinking on the possibility of a future migration from CF-Rs to DVD-Rs)

About VirtualDubMod: what can I say? It is the most intelligent idea in ages. If you don't depend on a lot of tools, but on 1, and the people coding that tool are as helpful as you are, the world turns shiny. :-) I think that Avery Lee should get involved, tough, because he would help a lot - I guess- with the VDub innards, which seems to be what you fear the most. But I don't know if he's keen to colaborating. He wasn't ever involved with hot new standards. Anyway, you could try to get him in the staff.

A few questions: will we see some general improvements, like OGM audio stream synch preview (including AC3 and MP3 VBR), demuxing, ogm file info, open MPEG2 files (not only VOBs)? :-) I guess yes, but step by step.

I just want to say: keep up with that. You're going to be famous.

Suiryc
30th October 2002, 21:49
Originally posted by pirata
About broken frames: so the comments I read about Nandub not cutting ac3 properly is that the last frame gets can get fractioned, right? What happens with the remainder of that frame? Is it placed in the first frame of the second half (so it is half-a-frame), or is it discarded (so padding is needed)? DarkAveger says that such an issue should be detected by HeadAC3 and a message should arise when opening the ac3 with that tool. I tried that and no message arose, so the file should be OK. But your muxer says the contrary. I believe your muxer.
I don't know how works HeadAC3, but there are two different problems : broken frame at the beginning (for example when extracting the second AC3 part) and broken frame at the end.
When the broken frame is at the beginning, generally you just synch on the next frame and the rest should remain synched.
Maybe HeadAC3 just warn you in one case, but not in the other ...

About 1.: so the ac3 will get muxed in the OGM? And what about when the player reach the broken frame? Is that frame somehow padded by the original VDub routines? What will I be getting if I go this way?
VirtualDub routines don't know what is inside the WAV file (it can be AC3, MP3, WMA, or whatever). So if there are broken frames, it is not a problem because VirtualDub just read the data as they are (this means of course that the stream still contains the broken frames, but it is then up to the decoder to take care of that, as it was the case when the stream was in the AVI/WAV file).

About 2: HOW??? It seems the "cleanest" way, and removing the headers/fixing the broken frame is possible with besplit/besweet, but I don't know how to merge them.
As I said I don't know how to use those tools for those features. Sorry.

By the way: when VDubOGM cuts the OGM file, is it a clean cut (no broken ac3 frames) as far as a keyframe is selected for cutting? So, if I cut it now and I try to merge with OGMerger later, should the resulting file be as it never had been cut, or are there issues and cautions I should consider? (I am thinking on the possibility of a future migration from CF-Rs to DVD-Rs)
It depends. With an OGM input there is no real problem cutting because in this case I am like VirtualDub : I don't care what is inside the Packets (the stream), I just keep Packets I have to keep, and throw the others.
When you use an extern file (using "OGM inputs"), I do a proper cut (I don't cut in the middle of an AC3/MP3 frame).
If your input file is an AVI or you use "WAV audio", then this is not a proper cut because it is then VirtualDub that cut the stream (not my routines).

pirata
31st October 2002, 02:16
Well, man. I put your suggestion into practice and... it works!

The first half needs seeking to start playing and it freezes sometimes when seeking. Synch seems right. Subs look right. No jerky playback (is jerky playback exiled forever with OGM?).

That freezing-thing is maybe something you should discuss with the coder of Zoom Player, since he told me in its forum he was planing to give a better support to OGM in his player. You could be heaven-sent for him.

By the way, wouldn't it be interesting to have his opinion and help in the development of your new VirualDubMod? I mean, maybe it would be interesting to jointly develop an OGM editor and a OGM player, so that they worked seamlessly. I have thought of Zoom Player and its programmer because it is the only one that plays full-fledged OGMs, but you now there is an effort to code THE REAL OFFICAL OGM PLAYER (don't remember the name). Wouldn't it be interesting to set up some cooperation across the program to edit the OGMs and the program to play them? (sounds logical, even though nobody did it before)

As to the second half of the movie, it plays immediately without any seeking (!?!?). Same good results.


but there are two different problems : broken frame at the beginning (for example when extracting the second AC3 part) and broken frame at the end

So the remainder of the broken frame is discarded?

If your input file is an AVI or you use "WAV audio", then this is not a proper cut because it is then VirtualDub that cut the stream (not my routines).

I have used wav audio to introduce the ac3 at this time. I have also had VirtualDub cut the movie. Do you mean that I am generating more broken frames??!?! So the only safe way to mux is to use OGM inputs??I am thinking on future mergings of the movie parts -to write the whole movie onto a DVD-R -, so I don't want more broken frames.

Maybe you meant that when I save video + AC3/MP3 VBR to AVI, the cutting is not right because VDub's routines are acting, but when I save to OGM, it is your routines that do the job (muxing and cutting), so there is nothing to fear. Hope you meant that, man!

One question about cutting: if you do not break frames, that means that if a cut point falls in the middle of a large frame, you keep the frame in the first half, and there's a silence gap (some miliseconds) at the beginning of the second half? Maybe I have understand it all wrong.

This you haven't answered:
"So, if I cut it now and I try to merge with OGMerger later, should the resulting file be as it never had been cut, or are there issues and cautions I should consider? (I am thinking on the possibility of a future migration from CD-Rs to DVD-Rs)"

UPDATE
I've just tried to merge the two working halfs in one with OGMerger, and it has hung! Uh oh...
ANOTHER UPDATE
I have found a way to fix the problem with broken frames in ac3s: you fix the ac3 files with BeSliced, and then you join them with DVTool. When muxing with VDubOGM, the ac3 stream doesn't end at the joint point, so it works good. I only wonder if that mixing-tool, DVTool, is doing a proper job at mixing ac3s (how can it know the structure of an ac3? Maybe it just appends the second file -with header and all-to the end of the first ac3. In that case, why does such a shitty file work so good?).

Thanks


PS: Could you point me out some docs about OGM file structure. I found nothing in xiph.org but ogg vorbis.

MaTTeR
31st October 2002, 03:57
Originally posted by pirata
I have thought of Zoom Player and its programmer because it is the only one that plays full-fledged OGMs, but you now there is an effort to code THE REAL OFFICAL OGM PLAYER (don't remember the name).

Last time I checked all Direct Show players play the OGM/Ogg files just fine. The "official" OGM player is called Core Media Player and is expected for public beta release pretty soon.

pirata
31st October 2002, 13:40
Does BSPlayer play OGMs with OGG Vorbis+ac3+mp3 properly for you? Not for me, I assure you.

All mp3 tracks plus all ac3 tracks plus one vorbis are played simultaneously and there's nothing you can change about it.

Zoom Player mutes all tracks but one and allows switch with the "Audio Track" option.

Suiryc
31st October 2002, 15:06
Originally posted by pirata
Well, man. I put your suggestion into practice and... it works!
:)

That freezing-thing is maybe something you should discuss with the coder of Zoom Player, since he told me in its forum he was planing to give a better support to OGM in his player. You could be heaven-sent for him.
For the freezing thing I think Tobias would be of better help than me ;)

By the way, wouldn't it be interesting to have his opinion and help in the development of your new VirualDubMod? I mean, maybe it would be interesting to jointly develop an OGM editor and a OGM player, so that they worked seamlessly. I have thought of Zoom Player and its programmer because it is the only one that plays full-fledged OGMs, but you now there is an effort to code THE REAL OFFICAL OGM PLAYER (don't remember the name). Wouldn't it be interesting to set up some cooperation across the program to edit the OGMs and the program to play them? (sounds logical, even though nobody did it before)
Every input is allways welcome in projects. And if people are interesting in developing VirtualDubMod they should be welcomed :)
THE REAL OFFICIAL OGM PLAYER = The Core Media Player :) (don't say you don't know its name or you will make BlackSun sad ;))

So the remainder of the broken frame is discarded?
If the broken frame position don't cause problems to the program, maybe it doesn't warn you ...

I have used wav audio to introduce the ac3 at this time. I have also had VirtualDub cut the movie. Do you mean that I am generating more broken frames??!?! So the only safe way to mux is to use OGM inputs??I am thinking on future mergings of the movie parts -to write the whole movie onto a DVD-R -, so I don't want more broken frames.

Maybe you meant that when I save video + AC3/MP3 VBR to AVI, the cutting is not right because VDub's routines are acting, but when I save to OGM, it is your routines that do the job (muxing and cutting), so there is nothing to fear. Hope you meant that, man!
:( no. But there are good points ;)
Here is how my tools work :
- if the input file is AC3 or MP3, I process frame by frame (1 frame go into 1 Packet)
- if the input file is WAV I process data as VirtualDub give them (i.e. in general it will not give me 1 frame at a time, but n bytes by n bytes - which means that a Packet then contains maybe an entire frame and 1 or 2 cut frame : a cut frame at the beginning and a cut frame at the end of the Packet). But this is no problem since at decoding time the audio decoder will receive data sequencially and will reconstruct the frames :)

Now when I cut an OGM file, I cut on Packet boundary (i.e. I won't cut a Packet in two), and thus I don't take care of what is inside the Packet (it may be an entire frame created by my tools, or frames fragments).

So what does that mean : if you keep the streams in their container (WAV, AVI or OGM), my tools will cut them without problem (maybe it will cut in the middle of a frame in WAV case, but trying to avoid that would imply too much work on the streams; and anyway it is then up to the audio decoder to handle this case, like it has to do when Nandub did a "bad" cut).

The problem occurs when you extract a stream from its container (WAV -> AC3) and that the stream is somehow invalid / corrupted (like Nandub that cut in the middle of a frame). Because here my tools will process frame by frame (and of course my tools won't be happy with the cut frame ;)).

One question about cutting: if you do not break frames, that means that if a cut point falls in the middle of a large frame, you keep the frame in the first half, and there's a silence gap (some miliseconds) at the beginning of the second half? Maybe I have understand it all wrong.
Yes that's it : I keep the frame in the first half, and somehow delay the audio stream (according to where I cut and what was this position in the stream) in the next part.
The same applies when cutting an OGM file : if the cut should be made in the middle of a Packet, I keep the Packet in the first Part and delay the stream in the second part accordingly.

This you haven't answered:
"So, if I cut it now and I try to merge with OGMerger later, should the resulting file be as it never had been cut, or are there issues and cautions I should consider? (I am thinking on the possibility of a future migration from CD-Rs to DVD-Rs)"
Cutting your OGM file and then merging it with OGMerger should give you back your original file (since as I said I cut on Packet boundaries).
It is not completly your original file (because I have to compute time estimations), but the user won't notice anything at playback time.

UPDATE
I've just tried to merge the two working halfs in one with OGMerger, and it has hung! Uh oh...
When? While merging (reading inputs ? writing output file ? Error messages ?) or when playing the file ?

ANOTHER UPDATE
I have found a way to fix the problem with broken frames in ac3s: you fix the ac3 files with BeSliced, and then you join them with DVTool. When muxing with VDubOGM, the ac3 stream doesn't end at the joint point, so it works good. I only wonder if that mixing-tool, DVTool, is doing a proper job at mixing ac3s (how can it know the structure of an ac3? Maybe it just appends the second file -with header and all-to the end of the first ac3. In that case, why does such a shitty file work so good?).
If the file is shitty it won't work with my tools, so I think it does a proper work :)

PS: Could you point me out some docs about OGM file structure. I found nothing in xiph.org but ogg vorbis.
Somehow OGM = Ogg (the stream specifications, not the Vorbis codec).
Stream specs (http://www.xiph.org/ogg/vorbis/doc/oggstream.html) explains how streams are multiplexed in an Ogg bitstream (and so in an OGM file), Framing specs (http://www.xiph.org/ogg/vorbis/doc/framing.html) explains the structure of Packets and Pages in a stream (a bit technical ;) ). So those two documents explain how Ogg stream works (and so how OGM is).

Does BSPlayer play OGMs with OGG Vorbis+ac3+mp3 properly for you? Not for me, I assure you.
MaTTeR was saying that every player using DirectShow has OGM support. Of course some players have a better support (Zoom Player for example) because they use workarounds to problems we all still have with OGM files (like the fact AC3 and MP3 streams play together with other audio).
I also have problems with BSPlayer ;)


For your ideas about VirtualDubMod (yeah I read it before you edited your post and deleted this part ... BTW don't edit too much your posts, I just saw you added another UPDATE ;)), some of them don't depend on me (reading Mpg2, ...) but on other developpers (here pulco-citron).
For the rest what could I say other than ... maybe. Of course your ideas / propositions are great (and would make the program better), but I don't allways have the skills (at the moment) to do those.
Of course people that have skills in those domains are allways welcomed :), and people inputs (ideas, propositions, and of course bug-reports ;)) are also welcomed :)


PS : maybe we should compete for the longest posts in a thread ? :D

pirata
31st October 2002, 19:54
Thanks God there is you, man! :-)

OK. I'll read the OGG Specs. They are not 100-pages long as I expected. Is it all, or just the basics? Let's see if I can manage to get back my C++ knowledge. Anyway, I only programmed under Unix (cgg and so). What do I need to confortably program in C++? M$ Developer Studio? What is Cygwin? How can I link the Windows API/DirectShow and all that stuff to my programs? And shall I use QT or what? Jeeee, it is all so complicated...

For the freezing thing I think Tobias would be of better help than me

You mean that the stream you generate cannot be somehow "better"? That the stream cannot have the flaw?

Every input is allways welcome in projects. And if people are interesting in developing VirtualDubMod they should be welcomed
THE REAL OFFICIAL OGM PLAYER = The Core Media Player (don't say you don't know its name or you will make BlackSun sad )

SORRY! SORRY! SORRY! SORRY! SORRY! SORRY! SORRY! SORRY! SORRY! SORRY! SORRY! SORRY! SORRY! SORRY! SORRY! SORRY! SORRY! SORRY! SORRY! SORRY! SORRY! SORRY! SORRY! SORRY! SORRY! SORRY! SORRY! SORRY!


So the remainder of the broken frame is discarded?

Let me say it other way: NanDub lost a part of a frame, or that part is still in the ac3 files? The frame was fractioned and the fractions sent to each ac3, or the second half started with the next frame?

Moreover, you say that ac3 streams can be fractioned inside the packets. I guess they can be perfectly reconstructed on playback time, and then passe through to the decoder. So that fractioning is not much of a problem (hope I am right on that one).

Yes that's it : I keep the frame in the first half, and somehow delay the audio stream (according to where I cut and what was this position in the stream) in the next part.
The same applies when cutting an OGM file : if the cut should be made in the middle of a Packet, I keep the Packet in the first Part and delay the stream in the second part accordingly.

In this quote I understand the second part (cutting OGM) but I don't know which case is the first case (cutting what? an AVI? That's VDub job, isn't it? And it WILL break the frames, won't it?).

But I have understand a lot now! I conclude from this that the steams are really safe in OGM. When I decide to migrate to MFC ( :-) I mean in year 2020), I will join the movie parts with my good old VDubMod, which will render a one file without gaps, with the last packet of one part falling into place in the delay of the next part. Then, I'll demux the ac3. Each fractioned ac3 frame will be reconstructed from each packet and the whole stream will be back as if it never had been away. Am I right? The only thing that paints my blue skies (light) gray is:

Cutting your OGM file and then merging it with OGMerger should give you back your original file (since as I said I cut on Packet boundaries).
It is not completly your original file (because I have to compute time estimations), but the user won't notice anything at playback time.

What are time estimations?? Some kind of chemical weapon that will erase my HD and make me sterile? :-)
I guess you mean time stamp reconstruction or sort-of, do you?.


When? While merging (reading inputs ? writing output file ? Error messages ?) or when playing the file ?

Don't you panic. I'll test more thoroughly on that, I assure you. I can't just tell you that there was no output file written, so it hung at reading input files. They were the 2 files I created, which were working right. Hummm....

PS : maybe we should compete for the longest posts in a thread ?

Let's do it!

Suiryc
31st October 2002, 21:01
Originally posted by pirata
OK. I'll read the OGG Specs. They are not 100-pages long as I expected. Is it all, or just the basics?
It is a detailed description of how things work. The Ogg Vorbis SDK pack (on Xiph site) give a more detailed doc on the programming side.

Let's see if I can manage to get back my C++ knowledge. Anyway, I only programmed under Unix (cgg and so). What do I need to confortably program in C++? M$ Developer Studio? What is Cygwin? How can I link the Windows API/DirectShow and all that stuff to my programs? And shall I use QT or what? Jeeee, it is all so complicated...
Well I only programmed under Window$ (I already installed various versions of Linux, but never had enough time to tweak it ... and at that time there were not enough things for playing back video clips ;) ...).
I use M$ Visual Studio .NET (well only Beta 2, because it was free, but as you can see it is enough to make little programs ;) ). Now I am using Visual Studio 6 again (for VirtualDubMod ... because it's easy if we all use the same compiler ;) ).
If I am not wrong Cygwin is a set of files that can help when you have UNIX projects and want them work under Windows (somehow it provides to those projects an UNIX-like environnment under Windows).
To link anything (Windows or other API) you generally need libraries (.lib files) and definitions (.h) files. Windows' main ones are included with compilers, and you can get others in SDKs. Then you just precise in your project's settings that you want to use the library (and #include the .h file in your source files that need it).
QT ? (I don't think it's QuickTime ;) ).

You mean that the stream you generate cannot be somehow "better"? That the stream cannot have the flaw?
I won't say the stream I generate cannot be better (everything can be better ;)). But I think the freezing problem is also due to DirectShow/OggDS.

Let me say it other way: NanDub lost a part of a frame, or that part is still in the ac3 files? The frame was fractioned and the fractions sent to each ac3, or the second half started with the next frame?
I would bet that Nandub doesn't work that bad, and just split the frame between the two parts (so first part contains beginning of the frame, and next part the end of this frame).

Moreover, you say that ac3 streams can be fractioned inside the packets. I guess they can be perfectly reconstructed on playback time, and then passe through to the decoder. So that fractioning is not much of a problem (hope I am right on that one).
Yes that's it (it is the same in AVI files, where you can consider Chunks as Packets).

In this quote I understand the second part (cutting OGM) but I don't know which case is the first case (cutting what? an AVI? That's VDub job, isn't it? And it WILL break the frames, won't it?).
In the first case I was talking of my routines opening AC3 or MP3 files (and so reading data frame by frame) : I won't cut in the middle of a frame in this case.

But I have understand a lot now! I conclude from this that the steams are really safe in OGM. When I decide to migrate to MFC ( :-) I mean in year 2020) ...
Hmm, BlackSun will be really sad here ;) (BTW it is MCF - Multimedia Container Format - and not MFC - Micro$oft Fundation Classes - ... but a lot of people do the mistake ;)).

..., I will join the movie parts with my good old VDubMod, which will render a one file without gaps ...
While I am at it there is still a little "bug" when cutting subtitle streams : I don't really cut properly at the end.
I mean for the moment I didn't find a convenient way to warn my routines that I am ending the subtitle stream (for cutting), so the last subtitle I am processing won't be truncated as it is in OGMuxer/OGMCutter.
As the time between two subtitles is also important in OGM (and considered as a blank subtitle), this result sometimes in weird things : if your cut happens between two subtitles, and that the next subtitle appears 1 minutes later, this minute will be part of the cut file (which means the clip will say it lasts 1 minutes longer than the other - video and audio - streams, but you will never see this last minute of the clip because your player, seeing there is no more video and audio, will just consider that the clip has ended). The next part will however be OK (the cut at the beginning is properly done).
Unfortunately merging the files you cut will cause problem because of this minute ... :(
I should really fix this in a next version ...

..., with the last packet of one part falling into place in the delay of the next part. Then, I'll demux the ac3. Each fractioned ac3 frame will be reconstructed from each packet and the whole stream will be back as if it never had been away. Am I right?
Yes :)

The only thing that paints my blue skies (light) gray is:
...
What are time estimations?? Some kind of chemical weapon that will erase my HD and make me sterile? :-)
I guess you mean time stamp reconstruction or sort-of, do you?.
Yes that is what I am talking about.
In an Ogg stream, Pages have a fields that give its absolute granular position (which, knowing the kind of stream it is, give the timestamp).
Of course for each file the timestamps (should) start at 0.
So when merging I have to compute (estimate, since I cannot be sure that what I will get will be exactly the original time) timestamps for the cut parts.
Generally for video, audio (non Vorbis) and text streams I get the orignal timestamps :). But Vorbis stream is different : one cannot tell how many samples there are in one Packet (it is a technical problem - that I couldn't explain - due to what experts call the "overlapping nature of Vorbis" - and I am not an expert ;)).
This make that when merging I may be wrong of about 500 samples (about 10ms for a 44.1kHz stream).

Don't you panic. I'll test more thoroughly on that, I assure you. I can't just tell you that there was no output file written, so it hung at reading input files. They were the 2 files I created, which were working right. Hummm....
:scared:

pirata
1st November 2002, 01:44
QT ? (I don't think it's QuickTime ).

QT was a cross-plataform library. I used it to build a GUI under Unix interfacing with OpenGL and OpenInventor (cool huh?). The same code cuold be used for the GUI under Windows.

I should really fix this in a next version ...

Please: do it. Do it for me. Do it for you. Do it for us. Just do it.

I'll keep you up to date about OGMerger hangs.

pirata
1st November 2002, 01:45
QT ? (I don't think it's QuickTime ).

QT was a cross-plataform library. I used it to build a GUI under Unix interfacing with OpenGL and OpenInventor (cool huh?). The same code cuold be used for the GUI under Windows.

I should really fix this in a next version ...

Please: do it. Do it for me. Do it for you. Do it for us. Just do it. :-)

I'll keep you up to date about OGMerger hangs.

pirata
1st November 2002, 15:22
Sorry about the news, Cyrius, but OGMerger hung yesterday, when merging two working OGMs. The hung happened when it was parsing the first OGM. The percentage counter stopped, while the process still consumed a big deal of CPU resources.

AS to the subtitle cutting problem: do you recommend me to wait until it is solved? I would do it if you assure me that you will have it done in a week or two time. I'll wait that time if that assures me that all my streams are safe in OGM.

Suiryc
1st November 2002, 16:51
:scared: OK so I need to do some more tests with OGMerger ...

I will see if I can easily fix the subtitle cutting problem in the next days ...

pirata
2nd November 2002, 06:04
Please drop me a line when you've got news, will you?

Suiryc
2nd November 2002, 19:06
I fixed the problems when opening an OGM file using VirtualDub commandline (so this should work also using "Open with"), or using drag'n'drop.
I also fixed the problem with subtitle cutting (now the tool should properly cut at the end, and truncate the subtitle stream to the length of the video stream).

I released a new version of VirtualDubAVS&OGM because those bugs were somehow important ones.
But this is likely to be the last release I do.

For future bug fixes / enhancements I recommand you to switch to VirtualDubMod as soon as releases are available (should be the case soon) :)


PS : and this time I really put a basic OGM doc on the site ;)

pirata
2nd November 2002, 21:11
Man you are a real hard worker!

I look forward to the release of VDubMod! Do you think it will be any soon now? Will it be compatible with OGMs created with VDubAVS&OGM? Of course it will... :-)

By the way: I 've talked to DSPGuru. The problem with BeSweet not being able to join ac3s was actually an error of mine (it was so silly I won't comment it). The fact is that DSPGuru maintains that if you merge the ac3s with BeSweet, it will reconstruct the broken frame as if it had never been cut, PROVIDING THAT the beginning of the broken frame is at the end of the first ac3 and the end of the frame is at the beginnning of the second ac3. You said that it would be so, since you supposed that Nandub don't lose parts of the ac3 frame when it cuts it, but it is spread across the resulting ac3s.

I have done so (joining with BeSweet without fixing the ac3s first), and the result was wrong (the VDubOGM muxing routine reaches the broken ac3 frame and stops there). That means that BeSweet did not repair the broken ac3 frame. If DSPGuru is right, that could mean that Nandud actually is that bad at cutting, and a part of the ac3 frame is somehow lost, which could no be addressed by BeSweet unless you fix (pad) the broken frame first. What do you think?

Pirata

Suiryc
2nd November 2002, 22:01
Originally posted by pirata
I look forward to the release of VDubMod! Do you think it will be any soon now? Will it be compatible with OGMs created with VDubAVS&OGM? Of course it will... :-)
We were thinking about next week ... so if we don't encounter problems this should be soon :)
Of course you will be able to open OGM files created using VDubAVS&OGM (if it is an OGM file it should work ;)).


If DSPGuru is right, that could mean that Nandud actually is that bad at cutting, and a part of the ac3 frame is somehow lost, which could no be addressed by BeSweet unless you fix (pad) the broken frame first. What do you think?
I don't know how works BeSweet for joining files, so if what DSPGuru said is right, then Nandub somehow dropped some data while cutting.
So you are right.

pirata
4th November 2002, 13:26
Hi again Cyrius. Did you do new tests regarding OGMerger hangups while parsing input files?

Suiryc
4th November 2002, 19:21
I made some other tests with OGMerger.
I think I fixed a problem making the Ogg library behave strangely in OGMerger. And I think this is what caused problems in your case.
Could you try the new version and tell if it works ?

pirata
4th November 2002, 21:43
OK. I'll do it. BTW: I see there is already a release of VDubMod? Which one is the thread to discuss this tool? I'am trying this release and I have things to say.

Cheers Pirata

Suiryc
4th November 2002, 22:14
If you want to discuss about VirtualDubMod, I think that a thread in the VirtualDub section would be the best (Belgabor started a new thread about the first release).

For specific things (requests, bugs, ...) you can use the SourceForge features (forums, trackers, bug reports) of the project.

sekxx
7th November 2002, 14:51
I did have some real trouble to play OGM+AC3 correctly, all directshow filters for AC3 I found on the net plays the audio track very "pourri"[french words I can't translate, maybe stinky].
I found a great directshowfilter for AC3: Odio Decoda, it works perfectly on my system (Win2K SP3, SBlive5.1...) here is the link to the official download page: http://moonlight.co.il/products/odio_decoda.shtml
hope this will help everybody with trouble for OGM+AC3
and sorry if this DSF is allready known from U.
SeKxX...

Suiryc
7th November 2002, 15:07
There is also Valex's filter : WebSite (http://xvalex.hotbox.ru/news_eng.html) and new SourceForge project (http://sourceforge.net/projects/ac3filter).

pirata
16th November 2002, 23:35
Cyrius,

I am sorry about bringing this thread back to like, when we all thought that it was (happily) dead. I have had some hard times with my computer, and that OGMerger test I promise were, ehm.. delayed.

I have made them now. Good news first: it doesn't hnag. Output file is playable, but (bad news) subtitles are not shown. They are there (s OGGInfo states -see below-), but Zoom Player 2.80 doesn't show them. It does show the subs when playing the partial OGMs (the ones I merged), so the problem lies in merging.

Hope you read this.

Cheers, Pirata

BlackSun
19th November 2002, 12:48
I've downloaded the latest VDubMod, I admit I never got the time to test Cyrius' tools, and never tested OGM+AC3. I've heard there is a lot of problems, is that true ? What are they ?

Suiryc
19th November 2002, 17:19
Hi BlackSun :)

Presently the main problem with AC3 in OGM (same with MP3) is that the track is allways played (you can't deactivate it by using OggDS filter like we can for Ogg audio streams).
The other problem is that OggDS can't mux AC3 directly in OGM (a workaround, used in OggMux, is to use a Waved AC3 file ... but unfortunately the resulting AC3 stream muxed in the OGM file can't be rendered by OggDS for the moment :( ). That is where my tools can help :)

pirata
20th November 2002, 06:10
@ Cyrius: have you read my post about OGMerger not merging correctly OGMs? (subtitle problem)

@Blacksun:

Current problems with ac3/vbr MP3 are from my point of view

-BSPlayer and most players play all streams at once. It is a chaos. Only Zoom Player fixes that.

-if the first stream is ac3 or mp3, the movie don't start by itself (at least the first chunk). That's my experience. I've just muxed a OGM containing divx video and a vbr mp3 audio track and the resulting video was not starting by itself. You had to seek a little bit and then it would go on. Sometimes, thugh, seeking would also freeze the movie. Another seek fixes it. So: not funny.

The Directshow filters seem to be guilty.


Any input on this from anybody?

Suiryc
20th November 2002, 12:55
@pirata
yes I show you post about OGMerger ;)
The problem should be fixed in the latest version (online) :)

pirata
20th November 2002, 19:01
Is it the version that is already posted?

Suiryc
21st November 2002, 00:11
yes, OGMerger 0.9a4

BlackSun
21st November 2002, 07:35
I think Tobias is working on that, here a quote from his last mail from the beginning of this week:


Anyway everything is on the way and there will also be some important improvements with the next version of OggDS: You can mix different type of sound streams and still switch between them and I will add su
pport for Speex, Flac and Theroa.


Quick question, how can I add a wave header to an AC3 file so I can test ?

sekxx
21st November 2002, 10:08
Just use Cyrius OGM Tools
or VirtualDubMOD and you don't need to modify[is that an english word?] the AC3 @ all

Koepi
21st November 2002, 10:14
Originally posted by BlackSun
Quick question, how can I add a wave header to an AC3 file so I can test ?

Unfortunately I suggest BeSweet in OggMux, but in reality you just have to use BeSplit :)

(Sorry, I don't have the link, go via doom9's d/l area).

Regards
Koepi

BlackSun
21st November 2002, 11:09
Originally posted by Koepi
Unfortunately I suggest BeSweet in OggMux, but in reality you just have to use BeSplit :)

(Sorry, I don't have the link, go via doom9's d/l area).

Regards
Koepi

Thank you Koepi, I must admit I am really outdated at the encoding tools level...

pirata
21st November 2002, 17:46
@Cyrius: OGMerger seems to work good with subtitles now.
Go on boy!

Should I understand that all the features of your own VDub OGM capable mod have been transferred to VirtualDubMod? (with all the bug fixes done in the former?) In short: VirtualDubMod will work with OGMs as good or better than Cyrius VDub OGM?

There is one problem keeping me from using VDubMod, though: what happens with the "append AVI segment" menu item? It is grayed out! When will it be back? It is very useful.

Also, I'd like to make a feature request. VDub has always been able to open MPEG1. Now it also reads MPEG2. There should be a way of saving that file types after some editing has been done (things like cutting, which don't need reencoding). Is that difficult to add I guess it would be coherent with the "swiss knife" idea.

By the way: I have read somewhere there is a way of knowing the actual size of the chunks you cut with VdubMod. How is it Cyrius?

@BlackSun: what does that mean? Will we be able to hear just one stream in BSPlayer? and also switch them? I thought it was a player only problem, isn't it? Anyway, with Zoom Player solving that issue, the only problem is the film not starting by itself, making some seeking necessary. Do you think Tobias is aware of that? How could we point in out to him?

One question: could you give me the thread the quote belongs to? It looks like a thread exposing latest improvements in OggDS! It would be nice to have a look at that every now and then.

Theora support?! Isn't it a container intended to incorpore V3 and vorbis?

Now that I am talking to you, Blacksun, any advance on the MCF and the OGG official player? When will we enjoying that wonders?

BlackSun
22nd November 2002, 09:40
Originally posted by pirata

@BlackSun: what does that mean? Will we be able to hear just one stream in BSPlayer? and also switch them? I thought it was a player only problem, isn't it? Anyway, with Zoom Player solving that issue, the only problem is the film not starting by itself, making some seeking necessary. Do you think Tobias is aware of that? How could we point in out to him?

One question: could you give me the thread the quote belongs to? It looks like a thread exposing latest improvements in OggDS! It would be nice to have a look at that every now and then.

Theora support?! Isn't it a container intended to incorpore V3 and vorbis?

Now that I am talking to you, Blacksun, any advance on the MCF and the OGG official player? When will we enjoying that wonders?

It's not really player related, even if we can fix it a bit by cheating a bit, but related to the OggDS. I'm not too kind of creating some hacks to fix things, anyway I'll discuss about this with Tobias which is working very hard on the next OggDS and also on The Core Media Player.

As for the quote, it was from a mail. The Core Media Player won't be the official MCF media player, instead the famous MCF team will give a level of compability with MCF. A player will be MCF approved, from the basic functions, to the whole and complete support.

As for a release date, we are trying to hurry so it can be released for xmas, but I dunno if we'll be late or not :p