PDA

View Full Version : MediaInfo(Lib) 0.7 - Reading information about media files


Pages : [1] 2 3 4 5

Zenitram
27th June 2005, 23:33
I develop MediaInfo, which is a tool to show technical information (container format, codec, width, heigth...) and tags (Title, Artist, Language...) about all kind of multimedia files. Main purpose is to have a library for third-parties, but there is a graphical interface too.

I wish have some beta testers with complex files, to "stress" the program just released.
http://mediainfo.sf.net
There are :
- A graphical interface
- A command line interface
- A DLL for programers (with C++, C#, J#, VB.nt, VB5, Delphi, ActiveX examples)

I already did some tests on :
Matroska, Avi, Wav, Ogg, Ogm, Mpg, Vob, Mp4, M4a, 3gp, M2v, mp3, Wma, Wmv, Mov, Rm, Rmvb, Ifo of DVD, Aac, Ac3, Dts, Monkey Audio, Ape, Flac, Au, Aiff.
I am working on H264.

Did I forget a container?

SCIF
28th June 2005, 05:55
Good idea! It'll be useful. GSpot not support anything except *.avi. Cheers.

thana
29th June 2005, 11:35
just tested some files of my collection:

first of all, is .swf (flash) supported? its not mentioned anywhere but mediainfo finds mpeg-audio streams in some of them (albeit with bitrate 0).. i'm not sure if those are really mpeg audio streams, but it could very well be so..

i guess "S-Mpeg 4 v3" should really be "MS-Mpeg 4 v3", right?

why is the mpeg container called "MPEG 1 Multiplexer" instead of simply "MPEG 1"? is this the official name?

"MPEG-4 Video" should maybe renamed to "MPEG-4 (A)SP" and "MPEG-4 AVC" to better differentiate the two variants

while "MPEG-4 Audio" is technically correct, i think it would be more helpfull for users if you would write "MPEG-4 Audio (AAC)" and maybe even "MPEG-4 Audio (HE-AAC)" too.

the codecs in this .mov here (http://download.theforce.net/theater/nonsw/grayson/Grayson_web_large.zip) are not recognised at all. according to mplayer they should be "ima4" (IMA ADPCM) for audio and "SVQ3" (Sorensen Video 3) for the video track.

this movie here (http://www.kollektiv-kaffeemaschine.com/media/nebenderarbeitQT.mov) has exactly the same codecs, but this time "ima4" is detected as a second video track instead of the audio track.

i would appreciate it if the actual FOURCC would be displayed somewhere in conjunction with your "translated" description

whenever there is no audio or video track in a container, the codec name is displayed in the format-column too instead of the real container name, which is very confusing (at least for me).

i have another .mov on my hd (sorry, no link) which isn't recognised at all too. codecs are "Sorensen Video 3" and uncompressed pcm audio (FOURCC: "twos"). i can upload it somewhere if you want.


that's it for now, more to come later =)

Zenitram
29th June 2005, 11:59
Thank you for your tests.

just tested some files of my collection:

first of all, is .swf (flash) supported? its not mentioned anywhere but mediainfo finds mpeg-audio streams in some of them (albeit with bitrate 0).. i'm not sure if those are really mpeg audio streams, but it could very well be so..

No support of SWF.
My MPEG audio parser has difficulties to detect false MPEG Audio, because MPEG Audio "magic value" is only 12 bits :(
I will put more tests about coherancy of value (bitrate 0 and so on...)


i guess "S-Mpeg 4 v3" should really be "MS-Mpeg 4 v3", right?

Writing error, will be corrected ;-)

why is the mpeg container called "MPEG 1 Multiplexer" instead of simply "MPEG 1"? is this the official name?

MPEG is a group (Movie Picture Expert Group), who released a lot of standarts, with MPEG 1 Video, MPEG 1 Audio, MPEG1 Multiplexer and so on...
I would like to differenciate them.

"MPEG-4 Video" should maybe renamed to "MPEG-4 (A)SP" and "MPEG-4 AVC" to better differentiate the two variants
while "MPEG-4 Audio" is technically correct, i think it would be more helpfull for users if you would write "MPEG-4 Audio (AAC)" and maybe even "MPEG-4 Audio (HE-AAC)" too.

I will look at what I can do. Not sur to be able to always differenciate them.

the codecs in this .mov here (http://download.theforce.net/theater/nonsw/grayson/Grayson_web_large.zip) are not recognised at all. according to mplayer they should be "ima4" (IMA ADPCM) for audio and "SVQ3" (Sorensen Video 3) for the video track.

this movie here (http://www.kollektiv-kaffeemaschine.com/media/nebenderarbeitQT.mov) has exactly the same codecs, but this time "ima4" is detected as a second video track instead of the audio track.

I will download theses files

i would appreciate it if the actual FOURCC would be displayed somewhere in conjunction with your "translated" description

in the menu : Debug-->Advanced mode.
Or : you can edit preferences (for "sheet" view, or HTML...), and add "%Codec%" (instead of "%Codec_String%)

whenever there is no audio or video track in a container, the codec name is displayed in the format-column too instead of the real container name, which is very confusing (at least for me).

I don't have files with a container but without streams, could you send me one?

i have another .mov on my hd (sorry, no link) which isn't recognised at all too. codecs are "Sorensen Video 3" and uncompressed pcm audio (FOURCC: "twos"). i can upload it somewhere if you want.


Interested to have it.


that's it for now, more to come later =)
I am waiting for it :)
You can contact me with private messages.

thana
29th June 2005, 16:24
MPEG is a group (Movie Picture Expert Group), who released a lot of standarts, with MPEG 1 Video, MPEG 1 Audio, MPEG1 Multiplexer and so on...
I would like to differenciate them.
yeah, i know. but then the really correct name would be "MPEG-1 Systems Multiplex". also the codecs are correctly written with a dash before the number, f.e. "MPEG-1 Audio" or "MPEG-2 Video" instead of "MPEG Audio 1" or "MPEG Video 2".

What about MPEG transport streams? are they supported? i tried a sample but mediainfo found only the video stream and no audio stream.. (http://www.nextcomwireless.com/R5000/samples.htm)

if they are not supported, the correct description for the MPEG-2 container would be "MPEG-2 Program Stream", because "MPEG-2 Systems Multiplex" describes both, program streams and transport streams.

I don't have files with a container but without streams, could you send me one?
i didn't mean a container without any stream (would be quite useless), just one without an audio stream but with a video stream or the inverse.
but i just saw that this isn't a real problem, i was only confused because you called MPEG Elementary Streams "MPEG Video 1" etc. but you are probably correct, an elementary stream really doesn't have a container/format, its just the audio/video stream.

Interested to have it.
i put it on my ftp. also i found some other samples which are detected incorrect. you can find them all in "video-samples" on my ftp. i will send you the address per pm.

Zenitram
29th June 2005, 17:16
yeah, i know. but then the really correct name would be "MPEG-1 Systems Multiplex". also the codecs are correctly written with a dash before the number, f.e. "MPEG-1 Audio" or "MPEG-2 Video" instead of "MPEG Audio 1" or "MPEG Video 2".

OK, I will change for this.
But : what should I write for "MPEG Audio 2.5 (some MP3 have this, extended version of MPEG-2 Audio...)? MPEG-2.5 Audio?
but : "MPEG-1 Systems Multiplex" is long :(. I think I will change it in MPEG-x PS, and MPEG-x TS (see below for TS)

What about MPEG transport streams? are they supported?

TS? Not yet, because I didn't find documentation on this (which bit for what), :(

if they are not supported, the correct description for the MPEG-2 container would be "MPEG-2 Program Stream", because "MPEG-2 Systems Multiplex" describes both, program streams and transport streams.

if you know MPEG system, could you tel me where PS is used (DVD, and?), and where TS is used?
I have difficulties to understand all in the MPEG standarts, they are a little difficult with a lot of standarts :)

i didn't mean a container without any stream (would be quite useless), just one without an audio stream but with a video stream or the inverse.
but i just saw that this isn't a real problem, i was only confused because you called MPEG Elementary Streams "MPEG Video 1" etc. but you are probably correct, an elementary stream really doesn't have a container/format, its just the audio/video stream.

OK, I understand more what you said.
And as you said, Video ES or Audio ES (=MP3 or raw AAC) doesn't have a container, so I use the ES name in place of the container name, and I think to not change this.

Thank you for your analysis.

thana
29th June 2005, 18:32
OK, I will change for this.
But : what should I write for "MPEG Audio 2.5 (some MP3 have this, extended version of MPEG-2 Audio...)? MPEG-2.5 Audio?
yes, looks good to me. or maybe just leave it at MPEG-2, and describe the .5 part somewhere in the advanced mode text. MPEG-2.5 is a proprietary extension by FHG that only allows for some lower sample frequencies and bitrates, but it's not officially endorsed by the MPEG committee in any way.

but : "MPEG-1 Systems Multiplex" is long :(. I think I will change it in MPEG-x PS, and MPEG-x TS (see below for TS)
yes, that is ok too.

TS? Not yet, because I didn't find documentation on this (which bit for what), :(
you can find the last draft on this page: http://www.le-hacker.org/dvd.html, this should be a good starting point.

if you know MPEG system, could you tel me where PS is used (DVD, and?), and where TS is used?
afaik (but i'm not an expert) PS are officially used on VCD, SVCD and all variants thereof. VOBs on DVD contain several ES as well as other stuff for menu's etc.

TS are mainly used for digital broadcasting (DVB/ATSC/ISDB).

EDIT: typos

Kurtnoise
3rd July 2005, 00:20
Hi Zenitram,

First of all, many thanks for this tool. It's very nice....;) I'll use mediainfo.dll in the next YAMB release. (not finished yet but I'll release it very soon). I'd like to suggest you to use some GPAC code for mp4 files. It's up to date comparing to the mpeg4ip libraries...(h264, ,avc supports...) Hope this help.

Prodater64
3rd July 2005, 02:14
@Zenitram:

Could you post how can I call mediainfo.dll from VB6 files please.
Just for 1 file (not several media files).
If you can, post examples to obtain width, height, fps, bitrate, etc.
Thanks.

Doom9
3rd July 2005, 02:42
phew, just spotted this.. might come in very handy for MeGUI.. right now I only have AVIFile and basically have to make up something for every other format.

Sirber
3rd July 2005, 03:19
Gonna add it to RealAnime. Many thanks for the great tool!

Doom9
3rd July 2005, 03:31
Hmm... could it be that the feature matrix (http://mediainfo.sourceforge.net/formats.html) is incomplete? Looking at the screenshots I see "play length" but that doesn't seem to be listed in the matrix. For me getting the length of a file (audio or video) as well as number of frames (in case of video) are the features I'm most interested in.

Sirber
3rd July 2005, 05:15
Track information seems to be missing for MKV... could be cool to have it :)

Zenitram
3rd July 2005, 13:31
Thanks for your replies...
I'd like to suggest you to use some GPAC code for mp4 files.I should.
But this is actually hard to understand GPAC interface (mainly for tags).
I use mp4ff for codecs, and mp4v2 for tags.
I know how to do for codecs with GPAC, but I don't know how to do for tags.
I will work on it, but some difficulties... ;-)


Could you post how can I call mediainfo.dll from VB6 files please.
There is an VB5 (works on VB6 too) example with the DLL package, in the "Contrib" Directory.
Not exactly what you want, but you should easily understand how to do

Hmm... could it be that the feature matrix (http://mediainfo.sourceforge.net/formats.html) is incomplete?
little outdated

Looking at the screenshots I see "play length" but that doesn't seem to be listed in the matrix.
Duration is the same as "Play length", I changed the name in MediaInfo, but not in the matrix :(
For me getting the length of a file (audio or video) as well as number of frames (in case of video) are the features I'm most interested in.MediaInfo_Option(NULL, "Info_Parameters") to have all available parameters.
MediaInfo_Get(Handle, Stream_General, 0, "PlayTime", Info_Text, Info_Name) to have the length in millisecond (or "PlayTime_String1" or 2 or 3 to have formated text ("?h ?mn ?s"...)
MediaInfo_Get(Handle, Stream_Video, 0, "FrameCount", Info_Text, Info_Name) to have number of Frames (or PlayTime*FrameRate if you prefer...)
Track information seems to be missing for MKV... could be cool to have it :)The complete work on MKV is not done yet, this will come soon!

Doom9
3rd July 2005, 13:34
@Zenitram: thanks for the info.

Am I correct assuming you wrote your own code to parse the files and are not relying on any external APIs?

Zenitram
3rd July 2005, 14:02
Am I correct assuming you wrote your own code to parse the files and are not relying on any external APIs? You are not 100% correct, depend of what I found on Internet :
- AAC : internal
- AC3 : internal
- APE : MACLib
- CDXA : internal
- DVD : internal
- DTS : internal
- Flac : FlacLib
- MKV/MKA : libmatroska & libebml
- MPEG-1 and 2 multiplex : internal
- MPEG-1 & 2 Video : internal
- MPEG-1 & 2 Audio (technical) : internal
- MPEG-1 & 2 Audio (tags) : Id3Lib
- MPEG-4 (technical) : mp4ff (faac)
- MPEG-4 (tags) : mp4v2 (faad)
- Ogg : internal
- Quicktime : internal
- Riff (WAV/AVI/the stupid .divx extension) : internal
- AIFF, and other old audio : SndFile
- ASF/WMV/WMA : internal

Note : I sent you a submission for have MediaInfo in your 1st page, did you receive it?

Doom9
3rd July 2005, 14:14
Note : I sent you a submission for have MediaInfo in your 1st page, did you receive it?I don't recall but I don't have access to my latest inbox right now (it's on my new box that runs unstable so I'm currently running lenghty tests to try and figure out which is the faulty component.. and I can't get to my mails from a linux boot CD).

It's not really the news for your average users, but since I find the library useful I guess I could make an exception.

bond
3rd July 2005, 14:22
mp4v2 is mpeg4ip's lib, which faad uses too (but only the parts it needs i think), you might find a more complete version in the mpeg4ip cvs

Zenitram
3rd July 2005, 14:33
mp4v2 is mpeg4ip's lib, which faad uses too (but only the parts it needs i think), you might find a more complete version in the mpeg4ip cvsSo, what is the best library (mp4ff, mp4v2 from mpeg4ip, or GPAC) to have technical AND tags info from mp4 files?
I am a little lost with MPEG4 libraries, I didn't find yet the perfect library for my needs :(

bond
3rd July 2005, 14:59
tags are a special issue in mp4 because there is an official tagging standard for mp4, but the power of itunes (which uses a private tagging way) lead to that people use only the itunestagging
and as always private stuff leads to a mess...

i would say there are two good mp4 libs available: the one from mpeg4ip and the one from gpac

mpeg4ip tags in the itunesway, gpac i think in the official mpeg way (but i have to admit i never really tested it so i dunno much about it)

iNFO-DVD
4th July 2005, 17:29
I downloaded the zip package of this just to take a look and I must admit I was not very impressed with the way you 'shell' associated everything from within your program!

You should leave that to an installer!

Just took me half an hour hacking my registry to remove all the crap! :mad:

Zenitram
4th July 2005, 17:45
I downloaded the zip package of this just to take a look and I must admit I was not very impressed with the way you 'shell' associated everything from within your program!

You should leave that to an installer!

Just took me half an hour hacking my registry to remove all the crap! :mad:
I don't understand :
- you downloaded the Installer file : all registry keys are deleted with uninstall
- you downloaded the ZIP file : how could I know you want to delete MediaInfo??? and this is a "one click" thing to suppress registry keys without uninstaller : uncheck Options, advanced, Shell explorer.

If you have an idea to do it with a better behaviour, I am interested... At this time, there *IS* an installer/uninstaller, and for people who want ZIP files, there is a ZIP file with the possibility to uncheck the shell explorer...
I don't plan to suppress the ZIP files, because some people want it.

And I don't think there is a better solution, a lot of software have the same problem if associations when shipped in a ZIP file...

buzzqw
4th July 2005, 19:51
would be possible to know the number of frames also for mpeg1 or mpeg2 video file (multiplexed vob or simple mpeg files) ?

BHH

Zenitram
5th July 2005, 00:36
would be possible to know the number of frames also for mpeg1 or mpeg2 video file (multiplexed vob or simple mpeg files) ?Yes.
with the DLL if you are programmer, or with the GUI (because no everybody is interested, you must active in the menu "Debug --> Advanced mode") : "FrameCount"

buzzqw
5th July 2005, 08:13
@Zenitram

thanks, but i prefer the command line version

would be possible to integrate in command line ?

Thanks anyway

BHH

Zenitram
5th July 2005, 10:31
thanks, but i prefer the command line version
would be possible to integrate in command line ?
Everything is possible :)
With command line : "-f" for "full information", you will have all information available, FrameCount included.
Command line is light at this time, but I plan to improve it...

buzzqw
5th July 2005, 13:13
(maybe i don't fully understod)
i try -f switch but i got framecount only for avi not mpeg...

anyway i wait a "lightless" command line ! :thanks:

BHH

Malow
7th July 2005, 04:51
pulldown detection will be incorpored? :D

Zenitram
7th July 2005, 18:21
pulldown detection will be incorpored? :D
Do yo uspeak of this (http://www.zerocut.com/tech/pulldown.html)?
1/ MediaInfo works on video track information, not frame per frame : I don't plan do say where is "A" frames. the only thing I plan to do in video frames is to know if video is compatible with DivX player (B-frames...), because his is a video track information, not only for some frames. So I don"t see what you would know about pulldown in MediaInfo.
2/ I am european, so I don't need pulldown (joke :D )

Doom9
8th July 2005, 08:19
Can you library tell me if an audio file is variable or constant bitrate?

Zenitram
8th July 2005, 18:40
Can you library tell me if an audio file is variable or constant bitrate?
Yes, when I can say it. (with GUI : select advanced mode, and there will sometimes be a "BitRate Mode" tag)
This is the case of MP3.
But for other audio formats, the format tells you if this is VBR or CBR (OGg is VBR, AC3 is CBR...)
The problem I didn't succeed to resolved is MP3 in AVI : I can't say VBR or CBR :(
Which format to you wish?

Doom9
9th July 2005, 03:27
I'd like to give your lib (the dll) an mp3 and have it tell me if it's vbr or cbr. Right now the user has to enter the audio type manually. That is all outside of an AVI. But in order to mux an MP3 into an AVI, knowing if it's CBR or VBR is crucial because the overhead changes significantly.

Zenitram
9th July 2005, 17:45
Doom9> So : Yes, you (will) be able to do this.
Why "will"? Because, I took a look in the source code, I saw I detect VBR or CBR to calculate bitrate (I need to know if this is a VBR file too), but I forgot to set the VBR tag on for external programs :(
In next version for this.
But : even if I dream you use MediaInfo.dll (because thanks to your homepage, I have at this time twice more people on my homepage, maybe the same with the DLL :) ), I don't understand you : there is simpler way to detect VBR in a MP3 file, because everybody use "xing" VBR header (but xing website is now offline :(, so : no specifications) (and I use only this method to detect VBR), and this is some line of code only, so no need of a 600 KB DLL to use only 20 lines of code.
You can take a look here (http://cvs.sourceforge.net/viewcvs.py/mediainfo/MediaInfoLib/Source/MediaInfo/File_Mpega.cpp?annotate=1.27) , line 540 to write your own parser.

Doom9
9th July 2005, 18:04
well.. if I start using the lib then for the follwowing purposes:

detec if an mp3 is vbr or cbr
get the length of ac3/mp3/mp2/wav input
get the length, number of frames and framerate of an AviSynth file.

I'm not sure, can you handle the last one? I currently use AVIFile for the last one and have no solution for the other two.

Zenitram
9th July 2005, 18:56
detec if an mp3 is vbr or cbr
get the length of ac3/mp3/mp2/wav inputWill be able in the next version (while speaking with you, I took a look to your requests, seems I forgot some things, so there is not always information, even if it is easy to have it, MediaInfo.dll is young :(
get the length, number of frames and framerate of an AviSynth file..Not sure to understand : in my mind, AviSynth is only a script file (AVS), with not real video or audio in it. and I work only on real video or audio files. And I try do not have Win32 dependancies (so : no AVIFile for me :) ). Maybe later I will inspect AVS file, to detect original file (but if this is a D2V file, I need to parse it too to have source files :( ), but don't hope it soon.
So : I will work on having length for AC3/mp3/wav (and VBR) in the next version, it is easy.

Doom9
9th July 2005, 19:06
Not sure to understand : in my mind, AviSynth is only a script file (AVS), with not real video or audio in it. and I work only on real video or audio files.hmm.. then I guess we have a problem. It is possible to read those things without any platform dependencies though.. x264 and mencoder can handle AviSynth input.

Zenitram
9th July 2005, 19:32
hmm.. then I guess we have a problem. It is possible to read those things without any platform dependencies though.. x264 and mencoder can handle AviSynth input.
Ah? OK, you speak about avifile library, not AVIFile Win32 API, sorry.
Will take a look in it to see what I can do.

Doom9
9th July 2005, 19:46
no I meant I AM using the W32 AVIFile API but I'd like to get away from it. I guess I'll always rely on it for video preview, but at least for getting the properties of the source something else could come in handy. The problem some of the MeGUI users have is that they don't have the codecs to play YV12 installed but tested their script in other apps that do not require a YV12 decoder (or use a DShow one), and so they have a basically working AviSynth script that might even be encodable, but due to AVIFile requiring the YV12 decoder they cannot start without installing that codec first.

Either way I'd understand if you won't support AviSynth because it's not really a media file.

Zenitram
10th July 2005, 01:41
Doom9> Seems to not be too difficult, if you wish only to support AVS with .AVI in it, or D2V in it (if D2V has VOB in it for example), because I can write basic AVS and D2V parsers to extract original filenames. Is it why you wish? if yes, OK, I will do it because this is not opposite of MediaInfo philosophy.
And : do you know AVS with other than D2V or VOB? If yes, I am interested to have examples. (maybe in private)

Doom9
10th July 2005, 01:49
Well, I suppose the most common use case is an AviSynth script with a d2vsource in it.

Other options are AviSource, WavSource, DirectShowSource and AC3Source. I'm not sure how mencoder and co read AVS sources.. definitely not through AVIFile but most Windows Applications use AVIFile as AviSynth appears to be just another VfW decodeable format. I think parsing the script and looking what's in there could provide to be dangerous.. actually rendering sounds more promising.. for the specifics I'd check x264 or mencoder source code (probably the latter since it's smaller).

Zenitram
25th July 2005, 00:17
well.. if I start using the lib then for the follwowing purposes:

detec if an mp3 is vbr or cbr
get the length of ac3/mp3/mp2/wav input
get the length, number of frames and framerate of an AviSynth file.


DLL is updated with the first two lines.
https://sourceforge.net/project/showfiles.php?group_id=86862&package_id=90614

I will work on AVS later...

Zen

stax76
3rd September 2005, 21:35
I downloaded the zip package of this just to take a look and I must admit I was not very impressed with the way you 'shell' associated everything from within your program!

You should leave that to an installer!

Just took me half an hour hacking my registry to remove all the crap! :mad:


If it's a shell handler I know at least one tool which might be handy:

http://www.nirsoft.net/utils/shexview.html

I've done a neat tool myself but it's not released yet...

Sirber
4th September 2005, 00:45
I'm starting to implement the DLL into RealAnime LE. I plan to use it for all my source analysis :D

Sirber
4th September 2005, 02:53
Hum...

I'd like to know if it's possible to get infos on MKV like what language a track is (audio and sub) as well as the track # (to use to extract it).

Thanks!

Zenitram
4th September 2005, 22:33
I'd like to know if it's possible to get infos on MKV like what language a track is (audio and sub) as well as the track # (to use to extract it).I am working on v0.7 (more than 0.7.0.1) at this time, and I am implementing more tags for Matroska, including what you need.
At this time (v0.7.0.1), this piece of information is not implemented for MKV (it is for OGM), it will be soon for MKV.
You can work with OGM, this will be the same way to get info for MKV ;-)

PS : you can monitor DLL release (http://sourceforge.net/project/filemodule_monitor.php?filemodule_id=90614) to be informed imediatly when I release a new version

SeeMoreDigital
4th September 2005, 22:45
Hum...

I'd like to know if it's possible to get infos on MKV like what language a track is (audio and sub) as well as the track # (to use to extract it).

Thanks!If you feed an MKV file into AVI-mux, it's able to produce (and allows you to change the attributes of) language info: -

http://img148.imageshack.us/img148/5296/avimux4xc.png

I've not tried any files with subtitles.....


Cheers

Sirber
4th September 2005, 22:46
Cool! I tryed to implement 7.0.1 first but I got AVs. I mainly work with AVI and MKV (OGM gets converted to MKV). I will stick to 6.0.x until 7.0 comes out final :) Keep the good work! :D

Sirber
14th October 2005, 20:24
From this page (http://mediainfo.sourceforge.net/fr/Support/Formats), it's said I can get language for audio tracks, but not from subtitles (MKV). Do you plan to have this info soon? Can't wait to implement it in RealAnime LE :D

Keep the good work!

SeeMoreDigital
14th October 2005, 20:55
Hi Sirber..... Is this the sort of thing you want to see: -

http://img341.imageshack.us/img341/5156/mediainfoinyamb3oj.png


Cheers

Zenitram
15th October 2005, 10:19
From this page (http://mediainfo.sourceforge.net/fr/Support/Formats), it's said I can get language for audio tracks, but not from subtitles (MKV). Do you plan to have this info soon? Can't wait to implement it in RealAnime LE :D

I can release a new beta version special for you this WE, with language subtitles if you can't wait.
But this will be a beta version ;-)
Note : maybe better to ask this with private messages? ;-)

Sirber
15th October 2005, 14:49
I can release a new beta version special for you this WE, with language subtitles if you can't wait.
But this will be a beta version ;-)
Note : maybe better to ask this with private messages? ;-)
Betas, alphas, all good to me :D

@SeeMoreDigital

Is it a square party? ;)

Sirber
16th October 2005, 22:01
@Zenitram

Is it possible for a track (video, audio, sub) in MKV (MP4) to know which track number it is in the source file?

ex:
MP4
1: general
2: general
3: video
4: audio

MKV
1: video
2: audio
3: audio
4: sub
5: sub

Could be very very usefull to get infos about a file and build a command line to extract each tracks to separate files.

Thanks!

[edit]

Also, in the doc you only show the first 2-3 params for function Parameters. Where can I have a full list?

Sirber
16th October 2005, 22:09
I cannot know which track reported by MediaInfo match which track from the MP4:
General
Complete name : Y:\Animes\...\E01.mp4
File size : 156 MiB
Format : MPEG 4
Overal BitRate : 1000 Kbps
PlayTime : 21mn 50s

Video #0
Codec : MPEG-4 Adv Simple@L5
Bit rate : 874 Kbps
Width : 512
Height : 384
Aspect ratio : 4/3
Frame rate : 29.970
Bits/(Pixel*Frame) : 0.148
PlayTime : 21mn 50s

Audio #0
Codec : MPEG-4 AAC LC
Bit rate : 120 Kbps
Sampling rate : 24 KHz
PlayTime : 21mn 50s

Zenitram
17th October 2005, 10:23
Is it possible for a track (video, audio, sub) in MKV (MP4) to know which track number it is in the source file?
This is not really possible, because libraries I use (mp4ff and matroskalib) doesn't give this kind of info.
MKV give an unique ID ("KaxTrackNumber" in the spec), you can retrieve it with "ID" parameter (but need more tests.


Could be very very usefull to get infos about a file and build a command line to extract each tracks to separate files.
You are welcome to help me programming ;-)
Now, I am very occupied with GCC under Linux compilation, add more tags support, support of new formats (last quicktime version...), debugging, and I have not the time to do this...

Also, in the doc you only show the first 2-3 params for function Parameters. Where can I have a full list?
http://mediainfo.sourceforge.net/fr/Support/SDK/More_Info#Capacities
(need to be more detaileld, but lack of time...)
What you need is MediaInfo::Option("Info_Parameters_CSV")

Note : I am late for a new version, but for subtitles in MKV 0.7.0.1 should have already implemented it ("Language" or "Language/String1" parameter)
At this time, 0.7 branch is very unstable, so I need time to stabilize this, be patient, it will be done...

ac-chan123
17th October 2005, 13:01
Can you add some feature from "ABCAVI Tag"(http://abcavi.tk/)? E.g. avi struc view, shell extention for info output on mouseover Icon, ...
There is also the biggest fourcc list i know(over 550), twocc(180) and a nice tag comparson.

Sirber
17th October 2005, 13:19
ok, thanks!

Zenitram
17th October 2005, 14:48
Can you add some feature from "ABCAVI Tag"(http://abcavi.tk/)? E.g. avi struc view, shell extention for info output on mouseover Icon, ...
There is also the biggest fourcc list i know(over 550), twocc(180) and a nice tag comparson.this is planned, but I am alone on MediaInfo, and I have a personal life which takes a lot of time too ;-)

Sirber
17th October 2005, 17:56
this is planned, but I am alone on MediaInfo, and I have a personal life which takes a lot of time too ;-)
Yeah, but sometimes it's better to be alone in a project, most of the time you will be stuck with people that doesn't do a damn thing.

Zenitram
17th October 2005, 23:59
@Sirber : DLL v0.7.0.2 is out, with more "language" support :
- "Language" for the Language in the container
- "Language/String" for a translation (in English)
- "Language/2" for ISO format (2 digits)

And for MKV (mainly, maybe others later) :
- "StreamID" for the track number of this kind
- "ID" for the track number it is in the source file
- "UniqueID" for the track Number specified as Unique Identifier of the track

To know all supported formats :
MediaInfo::Option("Info_Parameters")

Will try to correct other bugs now ;-)


History :
x #1323208 : Video Bitrate for OGM files with VBR audio was incorrect
+ Better detection and handling of DivX container
+ #1327902 : More meta data properties for RIFF files
x #1327468 : RIFF (AVI) files with not-padded (INFO) sub chunks can't be parsed
+ More "generic" tags added
x Some other minor bugs

Sirber
18th October 2005, 00:15
sweeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeet!!!!1!!1!one!!! :D

I will try tonight to play with it :D

For my soft, the only missing thing would be track number for MP4 and I'm all set :D

BTW, do you have a paypal link?

Sirber
18th October 2005, 00:26
ShowMessage(MediaInfo_Get(handle, 1, 0, 'ID', 1, 0));... gives me nothing on MKV :(
General
Complete name : Y:\Animes\E155-001.mkv
File size : 7.97 MiB
Format : Matroska
Overal BitRate : 742 Kbps
PlayTime : 1mn 30s
Date : UTC 2005-10-14 13:24:19

Video #0
Codec : V_MPEG4/ISO/AVC
Width : 640
Height : 480
Aspect ratio : 4/3

Audio #0
Codec : AAC LC

[edit]
In fact, all other new flags gives me '' :(

Zenitram
18th October 2005, 10:36
BTW, do you have a paypal link?
https://www.paypal.com/xclick/business=jerome_martinez@yahoo.com&item_name=MediaInfo
Or if you prefer to donate with SourceForge :
http://mediainfo.sourceforge.net/Help

Zenitram
18th October 2005, 13:20
In fact, all other new flags gives me '' :(Have you tested DLL v0.7.0.2 (do not work on v0.7.0.1...)? I tried with some MKV files, and it works :(

Note : for Debugging, I need the "debug" output (Debug-->Advanced mode) to have all indicators.

But, maybe the best is to use private messages for debugging...

Sirber
18th October 2005, 13:37
I got the 0.7.0.2b. I will make more tests. Do you have msn?

Sirber
22nd October 2005, 21:07
problems with "Language". In Martoska, japanese is "jpn" while MI gives me "ja". Any clue why?

Zenitram
23rd October 2005, 14:13
problems with "Language". In Martoska, japanese is "jpn" while MI gives me "ja". Any clue why?
iso639 : http://www.w3.org/WAI/ER/IG/ert/iso639.htm or http://www.loc.gov/standards/iso639-2/frenchlangn.html
In MediaInfo, I use for all containers the 2-character iso639-1 code.
If the container use the 3-character iso639-2 code (like matroska), I translate it in iso639-1 (if possible, 99.99999% of cases ;-) ).
The 2-character code of Japanese is "ja".
So, if you read a DVD or an AVI or a Matroska file, Japanese will always be "ja", not sometines "jpn" and sometimes "ja"!

Sirber
23rd October 2005, 15:28
ok, thanks! I will convert :)

Sirber
4th November 2005, 02:01
Hi

I would need a "releasable" version :D RealAnime LE alpha 3 is coming to store near you ;)

Elias
4th November 2005, 07:41
tags are a special issue in mp4 because there is an official tagging standard for mp4, but the power of itunes (which uses a private tagging way) lead to that people use only the itunestagging
and as always private stuff leads to a mess...

i would say there are two good mp4 libs available: the one from mpeg4ip and the one from gpac

mpeg4ip tags in the itunesway, gpac i think in the official mpeg way (but i have to admit i never really tested it so i dunno much about it)Is there any explanation about this on the Gpac site (I've never found anything similar on gpac.sf.net)? Any commands for MP4Box?

bond
4th November 2005, 12:40
i never really tried mp4box' meta options, you might want to talk to jeanlf about this

LAIN
7th January 2006, 02:55
Hi,

I'm a realanime dev and i'v incounter a problčme using media info dll. We extract FPS to make sure that the output will be correct.

with few files (that have a fps of 29.96999 that i'v found with matroska shell addon) when i try to find the fps with MI, it give me that :

Video #0 : DivX 5
Aspect : 704 x 528 (1.333) at %fps% fps

i'm unable to find FPS in this file

source is a MKV.

*MediaInfo version : 0.7.0.4

** when the file is extracted, we can have


Thank you

LAIN

foxyshadis
7th January 2006, 08:18
MKV isn't generally supported in mediainfo, sadly. For my own tools I parse the output of mkvverify (mkvinfo would also work, but mkvverify is very compact and gives more info).

Zenitram
7th January 2006, 11:56
I did not have time to work well on Matroska, so the support is not good at this time.
But I plan to have a better support soon (maybe next release)
Sorry for the delay.

LAIN
22nd February 2006, 01:50
Hi,

I'v recently downloaded the last version of MediaInfo 0.7.1.0 available on your web site because i have a problem knowing the fps of a file. In MkvInfo it is available but not in MI current release and dll that we use in RealAnime 4.

here is the video section of mkvinfo

| + A track
| + Track number: 1
| + Track UID: 3752893478
| + Track type: video
| + MinCache: 1
| + Timecode scale: 1.000000
| + Codec ID: V_MS/VFW/FOURCC
| + CodecPrivate, length 40 (FourCC: DX50, 0x30355844)
| + Default duration: 33.367ms (29.970 fps for a video track)
| + Default flag: 1
| + Language: jpn
| + Name: [a4e]Lost Universe - 01
| + Video track
| + Pixel width: 696
| + Pixel height: 520
| + Display width: 696
| + Display height: 520
| + Lacing flag: 0

MediaInfo video section :

Video #0
Count : 35
Count of stream of t : 1
Kind of stream : Video
StreamKindID : 0
Inform : Japanese, 1422 Kbps, 696*520 (4/3), DivX 5
ID : 1
UniqueID : 3752893478
Title : [a4e]Lost Universe - 01
Codec : DX50
Codec : DivX 5
Info : (MPEG4) DivX Networks
Url : http://www.divx.com
Bit rate : 1422220
Bit rate : 1422 Kbps
Width : 696
Height : 520
Aspect ratio : 1.338
Aspect ratio : 4/3
Resolution : 24
Language : ja
Language : Japanese


If you want more information here is the full .txt file
mkvinfo : http://www.sobanet.ca/files/mkvinfo.txt
mediainfo: http://www.sobanet.ca/files/mediainfo.txt

LAIN

Zenitram
22nd February 2006, 09:04
I'v recently downloaded the last version of MediaInfo 0.7.1.0 available on your web site because i have a problem knowing the fps of a file. In MkvInfo it is available but not in MI current release and dll that we use in RealAnime 4.
Yes, I did not have time to work on mkv, sorry.
But a v0.7.1.1 will come in few weeks, and I plan to work well on this missing fps in mkv...

Zenitram
22nd February 2006, 12:12
OK, Lain.
I succeeded to find FrameRate for all kind of video track (AVI codec, or Real, or AVC...)
I do some cleanups, and release a new version befor the end of the week.

Sirber
22nd February 2006, 13:17
Nice! :D Even RV? Sweet!! :D

foxyshadis
22nd February 2006, 21:36
Oh, zeni, one quick request, in case you have more time; can you also gather the bitrate for audio in mkv? That would be so helpful! =D Or is that still a difficult problem?

LAIN
24th February 2006, 18:56
OK, Lain.
I succeeded to find FrameRate for all kind of video track (AVI codec, or Real, or AVC...)
I do some cleanups, and release a new version befor the end of the week.

Thank you very much for the FPS :D

I'd like to post you another problem that I encounter using the version 0.7.1.1 that you'v send to sirber.

When we try to do --> MediaInfo_Open(handle, filename); <-- we have a Acces Violation in delphi... it said that it's in mediainfo.dll ... in the version 0.7.1.0 dev (5.18 mb) that we use tu try was working #1 without any error.

Thank you

LAIN

Kurtnoise
24th February 2006, 21:23
When we try to do --> MediaInfo_Open(handle, filename); <-- we have a Acces Violation in delphi... it said that it's in mediainfo.dll ...
I'm testing the last version with my Delphi tool and it works fine...pb with the Handle maybe.

Sirber
24th February 2006, 21:39
0.7.1.1 works fine in some place, but not others, using the same code. It's wierd.

LAIN
24th February 2006, 22:13
I'm testing the last version with my Delphi tool and it works fine...pb with the Handle maybe.

Ok... i'll continu to take a look and i'll ask sirber to do some test... maybe it's a p4 problem :P

Thank you

LAIN

Sirber
24th February 2006, 22:20
We'll use the 0.7.1.0-dev (pre 0.7.1.1, post 0.7.1.0) if we get no news from Zetriman.

Zenitram
25th February 2006, 11:37
Sorry, I will not have time to work on it this Week-end.
This is not normal, I have not change a lot ot things (maiunly changed of compiler : Boraland to Microsoft)
And I will need more info, let's see you on IM...

Sirber
16th March 2006, 16:54
I get a lot of Access Violation uising MediaInfo 0.7.2.0 on MKV. Contact me for more infos.

Sirber
17th March 2006, 03:00
Procedure:

1) Get reaanime 4.1.0
2) Drag the MKV I sent you
3) Start encode
4) While Analyzing, right click the file and press Info.
--> Access Violation

Kill RealAnime4.exe or else you'll be stuck in a crash loop.
Now retry with the AVI I sent you. After #4, we see the info as it should be.

Verdict: death errr MKV is borked ;)

I tryed with 0.7.1.0, same problem.

Sirber
17th March 2006, 03:04
AVI and MP4 are #1.

Sirber
29th March 2006, 02:06
http://img93.imageshack.us/img93/6566/mi1sz.png (http://imageshack.us)
using:

MediaInfo_Close(handle);
MediaInfo_Delete(handle);

Maybe the AV is on my side (the one I talked to you about eariler), since this one tells explicitly it's MediaInfo.

Sirber
29th March 2006, 02:09
Here's the screenshot of previous RA AccessViolation:
http://img93.imageshack.us/img93/5093/ra1gb.png (http://imageshack.us)
http://img93.imageshack.us/img93/7863/ra28fr.png (http://imageshack.us)

:confused:

Sirber
29th March 2006, 02:20
I get the popup (MediaInfo.dll) using the MKV I sent ya, but not my AVI test, by just asking "Info" on it.

Zenitram
29th March 2006, 08:29
I have not the time to work on MediaInfo DLL now, you will have to waite some days/weeks...

Kurtnoise
1st April 2006, 16:32
Sirber : could you put online your mkv which fails with this library ? I would like to check something. Thanks..

Sirber
1st April 2006, 16:44
At the moment mkvmerge does not support converting from VfW-mode AVC/h.264 tracks to native Matroska-mode AVC/h.264 tracks. You can, however, first import the video track into a MP4 file with e.g. 'MP4Box' (use Google). Then you can use mkvmerge and put the video into a Matroska file.

bad source, BAD!
Death to VFW!!!! :devil:

chipzoller
12th April 2006, 05:03
Thank you for a great piece of software. I use it all the time!

thuongshoo
22nd April 2006, 09:07
I used Belight to convert a wav file to aac
I uses Winamp-encoder . AVIcodec says source file has 44khz samplerate . MediaInfo always says that destination file has 22khz samplerate after I try to convert this file with many samplerate. AVIcodec and Gspot isn't also stable

Zenitram
22nd April 2006, 12:34
MediaInfo always says that destination file has 22khz samplerate after I try to convert this file with many samplerate.
I am interested in all files which have a problem with MediaInfo.
Please send me axample files with different bitrates at zen@mediaarea.net

multicone
22nd April 2006, 23:20
matroska people have added a link to Mediainfo on their download page : http://www.matroska.org/downloads/windows.html

Looks like they are happy about the great MKV support in your app, Zenitram :)

thuongshoo
23rd April 2006, 11:36
I am interested in all files which have a problem with MediaInfo.
Please send me axample files with different bitrates at zen@mediaarea.net
Thank for interesting my problem !
My wav file is made by Virtualdub . Perhaps AVIcodec only say right if file isn't AAC, MP4
You can download Belight , AVIcodec and do some transcoding .
Sometimes AVIcodec and Gspot say right but MediaInfo isn't . Media Classic Player seem to say right but I still know it actually . I will post more information at next post

Zenitram
23rd April 2006, 11:40
You can download Belight , AVIcodec and do some transcoding .
I already do a lot of transcoding, but never the one you do.
This is why I am interested in your files, to have not "common" (from my point of view) files.

Sirber
23rd April 2006, 16:07
@Zenitram

You should update first post for 0.7 :)

SeeMoreDigital
23rd April 2006, 16:22
Hi Zenitram.

As MediaInfo is now upto version 0.7.1.x..... Any chance you can can amend your thread title?


....Be seeing you!

Zenitram
23rd April 2006, 18:04
You should update first post for 0.7 :)
I plan to release a new version at the end of the month, I will update all at this moment.
This thread is very old ;-)

Sirber
23rd April 2006, 23:14
0.7 or 0.8? :)

chipzoller
29th April 2006, 04:37
Even with the new version of mediainfo I'm still finding it's having problems reading my audio files correctly (un-muxed).

For instance, using megui and nero AAC to encode audio files from AC3 I tried two different settings: 'streaming' on VBR setting LC profile, and 'normal' on VBR setting LC profile.

Mediainfo detects both as such:

Audio #0
Codec : MPEG-1 Audio layer 3
Bit rate : 128 Kbps
Bit rate mode : CBR
Channel(s) : 2 channels
Channel coupling : Joint stereo
Sampling rate : 48 KHz


I was test encoding these through the besweet option and not avisynth. I haven't ruled out the possibility a a besweet/megui error however I've noticed other people have some similar issues with mediainfo incorrectly identifying media types.

Still a very useful tool and I hope it only gets better!


EDIT: I think this is a problem with megui and besweet. I just realized both are the same filesize and mpc detects both as 128kbit also. Sorry if this is unfounded.

Zenitram
29th April 2006, 10:04
EDIT: I think this is a problem with megui and besweet. I just realized both are the same filesize and mpc detects both as 128kbit also. Sorry if this is unfounded.

The best way to be sure is to send me the suspiscious file.
I will release a new version this WE, I can do tests on your files before releasing...

multicone
1st May 2006, 15:18
I plan to release a new version at the end of the month, I will update all at this moment.
This thread is very old ;-)

Tell the matroska guys if you update, so they can update their homepage (downloads section) to the new version

chipzoller
20th May 2006, 18:18
Zenitram,

I apologize if this has been mentioned elsewhere, but I created an Xvid AVI in vdub, and recoded dvd audio using Nero aac encoder (CBR 80 kbits/sec.) then muxed both streams in yamb/mp4box. I noticed when viewing the file with media info it tells me nothing mroe than:

General #0
Complete name : C:\video.mp4
File size : 141 MiB
Format : MPEG-4 version 1


I tested this with 0.7.2.1

Zenitram
20th May 2006, 19:38
(...)I noticed when viewing the file with media info it tells me nothing mroe than: (...)
I have a lot of problems with MP4 because I use mpeg4ip library, I plan to change...
Please create a "header" of the file (Debug menu) and send it to me (zen@mediaarea.net)

SeeMoreDigital
20th May 2006, 20:34
I apologize if this has been mentioned elsewhere, but I created an Xvid AVI in vdub, and recoded dvd audio using Nero aac encoder (CBR 80 kbits/sec.) then muxed both streams in yamb/mp4box. I noticed when viewing the file with media info it tells me nothing mroe than...Hmmm...

I've generated and muxed many encodes this way and I see this: -

http://img480.imageshack.us/img480/7151/mediainfo8gs.png


Cheers

Zenitram
20th May 2006, 23:23
I've generated and muxed many encodes this way and I see this:
His files seem valid, but mpeg4ip library refuse to open them (exception thrown), and my own parser is not yet ready, so this is why only the format is detected (currently the only functional part of my own parser ;-) ).
I must change, I really have too much problems with mpeg4ip... :(

thuongshoo
8th August 2006, 17:11
HI Zenitram ! I muxed wmv into mkv by GraphEdit . MediaInfo dont' say anything except filesize . MediaInfo or MatroskaMuxer ?
Thanks your program !

Zenitram
10th August 2006, 00:43
HI Zenitram ! I muxed wmv into mkv by GraphEdit .
Could you send me a private message to send me a part of the file?
I will analyze it soon.
Thanks.

thuongshoo
10th August 2006, 06:11
oh ! all wmvs which I muxed have the same bug . You can also mux a wmv file and test
Thanks !

Zenitram
10th August 2006, 11:57
I can't create all types of files, so if you want that I detect well your files, you need to send me firsts bytes of a file from each format (in MediaInfo, menu Debug, "create a header file") to zen@mediaarea.net

MacAddict
12th August 2006, 16:39
Great little program here! Any chance of video and audio bitrates being reported in a future version? Sorry if I missed it somewhere.

Zenitram
13th August 2006, 10:23
Great little program here! Any chance of video and audio bitrates being reported in a future version? Sorry if I missed it somewhere.
Overal, Video and audio bitrates are already shown when I succeed to detect them. (ie: AVI, MPEG, WMV).
I am working to find them for other formats.

Sirber
21st August 2006, 13:42
Where can I get "Info_Parameters() full list"? Dos say "See Info_Parameters() to have the full list" but nothing in the doc.

Zenitram
21st August 2006, 14:08
in C : MediaInfo_Option(NULL, "Info_Parameters", "");
Take a look here:
http://mediainfo.sourceforge.net/fr/Support/SDK/Quick_Start
(but work in progress)

Or look on examples given in the archive, all important procedure have an example.

Sirber
21st August 2006, 15:02
I need to know the codec name and codec bitrate mode. What are those flags? Thanks!

"Codec" returns a number (like 55 for MP3).

spamalam
21st August 2006, 23:38
I need to know the codec name and codec bitrate mode. What are those flags? Thanks!

"Codec" returns a number (like 55 for MP3).

"Codec/String" -> Codec name
"BitRate" -> Bitrate without kb
"BitRate/String" -> Bitrate with kb.

Full list is hidden away in the cvs:
http://mediainfo.cvs.sourceforge.net/mediainfo/MediaInfoLib/Source/Ressource/Text/Stream/

Sirber
21st August 2006, 23:51
thanks! :D

Codec/String
BitRate_Mode

spamalam
22nd August 2006, 00:11
I can't seem to find a value for preload / interleave (ms) though? Is there a way of getting this with mediainfo?

edit: hmm, can interleave be calculated or is it something that's stored in the header of the container?

Doom9
27th August 2006, 21:26
We seem to have run into an issue in megui.. when instantiating MediaInfoLib from C# using an mp3 file as parameter, a win32 error is thrown that brings down MeGUI.

Zenitram
28th August 2006, 12:35
I can't seem to find a value for preload / interleave (ms) though? Is there a way of getting this with mediainfo?
If I understand well, Interleave is in "Delay/Video0" tag. this tag is the delay between the first Audio chunk and the Video.
edit: hmm, can interleave be calculated or is it something that's stored in the header of the container?
It is calculated in AVI (null bytes before the first chunk of AC3 for example)
It is from the header for MPEG-1/2 PS/TS (Presentation TimeStamp)

Zenitram
28th August 2006, 12:37
We seem to have run into an issue in megui.. when instantiating MediaInfoLib from C# using an mp3 file as parameter, a win32 error is thrown that brings down MeGUI.
I will test it in C#, but I didn't have bug report of this kind before :(
All mp3 files? only mp3 files?

PS: Doom9, you criticized before the lack of MPEG Transport Stream support, the next version will have a very good support of it ;-)

Doom9
28th August 2006, 13:38
I'm afraid I only have one stream to test here.. I created it because a user reported he couldn't mux a pre-existing mp3 file. I'll try to cut you a sample tonight (assuming it still crashes with the smaller file).

SeeMoreDigital
3rd September 2006, 20:23
Hi Zenitram,

When feeding MediaInfo with elementary MPEG-4 Part 2 streams it would seem it's able to identify information such as: -

Aspect Ratio,
TV Standard,
Chroma,
Interlacement
Writing Library
http://img338.imageshack.us/img338/6889/mediainfowithcmpce3.png


But once the same elementary stream is muxed into the MP4 container (with MP4Box), much of the above mentioned information is lost and the "Aspect Ratio" information is incorrect: -

http://img338.imageshack.us/img338/4639/mediainfowithmp4gd3.png


When accessing MP4 files is there any way of providing the same kind of data as the elementary streams?


Cheers

Zenitram
4th September 2006, 12:58
When feeding MediaInfo with elementary MPEG-4 Part 2 streams it would seem it's able to identify information such as:
Currently I can read this kind of information in :
- Raw MPEG-4 Video stream
- MPEG-4 Video stream in AVI container.

Why? because this kind of info is only available when decoding the first frame of the stream, not in the container. I already connected the MPEG-4 Video parser with AVI parser, not others.

I found how to do for OGG, MKV an MP4 containers, I will integrate as soon as I have time to do it ;-).
For MP4 container, it is not so easy to integrate, but I think the next version will support it. But I need to finnish to write my own parser before (I used mpeg4ip library, but it does not like malformed .mp4 files...)

