Recherche avancée

Médias (17)

Mot : - Tags -/wired

Autres articles (47)

  • Ecrire une actualité

    21 juin 2013, par

    Présentez les changements dans votre MédiaSPIP ou les actualités de vos projets sur votre MédiaSPIP grâce à la rubrique actualités.
    Dans le thème par défaut spipeo de MédiaSPIP, les actualités sont affichées en bas de la page principale sous les éditoriaux.
    Vous pouvez personnaliser le formulaire de création d’une actualité.
    Formulaire de création d’une actualité Dans le cas d’un document de type actualité, les champs proposés par défaut sont : Date de publication ( personnaliser la date de publication ) (...)

  • Publier sur MédiaSpip

    13 juin 2013

    Puis-je poster des contenus à partir d’une tablette Ipad ?
    Oui, si votre Médiaspip installé est à la version 0.2 ou supérieure. Contacter au besoin l’administrateur de votre MédiaSpip pour le savoir

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

Sur d’autres sites (8728)

  • MPEG-DASH - Multiplexed Representations Issue

    26 avril 2017, par Mike

    I’m trying to learn ffmpeg, MP4Box, and MPEG-DASH, but I’m running into an issue with the .mp4 I’m using. I’m using ffmpeg to demux the mp4 with this command :

    ffmpeg -i test.mp4 -c:v copy -g 72 -an video.mp4 -c:a copy audio.mp4

    Once the two files are created, I use MP4Box to segment the files for the dash player using this command :

    MP4Box -dash 4000 -frag 1000 -rap -segment-name segment_ output.mp4

    Which does create all the files I think I need. Then I point the player to the output_dash.mpd and nothing happens except a ton of messages in the console :

    [8] EME detected on this user agent! (ProtectionModel_21Jan2015)
    [11] Playback Initialized
    [21] [dash.js 2.3.0] MediaPlayer has been initialized
    [64] Parsing complete: ( xml2json: 3.42ms, objectiron: 2.61ms, total: 0.00603s)
    [65] Manifest has been refreshed at Wed Apr 12 2017 12:16:52 GMT-0600 (MDT)[1492021012.196]  
    [72] MediaSource attached to element.  Waiting on open...
    [77] MediaSource is open!
    [77] Duration successfully set to: 148.34
    [78] Added 0 inline events
    [78] No video data.
    [79] No audio data.
    [79] No text data.
    [79] No fragmentedText data.
    [79] No embeddedText data.
    [80] Multiplexed representations are intentionally not supported, as they are not compliant with the DASH-AVC/264 guidelines
    [81] No streams to play.

    Here is the MP4Box -info on the video I’m using :

    * Movie Info *
       Timescale 1000 - Duration 00:02:28.336
       Fragmented File no - 2 track(s)
       File suitable for progressive download (moov before mdat)
       File Brand mp42 - version 512
       Created: GMT Wed Feb  6 06:28:16 2036

    File has root IOD (9 bytes)
    Scene PL 0xff - Graphics PL 0xff - OD PL 0xff
    Visual PL: Not part of MPEG-4 Visual profiles (0xfe)
    Audio PL: Not part of MPEG-4 audio profiles (0xfe)
    No streams included in root OD

    iTunes Info:
       Name: Rogue One - A Star Wars Story
       Artist: Lucasfilm
       Genre: Trailer
       Created: 2016
       Encoder Software: HandBrake 0.10.2 2015060900
       Cover Art: JPEG File

    Track # 1 Info - TrackID 1 - TimeScale 90000 - Duration 00:02:28.335
    Media Info: Language "Undetermined" - Type "vide:avc1" - 3552 samples
    Visual Track layout: x=0 y=0 width=1920 height=816
    MPEG-4 Config: Visual Stream - ObjectTypeIndication 0x21
    AVC/H264 Video - Visual Size 1920 x 816
       AVC Info: 1 SPS - 1 PPS - Profile High @ Level 4.1
       NAL Unit length bits: 32
       Pixel Aspect Ratio 1:1 - Indicated track size 1920 x 816
    Self-synchronized

    Track # 2 Info - TrackID 2 - TimeScale 44100 - Duration 00:02:28.305
    Media Info: Language "English" - Type "soun:mp4a" - 6387 samples
    MPEG-4 Config: Audio Stream - ObjectTypeIndication 0x40
    MPEG-4 Audio MPEG-4 Audio AAC LC - 2 Channel(s) - SampleRate 44100
    Synchronized on stream 1
    Alternate Group ID 1

    I know I need to separate the video and audio and I think that’s where my issue is. The command I’m using probably isn’t doing the right thing.

    Is there a better command to demux my mp4 ?
    Is the MP4Box command I’m using best for segmenting the files ?
    If I use different files, will they always need to be demuxed ?

    One thing to mention, if I use the following commands everything works fine, but there is no audio because of the -an which means it’s only video :

    ffmpeg -i test.mp4 -c:v copy -g 72 -an output.mp4

    MP4Box -dash 4000 -frag 1000 -rap -segment-name segment_ output.mp4

    UPDATE

    I noticed that the video had no audio stream, but the audio had the video stream which is why I got the mux error. I thought that might be an issue so I ran this command to keep the unwanted streams out of the outputs :

    ffmpeg -i test.mp4 -c:v copy -g 72 -an video.mp4 -c:a copy -vn audio.mp4

    then I run :

    MP4Box -dash 4000 -frag 1000 -rap -segment-name segment_ video.mp4 audio.mp4

    now I no longer get the Multiplexed representations are intentionally not supported... message, but now I get :

    [122] Video Element Error: MEDIA_ERR_SRC_NOT_SUPPORTED
    [123] [object MediaError]
    [125] Schedule controller stopping for audio
    [126] Caught pending play exception - continuing (NotSupportedError: Failed to load because no supported source was found.)

    I tried playing the video and audio independently through Chrome and they both work, just not through the dash player. Ugh, this is painful to learn, but I feel like I’m making progress.

  • upload video on local host

    20 avril 2017, par chan jack

    when i upload video on local host have error #Unable to detect any supported library#

    @internal_information = InternalInformation.new(internal_information_params)

    if @internal_information.update(internal_information_params)

    respond_to do |format|

    this is my code below

    Model

    class InternalInformation < ApplicationRecord
     has_attached_file :video , styles: {
                                         :medium => { :geometry => "640x480", :format => 'mp4' },
                                         :thumb => { :geometry => "100x100#", :format => 'jpg', :time => 10 }
                                     }, :processors => [:transcoder]
     validates_attachment_content_type :video, content_type: /\Avideo\/.*\Z/
    end

    Controller

    def create
    @internal_information = InternalInformation.new(internal_information_params)

    respond_to do |format|
     if @internal_information.save
       format.html { redirect_to @internal_information, notice: 'Internal information was successfully created.' }
       format.json { render :show, status: :created, location: @internal_information }
     else
       format.html { render :new }
       format.json { render json: @internal_information.errors, status: :unprocessable_entity }
         end
       end
     end

     # PATCH/PUT /internal_informations/1
     # PATCH/PUT /internal_informations/1.json
     def update
    respond_to do |format|
     if @internal_information.update(internal_information_params)
       format.html { redirect_to @internal_information, notice: 'Internal information was successfully updated.' }
       format.json { render :show, status: :ok, location: @internal_information }
     else
       format.html { render :edit }
       format.json { render json: @internal_information.errors, status: :unprocessable_entity }
         end
       end
     end

    Show

    <%= javascript_include_tag 'swfobject' %>
    <p>&lt;%= notice %></p>

    <p>
     <strong>Title:</strong>
     &lt;%= @internal_information.Title %>
    </p>

    <p>
     &lt;%= video_player({:file => @internal_information.video.url(:medium), :image => @internal_information.video.url(:thumb)}) %>
    </p>

    &lt;%= link_to 'Edit', edit_internal_information_path(@internal_information) %> |
    &lt;%= link_to 'Back', internal_informations_path %>
  • 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 :
    `

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