Recherche avancée

Médias (39)

Mot : - Tags -/audio

Autres articles (68)

  • Qu’est ce qu’un éditorial

    21 juin 2013, par

    Ecrivez votre de point de vue dans un article. Celui-ci sera rangé dans une rubrique prévue à cet effet.
    Un éditorial est un article de type texte uniquement. Il a pour objectif de ranger les points de vue dans une rubrique dédiée. Un seul éditorial est placé à la une en page d’accueil. Pour consulter les précédents, consultez la rubrique dédiée.
    Vous pouvez personnaliser le formulaire de création d’un éditorial.
    Formulaire de création d’un éditorial Dans le cas d’un document de type éditorial, les (...)

  • 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 (...)

  • La sauvegarde automatique de canaux SPIP

    1er avril 2010, par

    Dans le cadre de la mise en place d’une plateforme ouverte, il est important pour les hébergeurs de pouvoir disposer de sauvegardes assez régulières pour parer à tout problème éventuel.
    Pour réaliser cette tâche on se base sur deux plugins SPIP : Saveauto qui permet une sauvegarde régulière de la base de donnée sous la forme d’un dump mysql (utilisable dans phpmyadmin) mes_fichiers_2 qui permet de réaliser une archive au format zip des données importantes du site (les documents, les éléments (...)

Sur d’autres sites (7933)

  • avfilter/buffersink : fix order of operation with = and

    2 novembre 2023, par Michael Niedermayer
    avfilter/buffersink : fix order of operation with = and <0
    

    Reviewed-by : Sean McGovern <gseanmcg@gmail.com>
    Reviewed-by : Nicolas George <george@nsup.org>
    Signed-off-by : Michael Niedermayer <michael@niedermayer.cc>

    • [DH] libavfilter/buffersink.c
  • ffmpeg concat work in one order but not the other

    11 octobre 2023, par user3083171

    So I took a video and cut it two ways, one with reencoding and one without reencoding, call them R and C (cut). Im trying to do concatenation without reencoding, and I'm able to concat the video in all orders , , , , but the sound disappears for and I have no idea why.

    &#xA;

    I know I can concatenate with reencoding, but my question is specifically if someone knows why the sound drops in and maybe how to fix it. Here is some code in python

    &#xA;

    import os&#xA;import json&#xA;import subprocess&#xA;&#xA;video_file = &#x27;yourpath/vid.mp4&#x27;&#xA;# get the time between frames&#xA;&#xA;ffprobe_command = f"ffprobe -v error -select_streams v:0 -show_entries stream=width,height,r_frame_rate,duration,nb_frames,codec_name -of json {video_file}"&#xA;result = subprocess.run(ffprobe_command, shell=True, stdout=subprocess.PIPE, stderr=subprocess.PIPE, text=True)&#xA;&#xA;# Parse the JSON output from ffprobe&#xA;json_data = json.loads(result.stdout)&#xA;&#xA;# Extract video information from the JSON data&#xA;video_info = {&#xA;    &#x27;length&#x27;: int(json_data[&#x27;streams&#x27;][0][&#x27;nb_frames&#x27;]),&#xA;    &#x27;frames&#x27;: int(json_data[&#x27;streams&#x27;][0][&#x27;nb_frames&#x27;]),&#xA;    &#x27;duration_seconds&#x27;: float(json_data[&#x27;streams&#x27;][0][&#x27;duration&#x27;]),&#xA;    &#x27;fps&#x27;: eval(json_data[&#x27;streams&#x27;][0][&#x27;r_frame_rate&#x27;]),&#xA;    &#x27;codec&#x27;: json_data[&#x27;streams&#x27;][0][&#x27;codec_name&#x27;],&#xA;    &#x27;time_between_frames&#x27;: 1 / eval(json_data[&#x27;streams&#x27;][0][&#x27;r_frame_rate&#x27;])&#xA;}&#xA;# get the time between frames&#xA;delta = video_info[&#x27;time_between_frames&#x27;]&#xA;&#xA;directory, filename_with_extension = os.path.split(video_file)&#xA;filename, extension = os.path.splitext(filename_with_extension)&#xA;tag = "_reencode"&#xA;new_filename = f"{filename}{tag}{extension}"&#xA;reencode_file = directory &#x2B; "/" &#x2B; new_filename&#xA;&#xA;tag = "_justcut"&#xA;new_filename = f"{filename}{tag}{extension}"&#xA;justcut_file = directory &#x2B; "/" &#x2B; new_filename&#xA;&#xA;tag = "_concat"&#xA;new_filename = f"{filename}{tag}{extension}"&#xA;concat_file = directory &#x2B; "/" &#x2B; new_filename&#xA;&#xA;start_time = 0.0 &#x2B; 108 * delta&#xA;end_time = start_time &#x2B; 180 * delta&#xA;end_frame = round(end_time / delta)&#xA;start_frame = round(start_time / delta)&#xA;&#xA;# Reencode&#xA;cmd = [&#xA;    "ffmpeg",&#xA;    "-i", video_file,&#xA;    "-ss", str(start_time),&#xA;    "-to", str(end_time),&#xA;    # "-c:a", "copy",&#xA;    "-c:v", "libx264",&#xA;    "-bf", str(0), # no B frames&#xA;    "-crf", str(18),  # new&#xA;    "-preset", "slow",  # new&#xA;    # "-g", str(60), #forces key_frames&#xA;    # "-force_key_frames expr:gte(t, n_forced * GOP_LEN_IN_SECONDS)"&#xA;    # "-c:v", "mpeg4", #"copy", #"mpeg4"&#xA;    # "-q:v", "2",&#xA;    "-c:a", "copy",&#xA;    # "video_track_timescale", str(90)&#x2B;"K",&#xA;    reencode_file&#xA;]&#xA;subprocess.run(cmd, check=True)&#xA;&#xA;# Just Cut&#xA;cmd = [&#xA;    &#x27;ffmpeg&#x27;,&#xA;    &#x27;-i&#x27;, video_file,&#xA;    &#x27;-c&#x27;, &#x27;copy&#x27;,&#xA;    &#x27;-ss&#x27;, str(start_time),&#xA;    &#x27;-to&#x27;, str(end_time),&#xA;    justcut_file&#xA;]&#xA;subprocess.run(cmd, check=True)&#xA;&#xA;# Concat without reencoding&#xA;def concatenate_videos_without_reencoding(video1, video2, output_file):&#xA;    try:&#xA;        # Create a text file listing the videos to concatenate&#xA;        with open(&#x27;input.txt&#x27;, &#x27;w&#x27;) as f:&#xA;            f.write(f"file &#x27;{video1}&#x27;\n")&#xA;            f.write(f"file &#x27;{video2}&#x27;\n")&#xA;&#xA;        # Run ffmpeg command to concatenate videos without re-encoding&#xA;        # subprocess.run([&#x27;ffmpeg&#x27;, &#x27;-f&#x27;, &#x27;concat&#x27;, &#x27;-safe&#x27;, &#x27;0&#x27;, &#x27;-i&#x27;, &#x27;input.txt&#x27;, &#x27;-c&#x27;, &#x27;copy&#x27;, output_file])&#xA;&#xA;        subprocess.run(&#xA;            [&#x27;ffmpeg&#x27;, &#x27;-f&#x27;, &#x27;concat&#x27;, &#x27;-safe&#x27;, &#x27;0&#x27;, &#x27;-i&#x27;, &#x27;input.txt&#x27;, &#x27;-vcodec&#x27;, &#x27;copy&#x27;,&#xA;             &#x27;-acodec&#x27;, &#x27;copy&#x27;, "-strict", "experimental", output_file])&#xA;&#xA;        print(f"Videos concatenated successfully without re-encoding. Output saved to {output_file}")&#xA;    except Exception as e:&#xA;        print(f"An error occurred: {e}")&#xA;    finally:&#xA;        # Remove the temporary input file&#xA;        if os.path.exists(&#x27;input.txt&#x27;):&#xA;            os.remove(&#x27;input.txt&#x27;)&#xA;# Has sound&#xA;concatenate_videos_without_reencoding(justcut_file, justcut_file, concat_file)&#xA;os.remove(concat_file)&#xA;# Has sound&#xA;concatenate_videos_without_reencoding(reencode_file, reencode_file, concat_file)&#xA;os.remove(concat_file)&#xA;# Has sound&#xA;concatenate_videos_without_reencoding(justcut_file, reencode_file, concat_file)&#xA;os.remove(concat_file)&#xA;# Has NO sound&#xA;concatenate_videos_without_reencoding(reencode_file, justcut_file, concat_file)&#xA;os.remove(concat_file)&#xA;

    &#xA;

    As you can see I tried a bunch of stuff but I have no clue why the audio is not working. I've tried to force the two input videos to be as similar as possible in term of specs and keyframes and fps etc. Nothing seems to work, kinda frustrating.

    &#xA;

    I've also tried this with both mpeg4 and h264 and different framerates, but still get this behavior.

    &#xA;

  • vulkan_hevc : use diagonal scan order for scaling lists

    28 juillet 2023, par Benjamin Cheng
    vulkan_hevc : use diagonal scan order for scaling lists
    

    The hevc parser parses the diagonal scan order in bitstream into raster
    scan order. However, the Vulkan spec wants it as specified in H265 spec,
    which is diagonal scan order.

    Tested on RADV.

    v2 : fix copy-paste typo with PPS.

    • [DH] libavcodec/vulkan_hevc.c