Recherche avancée

Médias (1)

Mot : - Tags -/copyleft

Autres articles (53)

  • Participer à sa traduction

    10 avril 2011

    Vous pouvez nous aider à améliorer les locutions utilisées dans le logiciel ou à traduire celui-ci dans n’importe qu’elle nouvelle langue permettant sa diffusion à de nouvelles communautés linguistiques.
    Pour ce faire, on utilise l’interface de traduction de SPIP où l’ensemble des modules de langue de MediaSPIP sont à disposition. ll vous suffit de vous inscrire sur la liste de discussion des traducteurs pour demander plus d’informations.
    Actuellement MediaSPIP n’est disponible qu’en français et (...)

  • 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

Sur d’autres sites (4792)

  • Muxing together a .ts file and a sub file causes playback issues in video and audio [closed]

    3 mai 2024, par Meta83

    So I have a .ts file and a converted .dvb sub file (.SRT TO .DVB) that I want to mux togheter using FFMPEG. The mux is a success and the file plays fine in VLC or other modern divce.However I have an older divce (around 10 yeras old) where playback has issues, whenever a line of subs is displayd the picture and and audio gets corrupted and frezzes up and as sson there are no lins everything looks good again and so on. Note that subs are displayd correctly and they are not affected by the issue, only picture and audio is.

    


    I have tried using diffrent command without any luck but here is the most basic command that should work :

    


    ffmpeg -i <video file="file"> -i <dvb file="file"> -f mpegts -c:v copy -c:a copy -c:s copy -copyts <output file="file">&#xA;</output></dvb></video>

    &#xA;

    Here is the output I get frome FFMPEG :

    &#xA;

    ffmpeg version 7.0-full_build-www.gyan.dev Copyright (c) 2000-2024 the FFmpeg developers&#xA;  built with gcc 13.2.0 (Rev5, Built by MSYS2 project)&#xA;  configuration: --enable-gpl --enable-version3 --enable-static --disable-w32threads --disable-autodetect --enable-fontconfig --enable-iconv --enable-gnutls --enable-libxml2 --enable-gmp --enable-bzlib --enable-lzma --enable-libsnappy --enable-zlib --enable-librist --enable-libsrt --enable-libssh --enable-libzmq --enable-avisynth --enable-libbluray --enable-libcaca --enable-sdl2 --enable-libaribb24 --enable-libaribcaption --enable-libdav1d --enable-libdavs2 --enable-libuavs3d --enable-libxevd --enable-libzvbi --enable-librav1e --enable-libsvtav1 --enable-libwebp --enable-libx264 --enable-libx265 --enable-libxavs2 --enable-libxeve --enable-libxvid --enable-libaom --enable-libjxl --enable-libopenjpeg --enable-libvpx --enable-mediafoundation --enable-libass --enable-frei0r --enable-libfreetype --enable-libfribidi --enable-libharfbuzz --enable-liblensfun --enable-libvidstab --enable-libvmaf --enable-libzimg --enable-amf --enable-cuda-llvm --enable-cuvid --enable-dxva2 --enable-d3d11va --enable-d3d12va --enable-ffnvcodec --enable-libvpl --enable-nvdec --enable-nvenc --enable-vaapi --enable-libshaderc --enable-vulkan --enable-libplacebo --enable-opencl --enable-libcdio --enable-libgme --enable-libmodplug --enable-libopenmpt --enable-libopencore-amrwb --enable-libmp3lame --enable-libshine --enable-libtheora --enable-libtwolame --enable-libvo-amrwbenc --enable-libcodec2 --enable-libilbc --enable-libgsm --enable-libopencore-amrnb --enable-libopus --enable-libspeex --enable-libvorbis --enable-ladspa --enable-libbs2b --enable-libflite --enable-libmysofa --enable-librubberband --enable-libsoxr --enable-chromaprint&#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;[mpegts @ 0000029209341000] stream 0 : no PTS found at end of file, duration not set&#xA;Input #0, mpegts, from &#x27;\Tests\video.ts&#x27;:&#xA;  Duration: 00:28:52.06, start: 0.980000, bitrate: 4992 kb/s&#xA;  Program 1&#xA;  Stream #0:0[0x1e1]: Video: h264 (Main) ([27][0][0][0] / 0x001B), yuv420p(tv, bt709, progressive), 1920x1080 [SAR 1:1 DAR 16:9], 25 fps, 25 tbr, 90k tbn&#xA;  Stream #0:1[0x1e2](swe): Audio: mp2 (mp3float) ([3][0][0][0] / 0x0003), 48000 Hz, stereo, fltp, 192 kb/s&#xA;Input #1, mpegts, from &#x27;ENG.dvb&#x27;:&#xA;  Duration: 00:28:09.88, start: 0.160000, bitrate: 8 kb/s&#xA;  Program 1&#xA;    Metadata:&#xA;      service_name    : Service01&#xA;      service_provider: FFmpeg&#xA;  Stream #1:0[0x100](eng): Subtitle: dvb_subtitle (dvbsub) ([6][0][0][0] / 0x0006)&#xA;Stream mapping:&#xA;  Stream #0:0 -> #0:0 (copy)&#xA;  Stream #0:1 -> #0:1 (copy)&#xA;  Stream #1:0 -> #0:2 (copy)&#xA;Output #0, mpegts, to &#x27;\Tests\20735799_muxed.ts&#x27;:&#xA;  Metadata:&#xA;    encoder         : Lavf61.1.100&#xA;  Stream #0:0: Video: h264 (Main) ([27][0][0][0] / 0x001B), yuv420p(tv, bt709, progressive), 1920x1080 [SAR 1:1 DAR 16:9], q=2-31, 25 fps, 25 tbr, 90k tbn&#xA;  Stream #0:1(swe): Audio: mp2 ([3][0][0][0] / 0x0003), 48000 Hz, stereo, fltp, 192 kb/s&#xA;  Stream #0:2(swe): Subtitle: dvb_subtitle ([6][0][0][0] / 0x0006)&#xA;Press [q] to stop, [?] for help&#xA;[out#0/mpegts @ 000002920a155380] video:951379KiB audio:40595KiB subtitle:1389KiB other streams:0KiB global headers:0KiB muxing overhead: 3.385295%&#xA;size= 1026992KiB time=00:27:25.74 bitrate=5112.1kbits/s speed=75.3x&#xA;

    &#xA;

    Can anyone help me out ? I'm I missing something that is needed for older divaces (divece in question is a Samsung SMT-S5140 STB).

    &#xA;

  • How can I remove every nth frame from raw video using ffmpeg ?

    15 juin 2024, par DaveB44

    Question moved to SuperUser, please reply there

    &#xA;

    I have many cine films that have been digitally converted. They have been converted as a 25 fps with 2 frames in every 23 duplicated. I need to remove the duplicated frames using a bitstream filter so there is no decoding/encoding.

    &#xA;

    After removing the frames I will change to the original cine frame rate of 18 fps. I will then change the frame rate to 25 fps using duplicated frames. I don't want to interpolate as I want to preserve the jerky format of the cine. Finally I will video editing software that will do the final encoding.

    &#xA;

    All the additional steps will cause several stages of decoding/encoding, that I need to avoid.

    &#xA;

    First I used a combination of the answers to FFmpeg remove video frames at specific intervals and FFmpeg remove every 6th frame starting from the 3rd frame, on an mp4 file to check it works. I modified it to remove every 4th and 17th frame in 25.

    &#xA;

    ffmpeg -loglevel warning -i cine.mp4 -an -vf "select=&#x27;if((mod(n-4,25)),(mod(n-17,25)))&#x27;,setpts=&#x27;N/FRAME_RATE/TB&#x27;" cine-23.mp4&#xA;

    &#xA;

    This works fine, but I end up with a file a quarter the size.

    &#xA;

    I now used Gyan's answer in Using ffmpeg to change framerate to extract the raw bitstream.

    &#xA;

    ffmpeg -loglevel warning -i cine.mp4 -c copy -f h264 cine.h264&#xA;

    &#xA;

    This created the h264 file as expected, surprisingly it was 16 kB smaller than the original (67 GB file size).

    &#xA;

    I then modified the code to use the .h264 file.

    &#xA;

    ffmpeg -loglevel warning -i cine.h264 -vf "select=&#x27;if((mod(n-4,25)),(mod(n-17,25)))&#x27;,setpts=&#x27;N/FRAME_RATE/TB&#x27;" cine-23.h264&#xA;

    &#xA;

    This gave the following error, but created the cine-23.h264 file although it was the same size as cine-23.mp4 in the test above

    &#xA;

    [h264 @ 00000245ec0bfb80] non-existing SPS 0 referenced in buffering period&#xA;    Last message repeated 1 times&#xA;

    &#xA;

    I then checked the ffmpeg bitstream filter documentation and found the bitstream filter setts. I changed my code to the following.

    &#xA;

    ffmpeg -loglevel warning -i cine.h264 -bsf:v "select=&#x27;if((mod(n-4,25)),(mod(n-17,25)))&#x27;,setts=pts=&#x27;N/FRAME_RATE/TB&#x27;" cine-23.h264&#xA;

    &#xA;

    Which resulted in the following error.

    &#xA;

    [vost#0:0/libx264 @ 000002916cf173c0] Error parsing bitstream filter sequence &#x27;select=&#x27;if((mod(n-4,25)),(mod(n-17,25)))&#x27;,setts=pts=&#x27;N/FRAME_RATE/TB&#x27;&#x27;: Bitstream filter not found&#xA;Error opening output file cine-23.h264.&#xA;Error opening output files: Bitstream filter not found&#xA;

    &#xA;

    I'm assuming the error is because setts does not support select. Is there another way to achieve what I am looking for ?

    &#xA;

    I could use mpdecimate but as that has to compare each frame it is much slower than defining it only needs to delete frames 4 and 17 in every second.

    &#xA;

    This is the output of ffprobe on my original file.

    &#xA;

    ffprobe version 2023-11-28-git-47e214245b-full_build-www.gyan.dev Copyright (c) 2007-2023 the FFmpeg developers&#xA;  built with gcc 12.2.0 (Rev10, Built by MSYS2 project)&#xA;  configuration: --enable-gpl --enable-version3 --enable-static --pkg-config=pkgconf --disable-w32threads --disable-autodetect --enable-fontconfig --enable-iconv --enable-gnutls --enable-libxml2 --enable-gmp --enable-bzlib --enable-lzma --enable-libsnappy --enable-zlib --enable-librist --enable-libsrt --enable-libssh --enable-libzmq --enable-avisynth --enable-libbluray --enable-libcaca --enable-sdl2 --enable-libaribb24 --enable-libaribcaption --enable-libdav1d --enable-libdavs2 --enable-libuavs3d --enable-libzvbi --enable-librav1e --enable-libsvtav1 --enable-libwebp --enable-libx264 --enable-libx265 --enable-libxavs2 --enable-libxvid --enable-libaom --enable-libjxl --enable-libopenjpeg --enable-libvpx --enable-mediafoundation --enable-libass --enable-frei0r --enable-libfreetype --enable-libfribidi --enable-libharfbuzz --enable-liblensfun --enable-libvidstab --enable-libvmaf --enable-libzimg --enable-amf --enable-cuda-llvm --enable-cuvid --enable-ffnvcodec --enable-nvdec --enable-nvenc --enable-dxva2 --enable-d3d11va --enable-libvpl --enable-libshaderc --enable-vulkan --enable-libplacebo --enable-opencl --enable-libcdio --enable-libgme --enable-libmodplug --enable-libopenmpt --enable-libopencore-amrwb --enable-libmp3lame --enable-libshine --enable-libtheora --enable-libtwolame --enable-libvo-amrwbenc --enable-libcodec2 --enable-libilbc --enable-libgsm --enable-libopencore-amrnb --enable-libopus --enable-libspeex --enable-libvorbis --enable-ladspa --enable-libbs2b --enable-libflite --enable-libmysofa --enable-librubberband --enable-libsoxr --enable-chromaprint&#xA;  libavutil      58. 32.100 / 58. 32.100&#xA;  libavcodec     60. 35.100 / 60. 35.100&#xA;  libavformat    60. 18.100 / 60. 18.100&#xA;  libavdevice    60.  4.100 / 60.  4.100&#xA;  libavfilter     9. 14.100 /  9. 14.100&#xA;  libswscale      7.  6.100 /  7.  6.100&#xA;  libswresample   4. 13.100 /  4. 13.100&#xA;  libpostproc    57.  4.100 / 57.  4.100&#xA;Input #0, mov,mp4,m4a,3gp,3g2,mj2, from &#x27;cine.mp4&#x27;:&#xA;  Metadata:&#xA;    major_brand     : mp42&#xA;    minor_version   : 19529864&#xA;    compatible_brands: mp42isom&#xA;    creation_time   : 2024-02-19T21:01:10.000000Z&#xA;  Duration: 00:01:00.00, start: 0.000000, bitrate: 9245 kb/s&#xA;  Stream #0:0[0x1](eng): Video: h264 (High) (avc1 / 0x31637661), yuv420p(progressive), 720x576 [SAR 35:32 DAR 175:128], 9243 kb/s, 25 fps, 25 tbr, 25 tbn (default)&#xA;    Metadata:&#xA;      creation_time   : 2024-02-19T21:01:10.000000Z&#xA;      handler_name    : Video Media Handler&#xA;      vendor_id       : [0][0][0][0]&#xA;      encoder         : AVC Coding&#xA;

    &#xA;

  • The problem with pydub.AudioSegment.from_file (ffmpeg)

    7 septembre 2024, par akkoolda

    I'm trying to make a normal voice recording discord. When I try to convert an Audio Data object, an error occurs. I've already tried everything I can, I can't solve the problem.

    &#xA;

    Here is the code, the error occurs in the seg variable :

    &#xA;

    async def once_done(sink: discord.sinks.MP3Sink, channel: discord.TextChannel, *args):&#xA;        words_list = []&#xA;        audio_segs: list[pydub.AudioSegment] = []&#xA;        longest = pydub.AudioSegment.empty()&#xA;        files: list[discord.File] = []&#xA;&#xA;        for user_id, audio in sink.audio_data.items():&#xA;            try:&#xA;                payload: FileSource = {&#xA;                    "buffer": audio.file.read(),&#xA;                    "mimetype": "audio/mp3"  # Указываем тип аудиофайла&#xA;            }&#xA;&#xA;                #audio.on_format("mp3")&#xA;                seg = pydub.AudioSegment.from_file(audio.file, format="mp3")&#xA;

    &#xA;

    The error itself

    &#xA;

    Exception in thread Thread-3 (recv_audio):&#xA;    Traceback (most recent call last):&#xA;      File "c:\Users\olimp\OneDrive\Рабочий стол\Work on Python\management-followups-bot\main.py", line 66, in once_done&#xA;        seg = pydub.AudioSegment.from_file(audio.file, format="mp3")&#xA;              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^&#xA;      File "C:\Users\olimp\AppData\Local\Programs\Python\Python311\Lib\site-packages\pydub\audio_segment.py", line 773, in from_file&#xA;        raise CouldntDecodeError(&#xA;    pydub.exceptions.CouldntDecodeError: Decoding failed. ffmpeg returned error code: 3199971767&#xA;    &#xA;    Output from ffmpeg/avlib:&#xA;    &#xA;    ffmpeg version 2024-09-02-git-3f9ca51015-full_build-www.gyan.dev Copyright (c) 2000-2024 the FFmpeg developers&#xA;      built with gcc 13.2.0 (Rev5, Built by MSYS2 project)&#xA;      configuration: --enable-gpl --enable-version3 --enable-static --disable-w32threads --disable-autodetect --enable-fontconfig --enable-iconv --enable-gnutls --enable-libxml2 --enable-gmp --enable-bzlib --enable-lzma --enable-libsnappy --enable-zlib --enable-librist --enable-libsrt --enable-libssh --enable-libzmq --enable-avisynth --enable-libbluray --enable-libcaca --enable-sdl2 &#xA;    --enable-libaribb24 --enable-libaribcaption --enable-libdav1d --enable-libdavs2 --enable-libopenjpeg --enable-libquirc --enable-libuavs3d --enable-libxevd --enable-libzvbi --enable-libqrencode --enable-librav1e --enable-libsvtav1 --enable-libvvenc --enable-libwebp --enable-libx264 --enable-libx265 --enable-libxavs2 --enable-libxeve --enable-libxvid --enable-libaom --enable-libjxl --enable-libvpx --enable-mediafoundation --enable-libass --enable-frei0r --enable-libfreetype --enable-libfribidi --enable-libharfbuzz --enable-liblensfun --enable-libvidstab --enable-libvmaf --enable-libzimg --enable-amf --enable-cuda-llvm --enable-cuvid --enable-dxva2 --enable-d3d11va --enable-d3d12va --enable-ffnvcodec --enable-libvpl --enable-nvdec --enable-nvenc --enable-vaapi --enable-libshaderc --enable-vulkan --enable-libplacebo --enable-opencl --enable-libcdio --enable-libgme --enable-libmodplug --enable-libopenmpt --enable-libopencore-amrwb --enable-libmp3lame --enable-libshine --enable-libtheora --enable-libtwolame --enable-libvo-amrwbenc --enable-libcodec2 --enable-libilbc --enable-libgsm --enable-libopencore-amrnb --enable-libopus --enable-libspeex --enable-libvorbis --enable-ladspa --enable-libbs2b --enable-libflite --enable-libmysofa --enable-librubberband --enable-libsoxr --enable-chromaprint&#xA;      libavutil      59. 35.100 / 59. 35.100&#xA;      libavcodec     61. 11.100 / 61. 11.100&#xA;      libavformat    61.  5.101 / 61.  5.101&#xA;      libavdevice    61.  2.100 / 61.  2.100&#xA;      libavfilter    10.  2.102 / 10.  2.102&#xA;      libswscale      8.  2.100 /  8.  2.100&#xA;      libswresample   5.  2.100 /  5.  2.100&#xA;      libpostproc    58.  2.100 / 58.  2.100&#xA;    [cache @ 000001b25c1c6e00] Inner protocol failed to seekback end : -40&#xA;        Last message repeated 1 times&#xA;    [mp3 @ 000001b25c1c6840] Failed to find two consecutive MPEG audio frames.&#xA;    [cache @ 000001b25c1c6e00] Statistics, cache hits:0 cache misses:0&#xA;    [in#0 @ 000001b25c1ac740] Error opening input: Invalid data found when processing input&#xA;    Error opening input file cache:pipe:0.&#xA;    Error opening input files: Invalid data found when processing input&#xA;    &#xA;    &#xA;    During handling of the above exception, another exception occurred:&#xA;    &#xA;    Traceback (most recent call last):&#xA;      File "C:\Users\olimp\AppData\Local\Programs\Python\Python311\Lib\threading.py", line 1038, in _bootstrap_inner&#xA;        self.run()&#xA;      File "C:\Users\olimp\AppData\Local\Programs\Python\Python311\Lib\threading.py", line 975, in run&#xA;        self._target(*self._args, **self._kwargs)&#xA;      File "C:\Users\olimp\AppData\Local\Programs\Python\Python311\Lib\site-packages\discord\voice_client.py", line 868, in recv_audio&#xA;        result = callback.result()&#xA;                 ^^^^^^^^^^^^^^^^^&#xA;      File "C:\Users\olimp\AppData\Local\Programs\Python\Python311\Lib\concurrent\futures\_base.py", line 456, in result&#xA;        return self.__get_result()&#xA;               ^^^^^^^^^^^^^^^^^^^&#xA;      File "C:\Users\olimp\AppData\Local\Programs\Python\Python311\Lib\concurrent\futures\_base.py", line 401, in __get_result&#xA;        raise self._exception&#xA;      File "c:\Users\olimp\OneDrive\Рабочий стол\Work on Python\management-followups-bot\main.py", line 95, in once_done&#xA;        await channel.send(f"Ошибка при работе с Deepgram API: {str(e)}")&#xA;      File "C:\Users\olimp\AppData\Local\Programs\Python\Python311\Lib\site-packages\discord\abc.py", line 1666, in send&#xA;        data = await state.http.send_message(&#xA;               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^&#xA;      File "C:\Users\olimp\AppData\Local\Programs\Python\Python311\Lib\site-packages\discord\http.py", line 374, in request&#xA;        raise HTTPException(response, data)&#xA;    discord.errors.HTTPException: 400 Bad Request (error code: 50035): Invalid Form Body&#xA;    In content: Must be 2000 or fewer in length.&#xA;&#xA;Solving the error, how else can you normally record user audio&#xA;

    &#xA;

    How can I fix this, or maybe there are some other options ?

    &#xA;