Log in

View Full Version : Moonlight .MP4 dshow Demultiplexer beta released (supports avc-in-mp4)


Pages : 1 2 [3]

bond
29th November 2004, 02:00
any news about the development?

Lupus_aka_Den
29th November 2004, 13:55
First of all, I'm sorry for keeping silence for a while as I have been working hard on Muxer.
So: following the previous link the new version of 10.11.2004 is available. This version is announced as a freeze, therefore, all that will be made with this version is just bug fixing, but not new features implementation.
What is done:
- long streams durational parsing bug is fixed;
- crop rectangles for Í.264 are supported;
- PAR signaling for MPEG-4 and H.264 are supported;
- correct operation with Nero H.264 decoder is added;
- crash bug on incorrect muxed stream is fixed, i.e. when one sample lays on the other;
- SubType for MPEG-4 and H.263 is now MPEG2VIDEOINFO;
- support then AnexB H.264 streams descripted in standard "esds" atom;
Full support of ffdshow decoder is postponed, unfortunately.

SeeMoreDigital
29th November 2004, 14:04
Sounds good... thanks Den :D

timeismoney
29th November 2004, 17:26
:p waiting for a stable release, wish to got it soon...

bond
29th November 2004, 21:33
Originally posted by Lupus_aka_Den
This version is announced as a freeze, therefore, all that will be made with this version is just bug fixing, but not new features implementation.sad to here this, cause it would have been great if your splitter could have supported mpeg-4 part17 text/subtitle streams inside .mp4, which is currently already doable as described here (http://forum.doom9.org/showthread.php?s=&threadid=86050)

- crop recnatgles for Í.264 are supported;what does this mean exactly?

- PAR signaling for MPEG-4 and H.264 are supported;what does this mean exactly? are you talking about pars stored in the video bitstream itself or something else? how does the par info get passed to the decoder?

- correct operation with Nero H.264 decoder is added;nice :)

- SubType for MPEG-4 and H.263 is now MPEG2VIDEOINFO;hm, what does this mean? isnt mpeg-4 part2 video passed through marked as "mp4v" anymore or am i mixing things up? what does all this have to do with mpeg2?

Full support of ffdshow decoder is postponed, unfortunately. what was the problem with ffdshow?
what about the divx5, xvid and 3ivx decoders?

Lupus_aka_Den
30th November 2004, 09:04
Originally posted by bond
sad to here this, cause it would have been great if your splitter could have supported mpeg-4 part17 text/subtitle streams inside .mp4, which is currently already doable as described here (http://forum.doom9.org/showthread.php?s=&threadid=86050)
I hope in next versions demuxer this feature will be realizes, but all that will be made with current version is just bug fixing 8)

Originally posted by bond
what does this mean exactly?
Crop rectangles is H.264 feature then video window have specific position. rcSource(rcTarget).left(top) and rcTarget in VIDEOINFOHEADER2 may be not equal zero.

Originally posted by bond
what does this mean exactly? are you talking about pars stored in the video bitstream itself or something else? how does the par info get passed to the decoder?
Support PAR signaling - then picture aspect ratio calculate from MPEG-4 and H.264, and dwPictAspectRatioX, dwPictAspectRatioY fields in VIDEOINFOHEADER2 fills.

Originally posted by bond
hm, what does this mean? isnt mpeg-4 part2 video passed through marked as "mp4v" anymore or am i mixing things up? what does all this have to do with mpeg2?
In last version SubType for MPEG-4 and H.263 was FORMAT_VideoInfo. But VIDEOINFOHEADER does'nt support picture aspect ratio 8) Therefore i choose FORMAT_VideoInfo2 and MPEG2VIDEOINFO structure.

Originally posted by bond
what was the problem with ffdshow?
Some problems with seeking and playing. But in next year ffdshow decoder will be supported completely.