JoeBG
4th September 2006, 13:08
Hi,

I have a feature request:

Would it be possible to show the embedded Cover in the mp4-Kontainer? In the moment it´s realised that there is a cover - but not shown. :)

Zenitram
4th September 2006, 15:36
Would it be possible to show the embedded Cover in the mp4-Kontainer?
This is planned.
But not soon.
Why?
- The next version will have a lot better parser, I will be able to read 3 different means for tags (currently : I read only 1).
- I will be able to encode the Cover in the MediaInfo library easily.
- But the GUI is text-based only. I must adapt the GUI, whish is more complex.

So the cover will be availble for th library soon, but you must wait a moment for the cover in the GUI, sorry but I have not enough time to implement all in the next release. time, time...

SeeMoreDigital
4th September 2006, 15:51
Thanks for the confirmation ;)

Zenitram
4th September 2006, 21:21
When accessing MP4 files is there any way of providing the same kind of data as the elementary streams
Small gift for your interest in MediaInfo ;-)
http://sourceforge.net/project/showfiles.php?group_id=86862&package_id=197932
The version of today is a proof of concept for MP4 parser, do not spread it, please.
All MPEG-4 Video attributes should be available for a MP4 file.

SeeMoreDigital
4th September 2006, 21:57
Hey thanks mate...

