Контент видеороликов

Работа с файлами и базами данных
Kvanto

Activity Bronze Автор
VIP
VIP
Сообщения: 414
Зарегистрирован: 26 янв 2011, 17:56
Награды: 3
Версия LabVIEW: 10.0

Контент видеороликов

Сообщение Kvanto »

Стоит задача создания приложения, в котором можно было бы выбирать один из предложенных видеороликов, либо
подгружать свой, а затем просматривать его. Просмотр должен осуществляться в полноэкранном режиме, т.е. видимо требуется
использование какого-то проигрывателя. Какие средства LV помогут это реализовать?
Аватара пользователя
Pavel Krivozubov

Activity Bronze
professor
professor
Сообщения: 4421
Зарегистрирован: 07 фев 2008, 16:39
Награды: 3
Версия LabVIEW: 7.0 - 2013
Откуда: г. Электросталь
Благодарил (а): 24 раза
Поблагодарили: 9 раз
Контактная информация:

Re: Контент видеороликов

Сообщение Pavel Krivozubov »

AndreyDmitriev

Activity Professionalism Tutorials Gold Black
VIP
VIP
Сообщения: 1337
Зарегистрирован: 03 фев 2010, 00:42
Награды: 6
Версия LabVIEW: 6.1 - 2024
Откуда: Германия
Благодарил (а): 1 раз
Поблагодарили: 44 раза
Контактная информация:

Re: Контент видеороликов

Сообщение AndreyDmitriev »

Ну или вот (что почти тоже самое, что и выше)
https://decibel.ni.com/content/docs/DOC-25131

Ну и поиск, конечно
http://lmgtfy.com/?q=how+to+play+video+ ... e%3Ani.com
Kvanto

Activity Bronze Автор
VIP
VIP
Сообщения: 414
Зарегистрирован: 26 янв 2011, 17:56
Награды: 3
Версия LabVIEW: 10.0

Re: Контент видеороликов

Сообщение Kvanto »

Pavel Krivozubov писал(а):Может вот:
http://www.labviewportal.org/ru/rabota- ... ---labview
Ну тут Сергей сам только начал разбираться. Пример, который представлен на NI по просмотру видео через WMP
с помощью ActiveX я тоже нашел. Здесь возникает несколько вопросов:

1. как запускать программно просмотр во весь экран?
2. как сохранить границы плеера от автоматического разъезжания в независимости от расширения?
Аватара пользователя
dadreamer

Activity Professionalism Автор
professor
professor
Сообщения: 3926
Зарегистрирован: 17 фев 2013, 16:33
Награды: 4
Версия LabVIEW: 2.5 — 2022
Благодарил (а): 11 раз
Поблагодарили: 127 раз
Контактная информация:

Re: Контент видеороликов

Сообщение dadreamer »

Можно ведь использовать сторонние плееры, просто передать в качестве командной строки путь к файлу и опцию "развернуть на весь экран". Например, у Media Player Classic это опция /fullscreen. Вот ещё ссылка на эту тему.
Kvanto

Activity Bronze Автор
VIP
VIP
Сообщения: 414
Зарегистрирован: 26 янв 2011, 17:56
Награды: 3
Версия LabVIEW: 10.0

Re: Контент видеороликов

Сообщение Kvanto »

dadreamer писал(а):Можно ведь использовать сторонние плееры, просто передать в качестве командной строки путь к файлу и опцию "развернуть на весь экран". Например, у Media Player Classic это опция /fullscreen. Вот ещё ссылка на эту тему.
нашел один вариант из предложенных Андреем ссылок, где fullscreen делается двойным щелчок,
но пока не отыскал свойство, через которое прописывается этот режим.

А куда предложенные команды прописать можно?
Аватара пользователя
dadreamer

Activity Professionalism Автор
professor
professor
Сообщения: 3926
Зарегистрирован: 17 фев 2013, 16:33
Награды: 4
Версия LabVIEW: 2.5 — 2022
Благодарил (а): 11 раз
Поблагодарили: 127 раз
Контактная информация:

Re: Контент видеороликов

Сообщение dadreamer »

Kvanto писал(а):А куда предложенные команды прописать можно?
Просто выполняете через System Exec эту команду, например:

Код: Выделить всё

"C:\Program Files (x86)\Windows Media Player\wmplayer.exe" "C:\Users\Admin\Desktop\WMP\WMP\hst_1.mpg" /fullscreen
или для MPC x64:

Код: Выделить всё

"C:\Program Files\MPC-HomeCinema.1.5.2.3456.x64\mpc-hc64.exe" "C:\Users\Admin\Desktop\WMP\WMP\hst_1.mpg" /fullscreen
Чтобы MPC сразу закрылся после воспроизведения:

