Recherche avancée

Médias (91)

Autres articles (43)

  • Multilang : améliorer l’interface pour les blocs multilingues

    18 février 2011, par

    Multilang est un plugin supplémentaire qui n’est pas activé par défaut lors de l’initialisation de MediaSPIP.
    Après son activation, une préconfiguration est mise en place automatiquement par MediaSPIP init permettant à la nouvelle fonctionnalité d’être automatiquement opérationnelle. Il n’est donc pas obligatoire de passer par une étape de configuration pour cela.

  • 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

  • Personnaliser les catégories

    21 juin 2013, par

    Formulaire de création d’une catégorie
    Pour ceux qui connaissent bien SPIP, une catégorie peut être assimilée à une rubrique.
    Dans le cas d’un document de type catégorie, les champs proposés par défaut sont : Texte
    On peut modifier ce formulaire dans la partie :
    Administration > Configuration des masques de formulaire.
    Dans le cas d’un document de type média, les champs non affichés par défaut sont : Descriptif rapide
    Par ailleurs, c’est dans cette partie configuration qu’on peut indiquer le (...)

Sur d’autres sites (5980)

  • HIK IP cameras changes chunks length while switching from day to night mode

    22 septembre 2022, par Klaus-Peter Eckert

    We are using ffmpeg to create a video playlist consisting of 2 sec chunks send by a HIKVISION DS-2CD2143G0-I IP camera. When the camera switches from day mode to night mode the length of the chunks changes from 2 to 4 sec. When the camera switches back to day mode the chunks again have a length of 2 sec.
This is an excerpt of a playlist :

    


    chunk-stream0-17750.m4s
#EXTINF:2.000000,
#EXT-X-PROGRAM-DATE-TIME:2022-09-19T22:26:59.418+0200
chunk-stream0-17751.m4s
#EXTINF:2.793047,
#EXT-X-PROGRAM-DATE-TIME:2022-09-19T22:27:01.418+0200
chunk-stream0-17752.m4s
#EXTINF:3.998984,
#EXT-X-PROGRAM-DATE-TIME:2022-09-19T22:27:04.211+0200
chunk-stream0-17753.m4s
#EXTINF:3.998984,
#EXT-X-PROGRAM-DATE-TIME:2022-09-19T22:27:08.210+0200
chunk-stream0-17754.m4s


    


    This is the call of ffmpeg (with APP_RECORDING_SEG_DUR = 2) :

    


    window_size = int(Settings.APP_RECORDING_PRE_DUR / Settings.APP_RECORDING_SEG_DUR)
