
Recherche avancée
Autres articles (28)
-
La file d’attente de SPIPmotion
28 novembre 2010, parUne file d’attente stockée dans la base de donnée
Lors de son installation, SPIPmotion crée une nouvelle table dans la base de donnée intitulée spip_spipmotion_attentes.
Cette nouvelle table est constituée des champs suivants : id_spipmotion_attente, l’identifiant numérique unique de la tâche à traiter ; id_document, l’identifiant numérique du document original à encoder ; id_objet l’identifiant unique de l’objet auquel le document encodé devra être attaché automatiquement ; objet, le type d’objet auquel (...) -
Submit bugs and patches
13 avril 2011Unfortunately a software is never perfect.
If you think you have found a bug, report it using our ticket system. Please to help us to fix it by providing the following information : the browser you are using, including the exact version as precise an explanation as possible of the problem if possible, the steps taken resulting in the problem a link to the site / page in question
If you think you have solved the bug, fill in a ticket and attach to it a corrective patch.
You may also (...) -
Publier sur MédiaSpip
13 juin 2013Puis-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
Sur d’autres sites (4029)
-
parallel ffmpeg filter complex pipelines
3 septembre 2021, par Paul EppnerIs there a possibility to run ffmpeg filter_complex filter in parallel pipelines ?
On the page http://trac.ffmpeg.org/wiki/Creating%20multiple%20outputs you can find an example under the heading "One filtering instance per each output". However, the filters mentioned there (boxblur,negate,yadif) are executed one after the other, although they could also all be executed simultaneously. I have quite complex filters and therefore long delays when the filters are executed one after the other.


I hope there is another solution.
Cheers



A few hours later I realised that the delay was probably not due to the pipeline, but to the analysis of the imports. However, I then only use the video and audio of the 1st stream. nevertheless, the delay time is then enormously high. Are there any ideas on how I can prevent this delay ?


-i "rtmp://127.0.0.1:1935/$app/$name-de" \
 -i "rtmp://127.0.0.1:1935/$app/$name-en" \
 -i "rtmp://127.0.0.1:1935/$app/$name-fr" \
 -i "rtmp://127.0.0.1:1935/$app/$name-es" \
 -i "rtmp://127.0.0.1:1935/$app/$name-it" \
 -i "rtmp://127.0.0.1:1935/$app/$name-de" \
 -i "rtmp://127.0.0.1:1935/$app/$name-en" \
 -i "rtmp://127.0.0.1:1935/$app/$name-fr" \
 -i "rtmp://127.0.0.1:1935/$app/$name-es" \
 -i "rtmp://127.0.0.1:1935/$app/$name-it" \
 -i "rtmp://127.0.0.1:1935/$app/$name-de" \
 -i "rtmp://127.0.0.1:1935/$app/$name-en" \
 -i "rtmp://127.0.0.1:1935/$app/$name-fr" \
 -i "rtmp://127.0.0.1:1935/$app/$name-es" \
 -i "rtmp://127.0.0.1:1935/$app/$name-it" \
 -vsync -1 \
 -map 0:v -c:v:0 copy \
 -map 0:a \
 -c:a aac -ar 48000 \...```



-
avcodec/vc1 : fix overlap and loop filtering for Simple and Main profile
8 juin 2018, par Jerome Borsboomavcodec/vc1 : fix overlap and loop filtering for Simple and Main profile
Overlap filtering I and BI frames for Simple and Main profile is only
dependent on PQUANT. Restrict testing for CONDOVER and OVERFLAGS to
advanced profile. Change from mb_width to end_mb_x in ff_vc1_i_loop_filter
to avoid breaking the Microsoft Screen 2 decoder.Signed-off-by : Jerome Borsboom <jerome.borsboom@carpalis.nl>
-
ffmpeg using kotlin is not getting data from the STDIN
25 juin 2023, par user5285766An ordinary movie plays in the stream of the original source.
Using the example above I am trying to pass data from one process to another. Taking the output from the first and hearth to the input of the second. I see that in the output process, data comes from the first one via
process.inheritIO()
,

package some.processor

import org.slf4j.Logger
import org.slf4j.LoggerFactory


class StreamManager {
 private lateinit var inputProcessBuilder: ProcessBuilder
 private lateinit var outputStreamBuilder: ProcessBuilder
 private lateinit var inputProcess: Process
 private lateinit var outputProcess: Process

 companion object {
 val log: Logger = LoggerFactory.getLogger(StreamManager::class.java)
 }

 private fun getInputProcessBuilder(commandMessageDto: CommandMessageDto): ProcessBuilder {
 val command: List<string> = listOf(
 "ffmpeg",
 "-loglevel",
 "error",
 "-hide_banner",
 "-i",
 commandMessageDto.url,
 "-c",
 "copy",
 "-f",
 "mpegts",
 "-"
 )
 return ProcessBuilder(command)
 }

 private fun getOutputProcessBuilder(): ProcessBuilder {
 val command: List<string> = listOf(
 "ffmpeg",
 "-i",
 "pipe:0",
 "-f",
 "mpegts",
 "udp://192.168.1.68:8083?pkt_size=1316&overrun_nonfatal=1&fifo_size=50000000"
 )
 val process = ProcessBuilder(command)
 process.inheritIO()
 return process
 }

 fun start(commandMessageDto: CommandMessageDto) {
 inputProcessBuilder = getInputProcessBuilder(commandMessageDto = commandMessageDto)
 outputStreamBuilder = getOutputProcessBuilder()
 inputProcessBuilder.redirectOutput(outputStreamBuilder.redirectInput())
 inputProcess = inputProcessBuilder.start()
 outputProcess = outputStreamBuilder.start()
 }

 fun stop(commandMessageDto: CommandMessageDto) {
 try {
 inputProcess.destroy()
 } catch (e: UninitializedPropertyAccessException) {
 log.error(e.toString())
 }
 try {
 outputProcess.destroy()
 } catch (e: UninitializedPropertyAccessException) {
 log.error(e.toString())
 }
 log.debug("stop here")
 }
}

</string></string>


but when I try to connect with the command :


ffplay -i "udp://192.168.1.68:8083?pkt_size=1316&overrun_nonfatal=1&fifo_size=50000000"



then nothing happens. To put it simply, I'm trying to repeat the analogue of this
mechanism :


ffmpeg -hide_banner -i "udp://192.168.1.68:8082?pkt_size=1316&overrun_nonfatal=1&fifo_size=50000000" -c copy -f mpegts - | ffmpeg -i pipe:0 -f mpegts "udp://192.168.1.68:8083?pkt_size=1316&overrun_nonfatal=1&fifo_size=50000000" 



the usual forwarding of data further, but in the future I would also like to copy the data for further processing.


What am I doing wrong ? Can someone explain why it works like this and how to do it in the same way as I gave the command above ?