I've just downloaded it... I'll give it a try and report back ;)

SeeMoreDigital
5th September 2006, 12:28
Do you want me to post my observations about 0.7.4.0 BETA within this thread?

Zenitram
5th September 2006, 13:00
Do you want me to post my observations about 0.7.4.0 BETA within this thread?
This is a beta version, I would prefer you write to me directly (zen@mediaarea.net), this will give me more trace in my mailbox too.
But there is no problem if you prefer to reply here.

bond
10th December 2006, 20:16
Zenitram, we are having problems with mediainfo in megui, as it crashes when using the avisynthscript creator (which uses mediainfo) and when using mp4menugui

read more here:
http://forum.doom9.org/showthread.php?t=117574

it seems to have happened for me and Hyper Shinchan

i am using a pentium3 866mhz processor and windows 2000

any idea what could be wrong? (corrupted memory error?)

Zenitram
11th December 2006, 14:11
Which version do you use?
a "first" version of v0.7.4.2 (yesterday) was corrupted, I reuploaded it.
If you downloaded yesterday, this may be the problem.
You can contact me at zen@mediaarea.net to discuss about this problem.

MatMaul
11th December 2006, 16:53
I have just download the last version (0.7.4.2) and I have a big problem : I obtain this message when I want to analyse any mkv : "Division by zero"

