Recherche avancée

Médias (1)

Mot : - Tags -/embed

Autres articles (60)

  • Encoding and processing into web-friendly formats

    13 avril 2011, par

    MediaSPIP automatically converts uploaded files to internet-compatible formats.
    Video files are encoded in MP4, Ogv and WebM (supported by HTML5) and MP4 (supported by Flash).
    Audio files are encoded in MP3 and Ogg (supported by HTML5) and MP3 (supported by Flash).
    Where possible, text is analyzed in order to retrieve the data needed for search engine detection, and then exported as a series of image files.
    All uploaded files are stored online in their original format, so you can (...)

  • Contribute to translation

    13 avril 2011

    You can help us to improve the language used in the software interface to make MediaSPIP more accessible and user-friendly. You can also translate the interface into any language that allows it to spread to new linguistic communities.
    To do this, we use the translation interface of SPIP where the all the language modules of MediaSPIP are available. Just subscribe to the mailing list and request further informantion on translation.
    MediaSPIP is currently available in French and English (...)

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

Sur d’autres sites (8535)

  • Video capturing in portrait mode but the orientation is wrong when played back with a media player

    17 octobre 2016, par Ahmed Mujtaba

    I’m trying to make a custom video app. The app captures a video using mediarecorder and uploads it to the website where it’s played on a html5 media player. The issue is that, when I capture the video in portrait mode, the playback video on the website and on vlc player have it’s orientation off by 90 degrees. I have tried various solution on the internet but none work for me.

    Here’s what my code for setting up the media recorder :

    private bool prepareMediaRecorder() {

           Android.Hardware.Camera.Parameters p = mCamera.GetParameters();
           List previewSizes = p.SupportedPreviewSizes.ToList();

           //mCamera = GetCameraInstance();
           //setCameraDisplayOrientation(Activity, cameraId, mCamera);

           mediaRecorder = new MediaRecorder();
           mCamera.Unlock();
           mediaRecorder.SetCamera(mCamera);

           mediaRecorder.SetAudioSource(AudioSource.Camcorder);
           mediaRecorder.SetVideoSource(VideoSource.Camera);
           mediaRecorder.SetOrientationHint(CameraS.result);

           if (currentapiVersion >= 16)
           {
               mediaRecorder.SetProfile(CamcorderProfile.Get(CamcorderQuality.High)); // requires API Level 8 or higher
           }
           else
           {
               mediaRecorder.SetProfile(CamcorderProfile.Get(CamcorderQuality.Q480p)); // requires API Level 8 or higher
           }

           //mediaRecorder.SetVideoFrameRate(30);
           mediaRecorder.SetOutputFile(localPath);
           mediaRecorder.SetMaxDuration(600000); // Set max duration 60 sec.
           mediaRecorder.SetMaxFileSize(50000000); // Set max file size 50M
           mediaRecorder.SetVideoSize(previewSizes[0].Width, previewSizes[0].Height);
           mediaRecorder.SetPreviewDisplay(mPreview.Holder.Surface);

           mediaRecorder.SetOrientationHint(getDisplayOrientationAngle());

           try
           {
               mediaRecorder.Prepare();
           }
           catch (IllegalStateException e)
           {
               releaseMediaRecorder();
               return false;
           }
           catch (Java.IO.IOException e)
           {
               releaseMediaRecorder();
               return false;
           }
           return true;

    }

    public int getDisplayOrientationAngle() {
           //Log.e("", "setDisplayOrientationAngle is call");
           int angle;


           var mDisplayRotation = Activity.WindowManager.DefaultDisplay.Rotation;
           // switch (MeasurementNativeActivity.DisplayRotation) {
           switch (mDisplayRotation)
           {
               case SurfaceOrientation.Rotation0: // This is display orientation
                   angle = 90; // This is camera orientation
                   break;
               case SurfaceOrientation.Rotation90:
                   angle = 0;
                   break;
               case SurfaceOrientation.Rotation180:
                   angle = 270;
                   break;
               case SurfaceOrientation.Rotation270:
                   angle = 180;
                   break;
               default:
                   angle = 90;
                   break;
           }
           //Log.v("", "media recorder displayRotation: " + mDisplayRotation);
           //Log.v("", "media recorder angle: " + angle);
           return angle;

    }

    The orientation of the video is fine when played on the phone app but on the website it’s not. I tried to use FFMPEG encoder to rotate the video clockwise. This seemed to fix the orientation of the video, however the aspect ratio of the video is all messed up. The video is stretched vertically and goes off screen.
    The command I’m using to rotate and encode the video is as follows :

    -y -i inputPath -vf scale=640:480,setsar=1,transpose=1 -strict experimental -r 25 -vcodec mpeg4 -b 1000k ab 48000 -ac 2 -ar 22050 destinationPath

    I will really appreciate if someone can help me fix either the orientation of the video or the aspect ration after encoding the video.

    Cheers !

    Edit.

    Here’s the readout of the input file :

    General
    Complete name                  : C:\Users\Ahmed\Desktop\9adcdb56-500e-4d3f-8fb2-ccf20c680422_yt.mp4
    Format                         : MPEG-4
    Format profile                 : Base Media
    Codec ID                       : isom
    File size                      : 6.30 MiB
    Duration                       : 12s 437ms
    Overall bit rate               : 4 251 Kbps
    Encoded date                   : UTC 2016-05-29 23:54:30
    Tagged date                    : UTC 2016-05-29 23:54:30

    Video
    ID                             : 1
    Format                         : AVC
    Format/Info                    : Advanced Video Codec
    Format profile                 : Baseline@L3.1
    Format settings, CABAC         : No
    Format settings, ReFrames      : 1 frame
    Format settings, GOP           : M=1, N=31
    Codec ID                       : avc1
    Codec ID/Info                  : Advanced Video Coding
    Duration                       : 12s 323ms
    Bit rate                       : 3 967 Kbps
    Width                          : 1 280 pixels
    Height                         : 720 pixels
    Display aspect ratio           : 16:9
    Rotation                       : 90°
    Frame rate mode                : Variable
    Frame rate                     : 29.700 fps
    Minimum frame rate             : 29.354 fps
    Maximum frame rate             : 30.040 fps
    Color space                    : YUV
    Chroma subsampling             : 4:2:0
    Bit depth                      : 8 bits
    Scan type                      : Progressive
    Bits/(Pixel*Frame)             : 0.145
    Stream size                    : 5.83 MiB (92%)
    Title                          : VideoHandle
    Language                       : English
    Encoded date                   : UTC 2016-05-29 23:54:30
    Tagged date                    : UTC 2016-05-29 23:54:30

    Audio
    ID                             : 2
    Format                         : AAC
    Format/Info                    : Advanced Audio Codec
    Format profile                 : LC
    Codec ID                       : 40
    Duration                       : 12s 437ms
    Source duration                : 12s 454ms
    Bit rate mode                  : Constant
    Bit rate                       : 128 Kbps
    Nominal bit rate               : 96.0 Kbps
    Channel(s)                     : 2 channels
    Channel positions              : Front: L R
    Sampling rate                  : 48.0 KHz
    Compression mode               : Lossy
    Stream size                    : 194 KiB (3%)
    Source stream size             : 194 KiB (3%)
    Title                          : SoundHandle
    Language                       : English
    Encoded date                   : UTC 2016-05-29 23:54:30
    Tagged date                    : UTC 2016-05-29 23:54:30
    mdhd_Duration                  : 12454
  • Dynamic subtitles by ffmpeg

    8 septembre 2019, par Saeron Meng

    I would like to add some commentary texts into my video but I do not know how to use ffmpeg to realize this. The comments are like screen bullets through the screen, appearing in the right margin, moving and scrolling, and disappearing from the left.

    My thought is to count the length of the comments and define speeds for them to move and I have already gotten the comments saved as an xml file. But even though I can transfer it into srt file, the tricky problem is, it is hard to write the speeds of the subtitles, or something like that, in an srt file, and apply them to ffmpeg commands or APIs. Here is an example of comments (xml file) :

    <chat timestamp="671.195">
       <ems utctime="1562584080" sender="Bill">
           <richtext></richtext>
       </ems>
    </chat>
    <chat timestamp="677.798">
       <ems utctime="1562584086" sender="Jack">
           <richtext></richtext>
       </ems>
    </chat>

    The final result is like this (I did not find an example in websites in English. In China, such moving subtitles are called "danmu" or "screen bullets"), these colorful characters can move horizontally from right to left :

    example

    1. I have searched some solutions on the Internet, most of which talk about how to write ass/srt files and add motionless subtitles. Like this :

    ffmpeg -i infile.mp4 -i infile.srt -c copy -c:s mov_text outfile.mp4

    3
    00:00:39,770 --> 00:00:41,880
    When I was lying there in the VA hospital ...

    4
    00:00:42,550 --> 00:00:44,690
    ... with a big hole blown through the middle of my life,

    5
    00:00:45,590 --> 00:00:48,120
    ... I started having these dreams of flying.

    But I need another kind of "subtitles" which can move.

    1. When it comes to scrolling subtitles, there are still some solutions : Scrolling from RIGHT to LEFT in ffmpeg / drawtext

    So my question is, how to combine the solutions above to arrange subtitles from top to bottom and let them move concerning the timestamps of the comments ?

  • ffmpeg : two videos side-by-side with audio1 lang=ger & audio2 lang=eng

    19 janvier 2023, par miridigital

    I have two videos from two GoPro cameras. Both videos are rendered via ffmpeg side-by-side into a single video (left and right) and the audio is currently combined/mixed into two channels (stereo). I can hear both camera audio channels at the same time.

    &#xA;

    Two channels stereo :

    &#xA;

    ffmpeg -i video1.mp4 -i video2.mp4 -filter_complex "[0:v][1:v]hstack=inputs=2[v]; [0:a][1:a]amerge[a]" -map "[v]" -map "[a]" -ac 2 side-by-side.mp4&#xA;

    &#xA;

    audio from both videos mixed into a single file with 2 channels - mediainfo

    &#xA;

    Now I want to switch between the two audio channels (cam1 or cam2) while I'm playing the side-by-side video.

    &#xA;

    My first try : With four channels (without -ac 2 parameter) :

    &#xA;

    ffmpeg -i video1.mp4 -i video2.mp4 -filter_complex "[0:v][1:v]hstack=inputs=2[v]; [0:a][1:a]amerge[a]" -map "[v]" -map "[a]" side-by-side.mp4&#xA;

    &#xA;

    audio from both videos mixed into a single file with 4 channels - mediainfo

    &#xA;

    But the most video players can't easily select the channels 1+2 or 3+4 while playing.

    &#xA;

    So I tried two languages :

    &#xA;

    ffmpeg -i video1.mp4 -i video2.mp4 -filter_complex "[0:v][1:v]hstack=inputs=2[v]; [0:a][1:a]amerge[a]" -map "[v]" -map "[a]" -metadata:s:a:0 language=ger -metadata:s:a:1 language=eng side-by-side.mp4&#xA;

    &#xA;

    audio from both videos mixed into a single file with 4 channels with languages - mediainfo

    &#xA;

    But that's wrong. I can only see german with 4 channels. How can I put channels 1+2 into german and channels 3+4 into english ? Afterwards I should be able to use the multi language feature from most video players to switch the audio between cameras.

    &#xA;

    Thank you,
    &#xA;Miriam

    &#xA;