[FFmpeg-user] Using Jon Severinsson's PPA on Ubuntu 14.04, can't detach.
ecronik at gmail.com
Mon Mar 16 15:38:49 CET 2015
thanks for that! One problem is still consistent - when I reattach to that
window, how can I deattach again? The while loop always kicks me back into
the process - I can't end it with "q", neither can I deattach with "ctrl+a
and d" or "ctrl+c".
2015-03-16 8:05 GMT+01:00 Luke Davis <l1 at newanswertech.com>:
> On Mon, 16 Mar 2015, Tim Beyer wrote:
> I am running Jon Severinsson's PPA on Ubuntu 14.04 in a screened process -
>> it is a player that reads video files out of a folder, randomly. The whole
>> process goes through a while loop. In the screen session the switchting
>> between files works fine - but I can't detach with crtl+a and d or with q
>> it is starting the process again. When I try to detach afterwards with
>> ctrl+c from screen, it waits a while and kicks me back into the ffmpeg
>> process. If I just close the terminal, ffmpeg crashes when the next
>> file-change comes. Same, when I try starting the screen already detached,
>> or if I forward the process to dev/null and into a log.
> I'm not 100% sure what you want the end result to be, but I don't think
> your script does what you think it does.
> you're creating a series of screen sessions named "VOD". Each one of
> those sessions has a single window. You can't switch between them, because
> they exist sequentially.
> It sounds like you want a single screen session, with each video in a
> separate window so you can switch between them.
> You're doing the while loop, so that after all of the files are opened and
> you exit/detach the screen session, the whole thing starts over again in a
> new screen session.
> If that is what you want, this will likely work:
> while true
> # Start the screen (w/one shell window) but instantly detach it
> screen -dmS vod
> for file in $(ls * | shuf -n 1)
> # For each file, create a window in the running screen,
> # named with the filename, and running the ffmpeg command
> screen -S vod -X screen -h 0 -t "$file" ffmpeg -re -i
> "$file" \
> -acodec copy -vcodec copy -f flv ServerAddress
> # Delete the useless shell in the first screen window
> screen -S vod -p 0 -X kill
> # Attach to the screen for actual access of the running processes
> screen -r vod
> If that wasn't what you wanted, then enjoy my useless code.:)
> ffmpeg-user mailing list
> ffmpeg-user at ffmpeg.org
More information about the ffmpeg-user