Recherche avancée

Médias (0)

Mot : - Tags -/utilisateurs

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

Autres articles (85)

  • MediaSPIP v0.2

    21 juin 2013, par

    MediaSPIP 0.2 est la première version de MediaSPIP stable.
    Sa date de sortie officielle est le 21 juin 2013 et est annoncée ici.
    Le fichier zip ici présent contient uniquement les sources de MediaSPIP en version standalone.
    Comme pour la version précédente, il est nécessaire d’installer manuellement l’ensemble des dépendances logicielles sur le serveur.
    Si vous souhaitez utiliser cette archive pour une installation en mode ferme, il vous faudra également procéder à d’autres modifications (...)

  • Use, discuss, criticize

    13 avril 2011, par

    Talk to people directly involved in MediaSPIP’s development, or to people around you who could use MediaSPIP to share, enhance or develop their creative projects.
    The bigger the community, the more MediaSPIP’s potential will be explored and the faster the software will evolve.
    A discussion list is available for all exchanges between users.

  • MediaSPIP version 0.1 Beta

    16 avril 2011, par

    MediaSPIP 0.1 beta est la première version de MediaSPIP décrétée comme "utilisable".
    Le fichier zip ici présent contient uniquement les sources de MediaSPIP en version standalone.
    Pour avoir une installation fonctionnelle, il est nécessaire d’installer manuellement l’ensemble des dépendances logicielles sur le serveur.
    Si vous souhaitez utiliser cette archive pour une installation en mode ferme, il vous faudra également procéder à d’autres modifications (...)

Sur d’autres sites (15689)

  • HLS Playback Issues on Android with FFMPEG

    25 mai 2014, par Florian

    I am using the FFMPEG built of AppUnite with the latest patch for stagefright support in order to playback http live streams : https://review.appunite.com/#/c/1779/

    As the stream does not start at 0, I added the following code to avoid a black screen :

    struct Player {
      + int64_t video_start_time;
    }

    void player_get_video_duration(struct Player *player) {
    + player->video_start_time = 0;

    + for (i = 0; i < player->capture_streams_no; ++i) {
    +    AVStream *stream = player->input_streams[i];
    +       if (stream->start_time > 0) {
    +          player->video_start_time = av_rescale_q(
    +             stream->start_time, stream->time_base, AV_TIME_BASE_Q);
    +
    +          LOGI(3, "player_set_data_source stream[%d] start_time: %ld",
    +             i, player->video_start_time);
    +
    +           break;
    +       }
    +   }
    }

    enum WaitFuncRet player_wait_for_frame(
      struct Player *player, double time, int stream_no) {
    - int64_t current_time = av_gettime();
    + int64_t current_time = av_gettime() + player->video_start_time;
    }

    However, as soon as the sleep_time in player_wait_for_frame drops below 0, playback freezes and then hangs waiting for a frame that never arrives. The queues allocated by player_alloc_queues function seem being not big enough to hold the real-time stream pushed in between player_open_input and player_start_decoding_threads. Increasing the number of nodes in the queue does not resolve the issue however. The issue seems to be clearly in the player_wait_for_frame method but I am unable to find a solution.

    I spent quite a lot time trying to resolve this nasty issue, but without success so far. Any help really appreciated !!!

  • Spawned ffmpeg process in nodejs Transform stream with flow control doesn't process input stream

    30 septembre 2022, par user1832894

    I have implemented a node.js Transform stream class that spawns ffmpeg and streams out the transformed stream at a controlled realtime rate. Below is my _transform() method.

    


    this.rcvd += chunk.length
console.log('received bytes %d', this.rcvd)
const ready = this.ffmpeg.stdin.write(chunk, encoding, err => err
  ? cb(err)
  : ready
    ? cb
    : this.ffmpeg.stdin.once('drain', cb))


    


    I want to write to ffmpeg's stdin stream till it returns false, at which point I wait for the drain event to write more data.

    


    Concurrently, I have a timer that fires every 40 milliseconds that reads ffmpeg's stdout and pushes it to the Transform stream's output (the readable side). Code not complete, but the folllowing describes it well.

    


    const now = Date.now()
const bytesToTransmit = (now - this.lastTx) * 32

const buf = this.ffmpeg.stdout.read()

if (buf == null) return

if (buf.length <= bytesToTransmit) {
  this.push(buf)
  this.lastTx += buf.length * 32
  return
}

this.push(buf.slice(0, bytesToTransmit))
this.lastTx = now

// todo(handle pending buffer)
this.pending = buf.slice(bytesToTransmit)


    


    The issue I am facing is that the first write (of 65k bytes) returns false, and after that I never receive the drain event. FFMpeg doesn't start processing the data until certain amount of data (256k bytes in my case) has been written, and once I start waiting for the drain event, I never recover control.

    


    I've tried a few ffmpeg options like nobuffer but to no avail. What am I doing wrong ? Any ideas would be super helpful.

    


    Thanks !

    


  • Merge pull request #253 from zeroclipboard/origins-array-bug

    17 octobre 2013, par jonrohan
    Merge pull request #253 from zeroclipboard/origins-array-bug
    

    Array.push returns a number, not an array.