PDA

View Full Version : GPAC 0.2.2 released!


bond
9th November 2004, 23:23
a new GPAC version has been officially released and contains a lot of new, nice features among which are:
- Support for OGG format (including Icecast streams), Vorbis and Theora codecs
- Support for Shoutcast streams
- better 3D support
- X3D integration (both XML and VRML formats)
- Decoding and network stats in all GUIs
- MP4Box "-rem TrackID" option to remove a track
- moved M4Systems to a dynamic lib (static is still first built & used for MP4Box)
- moved all scene decoders (bifs, OD and context loader) to real plugins

as a reminder: GPAC needs some porting (esp. Mac OS) and development efforts and invites people interested around the world to have a look at GPAC and bring in valuable help :)

full changelog:
09/11/04: GPAC 0.2.2 release
- Xiph OGG demuxer: supports file, http download (not tested) and icecast servers.
- Xiph Vorbis decoder
- Xiph Theora support (should work with fluendo but I can't get any data from the server...)
- Better FFMPEG support (moved to latest ffmpeg cvs tarball).
- all file associations in client are made through mime types, and changed handling of service (mime type query if possible before loading plugin)
- network stats & changed all UIs for that.
- decoder stats & changed all UIs for that.
- nicer Osmo4/wxGTK
- shoutcast support in mp3 reader
- Install doc cleanup
- MP4Box "-single" option now work for 3GP files
- MP4Box "-rem TrackID" option to remove a track
- made 3GP hinter produce QT-compatible streams (as usual QT only accepts specific RTP timescales)
- moved M4Systems to a dynamic lib (static is still first built & used for MP4Box)
- moved all scene decoders (bifs, OD and context loader) to real plugins
- moved BT & XMT parsers from stdio to ZLIB io, in order to support GZIPed VRML & X3D (and consequently, BT and XMT-A ;). GPAC CAN NO LONGER COMPILE WITHOUT ZLIB
- massive cleanups in scenegraph & MPEG-4 node naming convention
- !!!scene graph no longer customizable without code hacking!!!
- X3D scene graph generator (decided NOT TO SUPPORT VRML 97 extensions, since they are in X3D and with a different format...)
- updated vrml tools for X3D support (Double precision coords & RGBA colors)
- culling of AABB tree against frustum at draw stage in 3D renderer - greatly speeds up large meshes & terrains rendering
- support for weird cyclic graphs in scenegraph (mainly to support encoding of conditionals). Works with nodes as well, configurable through scenegraph but this can likely crash a renderer other than GPACs (tested with blaxxun & old GPAC versions, crash works each time:)
- lighting and transformations now properly set in 3D renderer
- improved gravity (ground detection) and added jump in walk mode (right click or 'j')
- support for streams without systems timing knowledge (non MPEG4), eg streams where timing is computed after decoding (and not given by transport layer) for simpler ogg support.
- support for multiple URL in VRML nodes (including remote script)
- '#Viewpoint' and 'URL#Viewpoint' support in Anchor and Inline - #segment_name is not supported and should not be used (not standard IMHO)
- ColorRGBA support for X3D
- texture generator (only "SPHERE-LCOAL" and "COORD" supported for now)
- XML scene dumper now supports X3D (scene dumping API has changed)
- X3D support in BT and XMT-A loader
- updated 3D renderer & ESM for X3D support
- added X3D geometry2D nodes in 3D renderer
- Anchor.activate now works with no children
- plethora of bug fixes
enjoy :)

yakima
10th November 2004, 10:28
hi bond
i have to admit i haven't followed that closely -- how would you rate the reliability of muxing with mp4box vs. muxing with 3ivx? are there still differences, particularly if there is some sort of avi-mpeg4 source material (all that packed bvop and whatever stuff)?
3ivx at least has problems with m4a (i.e. itunes) files, but aside from that it seems fine (ok. no subs, no menues ..). but as the 3ivx update to mp4 file manipulation doesn't seem to be around the corner, i might switch ... only thing is, i don't know enough of the avi hacks and mp4 bugs around to test on my own (bond really took off there ...)
thanx for any input, and bond: your staying ahead on things is really appreciated

