Recherche avancée

Médias (1)

Mot : - Tags -/copyleft

Autres articles (57)

  • Les autorisations surchargées par les plugins

    27 avril 2010, par

    Mediaspip core
    autoriser_auteur_modifier() afin que les visiteurs soient capables de modifier leurs informations sur la page d’auteurs

  • Publier sur MédiaSpip

    13 juin 2013

    Puis-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

  • Support audio et vidéo HTML5

    10 avril 2011

    MediaSPIP 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 (...)

Sur d’autres sites (9543)

  • Multi core theora encoding

    26 octobre 2012, par Jamie Taylor

    We convert uploaded video to MP4 and OGV, but while trying to speed up the process we've hit a wall. We found the bottleneck is the OGV encoding, While it might take 5 minutes to convert a 350mb AVI to MP4, it takes roughly 25-30 minutes to convert the same file to OGV.

    avconv supports multithreading/multiple cores but it seems that libtheora doesn't, does anyone have any way of encoding over multiple cores ? I found an old mail group which discussed a patch but I can't find much else about it, or if it even still works 5 years on.

    So. Is multi-core theora processing possible and what should I use to do it ?

    For Reference :

    avconv -y -i big_buck_bunny_720p_surround.avi -vcodec libtheora -qscale 10 -bufsize 20M -same_quant -acodec libvorbis -ac 2 -ar 44100 -ab 128k buck.ogv
  • Video streaming through HAProxy

    21 janvier 2015, par n00bie

    I want to stream video from my webcam to many clients (all clients use html 5 video player).

    Now i have this :

    Server :

    sudo gst-launch-0.10 tcpserversrc port = 1234 ! oggparse ! tcpserversink port = 1235

    Sender :

    ffmpeg -f video4linux2 -s 320x240 -i /dev/mycam -f alsa -i hw:1 -codec:v libtheora -qscale:v 5 -codec:a libvorbis -qscale:a 5 -f ogg http://localhost:1234

    Receiver :

    <video width="320" height="240" autoplay="autoplay">
     <source src="http://localhost:1235" type="video/ogg">
     Your browser does not support the video tag.
    </source></video>

    It works.

    Now i want to increase count of web cameras. Therefore, i need to increase count of gstreamer’s. But, i want to use only port 80 to communucate between server and clients, therefore i try to use HAProxy.

    HAProxy config : (only one web camera)

    global
           maxconn 4096
           user workshop-staff
           group workshop-staff
           daemon
           log 127.0.0.1 local0 debug

    defaults
           log     global
           mode    http
           option  httplog
           option  dontlognull
           retries 3
           option redispatch
           option http-server-close
           option forwardfor
           maxconn 2000
           timeout connect 5s
           timeout client  15min
           timeout server  15min
           option http-no-delay

    frontend public
           bind *:80
           use_backend stream_input if { path_beg /stream_input }        
           use_backend stream_output if { path_beg /stream_output }

    backend stream_input
           server stream_input1 localhost:1234

    backend stream_output
           server stream_output1 localhost:1235

    Server :

    sudo gst-launch-0.10 tcpserversrc port = 1234 ! oggparse ! tcpserversink port = 1235

    Sender :

    ffmpeg -f video4linux2 -s 320x240 -i /dev/mycam -f alsa -i hw:1 -codec:v libtheora -qscale:v 5 -codec:a libvorbis -qscale:a 5 -f ogg http://localhost/stream_input

    Receiver :

    <video width="320" height="240" autoplay="autoplay">
     <source src="http://localhost/stream_output" type="video/ogg">
     Your browser does not support the video tag.
    </source></video>

    But, in this case, HTML5 video player shows nothing.

    If i change receiver to : (i.e. use localhost:1235 instead of localhost/stream_output)

    <video width="320" height="240" autoplay="autoplay">
     <source src="http://localhost:1235" type="video/ogg">
     Your browser does not support the video tag.
    </source></video>

    It works. Could someone help me ?

  • Streaming video from an image using FFMPEG on Windows

    26 mai 2013, par Daniel Zohar

    I wrote a program that simulates a camera and converts the output into a video stream. The program is required to be able to run on Windows.
    There are two components in the system :

    1. Camera Simulator. A C++ program that simulates the camera. It copies a pre-generated frame (i.e. PNG file) every 0.1 seconds, using the windows copy command, to a destination path ./target/target_image.png
    2. Video Stream. Using FFmpeg, it creates a video stream out of the copied images. FFmpeg is ran with the following command :
      ffmpeg -loop 1 -i ./target/target_image.png -r 10 -vcodec mpeg4 -f mpegts udp://127.0.0.1:1234

    When running the whole thing together, it works fine for a few seconds until the ffmpeg halts. Here is a log while running in debug mode :

    ffmpeg version N-52458-gaa96439 Copyright (c) 2000-2013 the FFmpeg developers
     built on Apr 24 2013 22:19:32 with gcc 4.8.0 (GCC)
     configuration: --enable-gpl --enable-version3 --disable-w32threads --enable-avisynth --enable-bzlib --enable-fontconfig --enable-frei0r --enable-gnutls --enable-iconv --enable-libass --enable-libbluray --enable-libcaca --enable-libfreetype --enable-libgsm --enable-libilbc --enable-libmp3lame --enable-libopencore-amrnb --enable-libopencore-amrwb --enable-libopenjpeg --enable-libopus --enable-librtmp --enable-libschroedinger --enable-libsoxr --enable-libspeex --enable-libtheora --enable-libtwolame --enable-libvo-aacenc --enable-libvo-amrwbenc --enable-libvorbis --enable-libvpx --enable-libx264 --enable-libxavs --enable-libxvid --enable-zlib
     libavutil      52. 27.101 / 52. 27.101
     libavcodec     55.  6.100 / 55.  6.100
     libavformat    55.  3.100 / 55.  3.100
     libavdevice    55.  0.100 / 55.  0.100
     libavfilter     3. 60.101 /  3. 60.101
     libswscale      2.  2.100 /  2.  2.100
     libswresample   0. 17.102 /  0. 17.102
     libpostproc    52.  3.100 / 52.  3.100
    Splitting the commandline.
    Reading option &#39;-loop&#39; ... matched as AVOption &#39;loop&#39; with argument &#39;1&#39;.
    Reading option &#39;-i&#39; ... matched as input file with argument &#39;./target/target_image.png&#39;.
    Reading option &#39;-r&#39; ... matched as option &#39;r&#39; (set frame rate (Hz value, fraction or abbreviation)) with argument &#39;10&#39;.
    Reading option &#39;-vcodec&#39; ... matched as option &#39;vcodec&#39; (force video codec (&#39;copy&#39; to copy stream)) with argument &#39;mpeg4&#39;.
    Reading option &#39;-f&#39; ... matched as option &#39;f&#39; (force format) with argument &#39;mpegts&#39;.
    Reading option &#39;udp://127.0.0.1:1234&#39; ... matched as output file.
    Reading option &#39;-loglevel&#39; ... matched as option &#39;loglevel&#39; (set logging level) with argument &#39;debug&#39;.
    Finished splitting the commandline.
    Parsing a group of options: global .
    Applying option loglevel (set logging level) with argument debug.
    Successfully parsed a group of options.
    Parsing a group of options: input file ./target/target_image.png.
    Successfully parsed a group of options.
    Opening an input file: ./target/target_image.png.
    [AVIOContext @ 02678840] Statistics: 234307 bytes read, 0 seeks
    [AVIOContext @ 02678840] Statistics: 221345 bytes read, 0 seeks
       Last message repeated 1 times
    [AVIOContext @ 02678840] Statistics: 226329 bytes read, 0 seeks
       Last message repeated 2 times
    [AVIOContext @ 02678840] Statistics: 228676 bytes read, 0 seeks
       Last message repeated 2 times
    [AVIOContext @ 02678840] Statistics: 230685 bytes read, 0 seeks
       Last message repeated 2 times
    [AVIOContext @ 02678840] Statistics: 232697 bytes read, 0 seeks
       Last message repeated 5 times
    [AVIOContext @ 02678840] Statistics: 234900 bytes read, 0 seeks
       Last message repeated 2 times
    [AVIOContext @ 02678840] Statistics: 236847 bytes read, 0 seeks
    [image2 @ 02677ac0] Probe buffer size limit of 5000000 bytes reached
    Input #0, image2, from &#39;./target/target_image.png&#39;:
     Duration: 00:00:00.04, start: 0.000000, bitrate: N/A
       Stream #0:0, 22, 1/25: Video: png, rgb24, 1274x772 [SAR 1:1 DAR 637:386], 1/25, 25 fps, 25 tbr, 25 tbn, 25 tbc
    Successfully opened the file.
    Parsing a group of options: output file udp://127.0.0.1:1234.
    Applying option r (set frame rate (Hz value, fraction or abbreviation)) with argument 10.
    Applying option vcodec (force video codec (&#39;copy&#39; to copy stream)) with argument mpeg4.
    Applying option f (force format) with argument mpegts.
    Successfully parsed a group of options.
    Opening an output file: udp://127.0.0.1:1234.
    Successfully opened the file.
    [graph 0 input from stream 0:0 @ 02769280] Setting &#39;video_size&#39; to value &#39;1274x772&#39;
    [graph 0 input from stream 0:0 @ 02769280] Setting &#39;pix_fmt&#39; to value &#39;2&#39;
    [graph 0 input from stream 0:0 @ 02769280] Setting &#39;time_base&#39; to value &#39;1/25&#39;
    [graph 0 input from stream 0:0 @ 02769280] Setting &#39;pixel_aspect&#39; to value &#39;1/1&#39;
    [graph 0 input from stream 0:0 @ 02769280] Setting &#39;sws_param&#39; to value &#39;flags=2&#39;
    [graph 0 input from stream 0:0 @ 02769280] Setting &#39;frame_rate&#39; to value &#39;25/1&#39;
    [graph 0 input from stream 0:0 @ 02769280] w:1274 h:772 pixfmt:rgb24 tb:1/25 fr:25/1 sar:1/1 sws_param:flags=2
    [format @ 02768ba0] compat: called with args=[yuv420p]
    [format @ 02768ba0] Setting &#39;pix_fmts&#39; to value &#39;yuv420p&#39;
    [auto-inserted scaler 0 @ 02768740] Setting &#39;w&#39; to value &#39;0&#39;
    [auto-inserted scaler 0 @ 02768740] Setting &#39;h&#39; to value &#39;0&#39;
    [auto-inserted scaler 0 @ 02768740] Setting &#39;flags&#39; to value &#39;0x4&#39;
    [auto-inserted scaler 0 @ 02768740] w:0 h:0 flags:&#39;0x4&#39; interl:0
    [format @ 02768ba0] auto-inserting filter &#39;auto-inserted scaler 0&#39; between the filter &#39;Parsed_null_0&#39; and the filter &#39;format&#39;
    [AVFilterGraph @ 026772c0] query_formats: 4 queried, 3 merged, 1 already done, 0 delayed
    [auto-inserted scaler 0 @ 02768740] w:1274 h:772 fmt:rgb24 sar:1/1 -> w:1274 h:772 fmt:yuv420p sar:1/1 flags:0x4
    [mpeg4 @ 02785020] detected 4 logical cores
    [mpeg4 @ 02785020] intra_quant_bias = 0 inter_quant_bias = -64
    [mpegts @ 0277da40] muxrate VBR, pcr every 1 pkts, sdt every 200, pat/pmt every 40 pkts
    Output #0, mpegts, to &#39;udp://127.0.0.1:1234&#39;:
     Metadata:
       encoder         : Lavf55.3.100
       Stream #0:0, 0, 1/90000: Video: mpeg4, yuv420p, 1274x772 [SAR 1:1 DAR 637:386], 1/10, q=2-31, 200 kb/s, 90k tbn, 10 tbc
    Stream mapping:
     Stream #0:0 -> #0:0 (png -> mpeg4)
    Press [q] to stop, [?] for help
    *** drop!
       Last message repeated 10 times
    frame=   11 fps=0.0 q=4.0 size=     118kB time=00:00:01.10 bitrate= 875.1kbits/s dup=0 drop=11    
    Statistics: 242771 bytes read, 0 seeks
    [AVIOContext @ 02674a60] Statistics: 246525 bytes read, 0 seeks
    *** drop!
    [AVIOContext @ 02674a60] Statistics: 230678 bytes read, 0 seeks
    [AVIOContext @ 02674a60] Statistics: 244023 bytes read, 0 seeks
    *** drop!
    [AVIOContext @ 02674a60] Statistics: 246389 bytes read, 0 seeks

    *** drop!
    [AVIOContext @ 02674a60] Statistics: 224478 bytes read, 0 seeks
    [AVIOContext @ 02674a60] Statistics: 228013 bytes read, 0 seeks
    *** drop!
    [image2 @ 02677ac0] Could not open file : ./target/target_image.png
    ./target/target_image.png: Input/output error
    [output stream 0:0 @ 02768c20] EOF on sink link output stream 0:0:default.
    No more output streams to write to, finishing.
    frame=  164 fps= 17 q=31.0 Lsize=     959kB time=00:00:16.40 bitrate= 478.9kbits/s dup=0 drop=240    

    video:869kB audio:0kB subtitle:0 global headers:0kB muxing overhead 10.285235%
    404 frames successfully decoded, 0 decoding errors
    [AVIOContext @ 026779c0] Statistics: 0 seeks, 746 writeouts

    It seems to me there's some kind of collision between the reading and writing to/from the same file. What's also interesting is that on Linux (while replacing the copy with cp) the program works just fine.

    Can someone suggest a way to solve this issue ? Alternatives solutions are also acceptable as long as the logical workflow remains the same.