Log in

View Full Version : AVInaptic. Free utility which analyzes multimedia files (Linux and Windows)


Pages : 1 2 [3] 4 5

Schrade
4th October 2007, 02:36
I love GTK+'s file chooser. The ability to assign favorites and also have a sort of breadcrumb path at the top consisting of buttons is pretty damn awesome.

It's one feature of Avidemux I've really come to love.

Brother John
4th October 2007, 11:02
QT4 or wxWidgets would be brilliant because both use the native OS look and feel. Then also goodies like drag&drop might not be a huge problem. Anyway it works great for MKVMerge GUI (wxWidgets) which feels and acts exactly like a native Windows app.

LoRd_MuldeR
4th October 2007, 13:27
I love GTK+'s file chooser. The ability to assign favorites and also have a sort of breadcrumb path at the top consisting of buttons is pretty damn awesome.

It's one feature of Avidemux I've really come to love.

dito :)

ash925
4th October 2007, 14:52
shows data on mov clips.

Thanks

ACrowley
4th October 2007, 19:39
Mh.. on short Samples of my x264 encodes i get no User Data Information under About H264 encoding ? Full Files are with all Informations

LoRd_MuldeR
5th October 2007, 00:04
Mh.. on short Samples of my x264 encodes i get no User Data Information under About H264 encoding ? Full Files are with all Informations

Did you check your "short" files with a Hex Editor, to see if those information are actually in the file?
If the information are not present in the file, Avinaptic won't be able to show them for obvious reasons...

fsinapsi
5th October 2007, 07:34
Did you check your "short" files with a Hex Editor, to see if those information are actually in the file?

@ACrowley: check your files with a Hex Editor or use a command like "strings -60 <path>".
For example:

$ strings -60 travaux.mp4
x264 - core 50 svn-566 - H.264/MPEG-4 AVC codec - Copyleft 2005 - http://www.videolan.org/x264.html - options: cabac=1 ref=1 deblock=1:0:0 analyse=0x1:0x111 me=hex subme=5 brdo=0 mixed_ref=0 me_range=16 chroma_me=1 trellis=1 8x8dct=0 cqm=0 chroma_qp_offset=0 slices=1 nr=0 decimate=1 bframes=0 keyint=250 keyint_min=25 scenecut=40 rc=cqp qp=26 ip_ratio=1.40

fsinapsi
5th October 2007, 07:36
shows data on mov clips.
where can I download a sample?

Theliel
5th October 2007, 22:51
frank, i have a error:

gdk-warning: gdk_font_load: font name -*-Lucida Console-*--*-*-95*-*--- ilegal
...

Exception: STATUS_ACCESS_VIOLATION at eip=67FA76FD
eax=00D33928 ebx=00000000 ecx=00000000 edx=00000000 esi=02284660 edi=004D0C70
ebp=0022EFB8 esp=0022EF40 program=C:\Program Files\avinaptic\avinaptic.exe, pid 5136, thread main
cs=001B ds=0023 es=0023 fs=003B gs=0000 ss=0023
Stack trace:
Frame Function Args
0022EFB8 67FA76FD (004D0C70, 0022F004, 00000064, 0040DBE1)
0022EFF8 004D0D2B (00000001, 10090978, 100900A8, 00000001)
0022F078 61005F34 (0022F090, FFFFFFFF, 0000007A, 00000216)
0022FF58 6100614B (00000000, 00000000, 00000000, 00000000)
End of stack trace

fsinapsi
6th October 2007, 08:37
frank, i have a error:

gdk-warning: gdk_font_load: font name -*-Lucida Console-*--*-*-95*-*--- ilegal
...
Exception: STATUS_ACCESS_VIOLATION at eip=67FA76FD

ok, I'll fix it.
In the meanwhile, you could try to install that font (lucon.ttf)
http://www.anthrowiki.info/zip/LUCON.TTF.zip

fsinapsi
6th October 2007, 08:47
i tried with x264 and Apple created files for those it's working but it doesn't work for .mp4 created with Nero Recode for those after the analyzing the drf graph doesn't show up.
is the frame rate reported?
I'd like to see the tree structure of those MP4 (you can use the toggle button "View structure on/off"), maybe I should extend my mp4 parser...

