Recherche avancée

Médias (91)

Autres articles (16)

  • Supporting all media types

    13 avril 2011, par

    Unlike most software and media-sharing platforms, MediaSPIP aims to manage as many different media types as possible. The following are just a few examples from an ever-expanding list of supported formats : images : png, gif, jpg, bmp and more audio : MP3, Ogg, Wav and more video : AVI, MP4, OGV, mpg, mov, wmv and more text, code and other data : OpenOffice, Microsoft Office (Word, PowerPoint, Excel), web (html, CSS), LaTeX, Google Earth and (...)

  • Support de tous types de médias

    10 avril 2011

    Contrairement à beaucoup de logiciels et autres plate-formes modernes de partage de documents, MediaSPIP a l’ambition de gérer un maximum de formats de documents différents qu’ils soient de type : images (png, gif, jpg, bmp et autres...) ; audio (MP3, Ogg, Wav et autres...) ; vidéo (Avi, MP4, Ogv, mpg, mov, wmv et autres...) ; contenu textuel, code ou autres (open office, microsoft office (tableur, présentation), web (html, css), LaTeX, Google Earth) (...)

  • Les vidéos

    21 avril 2011, par

    Comme les documents de type "audio", Mediaspip affiche dans la mesure du possible les vidéos grâce à la balise html5 .
    Un des inconvénients de cette balise est qu’elle n’est pas reconnue correctement par certains navigateurs (Internet Explorer pour ne pas le nommer) et que chaque navigateur ne gère en natif que certains formats de vidéos.
    Son avantage principal quant à lui est de bénéficier de la prise en charge native de vidéos dans les navigateur et donc de se passer de l’utilisation de Flash et (...)

