Regards, EricBThis's an extra link for someone who doesn't have msvcp110d.dll and msvcr110d.dll. MediaInfoWDX build with static MFC
Mediainfo.wdx: (see video/audio metadata detailed information) - content plugin
Moderators: Hacker, petermad, Stefan2, white
@Moon I finally installed and tested loopback's lister interface off the 0.71 version of the wdx and it works fine, this is the TCMediaInfo.xml I use:
to use it in lister you need to add this line under [ListerPlugins] in wincmd.ini
you need to set the number of the lister plugin to the next unused and set the path to the wdx as it is on your system.
here's a screen shot Image: http://i.imgur.com/kqXjr4V.png
Code: Select all
<?xml version="1.0" encoding="UTF-8"?>
<tcmediainfo>
<options>
<Formats>AVI,DIVX,MPEG,MPE,MPA,DAT,MPG,ASF,VOB,MKV,WEBM,MP1,MP2,MP3,MP4,M4A,M4V,AVC,WAV,AIFF,OGG,OGM,WMA,WMV,MOV,WMV,QT,AC3,DTS,AU,D2V,RA,RM,APE,FLAC,FLV,JPG,JPEG,GIF,PNG</Formats>
<MultiSeparator> / </MultiSeparator>
<BasePath>base.db</BasePath>
<MemoryBase>False</MemoryBase>
<UseBase>True</UseBase>
<SqlitePath>Sqlite3.dll</SqlitePath>
<Sqlite64Path>Sqlite3_x64.dll</Sqlite64Path>
<MediaInfoPath>MediaInfo.dll</MediaInfoPath>
<MediaInfo64Path>MediaInfo_x64.dll</MediaInfo64Path>
<MissedField><empty></MissedField>
<DebugMode>0</DebugMode>
</options>
<sources>
<!-- General -->
<source name="Duration" field="Duration"/>
<source name="OverallBitRate" field="OverallBitRate"/>
<source name="GeneralFormat" field="Format"/>
<source name="EncDate" field="Encoded_Date"/>
<source name="TagDate" field="Tagged_Date"/>
<source name="StreamCount" field="StreamCount"/>
<!-- Tag info -->
<source name="Title" field="Title"/>
<source name="Album" field="Album"/>
<source name="Performer" field="Performer"/>
<source name="Copyright" field="Copyright"/>
<source name="Comment" field="Comment"/>
<source name="Composer" field="Composer"/>
<source name="Genre" field="Genre"/>
<source name="TrackNumber" field="Track/Position"/>
<source name="Medium" field="OriginalSourceMedium"/>
<source name="Source" field="OriginalSourceForm"/>
<source name="EncodedWith" field="Encoded_Application"/>
<!-- Video -->
<source name="VideoFormat" field="Format" context="Video"/>
<source name="VideoBr" field="BitRate" context="Video"/>
<source name="VideoCodecID" field="CodecID" context="Video"/>
<source name="VideoFrameWidth" field="Width" context="Video"/>
<source name="VideoFrameHeight" field="Height" context="Video"/>
<source name="VideoFPS" field="FrameRate" context="Video"/>
<source name="VideoFrameCount" field="FrameCount" context="Video"/>
<source name="PixelAspectRatio" field="PixelAspectRatio" context="Video"/>
<source name="DisplayAspectRatio" field="DisplayAspectRatio" context="Video"/>
<source name="CommonAspectRatio" field="DisplayAspectRatio/String" context="Video"/>
<source name="VideoTagDate" field="Tagged_Date" context="Video"/>
<!-- Audio -->
<source name="AudioStreamCount" field="StreamCount" context="Audio"/>
<source name="AudioLang" field="Language" context="Audio" stream="*"/>
<source name="AudioFormat" field="Format" context="Audio"/>
<source name="AudioBr" field="BitRate" context="Audio"/>
<source name="AudioCodecID" field="CodecID" context="Audio"/>
<source name="AudioBrMode" field="BitRate_Mode" context="Audio"/>
<source name="AudioSamplingRate" field="SamplingRate" context="Audio"/>
<source name="AudioChannels" field="Channel(s)" context="Audio"/>
<source name="AudioResolution" field="BitDepth" context="Audio"/>
<source name="AudioFormatSettingsMode" field="Format_Settings_Mode" context="Audio"/>
<source name="AudioTagDate" field="Tagged_Date" context="Audio"/>
<!-- Text -->
<source name="TextStreamCount" field="StreamCount" context="Audio"/>
<source name="TextLang" field="Language" context="Text" stream="*"/>
<source name="TextFormat" field="Format" context="Text"/>
</sources>
<columns>
<!-- General -->
<column name="Duration">
<unit name="hh:mm:ss" type="script">Output:=TimingFormat('%hh:%mm:%ss', Duration);</unit>
<unit name="hh:mm:ss.fff" type="script">Output:=TimingFormat('%hh:%mm:%ss.%fff', Duration);</unit>
<unit name="s" type="script">Output:=Trunc(Duration/1000);</unit>
<unit name="z">Duration</unit>
<unit name="Custom" type="script">
<![CDATA[
Output:='';
if Duration = '' then Exit;
Hour:=Trunc(Duration/3600000);
Min:=Trunc((Duration-Hour*3600000)/60000);
Sec:=Trunc((Duration-Hour*3600000-Min*60000)/1000);
if (Hour <> 0) then Output:=IntToStr(Hour)+' hr ';
if (Min <> 0) then Output:=Output+IntToStr(Min) +' min ';
if (Sec <> 0) then Output:=Output+IntToStr(Sec) +' sec ';
]]>
</unit>
</column>
<column name="Format">GeneralFormat</column>
<column name="Bitrate">
<unit name="Bps">OverallBitRate</unit>
<unit name="KBps" type="script">Output:=Format('%f', OverallBitRate/1000);</unit>
<unit name="MBps" type="script">Output:=Format('%f', OverallBitRate/1000000);</unit>
</column>
<column name="Encoded Date" coltype="ft_datetime">EncDate</column>
<column name="Tagged Date" coltype="ft_datetime">TagDate</column>
<column name="Stream Count">
<unit name="All streams">StreamCount</unit>
<unit name="Audio only">AudioStreamCount</unit>
<unit name="Subtitles only">TextStreamCount</unit>
</column>
<separator/>
<!-- Tag info -->
<column name="Title">Title</column>
<column name="Album">Album</column>
<column name="Performer">Performer</column>
<column name="Copyright">Copyright</column>
<column name="Comment">Comment</column>
<column name="Composer">Composer</column>
<column name="Genre">Genre</column>
<column name="Track Number">TrackNumber</column>
<column name="Medium">Medium</column>
<column name="Source">Source</column>
<column name="Encoded With">EncodedWith</column>
<separator/>
<!-- Video -->
<column name="Video Format">VideoFormat</column>
<column name="Video Codec">VideoCodecID</column> <!-- For AVI this field return FOURCC -->
<column name="Video Bitrate">
<unit name="Bps">VideoBr</unit>
<unit name="KBps" type="script">Output:=Format('%f', VideoBr/1000);</unit>
<unit name="MBps" type="script">Output:=Format('%f', VideoBr/1000000);</unit>
</column>
<column name="Frame Size" type="script">
<![CDATA[
if (VideoFrameWidth = '') and (VideoFrameHeight = '') then
Output:=''
else
Output:=VideoFrameWidth+' x '+VideoFrameHeight;
]]>
</column>
<column name="Frame Rate">VideoFPS</column>
<column name="Frame Count">VideoFrameCount</column>
<column name="Pixel aspect ratio">PixelAspectRatio</column>
<column name="Display aspect ratio">DisplayAspectRatio</column>
<column name="Common aspect ratio">CommonAspectRatio</column>
<column name="Video Tagged Date" coltype="ft_datetime">VideoTagDate</column>
<column name="All video as string" type="script">
<![CDATA[
if (VideoFrameWidth = '') and (VideoFrameHeight = '') then
Output:=''
else
Output:=VideoFrameWidth+'x'+VideoFrameHeight;
if (VideoFPS <> '') then Output:=Output+', '+VideoFPS+' fps';
if (VideoFormat <> '') then Output:=Output+', '+VideoFormat;
]]>
</column>
<separator/>
<!-- Audio -->
<column name="Audio Language">AudioLang</column>
<column name="Audio Format">AudioFormat</column>
<column name="Audio Bitrate">
<unit name="Bps">AudioBr</unit>
<unit name="KBps" type="script"><![CDATA[if (AudioBr <> '') then Output:=Format('%f', AudioBr/1000);]]></unit>
</column>
<column name="Bitrate Mode">AudioBrMode</column>
<column name="Sampling Rate">AudioSamplingRate</column>
<column name="Channels">AudioChannels</column>
<column name="Resolution">AudioResolution</column>
<column name="All audio as string" type="script">
<![CDATA[
Output:='';
if (AudioBrMode <> '') then
begin
Output:=AudioBrMode;
if (AudioBr <> '') then Output:=Output+'@'+Format('%d kbps', Trunc(AudioBr/1000));
end
else
if (AudioBr <> '') then Output:=Format('%d kbps', Trunc(AudioBr/1000));
if (AudioSamplingRate <> '') then Output:=Output+', '+AudioSamplingRate+'Hz';
if (AudioResolution <> '') then Output:=Output+', '+AudioResolution+'bit';
if (AudioFormatSettingsMode <> '') then
Output:=Output+', '+AudioFormatSettingsMode
else
if (AudioChannels <> '') then
case AudioChannels of
1: Output:=Output+', Mono';
2: Output:=Output+', Stereo';
end;
]]>
</column>
<column name="Audio Tagged Date" coltype="ft_datetime">AudioTagDate</column>
<separator/>
<!-- Subtitles -->
<column name="Subtitles">TextLanguage</column>
<column name="Subtitles Format">TextFormat</column>
<separator/>
<!-- Almost demo purpose, retrieve custom values from lists -->
<column name="Video codec custom" type="list" list="VideoCodecs">VideoCodecID</column>
<column name="Audio codec custom" type="script">Output:=GetListValue('AudioCodecs', Format('%4.4d', AudioCodecID), AudioCodecID);</column>
</columns>
<lists>
<list name="VideoCodecs" type="ini" file="Codecs.cfg" section="VIDEO"/>
<list name="AudioCodecs" type="ini" file="Codecs.cfg" section="AUDIO"/>
</lists>
<listeroptions>
<!-- Temporary! This options will be changed! -->
<FontName>Courier New</FontName>
<FontSize>12</FontSize>
</listeroptions>
</tcmediainfo>
Code: Select all
18=%COMMANDER_PATH%\wdx\TCMediaInfo\TCMediaInfo.wdx
18_detect=MULTIMEDIA & FORCE | (EXT="AVI" | EXT="DIVX" | EXT="MPEG"| EXT="MPE" | EXT="MPA" | EXT="MPG" | EXT="ASF" | EXT="VOB" | EXT="MKV" | EXT="OGM" | EXT="MP1" |EXT="MP2" | EXT="MP3" | EXT="MP4"| EXT="M4A" | EXT="M4V" | EXT="AVC" | EXT="WAV" | EXT="AIFF" | EXT="OGG" | EXT="WMA" | EXT="WMV" | EXT="MOV" | EXT="QT" | EXT="AC3" | EXT="DTS" | EXT="AU" | EXT="D2V" | EXT="RA" | EXT="RM" | EXT="RAM" | EXT="APE" | EXT="FLAC" | EXT="FLV" | EXT="JPG" | EXT="JPEG" | EXT="GIF" | EXT="PNG")
here's a screen shot Image: http://i.imgur.com/kqXjr4V.png
Tbeu it's great i always dreamed of a Explorer Shell extension for this and it works nicely though the first try i did showed some bug with the content plugintbeu wrote:Updated archive contains v0.7.61 of Mediainfo.dll.
Download: wdx_mediainfo.rar (x86/x86-64) (C++ sources included)
for .ts Mpeg-2 it outputs as string just "2" for [=mediainfo.video codec]