fsinapsi
6th October 2007, 09:08
Thanks, that makes it very quick and easy to see bitrate spikes now!

in the last released version, the search function doesn't consider the value of the field "Avg int", maybe it should...

Anyway, I think it's not so easy to discover "buffer underflows" by looking at the "frame size graph".

For example, let's consider this situation:

http://img266.imageshack.us/img266/4695/vbv0jh0.png

the sizes of these frames are smaller than the maximum size.
And here is the "buffer fill level" (in this example: buffer size=384*1024*8 bits, max rate=4854000 bits/s):

http://img266.imageshack.us/img266/2523/vbv1ha4.png

we have two buffer underflows...

Theliel
6th October 2007, 12:07
ok, I'll fix it.
In the meanwhile, you could try to install that font (lucon.ttf)
http://www.anthrowiki.info/zip/LUCON.TTF.zip

hi frank. This is the problems, i have got installed lucida console font. I first instance i thought a font problems and i eliminated him and reinstalled again, but dont work.

anyway, good work :)

fsinapsi
15th October 2007, 10:42
I first instance i thought a font problems and i eliminated him and reinstalled again, but dont work.
did you check if you have more files with the same name? (cygwin1.dll and the other libraries...)

Theliel
15th October 2007, 19:34
no. I have downloaded full package and file to file. Nothing. I dont know what its the problems.

olnima
20th October 2007, 12:47
Is it possible to show the interleave-value in msec. too?
Saying this, I'm not quite shure if this isn't implemented allready ;-)

Thanks again for this really great tool

Olnima

fsinapsi
21st October 2007, 07:56
Is it possible to show the interleave-value in msec. too?
if (audio chunks) >= (video frames), then interleave=(framerate^-1);
if (audio chunks) < (video frames), then interleave=((video frames)/(audio chunks))*(framerate^-1).
I think this information is useless :) .
"Max A/V diff" is a more useful information

fsinapsi
18th November 2007, 10:52
update 18-11-2007 (http://fsinapsi.altervista.org)

http://fsinapsi.altervista.org/code/avinaptic/index.html

fixed some errors;
added some infos to the H.264 section.

example:

[...]
SPS id 0
Profile High@L5.1
Num ref frames 1
Aspect ratio 10:11 (4:3 NTSC pixel shape)
Chroma format idc YUV 4:2:0
PPS id 0 (SPS: 0)
Codifica entropica CABAC
Weighted prediction No
Weighted bipred idc No
8x8dct No
Custom intra4X4 luma
6 9 13 19
9 14 20 27
13 20 28 35
19 27 35 42
Custom intra4X4 chromau
6 10 15 20
10 16 21 27
15 21 28 33
20 27 33 42
Custom inter4X4 luma
8 11 15 20
11 16 21 27
15 21 28 35
20 27 35 42
Custom inter4X4 chromau
8 11 16 21
11 17 22 27
16 22 28 35
21 27 35 42
[...]


please tell me if you need more infos about H.264 streams

audyovydeo
18th November 2007, 11:02
Grazie Frank !

audyovydeo

Theliel
18th November 2007, 12:31
no more fonts problems Frank, work fine again for me :)

bkman
18th November 2007, 16:33
Would be nice to have "common" matrices embedded in the app, and then matched against the matrix used in the video stream.

So the program can just report "Matrix: Prestige" for instance.

Thanks :)

SeeMoreDigital
20th November 2007, 22:12
Hi Fsinapsi,

Just a thought... How about placing the name of your application, ie: AVInaptic in your thread title?

Also, I have to ask, why the reference to "AVI" in your applications name. Especially as it can read MPEG-4 streams placed within: .MP4, .MOV, .MKV and .AVI?


Cheers

ultratoto14
21st November 2007, 16:50
The "no x264 user data" error is due to files > 4Gb i think, must be verified.

fsinapsi
21st November 2007, 19:13
@bkman: I don't know the names of "common" matrices...

@SeeMoreDigital: why the reference to "AVI" in "avidemux", "AVI-Mux GUI", ecc? :) The answer is the same...
How can I change the title of the thread?

