
Recherche avancée
Médias (2)
-
Rennes Emotion Map 2010-11
19 octobre 2011, par
Mis à jour : Juillet 2013
Langue : français
Type : Texte
-
Carte de Schillerkiez
13 mai 2011, par
Mis à jour : Septembre 2011
Langue : English
Type : Texte
Autres articles (34)
-
Support audio et vidéo HTML5
10 avril 2011MediaSPIP utilise les balises HTML5 video et audio pour la lecture de documents multimedia en profitant des dernières innovations du W3C supportées par les navigateurs modernes.
Pour les navigateurs plus anciens, le lecteur flash Flowplayer est utilisé.
Le lecteur HTML5 utilisé a été spécifiquement créé pour MediaSPIP : il est complètement modifiable graphiquement pour correspondre à un thème choisi.
Ces technologies permettent de distribuer vidéo et son à la fois sur des ordinateurs conventionnels (...) -
HTML5 audio and video support
13 avril 2011, parMediaSPIP uses HTML5 video and audio tags to play multimedia files, taking advantage of the latest W3C innovations supported by modern browsers.
The MediaSPIP player used has been created specifically for MediaSPIP and can be easily adapted to fit in with a specific theme.
For older browsers the Flowplayer flash fallback is used.
MediaSPIP allows for media playback on major mobile platforms with the above (...) -
De l’upload à la vidéo finale [version standalone]
31 janvier 2010, parLe chemin d’un document audio ou vidéo dans SPIPMotion est divisé en trois étapes distinctes.
Upload et récupération d’informations de la vidéo source
Dans un premier temps, il est nécessaire de créer un article SPIP et de lui joindre le document vidéo "source".
Au moment où ce document est joint à l’article, deux actions supplémentaires au comportement normal sont exécutées : La récupération des informations techniques des flux audio et video du fichier ; La génération d’une vignette : extraction d’une (...)
Sur d’autres sites (7520)
-
How to make Matomo GDPR compliant in 12 steps
3 avril 2018, par InnoCraftImportant note : this blog post has been written by digital analysts, not lawyers. The purpose of this article is to briefly show you where Matomo is entering into play within the GDPR process. This work comes from our interpretation of the UK privacy commission : ICO. It cannot be considered as professional legal advice. So as GDPR, this information is subject to change. We strongly advise you to have a look at the different privacy authorities in order to have up to date information.
The General Data Protection Regulation (EU) 2016/679, also referred to RGPD in French, Datenschutz-Grundverordnung, DS-GVO in German, is a regulation on data protection and privacy for all individuals within the European Union. It concerns organizations worldwide dealing with EU citizens and will come into force on the 25th May 2018.
The GDPR applies to ‘personal data’ meaning any information relating to an identifiable person who can be directly or indirectly identified in particular by reference to an identifier. It includes cookies, IP addresses, User ID, location, and any other data you may have collected.
We will list below the 12 steps recommended by the UK privacy commissioner in order to be GDPR compliant and what you need to do for each step.
The 12 steps of GDPR compliance according to ICO and how it fit with Matomo
As mentioned in one of our previous blog post about GDPR, if you are not collecting any personal data with Matomo, then you are not concerned about what is written below.
If you are processing personal data in any way, here are the 12 steps to follow along with some recommendations on how to be GDPR compliant with Matomo :
1 – Awareness
Make sure that people within your organization know that you are using Matomo in order to analyze traffic on the website/app. If needed, send them the link to the “What is Matomo ?” page.
2 – Information you hold
List all the personal data you are processing with Matomo within your record of processing activities. We are personally using the template provided by ICO which is composed of a set of 30 questions you need to answer regarding your use of Matomo. We have published an article which walks you through the list of questions specifically in the use case of Matomo Analytics. Please be aware that personal data may be also tracked in non-obvious ways for example as part of page URLs or page titles.
3 – Communicating privacy information
a – Add a privacy notice
Add a privacy notice wherever you are using Matomo in order to collect personal data. Please refer to the ICO documentation in order to learn how to write a privacy notice. You can learn more in our article about creating your privacy notice for Matomo Analytics. Make sure that a privacy policy link is always available on your website or app.
b – Add Matomo to your privacy policy page
Add Matomo to the list of technologies you are using on your privacy policy page and add all the necessary information to it as requested in the following checklist. To learn more check out our article about Privacy policy.
4 – Individuals’ rights
Make sure that your Matomo installation respects all the individuals’ rights. To make it short, you will need to know the features in Matomo that you need to use to respect user rights (right of access, right of rectification, right of erasure…). These features are available starting in Matomo 3.5.0 released on May 8th : GDPR tools for Matomo (User guide).
5 – Subject access requests
Make sure that you are able to answer an access request from a data subject for Matomo. For example, when a person would like to access her or his personal data that you have collected about her or him, then you will need to be you able to provide her or him with this information. We recommend you design a process for this like “Who is dealing with it ?” and check that it is working. If you can answer to the nightmare letter, then you are ready. The needed features for this in Matomo will be available soon.
6 – Lawful basis for processing personal data
There are different lawful basis you can use under GDPR. It can be either “Legitimate interest” or “Explicit consent”. Do not forget to mention it within your privacy policy page. Read more in our article about lawful basis.
7 – Consent
Users should be able to remove their consent at any time. By chance, Matomo is providing a feature in order to do just that : add the opt-out feature to your privacy policy page.
We are also offering a tool that allows you optionally to require consent before any data is tracked. This will be useful if a person should be only tracked after she or he has given explicit consent to be tracked.8 – Children
If your website or app is targeted for children and you are using Matomo, extra measures will need to be taken. For example you will need to write your privacy policy even more clear and moreover getting parents consent if the child is below 13. As it is a very specific case, we strongly recommend you to follow this link for further information.
9 – Data breaches
As you may be collecting personal data with Matomo, you should also check your “data breach procedure” to define if a leak may have consequences on the privacy of the data subject. Please consult ICO’s website for further information.
10 – Data Protection by Design and Data Protection Impact Assessments
Ask yourself if you really need to process personal data within Matomo. If the data you are processing within Matomo is sensitive, we strongly recommend you to make a Data Protection Impact Assessment. A software is available from the The open source PIA software helps to carry out data protection impact assessment, by French Privacy Commissioner : CNIL.
11 – Data Protection Officers
If you are reading this article and you are the Data Protection Officer (DPO), you will not be concerned by this step. If that’s not the case, your duty is to provide to the DPO (if your business has a DPO) our blog post in order for her or him to ask you questions regarding your use of Matomo. Note that your DPO can also be interested in the different data that Matomo can process : “What data does Matomo track ?” (FAQ).
12 – International
Matomo data is hosted wherever you want. So according to the location of the data, you will need to show specific safeguard except for EU. For example regarding the USA, you will have to check if your web hosting platform is registered to the Privacy Shield : privacyshield.gov/list
Note : our Matomo cloud infrastructure is based in France.That’s the end of this blog post. As GDPR is a huge topic, we will release many more blog posts in the upcoming weeks. If there are any Matomo GDPR topic related posts you would like us to write, please feel free to contact us.
The post How to make Matomo GDPR compliant in 12 steps appeared first on Analytics Platform - Matomo.
-
Accessing RTSP Server hosted on AWS over internet
27 juillet 2018, par Kishor VI am trying to access my EC2 Ubuntu instance from AWS using gaminganywhere (gaminganywhere.org). The security group policy is to allow all connections, but couldn’t connect to the server. Here is the log from the client and server.
Client
# [7860] 1522686205.894230 # include: config/common/controller.conf
# [7860] 1522686205.894569 # include: config/common/video-x264.conf
# [7860] 1522686205.894755 # include: config/common/audio-lame.conf
# [7860] 1522686205.895002 # RTSP[config]: using 'udp' for RTP flows.
# [7860] 1522686205.895012 # RTSP[config]: controller port = 8555
# [7860] 1522686205.895016 # RTSP[config]: controller via 'udp' protocol.
# [7860] 1522686205.895058 # RTSP[config]: video-encoder = libx264 (libx264 H.264 / AVC / MPEG-4 AVC / MPEG-4 part 10)
# [7860] 1522686205.895071 # RTSP[config]: audio-encoder = libmp3lame (libmp3lame MP3 (MPEG audio layer 3))
# [7860] 1522686205.895101 # RTSP[config]: video specific option: threads = auto
Remote server @ 18.188.161.135[18.188.161.135]:8554
# [7860] 1522686205.971505 SDL: prefer opengl hardware renderer.
# [7860] 1522686205.971532 controller queue: initialized size=32708 (481 units)
# [7860] 1522686205.971693 controller socket: socket address [18.188.161.135:8555]
# [7860] 1522686205.971727 controller client-thread started: tid=7863.
watchdog: launched, waiting for audio/video frames ...
# [7860] 1522686205.971813 rtspclient: max tolerable video delay disabled.
*** SAVEFILE: YUV image saved to 'NULL'; timestamp saved to 'NULL'.
RTP reordering threshold = 300000
# [7860] 1522686205.971959 qos-measurement: initialized.
Opening connection to 18.188.161.135, port 8554...
...remote connection opened
Sending request: DESCRIBE rtsp://18.188.161.135:8554/desktop RTSP/1.0
CSeq: 2
User-Agent: RTSP Client (LIVE555 Streaming Media v2014.05.27)
Accept: application/sdp
Received 619 new bytes of response data.
Received a complete DESCRIBE response:
RTSP/1.0 200 OK
CSeq: 2
Date: Mon, Apr 02 2018 16:23:26 GMT
Content-Base: rtsp://10.0.0.73:8554/desktop/
Content-Type: application/sdp
Content-Length: 456
v=0
o=- 1522685876960515 1 IN IP4 10.0.0.73
s=GamingAnywhere Server
i=desktop
t=0 0
a=tool:LIVE555 Streaming Media v2014.05.27
a=type:broadcast
a=control:*
a=range:npt=0-
a=x-qt-text-nam:GamingAnywhere Server
a=x-qt-text-inf:desktop
m=video 0 RTP/AVP 96
c=IN IP4 0.0.0.0
b=AS:3000
a=rtpmap:96 H264/90000
a=fmtp:96 packetization-mode=1;profile-level-id=4D4020;sprop-parameter-sets=Z01AILaAUAIGhAAAAwAEAAADAMI8YMqA,aO88gA==
a=control:track1
[URL:"rtsp://10.0.0.73:8554/desktop/"]: Got a SDP description:
v=0
o=- 1522685876960515 1 IN IP4 10.0.0.73
s=GamingAnywhere Server
i=desktop
t=0 0
a=tool:LIVE555 Streaming Media v2014.05.27
a=type:broadcast
a=control:*
a=range:npt=0-
a=x-qt-text-nam:GamingAnywhere Server
a=x-qt-text-inf:desktop
m=video 0 RTP/AVP 96
c=IN IP4 0.0.0.0
b=AS:3000
a=rtpmap:96 H264/90000
a=fmtp:96 packetization-mode=1;profile-level-id=4D4020;sprop-parameter-sets=Z01AILaAUAIGhAAAAwAEAAADAMI8YMqA,aO88gA==
a=control:track1
# [7860] 1522686206.581278 qos-measurement: source #0 added, prefix=-281002320
video decoder: use decoder h264
video decoder(0): sprop configured with 'Z01AILaAUAIGhAAAAwAEAAADAMI8YMqA,aO88gA==', decoded-size=36
SPROP = [ 00 00 00 01 67 4d 40 20 b6 80 50 02 06 84 00 00 03 00 04 00 00 03 00 c2 3c 60 ca 80 00 00 00 01 68 ef 3c 80 ]
video decoder(0): codec h264 (H.264 / AVC / MPEG-4 AVC / MPEG-4 part 10)
video decoder(0) initialized (client port 44578)
[URL:"rtsp://10.0.0.73:8554/desktop/"]: Initiated the "video/H264" subsession (client ports 44578-44579)
Sending request: SETUP rtsp://10.0.0.73:8554/desktop/track1 RTSP/1.0
CSeq: 3
User-Agent: RTSP Client (LIVE555 Streaming Media v2014.05.27)
Transport: RTP/AVP;unicast;client_port=44578-44579
Received 212 new bytes of response data.
Received a complete SETUP response:
RTSP/1.0 200 OK
CSeq: 3
Date: Mon, Apr 02 2018 16:23:26 GMT
Transport: RTP/AVP;unicast;destination=117.206.20.30;source=10.0.0.73;client_port=44578-44579;server_port=6970-6971
Session: CBA2E074;timeout=65
[URL:"rtsp://10.0.0.73:8554/desktop/"]: Set up the "video/H264" subsession (client ports 44578-44579)
[URL:"rtsp://10.0.0.73:8554/desktop/"]: Created a data sink for the "video/H264" subsession
Receiver buffer increased to 2097152
NAT hole punching: fd=11, local-port=44578/44578 server-port=6970
Sending request: PLAY rtsp://10.0.0.73:8554/desktop/ RTSP/1.0
CSeq: 4
User-Agent: RTSP Client (LIVE555 Streaming Media v2014.05.27)
Session: CBA2E074
Range: npt=0.000-
watchdog: initialized, but no frames received ...
Received 184 new bytes of response data.
Received a complete PLAY response:
RTSP/1.0 200 OK
CSeq: 4
Date: Mon, Apr 02 2018 16:23:27 GMT
Range: npt=0.000-
Session: CBA2E074
RTP-Info: url=rtsp://10.0.0.73:8554/desktop/track1;seq=32456;rtptime=2677630715
[URL:"rtsp://10.0.0.73:8554/desktop/"]: Started playing session...
watchdog: initialized, but no frames received ...
watchdog: initialized, but no frames received ...
watchdog: initialized, but no frames received ...
watchdog: initialized, but no frames received ...
watchdog: initialized, but no frames received ...
watchdog: initialized, but no frames received ...Server
# [4432] 1522685876.873593 # include: config/common/server-common.conf
# [4432] 1522685876.873731 # include: config/common/controller.conf
# [4432] 1522685876.873810 # include: config/common/video-x264.conf
# [4432] 1522685876.873882 # include: config/common/video-x264-param.conf
# [4432] 1522685876.873974 # include: config/common/audio-lame.conf
# [4432] 1522685876.874060 # RTSP[config]: using 'udp' for RTP flows.
# [4432] 1522685876.874100 # RTSP[config]: controller port = 8555
# [4432] 1522685876.874131 # RTSP[config]: controller via 'udp' protocol.
# [4432] 1522685876.874189 # RTSP[config]: video-encoder = libx264 (libx264 H.264 / AVC / MPEG-4 AVC / MPEG-4 part 10)
# [4432] 1522685876.874230 # RTSP[config]: audio-encoder = libmp3lame (libmp3lame MP3 (MPEG audio layer 3))
# [4432] 1522685876.874281 # RTSP[config]: video specific option: b = 3000000
# [4432] 1522685876.874316 # RTSP[config]: video specific option: g = 48
# [4432] 1522685876.874348 # RTSP[config]: video specific option: intra-refresh = 1
# [4432] 1522685876.874378 # RTSP[config]: video specific option: me_method = dia
# [4432] 1522685876.874410 # RTSP[config]: video specific option: me_range = 16
# [4432] 1522685876.874440 # RTSP[config]: video specific option: preset = faster
# [4432] 1522685876.874471 # RTSP[config]: video specific option: profile = main
# [4432] 1522685876.874501 # RTSP[config]: video specific option: refs = 1
# [4432] 1522685876.874532 # RTSP[config]: video specific option: slices = 4
# [4432] 1522685876.874563 # RTSP[config]: video specific option: threads = 4
# [4432] 1522685876.874594 # RTSP[config]: video specific option: tune = zerolatency
# [4432] 1522685876.874625 *** Crop disabled.
# [4432] 1522685876.878908 sink server: live555-rtsp-server registered
# [4432] 1522685876.878957 key-blocking initialized: 0+0 keys blocked.
# [4432] 1522685876.879015 sdl_replayer: sizeof(sdlmsg) = 64
# [4432] 1522685876.879465 sdl replayer: Replay using XTest (version 2.2) for display :0 screen 0, size=1280x1024.
# [4432] 1522685876.879793 XShm extention version 1.2 with shared pixmaps
# [4432] 1522685876.879832 X-Window-init: dimension: 1280x1024x8 @ 0/1
# [4432] 1522685876.879917 dpipe: 'video-0' initialized, 8 frames, framesize = 16384092
# [4432] 1522685876.913130 video-source: video-0 initialized max-curr-out = (2560x1600)-(1280x1024)-(1280x1024)
# [4432] 1522685876.914241 Frame converter created: from (1280,1024)[30] -> (1280,1024)[0]
# [4432] 1522685876.914343 dpipe: 'filter-0' initialized, 8 frames, framesize = 16384092
# [4432] 1522685876.948463 video encoder: video source #0 from 'filter-0' (1280x1024).
# [4432] 1522685876.948720 vencoder-init: option b = 3000000
# [4432] 1522685876.948755 vencoder-init: option g = 48
# [4432] 1522685876.948783 vencoder-init: option intra-refresh = 1
# [4432] 1522685876.948811 vencoder-init: option me_method = dia
# [4432] 1522685876.948839 vencoder-init: option me_range = 16
# [4432] 1522685876.948867 vencoder-init: option preset = faster
# [4432] 1522685876.948894 vencoder-init: option profile = main
# [4432] 1522685876.948921 vencoder-init: option refs = 1
# [4432] 1522685876.948949 vencoder-init: option slices = 4
# [4432] 1522685876.948977 vencoder-init: option threads = 4
# [4432] 1522685876.949004 vencoder-init: option tune = zerolatency
[libx264 @ 0x9518b40] using cpu capabilities: MMX2 SSE2Fast SSSE3 SSE4.2 AVX AVX2 FMA3 LZCNT BMI2
[libx264 @ 0x9518b40] profile Main, level 3.2
[libx264 @ 0x9518b40] 264 - core 142 - H.264/MPEG-4 AVC codec - Copyleft 2003-2014 - http://www.videolan.org/x264.html - options: cabac=1 ref=1 deblock=1:0:0 analyse=0x1:0x111 me=dia subme=4 psy=1 psy_rd=1.00:0.00 mixed_ref=0 me_range=16 chroma_me=1 trellis=1 8x8dct=0 cqm=0 deadzone=21,11 fast_pskip=1 chroma_qp_offset=0 threads=4 lookahead_threads=4 sliced_threads=1 slices=4 nr=0 decimate=1 interlaced=0 bluray_compat=0 constrained_intra=0 bframes=0 weightp=1 keyint=48 keyint_min=4 scenecut=40 intra_refresh=1 rc=abr mbtree=0 bitrate=3000 ratetol=1.0 qcomp=0.60 qpmin=0 qpmax=69 qpstep=4 ip_ratio=1.40 aq=1:1.00
# [4432] 1522685876.958913 video encoder: initialized.
# [4432] 1522685876.959008 video encoder: ffmpeg-video-encoder registered
# [4432] 1522685876.959137 RGB2YUV filter[4443]: pipe#0 from 'video-0' to 'filter-0' (output-resolution=1280x1024)
# [4432] 1522685876.959229 video source thread started: tid=4442
# [4432] 1522685876.959290 controller socket: socket address [0.0.0.0:8555]
# [4432] 1522685876.959337 controller server started: tid=4441.
# [4432] 1522685876.960458 encoder: packet queue initialized (3x3145728 bytes)
# [4432] 1522685876.960516 qos-measurement: initialized.
# [4432] 1522685876.960587 (Use port 8000 for optional RTSP-over-HTTP tunneling.)
# [4432] 1522685983.386797 video encdoer: all started (1)
# [4432] 1522685983.386926 encoder client registered: total 1 clients.
# [4432] 1522685983.386990 encoder: pktqueue #0 callback registered (0xf55a88a0)
# [4432] 1522685983.387065 video encoder: h.264/found sps@4(24); pps@32(4)
# [4432] 1522685983.387118 GAMediaSubsession: video/H264 SPS=0xdcfc346c(24); PPS=0xdcfc356c(4); profile_level_id=4d4020
# [4432] 1522685983.387191 qos: add sink#1 for H.264, rtpsink=0xdc6061f8
# [4432] 1522685983.387255 encoder client unregistered: 0 clients left.
# [4432] 1522685983.387290 encoder: no more clients, quitting ...
# [4432] 1522685983.387355 video encoding started: tid=4445 1280x1024@24fps, nalbuf_size=15828640, pic_in_size=1966080.
# [4432] 1522685983.387402 video encoder: thread terminated (tid=4445).
# [4432] 1522685983.387446 video encdoer: all stopped (1)
[libx264 @ 0x9518b40] final ratefactor: 23.57
# [4432] 1522685983.388265 video encoder: deinitialized.
# [4432] 1522685983.741415 video encoder: video source #0 from 'filter-0' (1280x1024).
# [4432] 1522685983.741772 vencoder-init: option b = 3000000
# [4432] 1522685983.741819 vencoder-init: option g = 48
# [4432] 1522685983.741870 vencoder-init: option intra-refresh = 1
# [4432] 1522685983.741926 vencoder-init: option me_method = dia
# [4432] 1522685983.741975 vencoder-init: option me_range = 16
# [4432] 1522685983.742020 vencoder-init: option preset = faster
# [4432] 1522685983.742086 vencoder-init: option profile = main
# [4432] 1522685983.742123 vencoder-init: option refs = 1
# [4432] 1522685983.742154 vencoder-init: option slices = 4
# [4432] 1522685983.742188 vencoder-init: option threads = 4
# [4432] 1522685983.742218 vencoder-init: option tune = zerolatency
[libx264 @ 0xdc605f40] using cpu capabilities: MMX2 SSE2Fast SSSE3 SSE4.2 AVX AVX2 FMA3 LZCNT BMI2
[libx264 @ 0xdc605f40] profile Main, level 3.2
[libx264 @ 0xdc605f40] 264 - core 142 - H.264/MPEG-4 AVC codec - Copyleft 2003-2014 - http://www.videolan.org/x264.html - options: cabac=1 ref=1 deblock=1:0:0 analyse=0x1:0x111 me=dia subme=4 psy=1 psy_rd=1.00:0.00 mixed_ref=0 me_range=16 chroma_me=1 trellis=1 8x8dct=0 cqm=0 deadzone=21,11 fast_pskip=1 chroma_qp_offset=0 threads=4 lookahead_threads=4 sliced_threads=1 slices=4 nr=0 decimate=1 interlaced=0 bluray_compat=0 constrained_intra=0 bframes=0 weightp=1 keyint=48 keyint_min=4 scenecut=40 intra_refresh=1 rc=abr mbtree=0 bitrate=3000 ratetol=1.0 qcomp=0.60 qpmin=0 qpmax=69 qpstep=4 ip_ratio=1.40 aq=1:1.00
# [4432] 1522685983.749123 video encoder: initialized.
# [4432] 1522685983.749175 video encdoer: all started (1)
# [4432] 1522685983.749209 encoder client registered: total 1 clients.
# [4432] 1522685983.749241 encoder: pktqueue #0 callback registered (0xf55a88a0)
# [4432] 1522685983.749301 video encoder: h.264/found sps@4(24); pps@32(4)
# [4432] 1522685983.749336 GAMediaSubsession: video/H264 SPS=0xdcfc353c(24); PPS=0xdcfc363c(4); profile_level_id=4d4020
# [4432] 1522685983.749385 qos: add sink#1 for H.264, rtpsink=0xe3471b60
# [4432] 1522685983.749480 video encoding started: tid=4454 1280x1024@24fps, nalbuf_size=15828640, pic_in_size=1966080.
# [4432] 1522685983.775570 first video frame written (pts=0)
# [4432] 1522686049.085120 encoder client unregistered: 0 clients left.
# [4432] 1522686049.085221 encoder: no more clients, quitting ...
# [4432] 1522686049.102929 video encoder: thread terminated (tid=4454).
# [4432] 1522686049.103052 video encdoer: all stopped (1)
[libx264 @ 0xdc605f40] frame I:1 Avg QP: 7.00 size: 447
[libx264 @ 0xdc605f40] frame P:1568 Avg QP: 0.01 size: 216
[libx264 @ 0xdc605f40] mb I I16..4: 99.9% 0.0% 0.1%
[libx264 @ 0xdc605f40] mb P I16..4: 3.2% 0.0% 0.0% P16..4: 0.0% 0.0% 0.0% 0.0% 0.0% skip:96.8%
[libx264 @ 0xdc605f40] final ratefactor: -29.32
[libx264 @ 0xdc605f40] coded y,uvDC,uvAC intra: 0.0% 0.0% 0.0% inter: 0.0% 0.0% 0.0%
[libx264 @ 0xdc605f40] i16 v,h,dc,p: 94% 0% 6% 0%
[libx264 @ 0xdc605f40] i4 v,h,dc,ddl,ddr,vr,hd,vl,hu: 0% 0% 100% 0% 0% 0% 0% 0% 0%
[libx264 @ 0xdc605f40] i8c dc,h,v,p: 100% 0% 0% 0%
[libx264 @ 0xdc605f40] Weighted P-Frames: Y:0.0% UV:0.0%
[libx264 @ 0xdc605f40] kb/s:41.58
# [4432] 1522686049.104181 video encoder: deinitialized.I think the IP address in RTSP header is the LAN IP of the device which is causing the making the connection to fail. The same software works fine from the LAN. Any help is appreciated.
-
Use ffmpeg for incoming youtube HLS live stream and output to rtmp
14 avril 2018, par hrsI can’t get ffmpeg to work with live streams from youtube. Normal non-live videos work just fine. But with live streams ffmpeg seems like it doesn’t make enough requests for new segments. It basically downloads, say a 3 second segment, then nothing happens for 10 seconds or so, then it downloads a new segment, repeat...
ffmpeg -i '$(./youtube-dl -f best -g https://www.youtube.com/watch?v=emGI3UrzIMc)' -f flv rtmp://192.168.0.11/myapp/mystream
So what’s the automagic command ?
ffmpeg version :
ffmpeg version 3.4.2 Copyright (c) 2000-2018 the FFmpeg developers
built with gcc 7.3.0 (Rev1, Built by MSYS2 project)
configuration: --prefix=/mingw64 --target-os=mingw32 --arch=x86_64 --disable-debug --disable-static --enable-avresample --enable-dxva2 --enable-d3d11va --enable-fontconfig --enable-gnutls --enable-gpl --enable-libass --enable-libbluray --enable-libcaca --enable-libcelt --enable-libfreetype --enable-libgsm --enable-libmodplug --enable-libmp3lame --enable-libopencore_amrnb --enable-libopencore_amrwb --enable-libopenjpeg --enable-libopus --enable-librtmp --enable-libspeex --enable-libtheora --enable-libvorbis --enable-libx264 --enable-libx265 --enable-libxvid --enable-libvpx --enable-libwebp --enable-openal --enable-libwavpack --enable-pic --enable-postproc --enable-runtime-cpudetect --enable-shared --enable-static --enable-swresample --enable-version3 --enable-zlib --disable-doc
libavutil 55. 78.100 / 55. 78.100
libavcodec 57.107.100 / 57.107.100
libavformat 57. 83.100 / 57. 83.100
libavdevice 57. 10.100 / 57. 10.100
libavfilter 6.107.100 / 6.107.100
libavresample 3. 7. 0 / 3. 7. 0
libswscale 4. 8.100 / 4. 8.100
libswresample 2. 9.100 / 2. 9.100
libpostproc 54. 7.100 / 54. 7.100youtube-dl version :
2018.03.14
Following is the output of the command above. The
<my note="note"></my>
is added by me for description purposes.At start execution goes smoothly. It then freezes for 10 or 15 sec at
<my note="note" 1="1"></my>
. It then downloads the part of the stream -<my note="note" 2="2"></my>
, plays is, then freezes again for some seconds. Then downloads the next part -<my note="note" 3="3"></my>
, plays it, freezes, and so on...$ ffmpeg -i '$(./youtube-dl -f best -g https://www.youtube.com/watch?v=emGI3UrzIMc)' -f flv rtmp://192.168.0.11/myapp/mystream
ffmpeg version 3.4.2 Copyright (c) 2000-2018 the FFmpeg developers
built with gcc 7.3.0 (Rev1, Built by MSYS2 project)
configuration: --prefix=/mingw64 --target-os=mingw32 --arch=x86_64 --disable-debug --disable-static --enable-avresample --enable-dxva2 --enable-d3d11va --enable-fontconfig --enable-gnutls --enable-gpl --enable-libass --enable-libbluray --enable-libcaca --enable-libcelt --enable-libfreetype --enable-libgsm --enable-libmodplug --enable-libmp3lame --enable-libopencore_amrnb --enable-libopencore_amrwb --enable-libopenjpeg --enable-libopus --enable-librtmp --enable-libspeex --enable-libtheora --enable-libvorbis --enable-libx264 --enable-libx265 --enable-libxvid --enable-libvpx --enable-libwebp --enable-openal --enable-libwavpack --enable-pic --enable-postproc --enable-runtime-cpudetect --enable-shared --enable-static --enable-swresample --enable-version3 --enable-zlib --disable-doc
libavutil 55. 78.100 / 55. 78.100
libavcodec 57.107.100 / 57.107.100
libavformat 57. 83.100 / 57. 83.100
libavdevice 57. 10.100 / 57. 10.100
libavfilter 6.107.100 / 6.107.100
libavresample 3. 7. 0 / 3. 7. 0
libswscale 4. 8.100 / 4. 8.100
libswresample 2. 9.100 / 2. 9.100
libpostproc 54. 7.100 / 54. 7.100
[hls,applehttp @ 00000287da404cc0] Opening 'https://r4---sn-cap1vv-nv4l.googlevideo.com/videoplayback/id/emGI3UrzIMc.0/itag/95/source/yt_live_broadcast/requiressl/yes/ratebypass/yes/live/1/cmbypass/yes/goi/160/sgoap/gir%3Dyes%3Bitag%3D140/sgovp/gir%3Dyes%3Bitag%3D136/hls_chunk_host/r4---sn-cap1vv-nv4l.googlevideo.com/ei/6jiqWt7SIJKD8gPimZTACA/playlist_type/DVR/gcr/bg/initcwndbps/10410/mm/32/mn/sn-cap1vv-nv4l/ms/lv/mv/m/pcm2cms/yes/pl/16/keepalive/yes/mt/1521105015/ip/130.204.135.162/ipbits/0/expire/1521126730/sparams/ip,ipbits,expire,id,itag,source,requiressl,ratebypass,live,cmbypass,goi,sgoap,sgovp,hls_chunk_host,ei,playlist_type,gcr,initcwndbps,mm,mn,ms,mv,pcm2cms,pl/signature/503304477BD05CCC71061344F8BB23195E152A32.512A84732C501AF08AC9340181A75D34C5B2FF77/key/dg_yt0/playlist/index.m3u8/sq/1308292/goap/clen%3D48852%3Blmt%3D1520930742662673/govp/clen%3D347004%3Blmt%3D1520930742662679/dur/2.000/file/seg.ts' for reading
Input #0, hls,applehttp, from 'https://manifest.googlevideo.com/api/manifest/hls_playlist/id/emGI3UrzIMc.0/itag/95/source/yt_live_broadcast/requiressl/yes/ratebypass/yes/live/1/cmbypass/yes/goi/160/sgoap/gir%3Dyes%3Bitag%3D140/sgovp/gir%3Dyes%3Bitag%3D136/hls_chunk_host/r4---sn-cap1vv-nv4l.googlevideo.com/ei/6jiqWt7SIJKD8gPimZTACA/playlist_type/DVR/gcr/bg/initcwndbps/10410/mm/32/mn/sn-cap1vv-nv4l/ms/lv/mv/m/pcm2cms/yes/pl/16/dover/10/keepalive/yes/mt/1521105015/ip/130.204.135.162/ipbits/0/expire/1521126730/sparams/ip,ipbits,expire,id,itag,source,requiressl,ratebypass,live,cmbypass,goi,sgoap,sgovp,hls_chunk_host,ei,playlist_type,gcr,initcwndbps,mm,mn,ms,mv,pcm2cms,pl/signature/503304477BD05CCC71061344F8BB23195E152A32.512A84732C501AF08AC9340181A75D34C5B2FF77/key/dg_yt0/playlist/index.m3u8':
Duration: N/A, start: 39603.798400, bitrate: N/A
Program 0
Metadata:
variant_bitrate : 0
Stream #0:0: Audio: aac (LC) ([15][0][0][0] / 0x000F), 48000 Hz, stereo, fltp
Metadata:
variant_bitrate : 0
Stream #0:1: Video: h264 (Main) ([27][0][0][0] / 0x001B), yuv420p, 1280x720 [SAR 1:1 DAR 16:9], 30 fps, 30 tbr, 90k tbn, 60 tbc
Metadata:
variant_bitrate : 0
Stream mapping:
Stream #0:1 -> #0:0 (h264 (native) -> flv1 (flv))
Stream #0:0 -> #0:1 (aac (native) -> mp3 (libmp3lame))
Press [q] to stop, [?] for help
Output #0, flv, to 'rtmp://192.168.0.11/myapp/mystream':
Metadata:
encoder : Lavf57.83.100
Stream #0:0: Video: flv1 (flv) ([2][0][0][0] / 0x0002), yuv420p, 1280x720 [SAR 1:1 DAR 16:9], q=2-31, 200 kb/s, 30 fps, 1k tbn, 30 tbc
Metadata:
variant_bitrate : 0
encoder : Lavc57.107.100 flv
Side data:
cpb: bitrate max/min/avg: 0/0/200000 buffer size: 0 vbv_delay: -1
Stream #0:1: Audio: mp3 (libmp3lame) ([2][0][0][0] / 0x0002), 48000 Hz, stereo, fltp
Metadata:
variant_bitrate : 0
<my note="note" 1="1">encoder : Lavc57.107.100 libmp3lame
<my note="note" 2="2">[hls,applehttp @ 00000287da404cc0] Opening 'https://r4---sn-cap1vv-nv4l.googlevideo.com/videoplayback/id/emGI3UrzIMc.0/itag/95/source/yt_live_broadcast/requiressl/yes/ratebypass/yes/live/1/cmbypass/yes/goi/160/sgoap/gir%3Dyes%3Bitag%3D140/sgovp/gir%3Dyes%3Bitag%3D136/hls_chunk_host/r4---sn-cap1vv-nv4l.googlevideo.com/ei/6jiqWt7SIJKD8gPimZTACA/playlist_type/DVR/gcr/bg/initcwndbps/10410/mm/32/mn/sn-cap1vv-nv4l/ms/lv/mv/m/pcm2cms/yes/pl/16/keepalive/yes/mt/1521105015/ip/130.204.135.162/ipbits/0/expire/1521126730/sparams/ip,ipbits,expire,id,itag,source,requiressl,ratebypass,live,cmbypass,goi,sgoap,sgovp,hls_chunk_host,ei,playlist_type,gcr,initcwndbps,mm,mn,ms,mv,pcm2cms,pl/signature/503304477BD05CCC71061344F8BB23195E152A32.512A84732C501AF08AC9340181A75D34C5B2FF77/key/dg_yt0/playlist/index.m3u8/sq/1308293/goap/clen%3D48853%3Blmt%3D1520930742662680/govp/clen%3D404944%3Blmt%3D1520930742662686/dur/2.000/file/seg.ts' for reading
<my note="note" 3="3">[hls,applehttp @ 00000287da404cc0] Opening 'https://r4---sn-cap1vv-nv4l.googlevideo.com/videoplayback/id/emGI3UrzIMc.0/itag/95/source/yt_live_broadcast/requiressl/yes/ratebypass/yes/live/1/cmbypass/yes/goi/160/sgoap/gir%3Dyes%3Bitag%3D140/sgovp/gir%3Dyes%3Bitag%3D136/hls_chunk_host/r4---sn-cap1vv-nv4l.googlevideo.com/ei/6jiqWt7SIJKD8gPimZTACA/playlist_type/DVR/gcr/bg/initcwndbps/10410/mm/32/mn/sn-cap1vv-nv4l/ms/lv/mv/m/pcm2cms/yes/pl/16/keepalive/yes/mt/1521105015/ip/130.204.135.162/ipbits/0/expire/1521126730/sparams/ip,ipbits,expire,id,itag,source,requiressl,ratebypass,live,cmbypass,goi,sgoap,sgovp,hls_chunk_host,ei,playlist_type,gcr,initcwndbps,mm,mn,ms,mv,pcm2cms,pl/signature/503304477BD05CCC71061344F8BB23195E152A32.512A84732C501AF08AC9340181A75D34C5B2FF77/key/dg_yt0/playlist/index.m3u8/sq/1308294/goap/clen%3D48852%3Blmt%3D1520930742662688/govp/clen%3D403294%3Blmt%3D1520930742662693/dur/2.000/file/seg.ts' for reading
[hls,applehttp @ 00000287da404cc0] Opening 'https://r4---sn-cap1vv-nv4l.googlevideo.com/videoplayback/id/emGI3UrzIMc.0/itag/95/source/yt_live_broadcast/requiressl/yes/ratebypass/yes/live/1/cmbypass/yes/goi/160/sgoap/gir%3Dyes%3Bitag%3D140/sgovp/gir%3Dyes%3Bitag%3D136/hls_chunk_host/r4---sn-cap1vv-nv4l.googlevideo.com/ei/6jiqWt7SIJKD8gPimZTACA/playlist_type/DVR/gcr/bg/initcwndbps/10410/mm/32/mn/sn-cap1vv-nv4l/ms/lv/mv/m/pcm2cms/yes/pl/16/keepalive/yes/mt/1521105015/ip/130.204.135.162/ipbits/0/expire/1521126730/sparams/ip,ipbits,expire,id,itag,source,requiressl,ratebypass,live,cmbypass,goi,sgoap,sgovp,hls_chunk_host,ei,playlist_type,gcr,initcwndbps,mm,mn,ms,mv,pcm2cms,pl/signature/503304477BD05CCC71061344F8BB23195E152A32.512A84732C501AF08AC9340181A75D34C5B2FF77/key/dg_yt0/playlist/index.m3u8/sq/1308295/goap/clen%3D48355%3Blmt%3D1520930742662695/govp/clen%3D358330%3Blmt%3D1520930742662700/dur/2.000/file/seg.ts' for reading
[hls,applehttp @ 00000287da404cc0] Opening 'https://r4---sn-cap1vv-nv4l.googlevideo.com/videoplayback/id/emGI3UrzIMc.0/itag/95/source/yt_live_broadcast/requiressl/yes/ratebypass/yes/live/1/cmbypass/yes/goi/160/sgoap/gir%3Dyes%3Bitag%3D140/sgovp/gir%3Dyes%3Bitag%3D136/hls_chunk_host/r4---sn-cap1vv-nv4l.googlevideo.com/ei/6jiqWt7SIJKD8gPimZTACA/playlist_type/DVR/gcr/bg/initcwndbps/10410/mm/32/mn/sn-cap1vv-nv4l/ms/lv/mv/m/pcm2cms/yes/pl/16/keepalive/yes/mt/1521105015/ip/130.204.135.162/ipbits/0/expire/1521126730/sparams/ip,ipbits,expire,id,itag,source,requiressl,ratebypass,live,cmbypass,goi,sgoap,sgovp,hls_chunk_host,ei,playlist_type,gcr,initcwndbps,mm,mn,ms,mv,pcm2cms,pl/signature/503304477BD05CCC71061344F8BB23195E152A32.512A84732C501AF08AC9340181A75D34C5B2FF77/key/dg_yt0/playlist/index.m3u8/sq/1308296/goap/clen%3D48852%3Blmt%3D1520930742662701/govp/clen%3D347658%3Blmt%3D1520930742662707/dur/2.000/file/seg.ts' for reading
frame= 225 fps=1.8 q=31.0 size= 947kB time=00:00:07.92 bitrate= 979.2kbits/s speed=0.0625x
</my></my></my>And you don’t have to output to a rtmp. Can be a local file - behavior is the same.