Recherche avancée

Médias (1)

Mot : - Tags -/artwork

Autres articles (89)

  • Contribute to a better visual interface

    13 avril 2011

    MediaSPIP is based on a system of themes and templates. Templates define the placement of information on the page, and can be adapted to a wide range of uses. Themes define the overall graphic appearance of the site.
    Anyone can submit a new graphic theme or template and make it available to the MediaSPIP community.

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

  • ANNEXE : Les plugins utilisés spécifiquement pour la ferme

    5 mars 2010, par

    Le site central/maître de la ferme a besoin d’utiliser plusieurs plugins supplémentaires vis à vis des canaux pour son bon fonctionnement. le plugin Gestion de la mutualisation ; le plugin inscription3 pour gérer les inscriptions et les demandes de création d’instance de mutualisation dès l’inscription des utilisateurs ; le plugin verifier qui fournit une API de vérification des champs (utilisé par inscription3) ; le plugin champs extras v2 nécessité par inscription3 (...)

Sur d’autres sites (3747)

  • ffmpeg stream encoding out produce a stream shows different program on each start

    15 octobre 2018, par Ryan Philip

    I am using ffmpeg for almost one year, my stream recently started behaving badly.

    The lines on ffmpeg screen started running crazy fast when restreaming it, causing more CPU (with no encoding). I have mapped the stream to select only one stream. But the problem is even with mapping I am getting different program each time when it is played.

    Also each program it is playing for less than a minute. There is no specific error message showing on ffmpeg screen. Only the output is behaving badly.

    I even tried ffmpeg version 3.3, 3.4 and 4.0 with same results.

    It has so many resolution streams, so i selected only 33 (video) and 34 (audio), the ones with highest resolution.

    ffmpeg -i "http://insourceip/stream.m3u8" -err_detect explode  -c copy -map 0:33? -map 0:34?  -hls_time 10 -hls_list_size 6 -hls_wrap 10 -start_number 1 out/music.m3u8

    Please help me with this.

    Below is the output : the one after (No longer receiving playlist 8) start running crazy when started.

    Program 11
       Metadata:
         variant_bitrate : 1088000
       Stream #0:33: Video: h264 (Constrained Baseline) ([27][0][0][0] / 0x001B), yuv420p, 640x480 [SAR 12:11 DAR 16:11], 25 fps, 25 tbr, 90k tbn, 50 tbc
       Metadata:
         variant_bitrate : 1088000
       Stream #0:34: Audio: aac (LC) ([15][0][0][0] / 0x000F), 32000 Hz, stereo, fltp
       Metadata:
         variant_bitrate : 1088000
       Stream #0:35: Data: timed_id3 (ID3  / 0x20334449)
       Metadata:
         variant_bitrate : 1088000
    [hls @ 0x7a64120] Opening '/music1.ts' for writing
    Output #0, hls, to '/music.m3u8':
     Metadata:
       encoder         : Lavf57.71.100
       Stream #0:0: Video: h264 (Constrained Baseline) ([27][0][0][0] / 0x001B), yuv420p, 640x480 [SAR 12:11 DAR 16:11], q=2-31, 25 fps, 25 tbr, 90k tbn, 25 tbc
       Metadata:
         variant_bitrate : 1088000
       Stream #0:1: Audio: aac (LC) ([15][0][0][0] / 0x000F), 32000 Hz, stereo, fltp
       Metadata:
         variant_bitrate : 1088000
       Stream #0:2: Data: timed_id3 (ID3  / 0x20334449)
       Metadata:
         variant_bitrate : 1088000
    Stream mapping:
     Stream #0:33 -> #0:0 (copy)
     Stream #0:34 -> #0:1 (copy)
     Stream #0:35 -> #0:2 (copy)
    Press [q] to stop, [?] for help
    [hls,applehttp @ 0x3d57120] No longer receiving playlist 10
    [hls,applehttp @ 0x3d57120] No longer receiving playlist 1
    [hls,applehttp @ 0x3d57120] No longer receiving playlist 3
    [hls,applehttp @ 0x3d57120] No longer receiving playlist 5
    [hls,applehttp @ 0x3d57120] No longer receiving playlist 7
    [hls,applehttp @ 0x3d57120] No longer receiving playlist 9
    [hls,applehttp @ 0x3d57120] No longer receiving playlist 0
    [hls,applehttp @ 0x3d57120] No longer receiving playlist 2
    [hls,applehttp @ 0x3d57120] No longer receiving playlist 4
    [hls,applehttp @ 0x3d57120] No longer receiving playlist 6
    [hls,applehttp @ 0x3d57120] No longer receiving playlist 8
    ***[hls,applehttp @ 0x3d57120] Opening 'FORMATED/i/MUSIC_1@13394/segment153957897_1_av-b.ts' for reading
    [hls,applehttp @ 0x3d57120] Opening 'FORMATED/i/MUSIC_1@13394/segment153957898_1_av-b.ts' for reading
    [hls @ 0x7a64120] Opening '/music2.ts' for writing
    [hls @ 0x7a64120] Opening '/music.m3u8.tmp' for writing
    [hls,applehttp @ 0x3d57120] Opening 'FORMATED/i/MUSIC_1@13394/segment153957899_1_av-b.ts' for reading
    [hls @ 0x7a64120] Opening '/music3.ts' for writing***
  • Playback of FFMPEG Audio Using NAudio Has Lots of Noise

    28 août 2018, par Hrethric

    I have a video that I’m trying to play back using the FFMPEG framework, and NAudio to playback the audio frames. The video plays back just fine, but when I play back the audio using a BufferedWaveProvider while the underlying audio sounds correct, it has a ton of static/noise. What’s important to note in the attached code is when the events fire off from the managed C++ class, a C# class receives the event and then grabs the latest relevant AVFrame data. This works flawlessly for video, but like I said, when I try to play back the audio I have a bunch of noise. For now I’ve hardcoded the NAudio WaveFormat settings, but they should match the video’s audio.

       ///////////////////////// C# /////////////////////////////

       // Gets the size of the data from the audio AVFrame (audioFrame->linesize[0])
       int size = _Decoder.GetAVAudioFrameSize();

       if (!once)
       {
           managedArray = new byte[size];
           once = true;
       }

       // Gets the data array from the audio AVFrame
       IntPtr data = _Decoder.GetAVAudioFrameData();

       Marshal.Copy(data, managedArray, 0, size);

       if (_waveProvider == null)
       {
           _waveProvider = new BufferedWaveProvider(new WaveFormat(44100, 16, 2));
           _waveOut.NumberOfBuffers = 2;
           _waveOut.DesiredLatency = 300;
           _waveOut.Init(_waveProvider);
           _waveOut.Play();
       }

       _waveProvider.AddSamples(managedArray, 0, size);


       //////////////////////// Managed C++ /////////////////////////
       while (_shouldRead)
       {
           // if we're not initialized, sleep
           if (!_initialized || !_FFMpegObject->AVFormatContextReady())
           {
               Thread::Sleep(READ_INIT_WAIT_TIME);
           }
           else if (_sequentialFailedReadCount > MAX_SEQUENTIAL_READ_FAILS)
           {
               // we've failed a lot and probably lost the stream, try to reconnect.
               _sequentialFailedReadCount = 0;
               _initialized = false;
               StartInitThread();
               Thread::Sleep(READ_INIT_WAIT_TIME << 1);
           }
           else // otherwise, try reading one AV packet
           {
               if (_FFMpegObject->AVReadFrame())
               {
                   if (_FFMpegObject->GetAVPacketStreamIndex() == _videoStreamIndex)
                   {
                       _sequentialFailedReadCount = 0;

                       // decode the video packet
                       _frameLock->WaitOne();
                       frameFinished = _FFMpegObject->AVCodecDecodeVideo2();
                       _frameLock->ReleaseMutex();

                       if (frameFinished)
                       {
                           _framesDecoded++;

                           if (!_isPaused) // If paused and AFAP playback, just don't call the callback
                           {
                               FrameFinished(this, EventArgs::Empty);

                               Thread::Sleep((int)(1000 / (GetFrameRate() * _speed)));
                           }
                       }
                   }
                   else if (_FFMpegObject->GetAVPacketStreamIndex() == _audioStreamIndex)
                   {
                       // decode the audio packet.
                       _frameLock->WaitOne();
                       audioFrameFinished = _FFMpegObject->AVCodecDecodeAudio4();
                       _frameLock->ReleaseMutex();

                       if (audioFrameFinished)
                       {
                           if (!_isPaused) // If paused and AFAP playback, just don't call the callback
                           {
                               // Fire the event - leaving it up to video to do the sleeps -- not sure if that will work or not
                               AudioFrameFinished(this, EventArgs::Empty);
                           }
                       }
                   }

                   _FFMpegObject->AVFreeFramePacket();

               }
               else // failed to read an AV packet
               {
                   _sequentialFailedReadCount++;
                   _failedReadCount++;
                   Thread::Sleep(READ_FAILED_WAIT_TIME);
               }
           }
       }
  • MPD MPEG-DASH - Shows only one bitrate

    13 août 2018, par Justin Rec

    Help. I wont show bitrate.
    player.getBitrateInfoListFor("video") ;
    Shows only one bitrate - 454948

    manifest.mpd generated by GPAC

    <period duration="PT0H21M48.338S">
     <adaptationset segmentalignment="true" group="1" maxwidth="270" maxheight="480" maxframerate="2070000/93437" par="270:480" lang="und">
      <representation mimetype="video/mp4" codecs="avc3.640015" width="270" height="480" framerate="2070000/93437" sar="1:1" startwithsap="1" bandwidth="454948">
       <segmenttemplate media="480_bbb/segment__track1_$Number$.m4s" timescale="2070000" startnumber="1" duration="8280000" initialization="480_bbb/segment__track1_init.mp4"></segmenttemplate>
      </representation>
     </adaptationset>
     <adaptationset segmentalignment="true" group="1" maxwidth="202" maxheight="360" maxframerate="2070000/93437" par="202:360" lang="und">
      <representation mimetype="video/mp4" codecs="avc3.64000D" width="202" height="360" framerate="2070000/93437" sar="1:1" startwithsap="1" bandwidth="281508">
       <segmenttemplate media="360_bbb/segment__track1_$Number$.m4s" timescale="2070000" startnumber="1" duration="8280000" initialization="360_bbb/segment__track1_init.mp4"></segmenttemplate>
      </representation>
     </adaptationset>
     <adaptationset segmentalignment="true" group="1" maxwidth="134" maxheight="240" maxframerate="2070000/93437" par="134:240" lang="und">
      <representation mimetype="video/mp4" codecs="avc3.64000B" width="134" height="240" framerate="2070000/93437" sar="1:1" startwithsap="1" bandwidth="182832">
       <segmenttemplate media="240_bbb/segment__track1_$Number$.m4s" timescale="2070000" startnumber="1" duration="8280000" initialization="240_bbb/segment__track1_init.mp4"></segmenttemplate>
      </representation>
     </adaptationset>
     <adaptationset segmentalignment="true" group="1" maxwidth="80" maxheight="144" maxframerate="2070000/93437" par="80:144" lang="und">
      <representation mimetype="video/mp4" codecs="avc3.640009" width="80" height="144" framerate="2070000/93437" sar="1:1" startwithsap="1" bandwidth="99667">
       <segmenttemplate media="144_bbb/segment__track1_$Number$.m4s" timescale="2070000" startnumber="1" duration="8280000" initialization="144_bbb/segment__track1_init.mp4"></segmenttemplate>
      </representation>
     </adaptationset>
     <adaptationset segmentalignment="true" lang="und">
      <representation mimetype="audio/mp4" codecs="mp4a.40.2" startwithsap="1" bandwidth="66056">
       <audiochannelconfiguration schemeiduri="urn:mpeg:dash:23003:3:audio_channel_configuration:2011" value="1"></audiochannelconfiguration>
       <segmenttemplate media="audio_bbb/segment__track2_$Number$.m4s" timescale="48000" startnumber="1" duration="192000" initialization="audio_bbb/segment__track2_init.mp4"></segmenttemplate>
      </representation>
     </adaptationset>
    </period>

    player.getBitrateInfoListFor("video") ;
    Shows only one bitrate - 454948