@ultratoto14: please, can you send me the avinaptic report of a such file (> 4 Gb)?
Also, I'd like to receive the first part of the file, let's say the first 500 kbytes.
You can obtain that by a command like this:
dd if=inpath of=outpath bs=1k count=500
(you can use an equivalent utility; 'dd' is available for various platform...)
inpath = file MP4 larger than 4 MB
outpath = file to send to me (size of outpath = 512000 bytes).
You can also check the existence of "x264 user data" by a command like this:
strings -50 path.mp4
(you can use an equivalent utility)

SeeMoreDigital
21st November 2007, 20:02
@SeeMoreDigital: why the reference to "AVI" in "avidemux", "AVI-Mux GUI", ecc? :) The answer is the same...From what I understand both of those applications started off supporting the AVI container only. Unlike your application which, is too useful to be primarily associated with the (outdated) AVI container.

How can I change the title of the thread?Go to your first post in the thread, select the "Edit" button, then select the "Go Advanced" button and within the "Edit Post" window you'll see the current title of your thread - which you can change ;)


Cheers

salehin
22nd November 2007, 09:53
Thanks a lot for this very useful tool, fsinapsi. I was wondering if you can introduce the ability to copy text from results manually. That way I don't have to create a report to get some specific info (, not everything)

Regards :)

ultratoto14
25th November 2007, 10:17
7.94 Gb file
Avinaptic report under vista :

[ About file ]

Name: ------------------------.mkv
Date: 11/11/2007 16:02:38
Size: #undef# bytes (#undef# MB)

[ Generic infos ]

File type: Matroska data

[ Hex dump ]

00000000: 1a 45 df a3 93 42 82 88 6d 61 74 72 6f 73 6b 61 |.Eߣ.B..matroska|

This report was created by AVInaptic (18-11-2007) on 25 nov 2007, h 10:15:44

Strings -50 file.mkv :
mkvmerge v2.1.0 ('Another Place To Fall') built on Aug 19 2007 13:40:07D
x264 - core 56 svn-680 - H.264/MPEG-4 AVC codec - Copyleft 2005 - http://www.videolan.org/x264.html - options: cabac=1 ref=6 deblock=1:-3:-3 analyse=0x3:0x133 me=umh subme=7 brdo=1 mixed_ref=1 me_range=16 chroma_me=1 trellis=1 8x8dct=1 cqm=2 deadzone=21,11 chroma_qp_offset=0 threads=3 nr=0 decimate=0 mbaff=0 bframes=3 b_pyramid=1 b_adapt=1 b_bias=0 direct=3 wpredb=1 bime=1 keyint=250 keyint_min=25 scenecut=40(pre) rc=2pass bitrate=7285 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 aq=1:0.3:15.0

fsinapsi
25th November 2007, 20:09
7.94 Gb file
Avinaptic report under vista :
[...]
Size: #undef# bytes (#undef# MB)

here is the problem.
That means the following C functions don't work:

#include <stdio.h>

int fseeko(FILE *stream, off_t offset, int whence);

off_t ftello(FILE *stream);

The functions work well under Linux with files of any sizes.
I think they work well under Windows XP too, but I'm not sure...

You may try to replace the file "cygwin1.dll" in the avinaptic folder with a newer version ( http://www.cygwin.com/ ).
Unfortunately I haven't Windows so debugging the windows version it's not easy...

ultratoto14
26th November 2007, 13:06
Got the latest Cycgwin1.dll and it works !! Thanks.

bkman
27th November 2007, 12:13
@bkman: I don't know the names of "common" matrices...

Many of them can be found on this very forum ;)

http://forum.doom9.org/showthread.php?t=117041

for instance. And Sharktooth's and the Prestige is around here too.

rco133
6th December 2007, 16:42
Hi.

You probably think that the above two things should have nothing to do with each other.

In fact so did I until I installed my new PC.

The very second I ask avinaptic to check for updates, my ethernet just dies instantly. And the only way to get it to work again is to reboot the PC.

It worked fine on my old PC which used some 3COM onboard NIC.

My new PC uses an Attansic L1 onboard NIC, and it is an ASUS P5KR board. I have of course installed the most recent drivers.

