
Recherche avancée
Médias (1)
-
MediaSPIP Simple : futur thème graphique par défaut ?
26 septembre 2013, par
Mis à jour : Octobre 2013
Langue : français
Type : Video
Autres articles (82)
-
Les vidéos
21 avril 2011, parComme les documents de type "audio", Mediaspip affiche dans la mesure du possible les vidéos grâce à la balise html5 .
Un des inconvénients de cette balise est qu’elle n’est pas reconnue correctement par certains navigateurs (Internet Explorer pour ne pas le nommer) et que chaque navigateur ne gère en natif que certains formats de vidéos.
Son avantage principal quant à lui est de bénéficier de la prise en charge native de vidéos dans les navigateur et donc de se passer de l’utilisation de Flash et (...) -
Use, discuss, criticize
13 avril 2011, parTalk to people directly involved in MediaSPIP’s development, or to people around you who could use MediaSPIP to share, enhance or develop their creative projects.
The bigger the community, the more MediaSPIP’s potential will be explored and the faster the software will evolve.
A discussion list is available for all exchanges between users. -
Publier sur MédiaSpip
13 juin 2013Puis-je poster des contenus à partir d’une tablette Ipad ?
Oui, si votre Médiaspip installé est à la version 0.2 ou supérieure. Contacter au besoin l’administrateur de votre MédiaSpip pour le savoir
Sur d’autres sites (4967)
-
Elacarte Presto Tablets
14 mars 2013, par Multimedia Mike — GeneralI visited an Applebee’s restaurant this past weekend. The first thing I spied was a family at a table with what looked like a 7-inch tablet. It’s not an uncommon sight. However, as I moved through the restaurant, I noticed that every single table was equipped with such a tablet. It looked like this :
For a computer nerd like me, you could probably guess that I was be far more interested in this gadget than the cuisine. The thing said “Presto” on the front and “Elacarte” on the back. Putting this together, we get the website of Elacarte, the purveyors of this restaurant tablet technology. Months after the iPad was released on 2010, I remember stories about high-end restaurants showing their wine list via iPads. This tablet goes well beyond that.
How was it ? Well, confusing, mostly. The hostess told us we could order through the tablet or through her. Since we already knew what we wanted, she just manually took our order and presumably entered it into the system. So, right away, the question is : Do we order through a human or through a computer ? Or a combination ? Do we have to use the tablet if we don’t want to ?
Hardware
When picking up the tablet, it’s hard not to notice that it is very heavy. At first, I suspected that it was deliberately weighted down as some minor attempt at an anti-theft measure. But then I remembered what I know about power budgets of phones and tablets– powering the screen accounts for much of the battery usage. I realized that this device needs to drive the screen for about 14 continuous hours each day. I.e., the weight must come from a massive battery.The screen is good. It’s a capacitive touchscreen, so nice and responsive. When I first spied the device, I felt certain it would be a resistive touchscreen (which is more accurately called a touch-and-press-down screen). There is an AC adapter on the side of the tablet. This is the only interface to the device :
That looks to me like an internal SATA connector (different from an eSATA connector). Foolishly, I didn’t have a SATA cable on me so I couldn’t verify.
User Interface
The interface options are : Order, Games, Neighborhood, and Pay. One big benefit of accessing the menu through the Order option is that each menu item can have a picture. For people who order more by picture than text description, this is useful. Rather, it would be, if more items had pictures. I’m not sure there were more pictures than seen in the print menu.
For Games, there were a variety of party games. The interface clearly stated that we got to play 2 free games. This implied to me that further games cost money. We tried one game briefly and the food came.2 more options : Neighborhood– I know I dug into this option, but I forget what it was. Maybe it discussed local attractions. Finally, Pay. This thing has an integrated credit card reader. There is no integrated printer, though, so if you want one, you will have to request one from a human.
Experience
So we ordered through a human since we didn’t feel like being thrust into this new paradigm when we just wanted lunch. The staff was obviously amenable to that. However, I got a chance to ask them a lot of questions about the particulars. Apparently, they have had this system for about 5 months. It was confirmed that the tablets do, in fact, have gargantuan batteries that have to last through the restaurant’s entire business hours. Do they need to be charged every night ? Yes, they do. But how ? The staff described this several large charging blocks with many cables sprouting out. Reportedly, some units still don’t make it through the entire day.When it was time to pay, I pressed the Pay button on the interface. The bill I saw had nothing in common with what we ordered (actually, it was cheaper, so perhaps I should have just accepted it). But I pointed it out to a human and they said that this happens sometimes. So they manually printed my bill. There was a dollar charge for the game that was supposed to be free. I pointed this out and they removed it. It’s minor, I know, but it’s still worth trying to work out these bugs.
One of the staff also described how a restaurant doesn’t need to employ as many people thanks to the tablet. She gave a nervous, awkward, self-conscious laugh when she said this. All I could think of was this Dilbert comic strip in which the boss realizes that his smartphone could perform certain key functions previously handled by his assistant.
Not A New Idea
Some people might think this is a totally new concept. It’s not. I was immediately reminded of my university days in Boulder, Colorado, USA, circa 1997. The local Taco Bell and Arby’s restaurants both had touchscreen ordering kiosks. Step up, interact with the (probably resistive) touchscreen, get a number, and step to the counter to change money, get your food, and probably clarify your order because there is only so much that can be handled through a touchscreen.What I also remember is when they tore out those ordering kiosks, also circa 1997. I don’t know the exact reason. Maybe people didn’t like them. Maybe there were maintenance costs that made them not worth the hassle.
Then there are the widespread self-checkout lanes in grocery stores. Personally, I like those, though I know many don’t. However, this restaurant tablet thing hasn’t won me over yet. What’s the difference ? Perhaps that automated lanes at grocery stores require zero external assistance– at least, if you do everything correctly. Personally, I work well with these lanes because I can pretty much guess the constraints of the system and I am careful not to confuse the computer in any way. Until they deploy serving droids, or at least food conveyors, there still needs to be some human interaction and I think the division between the human and computer roles is unintuitive in the restaurant case.
I don’t really care to return to the same restaurant. I’ll likely avoid any other restaurant that has these tablets. For some reason, I think I’m probably supposed to be the ideal consumer of this concept. But the idea will probably perform all right anyway. Elacarte’s website has plenty of graphs demonstrating that deploying these tablets is extremely profitable.
-
How can several .ts files be converted to one (non-fragmented) .mp4 file using ffmpeg ?
23 juin 2021, par verified_tinkerProblem Description


