Recherche avancée

Médias (1)

Mot : - Tags -/école

Autres articles (18)

  • Participer à sa documentation

    10 avril 2011

    La documentation est un des travaux les plus importants et les plus contraignants lors de la réalisation d’un outil technique.
    Tout apport extérieur à ce sujet est primordial : la critique de l’existant ; la participation à la rédaction d’articles orientés : utilisateur (administrateur de MediaSPIP ou simplement producteur de contenu) ; développeur ; la création de screencasts d’explication ; la traduction de la documentation dans une nouvelle langue ;
    Pour ce faire, vous pouvez vous inscrire sur (...)

  • Contribute to a better visual interface

    13 avril 2011

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

  • Keeping control of your media in your hands

    13 avril 2011, par

    The vocabulary used on this site and around MediaSPIP in general, aims to avoid reference to Web 2.0 and the companies that profit from media-sharing.
    While using MediaSPIP, you are invited to avoid using words like "Brand", "Cloud" and "Market".
    MediaSPIP is designed to facilitate the sharing of creative media online, while allowing authors to retain complete control of their work.
    MediaSPIP aims to be accessible to as many people as possible and development is based on expanding the (...)

Sur d’autres sites (7311)

  • ffmpeg stops capturing whole hour of HTTP stream after some time

    7 juillet 2020, par CompuChip

    First of all, sorry if I'm using the wrong terminology. I've been playing around with nginx and I'm still a bit confused about RTMP and HLS and other acronyms.

    


    I've managed to setup OBS to stream to an nginx server, which takes the RTMP stream and chops it into pieces for HLS. Here's the relevant part of the nginx configuration file.

    


    rtmp {
    server {
        listen 1935;
        chunk_size 4000;
        ping 30s;
        deny play all;

        application live {
            live on;
            hls on;
            hls_nested on; # Create a new folder for each stream
            hls_path /mnt/hls/live;
            hls_fragment 3s;
            hls_fragment_naming timestamp;
            hls_playlist_length 60s;
        }
    }
}

