Avdump: Difference between revisions

Jump to navigation Jump to search
1,185 bytes added ,  26 February 2012
no edit summary
(Added batch file option)
No edit summary
(22 intermediate revisions by 6 users not shown)
Line 1: Line 1:
{{eyecatch|Note!|<br><br><br><br>Avdump (version one) has been wholly superseded by [[Avdump2]].  While the version of Avdump on this page will continue to work for auto-creqs for the foreseeable future, users are encouraged to migrate to the new version as the opportunity presents itself.<br><br><br><br>}}
<br>
----
<br><br><br><br><br><br><br><br>
{{TOCright}}
{{TOCright}}


==What is it==
==What is it==
'''Avdump''' is a video codec identification utility - identifies which video codec and audio compression method is used on video files. Furthermore it calculates the used bitrates, the length, identifies the number of used audiochannel and more.<br>
'''Avdump''' is a video codec identification utility - identifies which video codec and audio compression method is used on video files. Furthermore it calculates the used bit rates, the length, identifies the number of used audio channels and more.<br>
It is mainly based on [http://mediainfo.sourceforge.net/en mediainfo], but got enhanced and changed to fit anidb's needs by [[User:Epoximator|epoximator]].<br>
It is mainly based on [http://mediainfo.sourceforge.net/en mediainfo], but got enhanced and changed to fit AniDB's needs by [[User:Epoximator|epoximator]].<br>
'''Avdump''' was created with the intention to provide anidb with a tool to standarize the input for files and be a part of the upcoming [[AniDB O'Matic|AOM 0.6]]. It does however already support autocreqing by itself. See [[Avdump/Autocreqing]].
'''Avdump''' was created with the intention to provide AniDB with a tool to standardize the input for files and be a part of the upcoming [[AniDB O'Matic|AOM 0.6]]. It does however already support auto-creqing by itself. See [[Avdump/Autocreqing|Avdump/Auto-creqing]].


===Supported formats===
===Supported formats===
Line 10: Line 15:


===Known issues===
===Known issues===
'''Note:''' Avdump is under development. Don't take the validity of its output for granted. Please report errors/issues.
{{eyecatch|Note|Avdump is under development. Don't take the validity of its output for granted. Please report errors/issues.}}
*'''Currently Avdump only supports lower-case letters in user name, if your AniDB user name has capital letters, lower case them only for Avdump usage (as in, it's not needed to change your AniDB user name). If your AniDB user name contains symbols such as an underscore _, then you will actually need to remove that from your AniDB user name for Avdump usage.'''
*Audio channel detection is very simple:
*Audio channel detection is very simple:
**Number of channels might be wrong. (5.1 vs 6.1, 6.1 vs 7.1)
**Number of channels might be wrong. (5.1 vs 6.1, 6.1 vs 7.1)
Line 22: Line 28:
==Download==
==Download==
Latest version (18th March 2008) is 0.34.
Latest version (18th March 2008) is 0.34.
Get your copy of avdump [http://static.anidb.net/client/avdump.rar HERE]!
Get your copy of Avdump [http://static.anidb.net/client/avdump.rar HERE]!


md5sum rar=225f2058812f601876fd5960bed95b74, exe=ee85a21848db15dc8bee3dd4180be953
md5sum rar=225f2058812f601876fd5960bed95b74, exe=ee85a21848db15dc8bee3dd4180be953


==Usage==
==Usage==
'''Avdump''' is a simple [http://en.wikipedia.org/wiki/Command_line_interface command line] client:
'''Avdump''' is a simple [[Wikipedia:Command line interface|command line]] client:
:<tt>avdump [-<options> ...] <media file/folder> [<media file/folder> ...]</tt>
:<tt>avdump [-<options> ...] <media file/folder> [<media file/folder> ...]</tt>


Line 42: Line 48:
|'''exp''':<file path/name>||Export ed2k-links to the specified file. Very useful when mass adding files.||<tt>exp:ed2k-links.txt</tt>
|'''exp''':<file path/name>||Export ed2k-links to the specified file. Very useful when mass adding files.||<tt>exp:ed2k-links.txt</tt>
|-
|-
|'''ac''':<username>:<api_password>||Enable automatic creqing. You should always use this option when dumping anime files!||<tt>-ac:tard:monkey</tt>
|'''ac''':<username>:<udp_api_key>||Enable automatic creqing. You should always use this option when dumping anime files!||<tt>-ac:tard:monkey</tt>
|-
|-
|'''port''':<port number>||Use the specified UDP port for communication with the AniDB server (api.anidb.net). Only needed when behind "strict" firewalls.||<tt>port:1337</tt>
|'''port''':<port number>||Use the specified UDP port for communication with the AniDB server (api.anidb.net). Only needed when behind "strict" firewalls.||<tt>port:1337</tt>
Line 52: Line 58:
|'''bsize''':<KB_per_block>:<number_of_blocks>||Set size per block (2048 is default) and number of blocks in the circular buffer for hashing. If ''number of blocks'' is less than 2 then a plain single-threaded hasher is used. Might be useful if you got trouble with the default hasher.||<tt>bsize:512:16</tt>
|'''bsize''':<KB_per_block>:<number_of_blocks>||Set size per block (2048 is default) and number of blocks in the circular buffer for hashing. If ''number of blocks'' is less than 2 then a plain single-threaded hasher is used. Might be useful if you got trouble with the default hasher.||<tt>bsize:512:16</tt>
|}
|}
 
<br/>
 
{{eyecatch|Note|'''The ''udp_api_key'' is not your user password!!! see [[Avdump#Auto-creqing|Auto-creqing]] .}}
<br/>
{|align="center" style="border: 1px solid #aaaaaa; border-collapse: collapse; background: #f9f9f9; line-height: 1.0; font-size: smaller; width: 80%"
{|align="center" style="border: 1px solid #aaaaaa; border-collapse: collapse; background: #f9f9f9; line-height: 1.0; font-size: smaller; width: 80%"
! style="border: 1px solid #aaaaaa; font-size: 120%; background: #f2f2f2;" | Switch
! style="border: 1px solid #aaaaaa; font-size: 120%; background: #f2f2f2;" | Switch
Line 65: Line 72:
|x||Formatting||Old '''X'''ML format (intended for AOM).
|x||Formatting||Old '''X'''ML format (intended for AOM).
|-
|-
|y||Formatting||New XML format (used when autocreqing).
|y||Formatting||New XML format (used when auto-creqing).
|-
|-
|c||Control||Do not re'''c'''urse into subfolders, only handle files in current folder.
|c||Control||Do not re'''c'''urse into sub-folders, only handle files in current folder.
|-
|-
|i||Control||Sk'''i'''p full parsing (only for testing, not compatible with autocreqing).
|i||Control||Sk'''i'''p full parsing (only for testing, not compatible with auto-creqing).
|-
|-
|m||Control||'''M'''onitor folder(s). Check for new files every now and then.
|m||Control||'''M'''onitor folder(s). Check for new files every now and then.
Line 103: Line 110:
|a||Hash||Include '''a'''ll hash algorithms.
|a||Hash||Include '''a'''ll hash algorithms.
|-
|-
|h||Hash||'''H'''ash only mode, ie. no metadata parsing.
|h||Hash||'''H'''ash only mode, i.e. no metadata parsing.
|-
|-
|e||Hash||Print '''e'''d2k link
|e||Hash||Print '''e'''d2k link
Line 115: Line 122:


===Windows Shortcut===
===Windows Shortcut===
#Extract avdump to a folder of choice.
#Extract Avdump to a folder of choice.
#:Example: "C:\Program Files\avdump\"
#:Example: <tt>"C:\Program Files\avdump\"</tt>
#Right-click avdump.exe, select ''Create Shortcut''.
#Right-click <tt>avdump.exe</tt>, select ''Create Shortcut''.
#Right-click the shortcut, add options to the ''Shortcut - Target'' line.
#Right-click the shortcut, add options to the ''Shortcut - Target'' line.
#:Example, normal usage: <tt>"C:\Program Files\avdump\avdump.exe" -p</tt>
#:Example, normal usage: <tt>"C:\Program Files\avdump\avdump.exe" -p</tt>
#:Example, autocreq usage: <tt>"C:\Program Files\avdump\avdump.exe" -o -ac:''myName'':''myApiPass''</tt>
#:Example, auto-creq usage: <tt>"C:\Program Files\avdump\avdump.exe" -o -ac:''myName'':''udp_api_key''</tt>
#::You can also set other options like ''s'', ''x'' or ''t'' if you wish to do so.
#::You can also set other options like ''s'', ''x'' or ''t'' if you wish to do so.
#::A commandline option to export ED2K links to a file is by adding -exp:''C:\Path\filename.txt'', etc.
#::A commandline option to export ED2K links to a file is by adding -exp: <tt>''C:\Path\filename.txt''</tt>, etc.
#::Note that you need to set an API password in your anidb profile for autocreqing.
#::Note that you need to set an '''UDP API Key''' in your AniDB profile for auto-creqing.
#:Optional: Change ''Run'' to ''Maximized''.
#:Optional: Change ''Run'' to ''Maximized''.
#Drag and drop any media-file onto the shortcut.
#Drag and drop any media-file onto the shortcut.
{{eyecatch|Note|'''The ''udp_api_key'' is not your user password!!! see [[Avdump#Auto-creqing|Auto-creqing]] .}}
====Send to====
====Send to====
#Move shortcut to the SendTo folder.
#Move shortcut to the SendTo folder.
#:Example, under XP: "C:\Documents and Settings\''Username''\SendTo"
#:Example, under XP: <tt>"C:\Documents and Settings\''Username''\SendTo"</tt>
#:Example, under Vista: "C:\Users\''Username''\AppData\Roaming\Microsoft\Windows\SendTo"
#:Example, under Vista: <tt>"C:\Users\''Username''\AppData\Roaming\Microsoft\Windows\SendTo"</tt>
#::Where ''Username'' is your Windows Login-Name.
#::Where ''Username'' is your Windows Login-Name.
#:Note that ''SendTo'' is a hidden folder.
#:Note that ''SendTo'' is a hidden folder.
#Right-click any media-file, goto "Send To", choose avdump.exe
#Right-click any media-file, go to "Send To", choose <tt>avdump.exe</tt>
#Get [[Creq|CReqing]]
#Get [[Creq|CReqing]]


===MS-DOS Batch File===
===MS-DOS Batch File===
#Extract avdump to a folder of choice.
#Extract Avdump to a folder of choice.
#Create a MS-DOS batch file with the 2 lines below, and save it as ''filename.bat''.
#Create a MS-DOS batch file with the 2 lines below, and save it as ''filename.bat''.
#:@ECHO OFF
#<tt>@ECHO OFF</tt>
#:C:\AVDumpPath\avdump.exe %1 -exp:''C:\Path\filename.txt'' -ac:''myName'':''myApiPass''
#<tt>C:\AVDumpPath\avdump.exe %1 -exp:''C:\Path\filename.txt'' -ac:''myName'':''udp_api_key''</tt>
#Drag and drop any media-file onto the shortcut.
#Drag and drop any media-file onto the shortcut.
{{eyecatch|Note|'''The ''udp_api_key'' is not your user password!!! see [[Avdump#Auto-creqing|Auto-creqing]] .}}


===Graphical user interface===
===Graphical user interface===
''See:'' '''[[Avdump GUI]]'''
* ''See:'' '''[[Avdump GUI]]'''


===Processing DVD's===
===Processing DVD's===
For processing DVD's it's best to set a small blocksize. Helps to improve performance.
For processing DVD's it's best to set a small blocksize. Helps to improve performance.


something like
Something like <tt>-bsize:256:1</tt> ''(default is 2048)''
<pre>
-bsize:256:1
</pre>
<i>(default is 2048)</i>


== Autocreqing ==
== Auto-creqing ==
[[Image:Autocreq.gif|thumb|Simple diagram of the way autocreqing with avdump works]]
[[Image:Autocreq.gif|thumb|Simple diagram of the way auto-creqing with Avdump works]]


Avdump is now part of a new [[autocreqing]] system. Some more or less important notes:
Avdump is now part of a new [[auto-creqing]] system. Some more or less important notes:
* To be able to use this feature you’ll need an AniDB account and you have to define the ''api key'' in your [[profile]]. All data sent to the server will be logged with ip and uid.
* To be able to use this feature you’ll need an AniDB account '''and you have to define the ''UDP API Key'' in your [[profile]]'''. All data sent to the server will be logged with IP and uid.
* Communication between client and server is ''one-way'' (except session init/refresh); the client does not receive any confirmation for sent data. This means that there is no guaranty that all the dumps you send will arrive at the server and stored in the database, and there is no way to check this. ''From version 0.31 it's possible to make avdump wait for confirmation from the server by using the -o switch.''
* Communication between client and server is ''one-way'' (except session init/refresh); the client does not receive any confirmation for sent data. This means that there is no guaranty that all the dumps you send will arrive at the server and stored in the database, and there is no way to check this. ''From version 0.31 it's possible to make Avdump wait for confirmation from the server by using the -o switch.''
* It is possible to run more than one instance of avdump at once, but not more than ten will work ok. At the moment ''only 10 sessions per ip are allowed by the server'', meaning the eleventh instance will terminate the first.
* It is possible to run more than one instance of Avdump at once, but not more than ten will work OK. At the moment ''only 10 sessions per ip are allowed by the server'', meaning the eleventh instance will terminate the first.
* There is no direct connection between data sent to AniDB and creqs generated. The data received will just be stored for later processing. There is no way to check the current status for a dump. Usually, it should take ''at least 24 hours'' from the moment you dump a file till the data actually changes. If any irregularities occur, or when there is too much data pending, it will take more time.
* There is no direct connection between data sent to AniDB and creqs generated. The data received will just be stored for later processing. There is no way to check the current status for a dump. Usually, it should take ''at least 24 hours'' from the moment you dump a file till the data actually changes. If any irregularities occur, or when there is too much data pending, it will take more time.
* The creqs generated will report the user who sent the data first (for a specific file) as the creqer.
* The creqs generated will report the user who sent the data first (for a specific file) as the creqer.
* You may dump files currently not in the db. The data is still stored and will be used later if/after the file has been registered.
* You may dump files currently not in the database. The data is still stored and will be used later if/after the file has been registered.
* Files creqed by the new system will be locked, meaning some fields will not be possible to change. Notify a moderator if you are '''sure''' that some of the data locked for a specific file is wrong.
* Files creqed by the new system will be locked, meaning some fields will not be possible to change. Notify a moderator if you are '''sure''' that some of the data locked for a specific file is wrong.
* Not all dumps are sent to the server; Only mkv, ogm, avi, mp4, mov, rm and mpeg dumps from non corrupted files are sent:
* Not all dumps are sent to the server; Only mkv, ogm, avi, mp4, mov, rm and mpeg dumps from non corrupted files are sent:
** The asf parser does not detect fps.
** The asf parser does not detect fps.
** Audio files are too few and not considered important atm.
** Audio files are too few and not considered important ATM.
** Nothing useful can be extracted from archives and subtitles (that I can think of).
** Nothing useful can be extracted from archives and subtitles (that I can think of).


Line 178: Line 186:


===Why isn't this file verified?===
===Why isn't this file verified?===
Even if the file is dumped it doesn't mean it will get autocreqed (and verified). Here are the reasons:
Even if the file is dumped it doesn't mean it will get auto-creqed (and verified). Here are the reasons:
* The file is corrupt/invalid ([http://anidb.info/perl-bin/animedb.pl?show=avmf&do=xml&avid=76226 example]).
* The file is corrupt/invalid ([http://anidb.net/perl-bin/animedb.pl?show=avmf&do=xml&avid=76226 example]).
* The provided data is considered "incoherent". (Indicates a bug in avdump.)
* The provided data is considered "incoherent". (Indicates a bug in Avdump.)
* The dump was marked unfit for file verification by an AniDB Moderator.
* The dump was marked unfit for file verification by an AniDB Moderator.
* The file type is not included in autocreqing yet (mov/mpg/rm atm).
* The file type is not included in auto-creqing yet (mov/mpg/rm ATM).


===What's the current status?===
===What's the current status?===
Line 202: Line 210:
* libFooID 1.0 - http://foosic.org/libfooid.php (fooid fingerprint)
* libFooID 1.0 - http://foosic.org/libfooid.php (fooid fingerprint)
* mpg123-0.65 - http://www.mpg123.de/ (mp3 decoding)
* mpg123-0.65 - http://www.mpg123.de/ (mp3 decoding)
* tinyxml 1.0.1 - http://www.grinninglizard.com/tinyxml/ (xml generation)
* tinyxml 1.0.1 - http://www.grinninglizard.com/tinyxml/ (XML generation)
* wxWidgets-2.8.7 - http://www.wxwidgets.org/ (used by MediaInfoLib and avdump.exe)
* wxWidgets-2.8.7 - http://www.wxwidgets.org/ (used by MediaInfoLib and avdump.exe)


==Changelog==
==Changelog==
<div style="height: 280px; overflow: auto; padding: 3px; border:1px solid #AAAAAA; font-size: smaller">
<div style="height: 280px; overflow: auto; padding: 3px; border:1px solid #AAAAAA; font-size: smaller">
0.34.00 : 080316 - no need to redump your collection
0.34.00 : 080316 - no need to redump your collection
*New switch 'N'; No data output. Does not affect error messages or progress.
*New switch 'N'; No data output. Does not affect error messages or progress.
Line 252: Line 259:
*Added delete (-z) option.
*Added delete (-z) option.
*Added timestamp to -t switch.
*Added timestamp to -t switch.
*Added option to not recurse into subfolders (-c).
*Added option to not recurs into sub-folders (-c).
*Fixed crash on 222427, 29542, 14303.
*Fixed crash on 222427, 29542, 14303.
*Fixed 'stream not found' for some avi files.
*Fixed 'stream not found' for some avi files.
Line 258: Line 265:
*Fixed skipping of files with names starting with dot.
*Fixed skipping of files with names starting with dot.
0.29 : 070113 - importance: high
0.29 : 070113 - importance: high
*Autocreq
*Auto-creq
*Ed2k export to file (-exp:<file>).
*Ed2k export to file (-exp:<file>).
*Various forgotten fixes and changes.
*Various forgotten fixes and changes.
Line 271: Line 278:
0.27 : 060927 - importance: low
0.27 : 060927 - importance: low
*WARNING:
*WARNING:
:* This is an experimental version for a new autocreq system.
:* This is an experimental version for a new auto-creq system.
:* Due major internal changes it's likely to be borked.
:* Due major internal changes it's likely to be borked.
:* Only upgrade if you want to help testing; use -c.
:* Only upgrade if you want to help testing; use -c.
Line 277: Line 284:
*Improved/fixed ogm and avi track size calculation.
*Improved/fixed ogm and avi track size calculation.
:*Error was less than ~30 KB for a normal file.
:*Error was less than ~30 KB for a normal file.
*Fixed samplerate=0 when audio not vorbis and added PCM recognition in ogm parser.
*Fixed samplerate=0 when audio not Vorbis and added PCM recognition in ogm parser.
*Fixed wrong AR printed when > 1.70.
*Fixed wrong AR printed when > 1.70.
*Fixed missing zeros at beginning in crc32 checksums.
*Fixed missing zeros at beginning in crc32 checksums.
0.26 : 060912 - importance: low
0.26 : 060912 - importance: low
*Changes in the xml mode; formatted time and exact channels value.
*Changes in the XML mode; formatted time and exact channels value.
*Added option to skip parsing altogether (hash only mode).
*Added option to skip parsing altogether (hash only mode).
*Added switch '-ext:{comma separated file extension list}'.
*Added switch '-ext:{comma separated file extension list}'.
Line 309: Line 316:
*Added switch 'i': skip full parsing (mkv/ogm/avi). Only for testing. Do _not_ use when creqing.
*Added switch 'i': skip full parsing (mkv/ogm/avi). Only for testing. Do _not_ use when creqing.
0.20 : 060717
0.20 : 060717
*Added return code in xml mode and more warnings in the other modes.
*Added return code in XML mode and more warnings in the other modes.
*Fixed mp4 parser; audio track sizes.
*Fixed mp4 parser; audio track sizes.
*Fixed mkv crash on corrupt files (fid: 216911).
*Fixed mkv crash on corrupt files (fid: 216911).
Line 323: Line 330:
*Updated MediaInfoLib (latest cvs).
*Updated MediaInfoLib (latest cvs).
*Minor changes in normal output format (duration and size).
*Minor changes in normal output format (duration and size).
*Short format does now print video duration (ie. not header value).
*Short format does now print video duration (i.e. not header value).
0.17 : 060602
0.17 : 060602
*Added extension check.
*Added extension check.
*Changes xml output.
*Changes XML output.
*Fixed memory leak when parsing mp4.
*Fixed memory leak when parsing mp4.
0.16 : 060529
0.16 : 060529
*Fixed some RIFF bugs.
*Fixed some RIFF bugs.
*Fixed randomizor bug.
*Fixed randomiser bug.
*Updated anidb codec identifiers.
*Updated AniDB codec identifiers.
*Added jni.
*Added jni.
*Changes in xml and short mode.
*Changes in XML and short mode.
0.15 : 060518
0.15 : 060518
*Updated libebml, libogg, libvorbis.
*Updated libebml, libogg, libvorbis.
Line 340: Line 347:
*Changes in 'short' output mode.
*Changes in 'short' output mode.
*Track numbering starts on 1 now.
*Track numbering starts on 1 now.
*Changes in ar detection, see: http://wiki.anidb.info/w/Avdump/AR
*Changes in ar detection, see: http://wiki.anidb.net/w/Avdump/AR
*Fixed: Track sizes might be slightly wrong for OpenDML files.
*Fixed: Track sizes might be slightly wrong for OpenDML files.
*Packed exe and dll (UPX 2.00w).
*Packed exe and dll (UPX 2.00w).
0.14 : 060514
0.14 : 060514
*Added anidb AR, flags and chan str to normal output.
*Added AniDB AR, flags and chan str to normal output.
*Added new output mode: short (-s).
*Added new output mode: short (-s).
*Added switch -t: show proc time (per file).
*Added switch -t: show proc time (per file).
Line 354: Line 361:
0.13 : 060511
0.13 : 060511
*Fixed wrong track durations for some mkv files.
*Fixed wrong track durations for some mkv files.
*Added anidb channel id (only in xml).
*Added AniDB channel id (only in XML).
0.12 : 060510
0.12 : 060510
*Improved VFR check.
*Improved VFR check.
*Added anidb video flags (only in xml).
*Added AniDB video flags (only in XML).
0.11 : 060509
0.11 : 060509
*Added anidb codec id for ogm (and fixed a minor issue for some mkv files).
*Added AniDB codec id for ogm (and fixed a minor issue for some mkv files).
*Added simple VFR check for mkv files.
*Added simple VFR check for mkv files.
0.10 : 060501
0.10 : 060501
*Added MP3 VBR check on avi and mkv files (variable frame size check).
*Added MP3 VBR check on avi and mkv files (variable frame size check).
*Added xml output (-x).
*Added XML output (-x).
*Added anidb codec id, and some checking on fourcc vs user data.
*Added AniDB codec id, and some checking on fourcc vs user data.
*Added anidb lang and ar id (only printed in xml mode).
*Added AniDB lang and ar id (only printed in xml mode).
*Fixed some issues with mp4, rm and mpg files.
*Fixed some issues with mp4, rm and mpg files.
0.09 : 060401
0.09 : 060401
Line 371: Line 378:
*Changes in the output format.
*Changes in the output format.
0.08 : 060330
0.08 : 060330
*Exe is now unicode.
*Exe is now Unicode.
*Fixed wrong output for avi files with multiple audio tracks.
*Fixed wrong output for avi files with multiple audio tracks.
*Added better track size calc for avi files. (first try)
*Added better track size calc for avi files. (first try)
Line 391: Line 398:


[[Category:Features]]
[[Category:Features]]
[[Category:Anidb Clients]]
[[Category:AniDB Clients]]
[[Category:Avdump]]
[[Category:Avdump]]
[[Category:Development]]
[[Category:Development]]

Navigation menu

MediaWiki spam blocked by CleanTalk.
MediaWiki spam blocked by CleanTalk.