The video player I'm using doesn't support
.ts
files, but it does play.mp4
files, so I'd like to use ffmpeg to convert my.ts
files to.mp4
files.

Goal Solution


Use ffmpeg to download several
.ts
segments and transcode them into an.mp4
file that I'd load into my video player. Rinse and repeat. It'd add a delay of 10-20 seconds, but that's fine.

The trick is to do the transcoding fast enough so, by the time one
.mp4
file is finished playing, the next one is available ; in other words, the transcoding should take less than a second per second of footage. Ideally, it would take significantly less than that, to account for varying processing power on different devices.

To clarify, when I say
.mp4
, I don't mean fragmented.mp4
files.


If transcoding to some other format is faster, that might be fine, too. For example, I know the
.mkv
format is playable. I'm still exploring the full range of available formats.

What I've Tried


I tested transcoding 1
.ts
file into an.mp4
file, and unfortunately it took about 6 seconds when the file was about 4 seconds long. That was with ffmpeg-wasm. I was hoping the JavaScript bridge might be slowing it down and that batching several.ts
segments in 1 call might help.

Command


ffmpeg -i test.ts test.mp4



Log


[info] run FS.writeFile test.ts <349304 bytes binary file>
log.js:15 [info] run ffmpeg command: -i test.ts test.mp4
log.js:15 [fferr] ffmpeg version v0.9.0-2-gb11e5c1495 Copyright (c) 2000-2020 the FFmpeg developers
log.js:15 [fferr] built with emcc (Emscripten gcc/clang-like replacement) 2.0.8 (d059fd603d0b45b584f634dc2365bc9e9a6ec1dd)
log.js:15 [fferr] configuration: --target-os=none --arch=x86_32 --enable-cross-compile --disable-x86asm --disable-inline-asm --disable-stripping --disable-programs --disable-doc --disable-debug --disable-runtime-cpudetect --disable-autodetect --extra-cflags='-s USE_PTHREADS=1 -I/src/build/include -O3 --closure 1' --extra-cxxflags='-s USE_PTHREADS=1 -I/src/build/include -O3 --closure 1' --extra-ldflags='-s USE_PTHREADS=1 -I/src/build/include -O3 --closure 1 -L/src/build/lib' --pkg-config-flags=--static --nm=llvm-nm --ar=emar --ranlib=emranlib --cc=emcc --cxx=em++ --objcc=emcc --dep-cc=emcc --enable-gpl --enable-nonfree --enable-zlib --enable-libx264 --enable-libx265 --enable-libvpx --enable-libwavpack --enable-libmp3lame --enable-libfdk-aac --enable-libtheora --enable-libvorbis --enable-libfreetype --enable-libopus --enable-libwebp --enable-libass --enable-libfribidi
log.js:15 [fferr] libavutil 56. 51.100 / 56. 51.100
log.js:15 [fferr] libavcodec 58. 91.100 / 58. 91.100
log.js:15 [fferr] libavformat 58. 45.100 / 58. 45.100
log.js:15 [fferr] libavdevice 58. 10.100 / 58. 10.100
log.js:15 [fferr] libavfilter 7. 85.100 / 7. 85.100
log.js:15 [fferr] libswscale 5. 7.100 / 5. 7.100
log.js:15 [fferr] libswresample 3. 7.100 / 3. 7.100
log.js:15 [fferr] libpostproc 55. 7.100 / 55. 7.100
log.js:15 [fferr] Input #0, mpegts, from 'test.ts':
log.js:15 [fferr] Duration: 00:00:04.00, start: 10.006000, bitrate: 698 kb/s
log.js:15 [fferr] Program 1 
log.js:15 [fferr] Stream #0:0[0x100]: Video: h264 (High) ([27][0][0][0] / 0x001B), yuv420p(progressive), 1280x720, 23.98 tbr, 90k tbn, 1411200000.00 tbc
log.js:15 [fferr] Stream #0:1[0x101]: Audio: aac (LC) ([15][0][0][0] / 0x000F), 48000 Hz, stereo, fltp, 130 kb/s
log.js:15 [fferr] Stream mapping:
log.js:15 [fferr] Stream #0:0 -> #0:0 (h264 (native) -> h264 (libx264))
log.js:15 [fferr] Stream #0:1 -> #0:1 (aac (native) -> aac (native))
log.js:15 [fferr] [libx264 @ 0x1f5f080] using cpu capabilities: none!
log.js:15 [fferr] [libx264 @ 0x1f5f080] profile High, level 3.1, 4:2:0, 8-bit
log.js:15 [fferr] [libx264 @ 0x1f5f080] 264 - core 160 - H.264/MPEG-4 AVC codec - Copyleft 2003-2020 - http://www.videolan.org/x264.html - options: cabac=1 ref=3 deblock=1:0:0 analyse=0x3:0x113 me=hex subme=7 psy=1 psy_rd=1.00:0.00 mixed_ref=1 me_range=16 chroma_me=1 trellis=1 8x8dct=1 cqm=0 deadzone=21,11 fast_pskip=1 chroma_qp_offset=-2 threads=6 lookahead_threads=1 sliced_threads=0 nr=0 decimate=1 interlaced=0 bluray_compat=0 constrained_intra=0 bframes=3 b_pyramid=2 b_adapt=1 b_bias=0 direct=1 weightb=1 open_gop=0 weightp=2 keyint=250 keyint_min=23 scenecut=40 intra_refresh=0 rc_lookahead=40 rc=crf mbtree=1 crf=23.0 qcomp=0.60 qpmin=0 qpmax=69 qpstep=4 ip_ratio=1.40 aq=1:1.00
log.js:15 [fferr] Output #0, mp4, to 'test.mp4':
log.js:15 [fferr] Metadata:
log.js:15 [fferr] encoder : Lavf58.45.100
log.js:15 [fferr] Stream #0:0: Video: h264 (libx264) (avc1 / 0x31637661), yuv420p, 1280x720, q=-1--1, 23.98 fps, 24k tbn, 23.98 tbc
log.js:15 [fferr] Metadata:
log.js:15 [fferr] encoder : Lavc58.91.100 libx264
log.js:15 [fferr] Side data:
log.js:15 [fferr] cpb: bitrate max/min/avg: 0/0/0 buffer size: 0 vbv_delay: N/A
log.js:15 [fferr] Stream #0:1: Audio: aac (LC) (mp4a / 0x6134706D), 48000 Hz, stereo, fltp, 128 kb/s
log.js:15 [fferr] Metadata:
log.js:15 [fferr] encoder : Lavc58.91.100 aac
log.js:15 [fferr] frame= 3 fps=0.0 q=0.0 size= 0kB time=00:00:00.38 bitrate= 1.0kbits/s dup=1 drop=0 speed=0.521x 
log.js:15 [fferr] frame= 47 fps= 27 q=0.0 size= 0kB time=00:00:02.09 bitrate= 0.2kbits/s dup=1 drop=0 speed=1.22x 
log.js:15 [fferr] frame= 57 fps= 25 q=28.0 size= 0kB time=00:00:02.51 bitrate= 0.2kbits/s dup=1 drop=0 speed=1.13x 
log.js:15 [fferr] frame= 67 fps= 24 q=28.0 size= 0kB time=00:00:02.96 bitrate= 0.1kbits/s dup=1 drop=0 speed=1.08x 
log.js:15 [fferr] frame= 77 fps= 23 q=28.0 size= 0kB time=00:00:03.37 bitrate= 0.1kbits/s dup=1 drop=0 speed=1.03x 
log.js:15 [fferr] frame= 89 fps= 23 q=28.0 size= 0kB time=00:00:03.96 bitrate= 0.1kbits/s dup=1 drop=0 speed=1.04x 
log.js:15 [fferr] frame= 96 fps= 15 q=-1.0 Lsize= 60kB time=00:00:04.01 bitrate= 122.8kbits/s dup=1 drop=0 speed=0.646x 
log.js:15 [fferr] video:55kB audio:1kB subtitle:0kB other streams:0kB global headers:0kB muxing overhead: 7.249582%
log.js:15 [fferr] [libx264 @ 0x1f5f080] frame I:1 Avg QP:17.20 size: 31521
log.js:15 [fferr] [libx264 @ 0x1f5f080] frame P:24 Avg QP:16.17 size: 735
log.js:15 [fferr] [libx264 @ 0x1f5f080] frame B:71 Avg QP:27.68 size: 91
log.js:15 [fferr] [libx264 @ 0x1f5f080] consecutive B-frames: 1.0% 0.0% 3.1% 95.8%
log.js:15 [fferr] [libx264 @ 0x1f5f080] mb I I16..4: 26.2% 56.4% 17.4%
log.js:15 [fferr] [libx264 @ 0x1f5f080] mb P I16..4: 0.1% 0.2% 0.0% P16..4: 3.5% 0.4% 0.2% 0.0% 0.0% skip:95.4%
log.js:15 [fferr] [libx264 @ 0x1f5f080] mb B I16..4: 0.0% 0.0% 0.0% B16..8: 1.6% 0.0% 0.0% direct: 0.0% skip:98.3% L0:31.0% L1:69.0% BI: 0.0%
log.js:15 [fferr] [libx264 @ 0x1f5f080] 8x8 transform intra:56.5% inter:59.4%
log.js:15 [fferr] [libx264 @ 0x1f5f080] coded y,uvDC,uvAC intra: 17.4% 15.4% 7.5% inter: 0.2% 0.4% 0.0%
log.js:15 [fferr] [libx264 @ 0x1f5f080] i16 v,h,dc,p: 29% 63% 1% 7%
log.js:15 [fferr] [libx264 @ 0x1f5f080] i8 v,h,dc,ddl,ddr,vr,hd,vl,hu: 51% 31% 14% 0% 2% 1% 1% 0% 1%
log.js:15 [fferr] [libx264 @ 0x1f5f080] i4 v,h,dc,ddl,ddr,vr,hd,vl,hu: 26% 45% 11% 2% 3% 2% 4% 2% 4%
log.js:15 [fferr] [libx264 @ 0x1f5f080] i8c dc,h,v,p: 76% 17% 6% 1%
log.js:15 [fferr] [libx264 @ 0x1f5f080] Weighted P-Frames: Y:0.0% UV:0.0%
log.js:15 [fferr] [libx264 @ 0x1f5f080] ref P L0: 89.5% 1.6% 6.7% 2.3%
log.js:15 [fferr] [libx264 @ 0x1f5f080] ref B L0: 38.5% 60.9% 0.6%
log.js:15 [fferr] [libx264 @ 0x1f5f080] ref B L1: 97.7% 2.3%
log.js:15 [fferr] [libx264 @ 0x1f5f080] kb/s:111.08
log.js:15 [fferr] [aac @ 0x1f48100] Qavg: 65536.000
log.js:15 [ffout] FFMPEG_END
log.js:15 [info] run FS.readFile test.mp4
(index):38 Time elapsed: 6345 (This one's my own code.)
[info] run FS.readFile test.mp4



(I'm running this on the browser. For the purposes of this question, consider the HTML player unavailable for use.)



I also tested feeding the HLS live-stream URL as input to ffmpeg and outputting a single
.mp4
file, but I couldn't play it until I ended the live-stream and ffmpeg finished downloading it.

This one I ran on the (Windows) PC ; not the browser.


Command


ffmpeg -i https://stream.mux.com/lngMYGqNpHhYg2ZXqpH8WODVGzuenaZuhckdyunGpzU.m3u8 -acodec copy -bsf:a aac_adtstoasc -vcodec copy out.mp4



Log


The log is too large and StackOverflow won't let me paste it here, so I uploaded it to PasteBin : https://pastebin.com/FqvPQ1DZ


-
How to configure and validate a Funnel in Piwik Analytics
16 janvier 2017, par InnoCraft — CommunityIn the last blog post we have covered how the conversion Funnel plugin enriches your Piwik experience. This post will focus on how to configure and validate your funnel in Piwik so you get the correct data when you view the funnel reports. When you set up a funnel, it is crucial to have it configured correctly as the funnel report will be only as good as its configuration. When we built this Funnel feature, we focused on making the configuration and validation real simple because it is so important to get it right.
To recap quickly : A Funnel defines a series of steps that you expect your visitors to take on their way to converting a goal or a sale. Funnels, a premium feature for Piwik developed by InnoCraft, lets you define funnels so you can improve your websites and mobile apps based on this data. Learn more about Funnel.
Configuring a funnel
As you will notice Funnels integrates nicely into the Piwik Goals management. You can configure a funnel whenever you create or update a goal. You can access the Goals Management either via “Administration => Goals” or via the reporting menu “Goals => Manage”. Then click on either “Add a new goal” or select an existing goal to edit it. At the bottom of the goal form, you will see a new row letting you configure a funnel. As with all our premium features we focused on displaying lots of inline help and explain directly in the UI what a funnel is about, what the steps are in order to configure a funnel, how a funnel helps you and more. This lets you use the Funnel feature even if you have never created or analyzed a funnel before.
Preparing your Funnel configuration
Before starting to configure a Funnel we usually have a brainstorm session identifying the funnels on a website or app and the paths we expect users to take there. Once we have identified each step, we click through those identified pages in our website and we note the URLs for each page as the URLs will be needed when you configure a funnel.
Setting up a Goal
Once we have finished the planning phase it is time to log into Piwik. We start by either adding a new goal or selecting an existing goal. If you are unfamiliar with setting up goals, have a look at the Piwik Goals user guide. At the bottom of a goal form when you create or update a goal, you can configure your funnel. The UI will first explain you everything about Funnels, what they are, how they help you and which steps you need to take in order to configure it.
Configuring Funnel steps
We start by configuring the steps we have identified in the planning phase. Those are the steps we expect our users to take when they convert a goal or purchase something. Now we need to add a step for each page we expect users to take, each step consists of a name and a pattern.
The name will be shown to you in the funnel reporting so think of a good name that describes each step best, for example “Product”, “Cart”, “Checkout” and “Order”.
The pattern is needed to define when a visitor will enter this step. Here it comes in handy to have already notes for each URL from the planning phase. You can select lots of different patterns based on “URL Path”, “URL” and “URL parameter”. For example “URL starts with”, “Path ends with”, “URL contains”, “URL matches the regular expression”, and more. Most tools make this configuration unnecessarily hard because they only allow you to choose from one or two patterns (only complicated pattern like regular expressions) and they don’t let you validate whether the URL you have in mind actually matches the pattern. There are three ways to validate your step configurations.
Validating funnel steps
When we configure a funnel, we validate our steps in the following three ways.
1. Via the help icon next to the step configuration
When you click on the help icon, you will receive valuable tips about configuring steps, what “required” means and how to match popular pages. It will also show you a list of all URLs that were tracked in your Piwik in the past and match your specified pattern. For example say you specify a pattern “Path starts with /products”, then Piwik will list all URLs that were tracked in the past matching this pattern. This lets you validate whether your pattern actually matches the URLs you had in mind. It will also show you if the pattern doesn’t match any known URL which can indicate that your configuration may be wrong.
2. Via the URL validator
Below the steps configuration you find a form field that lets you enter any URL.
We recommend to enter each URL that you have noted before in the planning phase. Once you enter a URL, the configurations will be validated immediately and the result will be shown to you in the step configuration. When a step matches your specified URL, the background will become green, when a step does not match the URL, the background will be red.
If the URL does not match the expected step, simply change your step configuration and the steps will be re-validated as you change the configuration. This way you will see instantly as soon as you got the configuration right.
What you don’t want is that either all of your steps don’t match (red background) or that several steps match a certain URL (green background). When several step match one URL, then one visitor might enter several funnel steps on just one page. This usually indicates a problem with the step configuration.
3. Manual funnel validation
After we have created or updated the goal (more about this soon), we always test a funnel configuration manually. This means we now open our website and click through the pages that we hand in mind and check afterwards whether the steps we took actually appear in the funnel report as expected. This is just another safety net to make sure your funnel configuration is right.
It is really crucial to have a correct funnel configuration as otherwise the shown data in the funnel reports might not be as helpful. That’s why we focused so much on making the validation part real easy.
Activating and saving the funnel
Once you are happy with your configuration, it is time to activate your funnel. As soon as you activate your funnel, a report for this funnel will be generated and the links and reports for this funnel will be visible in the UI. If you are later no longer interested in the funnel, simply deactivate the funnel so it won’t appear in the reporting UI anymore.
To save your funnel configuration simply click on either “Add goal” or “Update goal”. The funnel will be automatically saved whenever you update your goal.
Goals Management
The funnel plugin also enriches the list of goals in the Piwik goal management. At a glance you can see whether a funnel for a goal is configured and activated (green tick in the funnel column), whether a funnel is configured but not activated (grey tick in the funnel column) or whether no funnel is configured for a goal (no tick at all).
How to get Funnels and related features
You can get Funnels on the Piwik Marketplace. If you want to learn more about Funnels you might be also interested in the Funnel User Guide and the Funnel FAQ.
Similar to Funnels we also offer Users Flow which lets you visualize the flow of your users and visitors across several interactions.