http {
    server {
        listen 81 ssl;

        #creates the http-location for our full-resolution (desktop) HLS stream - "http://localhost:8080/live/test/index.m3u8"
        location /live {
            # Elided caching and CORS for brevity

            alias /mnt/hls/live;
            add_header Cache-Control no-cache;
            index index.m3u8;
        }
    }
}


    


    This works well, I can view the stream in VLC or on a website and it looks smooth. Now I wanted to add some logging : I'd like to write full hours (starting at xx:00:00 and ending at xx:59:59) to a file named log_yyyymmdd_hh.mp4, e.g. log_20200707_18.mp4 for the files of 7 July 2020, 18:00 - 19:00 hrs. So I've set up an hourly cron job with the following ffmpeg command :

    


    ffmpeg -i https://stream.example.com:81/live/<streamkey> -preset veryfast -maxrate 2000k \&#xA;    -bufsize 2000k -g 60 -t 3600 -y /var/video/log/$(date &#x2B;\%Y\%m\%d_\%H00).mp4 >/dev/null 2>&amp;1&#xA;</streamkey>

    &#xA;

    At first this seemed to work well, so I left it running happily for about 24 hours. When I checked, most of my hourly files were small ( 100MB) files of about 10 to 15 minutes long. It seems like any small delay in the stream will cause ffmpeg to stop writing to the file. I suspect such hiccups may for example be caused by an OBS plugin and I'll need to look into that, but I would prefer that ffmpeg will retry for some time before giving up. What arguments should I be passing to ffmpeg to make it not break when the stream is down for, say, up to a second every now and then ?.

    &#xA;

    When I view back the HLS files there don't seem to be any noticeable gaps, so eventually all the data arrives. I went for the crontab solution with ffmpeg because when recording from nginx I could not figure out how to start recording at the start of the whole hour.

    &#xA;

  • Centos7 Server, Masrer Playlist can't create CODECS when use ffmpeg with libx265 (h.265)

    8 juillet 2020, par Duy Đức Nguyễn Phạm

    I use ffmpeg to stream from a link, when I use libx264 it run very good but when I use libx265, file master playlist can't create CODECS

    &#xA;

    #ffmpeg&#xA;&#xA;ffmpeg version N-98423-g584f396 Copyright (c) 2000-2020 the FFmpeg developers&#xA;  built with gcc 4.8.5 (GCC) 20150623 (Red Hat 4.8.5-39)&#xA;  configuration: --prefix=/./usr/local/ffmpeg --bindir=/./usr/local/bin/ --pkg-config-flags=--static --extra-cflags=-I/root/ffmpeg_build/include --extra-ldflags=-L/root/ffmpeg_build/lib --extra-libs=-lpthread --extra-libs=-lm --bindir=/root/bin --enable-gpl --enable-libfdk_aac --enable-libfreetype --enable-libopus --enable-libvpx --enable-libx264 --enable-libx265 --enable-nonfree&#xA;  libavutil      56. 55.100 / 56. 55.100&#xA;  libavcodec     58. 94.100 / 58. 94.100&#xA;  libavformat    58. 48.100 / 58. 48.100&#xA;  libavdevice    58. 11.101 / 58. 11.101&#xA;  libavfilter     7. 86.100 /  7. 86.100&#xA;  libswscale      5.  8.100 /  5.  8.100&#xA;  libswresample   3.  8.100 /  3.  8.100&#xA;  libpostproc    55.  8.100 / 55.  8.100&#xA;

    &#xA;

    I check output video by command

    &#xA;

    #ffprobe -v error -select_streams v:0 -show_entries stream=codec_name   -of default=noprint_wrappers=1:nokey=1 v0_s.m3u8&#xA;

    &#xA;

    Then the screen show

    &#xA;

    hevc&#xA;hevc&#xA;

    &#xA;

    And this is master playlist comparison example when I use x265 (v0) and x264 (v1)

    &#xA;

    #EXTM3U&#xA;#EXT-X-VERSION:7&#xA;#EXT-X-STREAM-INF:BANDWIDTH=401500,RESOLUTION=640x480&#xA;v0/prog_index.m3u8&#xA;&#xA;#EXT-X-STREAM-INF:BANDWIDTH=2200000,RESOLUTION=1280x720,CODECS="avc1.42c01f"&#xA;v1/prog_index.m3u8&#xA;

    &#xA;

    Sorry about my English.&#xA;Can you help me ? Thank you !

    &#xA;

  • MLT query video_codecs not listing libx264

    7 juillet 2020, par Terryn94

    Querying video codecs does not list libx264 as an available codec

    &#xA;

    [terry@localhost ~]$ melt -query video_codecs | grep 264&#xA;  - h264_nvenc&#xA;  - h264_v4l2m2m&#xA;  - h264_vaapi&#xA;  - nvenc_h264&#xA;  - h264&#xA;  - h264_cuvid&#xA;

    &#xA;

    But I can use it in a command such as :

    &#xA;

    melt avformat:DarkStar.webm -consumer avformat:output.mp4 acodec=aac vcodec=libx264&#xA;

    &#xA;

    and it works successfully.&#xA;This is causing a problem with kdenlive. When selecting Render and choosing the format MP4 - the dominating format (H264/AAC) the render option is disabled with the error Unsupported video codec : libx264.

    &#xA;

    kdenlive checks the profile codec against the list obtained from MLT using :

    &#xA;

    Mlt::Properties vcodecs(mlt_properties(consumer->get_data("vcodec")));&#xA;

    &#xA;

    which seems to get the same list as query video_codecs.

    &#xA;

    For info here is what ffmpeg says about the codecs :

    &#xA;

    [terry@localhost ~]$ ffmpeg -codecs | grep 264&#xA;ffmpeg version 4.3 Copyright (c) 2000-2020 the FFmpeg developers&#xA;  built with gcc 9.3.0 (PCLinuxOS 9.3.0-1pclos2020)&#xA;  configuration: --prefix=/usr --enable-shared --enable-pic --libdir=/usr/lib64 --shlibdir=/usr/lib64 --incdir=/usr/include --extra-cflags=-I/usr/include/nvenc --disable-stripping --enable-postproc --enable-gpl --enable-pthreads --enable-libtheora --enable-libvorbis --disable-encoder=vorbis --enable-libvpx --enable-runtime-cpudetect --enable-libdc1394 --enable-librtmp --enable-libspeex --enable-libfreetype --enable-libgsm --enable-libcelt --enable-libopus --enable-libopencv --enable-libopenjpeg --enable-libtwolame --enable-libxavs --enable-frei0r --enable-libmodplug --enable-libass --enable-gnutls --enable-libcdio --enable-libpulse --enable-libv4l2 --enable-avresample --enable-opencl --enable-libmp3lame --enable-libaom --enable-sndio --enable-libdav1d --enable-libopencore-amrnb --enable-libopencore-amrwb --enable-version3 --enable-libx264 --enable-libx265 --enable-libvo-amrwbenc --enable-libxvid --enable-decoder=atrac3 --enable-decoder=atrac3p --enable-libwebp --enable-libfdk-aac --enable-nonfree --enable-cuda --enable-cuvid --enable-nvenc --extra-cflags=-I/usr/local/cuda/include --extra-ldflags=-L/usr/local/cuda/lib64&#xA;  libavutil      56. 51.100 / 56. 51.100&#xA;  libavcodec     58. 91.100 / 58. 91.100&#xA;  libavformat    58. 45.100 / 58. 45.100&#xA;  libavdevice    58. 10.100 / 58. 10.100&#xA;  libavfilter     7. 85.100 /  7. 85.100&#xA;  libavresample   4.  0.  0 /  4.  0.  0&#xA;  libswscale      5.  7.100 /  5.  7.100&#xA;  libswresample   3.  7.100 /  3.  7.100&#xA;  libpostproc    55.  7.100 / 55.  7.100&#xA; DEV.LS h264                 H.264 / AVC / MPEG-4 AVC / MPEG-4 part 10 (decoders: h264 h264_v4l2m2m h264_cuvid ) (encoders: libx264 libx264rgb h264_nvenc h264_v4l2m2m h264_vaapi nvenc nvenc_h264 )&#xA;

    &#xA;

    Software versions :

    &#xA;

    mlt-6.20.0

    &#xA;

    ffmpeg-4.3

    &#xA;

    x264-1.157.20190309

    &#xA;