I have no clue why or how avinaptic manages to bring down the ethernet completely. It is as if the device gets totally invisible to the system until I reboot it.

All other functions in avinaptic is working just fine, so it isn't really a big problem. But was just wondering how an online check for updates can totally bring an ethernet device into its knees.

Maybe I have missed to install some DLL for the program or something like that. I have downloaded the -full file and am using that.

Have anyone experienced anything like this ?

I hope it can be fixed in some way, as I would like to be able to check for updates from inside the program, instead of visiting the homepage to check.

rco133

fsinapsi
6th December 2007, 17:30
I have no clue why or how avinaptic manages to bring down the ethernet completely.
avinaptic is not aware of the existence of things like "ethernet"; it's not an operating system, it's an application.
It calls functions like "socket", "connect" and similar...

You may try to replace the run time support of those functions...
For example, you may try to replace the file "cygwin1.dll" in the avinaptic folder with this more recent version:

http://rapidshare.com/files/73976842/cygwin1.rar.html

If this doesn't work, then I'll try to replace the way to check for updates (I'll try to use a library called "libcurl")...

rco133
12th December 2007, 19:59
avinaptic is not aware of the existence of things like "ethernet"; it's not an operating system, it's an application.
It calls functions like "socket", "connect" and similar...

You may try to replace the run time support of those functions...
For example, you may try to replace the file "cygwin1.dll" in the avinaptic folder with this more recent version:

http://rapidshare.com/files/73976842/cygwin1.rar.html

If this doesn't work, then I'll try to replace the way to check for updates (I'll try to use a library called "libcurl")...


Thanks for the quick answer. I have downloaded the file and replaced the old one. But the result is still the same. As soon as I choose check for updates, my network dies and avinaptic seems to go into "this program does not respond" mode.

Guess I will just stay away from that menu, and check online for updates :-)

Thanks for a great program.

rco133

bokonon
23rd January 2008, 12:58
First off: Many thanks for this awesome program! It really is so much more useful than gspot/media info etc. I reallly love the fact that you can see the "level" at which an mkv is encoded at (be it 5.1, 4.1 etc).

One thing I would love to see in the future would be a nicer interface ( :helpful: ) . Sorry to ask, but for me 'drag and drop' is a bad habit to have i suppose, but saves quite a bit of time.

Also, it would be nice if you could run a batch report generatrion. For example, i could run it on a folder of files, in order to quickly compare the results.

:thanks:

audyovydeo
23rd January 2008, 13:55
... but for me 'drag and drop' is a bad habit ...

No worry, there are cures for that ;-)
Create a dos batch file with this :


@echo off
echo.
mp4box -info %1 | grep -E "Video" | cut -d "-" -f 3
echo.
pause



Also, it would be nice if you could run a batch report generatrion. For example, i could run it on a folder of files, in order to quickly compare the results.


try :

for %%f in (*.mp4) do ( mp4box -info %%~f | grep -E "Video" | cut -d "-" -f 3 )


required : mp4box, cygwin

cheers
audyovydeo

talen9
23rd January 2008, 16:08
Well, I'm sure that audyovydeo's advice is working; anyway, AVInaptic is already able to be run from the command line, and on a batch of files too :)


avinaptic -cl "filename.[avi][mp4][etc....]" > report.txt

generates the report (without the DRF analysis) on the standard output, which is redirected on file "report.txt".


avinaptic -cldrf "filename.[avi][mp4][etc....]" > report.txt

generates the report (with the DRF analysis) on the standard output, which is redirected on file "report.txt".


So, you can write down a batch file which executes avinaptic on multiple files, like in the second example by audyovideo above; OR you can use the GUI: the option "Save report recursively" from the File menu will run on all files in all subfolders starting from the current one (included) :)

Nikos
16th March 2008, 18:41
This report is from x264 ver. 748 with VAQ:

1-pass:
x264 [info]: slice I:1230 ........... Avg QP:15.94 size:117789
x264 [info]: slice P:108327 ........ Avg QP:17.77 size: 28319
x264 [info]: slice B:119210 ........ Avg QP:20.22 size: 4690

x264 [info]: final ratefactor: 19.23

