Recherche avancée

Médias (1)

Mot : - Tags -/Rennes

Autres articles (62)

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

  • Les statuts des instances de mutualisation

    13 mars 2010, par

    Pour des raisons de compatibilité générale du plugin de gestion de mutualisations avec les fonctions originales de SPIP, les statuts des instances sont les mêmes que pour tout autre objets (articles...), seuls leurs noms dans l’interface change quelque peu.
    Les différents statuts possibles sont : prepa (demandé) qui correspond à une instance demandée par un utilisateur. Si le site a déjà été créé par le passé, il est passé en mode désactivé. publie (validé) qui correspond à une instance validée par un (...)

Sur d’autres sites (8815)

  • How to set a dictionary based off of subprocess.check_output

    5 juillet 2020, par Jessie Wilson

    This is a confusing question, however I will try to make it as clear as possible.
Currently when I build my app, if I run it via the .py file it works perfectly. However, once I compile it some parts of my app aren't functioning, specifically this code here.

    


    def ffprobe_run():
global output
global acodec_choices
run = subprocess.check_output("ffprobe " + videoinputquoted + " " + ffprobecommand, universal_newlines=True)
print(run)
if run[-2] == '3':
    acodec_choices = {"One": "1",
                      "Two": "2",
                      "Three": "3"}
elif run[-2] == '2':
    acodec_choices = {"One": "1",
                      "Two": "2",}
elif run[-2] == '1':
    acodec_choices = {"One": "1",}
print(acodec_choices.values())


    


    I am able to get the results I want with this command. Currently that's using FFPROBE to check for the amount of audio tracks there is in a file. It returns values like so

    


    1
2
3


    


    If there is 3 tracks. Or

    


    1 
2


    


    If it's two tracks. I use the command[-2]
which will give me the result of '2'

    


    So I'm taking that result and defining a dictionary to automatically populate/change an OptionMenu

    


    It defines this in my main app

    


     # Audio Stream Selection
    acodec_stream = StringVar(audio_window)
    if ffprobeinfo[-2] == '1':
        acodec_stream_choices = {'Track 1': "-map 0:a:0"}
    elif ffprobeinfo[-2] == '2':
        acodec_stream_choices = {'Track 1': "-map 0:a:0",
                                 'Track 2': "-map 0:a:1"}
    elif ffprobeinfo[-2] == '3':
        acodec_stream_choices = {'Track 1': "-map 0:a:0",
                                 'Track 2': "-map 0:a:1",
                                 'Track 3': "-map 0:a:2"}
    elif ffprobeinfo[-2] == '4':
        acodec_stream_choices = {'Track 1': "-map 0:a:0",
                                 'Track 2': "-map 0:a:1",
                                 'Track 3': "-map 0:a:2",
                                 'Track 4': "-map 0:a:3"}
    elif ffprobeinfo[-2] == '5':
        acodec_stream_choices = {'Track 1': "-map 0:a:0",
                                 'Track 2': "-map 0:a:1",
                                 'Track 3': "-map 0:a:2",
                                 'Track 4': "-map 0:a:3",
                                 'Track 5': "-map 0:a:4"}
    elif ffprobeinfo[-2] == '6':
        acodec_stream_choices = {'Track 1': "-map 0:a:0",
                                 'Track 2': "-map 0:a:1",
                                 'Track 3': "-map 0:a:2",
                                 'Track 4': "-map 0:a:3",
                                 'Track 5': "-map 0:a:4",
                                 'Track 6': "-map 0:a:5"}
    elif ffprobeinfo[-2] == '7':
        acodec_stream_choices = {'Track 1': "-map 0:a:0",
                                 'Track 2': "-map 0:a:1",
                                 'Track 3': "-map 0:a:2",
                                 'Track 4': "-map 0:a:3",
                                 'Track 5': "-map 0:a:4",
                                 'Track 6': "-map 0:a:5",
                                 'Track 7': "-map 0:a:6"}
    elif ffprobeinfo[-2] == '8':
        acodec_stream_choices = {'Track 1': "-map 0:a:0",
                                 'Track 2': "-map 0:a:1",
                                 'Track 3': "-map 0:a:2",
                                 'Track 4': "-map 0:a:3",
                                 'Track 5': "-map 0:a:4",
                                 'Track 6': "-map 0:a:5",
                                 'Track 7': "-map 0:a:6",
                                 'Track 8': "-map 0:a:7"}
    elif ffprobeinfo[-2] == '9':
        acodec_stream_choices = {'Track 1': "-map 0:a:0",
                                 'Track 2': "-map 0:a:1",
                                 'Track 3': "-map 0:a:2",
                                 'Track 4': "-map 0:a:3",
                                 'Track 5': "-map 0:a:4",
                                 'Track 6': "-map 0:a:5",
                                 'Track 7': "-map 0:a:6",
                                 'Track 8': "-map 0:a:7",
                                 'Track 9': "-map 0:a:8"}
    elif ffprobeinfo[-2] == '10':
        acodec_stream_choices = {'Track 1': "-map 0:a:0",
                                 'Track 2': "-map 0:a:1",
                                 'Track 3': "-map 0:a:2",
                                 'Track 4': "-map 0:a:3",
                                 'Track 5': "-map 0:a:4",
                                 'Track 6': "-map 0:a:5",
                                 'Track 7': "-map 0:a:6",
                                 'Track 8': "-map 0:a:7",
                                 'Track 9': "-map 0:a:8",
                                 'Track 10': "-map 0:a:9"}
    acodec_stream.set('Track 1')  # set the default option
    acodec_stream_label = Label(audio_window, text="Track :")
    acodec_stream_label.grid(row=0, column=0, columnspan=1, padx=5, pady=5)
    acodec_stream_menu = OptionMenu(audio_window, acodec_stream, *acodec_stream_choices.keys())
    acodec_stream_menu.grid(row=1, column=0, columnspan=1, padx=5, pady=5)


    


    This is all working great, If I am running the app via the .py file. Once I compile it's missing the entire defined dictionary selection.

    


    This is what it's supposed to look like
