View Full Version : GPAC MP4Box Information, Feature Requests & Discussions [No bug reports]
Pages :
1
2
3
4
5
6
7
[
8]
9
10
11
12
bond
25th August 2006, 16:41
once again: those ts captures dont start at the sps/pps. a valid avc stream needs to start with sps/pps
now we have two things to consider:
1) the demuxer
2) the muxer
ad 1) mplayer will not remove the garbage before the first sps/pps
mencoder will remove it, but changes some things in the stream, which i am not sure is a good idea
ad 2) mp4box will not mux streams not starting with sps/pps
mp4creator will mux streams not starting with sps/pps, but will simply place the sps/pps before the garbage, without removing the garbage, resulting in a kinda wierd stream
that said, if every decoder plays a file fine, except one decoder, i would first assume its this one decoder thats buggy and not the muxer tool
Kurtnoise
28th August 2006, 20:53
Thanks. I hope this will be soon fixed.
Should be fixed now in the last CVS.. :)
I've made a quick test and all seems to be fine. Thanks Jean for the fix...
nickolasemp
21st September 2006, 22:04
Back to the ' part I found out that when using ' thing, it doesn't display the subs after that. But if you have in another part of the same line the ' , it will continue from there the rest of the sub... Hope that helps a bit...
Besides that there is a way to trick that part using something else. In greek we have something that is sooo very close to ', and it is called "tonos". It is this ΄. When using this instead of an apostrophe everyhting works fine because the file sees it as a greek character. And you can't tell the difference. Still that doesn;t fix the bug, just merely putting back for now the problems that you might come along.
mroz
22nd September 2006, 00:18
In greek we have something that is sooo very close to ', and it is called "tonos". It is this ΄. When using this instead of an apostrophe everyhting works fine because the file sees it as a greek character. And you can't tell the difference. Still that doesn;t fix the bug, just merely putting back for now the problems that you might come along.
Thanks, that's helpful - saves me looking for a suitable character :)
As a result of broken audio, earlier today I had to remux an mp4 with video, audio, subs & chaptering for the first time. The source mp4 was created by Nero Recode from some vobs which it turns out contained a broken ac3 stream (the vobs played back fine, but Recode produced aac that stuttered beyond the stream error).
Initially I tried to extract the vobsubs from the mp4 to mp4 with the intention of reusing them directly, but mp4box crashed repeatedly.
In the end I resorted to Subrip on the source vobs resulting in my first experiment with ttxt.
I thought I was going to have to give up for the night, but now a simple
:%s/'/\΄/g
has saved the day
[Aside: getting the above line to render in vBulletin was a pain in the ass as it keeps translating the numeric character reference when the post is previewed or submitted, including the copy in the textarea - how do you tell the damned thing to leave text as is? I ended up with
: % s / & a p o s ; / \ & # 3 8 ; # 9 0 0 ; / g
less the excess spaces.]
Incidentally, DirectVobSub doesn't seem to like hex numeric character references - ΄ lead to the char rendering as an empty square.
As to the core of this bug, does anyone know if the problem is with the ttxt format or its interpretation by DirectVobSub?
Clearly the problem could be worked around by applying the processing which handles single quotes before replacing character entities with their corresponding character, but would this not be contrary to the correct handling of the xml?
If that is the case, unless the ttxt format provides another representation of single quotes or (bizarrely) forbade their inclusion, surely it must be a broken format?
I've just noticed the reference to this now being fixed in cvs... what was the nature of the fix & where can I find a binary for the fixed code? Cheers.
Kurtnoise
22nd September 2006, 17:49
I've just noticed the reference to this now being fixed in cvs... what was the nature of the fix
http://sourceforge.net/tracker/index.php?func=detail&aid=1527712&group_id=84101&atid=571738
where can I find a binary for the fixed code?
In my sig or from Celtic_Druid mirrors...
mroz
22nd September 2006, 19:04
http://sourceforge.net/tracker/index.php?func=detail&aid=1527712&group_id=84101&atid=571738
Ah, right, now I understand. I naively assumed the ttxt was stored directly in the mp4, which would mean there was little mp4box could do about it - I realise that's not the case now :o
As to jeanlf's partial solution, I'm still curious as to when the character entities are replaced in the xml during parsing - couldn't this be delayed so that the apostrophe entity could be used to distinguish such chars from literal apostophes used as line terminators?
In my sig or from Celtic_Druid mirrors...
http://kurtnoise.free.fr/index.php?dir=mp4tools/&file=MP4Box-0.4.3_20060828.zip
I assume. Cheers :)
Kurtnoise
23rd September 2006, 08:55
As to jeanlf's partial solution, I'm still curious as to when the character entities are replaced in the xml during parsing - couldn't this be delayed so that the apostrophe entity could be used to distinguish such chars from literal apostophes used as line terminators?
Ask directly to the GPAC developpers...
mroz
23rd September 2006, 23:38
Ask directly to the GPAC developpers...
Okay. I've added a comment to the above tracker, however I use Sourceforge very little - given the tracker item is closed, is anyone likely to be watching it still?
:thanks: again
Kurtnoise
15th November 2006, 16:42
Does anyone have tested the iTunes tagging system within MP4Box ? It seems that some tags are not setted correctly (like compilation, composer, disk, genre...). Am I right or I missed something ?
With the last MP4Box from cvs, all iTunes tags (album, artist, compilation, genre, name, track/tracknumber, disk, writer, composer, comment, created == date, cover (jpg or png file)) are setted correctly now...:)
/me go back to YAMB dev...
SeeMoreDigital
15th November 2006, 18:35
Thanks Kurt.... I've just downloaded it from your site :)
SeeMoreDigital
25th November 2006, 11:24
Hi Kurt,
Have there been any reported issues with MP4Box 0.4.3_20061115?
It does not seem to handle VOBsubs as reliably (ie: muxing and de-muxing and playing in MediaPlayer Classic) as your previous MP4Box 0.4.3 build, dated 2006-08-28....
Cheers
Drachir
25th November 2006, 12:16
Hi Kurt,
Have there been any reported issues with MP4Box 0.4.3_20061115?
It does not seem to handle VOBsubs as reliably (ie: muxing and de-muxing and playing in MediaPlayer Classic) as your previous MP4Box 0.4.3 build, dated 2006-08-28....
Yes, there is a report.
http://sourceforge.net/forum/forum.php?thread_id=1615412&forum_id=287547
Like mentioned in GPAC's changelog, there may be some trouble, introduced through the porting to symbian.
Lele-brz
18th April 2007, 09:40
Hi all,
I'd like to use mp4box to set the header at the beginning, is it possible, generally I have a aac audio track and h264 track then I mux them but no always the header is at the beginning so when opening the file I have to go at the end or the middle of the file preventing me from streaming that.
thanks for any tips on that
Bye
Drachir
18th April 2007, 10:06
By default the moov box/atom is placed at the beginning in mp4/3gp files created by MP4Box. Only if you use -flat you will find this box/atom at the end of the file.
Your goal seems to be progressive download not streaming. A short comparison can be found here:
http://www.streamingmedia.com/article.asp?id=8456&page=1&c=11
Lele-brz
19th April 2007, 10:15
yes, you're right, and I found that using mp4creator -optimize it's possible to move it at the beginning if you have non Mp4box file
Lele-brz
2nd May 2007, 13:44
Hi all,
I'm trying to use the -frag oprion of mp4box, my intention is to have a smaller header size.
But when I mulptiplex using this option with MP4Box the file is not readable, what can I do?
thanks
bye
Drachir
2nd May 2007, 17:48
Hi all,
I'm trying to use the -frag oprion of mp4box, my intention is to have a smaller header size.
But when I mulptiplex using this option with MP4Box the file is not readable, what can I do?
thanks
bye
Did you try to play the file with Osmo4? I don't know if fragmented MP4 files are supported by other players.
You will get a smaller moov box/atom, but you will get also a moof box/atom every 0.500 seconds(MP4Box default).
An other alternative could be a streaming server like the Darwin Streaming Server.
fragmented mp4 files indeed need special parsers (iirc also 3ivx' mp4 directshow splitter supports it) and i kinda doubt that they are having smaller headers/overhead as drachir mentioned
Drachir
6th May 2007, 12:10
fragmented mp4 files indeed need special parsers (iirc also 3ivx' mp4 directshow splitter supports it) and i kinda doubt that they are having smaller headers/overhead as drachir mentioned
I didn't said that there will be less overhead for the complete mp4 file.;) I only said that the moov box will be smaller, because there will be no tables entries in the Sample Table Box[stbl].
But you will also get a moof box every x time.
SeeMoreDigital
1st June 2007, 13:49
Please refer to Drachir's thread: -
http://forum.doom9.org/showthread.php?t=126453
What do you think about implementing a pasp atom in mp4box as described in Amendment 1 of ISO/IEC 14496-12 (http://standards.iso.org/ittf/PubliclyAvailableStandards/c043689_ISO_IEC_14
496-12_2005_Amd_1_2007(E).zip) (MP4 standard)?
Currently I cannot use any tools using mp4box (like staxrip or megui), for encoding.
I have added a Feature Request to the tracker, but no reply there:
http://sourceforge.net/tracker/index.php?func=detail&aid=1721563&group_id=84101&atid=571741
Something like that has been requested in two other feature requests and in the sf.net forum too. I don't think the solution is very complicated, but I have problems to identify the exactly affected sourcecode from GPAC. In my feature request I've described my problem. Perhaps you could give me some hints so that we can find a solution together?
best regards
mcka
Drachir
7th June 2007, 09:00
@mcka to rephrase the same question, again and again, probably won't help. You did a feature request, wait some time if Jenlf will do something in this regard.
Maybe there is something we do not see.
About the other feature request you mentioned there, was asked about implementing the use of the transformation matrix for anamorphic video. The transformation matrix isn't used in the MP4 File Format(ISO/IEC 14496-14).
This is a diffrent feature request, probably with the same goal.
The use of transformation matrix to deform a video elementary stream in MP4 files is not standard conformance.
pasp is a new feature specified in MP4 file format (ISO/IEC 14496-14) which makes the transformation matrix obsolete, because latest Quicktime Applications already understand pasp in MP4. So anamorphic encoded video streams could be implemented in a standard conformance way, which is understood by nearly all client applications.
As said I'd like to help implementing it, but I ran into some problems and I'm looking for help. It does not need to be implemented in official gpac source (though this would be the best). With some help I could create a patch, so anybody who would like to use StaxRip or MeGUI to create anamorphic video files which should work with most players could compile mp4box by oneself.
An alternative could be to create a small tool, which only adds the pasp atom to a completed mp4 file. This way I could avoid to understand all the GPAC internals, but I'd need to write a lot more code...
SeeMoreDigital
7th June 2007, 16:42
...An alternative could be to create a small tool, which only adds the pasp atom to a completed mp4 file. This way I could avoid to understand all the GPAC internals, but I'd need to write a lot more code...Adding or amending the "aspect ratio signalling" values of MPEG-4 part-2 or part-10 video streams is pretty simple to do (for .AVI and .MP4 contained files). And works in just about every software and hardware player I have :)
Personally, I don't see much point in being able to add or amend pasp values at the container level, when (as far as I know) only Quicktime player supports them anyway...
Personally, I don't see much point in being able to add or amend pasp values at the container level, when (as far as I know) only Quicktime player supports them anyway...
But it doesn't hurt either if it's done in a standards compliant way. On the other hand it would make a lot of people happy. It's not because I love to play mp4 files on my PC using Quicktime, but I'd like to play them with AppleTV, where I cannot simply change the player. I really don't like the limitations from Quicktime, but if I don't use anamorphic encoding everything works fine. So this is the only problem which could be solved by adding pasp to mp4box.
Since I'd like to encode my videos on Windows, I'd like to use StaxRip or MeGUI, at the moment anamorphic encoding only works with Quicktime pro or a SVN Version of Handbrake.
SeeMoreDigital
7th June 2007, 19:34
... but I'd like to play them with AppleTV, where I cannot simply change the player. I really don't like the limitations from Quicktime, but if I don't use anamorphic encoding everything works fine.So your saying AppleTV has the same limitations as QT7 player at not recognising aspect ratio signalling at the MPEG-4 video stream level.... Jeez that's lame!
On that basis your proposed suggestion would indeed be useful...
Cheers
mcka
28th June 2007, 14:11
So your saying AppleTV has the same limitations as QT7 player at not recognising aspect ratio signalling at the MPEG-4 video stream level.... Jeez that's lame!
Indeed! Before QT 7.1 you had to use a on standard compliant transformation matrix, that's what Handbrake people did. But since QT 7.1 it supports pasp which is standard compliant. So I looked at the specification and at gpac source-code to write a patch to add pasp to mp4box, I already added a proposal how to add a PixelAspectRatioBox structure in isomedia_dev.h. But I could not figure out how to add the PixelAspectRatioBox into the file creation process. If someone who knows more details about mp4box source code could give me some advice, I could come up with a patch which could be integrated in the source or which could make it possible for Apple TV users to patch mp4box and create an own mp4box binary to create anamorphic movies which work on their Apple TVs.
On that basis your proposed suggestion would indeed be useful...
I think so. It would help every Apple TV / iPhone / iPod user, who likes to use encoding guis based on mp4box. Thanks to Awkwardtv community (http://wiki.awkwardtv.org/wiki/Main_Page) we can turn Apple TV into a really nice device for watching our encoded movies on TV (up to 720p H.264 @ 5Mbit). The only missing thing is support for anamorphic encoding in encoding guis. Since Apple TV was made to watch your movies (which can be stored on a PC or NAS) on HD screens, it definitly matters if you use anamorphic encoding or resize the movies.
Kurtnoise
28th June 2007, 15:06
Jean Lefeuvre, the main developper of GPAC, is going to introduce the pasp support into the framework. So, wait & see...:)
or check out the code in the cvs tree.
mcka
28th June 2007, 17:56
That's great news!
Looking at the cvs commits I think I'd never got this working on my own ;-)
Thanks a lot! Looking forward to test this great new feature!
@Kurtnoise13: Is your mp4box-dev build a CVS checkout from 2007-Jun-25? If so, the patch does not seem to be complete yet (or needs a special command line switch...) - for those who'd like to test it (like me ;-)). But from now on I'll wait patiently...
Kurtnoise
28th June 2007, 19:53
Yes, not complete yet. That's why I said "wait & see"...
bond
28th June 2007, 23:08
is there some docu for this pasp?
SealTooGreat
29th June 2007, 03:14
is there some docu for this pasp?
c043689_ISO_IEC_14496-12_2005_Amd_1_2007(E).zip (http://standards.iso.org/ittf/PubliclyAvailableStandards/c043689_ISO_IEC_14496-12_2005_Amd_1_2007(E).zip) taken from here (http://sourceforge.net/tracker/index.php?func=detail&aid=1721563&group_id=84101&atid=571741).
JoeBG
29th June 2007, 17:47
How can I use pasp?
SeeMoreDigital
29th June 2007, 18:41
How can I use pasp?Currently, the only software player I know of that makes use of PASP is QuickTime7 player. No MPEG-4 direct-show decoder filter supports it...
Cheers
fight2win
29th June 2007, 19:30
pasp?
SeeMoreDigital
29th June 2007, 23:49
pasp?Essentially it relates to assigning the shape of a pixel at the "container" level, instead of (or including) at the "video steam" level.
mcka
30th June 2007, 07:11
Hi!
pasp?
For those who don't know what's meant with pasp, that's the most important paragraph from the ISO specification (which has already been posted by SealTooGreat):
Part 12: ISO base media file format
AMENDMENT 1: Support for timed metadata, non-square pixels and improved sample groups
[...]
8.16.1
[...] The width and height in the video sample entry document the pixel counts that the codec will deliver; this
enables the allocation of buffers. Since these are counts they do not take into account pixel aspect ratio.
The pixel aspect ratio and clean aperture of the video may be specified using the ‘pasp’ and ‘clap’ sample
entry boxes, respectively. These are both optional; if present, they over-ride the declarations (if any) in
structures specific to the video codec, which structures should be examined if these boxes are absent.
In the PixelAspectRatioBox, hSpacing and vSpacing have the same units, but those units are unspecified:
only the ratio matters. hSpacing and vSpacing may or may not be in reduced terms, and they may reduce
to 1/1. Both of them must be positive.
They are defined as the aspect ratio of a pixel, in arbitrary units. If a pixel appears H wide and V tall, then
hSpacing/vSpacing is equal to H/V. This means that a square on the display that is n pixels tall needs to be
n*vSpacing/hSpacing pixels wide to appear square.
[...]
This could be used for implementing anamorphic encoding. That's what QT7 does.
best regards
mcka
PASP is neat. We're currently adding support for the 'pasp' atom to our DirectShow filter suite.
Our muxer will set the PASP correctly based on the stream's PAR, so people should just continue to encode with in-stream PAR. You can always remux.
(The muxer can also be used to reset the PAR)
Kurtnoise
3rd July 2007, 17:32
Can somebody test the -psp switch from my last MP4Box's build please ?...It's just to know if it works as well because I haven't a PSP device around me.
Cmd line example :
MP4Box -add video.264:fps=30.000 -add audio.m4a -psp output.mp4
SeeMoreDigital
3rd July 2007, 17:41
Can somebody test the -psp switch from my last MP4Box's build please ?...It's just to know if it works as well because I haven't a PSP device around me.... Do you not have QT7?
Kurtnoise
3rd July 2007, 18:12
uhh ???
PASP atom != Sony PSP devices
;)
SeeMoreDigital
3rd July 2007, 18:19
uhh ???
PASP atom != Sony PSP devices
;)As far as I'm aware PASP works in QT7 player, as well as certain hardware devices!
Schrade
3rd July 2007, 18:52
Can somebody test the -psp switch from my last MP4Box's build please ?...It's just to know if it works as well because I haven't a PSP device around me.
Cmd line example :
MP4Box -add video.264:fps=30.000 -add audio.m4a -psp output.mp4
What exactly are you testing for the PSP?
I have to know so I know where to place the video on the PSP. There's something like 4 places you can put videos on the PSP and depending on what firmware you're running you have more or less capabilities in certain directories.
Is it the AtomChanger mangling that you added?
Also, which MP4Box of yours? The dev version or 0.4.4?
Kurtnoise
3rd July 2007, 19:36
It's just for testing the playback on these devices. In other words, does the PSP is able to play back flawlessly the file created by MP4Box or not...
and yes, it's the dev build from today.
Schrade
3rd July 2007, 19:50
OK well I tried it with and without the -psp option and both worked on the PSP from the /VIDEO folder using Firmware 3.40 OE-A.
So again, what exactly does the -psp switch do?
Kurtnoise
4th July 2007, 05:52
Adds UUID atom + MSNV as brand name + something else...
hubereevez
18th July 2007, 21:48
I did test adding idx.
PLayer is showing the entire list of subs that are is this idx, spite of empty index
# Polish
id: pl, index: 10
# Decomment next line to activate alternative name in DirectVobSub / Windows Media Player 6.x
# alt: Polish
How can I properly set the command line to just add the streams who got timestamp ?
yawoo
29th July 2007, 17:22
Adds UUID atom + MSNV as brand name + something else...
It do not work for psp old format (Atom changer) that places under /MP_ROOT/100MNV01/ or /MP_ROOT/100ANV01/. If the video place under /VIDEO, it do not need to patch with atom changer.
What source you refer to write your patch? If from the source of Atomchanger (written by delphi), it is required to add one more option "Build_edts=1" to make it workable. Here is the sample.
[Config]
Title=PSP MPEG-4 AVC
MQV=2
CODEC=2
Build_edts=1
[DeleteAtom]
Item0=ftyp
Item1=free
Item2=udta
Item3=iods
[InsertAtom]
Item0=ftypMSNV%01%00%07%86MSNVmp42isom
Kurtnoise
29th July 2007, 17:47
I'm not the author of this patch...You have to ask to GPAC developpers for that (but I'm sure they didn't use the AtomChanger canvas or code). I just updated the switches to enable or not the support for this.
Anyway, what is the goal to use still the old format ?
yawoo
29th July 2007, 18:12
I'm not the author of this patch...You have to ask to GPAC developpers for that (but I'm sure they didn't use the AtomChanger canvas or code). I just updated the switches to enable or not the support for this.
Anyway, what is the goal to use still the old format ?
After firmware 3.30, PSP accept mp4-avc video file under /VIDEO without atom patched. But for mp4 sp/asp, it still require atom patched and is placed under specified folder.
I'm the author of WinMEnc (mencoder GUI). I just find the mp4box updated with "-psp", and I'm interested to produce PSP directly by mp4box without Atomchanger.
vBulletin® v3.8.11, Copyright ©2000-2026, vBulletin Solutions Inc.