Recherche avancée

Médias (91)

Autres articles (63)

  • Pas question de marché, de cloud etc...

    10 avril 2011

    Le vocabulaire utilisé sur ce site essaie d’éviter toute référence à la mode qui fleurit allègrement
    sur le web 2.0 et dans les entreprises qui en vivent.
    Vous êtes donc invité à bannir l’utilisation des termes "Brand", "Cloud", "Marché" etc...
    Notre motivation est avant tout de créer un outil simple, accessible à pour tout le monde, favorisant
    le partage de créations sur Internet et permettant aux auteurs de garder une autonomie optimale.
    Aucun "contrat Gold ou Premium" n’est donc prévu, aucun (...)

  • Dépôt de média et thèmes par FTP

    31 mai 2013, par

    L’outil MédiaSPIP traite aussi les média transférés par la voie FTP. Si vous préférez déposer par cette voie, récupérez les identifiants d’accès vers votre site MédiaSPIP et utilisez votre client FTP favori.
    Vous trouverez dès le départ les dossiers suivants dans votre espace FTP : config/ : dossier de configuration du site IMG/ : dossier des média déjà traités et en ligne sur le site local/ : répertoire cache du site web themes/ : les thèmes ou les feuilles de style personnalisées tmp/ : dossier de travail (...)

  • Activation de l’inscription des visiteurs

    12 avril 2011, par

    Il est également possible d’activer l’inscription des visiteurs ce qui permettra à tout un chacun d’ouvrir soit même un compte sur le canal en question dans le cadre de projets ouverts par exemple.
    Pour ce faire, il suffit d’aller dans l’espace de configuration du site en choisissant le sous menus "Gestion des utilisateurs". Le premier formulaire visible correspond à cette fonctionnalité.
    Par défaut, MediaSPIP a créé lors de son initialisation un élément de menu dans le menu du haut de la page menant (...)

