Домашний медиа-сервер (UPnP, DLNA, HTTP) Домашний медиа-сервер (UPnP, DLNA, HTTP) Домашний медиа-сервер (UPnP, DLNA, HTTP)
Главная Решения пользователей программы "Домашний медиа-сервер (UPnP, DLNA, HTTP)"
 
Текущее время: Вс сен 26, 2021 2:34 am

Часовой пояс: UTC+03:00




Начать новую тему  Ответить на тему  [ 3 сообщения ] 
Автор Сообщение
СообщениеДобавлено: Пн дек 17, 2012 9:44 am 
Не в сети

Зарегистрирован: Вт сен 16, 2008 7:30 pm
Сообщения: 2782
Данная функция и класс могут быть полезны для чтения свойств файлов, которые программа не обрабатывает по-умолчанию, например, в событии "После чтения свойств медиа-ресурса".

Пример отображает список тегов текущего медиа-ресурса в списке фильмов, музыки, фото.

Настройки - Обработка - Добавить
Название: Список тегов
Включить "Кнопка на главной форме"
Скрипт:
Код:
var
  FileTags: THmsScriptFileTags;
  TextTags: TStringList; 
  i: Integer; 
  sProviderName, sValue: string;   
begin
  if InputQuery('Провайдер тегов', 'Exif, FFmpeg, MediaInfo, Shell, Hms, Xmp', sProviderName) then begin
    FileTags := HmsCreateMediaItemTags(sProviderName, HmsCurrentMediaListItem);
    if FileTags <> nil then try
      TextTags := TStringList.Create;
      try           
        for i := 0 to FileTags.GetTagCount - 1 do begin
          sValue := VarToStr(FileTags.GetTagValue(FileTags.GetTagID(i)));
          if (sValue <> '') and (Length(sValue) < 100) then 
            TextTags.Add(Format('%s (%s): %s', [FileTags.GetTagName(i), FileTags.GetTagID(i), sValue]));
        end;     
        ShowMessage(TextTags.Text)
      finally
        TextTags.Free
      end                 
    finally 
      FileTags.Free
    end
  end     
end.


Вернуться к началу
СообщениеДобавлено: Вт дек 18, 2012 6:58 am 
Не в сети

Зарегистрирован: Ср сен 14, 2011 12:06 pm
Сообщения: 224
Давно хотел получить информацию о файле по MediaInfo ,вроде теперь получается ,но скажем высоты и ширины видео в пикселях там нет ,а когда в правом окне программы на файле правой кнопкой-свойство файла MediaInfo -эти параметры есть ,видемо нужен пример для
HmsMediaInfoCreate(const aFilePath: string; const aMediaItemID: string): Boolean

_________________
Моя мультимедия :Телевизор Samsung LE46D550K1, Телефон HTC HD2


Вернуться к началу
СообщениеДобавлено: Вт дек 18, 2012 10:34 am 
Не в сети

Зарегистрирован: Вт сен 16, 2008 7:30 pm
Сообщения: 2782
slawa321 писал(а):
нужен пример для
HmsMediaInfoCreate(const aFilePath: string; const aMediaItemID: string): Boolean

Пример для видео-дорожки (Stream_Video), возможные значения в описании типа TMIStreamKind:
Код:
var
  i, iCount: Integer; 
  sValue: string;
  TextTags: TStringList;     
begin
  if HmsCurrentMediaListItem <> nil then begin
    if HmsMediaInfoCreate('', HmsCurrentMediaListItem.ItemID) then begin
      TextTags := TStringList.Create;
      try
        iCount := HmsMediaInfoGetCount(Stream_Video);
        for i := 0 to iCount - 1 do begin 
          sValue := VarToStr(HmsMediaInfoGetI(Stream_Video, 0, i));
          if (sValue <> '') and (Length(sValue) < 100) then 
            TextTags.Add(Format('%s (%s): %s', [
               HmsMediaInfoGetI(Stream_Video, 0, i, Info_Name_Text),
               HmsMediaInfoGetI(Stream_Video, 0, i, Info_Name), sValue]));
        end;   
        ShowMessage(TextTags.Text)
      finally
        TextTags.Free
      end                 
    end
  end     
end.


Вернуться к началу
Показать сообщения за:  Поле сортировки  
Начать новую тему  Ответить на тему  [ 3 сообщения ] 

Часовой пояс: UTC+03:00


Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и 1 гость


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Перейти:  
Создано на основе phpBB® Forum Software © phpBB Limited
Русская поддержка phpBB