1
- # QGIS Full Motion Video (FMV) [ #QGISFMV] ( https://twitter.com/hashtag/qgisfmv?f=live )
1
+ # QGIS Full Motion Video (FMV) [ #QGISFMV] ( https://twitter.com/hashtag/qgisfmv?f=live )
2
2
3
- [ ![ Build Status] ( https://travis-ci.org/All4Gis/QGISFMV.svg?branch=master )] ( https://travis-ci.org/All4Gis/QGISFMV )
3
+ [ ![ Build Status] ( https://travis-ci.org/All4Gis/QGISFMV.svg?branch=master )] ( https://travis-ci.org/All4Gis/QGISFMV )
4
4
[ ![ Project Stats] ( https://www.openhub.net/p/QGISFMV/widgets/project_thin_badge.gif )] ( https://www.openhub.net/p/QGISFMV )
5
5
6
6
## Donations
7
7
8
8
If this plugin is useful for you, consider to donate to the author.Want to buy me a beer (or gadget)? Please use Paypal button or contact me directly.
9
9
10
10
[ ![ paypal] ( https://www.paypalobjects.com/en_US/i/btn/btn_donateCC_LG.gif )] ( https://www.paypal.com/cgi-bin/webscr?button=donate&business=5329N9XX4WQHY&item_name=QGIS+FMV+Plugin&quantity=&amount=¤cy_code=EUR&shipping=&tax=¬ify_url=&cmd=_donations&bn=JavaScriptButton_donate&env=www )
11
-
12
11
13
12
![ ] ( images/banner.png )
14
13
15
14
Plugin for ** QGIS 3** which allows to analyze, visualize and process videos inside the QGIS environment. ** QGIS FMV** accepts multiple video formats such as _ mp4, ts, avi_ , etc. It is also able to extract video frames, to capture the current frame, to plot bitrate and to observe the video metadata with aerial images and more. It also offers the possibility to create reports with video metadata.
16
15
17
16
Standards supported:
18
17
19
- - "UAS Datalink Local Set", [ MISB ST0601] ( http://www.gwg.nga.mil/misb/docs/standards/ST0601.17.pdf )
20
- - "Security Metadata Local Set", [ MISB ST0102] ( https://gwg.nga.mil/misb/docs/standards/ST0102.12.pdf )
21
- - "Predator UAV Basic Universal Metadata Set", [ MISB EG0104] ( https://gwg.nga.mil/misb/docs/eg/EG0104.4.pdf )
18
+ - "UAS Datalink Local Set", [ MISB ST0601] ( http://www.gwg.nga.mil/misb/docs/standards/ST0601.17.pdf )
19
+ - "Security Metadata Local Set", [ MISB ST0102] ( https://gwg.nga.mil/misb/docs/standards/ST0102.12.pdf )
20
+ - "Predator UAV Basic Universal Metadata Set", [ MISB EG0104] ( https://gwg.nga.mil/misb/docs/eg/EG0104.4.pdf )
22
21
23
22
## Table of Contents
24
23
25
- - [ Motivation] ( #motivation )
26
- - [ Dependencies] ( #dependencies )
27
- - [ For show video] ( #for-show-video )
28
- - [ Usage] ( #usage )
29
- - [ Recommended readings] ( #recommended-readings )
30
- - [ Installation] ( #installation )
31
- - [ Installation on Windows] ( #installation-on-windows )
32
- - [ Installation on Ubuntu] ( #installation-on-ubuntu )
33
- - [ Installation on Archlinux] ( #installation-on-archlinux )
34
- - [ Slides] ( #slides )
35
- - [ Mentions] ( #mentions )
36
- - [ Screenshots] ( #screenshots )
37
- - [ Features] ( #features )
38
- - [ Contributing] ( #contributing )
24
+ - [ QGIS Full Motion Video (FMV) #QGISFMV] ( #qgis-full-motion-video-fmv-qgisfmv )
25
+ - [ Donations] ( #donations )
26
+ - [ Table of Contents] ( #table-of-contents )
27
+ - [ Motivation] ( #motivation )
28
+ - [ Dependencies] ( #dependencies )
29
+ - [ For show video] ( #for-show-video )
30
+ - [ Usage] ( #usage )
31
+ - [ Recommended readings] ( #recommended-readings )
32
+ - [ Installation] ( #installation )
33
+ - [ Installation on Windows] ( #installation-on-windows )
34
+ - [ Installation on Ubuntu] ( #installation-on-ubuntu )
35
+ - [ Installation on Archlinux] ( #installation-on-archlinux )
36
+ - [ Slides] ( #slides )
37
+ - [ Mentions] ( #mentions )
38
+ - [ Screenshots] ( #screenshots )
39
+ - [ Features] ( #features )
40
+ - [ Contributing] ( #contributing )
39
41
- [ Contributing Code] ( #contributing-code )
40
42
- [ Contributing translations] ( #contributing-translations )
41
- - [Contributors List](#contributors-list)
42
- - [ License] ( #license )
43
- - [ Donations] ( #donations )
44
-
43
+ - [ Contributors List] ( #contributors-list )
44
+ - [ License] ( #license )
45
+
45
46
## Motivation
46
47
47
48
This development arises after observing that there was no free solution for the metadata extraction and video analysis in real time. All solutions are APIs or private tools such as
@@ -52,21 +53,21 @@ for this reason, I decided to develop this open source project and, this way, of
52
53
53
54
## Dependencies
54
55
55
- * [ FFMPEG] ( http://ffmpeg.org/download.html ) : After downloading it, you should store it in an accessible folder and modify ` settings.ini ` with the corresponding path. For example ` D://FFMPEG ` or ` /usr/bin/ `
56
+ - [ FFMPEG] ( http://ffmpeg.org/download.html ) : After downloading it, you should store it in an accessible folder and modify ` settings.ini ` with the corresponding path. For example ` D://FFMPEG ` or ` /usr/bin/ `
56
57
57
- * [ OpenCV] ( https://opencv.org/ ) : ` python3 -m pip install opencv-python `
58
+ - [ OpenCV] ( https://opencv.org/ ) : ` python3 -m pip install opencv-python `
58
59
59
- * [ opencv-contrib-python] ( https://pypi.org/project/opencv-contrib-python/ ) : ` python3 -m pip install opencv-contrib-python `
60
+ - [ opencv-contrib-python] ( https://pypi.org/project/opencv-contrib-python/ ) : ` python3 -m pip install opencv-contrib-python `
60
61
61
- * [ MatPlotLib] ( https://matplotlib.org/ ) : ` python3 -m pip install matplotlib `
62
+ - [ MatPlotLib] ( https://matplotlib.org/ ) : ` python3 -m pip install matplotlib `
62
63
63
- * [ Klvdata] ( https://github.com/paretech/klvdata ) : customized version of this library. (No need to install it)
64
+ - [ Klvdata] ( https://github.com/paretech/klvdata ) : customized version of this library. (No need to install it)
64
65
65
66
The plugin install automatically this requisites,but you can install it using on Windows and Linux:
66
67
67
68
` python3 -m pip install -r requirements.txt `
68
69
69
- Here is a ** settings.ini** sample [ Linux] ( code/settings_linux_sample.ini ) configuration file or [ Windows] ( code/settings_win_sample.ini ) sample.
70
+ Here is a ** settings.ini** sample [ Linux] ( code/settings_linux_sample.ini ) configuration file or [ Windows] ( code/settings_win_sample.ini ) sample.
70
71
On windows you can find the ** settings.ini** file at ** C:\Users\< user name>\AppData\Roaming\QGIS\QGIS3\profiles\default\python\plugins\QGIS_FMV** .
71
72
72
73
↑ ; [ Back to top] ( #table-of-contents )
@@ -75,18 +76,18 @@ On windows you can find the **settings.ini** file at **C:\Users\<user name>\AppD
75
76
76
77
To see the video you need:
77
78
78
- - ** Linux** : install <a href =" https://gstreamer.freedesktop.org/documentation/installing/on-linux.html " target =" _blank " >GStreamer dependencies</a >
79
- - ** Window** : install LAV Filters (install <a href =" https://github.com/Nevcairiel/LAVFilters/releases " target =" _blank " >DirectShow Media Decoders</a >)
80
-
79
+ - ** Linux** : install <a href =" https://gstreamer.freedesktop.org/documentation/installing/on-linux.html " target =" _blank " >GStreamer dependencies</a >
80
+ - ** Window** : install LAV Filters (install <a href =" https://github.com/Nevcairiel/LAVFilters/releases " target =" _blank " >DirectShow Media Decoders</a >)
81
+
81
82
If everything works well the plugin should install these dependencies automatically in both, Windows and Linux.
82
83
83
84
↑ ; [ Back to top] ( #table-of-contents )
84
85
85
86
## Usage
86
87
87
88
The use of this application is simple.
88
- It only needs a video with metadata, like for example one of these [ (ESRI copyright)] ( https://drive.google. com/open?id=1-B2uaW7_cfYZohZYFozrgBhIaztI1MSP )
89
- Then, open the plugin where the "video manager" will be shown, open the video and with a double-click, the "player" will be opened.
89
+ It only needs a video with metadata, like for example one of these [ (ESRI copyright)] ( https://github. com/All4Gis/QGISFMV_Samples )
90
+ Then, open the plugin where the "video manager" will be shown, open the video and with a double-click, the "player" will be opened.
90
91
At this moment, you will see that new shapes have been added and you will see the platform position, metadata, etc.
91
92
92
93
If we don't have a MISB video we can create it from a video file and telemetry file from a DJI for example.
@@ -101,19 +102,18 @@ For more information about the Unmanned Air System (UAS) metadata from STANAG 46
101
102
102
103
![ a] ( images/demux.png )
103
104
104
- * <a href =" https://gisgeography.com/full-motion-video-fmv/ " target =" _blank " >What is Full Motion Video (FMV)?</a >
105
- * <a href =" http://www.gwg.nga.mil/misb/faq.html " target =" _blank " >FAQ</a >
106
- * <a href =" http://www.gwg.nga.mil/misb/docs/nato_docs/STANAG_4609_Ed3.pdf " target =" _blank " >STANAG_4609_Ed3</a >
107
- * <a href =" https://nsgreg.nga.mil/doc/view?i=5471 " target =" _blank " >ST0601.19</a >
108
- * <a href =" http://www.gwg.nga.mil/misb/docs/standards/ST0902.1.pdf " target =" _blank " >ST0902.1</a >
105
+ - <a href =" https://gisgeography.com/full-motion-video-fmv/ " target =" _blank " >What is Full Motion Video (FMV)?</a >
106
+ - <a href =" http://www.gwg.nga.mil/misb/faq.html " target =" _blank " >FAQ</a >
107
+ - <a href =" http://www.gwg.nga.mil/misb/docs/nato_docs/STANAG_4609_Ed3.pdf " target =" _blank " >STANAG_4609_Ed3</a >
108
+ - <a href =" https://nsgreg.nga.mil/doc/view?i=5471 " target =" _blank " >ST0601.19</a >
109
+ - <a href =" http://www.gwg.nga.mil/misb/docs/standards/ST0902.1.pdf " target =" _blank " >ST0902.1</a >
109
110
110
111
↑ ; [ Back to top] ( #table-of-contents )
111
112
112
113
## Installation
113
114
114
115
The installation can be done from the QGIS Python Plugins Repository or from the [ zip] ( https://github.com/All4Gis/QGISFMV/releases ) .
115
116
116
-
117
117
↑ ; [ Back to top] ( #table-of-contents )
118
118
119
119
## Installation on Windows
@@ -150,35 +150,36 @@ You need to restart QGIS after this.
150
150
151
151
` sudo apt-get remove gstreamer1.0-vaapi `
152
152
153
-
154
153
## Installation on Archlinux
155
154
156
- _ Archlinux installation :_
155
+ _ Archlinux installation :_
156
+
157
157
```
158
- pacman -S qgis python-matplotlib opencv ffmpeg
158
+ pacman -S qgis python-matplotlib opencv ffmpeg
159
159
```
160
160
161
161
_ Set FFmpeg path in $HOME/.local/share/QGIS/QGIS3/profiles/[ profile_name] /python/plugins/QGIS_FMV/settings.ini _
162
+
162
163
```
163
164
ffmpeg : "/usr/bin/"
164
165
ffprobe : "/usr/bin/"
165
166
```
166
167
167
168
## Slides
168
169
169
- * [ Official presentation] ( https://slides.com/franraga/qgis-fmv/fullscreen )
170
- * [ SIG libre 2021 WorkShop] ( https://slides.com/franraga/sig-libre-2021/fullscreen )
171
- * [ SIG libre 2021 Video (Spanish)] ( http://hdl.handle.net/10256.1/6237 )
170
+ - [ Official presentation] ( https://slides.com/franraga/qgis-fmv/fullscreen )
171
+ - [ SIG libre 2021 WorkShop] ( https://slides.com/franraga/sig-libre-2021/fullscreen )
172
+ - [ SIG libre 2021 Video (Spanish)] ( http://hdl.handle.net/10256.1/6237 )
172
173
173
174
↑ ; [ Back to top] ( #table-of-contents )
174
175
175
176
## Mentions
176
177
177
- * [ Beyond imagery and Video] ( https://docs.google.com/presentation/d/1b9FVFcThSJJLq4Q31C9Yx3pEsconY3QxKPZ4sifIAu4/edit?usp=sharing )
178
+ - [ Beyond imagery and Video] ( https://docs.google.com/presentation/d/1b9FVFcThSJJLq4Q31C9Yx3pEsconY3QxKPZ4sifIAu4/edit?usp=sharing )
178
179
179
- * [ MXF Experimentation, Lessons Learned, * UK DSTL * ] ( https://drive.google.com/file/d/1bjLKzBc73wCrFiMkGFQDx2-w_JHf0fyf/view?usp=sharing )
180
+ - [ MXF Experimentation, Lessons Learned, _ UK DSTL _ ] ( https://drive.google.com/file/d/1bjLKzBc73wCrFiMkGFQDx2-w_JHf0fyf/view?usp=sharing )
180
181
181
- * [ QGIS Mexico, FMV, Luis Gallardo] ( https://youtu.be/edk6sbNgiAw )
182
+ - [ QGIS Mexico, FMV, Luis Gallardo] ( https://youtu.be/edk6sbNgiAw )
182
183
183
184
If you want to add your presentation simply upload it or send me an email
184
185
@@ -215,12 +216,12 @@ Want to work on the project? Any kind of contribution is welcome!
215
216
216
217
Follow these steps:
217
218
218
- Fork the project.
219
- Create a new branch.
220
- Make your changes and write tests ( if is possible).
221
- Commit your changes to the new branch.
222
- Send a pull request.
223
-
219
+ Fork the project.
220
+ Create a new branch.
221
+ Make your changes and write tests ( if is possible).
222
+ Commit your changes to the new branch.
223
+ Send a pull request.
224
+
224
225
See before [ FMV Coding Standards!] ( https://all4gis.github.io/QGISFMV/CodingStandards )
225
226
226
227
** NOTE:** If you are use Linux need install pyuic5 and transifex client to compile the UI.
@@ -245,7 +246,6 @@ For test stream feature you can simulate stream channel,like this:
245
246
246
247
` ffmpeg -i rtp://127.0.0.1:8888 -c copy -map 0:v? -map 0:a? -f rtp_mpegts rtp://127.0.0.1:8898 -map 0:d? -f data - `
247
248
248
-
249
249
And ** transifex** client:
250
250
251
251
` pip3 install transifex-client `
@@ -254,12 +254,12 @@ And **transifex** client:
254
254
255
255
pip install coveralls
256
256
pip install pycodestyle
257
-
257
+
258
258
autopep8 --in-place --aggressive --aggressive -v --recursive deploy/*.py --exclude="*gui/*"
259
-
259
+
260
260
pycodestyle --ignore=E501 code/*.py --statistics --exclude=code/gui/*.py
261
261
pycodestyle --ignore=E501,W504 deploy/*.py --statistics
262
-
262
+
263
263
And thanks for your code.
264
264
265
265
![ a] ( images/thanks.gif )
@@ -270,7 +270,7 @@ Contributions are welcome!
270
270
271
271
[ transifex] ( https://www.transifex.com/all4gis/QGISFMV/ )
272
272
273
- ### Contributors List
273
+ ### Contributors List
274
274
275
275
<!-- CONTRIBUTORS-LIST:START - Do not remove or modify this section -->
276
276
<!-- prettier-ignore-start -->
@@ -288,8 +288,8 @@ Contributions are welcome!
288
288
289
289
<!-- markdownlint-enable -->
290
290
<!-- prettier-ignore-end -->
291
- <!-- CONTRIBUTORS-LIST:END -->
292
291
292
+ <!-- CONTRIBUTORS-LIST:END -->
293
293
294
294
## License
295
295
0 commit comments