Originally posted by bond
what about the divx5, xvid and 3ivx decoders?
3ivx decoder same times swear on sample start and end times. I do not understand why 8(

timeismoney
12th December 2004, 07:32
http://down.bbsbird.com/ringz/img/neroavc_heaac.mp4

A NeroRecode encoded clip, can be demuxed by moonlight, but audio is broken...

Use NeroRecode itself is OK

And wish mp3 in mp4 can be demuxed soon

By the way, if installed NeroRecode, moonlight MP4 demuxer will be entirely broken and unusable, even disable NDParser.ax by MMViewer, I have to unreg NDParser.ax to make moonlight MP4 demuxer usable. This is a serious problem!

Lupus_aka_Den
12th December 2004, 08:28
Originally posted by timeismoney
http://down.bbsbird.com/ringz/img/neroavc_heaac.mp4

A NeroRecode encoded clip, can be demuxed by moonlight, but audio is broken...

Use NeroRecode itself is OK
Thanks. I'll check it
Originally posted by timeismoney
And wish mp3 in mp4 can be demuxed soon
MP3-in-MP4 is supported. I have a two streams with mp3 and my demuxer working properly
Originally posted by timeismoney
By the way, if installed NeroRecode, moonlight MP4 demuxer will be entirely broken and unusable, even disable NDParser.ax by MMViewer, I have to unreg NDParser.ax to make moonlight MP4 demuxer usable. This is a serious problem!
Interesting... I'll try to install Nero Recode and look that happened

timeismoney
12th December 2004, 11:54
Originally posted by Lupus_aka_Den
Interesting... I'll try to install Nero Recode and look that happened Just install Nero Burning Rom 6.6.0.3, this will happen

timeismoney
13th December 2004, 11:03
http://203.252.53.117/jw_wang/Download/Myringz/0.mp4

Stop at the first frame, both MPC and WMP

Use nero's parser is OK, please check it.

yaz
13th December 2004, 11:19
Originally posted by timeismoney
Just install Nero Burning Rom 6.6.0.3, this will happen sure. imho, dsf in nbr 6601 was a 'failure' from ahead :-) dsf worked pretty fine, chained in every graph well but when updated to 6603 all went wrong. at the moment i must unreg ndparser.ax so as to get back my earlier .mp4 support and still i'm not sure how to get back nero asp support. that's pity :-(
the bests
y

SeeMoreDigital
13th December 2004, 11:38
Talking about Nero's filters.

Some time ago I noticed that some of the "same named" filters in Nero Burning ROM Nero's can be different versions to those in Nero VisionExpress, for the same dated release... Maybe it's this that's causing some of your problems?

Originally posted by timeismoney
http://203.252.53.117/jw_wang/Download/Myringz/0.mp4

Stop at the first frame, both MPC and WMP

Use nero's parser is OK, please check it. QuickTime player can also play the encode ok

What tools to you use to create and mux the streams?


Cheers

timeismoney
13th December 2004, 12:10
Originally posted by SeeMoreDigital
Talking about Nero's filters.

Some time ago I noticed that some of the "same named" filters in Nero Burning ROM Nero's can be different to those in Nero VisionExpress, for the same dated release... Maybe it's this that's causing some of your problems?


Cheers I tried Nero VisionExpress, too, same result

And BTW, well, I just found that nero's NDParser.ax (Both from latest NBR and NVE) will cause AAC Parser broken and unusable, too. Shit!:devil:

So I think it may cause another error, well I test more, same result.

3ivx Media Splitter
AAC Parser
Moonlight MP4 Demultiplexer
dicas Codec

Both broken after nero installed, and nero's compatibility is not good enough, many common mp4s can't be demuxed correctly

those codec can only be usable by uninstall nero

This time Nero is too aggressive

timeismoney
13th December 2004, 12:14
Originally posted by SeeMoreDigital
QuickTime player can also play the encode ok

What tools to you use to create and mux the streams?


Cheers Sorry that clip was not created by me, a friend of mine sent it to us...

DeathTheSheep
18th December 2004, 06:58
Now I --a straggling, lone sheep-- trot in a bit late and happen to remark in a squeaky, shy tone:

"Um, uh, how do you install this neat thingee? I want to demux my NeroDigtal sheep butchering tapes into a neat avc1..." (sheep butchering tapes are made up)

Yes, so, I (the Deathly Sheep) just need to know how to install this thing, having missed the pdf that came with earlier versions of the beta (the current one has only the .ax file, and I have no clue what to do with it....)

Cheers, Baa

celtic_druid
18th December 2004, 09:08
You need to register it.
regsvr32.exe mp4splitter.ax or whatever.

DeathTheSheep
19th December 2004, 17:11
[The sheep bows in a guesture of submission]

Ah, yes, thank you much.

But this brings about anothier problem: How can I use this like the non-AVC compliant 3ivx splitter to mux into an AVI? I know it's possible to have AVC in AVI (think x264, VideoSoft, hdot264, NeroDigital when applied in GraphEdit, I think)...

So, is there an AVI-muxing solution? Because nothing I own (portable vid player, PocketPC, some wierd portable DVD player, video editing software, player, etc) supports this new-but-still-clunky MP4 thing. If only that stupid container could more easily give up its data to an AVI, baaaa.

Cheers. Baaah.

DeathTheSheep
20th December 2004, 03:36
http://img90.exs.cx/img90/3322/graphedit7sd.jpg

SeeMoreDigital
20th December 2004, 11:44
Originally posted by DeathTheSheep
Screenshot (won't let me stick it into previoius post--no attachment button, lol): Upload your screenshot and any other useful images via, http://www.ImageShack.us/


Cheers

timeismoney
20th December 2004, 16:34
http://tinypic.com/

is OK

DeathTheSheep
23rd December 2004, 16:51
Yeah, thanks guys! So, now that it's done and over with, is there any way (with the new demultiplexor or anything) to get the streams into an avi? I heard there was a filter called "MP4_input_0" or something and ones called "dump" or something, but since they aren't in my list, I can't use 'em, lol. So, is this normal that this doesn't work? Can I mux two dumped streams into an AVI if I find out where to get the "dump" filters?

bond
23rd December 2004, 19:04
ok i now found the time to test this myself

my first and most important finding is that because of this:
Originally posted by Lupus_aka_Den
In last version SubType for MPEG-4 and H.263 was FORMAT_VideoInfo. But VIDEOINFOHEADER does'nt support picture aspect ratio 8) Therefore i choose FORMAT_VideoInfo2 and MPEG2VIDEOINFO structure.i am not able anymore to connect the moonlight mp4 demultiplexer to neither moonlights own h.264 decoder (latest one taken from the 1.0.8 player), nor ffdshow, because the splitter doesnt output "avc1" anymore but this mpeg2 related stuff (which of course has nothing to do with avc-in-mp4 and therefore isnt understood).
i hope this will be changed back again, making the spliter output "avc1" as before...


with the version before, playing avc-in-mp4 streams seems to work fine (one file (provided by philips) muxed from raw to mp4 with mp4creator showed some smearing, will have to check that more closely (other muxes (reference, moonlight) worked. files encoded with ateme and fhg worked too)
when seeking there were some crashes (one time in mp4demux, one in h264dec) with files encoded with the ateme encoder (no such problems with fhg), also seeking didnt work that smoothly with ateme files than with fhg ones
note that the ateme file used b-frames, but fhg didnt (maybe b-frames arent supported correctly till now in avc?)

playback of mp2/mp3-in-mp4 (muxed with mp4creator) worked fine, mp3-in-mp4 muxed with mp4box crashed (in the default windows mp3 decoder) - first thought that it might be mp4box's fault, but the 3ivx splitter handles the same file correctly (with the windows mp3 decoder too)

normal mpeg-4 asp video (3 cons. b-frames) in mp4 (muxed with mp4box) works

Originally posted by Lupus_aka_Den
- PAR signaling for MPEG-4 and H.264 are supportedwith the latest splitter version, i tried 3 different mpeg-4 asp files having PAR signalled in the bitstream (created with 3ivx and xvid) and all three werent resized during playback, also all three showed choppy playback (note that the 3ivx sample didnt use b-frames, the xvid samples used 2 and 3 max consecutive b-frames)

all tests done with moonlight's own av decoders

bond
30th December 2004, 21:21
i can confirm that when using moonlights .mp4 splitter together with moonlights h.264 decoder, when manually forcing overlay mixer to be used (moonlights decoder doesnt do that by itself automatically), PAR in AVC resizing works correctly :)

bond
5th January 2005, 02:06
i have an addition to the problems this splitter has with avc b-frames atm:
as ffdshow supports now avc b-frame decoding too, i tried it with this splitter and it always crashes is "libavcodec.dll" right at the beginning of the playback (first frame gets shown). files not using b-frames work fine (didnt try seeking)

note that the files using b-frames (as also the ones without) get played fine with ffdshow when using the nero .mp4 parser, so there might be a problem in the moonlight splitter regarding b-frames

timeismoney
5th January 2005, 04:05
Originally posted by bond
i have an addition to the problems this splitter has with avc b-frames atm:
as ffdshow supports now avc b-frame decoding too, i tried it with this splitter and it always crashes is "libavcodec.dll" right at the beginning of the playback (first frame gets shown). files not using b-frames work fine (didnt try seeking)

note that the files using b-frames (as also the ones without) get played fine with ffdshow when using the nero .mp4 parser, so there might be a problem in the moonlight splitter regarding b-frames Yes, I tried ffdshow cvs 0105, it decode avc with b-frames very well via nero's parser, but often crash via this demuxer. Seeking will cause the player auto close or crash, too - even avc without b-frames, mp4v is OK.

The picture below is the error message when seeking an avc without b-frames, I also repported to milan. PS: via Nero's parser is fine, no any problem.

http://tinypic.com/166h6d

Lupus_aka_Den
6th January 2005, 05:54
Thanks a lot for the messages and tests of the demuxer.
Unfortunately I can't deal with it now as I'm seriously busy with the muxer. In the nearest future I'll definitely study all your remarks and make a more crash-proof program version with
additional features. 8)

timeismoney
6th January 2005, 08:50
Originally posted by Lupus_aka_Den
Thanks a lot for the messages and tests of the demuxer.
Unfortunately I can't deal with it now as I'm seriously busy with the muxer. In the nearest future I'll definitely study all your remarks and make a more crash-proof program version with
additional features. 8) BTW:

