Skif_off
|
Posted: Fri Sep 29, 2017 16:28 Post subject: |
|
|
BeardFury78
Возможно, при перекодировании Rotation теряется, а раз нет, то значение всегда 0.000. Но если "width 302 pixels, height 540 pixels", то в качестве условия можно принять, что если ширина меньше высоты - видео вертикальное.
Какую версию ТС вы используете - х32, х64 или х32+х64?
Добавлено спустя 15 минут:
Хм, если не изменяет память, TCMediaInfo получает всю прописанную в свойм конфиге информацию о файле сразу за раз (к тому же иначе использование базы становится несколько бессмысленным), тогда убираете всё, что добавляли в TCMediaInfo.xml и делаем заново:
- в <sources></sources> перед строкой <!-- Audio --> добавляете
Code: | <source name="Rotation" field="Rotation" context="Video"/> |
- в <columns></columns> перед строками
Code: | <separator/>
<!-- Audio --> |
дописываете
Code: | <column name="Rotation" type="script">
<![CDATA[
if (Rotation <> '0.000') then
Output:='Achtung!';
else
if (VideoFrameWidth > VideoFrameHeight) then
Output:='Achtung!';
else
Output:='';
]]>
</column> |
Т.е. если Rotation в файле прописан и не равен 0, то предполагается, что видео не обычное горизонтальное, если же равен 0, то проверяем ширину и высоту: если первая больше второй - видео не обычное горизонтальное.
Ну, "Achtung!" замените на что-нибудь удобнее, взял от балды.
Если не сработает, то можно попробовать провернуть то же самое, но с WinScript Advanced и AutoIt, дёргая MediaInfo.dll напрямую. |
|