Sur d’autres sites (4752)

  • How to add subtitles using FFmpeg-kit ?

    17 novembre 2024, par Mohammed Bekele

    I'm running a Flutter app with Ffmpeg-kit package to burn a subtitle on a video. I have a words list with the timings and map that to generate an srt and ass file, but when executing this it didn't work.

    


    Firstly, here is how I generated the Ass file.

    


    Future<string> _createAssFile() async {&#xA;    String filePath = await getAssOutputFilePath();&#xA;&#xA;    final file = File(filePath);&#xA;    final buffer = StringBuffer();&#xA;&#xA;    // Write ASS headers&#xA;    buffer.writeln(&#x27;[Script Info]&#x27;);&#xA;    buffer.writeln(&#x27;Title: Generated ASS&#x27;);&#xA;    buffer.writeln(&#x27;ScriptType: v4.00&#x2B;&#x27;);&#xA;    buffer.writeln(&#x27;Collisions: Normal&#x27;);&#xA;    buffer.writeln(&#x27;PlayDepth: 0&#x27;);&#xA;    buffer.writeln(&#x27;Timer: 100,0000&#x27;);&#xA;    buffer.writeln(&#x27;[V4&#x2B; Styles]&#x27;);&#xA;    buffer.writeln(&#xA;        &#x27;Format: Name, Fontname, Fontsize, PrimaryColour, SecondaryColour, OutlineColour, BackColour, Bold, Italic, Underline, StrikeOut, ScaleX, ScaleY, Spacing, Angle, BorderStyle, Outline, Shadow, Alignment, MarginL, MarginR, MarginV, Encoding&#x27;);&#xA;    buffer.writeln(&#xA;        &#x27;Style: Default,Arial,40,&amp;H00FFFFFF,&amp;H000000FF,&amp;H00000000,&amp;H80000000,1,1,1,1,100,100,0,0,1,1,1,2,10,10,10,1&#x27;);&#xA;    buffer.writeln(&#x27;[Events]&#x27;);&#xA;    buffer.writeln(&#xA;        &#x27;Format: Layer, Start, End, Style, Name, MarginL, MarginR, MarginV, Effect, Text&#x27;);&#xA;&#xA;    // Write events (subtitles)&#xA;    for (int i = 0; i &lt; widget.words.length; i&#x2B;&#x2B;) {&#xA;      final word = widget.words[i];&#xA;      final startTime = _formatAssTime(word[&#x27;startTime&#x27;].toDouble());&#xA;      final endTime = _formatAssTime(word[&#x27;endTime&#x27;].toDouble());&#xA;      final text = word[&#x27;word&#x27;];&#xA;&#xA;      buffer.writeln(&#x27;Dialogue: 0,$startTime,$endTime,Default,,0,0,0,,$text&#x27;);&#xA;    }&#xA;&#xA;    await file.writeAsString(buffer.toString());&#xA;    return filePath;&#xA;  }&#xA;&#xA;  String _formatAssTime(double seconds) {&#xA;    final int hours = seconds ~/ 3600;&#xA;    final int minutes = ((seconds % 3600) ~/ 60);&#xA;    final int secs = (seconds % 60).toInt();&#xA;    final int millis = ((seconds - secs) * 1000).toInt() % 1000;&#xA;&#xA;    return &#x27;${hours.toString().padLeft(1, &#x27;0&#x27;)}:${minutes.toString().padLeft(2, &#x27;0&#x27;)}:${secs.toString().padLeft(2, &#x27;0&#x27;)}.${(millis ~/ 10).toString().padLeft(2, &#x27;0&#x27;)}&#x27;;&#xA;  }&#xA;</string>

    &#xA;

    Then I used this command which was the official way of adding ass file to a video.

    &#xA;

      String newCmd = "-i $videoPath -vf ass=$assFilePath -c:a copy $_outputPath";&#xA;

    &#xA;

    Yet when executing this command it did not work. However I changed it to this command

    &#xA;

    String newCmd = "-i $videoPath -i $assFilePath $_outputPath";&#xA;

    &#xA;

    Well, that code works but the styling is not being applied. So I tried yet another command to filter and position the ass file.

    &#xA;

    String newCmd = "-i $videoPath -i $assFilePath -filter_complex \"[0:v][1:s]ass=\\an5:text=&#x27;%{event.text}&#x27;,scale=iw*0.8:ih*0.8,setdar=16/9[outv]\" -map [outv] -c:a copy $_outputPath";&#xA;

    &#xA;

    This made it even worse, because the app crashed when I ran this. Also there is a log for this command before crashing

    &#xA;

    F/libc    (19624): Fatal signal 11 (SIGSEGV), code 1 (SEGV_MAPERR), fault addr 0x19 in tid 21314 (pool-4-thread-7), pid 19624 (ple.caption_app)&#xA;*** *** *** *** *** *** *** *** *** *** *** *** *** *** *** ***&#xA;Build fingerprint: &#x27;samsung/a15nsxx/a15:14/UP1A.231005.007/A155FXXU1AWKA:user/release-keys&#x27;&#xA;Revision: &#x27;5&#x27;&#xA;ABI: &#x27;arm64&#x27;&#xA;Processor: &#x27;7&#x27;&#xA;Timestamp: 2024-07-10 19:27:40.812476860&#x2B;0300&#xA;Process uptime: 1746s&#xA;Cmdline: com.example.caption_app&#xA;pid: 19624, tid: 21314, name: pool-4-thread-7  >>> com.example.caption_app &lt;&lt;&lt;&#xA;uid: 10377&#xA;tagged_addr_ctrl: 0000000000000001 (PR_TAGGED_ADDR_ENABLE)&#xA;signal 11 (SIGSEGV), code 1 (SEGV_MAPERR), fault addr 0x0000000000000019&#xA;Cause: null pointer dereference&#xA;    x0  0000000000000001  x1  b400006ec98d8660  x2  0000000000000000  x3  0000000000000002&#xA;    x4  0000006f62d1ea12  x5  b400006e04f745ea  x6  352f35372f64352f  x7  7f7f7f7f7f7f7f7f&#xA;    x8  632ace36577a905e  x9  632ace36577a905e  x10 0000006e191378c0  x11 0000000000000001&#xA;    x12 0000000000000001  x13 0000000000000000  x14 0000000000000004  x15 0000000000000008&#xA;    x16 0000006e27ffa358  x17 0000006e27dbfb00  x18 0000006e00d48000  x19 0000006f62d1f0e8&#xA;    x20 0000006f62d24000  x21 0000006e27ffc5d0  x22 0000006e27ffc5f0  x23 0000000000000000&#xA;    x24 b400006f3f089248  x25 0000006f62d1f220  x26 b400006f3f057b20  x27 0000000000000002&#xA;    x28 0000000000000088  x29 0000006f62d1f100&#xA;    lr  0000006e27dbfb0c  sp  0000006f62d1f0a0  pc  0000006e27dbfb10  pst 0000000060001000&#xA;1 total frames&#xA;backtrace:&#xA;      #00 pc 0000000000121b10  /data/app/~~oWqjrGA2indQhuEw6u_J2A==/com.example.caption_app-u2Ofk54FVtMc5D-i3SLC6g==/base.apk!libavfilter.so (offset 0x10a46000) (avfilter_inout_free&#x2B;16)    &#xA;Lost connection to device.&#xA;

    &#xA;

    I tried the normal command in my local machine on Windows, and this is what I used

    &#xA;

    ffmpeg -i F:\ffmpeg\video.avi -vf subtitles=&#x27;F\:\\ffmpeg\\caption.srt&#x27;:force_style=&#x27;Fontsize=24&#x27; F:\ffmpeg\new.mp4&#xA;

    &#xA;

    As you can see above when subtitles are used it had an extra backslashes for each path and a pre backslash after the partition letter. But I don't know if this does apply for android devices. How can I make sense of this ?

    &#xA;

  • ffmpeg command to convert 720p to 1080p, 1440p, 2160p compatible with YouTube [closed]

    24 juin 2024, par Tendekai Muchenje

    I have a video that I created in Final Cut Pro. When i uploaded it to Youtube, it only maxes out at 720p. I would like it to have higher options like 1080, 1440 and 2160 even if the quality does not change. Maybe 2160 is impossible, but 1440p would be nice. I have tried this command, but the resulting file is unplayable, it only plays audio.

    &#xA;

    ffmpeg -i Hey\ Girl.mov -vf scale=3840x2160:flags=lanczos -c:v libx264 -crf 13 -c:a aac -b:a 512k -preset slow hey_girl_hd.mov&#xA;

    &#xA;

    I am looking for a command that would make at least 1080 and 1440 work on YouTube. If 2160 can work, that would be great too. If it matters, here is all the info that ffprobe throws out about the file

    &#xA;

    {&#xA;    "streams": [&#xA;        {&#xA;            "index": 0,&#xA;            "codec_name": "pcm_s24le",&#xA;            "codec_long_name": "PCM signed 24-bit little-endian",&#xA;            "codec_type": "audio",&#xA;            "codec_tag_string": "lpcm",&#xA;            "codec_tag": "0x6d63706c",&#xA;            "sample_fmt": "s32",&#xA;            "sample_rate": "48000",&#xA;            "channels": 2,&#xA;            "bits_per_sample": 24,&#xA;            "r_frame_rate": "0/0",&#xA;            "avg_frame_rate": "0/0",&#xA;            "time_base": "1/48000",&#xA;            "start_pts": 0,&#xA;            "start_time": "0.000000",&#xA;            "duration_ts": 8987200,&#xA;            "duration": "187.233333",&#xA;            "bit_rate": "2304000",&#xA;            "bits_per_raw_sample": "24",&#xA;            "nb_frames": "8987200",&#xA;            "disposition": {&#xA;                "default": 1,&#xA;                "dub": 0,&#xA;                "original": 0,&#xA;                "comment": 0,&#xA;                "lyrics": 0,&#xA;                "karaoke": 0,&#xA;                "forced": 0,&#xA;                "hearing_impaired": 0,&#xA;                "visual_impaired": 0,&#xA;                "clean_effects": 0,&#xA;                "attached_pic": 0,&#xA;                "timed_thumbnails": 0&#xA;            },&#xA;            "tags": {&#xA;                "creation_time": "2024-04-15T23:26:08.000000Z",&#xA;                "language": "und",&#xA;                "handler_name": "Core Media Audio",&#xA;                "vendor_id": "[0][0][0][0]"&#xA;            }&#xA;        },&#xA;        {&#xA;            "index": 1,&#xA;            "codec_name": "prores",&#xA;            "codec_long_name": "Apple ProRes (iCodec Pro)",&#xA;            "profile": "Standard",&#xA;            "codec_type": "video",&#xA;            "codec_tag_string": "apcn",&#xA;            "codec_tag": "0x6e637061",&#xA;            "width": 1280,&#xA;            "height": 720,&#xA;            "coded_width": 1280,&#xA;            "coded_height": 720,&#xA;            "closed_captions": 0,&#xA;            "has_b_frames": 0,&#xA;            "sample_aspect_ratio": "1:1",&#xA;            "display_aspect_ratio": "16:9",&#xA;            "pix_fmt": "yuv422p10le",&#xA;            "level": -99,&#xA;            "color_range": "tv",&#xA;            "color_space": "bt709",&#xA;            "color_transfer": "bt709",&#xA;            "color_primaries": "bt709",&#xA;            "field_order": "progressive",&#xA;            "refs": 1,&#xA;            "r_frame_rate": "60/1",&#xA;            "avg_frame_rate": "60/1",&#xA;            "time_base": "1/6000",&#xA;            "start_pts": 0,&#xA;            "start_time": "0.000000",&#xA;            "duration_ts": 1123400,&#xA;            "duration": "187.233333",&#xA;            "bit_rate": "138655195",&#xA;            "bits_per_raw_sample": "10",&#xA;            "nb_frames": "11234",&#xA;            "disposition": {&#xA;                "default": 1,&#xA;                "dub": 0,&#xA;                "original": 0,&#xA;                "comment": 0,&#xA;                "lyrics": 0,&#xA;                "karaoke": 0,&#xA;                "forced": 0,&#xA;                "hearing_impaired": 0,&#xA;                "visual_impaired": 0,&#xA;                "clean_effects": 0,&#xA;                "attached_pic": 0,&#xA;                "timed_thumbnails": 0&#xA;            },&#xA;            "tags": {&#xA;                "creation_time": "2024-04-15T23:26:08.000000Z",&#xA;                "language": "und",&#xA;                "handler_name": "Core Media Video",&#xA;                "vendor_id": "[0][0][0][0]",&#xA;                "encoder": "Apple ProRes 422",&#xA;                "timecode": "00:00:00:00"&#xA;            }&#xA;        },&#xA;        {&#xA;            "index": 2,&#xA;            "codec_type": "data",&#xA;            "codec_tag_string": "tmcd",&#xA;            "codec_tag": "0x64636d74",&#xA;            "r_frame_rate": "0/0",&#xA;            "avg_frame_rate": "6000/100",&#xA;            "time_base": "1/6000",&#xA;            "start_pts": 0,&#xA;            "start_time": "0.000000",&#xA;            "duration_ts": 1123400,&#xA;            "duration": "187.233333",&#xA;            "nb_frames": "1",&#xA;            "disposition": {&#xA;                "default": 1,&#xA;                "dub": 0,&#xA;                "original": 0,&#xA;                "comment": 0,&#xA;                "lyrics": 0,&#xA;                "karaoke": 0,&#xA;                "forced": 0,&#xA;                "hearing_impaired": 0,&#xA;                "visual_impaired": 0,&#xA;                "clean_effects": 0,&#xA;                "attached_pic": 0,&#xA;                "timed_thumbnails": 0&#xA;            },&#xA;            "tags": {&#xA;                "creation_time": "2024-04-15T23:26:08.000000Z",&#xA;                "language": "und",&#xA;                "handler_name": "Core Media Time Code",&#xA;                "timecode": "00:00:00:00"&#xA;            }&#xA;        }&#xA;    ],&#xA;    "format": {&#xA;        "filename": "Hey Girl.mov",&#xA;        "nb_streams": 3,&#xA;        "nb_programs": 0,&#xA;        "format_name": "mov,mp4,m4a,3gp,3g2,mj2",&#xA;        "format_long_name": "QuickTime / MOV",&#xA;        "start_time": "0.000000",&#xA;        "duration": "187.233333",&#xA;        "size": "3306875809",&#xA;        "bit_rate": "141294320",&#xA;        "probe_score": 100,&#xA;        "tags": {&#xA;            "major_brand": "qt  ",&#xA;            "minor_version": "0",&#xA;            "compatible_brands": "qt  ",&#xA;            "creation_time": "2024-04-15T23:26:08.000000Z",&#xA;            "com.apple.quicktime.keywords": "Hey GIRL",&#xA;            "com.apple.quicktime.description": "This video is about Hey Girl",&#xA;            "com.apple.quicktime.author": "Ja Mo",&#xA;            "com.apple.quicktime.displayname": "Hey Girl",&#xA;            "com.apple.quicktime.title": "Hey Girl"&#xA;        }&#xA;    }&#xA;}&#xA;

    &#xA;

  • Marketing Analytics in Banking : How to Be Effective and Compliant

    Marketing analytics is reshaping decision-making in the financial sector, with recent studies showing it influences over half of all marketing strategies. However, marketers surveyed by MarketingWeek identify data and analytics as the biggest skill gap in their department.

    Read More