i keep on testing the other fields

Updated archive contains v0.7.62 of Mediainfo.dll.
Download: wdx_mediainfo.rar (x86/x86-64) (C++ sources included)
Download: wdx_mediainfo.rar (x86/x86-64) (C++ sources included)
TC plugins: Autodesk 3ds Max / Inventor / Revit Preview, FileInDir, ImageMetaData (JPG Comment/EXIF/IPTC/XMP), MATLAB MAT-file Viewer, Mover, SetFolderDate, Solid Edge Preview, Zip2Zero and more
Updated archive contains v0.7.64 of Mediainfo.dll.
Download: wdx_mediainfo.rar (x86/x86-64) (C++ sources included)
Download: wdx_mediainfo.rar (x86/x86-64) (C++ sources included)
TC plugins: Autodesk 3ds Max / Inventor / Revit Preview, FileInDir, ImageMetaData (JPG Comment/EXIF/IPTC/XMP), MATLAB MAT-file Viewer, Mover, SetFolderDate, Solid Edge Preview, Zip2Zero and more
Updated archive contains v0.7.67 of Mediainfo.dll.
Download: wdx_mediainfo.rar (x86/x86-64) (C++ sources included)
Download: wdx_mediainfo.rar (x86/x86-64) (C++ sources included)
Updated archive contains v0.7.69 of Mediainfo.dll.
Download: wdx_mediainfo.rar (x86/x86-64) (C++ sources included)
Download: wdx_mediainfo.rar (x86/x86-64) (C++ sources included)
Update to MediaInfo v0.7.70
Updated archive contains v0.7.70 of Mediainfo.dll.
Download: wdx_mediainfo.rar (x86/x86-64) (C++ sources included)
Download: wdx_mediainfo.rar (x86/x86-64) (C++ sources included)
TC plugins: Autodesk 3ds Max / Inventor / Revit Preview, FileInDir, ImageMetaData (JPG Comment/EXIF/IPTC/XMP), MATLAB MAT-file Viewer, Mover, SetFolderDate, Solid Edge Preview, Zip2Zero and more
iana Are you still using this plugin as a lister? I installed version 0.74beta with MediaInfo.dll 0.7.69, it appears to work correctly as wdx and and as a lister, but the listed fields do not match the picture you posted. What do I need to do? I merged in your TCMediaInfo.xml quoted above (post) - paying attention not to undo the newer edits coming from version 0.74beta - and added the plugin to [ListerPlugins] and restarted TC. Press F3 on an MP3 file and lister lists the tags, but like I said some of the fields from TCMediaInfo.xml aren't showing. In another post you mentioned an ini file, TCMediaInfo.ini - what is it? Do I need it? Would you please upload your .xml and .ini file? Thank you in advance.iana wrote:@Moon I finally installed and tested loopback's lister interface off the 0.71 version of the wdx and it works fine, this is the TCMediaInfo.xml I use: ...
here's a screen shot Image: http://i.imgur.com/kqXjr4V.png
yes I am.
I am using the updated version 0.74 with mediainfo.dll 0.70, one of the reasons I like that plugin is it's extendability.
It's late and my response might not be the best but let's try it.
For the plugin to work properly you need to set a few things.
#1 edit TCMediaInfo.xml to support the formats you want (the ini file was for the old alpha wlx version, that one has been merged with the wdx to form 1 plugin if you are not using the wlxMediaInfo.wlx you only need to configure the xml).
#2 you need to edit wincmd.ini so it will load TCMediaInfo.wdx when viewing mp3(or mp4 etc) files, you can use a text editor or you can use Alexey's Plugin manager, I have this line in wincmd.ini
17=%COMMANDER_PATH%\wdx\TCMediaInfo\TCMediaInfo.wdx
17_detect=MULTIMEDIA & FORCE | (EXT="AVI" | EXT="DIVX" | EXT="MPEG"| EXT="MPE" | EXT="MPA" | EXT="MPG" | EXT="ASF" | EXT="VOB" | EXT="MKV" | EXT="OGM" | EXT="MP1" |EXT="MP2" | EXT="MP3" | EXT="MP4"| EXT="M4A" | EXT="M4V" | EXT="AVC" | EXT="WAV" | EXT="AIFF" | EXT="OGG" | EXT="WMA" | EXT="WMV" | EXT="MOV" | EXT="QT" | EXT="AC3" | EXT="DTS" | EXT="AU" | EXT="D2V" | EXT="RA" | EXT="RM" | EXT="RAM" | EXT="APE" | EXT="FLAC" | EXT="FLV" | EXT="JPG" | EXT="JPEG" | EXT="GIF" | EXT="PNG")
it loads not only video and audio files but a few image formats, as far as I can tell you can even use it for pe files (exe/dll).
Here's a few screen shots.
#1 my xml config Image: http://i.imgur.com/wxjIuub.jpg
#2 a screenshot of plugin managers supported formats Image: http://i.imgur.com/VediUHP.jpg
3# a screen of lister using the wdx to view mp3 info Image: http://i.imgur.com/RGaJEkR.png
as I said the ini was for the old wlx plugin that has been abandoned, but here is the xml I currently use (I think I edited it when 0.74 came out with, as it had a few new fields)
ps. I notice the my screenshots are not quite the same, there might be a few reasons for that, the plugin was updated from 0.71 to 0.74, the old was on XP the new is 7 (different font and theme) etc.
I am using the updated version 0.74 with mediainfo.dll 0.70, one of the reasons I like that plugin is it's extendability.
It's late and my response might not be the best but let's try it.
For the plugin to work properly you need to set a few things.
#1 edit TCMediaInfo.xml to support the formats you want (the ini file was for the old alpha wlx version, that one has been merged with the wdx to form 1 plugin if you are not using the wlxMediaInfo.wlx you only need to configure the xml).
#2 you need to edit wincmd.ini so it will load TCMediaInfo.wdx when viewing mp3(or mp4 etc) files, you can use a text editor or you can use Alexey's Plugin manager, I have this line in wincmd.ini
17=%COMMANDER_PATH%\wdx\TCMediaInfo\TCMediaInfo.wdx
17_detect=MULTIMEDIA & FORCE | (EXT="AVI" | EXT="DIVX" | EXT="MPEG"| EXT="MPE" | EXT="MPA" | EXT="MPG" | EXT="ASF" | EXT="VOB" | EXT="MKV" | EXT="OGM" | EXT="MP1" |EXT="MP2" | EXT="MP3" | EXT="MP4"| EXT="M4A" | EXT="M4V" | EXT="AVC" | EXT="WAV" | EXT="AIFF" | EXT="OGG" | EXT="WMA" | EXT="WMV" | EXT="MOV" | EXT="QT" | EXT="AC3" | EXT="DTS" | EXT="AU" | EXT="D2V" | EXT="RA" | EXT="RM" | EXT="RAM" | EXT="APE" | EXT="FLAC" | EXT="FLV" | EXT="JPG" | EXT="JPEG" | EXT="GIF" | EXT="PNG")
it loads not only video and audio files but a few image formats, as far as I can tell you can even use it for pe files (exe/dll).
Here's a few screen shots.
#1 my xml config Image: http://i.imgur.com/wxjIuub.jpg
#2 a screenshot of plugin managers supported formats Image: http://i.imgur.com/VediUHP.jpg
3# a screen of lister using the wdx to view mp3 info Image: http://i.imgur.com/RGaJEkR.png
as I said the ini was for the old wlx plugin that has been abandoned, but here is the xml I currently use (I think I edited it when 0.74 came out with, as it had a few new fields)
Code: Select all
<?xml version="1.0" encoding="UTF-8"?>
<tcmediainfo>
<options>
<Formats>AVI,DIVX,MPEG,MPE,MPA,DAT,MPG,ASF,VOB,MKV,OGM,WEBM,MP1,MP2,MP3,MP4,M4A,M4V,AVC,FLV,3GP,TS,WAV,AIFF,OGG,WMA,MOV,WMV,QT,AC3,DTS,AU,D2V,RA,RM,APE,FLAC,JPG,JPEG,GIF,PNG,WEBP</Formats>
<MultiSeparator> / </MultiSeparator>
<BasePath>base.db</BasePath>
<MemoryBase>False</MemoryBase>
<UseBase>True</UseBase>
<SqlitePath>Sqlite3.dll</SqlitePath>
<Sqlite64Path>Sqlite3_x64.dll</Sqlite64Path>
<MediaInfoPath>MediaInfo.dll</MediaInfoPath>
<MediaInfo64Path>MediaInfo_x64.dll</MediaInfo64Path>
<MissedField><empty></MissedField>
<DebugMode>0</DebugMode>
</options>
<sources>
<!-- General -->
<source name="Duration" field="Duration"/>
<source name="OverallBitRate" field="OverallBitRate"/>
<source name="GeneralFormat" field="Format"/>
<source name="EncDate" field="Encoded_Date"/>
<source name="RecDate" field="Recorded_Date"/>
<source name="TagDate" field="Tagged_Date"/>
<source name="StreamCount" field="StreamCount"/>
<!-- Tag info -->
<source name="Title" field="Title" process="fix_cp"/>
<source name="Album" field="Album" process="fix_cp"/>
<source name="Performer" field="Performer" process="fix_cp"/>
<source name="Copyright" field="Copyright" process="fix_cp"/>
<source name="Comment" field="Comment" process="fix_cp"/>
<source name="Composer" field="Composer" process="fix_cp"/>
<source name="Genre" field="Genre"/>
<source name="TrackNumber" field="Track/Position"/>
<source name="Medium" field="OriginalSourceMedium"/>
<source name="Source" field="OriginalSourceForm"/>
<source name="EncodedWith" field="Encoded_Application"/>
<!-- Video -->
<source name="VideoFormat" field="Format" context="Video"/>
<source name="VideoBr" field="BitRate" context="Video"/>
<source name="VideoCodecID" field="CodecID" context="Video"/>
<source name="VideoFrameWidth" field="Width" context="Video"/>
<source name="VideoFrameHeight" field="Height" context="Video"/>
<source name="VideoFPS" field="FrameRate" context="Video"/>
<source name="VideoFrameCount" field="FrameCount" context="Video"/>
<source name="PixelAspectRatio" field="PixelAspectRatio" context="Video"/>
<source name="DisplayAspectRatio" field="DisplayAspectRatio" context="Video"/>
<source name="CommonAspectRatio" field="DisplayAspectRatio/String" context="Video"/>
<source name="VideoTagDate" field="Tagged_Date" context="Video"/>
<!-- Audio -->
<source name="AudioStreamCount" field="StreamCount" context="Audio"/>
<source name="AudioLang" field="Language" context="Audio" stream="*"/>
<source name="AudioFormat" field="Format" context="Audio"/>
<source name="AudioBr" field="BitRate" context="Audio"/>
<source name="AudioCodecID" field="CodecID" context="Audio"/>
<source name="AudioBrMode" field="BitRate_Mode" context="Audio"/>
<source name="AudioSamplingRate" field="SamplingRate" context="Audio"/>
<source name="AudioChannels" field="Channel(s)" context="Audio"/>
<source name="AudioResolution" field="BitDepth" context="Audio"/>
<source name="AudioFormatSettingsMode" field="Format_Settings_Mode" context="Audio"/>
<source name="AudioTagDate" field="Tagged_Date" context="Audio"/>
<!-- Text -->
<source name="TextStreamCount" field="StreamCount" context="Audio"/>
<source name="TextLang" field="Language" context="Text" stream="*"/>
<source name="TextFormat" field="Format" context="Text"/>
</sources>
<columns>
<!-- General -->
<column name="Duration">
<unit name="hh:mm:ss" type="script">Output:=TimingFormat('%hh:%mm:%ss', Duration);</unit>
<unit name="hh:mm:ss.fff" type="script">Output:=TimingFormat('%hh:%mm:%ss.%fff', Duration);</unit>
<unit name="s" type="script">Output:=Trunc(Duration/1000);</unit>
<unit name="z">Duration</unit>
<unit name="Custom" type="script">
<![CDATA[
Output:='';
if Duration = '' then Exit;
Hour:=Trunc(Duration/3600000);
Min:=Trunc((Duration-Hour*3600000)/60000);
Sec:=Trunc((Duration-Hour*3600000-Min*60000)/1000);
if (Hour <> 0) then Output:=IntToStr(Hour)+' hr ';
if (Min <> 0) then Output:=Output+IntToStr(Min) +' min ';
if (Sec <> 0) then Output:=Output+IntToStr(Sec) +' sec ';
]]>
</unit>
</column>
<column name="Format">GeneralFormat</column>
<column name="Bitrate">
<unit name="Bps">OverallBitRate</unit>
<unit name="KBps" type="script">Output:=Format('%f', OverallBitRate/1000);</unit>
<unit name="MBps" type="script">Output:=Format('%f', OverallBitRate/1000000);</unit>
</column>
<column name="Encoded Date" coltype="ft_datetime">EncDate</column>
<column name="Recorded Date" coltype="ft_datetime">RecDate</column>
<column name="Tagged Date" coltype="ft_datetime">TagDate</column>
<column name="Stream Count">
<unit name="All streams">StreamCount</unit>
<unit name="Audio only">AudioStreamCount</unit>
<unit name="Subtitles only">TextStreamCount</unit>
</column>
<separator/>
<!-- Tag info -->
<column name="Title">Title</column>
<column name="Album">Album</column>
<column name="Performer">Performer</column>
<column name="Copyright">Copyright</column>
<column name="Comment">Comment</column>
<column name="Composer">Composer</column>
<column name="Genre">Genre</column>
<column name="Track Number">TrackNumber</column>
<column name="Medium">Medium</column>
<column name="Source">Source</column>
<column name="Encoded With">EncodedWith</column>
<separator/>
<!-- Video -->
<column name="Video Format">VideoFormat</column>
<column name="Video Codec">VideoCodecID</column> <!-- For AVI this field return FOURCC -->
<column name="Video Bitrate">
<unit name="Bps">VideoBr</unit>
<unit name="KBps" type="script">Output:=Format('%f', VideoBr/1000);</unit>
<unit name="MBps" type="script">Output:=Format('%f', VideoBr/1000000);</unit>
</column>
<column name="Frame Size" type="script">
<![CDATA[
if (VideoFrameWidth = '') and (VideoFrameHeight = '') then
Output:=''
else
Output:=VideoFrameWidth+' x '+VideoFrameHeight;
]]>
</column>
<column name="Frame Rate">VideoFPS</column>
<column name="Frame Count">VideoFrameCount</column>
<column name="Pixel aspect ratio">PixelAspectRatio</column>
<column name="Display aspect ratio">DisplayAspectRatio</column>
<column name="Common aspect ratio">CommonAspectRatio</column>
<column name="Video Tagged Date" coltype="ft_datetime">VideoTagDate</column>
<column name="All video as string" type="script">
<![CDATA[
if (VideoFrameWidth = '') and (VideoFrameHeight = '') then
Output:=''
else
Output:=VideoFrameWidth+'x'+VideoFrameHeight;
if (VideoFPS <> '') then Output:=Output+', '+VideoFPS+' fps';
if (VideoFormat <> '') then Output:=Output+', '+VideoFormat;
]]>
</column>
<separator/>
<!-- Audio -->
<column name="Audio Language">AudioLang</column>
<column name="Audio Format">AudioFormat</column>
<column name="Audio Bitrate">
<unit name="Bps">AudioBr</unit>
<unit name="KBps" type="script"><![CDATA[if (AudioBr <> '') then Output:=Format('%f', AudioBr/1000);]]></unit>
</column>
<column name="Bitrate Mode">AudioBrMode</column>
<column name="Sampling Rate">AudioSamplingRate</column>
<column name="Channels">AudioChannels</column>
<column name="Resolution">AudioResolution</column>
<column name="All audio as string" type="script">
<![CDATA[
Output:='';
if (AudioBrMode <> '') then
begin
Output:=AudioBrMode;
if (AudioBr <> '') then Output:=Output+'@'+Format('%d kbps', Trunc(AudioBr/1000));
end
else
if (AudioBr <> '') then Output:=Format('%d kbps', Trunc(AudioBr/1000));
if (AudioSamplingRate <> '') then Output:=Output+', '+AudioSamplingRate+'Hz';
if (AudioResolution <> '') then Output:=Output+', '+AudioResolution+'bit';
if (AudioFormatSettingsMode <> '') then
Output:=Output+', '+AudioFormatSettingsMode
else
if (AudioChannels <> '') then
case AudioChannels of
1: Output:=Output+', Mono';
2: Output:=Output+', Stereo';
end;
]]>
</column>
<column name="Audio Tagged Date" coltype="ft_datetime">AudioTagDate</column>
<separator/>
<!-- Subtitles -->
<column name="Subtitles">TextLanguage</column>
<column name="Subtitles Format">TextFormat</column>
<separator/>
<!-- Almost demo purpose, retrieve custom values from lists -->
<column name="Video codec custom" type="list" list="VideoCodecs">VideoCodecID</column>
<column name="Audio codec custom" type="script">Output:=GetListValue('AudioCodecs', Format('%4.4d', AudioCodecID), AudioCodecID);</column>
</columns>
<lists>
<list name="VideoCodecs" type="ini" file="Codecs.cfg" section="VIDEO"/>
<list name="AudioCodecs" type="ini" file="Codecs.cfg" section="AUDIO"/>
</lists>
<listeroptions>
<display>
<Background color="16777215"/>
<HeaderFont color="0" name="Courier New" size="17" style="1"/>
<FieldFont color="8421504" name="Courier New" size="13" style="1"/>
<InfoFont color="0" name="Courier New" size="13" style="0"/>
<LineHeight>0</LineHeight>
<SeparatorPos>300</SeparatorPos>
</display>
<views>
<view name="Simple">
<![CDATA[
LineAddHeader(GetName('General'));
Title:=Get('Title');
if Title <> '' then LineAddText(GetName('Title'), FixCP(Get('Title')));
// AddCheck('Title', 'General');
fmt:=GetC('Format', 'General', 0) + GetB('Format_Profile', 'General', 0) + Get('Duration/String1');
LineAddText(GetName('Format'), fmt);
AddCheck('OverallBitRate/String', 'General');
AddCheck('Encoded_Date', 'General');
AddCheck('Recorded_Date', 'General');
if GetCount('Video') > 0 then
begin
LineAddHeader(GetName('Video'));
for i:=0 to GetCount('Video')-1 do
begin
Stream:=i;
stream:=GetC('Language/String', 'Video', i) +
GetC('BitRate/String', 'Video', i) +
Get('Width', 'Video', i) + 'x' + Get('Height', 'Video', i) + ' ' +
GetB('DisplayAspectRatio/String', 'Video', i) +
GetC('FrameRate/String', 'Video', i) +
Get('Format', 'Video', i) + ' ' +
GetB('Format_Profile', 'Video', i);
LineAddText('Stream '+IntToStr(i), stream);
end;
end;
if GetCount('Audio') > 0 then
begin
LineAddHeader(GetName('Audio'));
for i:=0 to GetCount('Audio')-1 do
begin
stream:=GetC('Language/String', 'Audio', i) +
GetC('BitRate/String', 'Audio', i) +
GetC('SamplingRate/String', 'Audio', i) +
GetC('Channel(s)/String', 'Audio', i) +
Get('Format', 'Audio', i) + ' ' +
GetB('Format_Profile', 'Audio', i);
LineAddText('Stream '+IntToStr(i), stream);
end;
end;
if GetCount('Text') > 0 then
begin
LineAddHeader(GetName('Text'));
for i:=0 to GetCount('Text')-1 do
begin
stream:=GetC('Language/String', 'Text', i) +
GetC('BitRate/String', 'Text', i) +
Get('Format', 'Text', i);
LineAddText('Stream '+IntToStr(i), stream);
end;
end;
procedure AddCheck(Field, Context);
begin
R:=Get(Field, Context);
if R = '' then Exit;
LineAddField(Field, Context);
end;
function GetC(Field, Context, Stream);
begin
Result:=Get(Field, Context, Stream);
if Result = '' then Exit;
Result:=Result+', ';
end;
function GetB(Field, Context, Stream);
begin
Result:=Get(Field, Context, Stream);
if Result = '' then Exit;
Result:='('+Result+'), ';
end;
]]>
</view>
<view name="Splitted long lines (test)">
<![CDATA[
LineAddHeader(GetName('General'));
// split possible long filename
Name:=GetName('CompleteName');
Info:=Get('CompleteName');
LineAddSplit(Name, Info, ' ', 80);
Title:=Get('Title');
if Title <> '' then LineAddText(GetName('Title'), FixCP(Get('Title')));
LineAddField('OverallBitRate/String');
LineAddField('Duration');
LineAddHeader(GetName('Video'));
// split complete name
Name:=GetName('Encoded_Library_Settings', 'Video');
Info:=Get('Encoded_Library_Settings', 'Video');
LineAddSplit(Name, Info, ' ', 80);
procedure LineAddSplit(name, line, char, max);
begin
while StrLen(line) > 0 do
begin
str:=StrLeft(line, max);
for i:=max downto 0 do
begin
if StrMid(line, i, 1) = char then Break;
end;
if i = 0 then
begin
part:=StrMid(line, 1, max);
line:=StrMid(line, max + 1);
end
else
begin
part:=StrMid(line, 1, i-1);
line:=StrMid(line, i+1);
end;
LineAddText(name, part);
if (name <> '') then name:='';
end;
end;
]]>
</view>
<view name="Raw info">
<![CDATA[
LineAddHeader('General');
Fill('General');
LineAddHeader('Video');
Fill('Video');
LineAddHeader('Audio');
Fill('Audio');
LineAddHeader('Text');
Fill('Text');
LineAddHeader('Other');
Fill('Other');
LineAddHeader('Image');
Fill('Image');
LineAddHeader('Menu');
Fill('Menu');
procedure Fill(C);
begin
F:=FieldGetFirst(C);
LineAddField(F, C);
while F <> '' do
begin
F:=FieldGetNext;
if F = '' then Continue;
if F = 'Inform' then Continue;
if StrPos(F, '/') then Continue;
R:=Get(F, C);
LineAddText(F, R);
end;
end;
]]>
</view>
<view name="Translation of fields">
<![CDATA[
LineAddHeader('General');
Fill('General');
LineAddHeader('Video');
Fill('Video');
LineAddHeader('Audio');
Fill('Audio');
LineAddHeader('Text');
Fill('Text');
LineAddHeader('Other');
Fill('Other');
LineAddHeader('Image');
Fill('Image');
LineAddHeader('Menu');
Fill('Menu');
procedure Fill(C);
begin
F:=FieldGetFirst(C);
LineAddField(F, C);
while F <> '' do
begin
F:=FieldGetNext;
if F = '' then Continue;
if F = 'Inform' then Continue;
if StrPos(F, '/') then Continue;
R:=Get(F, C);
LineAddText(F, GetName(F, C));
end;
end;
]]>
</view>
</views>
<ViewMode>Default</ViewMode>
<Language></Language>
</listeroptions>
</tcmediainfo>
Hi iana. I agree, it's a flexible plugin. I'm using version 0.74 with mediainfo 0.70 on XP. Thanks for posting your xml. F3 works fine now for most formats except mkv. If I press F3 on an mkv file I get the standard TC viewer in IE mode and a download file dialog (for a local file). Very weird. By contrast, pressing F3 on an avi or mp4 etc. file shows the mediainfo information correctly. Anyway, I can live with this weird issue, I'll get to it when I'll get to it.
I've newer had this problem, on the other hand what ie plugin are you using, ieview has been abandoned you should try HTMLView http://sites.google.com/site/htmlview/F3 works fine now for most formats except mkv. If I press F3 on an mkv file I get the standard TC viewer in IE mode and a download file dialog (for a local file).
I'm not sure why htmlview is not on totalcmd.net
I have issues with archview loading on mkv files.
Update to MediaInfo v0.7.71
Updated archive contains v0.7.71 of Mediainfo.dll.
Download: wdx_mediainfo.rar (x86/x86-64) (C++ sources included)
Download: wdx_mediainfo.rar (x86/x86-64) (C++ sources included)
TC plugins: Autodesk 3ds Max / Inventor / Revit Preview, FileInDir, ImageMetaData (JPG Comment/EXIF/IPTC/XMP), MATLAB MAT-file Viewer, Mover, SetFolderDate, Solid Edge Preview, Zip2Zero and more
2tbeu
Thanks for your awesome job, new version works well as before. But why not add a version number in the filename? I have several wdx_mediainfo, often have to recognize them by their file date.
By the way, why not put this plugin to totalcmd.net? Some months before, i wanted to update my wdx_mediainfo, then found MediaInfoWDX in totalcmd.net, i thought they were the same plugin, then i downloaded it and tried again and again for half a day, it finally confused me and thus situation continued for long time.
Thanks for your awesome job, new version works well as before. But why not add a version number in the filename? I have several wdx_mediainfo, often have to recognize them by their file date.
By the way, why not put this plugin to totalcmd.net? Some months before, i wanted to update my wdx_mediainfo, then found MediaInfoWDX in totalcmd.net, i thought they were the same plugin, then i downloaded it and tried again and again for half a day, it finally confused me and thus situation continued for long time.