Recherche avancée

Médias (0)

Mot : - Tags -/signalement

Aucun média correspondant à vos critères n’est disponible sur le site.

Autres articles (46)

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

  • HTML5 audio and video support

    13 avril 2011, par

    MediaSPIP uses HTML5 video and audio tags to play multimedia files, taking advantage of the latest W3C innovations supported by modern browsers.
    The MediaSPIP player used has been created specifically for MediaSPIP and can be easily adapted to fit in with a specific theme.
    For older browsers the Flowplayer flash fallback is used.
    MediaSPIP allows for media playback on major mobile platforms with the above (...)

  • Support audio et vidéo HTML5

    10 avril 2011

    MediaSPIP utilise les balises HTML5 video et audio pour la lecture de documents multimedia en profitant des dernières innovations du W3C supportées par les navigateurs modernes.
    Pour les navigateurs plus anciens, le lecteur flash Flowplayer est utilisé.
    Le lecteur HTML5 utilisé a été spécifiquement créé pour MediaSPIP : il est complètement modifiable graphiquement pour correspondre à un thème choisi.
    Ces technologies permettent de distribuer vidéo et son à la fois sur des ordinateurs conventionnels (...)

Sur d’autres sites (9981)

  • Uploading videos on rails website

    16 mai 2017, par Dinukaperera

    I am trying to let my users upload videos on my website(not deployed yet, testing locally). I have it set up in a manner where if the "user information" gets saved, it will take them to the "root_path", which is the homepage. If the user information is not saved, it will render the form again. Before I added the video upload feature, all the information got saved and everything worked well, but after adding the feature, it keeps rendering the same form over and over again since the information is not getting saved. How do I check what’s wrong ? The command line gives me this error : Error screenshot

    The user information form partial :
    `

    <%= simple_form_for @userinfo do |f| %>
     <%= f.input :name, label: 'Full name', error: 'Full name is mandatory' %>
     <%= f.input :username, label: 'Username', error: 'Username is mandatory, please specify one' %>
     <%= f.input :school, label: 'Name of college' %>
     <%= f.input :gpa, label: 'Enter GPA' %>
     <%= f.input :email, label: 'Enter email address' %>
     <%= f.input :number, label: 'Phone number' %>
     <%= f.file_field :video %>
     <%= f.button :submit %>
    <% end %>

    `

    My user controller (This is the user information controller, does not control user email and password. I’m using the devise gem for user sign in, sign out, and sign up) :`

    class UsersController < ApplicationController
       def index
       end

       def show
       end

       def new
           @userinfo = User.new
       end

       def create
           @userinfo = User.new(user_params)
           if @userinfo.save
             redirect_to root_path
           else
             render 'new'
           end
       end

       def edit
       end

       def update
       end

       def destroy
       end

       private
           def user_params
               params.require(:user).permit(:name, :username, :email, :number, :school, :gpa, :major, :video)
           end
    end

    `

    This is the user model (usermain is the model related to user password and email. The user information in the user model belongs to the usermain) : `

    class User < ActiveRecord::Base
       belongs_to :usermain

       has_attached_file :video, styles: {:video_show => {:geometry => "640x480",:format => 'mp4'},:video_index => { :geometry => "160x120", :format => 'jpeg', :time => 10}}, :processors => [:transcoder]
       validates_attachment_content_type :video, content_type: /\Avideo\/.*\Z/
    end

    `

    This is the migration file that creates the user information table :`

    class CreateUsers < ActiveRecord::Migration
     def change
       create_table :users do |t|
         t.string :name
         t.string :username
         t.string :email
         t.string :number
         t.string :school
         t.string :gpa
         t.string :major

         t.timestamps null: false
       end
     end
    end
    This is adding the "video" field to the above created user information table:
    class AddAttachmentVideoToUsers < ActiveRecord::Migration
     def self.up
       change_table :users do |t|
         t.attachment :video
       end
     end

     def self.down
       remove_attachment :users, :video
     end
    end

    `

    I also have paperclip and ffmpeg installed. When I say installed, it’s literally just that. I’m not sure if I have to manipulate paperclip or ffmpeg in any way to make it work with the videos, I have just installed and did nothing else with them. I have been pulling my hair out for the past two days. Any help is appreciated.

  • reduce bitrate using ffmpeg

    21 mai 2017, par WantIt

    I have this command to run with ffmpeg to reduce bitrate.

    ffmpeg -y -i input.mp4 -b:v 1024k output_1024k.mp4

    where we want to take the input file and just reduced it’s bitrate (just 1024k). It works in the commandline.
    Now, I like to reduce bitrate via Java. I decided to use bytedeco/javacv FFmpegFrameGrabber and FFmpegFrameRecorder to perform the same function. Below is my code :

    FFmpegFrameGrabber grabber = new FFmpegFrameGrabber("input.mp4");
               grabber.start();

               FrameRecorder recorder = new FFmpegFrameRecorder("out.mp4", grabber.getAudioChannels());
               recorder.setSampleRate(256);
               recorder.start();

               Frame frame;
               while ((frame = grabber.grabFrame()) != null) {
                   recorder.record(frame);
               }
               recorder.stop();
               grabber.stop();

    but it is saying the following error :

    org.bytedeco.javacv.FrameRecorder$Exception: avcodec_open2() error -22: Could not open audio codec.
       at org.bytedeco.javacv.FFmpegFrameRecorder.startUnsafe(FFmpegFrameRecorder.java:732)
       at org.bytedeco.javacv.FFmpegFrameRecorder.start(FFmpegFrameRecorder.java:351)
       at com.goxhere.api.monte.resources.VideoResource.uploadFile(VideoResource.java:337)
       at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
       at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
       at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
       at java.lang.reflect.Method.invoke(Method.java:498)
       at org.glassfish.jersey.server.model.internal.ResourceMethodInvocationHandlerFactory.lambda$static$0(ResourceMethodInvocationHandlerFactory.java:74)
       at org.glassfish.jersey.server.model.internal.AbstractJavaResourceMethodDispatcher$1.run(AbstractJavaResourceMethodDispatcher.java:144)
       at org.glassfish.jersey.server.model.internal.AbstractJavaResourceMethodDispatcher.invoke(AbstractJavaResourceMethodDispatcher.java:161)
       at org.glassfish.jersey.server.model.internal.JavaResourceMethodDispatcherProvider$TypeOutInvoker.doDispatch(JavaResourceMethodDispatcherProvider.java:247)
       at org.glassfish.jersey.server.model.internal.AbstractJavaResourceMethodDispatcher.dispatch(AbstractJavaResourceMethodDispatcher.java:99)
       at org.glassfish.jersey.server.model.ResourceMethodInvoker.invoke(ResourceMethodInvoker.java:388)
       at org.glassfish.jersey.server.model.ResourceMethodInvoker.apply(ResourceMethodInvoker.java:346)
       at org.glassfish.jersey.server.model.ResourceMethodInvoker.apply(ResourceMethodInvoker.java:102)
       at org.glassfish.jersey.server.ServerRuntime$2.run(ServerRuntime.java:337)
       at org.glassfish.jersey.internal.Errors$1.call(Errors.java:271)
       at org.glassfish.jersey.internal.Errors$1.call(Errors.java:267)
       at org.glassfish.jersey.internal.Errors.process(Errors.java:315)
       at org.glassfish.jersey.internal.Errors.process(Errors.java:297)
       at org.glassfish.jersey.internal.Errors.process(Errors.java:267)
       at org.glassfish.jersey.process.internal.RequestScope.runInScope(RequestScope.java:280)
       at org.glassfish.jersey.server.ServerRuntime.process(ServerRuntime.java:316)
       at org.glassfish.jersey.server.ApplicationHandler.handle(ApplicationHandler.java:1084)
       at org.glassfish.jersey.servlet.WebComponent.serviceImpl(WebComponent.java:418)
       at org.glassfish.jersey.servlet.WebComponent.service(WebComponent.java:372)
       at org.glassfish.jersey.servlet.ServletContainer.service(ServletContainer.java:389)
       at org.glassfish.jersey.servlet.ServletContainer.service(ServletContainer.java:342)
       at org.glassfish.jersey.servlet.ServletContainer.service(ServletContainer.java:229)
       at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:231)
       at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166)
       at org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:52)
       at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193)
       at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166)
       at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:198)
       at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:96)
       at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:478)
       at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:140)
       at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:80)
       at org.apache.catalina.valves.AbstractAccessLogValve.invoke(AbstractAccessLogValve.java:624)
       at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:87)
       at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:342)
       at org.apache.coyote.http11.Http11Processor.service(Http11Processor.java:799)
       at org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:66)
       at org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:861)
       at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1455)
       at org.apache.tomcat.util.net.SocketProcessorBase.run(SocketProcessorBase.java:49)
       at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
       at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
       at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61)
       at java.lang.Thread.run(Thread.java:748)

    Basically the error says I have problem with audio codec, but when I tried to run the ffmpeg commandline directly, it reduces the bitrate just fine. Are we missing some setup in javacode ? Thank you.

  • reduce bitrate using ffmpeg

    27 mai 2017, par WantIt

    I have this command to run with ffmpeg to reduce bitrate.

    ffmpeg -y -i input.mp4 -b:v 1024k output_1024k.mp4

    where we want to take the input file and just reduced it’s bitrate (just 1024k). It works in the commandline.
    Now, I like to reduce bitrate via Java. I decided to use bytedeco/javacv FFmpegFrameGrabber and FFmpegFrameRecorder to perform the same function. Below is my code :

    FFmpegFrameGrabber grabber = new FFmpegFrameGrabber("input.mp4");
               grabber.start();

               FrameRecorder recorder = new FFmpegFrameRecorder("out.mp4", grabber.getAudioChannels());
               recorder.setSampleRate(256);
               recorder.start();

               Frame frame;
               while ((frame = grabber.grabFrame()) != null) {
                   recorder.record(frame);
               }
               recorder.stop();
               grabber.stop();

    but it is saying the following error :

    org.bytedeco.javacv.FrameRecorder$Exception: avcodec_open2() error -22: Could not open audio codec.
       at org.bytedeco.javacv.FFmpegFrameRecorder.startUnsafe(FFmpegFrameRecorder.java:732)
       at org.bytedeco.javacv.FFmpegFrameRecorder.start(FFmpegFrameRecorder.java:351)
       at com.goxhere.api.monte.resources.VideoResource.uploadFile(VideoResource.java:337)
       at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
       at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
       at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
       at java.lang.reflect.Method.invoke(Method.java:498)
       at org.glassfish.jersey.server.model.internal.ResourceMethodInvocationHandlerFactory.lambda$static$0(ResourceMethodInvocationHandlerFactory.java:74)
       at org.glassfish.jersey.server.model.internal.AbstractJavaResourceMethodDispatcher$1.run(AbstractJavaResourceMethodDispatcher.java:144)
       at org.glassfish.jersey.server.model.internal.AbstractJavaResourceMethodDispatcher.invoke(AbstractJavaResourceMethodDispatcher.java:161)
       at org.glassfish.jersey.server.model.internal.JavaResourceMethodDispatcherProvider$TypeOutInvoker.doDispatch(JavaResourceMethodDispatcherProvider.java:247)
       at org.glassfish.jersey.server.model.internal.AbstractJavaResourceMethodDispatcher.dispatch(AbstractJavaResourceMethodDispatcher.java:99)
       at org.glassfish.jersey.server.model.ResourceMethodInvoker.invoke(ResourceMethodInvoker.java:388)
       at org.glassfish.jersey.server.model.ResourceMethodInvoker.apply(ResourceMethodInvoker.java:346)
       at org.glassfish.jersey.server.model.ResourceMethodInvoker.apply(ResourceMethodInvoker.java:102)
       at org.glassfish.jersey.server.ServerRuntime$2.run(ServerRuntime.java:337)
       at org.glassfish.jersey.internal.Errors$1.call(Errors.java:271)
       at org.glassfish.jersey.internal.Errors$1.call(Errors.java:267)
       at org.glassfish.jersey.internal.Errors.process(Errors.java:315)
       at org.glassfish.jersey.internal.Errors.process(Errors.java:297)
       at org.glassfish.jersey.internal.Errors.process(Errors.java:267)
       at org.glassfish.jersey.process.internal.RequestScope.runInScope(RequestScope.java:280)
       at org.glassfish.jersey.server.ServerRuntime.process(ServerRuntime.java:316)
       at org.glassfish.jersey.server.ApplicationHandler.handle(ApplicationHandler.java:1084)
       at org.glassfish.jersey.servlet.WebComponent.serviceImpl(WebComponent.java:418)
       at org.glassfish.jersey.servlet.WebComponent.service(WebComponent.java:372)
       at org.glassfish.jersey.servlet.ServletContainer.service(ServletContainer.java:389)
       at org.glassfish.jersey.servlet.ServletContainer.service(ServletContainer.java:342)
       at org.glassfish.jersey.servlet.ServletContainer.service(ServletContainer.java:229)
       at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:231)
       at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166)
       at org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:52)
       at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193)
       at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166)
       at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:198)
       at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:96)
       at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:478)
       at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:140)
       at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:80)
       at org.apache.catalina.valves.AbstractAccessLogValve.invoke(AbstractAccessLogValve.java:624)
       at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:87)
       at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:342)
       at org.apache.coyote.http11.Http11Processor.service(Http11Processor.java:799)
       at org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:66)
       at org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:861)
       at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1455)
       at org.apache.tomcat.util.net.SocketProcessorBase.run(SocketProcessorBase.java:49)
       at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
       at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
       at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61)
       at java.lang.Thread.run(Thread.java:748)

    Basically the error says I have problem with audio codec, but when I tried to run the ffmpeg commandline directly, it reduces the bitrate just fine. Are we missing some setup in javacode ? Thank you.