View Full Version : update on MCF-CD
ReferenceDivx
18th April 2002, 02:25
I just update my MCF-CD with a link to Dext page, and my program and source code that extracts the file from the cd parse it and saves it to a hard-drive. Its a pretty simple program that allows you to enter the filesize of the output file.
You can check it out here:
http://www.wsu.edu/~benp/mcfcd.htm
Neo Neko
18th April 2002, 02:31
Excelent. Now we just need to create filters or drivers that will allow an operating system direct access to the CDs. Or possibly reader software could be incorporated into something like Powerdivx.
DeXT
18th April 2002, 16:57
RefDivx: Great work! The only problem is, your link to my homepage is broken (boo boo)....
Neko Neko: yes adding a "global" RIFF/CDXA parsing filter to the system would solve all the problems. But I ask: will this interfere with VCD/SVCDs?
I think that perhaps a more secure approach (or at least an easier one for now) could be adding direct RIFF/CDXA parsing to the needed DS filters: MCF/OGM/any other. RIFF/CDXA parsing is pretty simple! Just a few more lines of code.
Once someone does this, you'll be able to burn and use your favorite files to M2F2. If file name is an issue, I just can change it to anything instead of DAT.
Thanks for your continued support.
ReferenceDivx
18th April 2002, 19:21
Sorry about that Dext. I just fixed the problem.
Thanks for your awsome tool. I also think that your implementation is the best.
DeXT
18th April 2002, 21:14
Thank you so much. Well perhaps it's the best "working" one (since it's the only AFAIK), but I'm sure yours (based on vcdimager) will surpass mine once it's finished. :)
Oh a quick note, 1.1 is out, and adds BIN/CUE support.
oddball
19th April 2002, 00:01
Cool tool. But kinda funny to have tool that writes but no means to read it back directly. Progress is a funny thing. It's like DVD players when they came out not having any titles to play on them :)
avih
19th April 2002, 00:04
still better than not heving dvd at all :) at least you can dream of the day you can actually get a dvd movie :)
Gawen
19th April 2002, 03:45
:) Seems the DivXVCD or DVCD has been born. Congratulations!
Each DVD has itīs .ifo and each DVCD should have its
description in MPEG-7 XML DS
Pic: Example architecture for MPEG-7 Pull applications
http://www.tnt.uni-hannover.de/project/mpeg/audio/public/mpeg7/Image22.gif
There is a MPEG-7 annotator for creating such annotations:
http://www.alphaworks.ibm.com/tech/mpeg-7
Maybe you should work this out and send a kit to china,
so we get our hardware DivXVCD Players a little earlier (;)
They made backup history once, why not twice?
Super Video CD (SVCD) was developed by China Recording
Standards Committee under the requirements given by Chinese
Ministry of Information Industry, with technical support from
ESS Technology http://www.esstech.com/
http://www.chinaonline.com/refer/ministry_profiles/MIIL3.asp
Btw.: RIFF/CDXA parsing is pretty simple! Just a few more lines of code.
Wouldnt it be nice to put these few lines of code into wmp4player?
int 21h
19th April 2002, 13:36
I think it would be more intelligent to put this code into a general demultiplexing DirectShow filter that can then send video to the appropriate decoding filter (i.e. DivX, XviD, etc)
DeXT
19th April 2002, 14:41
int 21h: yes but I ask you the same question as Neko Neko: could this break current VCD/SVCD compatibility? MS implemented RIFF/CDXA parsing in a single filter only (MPEG-1 Splitter) for some reason, I think.
Anyways if you are skilled enough for writing such filter, please do! :)
int 21h
19th April 2002, 15:21
It won't break the current splitter, you have to associate it with the file type, similar to what PowerDVD does for SVCD or what Elecard does with its demultiplexer.
Anyways, at this time, I'm not skilled enough to do this.
int 21h
19th April 2002, 15:47
Scratch that...
I guess a regular filter needs to be written that is associated with the file type, somehow. :-P
DeXT
20th April 2002, 13:56
I don't know much about DSF programming, but from what I've been reading this is how you can associate a certain file format with a DSF:
http://msdn.microsoft.com/library/en-us/wcegmm/htm/dshow_112.asp
So yes, it seems you can associate a RIFF/CDXA file with a special filter. I guess you can make a new "File Source" filter for RIFF/CDXA content, instead of the regular one. The DirectShow SDK will have "File Source" sources for sure, so it shouldn't be too much difficult to add this functionality to it, I think.
Anyways, I still prefer RIFF/CDXA parsing functionality in selected filters only (MCF, OGM), since it's easier and more secure, too.
avih
22nd April 2002, 10:27
hi dext. just started to work on it, and wanted just to find out whether the reg file u gave me is working.
i did the following:
1. double clicked on the .reg file u gave me.
2. compiled the filter
3. regsvr32 acynchflt.ax
4. made an image with an ogg file with your tool (the asynch docs says it won't work with 'avi' files, and ogg should be streamable, so i fugured it'd be better)
5. mounted with daemon tools
so far so good.
now when i try to load the file (AVSEQ01.DAT) both graphedit and zoom player tells me they can't find appropriate filters.
should i change something in the source itself?
can u please confirm the situation, and just make the filter work (regardless of the file content)?
is there any other way to change the filename (avseq...). could it be that it can't use the .dat extention?
let me know.
avi
DeXT
22nd April 2002, 10:45
Well, probably it cannot find an appropiate filter decause the OggDS filter isn't able to decode a RIFF/CDXA file :)
To see if it works, you could load Graphedit, add the new Async File filter, and load the RIFF/CDXA file with it. You won't be able to play anything until you add the RIFF parsing to it. And perhaps some other things should be tweaked such as, the output pin type.
To see an actual DS Graph working load any file with Graphedit and see how the filters are being loaded. The aim is replacing the first one. So this filter should be a clone of it.
About this name issue, i don't think that's the cause, but you can copy the DAT file to HD and rename it to anything you want (it will still be a RIFF/CDXA file).
avih
22nd April 2002, 10:55
ogg splitter and asynch sample file source can't agree on connection :(
can u pls try to make a complete filter chain, and let me know if it just connected (no, i don't expect it to play yet, just the full chain to support the parsing when it's done). it would help me a lot.
sorry for all the hussle. it's the 1st time i try dshow stuff...
thx.
ps. dext, do u read your PMs?
Koepi
22nd April 2002, 11:06
dshow isn't too bad to code, just take a look at the xvid DSF in it's current CVS form - it's really simple ;)
Wy don't you try the nulltransform filter from the DX SDK and just parse for those RIFF headers and filter them out?
Regards,
Koepi
avih
22nd April 2002, 11:16
because i still don't know (from practice) what's null transform :)
don't be tempted to explain here. i'll read about it :)
thx for the tip.
DeXT
22nd April 2002, 13:16
Sorry I didn't read my PMs. In fact I didn't even know such thing existed here :)
Again, you cannot connect the output to OggDS input if you can't supply OggDS with properly-formatted OGG stream. This is how DS works. If you want it working you'll need to implement the RIFF/CDXA parsing. If you want to test if it works without modification, load a sample OGG stream/MP3/whatever you want through the Sample Async File Source filter and connect to the appropiate filter. It works fine (I've tested it).
Kopei's idea about Null transform filter is great, too. Once associated with RIFF/CDXA content it should be able to parse it and pass to the next filter. But currently I think perhaps it's easier for us to do this way because the Null sample is just too simple for us as a start, i think.
BTW Koepi, if you are skilled enough with DS, could you help us on that matter, or implement this thing using the Null transform as you suggested? I think it's pretty easy for anyone with good DS knowledge like you.
avih: there is at least one thing more you need to do (probably not the only one): change the Async filter MEDIASUBTYPE class string to the one i provided you with the registry file (RIFF/CDXA, from Ingo's sources):
DEFINE_GUID(MEDIASUBTYPE_SampleAsync,
0xa92227e7, 0x22f0, 0x42f4, 0xb6, 0xa4, 0xc7, 0x88, 0x83, 0x9b, 0xb3, 0x2f);
Koepi
22nd April 2002, 16:30
I sure would help out here but my time gets eaten up by other projects I'm involved in :-/ I thought such a hint would be nice at least.
It's just testing around a little and using such a prototype filter that passes data from input to output pin - you simply have to catch the stream, parse for RIFF headers - if there are, cut them out and forward the rest... it sounds easy at least, but I repeat: I lack the time to do that, I'm really sorry about that.
Regards,
Koepi
vBulletin® v3.8.11, Copyright ©2000-2026, vBulletin Solutions Inc.