EDIT : no problem with the version 0.7.4.1

mahsah
11th December 2006, 22:01
What about *caugh* NUT?

Zenitram
11th December 2006, 22:44
I obtain this message when I want to analyse any mkv : "Division by zero"
Arghhh...
Please download last beta, I think I corrected it, I found on suspicious line, but I have not crashing file.
http://sourceforge.net/project/showfiles.php?group_id=86862&package_id=197932&release_id=470511

I am interested to have the first 256K of one file from you (in GUI, menu debug, "create header file)

What about *caugh* NUT?
This is planned, but not a priority (NUT files are 0.0001% of mulltimedia files...)

MatMaul
11th December 2006, 23:25
ok no problem now, but I can't do an header with this file : the created file is a 0 octet file.

Zenitram
11th December 2006, 23:28
ok no problem now, but I can't do an header with this file : the created file is a 0 octet file.
Suprising... You are the second person to say me this, but it works at home... :(
I will see what I can do to have a better handling of header creation...

spamalam
31st December 2006, 03:51
I'm trying to get the frame type (pal/NTSC) but i can't seem to get it to work. I'm using the value in the cvs files stored on your cvs space, is this still valid?

MediaInfo.Stream_Video, 0, "Standard"

Thanks

Zenitram
1st January 2007, 18:49
Yes, always Valid.
Which kind of file (mp4, AVI?)
Is other stuff right? (output of MediaInfo GUI)
Could you say me what are output for Width/Height/AspectRatio/FrameRate?

vlada
1st January 2007, 22:29
I have one very simple question: I'm writing an application which uses MediaInfo to read information about video files. I'd like to know if it is guaranteed, that container will be on line 2 in the output and video #0 will on line 10? Or do I have to scan the output for the right lines?

Of course more information depend on number of video/audio streams so I have to scan for them.

Kurtnoise
2nd January 2007, 21:08
Depends on the container himself I'd say...For mp4 & mkv files, we can have metadata and/or tags first, if you're refering at the General Information pattern.

spamalam
6th January 2007, 00:54
Yes, always Valid.
Which kind of file (mp4, AVI?)
Is other stuff right? (output of MediaInfo GUI)
Could you say me what are output for Width/Height/AspectRatio/FrameRate?

bog standard avi file (xvid encode), but its the same with everything i pass to it as far as i can see. Width, Height, AR, Framerate all match what gspot tells me. Anyway:

XviD
Standard:
Width: 480
Height: 352
FrameRate: 25.0

Standard:
Width: 544
Height: 400
FrameRate: 25.0

XviD
Standard:
Width: 720
Height: 400
FrameRate: 25.0

etc. (these are just the avis i have at hand, all were PAL).

Is what i'm getting from the dll. I don't have the GUI.
Just doesn't detect if its PAL or NTSC.

SeeMoreDigital
6th January 2007, 13:27
Is what i'm getting from the dll. I don't have the GUI.
Just doesn't detect if its PAL or NTSC.The GUI version does not offer "colour system" information either: -

Video #0
Codec : XviD
Codec/Family : MPEG-4
Codec/Info : XviD project
Codec settings/BVOP : Yes
Codec settings/QPel : No
Codec settings/GMC : 0
Codec settings/Matri : Default
PlayTime : 10s
Bit rate : 319 Kbps
Width : 720 pixels
Height : 432 pixels
Aspect ratio : 2.35
Frame rate : 25.000 fps
Resolution : 8 bits
Chroma : 4:2:0
Interlacement : Progressive
Bits/(Pixel*Frame) : 0.041
StreamSize : 390 KiB
Writing library : XviD0046Is such information all that important anyway?

By-the-way... Would it be possible to add the "video frame total" count?


Cheers

spamalam
6th January 2007, 15:15
Is such information all that important anyway?
yes, when versioning it not only helps tracks the source, very often the PAL sources look for more vibrant than the NTSC by and large in this case.

MediaInfo used to offer standard calls, but they don't seem to work since several revisions back and Standard no longer returns everything.

I mean i can just use fps as an indicator to get the same information, just that bit neater if I can have mediainfo can do that instead of using some finickerty system :)

vlada
6th January 2007, 16:43
spamalam
If you're talking about digital video, PAL and NTSC don't exist anymore. Those were norms for analogue broadcasting. The only place where PAL and NTSC remain in digital world are DV and DVD-Video formats. Here you have video files, which are better optimized for PAL or NTSC (resolution and framerate).

Where do you think MediaInfo could get an information, what was the source of an AVI file?

spamalam
7th January 2007, 02:23
spamalam
Where do you think MediaInfo could get an information, what was the source of an AVI file?

Framerate, its not just resolution that defines the TV standard afaik (right?)

so 25fps, cropped video isn't pal anymore? Damn. I know pal in 1967 meant something different to what it is now (strict colour code, etc.), so dvd pal isn't pal either. I've always said PAL/compatible is 25fps, ntsc is 23fps/29fps, its been the simplest most descriptive usage. Obviously res defined the hz of a tv too.

I guess i was assuming it meant what standard the video was, not whether it was fully standard compliant. I'll just use framerate to determine standard rather than calling standard in that case :)

The reasoning is pretty simple. Consider a standalone divx/xvid player hooked up to an pal tv. People get problems with their tv, ntsc rips (fps) often don't play on pal tvs and pal rips (fps) often don't play on ntsc tvs, as well as the preference of people watching and the effect of the framerate if the person is perdantic. I wanted to define whether it was pal sourced or ntsc sourced.

vlada
7th January 2007, 11:54
spamalam
Usually original movie sources are saved on film cells (no resolution) and with 24fps. They are not PAL neither NTSC compliant. If studios create PAL DVDs, they speed up the movie to 25fps, scan the cells and resize picture to 720x576 (original PAL standard says 625 lines, but only 575 of them are visible, this is where 576 comes from). 720 is just because somebody thought it was a good idea (I don't think so).

NTSC DVDs are created with a technique called 3:2 pulldown, which splits frames into fields and then duplicates some of them. The resulting framerate must be 29.97 (30*1000/1001 exactly). It creates nasty interlacing artifacts when watched on a PC, so you'd better convert it back to 24*1000/1001 ~ 23.976fps.

So if you run into 23.976 fps movie, you have both possibilities - speed up to PAL or 3:2 pulldown to NTSC. NTSC DVD resolution is 720x480. It comes from the analogue norm again.

Also according to my knowledge, there are usually no problems with NTSC DVDs on PAL players, but there will be problems with PAL DVDs on NTSC players - Japan an USA usually don't care to much about the rest of the world.

chipzoller
7th January 2007, 16:35
Zenitram, I can't remember if you've answered this before, but I was just curious why mediainfo reports a good amount of info. on single streams in .mp4 container, but when both are muxed into .mkv then opened each stream reported by mediainfo contains significantly less info.?

winnydows
11th January 2007, 23:02
Hello Zenitram.
I use your MediaInfo.dll in my XviD4PSP (http://www.winnydows.com/xvid4psp.html). And want ask - when your dll will pharse AVS ?

crypto
17th January 2007, 07:56
Hi zenitram,

I use your MediaInfo.dll in wmvmuxer. Is there any chance to get MediaInfoLIb recognize VC-1 elementary streams? I can give you details about parsing the sequence header, if needed.

Zenitram
17th January 2007, 10:44
Sorry fore the delay in responding, I just received the reply notification :(

I have one very simple question: I'm writing an application which uses MediaInfo to read information about video files. I'd like to know if it is guaranteed, that container will be on line 2 in the output and video #0 will on line 10? Or do I have to scan the output for the right lines?

Of course more information depend on number of video/audio streams so I have to scan for them.

No, text output is only informative, you can have tags/other info depends on the video file.
If you want exactly a piece of information, you can use the DLL API, or the "custom output" (in beta version in lastest releases) :
MediaInfo --Inform=Video;%Width% video.avi
to have video width on the 1st line for example.
MediaInfo --Help-Inform for more info, you can use file templates if needed, and I will continue to improve this feature.

Just doesn't detect if its PAL or NTSC.
I will work on it again, I may miss something in latest releases.

Where do you think MediaInfo could get an information, what was the source of an AVI file?
There is a flag in MPEG-1/2 Video stream for PAL or NTSC format.

Zenitram, I can't remember if you've answered this before, but I was just curious why mediainfo reports a good amount of info. on single streams in .mp4 container, but when both are muxed into .mkv then opened each stream reported by mediainfo contains significantly less info.?

Because I didn't have the time to connect parsers together (between the container parser and the video parser), this is planned.

when your dll will pharse AVS ?

This is planned, but I need more example of AVS files, could you send me some example you would like I support?

Is there any chance to get MediaInfoLIb recognize VC-1 elementary streams? I can give you details about parsing the sequence header, if needed.

I need :
- example files
- some specifications about the sequence header
And I will support it.

Please contact me directly at zen@mediaarea.net

I have a lot of bug reports to resolve before adding new features, but all you say is not lost.

winnydows
17th January 2007, 18:23
@Zenitram
Use my program for create AVS files:

XviD4PSP 4.049 final (http://winnydows.com/download/xvid4psp/XviD4PSP_4049.exe)

Also one bug in MediaInfoDLL found:
In last version missed delay info in some AVI files.

In this file:
http://www.megaupload.com/?d=5K3Y7ZQD

In version 0.7.3.1 delay info worked correct.

Added
Also last new version (0.7.4.3) complete wrong show delay info for all files (20 min Delay for DVD !!!???).

moadib2k
3rd February 2007, 18:06
While trying to get megui running under vista x64 I found that the problem with megui under vista x64 is mediainfo. It is throwning an access violation exception when the method mediainfo_get is called. I am using 0.7.4.3

Any plans to get it running under a 64 bit platform? We don't need 64 bit, we actually have to have 32 bit to work with AviSynth.

I have been working on getting mediainfo to compile (under xp 32 for now) with no success. I have the lib compiling but the dll cannot find mpeg4ip.lib. I am using all the lib's you included in the zip file but that one is not there.

Any chance you have all the external libs in a vs2005 project somewhere? I have not compiled all the external libs, trying to follow your compiling instructions on sourceforge does not work.

Kurtnoise
3rd February 2007, 20:59
1/ mpeg4ip libs are not used anymore.
2/ Static libs for MSVC are available on SF.

moadib2k
4th February 2007, 20:43
1/ mpeg4ip libs are not used anymore.
2/ Static libs for MSVC are available on SF.

1. It was still in the project from the distribution, I removed it and got past that issue
2. Found those, thanks

Still cant compile though:

I had to add libcmt.lib to the ignore libraries to resolve a conflict with libcmtd.lib.

Now I Have these errors.


Error 1 error LNK2001: unresolved external symbol "protected: virtual void __thiscall MediaInfoLib::File_MpegPs::Read_Buffer_Init(void)" (?Read_Buffer_Init@File_MpegPs@MediaInfoLib@@MAEXXZ) MediaInfo.lib
Error 2 error LNK2001: unresolved external symbol "protected: virtual void __thiscall MediaInfoLib::File_MpegPs::Read_Buffer_Unsynched(void)" (?Read_Buffer_Unsynched@File_MpegPs@MediaInfoLib@@MAEXXZ) MediaInfo.lib
Error 3 error LNK2001: unresolved external symbol "protected: virtual void __thiscall MediaInfoLib::File_MpegPs::Read_Buffer_Continue(void)" (?Read_Buffer_Continue@File_MpegPs@MediaInfoLib@@MAEXXZ) MediaInfo.lib
Error 4 error LNK2001: unresolved external symbol "protected: virtual void __thiscall MediaInfoLib::File_MpegPs::Read_Buffer_Finalize(void)" (?Read_Buffer_Finalize@File_MpegPs@MediaInfoLib@@MAEXXZ) MediaInfo.lib
Error 5 error LNK2001: unresolved external symbol "protected: virtual void __thiscall MediaInfoLib::File_MpegPs::HowTo(enum MediaInfoLib::stream_t)" (?HowTo@File_MpegPs@MediaInfoLib@@MAEXW4stream_t@2@@Z) MediaInfo.lib
Error 6 error LNK2019: unresolved external symbol __invalid_parameter_noinfo referenced in function "public: class std::_String_const_iterator<wchar_t,struct std::char_traits<wchar_t>,class std::allocator<wchar_t> > & __thiscall std::_String_const_iterator<wchar_t,struct std::char_traits<wchar_t>,class std::allocator<wchar_t> >::operator+=(int)" (??Y?$_String_const_iterator@_WU?$char_traits@_W@std@@V?$allocator@_W@2@@std@@QAEAAV01@H@Z) ZenLib.lib
Error 7 error LNK2001: unresolved external symbol __invalid_parameter_noinfo ZenLib.lib
Error 8 error LNK2001: unresolved external symbol __invalid_parameter_noinfo ZenLib.lib


Would appreciate any help, thanks

Zenitram
5th February 2007, 10:20
Any plans to get it running under a 64 bit platform?
I never tried to compile x64 version.
I heard than somebody compiled successfully on a x64 linux, so it should not be too difficult to have a stable x64 Windows version.
But : I will need some people to test x64 beta releases. please contact me at zen@mediaarea.net for being a beta-tester!

Now I Have these errors.
Theses errors are curious, File_MpegPs.cpp is not in your project, I don't know why...
I will release a new release soon, with source code, I hope it will be fixed.

moadib2k
5th February 2007, 17:20
I can help test an x64 version. I am running vista ultimate x64 w 4 gigs ram and an e6600 on my test box. It has vs2005 installed c# and c++ and 64 bit compiler.

There are two things that are needed here, a 32 bit version that will run under vista x64 and a 64 bit version. Apps like MeGui are 32 bit so they cannot load a 64 bit dll.

MeGui needs AVISynth which is 32 bit. There is a 64 bit version but until all the necessary filters are ported to 64 bit MeGui cannot run the 64bit version of AVISynth. Practically speaking I am not sure this will happen for a long time.

So the real priority (for MeGui) is getting the 32bit version of MediaInfo running on a 64 bit windows box. Personally, I would also like the 64 bit version of MediaInfo for some other programs.

I was trying to get a good compile so I could debug it and see where its failing at but compiling has been quite a bear. My c++ skills are very very rusty.

moadib2k
5th February 2007, 17:28
Theses errors are curious, File_MpegPs.cpp is not in your project, I don't know why...
I will release a new release soon, with source code, I hope it will be fixed.

Thanks for this, I figured that part out, the define MEDIAINFO_MPEGPS_YES was not in the preprocessor definitions. After adding that definition, those errors went away. Do you see any others missing off the top of your head?


MEDIAINFO_MULTI_NO
MEDIAINFO_VIDEO_NO
MEDIAINFO_AUDIO_NO
MEDIAINFO_IMAGE_NO
MEDIAINFO_TEXT_NO
MEDIAINFO_COMPRESSOR_NO
MEDIAINFO_RIFF_YES
MEDIAINFO_MPEGTS_YES
MEDIAINFO_MPEG_YES
MEDIAINFO_MPEGV_YES
MEDIAINFO_AC3_YES
MEDIAINFO_DTS_YES
MEDIAINFO_MPEGA_YES
MEDIAINFO_MPEG4_YES
MEDIAINFO_MPEGPS_YES


Now I am down to these errors in zenlib:


Error 1 error LNK2019: unresolved external symbol __invalid_parameter_noinfo referenced in function "public: class std::_String_const_iterator<wchar_t,struct std::char_traits<wchar_t>,class std::allocator<wchar_t> > & __thiscall std::_String_const_iterator<wchar_t,struct std::char_traits<wchar_t>,class std::allocator<wchar_t> >::operator+=(int)" (??Y?$_String_const_iterator@_WU?$char_traits@_W@std@@V?$allocator@_W@2@@std@@QAEAAV01@H@Z) ZenLib.lib
Error 2 error LNK2001: unresolved external symbol __invalid_parameter_noinfo ZenLib.lib
Error 3 error LNK2001: unresolved external symbol __invalid_parameter_noinfo ZenLib.lib

Zenitram
5th February 2007, 17:36
I have just released a new version (0.7.4.4).
There is the source code, even for MSVC2005 (in Project/MSVC directory).
This is the one I use for the release, so it should work!

Please contact me at zen@mediaarea.net for 64-bit testing, we don't need to flood this forum ;-)

winnydows
5th February 2007, 23:35
@Zenitram
Mega thanks for delay fix.

moadib2k
6th February 2007, 21:02
While trying to get megui running under vista x64 I found that the problem with megui under vista x64 is mediainfo. It is throwning an access violation exception when the method mediainfo_get is called. I am using 0.7.4.3


Well it turns out the problem was not in mediainfo. The problem was in the wrapper that MeGui uses to connect to mediainfo. I have fixed the wrapper and hope to get it to the MeGui team soon.

I have talked with Zenitram about AVS parsing. There are a couple of problems with AVS files.


The file is just text, it would have to be rendered to pull any info out
MediaInfo is cross platform AVS is a VFW renderer
Rendering the stream to get information would break the current methodology used to get video info within MediaInfo
There are so many plugins etc... that it would be practicably infeasible to figure out all the options
figuring out the underlying streams would not be helpful as so much can change by the time they are rendered.


What is needed is some form of avisynth probe to get media information from the avisynth file. I don't think this should go into the MediaInfo dll since it wont be cross platform.

vlada
6th February 2007, 23:18
moadib2k
AviSynth can output some informations like framerate or resolution to a text file. What more information do you need?

moadib2k
7th February 2007, 15:37
moadib2k
AviSynth can output some informations like framerate or resolution to a text file. What more information do you need?

I am assuming we are talking about outside of MediaInfo here. I need the basic information, codec, frame rate, resolution, aspect ratio, audio channels etc... I am looking at some code that is inside of MeGui to see if I can get it that way.

Kurtnoise
7th February 2007, 19:01
I need the basic information, codec, frame rate, resolution, aspect ratio, audio channels etc...
MediaInfo is able to give you all of this...:)

Zenitram
7th February 2007, 19:04
MediaInfo is able to give you all of this...:)
Not from .avs files: As he said, this would be too complex to support all plugins which modify theses parameters.

HeadBangeR77
7th February 2007, 19:38
AR is all wrong with the new media info:
Now I always get 16/9 for my 1:2.35 resized encodes.

Apart from the above everything works like charm - thank you. :)

Zenitram
7th February 2007, 20:11
AR is all wrong with the new media info:
Now I always get 16/9 for my 1:2.35 resized encodes.

Apart from the above everything works like charm - thank you. :)

Please contact me at zen@mediaarea.net and write me which container and codec are used.

HeadBangeR77
7th February 2007, 20:21
Please contact me at zen@mediaarea.net and write me which container and codec are used.
Happens with XviD 1.1.2, Koepi's build (that's what I've checked till now), no matter the resolution (688x288, 720x304, 1024x432). With the previous version I used to get an approximation (1:2.35), now 16/9 all the time.

Conatiners: AVI Open DML 2.0 (VduB 1.7.0, VDubMod, AVI-Mux).
Now, wait a sec, happens with Matroska as well (MKV Toolnix 2.0.0, patch from the 1st of Feb.)! If I revert to the previous version, it lists 1:2.35.

cheers,
HDBR77

SeeMoreDigital
7th February 2007, 20:58
Indeed....

I've just tried it myself and something does seem to have changed.

Here are some MPEG-4 samples (http://82.10.220.174/Uploaded_Files/Doom9_Forum_files/Xvid_2B-VOP_Container_Tests.7z) for you.

They all have a resolution of 720x576 pixels with 64:45 aspect ratio signalling. Effectively giving them a playback aspect ratio of 2.37:1...


Cheers

Zenitram
7th February 2007, 23:26
With the previous version I used to get an approximation (1:2.35), now 16/9 all the time.
I did a stupid writing error in the AspectRatio string algorithm :
"if (AspectRatio >1.70 AspectRatio F1<2.85) AspectRatio_String=_T("16/9");"
(yes, stupid... 2.85 instead of 1.85)
For all codecs and containers, because it is in the core.
You can see the exact value with Menu Debug --> Advanced mode (in Tree or Text view)

So the exact value is always right, but not the string shown (I changed it because it was not enough precise) used in classic views.
Will be OK in next version 0.7.4.5 or next development snapshot.
2.35 will be shown if DAR is between 2.30 and 2.40, I hope this is not a too big aproximation.
Don't hesitate to write me more bugs!

PS : please use the tracker of sourceforge for bugs
http://sourceforge.net/tracker/?group_id=86862&atid=581181
this is easier for me to track the bugs instead of all forums! ;-)

PPS : thanks SeeMoreDigital for examples!

HeadBangeR77
7th February 2007, 23:36
I did a stupid writing error in the AspectRatio string algorithm :
"if (AspectRatio >1.70 AspectRatio F1<2.85) AspectRatio_String=_T("16/9");"
(yes, stupid... 2.85 instead of 1.85)
For all codecs and containers, because it is in the core.
Typos happen. ;)