2-pass:
x264 [info]: slice I:1230 ............ Avg QP:16.31 size:113350
x264 [info]: slice P:108327 ......... Avg QP:17.79 size: 28950
x264 [info]: slice B:119210 ......... Avg QP:20.39 size: 5237


This report is from Avinaptic (18 Noe. 2007):

P-slices average DRF: 19.858336
B-slices average DRF: 21.942739
I-slices average DRF: 18.091869

Why so big difference?
With normal x264 i take similar results.

KoD
17th March 2008, 16:48
What i like in Avinaptic is that after a DRF analysis of a mkv file with h264 video, it gives a graph that shows the type of each frame. What I'd like to see is the mkv timecode for the frame, not only its number. Shouldn't be too hard to do, but it would help a lot to know the timecode of an I frame when splitting the mkv in mkvmerge.

wirawan84
19th March 2008, 20:13
* how to see the x264 cli command in avinaptic ?

buzzqw
19th March 2008, 20:30
* how to see the x264 cli command in avinaptic ?

you don't see it, BUT you see what values got the options.. like how many bframes, how many ref..

BHH

LoRd_MuldeR
19th March 2008, 22:44
* how to see the x264 cli command in avinaptic ?
Have a look at all those "User data" entries below "About H.264 encoding" :p

steve77
31st March 2008, 04:01
I encoded a file into raw h264 format and muxed it with an AAC-LC audio file in an *.mp4 container. I open the file and it shows the details, but when I go for DRF analysis, it says midway through "File Format is Unknown".... which seems strange.

Any ideas?

bkman
10th April 2008, 17:27
Seems like avinaptic needs to be updated for new-version MKV files. It won't give any information for them anymore.

SeeMoreDigital
10th April 2008, 18:05
Seems like avinaptic needs to be updated for new-version MKV files. It won't give any information for them anymore.What exactly are these "new version" MKV files?

steve77
10th April 2008, 18:26
What exactly are these "new version" MKV files?

What exactly does any of this have to do with my Mp4s?

SeeMoreDigital
10th April 2008, 20:34
What exactly does any of this have to do with my Mp4s?Hi Steve,

I'm not responding to your AVInaptic issue, I'm trying to understand bkman's...


Cheers

steve77
10th April 2008, 21:40
Hi Steve,

I'm not responding to your AVInaptic issue, I'm trying to understand bkman's...


Cheers


My mistake, cheers.

bkman
12th April 2008, 03:58
Ah, my bad. One of my encodes can't be read properly by avinaptic, even after being muxed by a new version of mkmerge, so I assumed that it was some incompatibility with new mkv revision. But in fact it can still read smaller samples from this encode, so it may rather be an issue related to the size. Its about DVD5 size/720p.

I'll post what avinaptic has on it.


[ About file ]

Name: Recall.mkv
Date: 8/04/2008 02:31:19
Size: #undef# bytes (#undef# MB)

[ Generic infos ]

File type: Matroska data

[ Hex dump ]

00000000: 1a 45 df a3 93 42 82 88 6d 61 74 72 6f 73 6b 61 |.Eߣ.B..matroska|

pcordes
15th April 2008, 22:21
For Linux users: dowload the file avinaptic.tar.gz and check for missing libraries.
My program is not aesthetically pleasing, but can extract many informations from AVI, MP4, MKV, and can do a "DRF analysis" of ASP and AVC streams.
Please feel free to send me suggestions and bug reports.

I'd love to try this, but I'd prefer to compile it from source on my AMD64 Ubuntu system, instead of installing all the 32bit libs.

What language is the source code in? I've never seen .trp and .tin files, but the code in them looks like lisp. Googling for the compiler, treepc, didn't turn up anything.

I'm a veteran Unix geek, so just point me at a web site for the compiler and I'll figure out if there are Ubuntu packages, or whatever.

Thanks,

nm
15th April 2008, 22:36
What language is the source code in? I've never seen .trp and .tin files, but the code in them looks like lisp. Googling for the compiler, treepc, didn't turn up anything.
It's apparently his own compiler:
http://fsinapsi.altervista.org/code/treep/index.html

Seems that it can't be used for compiling 64-bit binaries though, and looks like the compiler is closed-source.