Sharktooth
10th November 2004, 14:35
GPAC 0.2.2 win32 compiles are available here (Celtic_Druid builds):
http://ebola.gamersrevolt.it/celticdruid/gpac/

yaz
10th November 2004, 16:20
sharky ! many thx for this mirroring ! :-)))
thx
y

gotaserena
10th November 2004, 16:34
MP4Box still has some problems with muxing raw aac (but you can use mp4creator for that), and I still find issues between ISMA compatibility and the MP4 demuxer of my Xcard. Apart from that the application is really stable.

pogo stick
10th November 2004, 17:45
Originally posted by yakima
how would you rate the reliability of muxing with mp4box vs. muxing with 3ivx?
As far as I know, video tracks in mp4 created with 3ivx muxer are always marked as "Simple Profile @ Level 1" even if they are ASP.

bond
11th November 2004, 21:01
i can say that there are no known issues with muxing .mp4 files with mp4box, so i would say its perfectly save to use it (especially with packed bitstream avi files)

yakima
12th November 2004, 04:48
thanx for your replies. mp4box really seems to work well, and fast.
one question left: could someone tell me what exactly the isma switch does? that is, what does "rewriting the file as an isma 1.0 av file" mean? does this regard advanced content like the bt stuff? i first thought it was just like "optimize" in mp4creator & 3ivx, i.e. rewriting the file in proper order etc. -- but there seems to be more going on (at least the file gets bigger). i had no luck searching, most seem to just use "merge" and that's it.

ac-chan123
12th November 2004, 14:22
Infomation about ISMA can find under http://www.isma.tv/.

yakima
12th November 2004, 16:05
well, maybe i should rephrase that. i know what the isma is. and i know that the isma standard is supposed to ensure interoperability. isma 1.0 covers what usually is referred to as mpeg4-video (up to ASP@3 afaik), and isma 2.0 will cover avc (h.264) and whatever else is advanced.