You can see the exact value with Menu Debug --> Advanced mode (in Tree or Text view)
Thanks for pointing to that; yes, everything seems correct here:


000020AF scalability: 0 (0)
--> Codec: MPEG-4V
--> Codec: MPEG-4V
--> Width: 720
--> Height: 304
--> AspectRatio: 2.368
--> Resolution: 8
--> Chroma: 4:2:0
--> Interlacement: PPF
--> Codec_Settings: BVOP
--> Codec_Settings/BVOP: Yes
--> Codec_Settings/GMC: 0
--> Codec_Settings: QPel
--> Codec_Settings/QPel: Yes
--> Codec_Settings: Custom Matrix
--> Codec_Settings/Matrix: Custom
(...)



Don't hesitate to write me more bugs!

PS : please use the tracker of sourceforge for bugs
http://sourceforge.net/tracker/?group_id=86862&atid=581181
this is easier for me to track the bugs instead of all forums! ...
Will remember next time - thanks for your quick reaction. :)

vlada
19th May 2007, 05:55
Zenitram
I just discovered the new function in MediaInfo, the --Inform parameter. It is exactly what I need for my application. But the parameters are split into different groups (General, Video, Audio etc.) I would need a mixture of these parametrs, how can I do it? Or do I have to run MediaInfo 3-times to get all the parameters?