# Command to start ffmpeg dash muxer
cmd = ''
cmd += f'ffmpeg -loglevel fatal -stimeout 1000000 -rtsp_transport tcp -i "{rtsp_url}" '
cmd += f'-map 0:0 -c:v:0 copy -movflags frag_keyframe+empty_moov -an -f dash -use_template 1 '
cmd += f'-use_timeline 0 -index_correction 0 -seg_duration {Settings.APP_RECORDING_SEG_DUR} '
cmd += f'-hls_playlist 1 -dash_segment_type mp4 -streaming 1 -remove_at_exit 1 '
cmd += f'-window_size {window_size} -extra_window_size {20 / Settings.APP_RECORDING_SEG_DUR} '
    cmd += f'{(self._target_path / playlist).as_posix()}'


    


    Has anybody observed a similar behaviour and knows how to stop the camera from changing the size of the video chunks ?

    


  • FFPROBE SWAPS WIDTH AND HEIGHT

    23 septembre 2022, par Chidozie Duru

    I just noticed that ffprobe swaps the width and height of some videos when fetching the data of those videos. Please help suggest how to go about this and get it right or any other package that is confirmed to work. Below is the resulting output after i used ffprobe to request for video metadata. I just requested the width and height, while some are correct, others are not as it swaps the value for width and height.

    


            {
        streams: [
        {
        index: 0,
        codec_name: 'aac',
        codec_long_name: 'AAC (Advanced Audio Coding)',
        profile: 'LC',
        codec_type: 'audio',
        codec_tag_string: 'mp4a',
        codec_tag: '0x6134706d',
        sample_fmt: 'fltp',
        sample_rate: 32000,
        channels: 1,
        channel_layout: 'mono',
        bits_per_sample: 0,
        id: '0x1',
        r_frame_rate: '0/0',
        avg_frame_rate: '0/0',
        time_base: '1/32000',
        start_pts: 0,
        start_time: 0,
        duration_ts: 12228608,
        duration: 382.144,
        bit_rate: 126250,
        max_bit_rate: 'N/A',
        bits_per_raw_sample: 'N/A',
        nb_frames: 11942,
        nb_read_frames: 'N/A',
        nb_read_packets: 'N/A',
        extradata_size: 2,
        tags: [Object],
        disposition: [Object]
        },
        {
        index: 1,
        codec_name: 'h264',
        codec_long_name: 'H.264 / AVC / MPEG-4 AVC / MPEG-4 part 10',
        profile: 'High',
        codec_type: 'video',
        codec_tag_string: 'avc1',
        codec_tag: '0x31637661',
        width: 1920,
        height: 1080,
        coded_width: 1920,
        coded_height: 1080,
        closed_captions: 0,
        film_grain: 0,
        has_b_frames: 0,
        sample_aspect_ratio: 'N/A',
        display_aspect_ratio: 'N/A',
        pix_fmt: 'yuv420p',
        level: 50,
        color_range: 'unknown',
        color_space: 'unknown',
        color_transfer: 'unknown',
        color_primaries: 'unknown',
        chroma_location: 'unspecified',
        field_order: 'progressive',
        refs: 1,
        is_avc: 'true',
        nal_length_size: 4,
        id: '0x2',
        r_frame_rate: '25/1',
        avg_frame_rate: '25/1',
        time_base: '1/30000',
        start_pts: 0,
        start_time: 0,
        duration_ts: 11463600,
        duration: 382.12,
        bit_rate: 183454,
        max_bit_rate: 'N/A',
        bits_per_raw_sample: 8,
        nb_frames: 9553,
        nb_read_frames: 'N/A',
        nb_read_packets: 'N/A',
        extradata_size: 29,
        tags: [Object],
        disposition: [Object]
        }
        ],
        format: {
        filename: './input4.mp4',
        nb_streams: 2,
        nb_programs: 0,
        format_name: 'mov,mp4,m4a,3gp,3g2,mj2',
        format_long_name: 'QuickTime / MOV',
        start_time: 0,
        duration: 382.144,
        size: 14896948,
        bit_rate: 311860,
        probe_score: 100,
        tags: {
        major_brand: 'mp42',
        minor_version: '0',
        compatible_brands: 'isommp42',
        creation_time: '2022-09-23T20:39:00.000000Z'
        }
        },
        chapters: []
        }


    


  • Reading subtitle metadata from mpeg files using ffprobe

    26 septembre 2022, par Kaydee Dunlop

    I'm using ffmpeg or to be more specific ffprobe which is part of the ffmpeg toolstack to read subtitle information from a mpeg file. Anyway, I'm facing an issue I currently don't fully understand. If I use the following command :

    


    ffprobe -of json -show_streams -show_format


    


    I get back something like this :

    


        {
        "index": 6,
        "codec_name": "mov_text",
        "codec_long_name": "MOV text",
        "codec_type": "subtitle",
        "codec_tag_string": "tx3g",
        "codec_tag": "0x67337874",
        "width": 3840,
        "height": 240,
        "id": "0x6",
        "r_frame_rate": "0/0",
        "avg_frame_rate": "0/0",
        "time_base": "1/1000",
        "start_pts": 0,
        "start_time": "0.000000",
        "duration_ts": 6706616,
        "duration": "6706.616000",
        "bit_rate": "95",
        "nb_frames": "4028",
        "extradata_size": 48,
        "disposition": {
            "default": 0,
            "dub": 0,
            "original": 0,
            "comment": 0,
            "lyrics": 0,
            "karaoke": 0,
            "forced": 0,
            "hearing_impaired": 0,
            "visual_impaired": 0,
            "clean_effects": 0,
            "attached_pic": 0,
            "timed_thumbnails": 0,
            "captions": 0,
            "descriptions": 0,
            "metadata": 0,
            "dependent": 0,
            "still_image": 0
        },
        "tags": {
            "creation_time": "2022-09-11T01:02:33.000000Z",
            "language": "eng"
        }
    },


    


    you can see, I have several options that can be set for the disposition section, I'm especially interested in "forced" and "hearing_impaired". To set the value for these options I'm trying to use a tool called "Subler" which is a tool to metarise mpeg files and their containing tracks. But for some reason, ffprobe does not seem to match with the fields Subler sets... So I'm kind stuck as I'm never really able to find out if a subtitle track is forced, hearing_impaired (SDH) etc. Is there any kind of workaround for this problem, maybe an extra option I have to set with ffprobe or so ? Is there maybe an alternative tool that can ?

    


    If you are more interested into this issue I also uploaded a test scenario which has forced subtitles, normal subtitles and SDH subtitles properly set, it also contains screenshots and the raw SRT files, which are basically not needed as the subs are already embedded into the mp4 file, but just in case I also attached them.

    


    https://drive.google.com/file/d/1ZZ32i17A33Lhpn4a5BDg033yV9PbZhtS/view?usp=sharing