what i don't know is: what does mp4box -isma do? i mostly have asp mpeg4 video with (one) aac audio in a file and thats it (simple a/v file). as the video (ASP@5 or unrestricted) is not affected by mp4box -isma, i figure it only goes for the file layout, rewrite systems, optimizing the file layout maybe. in addition to that, what it also seems to do is flatten the file (if no -inter is specified)
in the man pages it says something about " if you have an unknown mp4 file, use -isma", which, adding to the fact that mp4box should produce isma-compliant files upon import, would suggest that you only need mp4box -isma with mp4 files not produced by mp4box. (but this doesn't fit with the, if slight, file size increase).

so to put it straight and simple, my questions are these:
1. is it advisable to use mp4box -isma to ensure interoperability with players?
2. does mp4box optimize file layout upon import and/or merge (or is this something mp4box -isma does)?
3. does mp4box -isma produce flat files (i.e. non-interleaved) as default? (EDIT: yes, it does; with -isma -inter 500, though the file size at least stays the same, however there do remain diffs b/w input and output)

yakima
15th November 2004, 22:24
in case anyone else wondered, thanks to jeanif here are the answers:
1 - doesn't matter
2 - no
3 - yes
basically, -isma after -merge has no effect, -isma is only good if you have a non -isma mp4 file.

yakima
23rd November 2004, 10:51
hi,
something entirely different: does anyone else have problems merging a large (>1GB) video/audio file with mp4box? if i do merge (importing the avi works fine; audio is mp4/aac), the process finishes properly, but the resulting file either plays without audio (some weird noises instead) or won't play - that is: it opens, but it's frozen wherever i drag the slider.
any ideas?

pogo stick
24th November 2004, 07:25
I didn't experience any problems with big files and latest versions of mp4box. What versions did you use? And what do you use for playback?

And some changes:

16/11/04
- Full multichannel audio mixing and resampling (and better audio speed support). Multichannel->stereo conversion (not configurable atm).
- Yet Another Announcement of a stable ffmpeg demuxer - stable with avi & mpeg, still sync issues with some QT files (same issues with ffplay).
- added SBR mode for aac importing ('-sbr' switch) in MP4Box.
- fixed: MP4Box hinters (empty tracks), SDL -> BIFS coord mapping in fullscreen, rounding segmentDescriptor.startTime pbs in seeking with mp4menu
- Added Playlist and brower-like navigation to Osmo4 and wxOsmo4
- AAC/ADTS file & streaming input (radios) - FAAD decoder moved to aac in plugin
- ADTS import/extraction in MP4Box
- fixed OD XMT-A for ESD.OCR_ES_ID and ESD.dependsOn_ES_ID (now use IDREFs and not binary IDs)
- integrated ogg lib in gpac (<gpac/m4_ogg.h>), and added ogg/vorbis and ogg/theora importers to mp4 - THIS IS NOT STANDARD AT ALL.
The current syntax is to put needed headers in the MPEG-4 DecoderSpecificInfo, with the following syntax:
u16 sizeof_header;
char *header_data;
for each header (quite similar to what is found in qtcomponents). Vorbis ObjectTypeIndication is 0xDE, theora ObjectTypeIndication is 0xDF.
Need some more testing before filing a request to mp4ra.org.
Streaming possible as MPEG-4 streams, Vorbis RTP packetizer still to be done.

It's getting BIGGER and BIGGER! :)
Espesialy this one: added SBR mode for aac importing ('-sbr' switch) in MP4Box.
I can't wait to see how it works!

yaz
24th November 2004, 10:35
Originally posted by pogo stick
... added SBR mode for aac importing ('-sbr' switch) in MP4Box.
I can't wait to see how it works! kinda strange. he-aac packed that way is not recognized by coreaac. mpc shows up sg called 'gpac audio handler' but no 'he-playback'.
it's quite strange. he-aac in mp4 (packed by nero) does not show up as 'he-aac' but 'aac-sbr', however, plays fine. if repacked with mp4box is shows 'he-aac' with -info but played as 'lc-aac' (???) can't get it.
i suspect a splitter problem. my mp4 splitter is nero at the moment, and maybe, it does not like other he-aac 'signing' than its own.

any idea how to pack he-aac into mp4 while not loosing 'he' ?

the bests
y

yakima
24th November 2004, 14:54
thanx pogo stick,
so there aren't any known issues with large files .. (i am using the current 0.2.2 version)
i was mistaken in thinking that merging was the problem - actually, the problem seems to be the -import part. i didn't notice at first, but the video only mp4 is already bad (osmo throws a decoding error, and info doesn't show a video stream - is there a way to see/generate a log file?).
if i cut off some part of the avi so that the avi is below 1GB, and import with mp4box, the resulting file plays fine (osmo plays it, too). if i mux the full avi using 3ivx/graphedit, it works, too.

as far as i have read, and as pogo stick told me, others don't seem to have any problems with large files (>1GB); does anyone have any idea what could be going wrong in my case?

is there anything i should do when creating the avi file (avi 1, avi 2.0, legacy-wise, version of virtualdub, whatever)?

i do like mp4box, especially batch-wise, so this is really a pain ...

bond
29th November 2004, 00:23
Originally posted by yaz
he-aac packed that way is not recognized by coreaac. mpc shows up sg called 'gpac audio handler' but no 'he-playback'.hm strange stuff :(

bond
30th November 2004, 20:15
in the latest cvs change jeanlf added something to the sbr import code, which might solve this issue...
would be great if Celtic_Druid can make another build to test out all the new additions :)

Hermann
17th December 2004, 16:04
When I start 0.2.2 Windows tell me that libmmd.dll is missing and so the program can't starts. How can I fix this?

Thanks.

stephanV
17th December 2004, 16:19
you can find it here (http://www.rarewares.org/mp3.html). place it in the same directory as mp4box.exe

Sharktooth
17th December 2004, 16:23
libmmd is also mirrored here: http://ebola.gamersrevolt.it/celticdruid/libmmd.7z
You can put it in the mp4box directory or in the windows/sytem32 directory.

Hermann
17th December 2004, 18:27
Yeah, now it works! Thanks.