And by the way there is a small bug in the examples for this function (--Help-Inform). It displays the CL as MediaInfo.exe -Inform=..., bu the correct should be MediaInfo.exe --Inform=... It took me some time before I found out why it isn't working.

Kurtnoise
19th May 2007, 07:52
Use :
StreamKind 0 for General stuff
StreamKind 1 for Video streams
StreamKind 2 for Audio streams
StreamKind 3 for Subtitles streams
StreamKind 4 for Chapters streams
StreamKind 5 for Images streams

Zenitram
19th May 2007, 20:44
Zenitram
I just discovered the new function in MediaInfo, the --Inform parameter. It is exactly what I need for my application. But the parameters are split into different groups (General, Video, Audio etc.) I would need a mixture of these parametrs, how can I do it? Or do I have to run MediaInfo 3-times to get all the parameters?
Directly from the Command line, you currently can have only one group. I am thinking about how to implement multiple groups.
But you can give to MediaInfo a file directly (I forgot to put it in the help), example :
MediaInfo --Inform=file://Example.csv "TEST.EVO"
General : D:\Programmation\MediaInfo\Release\MSVC\CLI\TEST.EVO
Format : MPEG-2PS
Length : 179 MiB for 4mn 49s 472ms

Video #0 : VC-1
Aspect : 1920 x 1080 (1.778)

Audio #0 : AC3+
Infos : , 48 KHz

Text #0 : RLE

Text #1 : RLE

Text #2 : RLE

Take a look in the /plugins/custom directory for examples (how to create Example.csv)

And by the way there is a small bug in the examples for this function (--Help-Inform). It displays the CL as MediaInfo.exe -Inform=..., bu the correct should be MediaInfo.exe --Inform=... It took me some time before I found out why it isn't working.
Oups. Corrected in the CVS, will be OK for the next release.

Note : Kurtnoise, your given values are for the programming interface only, from the command line "names" are used.

JoeBG
15th June 2007, 13:08
Hi,

I want to use the commandline tool to get variables for the stream length or the aspect ratio but I always fail.

For example: I have a AC3 stream and I want to have the lenght of it. Can someone give me a working commandline - many thanks. :)

Zenitram
15th June 2007, 14:24
Hi,

I want to use the commandline tool to get variables for the stream length or the aspect ratio but I always fail.

For example: I have a AC3 stream and I want to have the lenght of it. Can someone give me a working commandline - many thanks. :)
For AC3 :
Command : MediaInfo --Inform=General;%PlayTime% FileName.ac3
Command : MediaInfo --Inform=Audio;%PlayTime% FileName.avi
Result : 1256960 (in milliseconds)
Command : MediaInfo --Inform=Audio;%PlayTime/String% FileName.avi
Result : 20mn 56s

Note : during the verification of the command, I noticed that lenght in the audio part (MediaInfo --Inform=Audio;%PlayTime%) for an AC3 file is lacking. I will correct this.

For AspectRatio :
Command : MediaInfo.exe --Inform=Video;%AspectRatio% FileName.avi
Result : 1.777
Command : MediaInfo.exe --Inform=Video;%AspectRatio/String% FileName.avi
Result : 16/9

Command : MediaInfo --Info-Parameters
Result : list the available parameters (between %)

JoeBG
16th June 2007, 10:17
First of all thanks for your help. :thanks:

Here the results from my test.

I used the following commandline:
mediainfo --Inform=Video;%AspectRatio% C:\files\****\Daten\VTS_01_1.VOB

The result is the same as if I would have used
mediainfo --Inform C:\files\****\Daten\VTS_01_1.VOB

=> mediainfo.exe shows all informations and ignores *Video;%AspectRatio%*

I do have the same result with AC3 streams. mediainfo.exe shows always all informations and not the selected ones. :confused:

Maybe I´m doing it wrong, but I used exactly your commandlines :)

Herewith (http://joeb.movie2digital.com/mediainfo.7z) my versions of mediainfo.exe and mediainfo.dll

foxyshadis
16th June 2007, 11:17
You do have to use the command-line version; the command-line commands don't work with the GUI. (They have the same name, which makes it unnecessarily confusing. I always rename mine mediainfo-cli.exe. Even nicer would be if the GUI recognized cli commands and emulated it, removing the need for two executables...)

JoeBG
16th June 2007, 11:31
You do have to use the command-line version; the command-line commands don't work with the GUI. (They have the same name, which makes it unnecessarily confusing. I always rename mine mediainfo-cli.exe. Even nicer would be if the GUI recognized cli commands and emulated it, removing the need for two executables...)

I do use the commandline version :)

foxyshadis
16th June 2007, 11:56
Weird then, because the commands work on any files I can find. (With the exception of the error Zenitram already found.)

Zenitram
16th June 2007, 12:06
=> mediainfo.exe shows all informations and ignores *Video;%AspectRatio%*

Maybe I´m doing it wrong, but I used exactly your commandlines :)
I tested *your* version of MediaInfo on my files, and it works :)
Maybe a problem with your OS, your localization, I don't know.
I don't know what to do more
I propose you contact me at zen@mediaarea.net for giving me an access to your computer, and I will do more tests.