milan said
After seeking Moonlight's demuxer doesn't wait for next keyframe to start delivering frames and libavcodec can't handle this.And wish it will be more stable.

xanthian23
25th January 2005, 02:29
:cool: For the love of pete, all I wanted to know is how to get avisynth to recognise the avc files. Like what command do I use. Obviously it's not gonna be directshowsource, tried that already. I just want to find something to get avs to recognise avc so I can re-encode avc files to other formats with any encoder that accepts avs. All this other stuff is interesting, but way past what i'm lookin for. Does anybody know what plugins i need, and what command line to use to get avs to accept avc?:cool:

celtic_druid
25th January 2005, 04:29
Unless someone writes an mp4 plugin then directshowsource() is the only way that you are going to frameserve an mp4 with AVISynth. If it doesn't work directly with the mp4, then you could try opening it in graphedit and frameserving the graph file.

Koti
25th January 2005, 04:31
Someone correct me if wrong, but the only way I can think you will re-encode a avc is to decode it to huffyuv and pcm audio in graphedit.
This will require your PC has the appropriate splitters/decoders.

file<->Video<->ffdsho-decode<->huffyuv-encode<->avimux<->New.avi
file<->Audio<---------->aac decoder<-----------------^
Then you could frame serve that to anything

MSlv
5th March 2005, 19:57
how can I make this the default mp4 demultiplexer? I mean... how can I use it? I only have MP4Demux.ax. How does it work?

celtic_druid
5th March 2005, 21:01
You neeed to regsvr32 it and make sure that it is the mp4 splitter with the highest merit or set specific overrides in your player.