Recherche avancée

Médias (1)

Mot : - Tags -/publier

Autres articles (52)

  • 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

  • Contribute to translation

    13 avril 2011

    You can help us to improve the language used in the software interface to make MediaSPIP more accessible and user-friendly. You can also translate the interface into any language that allows it to spread to new linguistic communities.
    To do this, we use the translation interface of SPIP where the all the language modules of MediaSPIP are available. Just subscribe to the mailing list and request further informantion on translation.
    MediaSPIP is currently available in French and English (...)

Sur d’autres sites (8655)

  • rtpdec_hevc : Drop a duplicated, nonstandard entry

    17 septembre 2014, par Vittorio Giovara
    rtpdec_hevc : Drop a duplicated, nonstandard entry
    

    The RFC spec draft only specifies the "H265" name - there is no
    specification saying how to interpret "HEVC" (if such a packet
    format is specified it could be an entirely different format).

    Since this is a very new standard (still a draft), there is little
    need for compatibility with existing, broken implementations. Therefore
    remove the extra alias, to avoid the risk of encouraging incorrect
    usage.

    Intentionally keeping the ff_hevc_dynamic_handler name for the
    handler, to use "hevc" consistently as name for the codec instead
    of "h265" within the library internals as long as there only is one
    single variant in actual use.

    Signed-off-by : Martin Storsjö <martin@martin.st>

    • [DH] libavformat/rtpdec.c
    • [DH] libavformat/rtpdec_formats.h
    • [DH] libavformat/rtpdec_hevc.c
  • configure : Enable -fno-common for Darwin targets, avoid linker warnings

    29 avril, par Martin Storsjö
    configure : Enable -fno-common for Darwin targets, avoid linker warnings
    

    Since GCC 10 and llvm.org Clang 11, -fno-common is the default.
    However Apple's Xcode Clang hasn't followed suit yet, and still
    defaults to -fcommon.

    Compiling with -fcommon causes uninitialized global variables to
    be treated as "common" (which allows multiple object files to have
    similar definitions).

    Common variables seem to have the issue that their intended alignment
    isn't signaled, so the linker assumes that they may need alignment
    according to their full size.

    With large global tables, this can lead to linker warnings like
    this, with Xcode 16.3 :

    ld : warning : reducing alignment of section __DATA,__common from 0x8000 to 0x4000 because it exceeds segment maximum alignment

    This can be reproduced with a small snippet like this :

    char table[16385] ;
    int main(int argc, char* argv[]) return 0 ;

    Compiling with -fno-common avoids this issue and warning, and
    matches the default behaviour of other compilers. (Compiling with
    - fno-common also avoids the risk of accidentally accepting
    duplicate definitions of global variables, as long as they are
    uninitialized.)

    Signed-off-by : Martin Storsjö <martin@martin.st>

    • [DH] configure
  • Error Opening RTMP Stream through FFmpeg command when executed through exec package [closed]

    3 octobre 2024, par Akhil

    I have been trying to transcode the live stream from RTMP server running on rtmp://localhost:1936/live/test with FFmpeg in a Go application using os/exec package, But seems to not work and gives the input/output error (I have attached below). The same exact ffmpeg command when I execute on terminal, works as its supposed to. Not Sure why that is, here is my code for reproducing and analyzing the mistakes.

    &#xA;

    ffmpegCmd := fmt.Sprintf("ffmpeg -nostdin -i rtmp://localhost:1936/live/%s -c:v libx264 -s %s -f %s %s/stream.mpd",&#xA;        streamKey, resolution, sp.OutputFormat, outputPath)&#xA;    log.Printf("Executing FFmpeg command: %s", ffmpegCmd)&#xA;&#xA;    // Prepare the command execution with a timeout context&#xA;    ctx, cancel := context.WithTimeout(context.Background(), 60*time.Second) // Set a 60-second timeout&#xA;    defer cancel()&#xA;&#xA;    cmd := exec.CommandContext(ctx, "bash", "-c", ffmpegCmd)&#xA;

    &#xA;

    the ffmpeg command looks like this :
    &#xA;ffmpeg -nostdin -i rtmp://localhost:1936/live/test -c:v libx264 -s 1920x1080 -f dash output/test/1080p/stream.mpd

    &#xA;

    I get the following error :

    &#xA;

    Error opening input: Input/output error&#xA;&#xA;Error opening input file rtmp://localhost:1936/live/test.&#xA;&#xA;Error opening input files: Input/output error&#xA;&#xA;Exiting normally, received signal 2.&#xA;&#xA;signal: interrupt&#xA;

    &#xA;

    I have already tried to break the command, and then execute it. Something like :

    &#xA;

    cmd := exec.CommandContext(ctx,&#xA;        "ffmpeg",&#xA;        "-nostdin",&#xA;        "-i", "rtmp://localhost:1936/live/"&#x2B;streamKey,&#xA;        "-c:v", "libx264",&#xA;        "-s", resolution,&#xA;        "-f", sp.OutputFormat,&#xA;        outputPath&#x2B;"/stream.mpd")&#xA;

    &#xA;

    After running the ffmpeg command with -loglevel debug and -report :

    &#xA;

    Here is the logs and errors I get :

    &#xA;

    When I run it within the go application :

    &#xA;

    ffmpeg started on 2024-10-02 at 12:00:06&#xA;Report written to "ffmpeg-20241002-120006.log"&#xA;Log level: 48&#xA;Command line:&#xA;ffmpeg -loglevel debug -report -i rtmp://localhost:1936/live/test -c:v libx264 -s 1920x1080 -f dash ./output/test/1080p/stream.mpd&#xA;ffmpeg version 7.0.2 Copyright (c) 2000-2024 the FFmpeg developers&#xA;  built with Apple clang version 15.0.0 (clang-1500.3.9.4)&#xA;  configuration: --prefix=/opt/homebrew/Cellar/ffmpeg/7.0.2_1 --enable-shared --enable-pthreads --enable-version3 --cc=clang --host-cflags= --host-ldflags=&#x27;-Wl,-ld_classic&#x27; --enable-ffplay --enable-gnutls --enable-gpl --enable-libaom --enable-libaribb24 --enable-libbluray --enable-libdav1d --enable-libharfbuzz --enable-libjxl --enable-libmp3lame --enable-libopus --enable-librav1e --enable-librist --enable-librubberband --enable-libsnappy --enable-libsrt --enable-libssh --enable-libsvtav1 --enable-libtesseract --enable-libtheora --enable-libvidstab --enable-libvmaf --enable-libvorbis --enable-libvpx --enable-libwebp --enable-libx264 --enable-libx265 --enable-libxml2 --enable-libxvid --enable-lzma --enable-libfontconfig --enable-libfreetype --enable-frei0r --enable-libass --enable-libopencore-amrnb --enable-libopencore-amrwb --enable-libopenjpeg --enable-libspeex --enable-libsoxr --enable-libzmq --enable-libzimg --disable-libjack --disable-indev=jack --enable-videotoolbox --enable-audiotoolbox --enable-neon&#xA;  libavutil      59.  8.100 / 59.  8.100&#xA;  libavcodec     61.  3.100 / 61.  3.100&#xA;  libavformat    61.  1.100 / 61.  1.100&#xA;  libavdevice    61.  1.100 / 61.  1.100&#xA;  libavfilter    10.  1.100 / 10.  1.100&#xA;  libswscale      8.  1.100 /  8.  1.100&#xA;  libswresample   5.  1.100 /  5.  1.100&#xA;  libpostproc    58.  1.100 / 58.  1.100&#xA;Splitting the commandline.&#xA;Reading option &#x27;-loglevel&#x27; ... matched as option &#x27;loglevel&#x27; (set logging level) with argument &#x27;debug&#x27;.&#xA;Reading option &#x27;-report&#x27; ... matched as option &#x27;report&#x27; (generate a report) with argument &#x27;1&#x27;.&#xA;Reading option &#x27;-i&#x27; ... matched as input url with argument &#x27;rtmp://localhost:1936/live/test&#x27;.&#xA;Reading option &#x27;-c:v&#x27; ... matched as option &#x27;c&#x27; (select encoder/decoder (&#x27;copy&#x27; to copy stream without reencoding)) with argument &#x27;libx264&#x27;.&#xA;Reading option &#x27;-s&#x27; ... matched as option &#x27;s&#x27; (set frame size (WxH or abbreviation)) with argument &#x27;1920x1080&#x27;.&#xA;Reading option &#x27;-f&#x27; ... matched as option &#x27;f&#x27; (force container format (auto-detected otherwise)) with argument &#x27;dash&#x27;.&#xA;Reading option &#x27;./output/test/1080p/stream.mpd&#x27; ... matched as output url.&#xA;Finished splitting the commandline.&#xA;Parsing a group of options: global .&#xA;Applying option loglevel (set logging level) with argument debug.&#xA;Applying option report (generate a report) with argument 1.&#xA;Successfully parsed a group of options.&#xA;Parsing a group of options: input url rtmp://localhost:1936/live/test.&#xA;Successfully parsed a group of options.&#xA;Opening an input file: rtmp://localhost:1936/live/test.&#xA;[AVFormatContext @ 0x13f721f90] Opening &#x27;rtmp://localhost:1936/live/test&#x27; for reading&#xA;[rtmp @ 0x13f6040e0] No default whitelist set&#xA;[tcp @ 0x13f7223d0] No default whitelist set&#xA;[tcp @ 0x13f7223d0] Original list of addresses:&#xA;[tcp @ 0x13f7223d0] Address ::1 port 1936&#xA;[tcp @ 0x13f7223d0] Address 127.0.0.1 port 1936&#xA;[tcp @ 0x13f7223d0] Interleaved list of addresses:&#xA;[tcp @ 0x13f7223d0] Address ::1 port 1936&#xA;[tcp @ 0x13f7223d0] Address 127.0.0.1 port 1936&#xA;[tcp @ 0x13f7223d0] Starting connection attempt to ::1 port 1936&#xA;[tcp @ 0x13f7223d0] Connection attempt to ::1 port 1936 failed: Connection refused&#xA;[tcp @ 0x13f7223d0] Starting connection attempt to 127.0.0.1 port 1936&#xA;[tcp @ 0x13f7223d0] Successfully connected to 127.0.0.1 port 1936&#xA;[rtmp @ 0x13f6040e0] Handshaking...&#xA;[rtmp @ 0x13f6040e0] Type answer 3&#xA;[rtmp @ 0x13f6040e0] Server version 13.14.10.13&#xA;[rtmp @ 0x13f6040e0] Proto = rtmp, path = /live/test, app = live, fname = test&#xA;[rtmp @ 0x13f6040e0] Window acknowledgement size = 5000000&#xA;[rtmp @ 0x13f6040e0] Max sent, unacked = 5000000&#xA;[rtmp @ 0x13f6040e0] New incoming chunk size = 4096&#xA;[rtmp @ 0x13f6040e0] Creating stream...&#xA;[rtmp @ 0x13f6040e0] Sending play command for &#x27;test&#x27;&#xA;[rtmp @ 0x13f6040e0] Deleting stream...&#xA;[in#0 @ 0x13f721d40] Error opening input: Input/output error&#xA;Error opening input file rtmp://localhost:1936/live/test.&#xA;Error opening input files: Input/output error&#xA;Exiting normally, received signal 2.&#xA;

    &#xA;

    This is what i get when i run the same command on terminal :

    &#xA;

    <same as="as" but="but" please="please" scroll="scroll" further="further">&#xA;&#xA;[rtmp @ 0x1437144c0] No default whitelist set&#xA;[tcp @ 0x143604f20] No default whitelist set&#xA;[tcp @ 0x143604f20] Original list of addresses:&#xA;[tcp @ 0x143604f20] Address ::1 port 1936&#xA;[tcp @ 0x143604f20] Address 127.0.0.1 port 1936&#xA;[tcp @ 0x143604f20] Interleaved list of addresses:&#xA;[tcp @ 0x143604f20] Address ::1 port 1936&#xA;[tcp @ 0x143604f20] Address 127.0.0.1 port 1936&#xA;[tcp @ 0x143604f20] Starting connection attempt to ::1 port 1936&#xA;[tcp @ 0x143604f20] Connection attempt to ::1 port 1936 failed: Connection refused&#xA;[tcp @ 0x143604f20] Starting connection attempt to 127.0.0.1 port 1936&#xA;[tcp @ 0x143604f20] Successfully connected to 127.0.0.1 port 1936&#xA;[rtmp @ 0x1437144c0] Handshaking...&#xA;[rtmp @ 0x1437144c0] Type answer 3&#xA;[rtmp @ 0x1437144c0] Server version 13.14.10.13&#xA;[rtmp @ 0x1437144c0] Proto = rtmp, path = /live/test, app = live, fname = test&#xA;[rtmp @ 0x1437144c0] Window acknowledgement size = 5000000&#xA;[rtmp @ 0x1437144c0] Max sent, unacked = 5000000&#xA;[rtmp @ 0x1437144c0] New incoming chunk size = 4096&#xA;[rtmp @ 0x1437144c0] Creating stream...&#xA;[rtmp @ 0x1437144c0] Sending play command for &#x27;test&#x27;&#xA;[flv @ 0x143604b30] Format flv probed with size=2048 and score=100&#xA;[flv @ 0x143604b30] Before avformat_find_stream_info() pos: 13 bytes read:2263 seeks:0 nb_streams:0&#xA;Transform tree:&#xA;    mdct_inv_float_c - type: mdct_float, len: 64, factors[2]: [2, any], flags: [unaligned, out_of_place, inv_only]&#xA;        fft32_ns_float_neon - type: fft_float, len: 32, factor: 2, flags: [aligned, inplace, out_of_place, preshuf]&#xA;Transform tree:&#xA;    mdct_inv_float_c - type: mdct_float, len: 64, factors[2]: [2, any], flags: [unaligned, out_of_place, inv_only]&#xA;        fft32_ns_float_neon - type: fft_float, len: 32, factor: 2, flags: [aligned, inplace, out_of_place, preshuf]&#xA;Transform tree:&#xA;    mdct_pfa_15xM_inv_float_c - type: mdct_float, len: 120, factors[2]: [15, any], flags: [unaligned, out_of_place, inv_only]&#xA;        fft4_fwd_float_neon - type: fft_float, len: 4, factor: 2, flags: [aligned, inplace, out_of_place, preshuf]&#xA;Transform tree:&#xA;    mdct_inv_float_c - type: mdct_float, len: 128, factors[2]: [2, any], flags: [unaligned, out_of_place, inv_only]&#xA;        fft_sr_ns_float_neon - type: fft_float, len: 64, factor: 2, flags: [aligned, inplace, out_of_place, preshuf]&#xA;Transform tree:&#xA;    mdct_pfa_15xM_inv_float_c - type: mdct_float, len: 480, factors[2]: [15, any], flags: [unaligned, out_of_place, inv_only]&#xA;        fft16_ns_float_neon - type: fft_float, len: 16, factor: 2, flags: [aligned, inplace, out_of_place, preshuf]&#xA;Transform tree:&#xA;    mdct_inv_float_c - type: mdct_float, len: 512, factors[2]: [2, any], flags: [unaligned, out_of_place, inv_only]&#xA;        fft_sr_ns_float_neon - type: fft_float, len: 256, factor: 2, flags: [aligned, inplace, out_of_place, preshuf]&#xA;Transform tree:&#xA;    mdct_pfa_15xM_inv_float_c - type: mdct_float, len: 960, factors[2]: [15, any], flags: [unaligned, out_of_place, inv_only]&#xA;        fft32_ns_float_neon - type: fft_float, len: 32, factor: 2, flags: [aligned, inplace, out_of_place, preshuf]&#xA;Transform tree:&#xA;    mdct_inv_float_c - type: mdct_float, len: 1024, factors[2]: [2, any], flags: [unaligned, out_of_place, inv_only]&#xA;        fft_sr_ns_float_neon - type: fft_float, len: 512, factor: 2, flags: [aligned, inplace, out_of_place, preshuf]&#xA;Transform tree:&#xA;    mdct_fwd_float_c - type: mdct_float, len: 1024, factors[2]: [2, any], flags: [unaligned, out_of_place, fwd_only]&#xA;        fft_sr_ns_float_neon - type: fft_float, len: 512, factor: 2, flags: [aligned, inplace, out_of_place, preshuf]&#xA;[NULL @ 0x144124920] nal_unit_type: 7(SPS), nal_ref_idc: 3&#xA;[NULL @ 0x144124920] Decoding VUI&#xA;[NULL @ 0x144124920] nal_unit_type: 8(PPS), nal_ref_idc: 3&#xA;[NULL @ 0x144124920] Decoding VUI&#xA;[h264 @ 0x144124920] nal_unit_type: 7(SPS), nal_ref_idc: 3&#xA;[h264 @ 0x144124920] Decoding VUI&#xA;[h264 @ 0x144124920] nal_unit_type: 8(PPS), nal_ref_idc: 3&#xA;[h264 @ 0x144124920] nal_unit_type: 7(SPS), nal_ref_idc: 3&#xA;[h264 @ 0x144124920] nal_unit_type: 8(PPS), nal_ref_idc: 3&#xA;[h264 @ 0x144124920] nal_unit_type: 5(IDR), nal_ref_idc: 3&#xA;[h264 @ 0x144124920] Decoding VUI&#xA;[h264 @ 0x144124920] Format yuv420p chosen by get_format().&#xA;[h264 @ 0x144124920] Reinit context to 1280x720, pix_fmt: yuv420p&#xA;[h264 @ 0x144124920] no picture &#xA;[flv @ 0x143604b30] All info found&#xA;[flv @ 0x143604b30] rfps: 29.666667 0.016552&#xA;[flv @ 0x143604b30] rfps: 29.750000 0.009347&#xA;[flv @ 0x143604b30] rfps: 29.750000 0.009347&#xA;[flv @ 0x143604b30] rfps: 29.833333 0.004197&#xA;[flv @ 0x143604b30] rfps: 29.916667 0.001104&#xA;[flv @ 0x143604b30] rfps: 29.916667 0.001104&#xA;[flv @ 0x143604b30] rfps: 30.000000 0.000067&#xA;[flv @ 0x143604b30] rfps: 30.000000 0.000067&#xA;[flv @ 0x143604b30] rfps: 60.000000 0.000270&#xA;[flv @ 0x143604b30] rfps: 60.000000 0.000270&#xA;[flv @ 0x143604b30] rfps: 120.000000 0.001079&#xA;[flv @ 0x143604b30] rfps: 120.000000 0.001079&#xA;[flv @ 0x143604b30] rfps: 240.000000 0.004316&#xA;[flv @ 0x143604b30] rfps: 240.000000 0.004316&#xA;[flv @ 0x143604b30] rfps: 29.970030 0.000204&#xA;[flv @ 0x143604b30] rfps: 29.970030 0.000204&#xA;[flv @ 0x143604b30] rfps: 59.940060 0.000814&#xA;[flv @ 0x143604b30] rfps: 59.940060 0.000814&#xA;[flv @ 0x143604b30] After avformat_find_stream_info() pos: 496783 bytes read:496783 seeks:0 frames:179&#xA;Input #0, flv, from &#x27;rtmp://localhost:1936/live/test&#x27;:&#xA;  Metadata:&#xA;    |RtmpSampleAccess: true&#xA;    Server          : NGINX RTMP (github.com/arut/nginx-rtmp-module)&#xA;    displayWidth    : 1280&#xA;    displayHeight   : 720&#xA;    fps             : 30&#xA;    profile         : &#xA;    level           : &#xA;  Duration: 00:00:00.00, start: 6.742000, bitrate: N/A&#xA;  Stream #0:0, 138, 1/1000: Audio: aac (LC), 48000 Hz, stereo, fltp, 163 kb/s&#xA;  Stream #0:1, 41, 1/1000: Video: h264 (High), 1 reference frame, yuv420p(tv, bt709, progressive, left), 1280x720 [SAR 1:1 DAR 16:9], 0/1, 2560 kb/s, 30 fps, 30 tbr, 1k tbn&#xA;Successfully opened the file.&#xA;Parsing a group of options: output url ./output/test/1080p/stream.mpd.&#xA;Applying option c:v (select encoder/decoder (&#x27;copy&#x27; to copy stream without reencoding)) with argument libx264.&#xA;Applying option s (set frame size (WxH or abbreviation)) with argument 1920x1080.&#xA;Applying option f (force container format (auto-detected otherwise)) with argument dash.&#xA;Successfully parsed a group of options.&#xA;Opening an output file: ./output/test/1080p/stream.mpd.&#xA;[out#0/dash @ 0x123707480] No explicit maps, mapping streams automatically...&#xA;[vost#0:0/libx264 @ 0x123707d60] Created video stream from input stream 0:1&#xA;detected 10 logical cores&#xA;[h264 @ 0x123607b70] nal_unit_type: 7(SPS), nal_ref_idc: 3&#xA;[h264 @ 0x123607b70] Decoding VUI&#xA;[h264 @ 0x123607b70] nal_unit_type: 8(PPS), nal_ref_idc: 3&#xA;[aost#0:1/aac @ 0x144028080] Created audio stream from input stream 0:0&#xA;Transform tree:&#xA;    mdct_inv_float_c - type: md&#xA;&#xA;<it simply="simply" starts="starts" working="working">&#xA;</it></same>

    &#xA;

    I am not sure if there is something to do with Permissions.

    &#xA;