enter image description here

    


    However, this is what it looks like with the code above. enter image description here

    


    If I define the dictionary myself, it works fine. However, then I can't automatically input the correct amount of available audio tracks.

    


    I hope this isn't too much code. I'm very new at this.

    


    EDIT :

    


    If I compile via pyinstaller and remove the -w flag, the program runs correctly, shows the tracks.

    


    I'm assuming I'm not using subprocess/calling something correctly. The program I don't think is calling to FFPROBE when it doesn't have a console, vs calling it and getting the value when it has it's own console.

    


  • How can fix CalledProcessError : in ffmpeg

    7 décembre 2020, par Mario

    I hope someone can help to troubleshoot this problem. I'm trying to save the loss plots out of Keras in the form of the following animation.

    



    img

    



    but I have been facing the following error, and ultimately I can't save the animation :

    



    MovieWriter stderr:&#xA;[h264_v4l2m2m @ 0x55a67176f430] Could not find a valid device&#xA;[h264_v4l2m2m @ 0x55a67176f430] can&#x27;t configure encoder&#xA;Error initializing output stream 0:0 -- Error while opening encoder for output stream #0:0 - maybe incorrect parameters such as bit_rate, rate, width or height&#xA;&#xA;---------------------------------------------------------------------------&#xA;BrokenPipeError                           Traceback (most recent call last)&#xA;~/anaconda3/envs/CR7/lib/python3.6/site-packages/matplotlib/animation.py in saving(self, fig, outfile, dpi, *args, **kwargs)&#xA;    229         try:&#xA;--> 230             yield self&#xA;    231         finally:&#xA;&#xA;~/anaconda3/envs/CR7/lib/python3.6/site-packages/matplotlib/animation.py in save(self, filename, writer, fps, dpi, codec, bitrate, extra_args, metadata, extra_anim, savefig_kwargs, progress_callback)&#xA;   1155                             frame_number &#x2B;= 1&#xA;-> 1156                     writer.grab_frame(**savefig_kwargs)&#xA;   1157 &#xA;&#xA;~/anaconda3/envs/CR7/lib/python3.6/site-packages/matplotlib/animation.py in grab_frame(self, **savefig_kwargs)&#xA;    383         self.fig.savefig(self._frame_sink(), format=self.frame_format,&#xA;--> 384                          dpi=self.dpi, **savefig_kwargs)&#xA;    385 &#xA;&#xA;~/anaconda3/envs/CR7/lib/python3.6/site-packages/matplotlib/figure.py in savefig(self, fname, transparent, **kwargs)&#xA;   2179 &#xA;-> 2180         self.canvas.print_figure(fname, **kwargs)&#xA;   2181 &#xA;&#xA;~/anaconda3/envs/CR7/lib/python3.6/site-packages/matplotlib/backend_bases.py in print_figure(self, filename, dpi, facecolor, edgecolor, orientation, format, bbox_inches, **kwargs)&#xA;   2081                     bbox_inches_restore=_bbox_inches_restore,&#xA;-> 2082                     **kwargs)&#xA;   2083             finally:&#xA;&#xA;~/anaconda3/envs/CR7/lib/python3.6/site-packages/matplotlib/backends/backend_agg.py in print_raw(self, filename_or_obj, *args, **kwargs)&#xA;    445                 cbook.open_file_cm(filename_or_obj, "wb") as fh:&#xA;--> 446             fh.write(renderer._renderer.buffer_rgba())&#xA;    447 &#xA;&#xA;BrokenPipeError: [Errno 32] Broken pipe&#xA;&#xA;During handling of the above exception, another exception occurred:&#xA;&#xA;CalledProcessError                        Traceback (most recent call last)&#xA; in <module>&#xA;     17 print(f&#x27;{model_type.upper()} Train Time: {Timer} sec&#x27;)&#xA;     18 &#xA;---> 19 create_loss_animation(model_type, hist.history[&#x27;loss&#x27;], hist.history[&#x27;val_loss&#x27;], epoch)&#xA;     20 &#xA;     21 evaluate(model, trainX, trainY, testX, testY, scores_train, scores_test)&#xA;&#xA; in create_loss_animation(model_type, loss_hist, val_loss_hist, epoch)&#xA;     34 &#xA;     35     ani = matplotlib.animation.FuncAnimation(fig, animate, fargs=(l1, l2, loss, val_loss, title), repeat=True, interval=1000, repeat_delay=1000)&#xA;---> 36     ani.save(f&#x27;loss_animation_{model_type}_oneDataset.mp4&#x27;, writer=writer)&#xA;&#xA;~/anaconda3/envs/CR7/lib/python3.6/site-packages/matplotlib/animation.py in save(self, filename, writer, fps, dpi, codec, bitrate, extra_args, metadata, extra_anim, savefig_kwargs, progress_callback)&#xA;   1154                             progress_callback(frame_number, total_frames)&#xA;   1155                             frame_number &#x2B;= 1&#xA;-> 1156                     writer.grab_frame(**savefig_kwargs)&#xA;   1157 &#xA;   1158         # Reconnect signal for first draw if necessary&#xA;&#xA;~/anaconda3/envs/CR7/lib/python3.6/contextlib.py in __exit__(self, type, value, traceback)&#xA;     97                 value = type()&#xA;     98             try:&#xA;---> 99                 self.gen.throw(type, value, traceback)&#xA;    100             except StopIteration as exc:&#xA;    101                 # Suppress StopIteration *unless* it&#x27;s the same exception that&#xA;&#xA;~/anaconda3/envs/CR7/lib/python3.6/site-packages/matplotlib/animation.py in saving(self, fig, outfile, dpi, *args, **kwargs)&#xA;    230             yield self&#xA;    231         finally:&#xA;--> 232             self.finish()&#xA;    233 &#xA;    234 &#xA;&#xA;~/anaconda3/envs/CR7/lib/python3.6/site-packages/matplotlib/animation.py in finish(self)&#xA;    365     def finish(self):&#xA;    366         &#x27;&#x27;&#x27;Finish any processing for writing the movie.&#x27;&#x27;&#x27;&#xA;--> 367         self.cleanup()&#xA;    368 &#xA;    369     def grab_frame(self, **savefig_kwargs):&#xA;&#xA;~/anaconda3/envs/CR7/lib/python3.6/site-packages/matplotlib/animation.py in cleanup(self)&#xA;    409         if self._proc.returncode:&#xA;    410             raise subprocess.CalledProcessError(&#xA;--> 411                 self._proc.returncode, self._proc.args, out, err)&#xA;    412 &#xA;    413     @classmethod&#xA;&#xA;CalledProcessError: Command &#x27;[&#x27;/usr/bin/ffmpeg&#x27;, &#x27;-f&#x27;, &#x27;rawvideo&#x27;, &#x27;-vcodec&#x27;, &#x27;rawvideo&#x27;, &#x27;-s&#x27;, &#x27;720x720&#x27;, &#x27;-pix_fmt&#x27;, &#xA;&#x27;rgba&#x27;, &#x27;-r&#x27;, &#x27;5&#x27;, &#x27;-loglevel&#x27;, &#x27;error&#x27;, &#x27;-i&#x27;, &#x27;pipe:&#x27;, &#x27;-vcodec&#x27;, &#x27;h264&#x27;, &#x27;-pix_fmt&#x27;, &#x27;yuv420p&#x27;, &#x27;-b&#x27;, &#x27;800k&#x27;, &#x27;-y&#x27;, &#xA;&#x27;loss_animation_CNN_oneDataset.mp4&#x27;]&#x27; returned non-zero exit status 1.&#xA;</module>

    &#xA;&#xA;

    I tried to ignore the error by this answer but it seems it's not the case. I also checked similar case but its answer for getting a static git binary is not my cas as well since not especial converting PNG to MP4 !

    &#xA;&#xA;

    My code is as follows :

    &#xA;&#xA;

    plt.rcParams[&#x27;animation.ffmpeg_path&#x27;] = &#x27;/usr/bin/ffmpeg&#x27;&#xA;&#xA;def animate(i, data1, data2, line1, line2):&#xA;    temp1 = data1.iloc[:int(i&#x2B;1)]&#xA;    temp2 = data2.iloc[:int(i&#x2B;1)]&#xA;&#xA;    line1.set_data(temp1.index, temp1.value)&#xA;    line2.set_data(temp2.index, temp2.value)&#xA;&#xA;    return (line1, line2)&#xA;&#xA;&#xA;def create_loss_animation(model_type, data1, data2):&#xA;    fig = plt.figure()&#xA;    plt.title(f&#x27;Loss on Train &amp; Test&#x27;, fontsize=25)&#xA;    plt.xlabel(&#x27;Epoch&#x27;, fontsize=20)&#xA;    plt.ylabel(&#x27;Loss MSE for Sx-Sy &amp; Sxy&#x27;, fontsize=20)&#xA;    plt.xlim(min(data1.index.min(), data2.index.min()), max(data1.index.max(), data2.index.max()))&#xA;    plt.ylim(min(data1.value.min(), data2.value.min()), max(data1.value.max(), data2.value.max()))&#xA;&#xA;    l1, = plt.plot([], [], &#x27;o-&#x27;, label=&#x27;Train Loss&#x27;, color=&#x27;b&#x27;, markevery=[-1])&#xA;    l2, = plt.plot([], [], &#x27;o-&#x27;, label=&#x27;Test Loss&#x27;, color=&#x27;r&#x27;, markevery=[-1])&#xA;    plt.legend(loc=&#x27;center right&#x27;, fontsize=&#x27;xx-large&#x27;)&#xA;&#xA;    Writer = animation.writers[&#x27;ffmpeg&#x27;]&#xA;    writer = Writer(fps=5, bitrate=1800)&#xA;&#xA;    ani = matplotlib.animation.FuncAnimation(fig, animate, fargs=(data1, data2, l1, l2), repeat=True, interval=1000, repeat_delay=1000)&#xA;    ani.save(f&#x27;{model_type}.mp4&#x27;, writer=writer)&#xA;&#xA;# create datasets&#xA;x = np.linspace(0,150,50)&#xA;y1 = 41*np.exp(-x/20)&#xA;y2 = 35*np.exp(-x/50)&#xA;&#xA;my_data_number_1 = pd.DataFrame({&#x27;x&#x27;:x, &#x27;value&#x27;:y1}).set_index(&#x27;x&#x27;)&#xA;my_data_number_2 = pd.DataFrame({&#x27;x&#x27;:x, &#x27;value&#x27;:y2}).set_index(&#x27;x&#x27;)&#xA;&#xA;create_loss_animation(&#x27;test&#x27;, my_data_number_1, my_data_number_2)&#xA;

    &#xA;

  • x86 : Add missing colons after assembly labels

    17 mars 2016, par Diego Biurrun
    x86 : Add missing colons after assembly labels
    

    This fixes many warnings of the sort
    warning : label alone on a line without a colon might be in error

    • [DBH] libavcodec/x86/audiodsp.asm
    • [DBH] libavcodec/x86/dcadsp.asm
    • [DBH] libavcodec/x86/h264_qpel_10bit.asm
    • [DBH] libavcodec/x86/h264_weight.asm
    • [DBH] libavcodec/x86/hevc_mc.asm
    • [DBH] libavcodec/x86/v210enc.asm
    • [DBH] libavfilter/x86/vf_interlace.asm
    • [DBH] libavutil/x86/imgutils.asm