Sur d’autres sites (5937)

  • Revision 34625 : un lien dans un lien, ca cree des liens

    21 janvier 2010, par cedric@… — Log

    un lien dans un lien, ca cree des liens

  • 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
  • FFMPEG HLS Multiple audio languages with var_stream_map - EXT-X-MEDIA:TYPE doesn't contain LANGUAGE

    30 janvier 2020, par Moonsurfer_1

    I have a question involving multiple audio languages on HLS with FFMPEG.

    I’m currently using the following command to mux a transport stream with multiple audio languages into an HLS stream with a master playlist :

    ffmpeg -re -i $INPUT_URL -map 0:v -c:v copy -map 0:a -c:a copy -f hls -hls_time 6 -hls_list_size 10 -hls_flags delete_segments+program_date_time -hls_segment_filename "$FULL_OUTPUT_FOLDER/stream_%v_%d.ts" -var_stream_map "v:0,agroup:groupname a:0,agroup:groupname a:1,agroup:groupname a:2,agroup:groupname a:3,agroup:groupname" -master_pl_name master.m3u8 $FULL_OUTPUT_FOLDER/stream-%v.m3u8

    The output of this command looks like this :

    ffmpeg version 4.0.3-1~16.04.york0 Copyright (c) 2000-2018 the FFmpeg developers
     built with gcc 5.4.0 (Ubuntu 5.4.0-6ubuntu1~16.04.10) 20160609
     configuration: --prefix=/usr --extra-version='1~16.04.york0' --toolchain=hardened --libdir=/usr/lib/x86_64-linux-gnu --incdir=/usr/include/x86_64-linux-gnu --arch=amd64 --enable-gpl --disable-stripping --enable-avresample --disable-filter=resample --enable-avisynth --enable-gnutls --enable-ladspa --enable-libaom --enable-libass --enable-libbluray --enable-libbs2b --enable-libcaca --enable-libcdio --enable-libcodec2 --enable-libflite --enable-libfontconfig --enable-libfreetype --enable-libfribidi --enable-libgme --enable-libgsm --enable-libjack --enable-libmp3lame --enable-libmysofa --enable-libopenjpeg --enable-libopenmpt --enable-libopus --enable-libpulse --enable-librsvg --enable-librubberband --enable-libshine --enable-libsnappy --enable-libsoxr --enable-libspeex --enable-libssh --enable-libtheora --enable-libtwolame --enable-libvidstab --enable-libvorbis --enable-libvpx --enable-libwavpack --enable-libwebp --enable-libx265 --enable-libxml2 --enable-libxvid --enable-libzmq --enable-libzvbi --enable-lv2 --enable-omx --enable-openal --enable-opengl --enable-sdl2 --enable-libdc1394 --enable-libdrm --enable-libiec61883 --enable-chromaprint --enable-frei0r --enable-libopencv --enable-libx264 --enable-shared
     libavutil      56. 14.100 / 56. 14.100
     libavcodec     58. 18.100 / 58. 18.100
     libavformat    58. 12.100 / 58. 12.100
     libavdevice    58.  3.100 / 58.  3.100
     libavfilter     7. 16.100 /  7. 16.100
     libavresample   4.  0.  0 /  4.  0.  0
     libswscale      5.  1.100 /  5.  1.100
     libswresample   3.  1.100 /  3.  1.100
     libpostproc    55.  1.100 / 55.  1.100
    [mpegts @ 0x55c8cb7fee40] start time for stream 5 is not set in estimate_timings_from_pts
    [mpegts @ 0x55c8cb7fee40] start time for stream 6 is not set in estimate_timings_from_pts                                                                                          
    [mpegts @ 0x55c8cb7fee40] start time for stream 7 is not set in estimate_timings_from_pts                                                                                          
    Input #0, mpegts, from '/home/user/Videos/output/example.ts':
     Duration: 00:37:50.26, start: 1.498667, bitrate: 1257 kb/s
     Program 1
       Metadata:
         service_name    : example
         service_provider: FFmpeg
       Stream #0:0[0x100]: Video: h264 (High) ([27][0][0][0] / 0x001B), yuv420p(progressive), 696x572 [SAR 64:45 DAR 3712:2145], 25 fps, 25 tbr, 90k tbn, 50 tbc
       Stream #0:1[0x101](eng): Audio: aac (LC) ([15][0][0][0] / 0x000F), 48000 Hz, stereo, fltp, 159 kb/s
       Stream #0:2[0x102](fra): Audio: aac (LC) ([15][0][0][0] / 0x000F), 48000 Hz, stereo, fltp, 126 kb/s
       Stream #0:3[0x103](ita): Audio: aac (LC) ([15][0][0][0] / 0x000F), 48000 Hz, stereo, fltp, 132 kb/s
       Stream #0:4[0x104](eng): Audio: aac (LC) ([15][0][0][0] / 0x000F), 48000 Hz, stereo, fltp, 132 kb/s
       Stream #0:5[0x105](eng): Subtitle: dvb_subtitle ([6][0][0][0] / 0x0006)
       Stream #0:6[0x106](fra): Subtitle: dvb_subtitle ([6][0][0][0] / 0x0006)
       Stream #0:7[0x107](deu): Subtitle: dvb_subtitle ([6][0][0][0] / 0x0006)
    [hls @ 0x55c8cb834980] Opening '/var/www/html/live/stream_0_0.ts' for writing
    [hls @ 0x55c8cb834980] Opening '/var/www/html/live/stream_1_0.ts' for writing
    [hls @ 0x55c8cb834980] Opening '/var/www/html/live/stream_2_0.ts' for writing
    [hls @ 0x55c8cb834980] Opening '/var/www/html/live/stream_3_0.ts' for writing
    [hls @ 0x55c8cb834980] Opening '/var/www/html/live/stream_4_0.ts' for writing
    [mpegts @ 0x55c8cb880380] frame size not set
    [mpegts @ 0x55c8cb882040] frame size not set                                                                                                                                      
    [mpegts @ 0x55c8cb8837c0] frame size not set                                                                                                                                      
    [mpegts @ 0x55c8cb885280] frame size not set                                                                                                                                      
    Output #0, hls, to '/var/www/html/live/stream-%v.m3u8':
     Metadata:
       encoder         : Lavf58.12.100
       Stream #0:0: Video: h264 (High) ([27][0][0][0] / 0x001B), yuv420p(progressive), 696x572 [SAR 64:45 DAR 3712:2145], q=2-31, 25 fps, 25 tbr, 90k tbn, 25 tbc
       Stream #0:1(eng): Audio: aac (LC) ([15][0][0][0] / 0x000F), 48000 Hz, stereo, fltp, 159 kb/s
       Stream #0:2(fra): Audio: aac (LC) ([15][0][0][0] / 0x000F), 48000 Hz, stereo, fltp, 126 kb/s
       Stream #0:3(ita): Audio: aac (LC) ([15][0][0][0] / 0x000F), 48000 Hz, stereo, fltp, 132 kb/s
       Stream #0:4(eng): Audio: aac (LC) ([15][0][0][0] / 0x000F), 48000 Hz, stereo, fltp, 132 kb/s
    Stream mapping:
     Stream #0:0 -> #0:0 (copy)
     Stream #0:1 -> #0:1 (copy)
     Stream #0:2 -> #0:2 (copy)
     Stream #0:3 -> #0:3 (copy)
     Stream #0:4 -> #0:4 (copy)
    Press [q] to stop, [?] for help
    [hls @ 0x55c8cb834980] Opening '/var/www/html/live/stream_1_1.ts' for writing    
    [hls @ 0x55c8cb834980] Opening '/var/www/html/live/stream-1.m3u8.tmp' for writing
    [hls @ 0x55c8cb834980] Opening '/var/www/html/live/stream_2_1.ts' for writing
    [hls @ 0x55c8cb834980] Opening '/var/www/html/live/stream-2.m3u8.tmp' for writing
    [hls @ 0x55c8cb834980] Opening '/var/www/html/live/stream_3_1.ts' for writing
    [hls @ 0x55c8cb834980] Opening '/var/www/html/live/stream-3.m3u8.tmp' for writing
    [hls @ 0x55c8cb834980] Opening '/var/www/html/live/stream_4_1.ts' for writing
    [hls @ 0x55c8cb834980] Opening '/var/www/html/live/stream-4.m3u8.tmp' for writing
    [hls @ 0x55c8cb834980] Opening '/var/www/html/live/stream_1_2.ts' for writing  
    [hls @ 0x55c8cb834980] Opening '/var/www/html/live/stream-1.m3u8.tmp' for writing
    [hls @ 0x55c8cb834980] Opening '/var/www/html/live/stream_2_2.ts' for writing
    [hls @ 0x55c8cb834980] Opening '/var/www/html/live/stream-2.m3u8.tmp' for writing
    [hls @ 0x55c8cb834980] Opening '/var/www/html/live/stream_3_2.ts' for writing
    [hls @ 0x55c8cb834980] Opening '/var/www/html/live/stream-3.m3u8.tmp' for writing
    [hls @ 0x55c8cb834980] Opening '/var/www/html/live/stream_4_2.ts' for writing
    [hls @ 0x55c8cb834980] Opening '/var/www/html/live/stream-4.m3u8.tmp' for writing
    [hls @ 0x55c8cb834980] Opening '/var/www/html/live/stream_0_1.ts' for writing  
    [hls @ 0x55c8cb834980] Opening '/var/www/html/live/stream-0.m3u8.tmp' for writing
    [hls @ 0x55c8cb834980] Opening '/var/www/html/live/master.m3u8' for writing
    [hls @ 0x55c8cb834980] Opening '/var/www/html/live/stream_1_3.ts' for writing  
    [hls @ 0x55c8cb834980] Opening '/var/www/html/live/stream-1.m3u8.tmp' for writing

    The master playlist that’s being output by this command looks like this :

    #EXTM3U
    #EXT-X-VERSION:3
    #EXT-X-MEDIA:TYPE=AUDIO,GROUP-ID="group_groupname",NAME="audio_0",DEFAULT=YES,URI="stream-1.m3u8"
    #EXT-X-MEDIA:TYPE=AUDIO,GROUP-ID="group_groupname",NAME="audio_0",DEFAULT=YES,URI="stream-2.m3u8"
    #EXT-X-MEDIA:TYPE=AUDIO,GROUP-ID="group_groupname",NAME="audio_0",DEFAULT=YES,URI="stream-3.m3u8"
    #EXT-X-MEDIA:TYPE=AUDIO,GROUP-ID="group_groupname",NAME="audio_0",DEFAULT=YES,URI="stream-4.m3u8"
    #EXT-X-STREAM-INF:BANDWIDTH=174900,RESOLUTION=696x572,AUDIO="group_groupname"
    stream-0.m3u8

    #EXT-X-STREAM-INF:BANDWIDTH=174900,CODECS="mp4a.40.2",AUDIO="group_groupname"
    stream-1.m3u8

    #EXT-X-STREAM-INF:BANDWIDTH=174900,CODECS="mp4a.40.2",AUDIO="group_groupname"
    stream-2.m3u8

    #EXT-X-STREAM-INF:BANDWIDTH=174900,CODECS="mp4a.40.2",AUDIO="group_groupname"
    stream-3.m3u8

    #EXT-X-STREAM-INF:BANDWIDTH=174900,CODECS="mp4a.40.2",AUDIO="group_groupname"
    stream-4.m3u8

    While this does seem to work with VLC, I need the EXT-X-MEDIA:TYPE tag to contain the LANGUAGE property. (the player I’m working with uses it to parse the audio tracks’ language) I can’t figure out how to do that based on the documentation I’ve found.

    Could anyone help me with this ?

    Thanks !