Weird then, because the commands work on any files I can find. (With the exception of the error Zenitram already found.)
Yes, weird... Sometimes, I hate programming :)

You do have to use the command-line version; the command-line commands don't work with the GUI. (They have the same name, which makes it unnecessarily confusing. I always rename mine mediainfo-cli.exe. Even nicer would be if the GUI recognized cli commands and emulated it, removing the need for two executables...)
I already tested to have different names, GUI users want a short name rather than mediainfo-gui, CLI users too, so impossible to have all people happy :) (and you are the first user I know who use both! :) )
But yes, the GUI version will parse CLI options in the future.
(but I didn't plan my software would become so used and this is my first program, I must work a lot to have a all people happy, with a good programming, and whith the time I have...)

JoeBG
16th June 2007, 17:44
I tested *your* version of MediaInfo on my files, and it works :)
Maybe a problem with your OS, your localization, I don't know.


I used a bat-file in my tests. When I type everything in my cmd-box without using a batchfile everything works for me too. Very strange everything :(

My plan is to use the variable %PlayTime% for further actions in DOS. But I think I cannot use it as %PlayTime% for further calculations isn´t it?

mihakase
9th October 2007, 09:52
The current syntax to get particular parameters using Inform is a little odd in Linux. Bash interprets the semicolon as the end of a command/line and tries to execute whatever comes after it.

Workaround is currently:
MediaInfo --Inform=xxx\;%param% file.ext

Zenitram
9th October 2007, 10:21
The current syntax to get particular parameters using Inform is a little odd in Linux. Bash interprets the semicolon as the end of a command/line and tries to execute whatever comes after it.

Workaround is currently:
MediaInfo --Inform=xxx\;%param% file.ext

the ";" is useful because I use internaly CSV format (semi-colomn, as in Europe...).
I don't plan to change this soon.
You can use a file too:
MediaInfo --Inform=file://SpecFile file.ext
And SpecFile contains "xxx;%param%"

If I add an option for accepting commas too, will it be better?

mihakase
9th October 2007, 10:33
Commas would be nice. I personally don't mind the semicolon but I figured the behaviour was worth noting anyway.

On a side note, I'm looking through mediainfo lib's source; trying to figure out how it gets an FLV's dimensions since I kind of need to implement that in php. It would probably help if I were a bit more competent though... no go as of yet. :)

Zenitram
9th October 2007, 12:18
On a side note, I'm looking through mediainfo lib's source; trying to figure out how it gets an FLV's dimensions since I kind of need to implement that in php. It would probably help if I were a bit more competent though... no go as of yet. :)
In PHP, it will be diffucult to call MediaInfo library (written in C/C++), why don't you use mediainfo command line?
I heard about several user who call mediainfo from PHP without problems.
./mediainfo --Inform=Video;%Width% %Height% for example.

GrofLuigi
9th October 2007, 16:36
On another note, since many programs use MediaInfo dll now, can it be placed in a path directory to avoid multiple copies and for better updating? (On Windows)

Will that affect these programs (I guess only their authors would know)?

GL

Zenitram
9th October 2007, 16:40
On another note, since many programs use MediaInfo dll now, can it be placed in a path directory to avoid multiple copies and for better updating? (On Windows)

Will that affect these programs (I guess only their authors would know)?

GL
How DLL works on Windows:
- Search in the .exe directory
- Search in the path

If you delete yourself the .dll in the porgram directory, the program will search in the path.

this is not a problem from the DLL, but from any third-party programs mainteners.

For MediaInfo (the GUI), the status of MediaInfo.dll is not "stable", so I prefer to not force updating. After, others do what they want.

When MediaInfo.dll is more stable, I may propose to install in a shared directory. Not now. (the version 0.x, not 1.x ;-) )

ficofico
22nd November 2007, 18:37
edit, sorry

vlada
25th November 2007, 22:11
I was using MediaInfo in my PHP-GTK application from command line. No I decided to move a little further and switch to Python. I heard somewhere it should be possible to use a C/C++ dll in Python. Does anyone have any idea (or code sample) how to use the mediainfo.dll in Python?

Thunderbolt8
26th November 2007, 02:30
would it be possible that mediainfo could give the length of both, audio and video stream inside a container file? dont know which of these 2 is meant with the general "length" info of the file.

vlada
27th November 2007, 23:57
I made Python load MediaInfo.dll through ctypes (http://python.net/crew/theller/ctypes/). But when I try to call the function result = lib.MediaInfo_Open("video.avi"), then Python complains there are not enough parameters for the function. What other parameters should be there?

Sorry for probably stupid questions, I'm just a beginner.

foxyshadis
28th November 2007, 03:56
You have to use:

handle=lib.MediaInfo_New();
result=lib.MediaInfo_Open(handle,"video.avi")
MediaInfo_Delete(handle)

now.

vlada
29th November 2007, 15:09
I've already tried this, but it gives me the same error:

http://img518.imageshack.us/img518/4580/pythongb5.png

Any ideas what's wrong?

vlada
2nd December 2007, 22:27
A friend of mine wrote a Python wrapper for the .dll so it is solved. I didn't have the time to dive into the code yet, I just verified it works. If anyone's interested in it, let me know.

Anyway I have another problem. I'm not sure if MediaInfo is supposed to handle elemantary streams, but I think it usually does. I have a h.264 stream demuxed from AVCHD camcorder. MediaInfo 0.7.5.5 reports it as an AC3 audio. A sample can be downloaded here (http://www.sendspace.com/file/cpgtaq) (7 MB).

SeeMoreDigital
2nd December 2007, 23:16
Anyway I have another problem. I'm not sure if MediaInfo is supposed to handle elemantary streams, but I think it usually does. I have a h.264 stream demuxed from AVCHD camcorder. MediaInfo 0.7.5.5 reports it as an AC3 audio. A sample can be downloaded here (http://www.sendspace.com/file/cpgtaq) (7 MB).Yes it can handle "elementary" streams...

MediaInfo v0.7.5.3 reports your sample as being: -
General #0
Complete name : C:\Documents and Settings\SeeMoreDigital\Desktop\video5.264
Format : AVC
Format/Info : Advanced Video Codec
Format/Family : AVC
File size : 7.27 MiB

Video #0
Codec : AVC
Codec/Info : MPEG-4 AVC
Codec profile : High@L4.0
Width : 1440 pixels
Height : 1088 pixels
Aspect ratio : 4/3
PixelAspectRatio : 1.000
DisplayAspectRatio : 1.324

....and yes, MediaInfo v0.7.5.5 reports this: -
General #0
Complete name : C:\Documents and Settings\SeeMoreDigital\Desktop\video5.264
Format : AC3
Format/Info : Audio Coding 3
File size : 7.27 MiB
PlayTime : 1mn 59s
Bit rate : 512 Kbps

Audio #0
Codec : AC3
Bit rate : 512 Kbps
Bit rate mode : CBR
Channel(s) : 3 channels
Channel positions : L C R


Cheers

foxyshadis
3rd December 2007, 01:08
A friend of mine wrote a Python wrapper for the .dll so it is solved. I didn't have the time to dive into the code yet, I just verified it works. If anyone's interested in it, let me know.

Sure!

vlada
8th December 2007, 12:50
So here it is: http://www.sendspace.com/file/ks1hei

As my friend told me it might not be fully functional, because he's never programmed anything in Python before. I'll also post it as an attachment, I hope somebody will approve it. It's only 4kB.

From what I tested so far everything seems to work correctly. I removed some comments he wrote me in Czech and translated some of them to English.

vlada
9th December 2007, 22:20
Zenitram> I have a TS sample, where MediaInfo can't detect any streams. It has one h.264 video track and 4 AC3 audio tracks. Are you interested in that file?

Atak_Snajpera
18th December 2007, 21:12
Does anybody know why I get always that kind of garbage with every file on Vista?

http://img229.imageshack.us/img229/4749/new1wx2.th.png (http://img229.imageshack.us/my.php?image=new1wx2.png)

vlada
21st December 2007, 01:40
Atak_Snajpera
I can confirm this too with 0.7.5.6. Version 0.7.5.0 works correctly. (I use Czech WinXP)

Kurtnoise
21st December 2007, 16:40
try this build (http://kurtnoise.free.fr/index.php?dir=misc/&file=MediaInfo-0.7.5.6_CLI.zip)...

Kurtnoise
21st December 2007, 16:44
Zenitram> I have a TS sample, where MediaInfo can't detect any streams. It has one h.264 video track and 4 AC3 audio tracks. Are you interested in that file?
sure...upload a sample please. Same thing for the raw AVC (the link to download the file is dead).

Atak_Snajpera
23rd December 2007, 20:55
Thanks Kurtnoise13 for fixed version

vlada
1st January 2008, 20:09
sure...upload a sample please. Same thing for the raw AVC (the link to download the file is dead).

The problematic .TS file is uploaded at http://www.sendspace.com/file/xjfw21. I think the problem with AVC stream is general, because it happend to me with more files. But if you can't reproduce it I will reupload the sample again.

Also I have some features requests for MediaInfo. I'm now working on a program, which uses MediaInfo library to get information about media files and then displays the needed modification to transcode it to DVD-Video. I also plan to add more output formats and maybe some day even make it a simple to use transcoding tool.

Here is the problem I currently have:
I need to know video compression. I need to know if it is MPEG-1/2/4 ASP or AVC. Or any other compression format. I use the "codec/family" information to get the compression, but it only works for AVI. In other containers the video compression is found under "codec". I could workaround it, but I think this inconsistency should be fixed in MediaInfo.

Second problem is, that for Matroska files the DLL only displays Mk. Again I could workaround it very simply, but I think I should mention it.

Also I'd like to ask you if it is possible to indicate some more informations about H.264. For example B-frames, CABAC etc. Is it possible at all?

Also I get much more information from a RAW AVC stream then from the same video muxed in MKV. Why?

Kurtnoise
2nd January 2008, 06:20
The problematic .TS file is uploaded at http://www.sendspace.com/file/xjfw21. I think the problem with AVC stream is general, because it happend to me with more files. But if you can't reproduce it I will reupload the sample again.
thanks...I'll try.

Here is the problem I currently have:
I need to know video compression. I need to know if it is MPEG-1/2/4 ASP or AVC. Or any other compression format. I use the "codec/family" information to get the compression, but it only works for AVI. In other containers the video compression is found under "codec". I could workaround it, but I think this inconsistency should be fixed in MediaInfo.

Second problem is, that for Matroska files the DLL only displays Mk. Again I could workaround it very simply, but I think I should mention it.
Should be easy to tweak this...:)

Also I'd like to ask you if it is possible to indicate some more informations about H.264. For example B-frames, CABAC etc. Is it possible at all?
It's possible and it's planned afaik...but I've no deadline on that.

Also I get much more information from a RAW AVC stream then from the same video muxed in MKV. Why?
such as ? mkv parsing has been rewritten recently. So, several things are missing.

vlada
2nd January 2008, 16:48
such as ? mkv parsing has been rewritten recently. So, several things are missing.

For example used profile (Baseline, Main, High etc.)

Kurtnoise
2nd January 2008, 20:37
with which matroska writer tools ? (x264/xvid_encraw-mkvtoolnix-gdsmux-gstreamer-handrake-avidemux-avimux_gui)

vlada
3rd January 2008, 01:25
O.K., so I'll be more specific. This what I get from an MKV:

Hlavní #0
Celý název a cesta : C:\_avchd\video4.mkv
Formát : Mk
Velikost souboru : 16.2 MiB
Hrací čas : 22s 880ms
Bit rate : 5957 Kbps
Encoded date : UTC 2007-08-11 16:43:56
Použitý software : mkvmerge v2.0.2 ('You're My Flame') built on Feb 21 2007 23:40:55
Enkódoval : libebml v0.7.7 + libmatroska v0.8.1

Video #0
Codec : MPEG-4 AVC
Codec/Info : MPEG4 ISO advanced profile
Hrací čas : 22s 880ms
Bit rate : 5833 Kbps
Šířka : 1440pixely
Výška : 1080pixely
Poměr stran : 16/9
Frame rate : 25.000 fps

The SW used to create the video is clear. Sorry for the Czech description, but even if I switch MediaInfo to English, the text remains in Czech. But it should be clear what the parameters are.

Now the same file after demuxing in MediaInfo 0.7.5.6:
Hlavní #0
Celý název a cesta : C:\_avchd\video4.264
Velikost souboru : 16.2 MiB


And now the same file in 0.7.5.0 (CLI, but it would be the same with GUI version):
General #0

Complete name : C:\_avchd\video4.264
Format : AVC
Format/Info : Advanced Video Codec
Format/Family : AVC
File size : 16.2 MiB

Video #0
Codec : AVC
Codec/Info : MPEG-4 AVC
Codec profile : High@L4.0
Width : 1440 pixels
Height : 1088 pixels
Aspect ratio : 4/3
PixelAspectRatio : 1.000
DisplayAspectRatio : 1.324

So first of all there is a bug in newer versions of MediaInfo that they don't read RAW AVC streams. With the older version 0.7.5.0 there are no problems. Also as you can see, I get different information about the video stream when it is demuxed. From a RAW AVC stream I get the information about profile, but not bitrate, framerate and time. Neuron2 says it should be possible to read framerate information from an AVC stream.

Also aspect ratio doesn't match. Any idea why?

If you can't reproduce it and want to see this sample video, let me know and I'll upload it.

Kurtnoise
4th January 2008, 20:32
mmh, I just tried to parse a raw AVC stream on my side with the last library and I got all infos...could you upload a sample of your video4.mkv file. :)

Thanks.

vlada
4th January 2008, 23:37
The sample is at http://www.sendspace.com/file/gpb5ul. It is a 17MB clip from Panasonic AVCHD camcorder muxed into MKV (only video).

Kurtnoise
5th January 2008, 21:28
I've no idea why the parsing fails...I'll ask to Zenitram to look at this more carefully.



btw, I've made a fix for your 2nd problem from the post #211.

vlada
6th January 2008, 12:00
Thanks a lot for your great feedback.

Kurtnoise
23rd January 2008, 21:22
@vlada: some new stuff in the incoming release...

General #0
Complete name : D:\Tor_\Script ED new_h264.mkv
Format : Matroska
File size : 5.11 MiB
PlayTime : 36s 959ms
Bit rate : 1160 Kbps
Encoded date : UTC 2008-01-23 20:13:57
Writing application : mkvmerge v2.1.0 ('Another Place To Fall') built on Aug 19 2007 13:40:07
Writing library : libebml v0.7.7 + libmatroska v0.8.1

Video #0
Codec : MPEG-4 AVC
Codec/Family : AVC
Codec/Info : Advanced Video Codec
Codec profile : High@L5.1
PlayTime : 36s 920ms
Bit rate : 1107 Kbps
Width : 640 pixels
Height : 336 pixels
Display Aspect ratio : 1.905
Frame rate : 25.000 fps
Chroma : 4:2:0
Interlacement : Progressive
Writing library : x264 - core 57 svn-699C

vlada
23rd January 2008, 21:31
That's great thanks a lot. I hope to get back to coding my application after a 2-weeks break. It is great news that I'll be able to get more detailed info.

Malow
29th January 2008, 02:49
is mediainfo "compatible" with large files?

im having problems with large files, like 25gb.

it "freezes" and looks like is reading the entire file, the hard disk light keep "on"

the video is an avi file, dv codec, exported from sony vegas.

with 13gb files, it take about 13 seconds to identify, but works. ;)