Код: Выделить всё

"C:\Program Files\MPC-HomeCinema.1.5.2.3456.x64\mpc-hc64.exe" /play "C:\Users\Admin\Desktop\WMP\WMP\hst_1.mpg" /fullscreen /close
У WMP, к сожалению, нет такой фичи :(
Kvanto

Activity Bronze Автор
VIP
VIP
Сообщения: 414
Зарегистрирован: 26 янв 2011, 17:56
Награды: 3
Версия LabVIEW: 10.0

Re: Контент видеороликов

Сообщение Kvanto »

Нашел несколько примеров, и нашлось свойство fullscreen у WMP, но оно не срабатывает,
у меня отображается ошибка: Catastrophic failure.
В чем может быть дело?

Как-то неудачно построена ActiveX библиотека. Нашел один ActiveX элемент у него и
fullscreen запускается и все хорошо вроде, но любые изменения,
вносимые в VI не могут быть сохранены. :dntknw:
Play_Movie_File_2010_for_portal.vi
(48.11 КБ) 201 скачивание
Event_Case_Selector_2010.ctl
(5.51 КБ) 213 скачиваний
несохраняемый.vi
(15.49 КБ) 203 скачивания
Аватара пользователя
dadreamer

Activity Professionalism Автор
professor
professor
Сообщения: 3926
Зарегистрирован: 17 фев 2013, 16:33
Награды: 4
Версия LabVIEW: 2.5 — 2022
Благодарил (а): 11 раз
Поблагодарили: 127 раз
Контактная информация:

Re: Контент видеороликов

Сообщение dadreamer »

Kvanto, когда вы тему только создали, я натыкался на форуме NI (или на Лаве) на пост Rolf'а, где он писал, что лучше не использовать ActiveX для этих целей, т.к. многие методы не будут работать из-за специфичности окон LabVIEW. Эти окна не являются Windows-окнами, т.е. к ним не применимо большинство свойств и соответствующих функций, можно только узнать хэндл и прочие мелочи. Поэтому COM/ActiveX не может взаимодействовать с тем, что ему непонятно, отсюда и ошибка.

BTW, вот эти сообщения:
http://lavag.org/topic/15673-windows-media-player/ писал(а):Rendering is obviously an issue, but ActiveX is not the solution here, as it is at best a "briccolage" as the French say. The most simple way would involve some copying of the data into a LabVIEW Indicator like the Picture Control. Not ideal in terms of performance but at least doable in any LabVIEW platform without issues about overlapping and such.

I would love to be able to create my own control like the IMAQ control, but alas that is not an option for us mere mortals as it requires to much NI internal only knowledge about LabVIEW.

The second best would be to use a VI panel as a sub panel and reserve the entire VI as render surface. Extract the platform graphics port (HWND on Windows) and pass it to VLC to let it render its output directly into it. there will be issues with overlap of other elements with that Window but ActiveX has that too, and the only way to get that right is to hook into the internal LabVIEW object messaging which is not an option without serious access to at least some parts of the LabVIEW interna.
http://lavag.org/topic/15673-windows-media-player/page-2 писал(а):No VLC could not be aware of anything besides the HWND boundaries at all, since everything inside a VI front panel is LabVIEW specific and not visible to anything that only knows about Windows details. It would be definitely a case of a VI panel being used for nothing else but a HWND container and there is no sensible way of sharing that with any LabVIEW controls or whatsoever in the same Window. It is even worse than that, as VLC can not know if you overlay that panel by something else in LabVIEW.

On the other hand VLC does not have to worry about blitting only within the Windows bounderies as long as it uses GDI or friends for it. Windows will make sure that any blitting will only occur in the window boundary no matter what. That changes of course if VLC would do direct blitting into graphics frame buffers, but as far as I know this is strongly discouraged by Windows and actually made very hard since it requires hardware specific code which is able to deal with various graphics card drivers.
Аватара пользователя
dadreamer

Activity Professionalism Автор
professor
professor
Сообщения: 3926
Зарегистрирован: 17 фев 2013, 16:33
Награды: 4
Версия LabVIEW: 2.5 — 2022
Благодарил (а): 11 раз
Поблагодарили: 127 раз
Контактная информация:

Re: Контент видеороликов

Сообщение dadreamer »

Посмотрел последний пример, действительно работает full screen и всё прекрасно сохраняется. Вот, внёс небольшие изменения:
Вложения
сохраняемый.vi
lv2011
(16.47 КБ) 210 скачиваний
Аватара пользователя
Sergey Ivanov

Activity Professionalism Gold Автор
expert
expert
Сообщения: 1217
Зарегистрирован: 01 мар 2009, 20:54
Награды: 5
Версия LabVIEW: 2018
Откуда: Санкт-Петербург, Кронштадт
Благодарил (а): 11 раз
Поблагодарили: 1 раз
Контактная информация:

Re: Контент видеороликов

Сообщение Sergey Ivanov »

Я открыл "сохраняемый" в :labview: 2012, и сохранить не могу. Или нужна 2011 версия ? Как там сделали окно WMplayer без кнопок пуск , пауза и полосы прокрутки ?
Добро пожаловать на http://rk-stud.ru/
Аватара пользователя
dadreamer

Activity Professionalism Автор
professor
professor
Сообщения: 3926
Зарегистрирован: 17 фев 2013, 16:33
Награды: 4
Версия LabVIEW: 2.5 — 2022
Благодарил (а): 11 раз
Поблагодарили: 127 раз
Контактная информация:

Re: Контент видеороликов

Сообщение dadreamer »

Sergey Ivanov

А что пишет :labview: при сохранении? Может, попробовать переустановить WM Player? У меня и в 2012 нормально сохраняет. При желании можно активировать полосу прокрутки и контролы "play", "pause", "stop". Для этого надо выставить свойства EnableFullScreenControls, ShowControls и ShowTracker (за полосу как раз отвечает) в True, это можно сделать сразу в Property Browser'е при нажатии ПКМ на ActiveX-контроле. За разворот на весь экран отвечает свойство DisplayMode = mpFullScreen.
Вложения
сохраняемый.vi
lv2012
(16.43 КБ) 213 скачиваний
Аватара пользователя
Sergey Ivanov

Activity Professionalism Gold Автор
expert
expert
Сообщения: 1217
Зарегистрирован: 01 мар 2009, 20:54
Награды: 5
Версия LabVIEW: 2018
Откуда: Санкт-Петербург, Кронштадт
Благодарил (а): 11 раз
Поблагодарили: 1 раз
Контактная информация:

Re: Контент видеороликов

Сообщение Sergey Ivanov »

изменив и нажав "сохранить" появляется такое окно:
1.PNG
1.PNG (12.64 КБ) 8743 просмотра
при нажатии на ОК другое:
2.PNG
2.PNG (10.6 КБ) 8743 просмотра
больше не происходит ничего. про свойства понял. но, когда я сам добавляю окно WMP там нет свойств для скрытия кнопок и полос.
3.PNG
ещё скопировать окно WMP из "сохраняемый" в любой другой :vi: не получается почему-то. какое-то волшебное окно :dntknw:
Добро пожаловать на http://rk-stud.ru/
Аватара пользователя
dadreamer

Activity Professionalism Автор
professor
professor
Сообщения: 3926
Зарегистрирован: 17 фев 2013, 16:33
Награды: 4
Версия LabVIEW: 2.5 — 2022
Благодарил (а): 11 раз
Поблагодарили: 127 раз
Контактная информация:

Re: Контент видеороликов

Сообщение dadreamer »

Ошибка, похоже, как раз связана с этим самым окном плеера. В этой :vi: используется довольно-таки старый ActiveX компонент для WMP восьмой версии: IMediaPlayer2. В WMP 9 уже компонент изменен и называется IWMPPlayer4 (инфа отсюда), и у меня не получилось заставить его работать в режиме full screen. Честно говоря, у меня в списке ActiveX-контролов в :labview: нет ни того, ни другого интерфейса, только обычный Windows Media Player, как у вас на картинке. Почему у меня работает, а у вас нет, я затрудняюсь сказать. И ссылку на скачивание WMP 8 я так просто не нашёл, слишком старая версия, на microsoft.com её уже нет... Попытайтесь поставить все версии WMP, выложенные здесь, по порядку, авось заработает. Или придется использовать другие решения, например, сторонние компоненты других плееров или запуск плеера из командной строки.
Аватара пользователя
Sergey Ivanov

Activity Professionalism Gold Автор
expert
expert
Сообщения: 1217
Зарегистрирован: 01 мар 2009, 20:54
Награды: 5
Версия LabVIEW: 2018
Откуда: Санкт-Петербург, Кронштадт
Благодарил (а): 11 раз
Поблагодарили: 1 раз
Контактная информация:

Re: Контент видеороликов

Сообщение Sergey Ivanov »

dadreamer писал(а): Или придется использовать другие решения, например, сторонние компоненты других плееров или запуск плеера из командной строки.

скорее всего так и сделаю. не подскажите, какие пллеры можно использовать через ActiveX ?
Добро пожаловать на http://rk-stud.ru/
Ответить

Вернуться в «Сохранение данных»