
Recherche avancée
Autres articles (50)
-
Websites made with MediaSPIP
2 mai 2011, parThis page lists some websites based on MediaSPIP.
-
Creating farms of unique websites
13 avril 2011, parMediaSPIP platforms can be installed as a farm, with a single "core" hosted on a dedicated server and used by multiple websites.
This allows (among other things) : implementation costs to be shared between several different projects / individuals rapid deployment of multiple unique sites creation of groups of like-minded sites, making it possible to browse media in a more controlled and selective environment than the major "open" (...) -
Contribute to a better visual interface
13 avril 2011MediaSPIP is based on a system of themes and templates. Templates define the placement of information on the page, and can be adapted to a wide range of uses. Themes define the overall graphic appearance of the site.
Anyone can submit a new graphic theme or template and make it available to the MediaSPIP community.
Sur d’autres sites (4720)
-
WebVTT as a W3C Recommendation
1er janvier 2014, par silviaThree weeks ago I attended TPAC, the annual meeting of W3C Working Groups. One of the meetings was of the Timed Text Working Group (TT-WG), that has been specifying TTML, the Timed Text Markup Language. It is now proposed that WebVTT be also standardised through the same Working Group.
How did that happen, you may ask, in particular since WebVTT and TTML have in the past been portrayed as rival caption formats ? How will the WebVTT spec that is currently under development in the Text Track Community Group (TT-CG) move through a Working Group process ?
I’ll explain first why there is a need for WebVTT to become a W3C Recommendation, and then how this is proposed to be part of the Timed Text Working Group deliverables, and finally how I can see this working between the TT-CG and the TT-WG.
Advantages of a W3C Recommendation
TTML is a XML-based markup format for captions developed during the time that XML was all the hotness. It has become a W3C standard (a so-called “Recommendation”) despite not having been implemented in any browsers (if you ask me : that’s actually a flaw of the W3C standardisation process : it requires only two interoperable implementations of any kind – and that could be anyone’s JavaScript library or Flash demonstrator – it doesn’t actually require browser implementations. But I digress…). To be fair, a subpart of TTML is by now implemented in Internet Explorer, but all the other major browsers have thus far rejected proposals of implementation.
Because of its Recommendation status, TTML has become the basis for several other caption standards that other SDOs have picked : the SMPTE’s SMPTE-TT format, the EBU’s EBU-TT format, and the DASH Industry Forum’s use of SMPTE-TT. SMPTE-TT has also become the “safe harbour” format for the US legislation on captioning as decided by the FCC. (Note that the FCC requirements for captions on the Web are actually based on a list of features rather than requiring a specific format. But that will be the topic of a different blog post…)
WebVTT is much younger than TTML. TTML was developed as an interchange format among caption authoring systems. WebVTT was built for rendering in Web browsers and with HTML5 in mind. It meets the requirements of the <track> element and supports more than just captions/subtitles. WebVTT is popular with browser developers and has already been implemented in all major browsers (Firefox Nightly is the last to implement it – all others have support already released).
As we can see and as has been proven by the HTML spec and multiple other specs : browsers don’t wait for specifications to have W3C Recommendation status before they implement them. Nor do they really care about the status of a spec – what they care about is whether a spec makes sense for the Web developer and user communities and whether it fits in the Web platform. WebVTT has obviously achieved this status, even with an evolving spec. (Note that the spec tries very hard not to break backwards compatibility, thus all past implementations will at least be compatible with the more basic features of the spec.)
Given that Web browsers don’t need WebVTT to become a W3C standard, why then should we spend effort in moving the spec through the W3C process to become a W3C Recommendation ?
The modern Web is now much bigger than just Web browsers. Web specifications are being used in all kinds of devices including TV set-top boxes, phone and tablet apps, and even unexpected devices such as white goods. Videos are increasingly omnipresent thus exposing deaf and hard-of-hearing users to ever-growing challenges in interacting with content on diverse devices. Some of these devices will not use auto-updating software but fixed versions so can’t easily adapt to new features. Thus, caption producers (both commercial and community) need to be able to author captions (and other video accessibility content as defined by the HTML5 element) towards a feature set that is clearly defined to be supported by such non-updating devices.
Understandably, device vendors in this space have a need to build their technology on standardised specifications. SDOs for such device technologies like to reference fixed specifications so the feature set is not continually updating. To reference WebVTT, they could use a snapshot of the specification at any time and reference that, but that’s not how SDOs work. They prefer referencing an officially sanctioned and tested version of a specification – for a W3C specification that means creating a W3C Recommendation of the WebVTT spec.
Taking WebVTT on a W3C recommendation track is actually advantageous for browsers, too, because a test suite will have to be developed that proves that features are implemented in an interoperable manner. In summary, I can see the advantages and personally support the effort to take WebVTT through to a W3C Recommendation.
Choice of Working Group
FAIK this is the first time that a specification developed in a Community Group is being moved into the recommendation track. This is something that has been expected when the W3C created CGs, but not something that has an established process yet.
The first question of course is which WG would take it through to Recommendation ? Would we create a new Working Group or find an existing one to move the specification through ? Since WGs involve a lot of overhead, the preference was to add WebVTT to the charter of an existing WG. The two obvious candidates were the HTML WG and the TT-WG – the first because it’s where WebVTT originated and the latter because it’s the closest thematically.
Adding a deliverable to a WG is a major undertaking. The TT-WG is currently in the process of re-chartering and thus a suggestion was made to add WebVTT to the milestones of this WG. TBH that was not my first choice. Since I’m already an editor in the HTML WG and WebVTT is very closely related to HTML and can be tested extensively as part of HTML, I preferred the HTML WG. However, adding WebVTT to the TT-WG has some advantages, too.
Since TTML is an exchange format, lots of captions that will be created (at least professionally) will be in TTML and TTML-related formats. It makes sense to create a mapping from TTML to WebVTT for rendering in browsers. The expertise of both, TTML and WebVTT experts is required to develop a good mapping – as has been shown when we developed the mapping from CEA608/708 to WebVTT. Also, captioning experts are already in the TT-WG, so it helps to get a second set of eyes onto WebVTT.
A disadvantage of moving a specification out of a CG into a WG is, however, that you potentially lose a lot of the expertise that is already involved in the development of the spec. People don’t easily re-subscribe to additional mailing lists or want the additional complexity of involving another community (see e.g. this email).
So, a good process needs to be developed to allow everyone to contribute to the spec in the best way possible without requiring duplicate work. How can we do that ?
The forthcoming process
At TPAC the TT-WG discussed for several hours what the next steps are in taking WebVTT through the TT-WG to recommendation status (agenda with slides). I won’t bore you with the different views – if you are keen, you can read the minutes.
What I came away with is the following process :
- Fix a few more bugs in the CG until we’re happy with the feature set in the CG. This should match the feature set that we realistically expect devices to implement for a first version of the WebVTT spec.
- Make a FSA (Final Specification Agreement) in the CG to create a stable reference and a clean IPR position.
- Assuming that the TT-WG’s charter has been approved with WebVTT as a milestone, we would next bring the FSA specification into the TT-WG as FPWD (First Public Working Draft) and immediately do a Last Call which effectively freezes the feature set (this is possible because there has already been wide community review of the WebVTT spec) ; in parallel, the CG can continue to develop the next version of the WebVTT spec with new features (just like it is happening with the HTML5 and HTML5.1 specifications).
- Develop a test suite and address any issues in the Last Call document (of course, also fix these issues in the CG version of the spec).
- As per W3C process, substantive and minor changes to Last Call documents have to be reported and raised issues addressed before the spec can progress to the next level : Candidate Recommendation status.
- For the next step – Proposed Recommendation status – an implementation report is necessary, and thus the test suite needs to be finalized for the given feature set. The feature set may also be reduced at this stage to just the ones implemented interoperably, leaving any other features for the next version of the spec.
- The final step is Recommendation status, which simply requires sufficient support and endorsement by W3C members.
The first version of the WebVTT spec naturally has a focus on captioning (and subtitling), since this has been the dominant use case that we have focused on this far and it’s the part that is the most compatibly implemented feature set of WebVTT in browsers. It’s my expectation that the next version of WebVTT will have a lot more features related to audio descriptions, chapters and metadata. Thus, this seems a good time for a first version feature freeze.
There are still several obstacles towards progressing WebVTT as a milestone of the TT-WG. Apart from the need to get buy-in from the TT-WG, the TT-CG, and the AC (Adivisory Committee who have to approve the new charter), we’re also looking at the license of the specification document.
The CG specification has an open license that allows creating derivative work as long as there is attribution, while the W3C document license for documents on the recommendation track does not allow the creation of derivative work unless given explicit exceptions. This is an issue that is currently being discussed in the W3C with a proposal for a CC-BY license on the Recommendation track. However, my view is that it’s probably ok to use the different document licenses : the TT-WG will work on WebVTT 1.0 and give it a W3C document license, while the CG starts working on the next WebVTT version under the open CG license. It probably actually makes sense to have a less open license on a frozen spec.
Making the best of a complicated world
WebVTT is now proposed as part of the recharter of the TT-WG. I have no idea how complicated the process will become to achieve a W3C WebVTT 1.0 Recommendation, but I am hoping that what is outlined above will be workable in such a way that all of us get to focus on progressing the technology.
At TPAC I got the impression that the TT-WG is committed to progressing WebVTT to Recommendation status. I know that the TT-CG is committed to continue developing WebVTT to its full potential for all kinds of media-time aligned content with new kinds already discussed at FOMS. Let’s enable both groups to achieve their goals. As a consequence, we will allow the two formats to excel where they do : TTML as an interchange format and WebVTT as a browser rendering format.
-
ffmpeg thumbnailer configure/make trouble in CentOS6
16 décembre 2013, par Juneyoung OhI am using CentOS 6.4 86x64.
What I am planning to do is install ffmpegthumbnailer.
I have downloaded at the link below.
https://code.google.com/p/ffmpegthumbnailer/The problem is when I extract the tar.gz and command configure,
It alway says like this.
checking for FFMPEG... no
configure: error: Package requirements (libavutil libavformat libavcodec >= 52.26.0 libswscale) were not met:
No package 'libavutil' found
No package 'libavformat' found
No package 'libavcodec' found
No package 'libswscale' foundOf course, I already installed ffmpeg 1.2.
/usr/lib64/libswscale.so.0.11.0
/usr/lib64/libswscale.so.0and also have libswscale.so.
What can I do to solve this ?
Thanks:D
============I solved one and get another===============
I solved(?) this with what console said.
adjust PKG_CONFIG_PATH.
I find my libavutil.pc and give that path to PKG_CONFIG_PATH, like below.
export PKG_CONFIG_PATH=/usr/lib/pkgconfig/
then It looks OK, but I got another one.
./configure works nice with suspected message.
CONFIGURATION SUMMARY ----
png support : disabled
jpeg support : disabled
gio support : disabled
register thumbnailer : disabled
unittests : disabled
debug mode : disabledanyway, configure was OK, and I have make files now.
The problem is when I do make command, it shows error like below.
/usr/bin/ld: /usr//lib/libavformat.a(allformats.o): relocation R_X86_64_32 against `ff_a64_muxer' can not be used when making a shared object; recompile with -fPIC
/usr//lib/libavformat.a: could not read symbols: Bad value
collect2: ld returned 1 exit status
make[2]: *** [libffmpegthumbnailer.la] Error 1
make[2]: Leaving directory `/home/guest/Downloads/ffmpegthumbnailer-2.0.8'
make[1]: *** [all-recursive] Error 1
make[1]: Leaving directory `/home/guest/Downloads/ffmpegthumbnailer-2.0.8'
make: *** [all] Error 2Please, tell me that I have to do solve this:D
-
cannot link ffmpeg libraries for my own Qt project
14 août 2013, par Dan TEDIT : Question solved (see bottom)
I have spent MANY hours searching for a solution to my problem, but have not managed. I am on OSX and trying to link ffmpeg to my own Qt project. I have tried to do the simplest thing possible but even this does not work :
After gettings yasm and x264 installed, I ran
./configure —enable-static —enable-gpl —enable-libx264 and then
make && make installffmpeg runs fine when I then try to run it on the command line. I then just set up a simple project in the ffmpeg directory with the following ffmpeg.pro file :
TEMPLATE = app
QT += core
INCLUDEPATH += /usr/local/include
LIBS += -L/usr/local/lib
LIBS += -lavdevice -lavfilter -lavformat -lavcodec -lpostproc -lswresample -lswscale -lavutil -lpthread -lbz2 -lm -lz -lx264
HEADERS += ffmpeg.h
SOURCES += ffmpeg.cI'm not sure whether I need all those libraries, but they were all the .a files that ffmpeg created. When I try to build the project (as is), I get the following linker error :
g++ -headerpad_max_install_names -arch x86_64 -Xarch_x86_64 -mmacosx-version-min=10.5 -o ffmpeg.app/Contents/MacOS/ffmpeg ffmpeg.o -F/Users/dtamayo/QtSDK/Desktop/Qt/4.8.1/gcc/lib -L/Users/dtamayo/QtSDK/Desktop/Qt/4.8.1/gcc/lib -L/usr/local/lib -lavdevice -lavfilter -lavformat -lavcodec -lpostproc -lswresample -lswscale -lavutil -lpthread -lbz2 -lm -lz -lx264 -framework QtGui -L/usr/local/pgsql/lib -L/tmp/qt-stuff-85167/source/qt-everywhere-opensource-src-4.8.1/Desktop/Qt/4.8.1/gcc/lib -F/tmp/qt-stuff-85167/source/qt-everywhere-opensource-src-4.8.1/Desktop/Qt/4.8.1/gcc/lib -framework QtCore
ld : warning : directory not found for option '-L/usr/local/pgsql/lib'
ld : warning : directory not found for option '-L/tmp/qt-stuff-85167/source/qt-everywhere-opensource-src-4.8.1/Desktop/Qt/4.8.1/gcc/lib'
ld : warning : directory not found for option '-F/tmp/qt-stuff-85167/source/qt-everywhere-opensource-src-4.8.1/Desktop/Qt/4.8.1/gcc/lib'
Undefined symbols for architecture x86_64 :
"_audio_sync_method", referenced from :
_write_frame in ffmpeg.o
_do_audio_out in ffmpeg.o
"_audio_volume", referenced from :
_transcode_init in ffmpeg.o
"_cmdutils_read_file", referenced from :
_transcode_init in ffmpeg.o
"_configure_filtergraph", referenced from :
_decode_audio in ffmpeg.o
_decode_video in ffmpeg.o
_transcode_init in ffmpeg.o
"_copy_tb", referenced from :
_transcode_init in ffmpeg.o
"_copy_ts", referenced from :
_process_input in ffmpeg.o
"_debug_ts", referenced from :
_write_frame in ffmpeg.o
_do_audio_out in ffmpeg.o
_do_video_out in ffmpeg.o
_decode_video in ffmpeg.o
_process_input in ffmpeg.o
"_do_benchmark", referenced from :
_ffmpeg_cleanup in ffmpeg.o
_main in ffmpeg.o
"_do_benchmark_all", referenced from :
_update_benchmark in ffmpeg.o
"_do_hex_dump", referenced from :
_check_keyboard_interaction in ffmpeg.o
_process_input in ffmpeg.o
"_do_pkt_dump", referenced from :
_check_keyboard_interaction in ffmpeg.o
_process_input in ffmpeg.o
"_dts_delta_threshold", referenced from :
_process_input in ffmpeg.o
"_dts_error_threshold", referenced from :
_do_video_out in ffmpeg.o
_process_input in ffmpeg.o
"_exit_on_error", referenced from :
_write_frame in ffmpeg.o
_do_subtitle_out in ffmpeg.o
_process_input in ffmpeg.o
"_exit_program", referenced from :
_sigterm_handler in ffmpeg.o
_assert_avoptions in ffmpeg.o
_abort_codec_experimental in ffmpeg.o
_write_frame in ffmpeg.o
_do_audio_out in ffmpeg.o
_do_subtitle_out in ffmpeg.o
_do_video_out in ffmpeg.o
...
"_ffmpeg_parse_options", referenced from :
_main in ffmpeg.o
"_frame_bits_per_raw_sample", referenced from :
_transcode_init in ffmpeg.o
"_iconv", referenced from :
_avcodec_decode_subtitle2 in libavcodec.a(utils.o)
"_iconv_close", referenced from :
_avcodec_decode_subtitle2 in libavcodec.a(utils.o)
_avcodec_open2 in libavcodec.a(utils.o)
"_iconv_open", referenced from :
_avcodec_decode_subtitle2 in libavcodec.a(utils.o)
_avcodec_open2 in libavcodec.a(utils.o)
"_init_simple_filtergraph", referenced from :
_transcode_init in ffmpeg.o
"_ist_in_filtergraph", referenced from :
_decode_audio in ffmpeg.o
_decode_video in ffmpeg.o
"_options", referenced from :
_main in ffmpeg.o
(maybe you meant : _ff_mpv_generic_options, _ff_rawvideo_options , _av_set_options_string , _ff_rtsp_options )
"_parse_loglevel", referenced from :
_main in ffmpeg.o
"_parse_time_or_die", referenced from :
_parse_forced_key_frames in ffmpeg.o
"_print_error", referenced from :
_write_frame in ffmpeg.o
_process_input in ffmpeg.o
"_print_stats", referenced from :
_print_report in ffmpeg.o
"_qp_hist", referenced from :
_print_report in ffmpeg.o
_check_keyboard_interaction in ffmpeg.o
"_register_exit", referenced from :
_main in ffmpeg.o
"_show_banner", referenced from :
_main in ffmpeg.o
"_show_usage", referenced from :
_main in ffmpeg.o
"_stdin_interaction", referenced from :
_transcode in ffmpeg.o
"_uninit_opts", referenced from :
_ffmpeg_cleanup in ffmpeg.o
"_video_sync_method", referenced from :
_write_frame in ffmpeg.o
_do_video_out in ffmpeg.o
_transcode_init in ffmpeg.o
"_vstats_filename", referenced from :
_ffmpeg_cleanup in ffmpeg.o
_do_video_out in ffmpeg.o
_do_video_stats in ffmpeg.o
_flush_encoders in ffmpeg.o
ld : symbol(s) not found for architecture x86_64
collect2 : ld returned 1 exit status
make : Leaving directory `/Users/dtamayo/Desktop/ffmpeg-build-desktop-Desktop_Qt_4_8_1_for_GCC__Qt_SDK__Debug'
make : * [ffmpeg.app/Contents/MacOS/ffmpeg] Error 1
14:35:42 : The process "/usr/bin/make" exited with code 2.
Error while building project ffmpeg (target : Desktop)
When executing build step 'Make'
EDIT :
Thank you very much for your quick responses. I'm embarrassed to say that with the help of a friend I found the problem, so I'll add the solution here in case there are others as inept as I am that run into the same issue !
The problem is that I hadn't added the following source files to the project, which do not get built as part of one of the ffmpeg libraries :
cmdutils.c ffmpeg_filter.c ffmpeg_opt.c
In addition, I had to add usr/lib to my library path, and add the library -liconv.