Zenitram
29th January 2008, 10:46
is mediainfo "compatible" with large files?
the video is an avi file, dv codec, exported from sony vegas.
Yes, I had problems with AVI OpenDML files in the last versions because I try to parse the Index chunks for having the real video stream size, and there was bugs in it with OpenDML indexes...
I will release a version today (0.7.5.8), please test it with the biggest AVI you have, this should be a lot quicker (lot of speed improvements), and give me your feedback.

Zen, developper of MediaInfo.

Kurtnoise
4th February 2008, 22:45
@vlada: you want more ?

General #0
Complete name : D:\Tor_\Script ED new_h264.mkv
Format : Matroska
File size : 5.11 MiB
PlayTime : 36s 959ms
Bit rate : 1160 Kbps
Encoded date : UTC 2008-01-23 20:13:57
Writing application : mkvmerge v2.1.0 ('Another Place To Fall') built on Aug 19 2007 13:40:07
Writing library : libebml v0.7.7 + libmatroska v0.8.1

Video #0
Codec : AVC
Codec/Family : AVC
Codec/Info : Advanced Video Codec
Codec profile : High@L5.1
Codec settings, CABAC : Yes
PlayTime : 36s 920ms
Bit rate : 1107 Kbps
Width : 640 pixels
Height : 336 pixels
Display Aspect ratio : 1.905
Frame rate : 25.000 fps
Chroma : 4:2:0
Interlacement : Progressive
Writing library : x264 - core 57 svn-699C
Encoding settings : cabac=1 / ref=16 / deblock=1:1:1 / analyse=0x3:0x113 / me=umh / fpel_cmp=sad / subme=7 / me-prepass=0 / brdo=1 / mixed_ref=1 / me_range=16 / chroma_me=1 / trellis=2 / 8x8dct=1 / cqm=0 / deadzone=21,11 / chroma_qp_offset=0 / threads=1 / nr=0 / decimate=1 / mbaff=0 / bframes=16 / b_pyramid=1 / b_adapt=1 / b_bias=0 / direct=3 / wpredb=1 / bime=1 / keyint=250 / keyint_min=25 / scenecut=40 / rc=2pass / bitrate=1177 / ratetol=1.0 / rceq='blurCplx^(1-qComp)' / qcomp=0.60 / qpmin=10 / qpmax=51 / qpstep=4 / cplxblur=20.0 / qblur=0.5 / ip_ratio=1.40 / pb_ratio=1.30

:) test the last beta release...

Schrade
6th February 2008, 01:15
Just a little note about a misspelled codec name:

Video #0
Codec : WinNow
Codec/Info : WinNow Videum Hardware Compression
PlayTime : 9s
Bit rate : 14 Mbps
Width : 448 pixels
Height : 336 pixels
Display Aspect ratio : 4/3
Frame rate : 30.000 fps
Resolution : 24 bits
StreamSize : 15.0 MiB

That should say "Winnov (http://www.winnov.com/)" not "WinNow"

It's the WNV1 codec.

Schrade
6th February 2008, 07:50
Found another typo:

(Quictime in the Format/Info line)
General #0
Complete name : F:\DL\WGet\Game Trailers\quantic_video.mov
Format : QuickTime
Format/Info : Quictime movie
Format/Family : MPEG-4
File size : 70.0 MiB
PlayTime : 35s 35ms
Bit rate : 17 Mbps
StreamSize : 18.8 KiB
Encoded date : UTC 2008-01-22 15:17:13
Tagged date : UTC 2008-01-22 15:21:21

Zenitram
6th February 2008, 11:49
Found another typo:
Ah... typos :)
Corrected, will be OK in next version.

Schrade
6th February 2008, 17:43
Ah... typos :)
Corrected, will be OK in next version.

Thanks, Zenitram!

By the way, is it possible to make the window of MediaInfo remember its size? I hate having to resize the window manually every time to see everything in Text mode.

Zenitram
6th February 2008, 18:19
By the way, is it possible to make the window of MediaInfo remember its size? I hate having to resize the window manually every time to see everything in Text mode.

This is planned, but not he most urgent.
(I am completly rewriting the GUI, for being cross-platform...)

clsid
6th February 2008, 20:28
I also have a suggestion/request:

Could you make a simplified version of the GUI that is only capable of displaying the info as plain text output. No fancy options. Just a 'browse for file' button, a text field, and perhaps a copy-to-clipboard button.
Preferably statically linked with the mediainfo lib, so that everything is in a single executable file.

Zenitram
6th February 2008, 23:37
Could you make a simplified version of the GUI that is only capable of displaying the info as plain text output. No fancy options. Just a 'browse for file' button, a text field, and perhaps a copy-to-clipboard button.
For me, what you demand is simple :
- You configure MediaInfo for showing Text by default (in the main configuration window)
- in Win Explorer, right clic on the file, "MediaInfo", and you have the text (I must put a button "copy to clipboard here...).

Anyway, a guy wrote a tools which can be what you want:
http://fileforum.betanews.com/detail/MediaInfo_Lite/1183386892/1/
(not supported by me)

Preferably statically linked with the mediainfo lib, so that everything is in a single executable file.
Not planned currently for official release (doable from source easily).
I can't manage tens of versions with CLI/GUI/DLL, Windows/Linux/Mac, 32/64 bits...

Atak_Snajpera
7th February 2008, 01:18
Could you make a simplified version of the GUI that is only capable of displaying the info as plain text output. No fancy options. Just a 'browse for file' button, a text field, and perhaps a copy-to-clipboard button.

I've just made this simple gui http://www.mediafire.com/?d5yommkdxnz

clsid
7th February 2008, 12:06
Thanks Atak_Snajpera, that is exactly what I had in mind. A simple and small tool that doesn't require installation.

vlada
7th February 2008, 13:46
Kurtnoise13
That's great. Many thanks.

Also the consistency of video strem information in different containers is now much improved:

http://img249.imageshack.us/img249/103/migp8.th.png (http://img249.imageshack.us/my.php?image=migp8.png)

Many thanks for your work.

If I could have one more request: Would it be possible to display delay and stretch of audio in MKV? It is very important when converting such file.

Schrade
8th February 2008, 09:24
I've just made this simple gui http://www.mediafire.com/?d5yommkdxnz

I like this, Atak. Any chance you could make it so that it remembers the window size or at least resizes itself automatically to fit all the info?

Also, a way to change the font from hard to see grey to black would be good too. Oh, any chance to give it an argument? I'd like to be able for it to load a file by either commandline or creating a right click "MediaInfo" option.

Other than that, I like its simpleness and speed.

Atak_Snajpera
13th February 2008, 17:24
Also, a way to change the font from hard to see grey to black would be good too

Clsid asked for simple GUI so nothing more will be added. BTW This is dark grey (96,96,96) and have no problems with reading text. I suggest to calibrate your monitor :)

clsid
13th February 2008, 18:44
Allowing to open a file through command line would be a useful addition. That would for example allow a user to open a file in MediaInfoRaw through a "Send to" shortcut.

Edit: typo

SeeMoreDigital
13th February 2008, 20:44
Allowing to open a file through command line would be a useful addition. That would for example allow a user to open a file in MediaInfoRaw though a "Send to" shortcut.Very good idea :)

Atak_Snajpera
13th February 2008, 22:11
http://www.mediafire.com/?5mxjsmuvjir

with command line support

Schrade
13th February 2008, 23:44
Clsid asked for simple GUI so nothing more will be added. BTW This is dark grey (96,96,96) and have no problems with reading text. I suggest to calibrate your monitor :)
Monitor _IS_ calibrated. I just prefer black text on white to grey text on white.

http://www.mediafire.com/?5mxjsmuvjir

with command line support
Bah....when I suggest it you dismiss it. When clsid suggests it you listen :-P

Thanks for adding it. I'll definitely use it now. It's so speedy!

clsid
13th February 2008, 23:59
Thanks :)

Edit:
A little request. Could you make the window a bit wider? 50% or so. Now some stuff is getting word wrapped.

Atak_Snajpera
2nd March 2008, 15:39
MediaInfo 0.7.6.0 cannot detect VC-1 video

http://img442.imageshack.us/img442/4623/new1nz5.th.png (http://img442.imageshack.us/my.php?image=new1nz5.png)

Zenitram
2nd March 2008, 17:23
MediaInfo 0.7.6.0 cannot detect VC-1 video
It detects VC-1 video on my .evo example files.
I don't have .ts (or .m2ts) files with VC-1, so I don't know what is the "stream_type" registered in the TS_program_map_section.

Please contact me (zen@mediaarea.net) for providing me an short example (you can create a 512K file with the official MediaInfo GUi, menu debug, "create a header file"), or if you can't, at least provide me the stream_type (in the official GUI, menu debug, "details - 10", load a file and search for "stream_type" in the text).

Atak_Snajpera
2nd March 2008, 18:33
sample file
http://www.mediafire.com/?e2jafizmgdw

Atak_Snajpera
2nd March 2008, 20:48
Another problem

http://www.mediafire.com/?rnxx9z94jjg

this file should be detected as DTS. However if I rename to .dts everything is ok.

General #0
Complete name : C:\Users\Dawidos\Desktop\audio.1.mpa
Format : MPEG-1 Video
Format/Family : MPEG-1
File size : 11.0 MiB

Video #0
Codec : MPEG-1 Video
Codec/Family : MPEG-V
Codec settings, Matrix : Standard
Bit rate mode : CBR
Bit rate : 10 Mbps
Nominal bit rate : 10 Mbps
Width : 939 pixels
Height : 1076 pixels
Display Aspect ratio : 0.851
Frame rate : 0.000 fps
Interlacement : Progressive

Zenitram
3rd March 2008, 21:07
sample file
http://www.mediafire.com/?e2jafizmgdw

thanks for this example file, it is very useful.
I corrected problems, VC-1 will be detected in next version.
btw, PCM stream will too (but not a lot of information, I don't know to parse the PCM stream for finding the count of stream, the bitrate... If you have information about the PCM specifications in bluray, I am interested in :) )
And Dolby TrueHD stream will be detected as TrueHD, no more AC3 (but not a lot more information, I have only A/52B specifications, and there are no information about TrueHD :( )

Example of output with my development version for your file:
MPEG-1TS: 63.6 MiB
1920*1080 (16/9), at 24.000 fps, VC-1 (Advanced@3)
English, 640 Kbps, 48 KHz, 6 channels, AC3
English, PCM (Big / Signed)
English, 48 KHz, 6 channels, TrueHD
Chinese, 448 Kbps, 48 KHz, 6 channels, AC3

I will try to improve my MPEG parser for not detect your dts file as MPEG...

Atak_Snajpera
4th March 2008, 15:05
Great job!

1920*1080 (16/9), at 24.000 fps, VC-1 (Advanced@3)
It should be 23.976 :)

Zenitram
4th March 2008, 15:25
It should be 23.976 :)
Another bug :-D
I found my error, corrected, will be OK in the next version.
(sorry, VC-1 bitstream parsing is new for me, and I don't have the specifications, so I do a lot of tests and reading other source code, so I may make mistakes :( )

Zenitram
4th March 2008, 22:27
Great job!
You can test it here:
http://sourceforge.net/project/showfiles.php?group_id=86862&package_id=197932
File MediaInfo_20080304_GUI_Win32_WithoutInstaller.7z, you can decompress it and copy the DLL to the directory with your prefered GUI.

LeMoi
4th March 2008, 22:47
No more detailed x264 infos with latest official build :(

Schrade
4th March 2008, 22:55
No more detailed x264 infos with latest official build :(
I was never able to get any detailed x264 info :-/ No matter what build I tried.

Any chance you could point to one that worked for you?