The good news is that all the required pieces appear to exist; the bad news is that no one has yet (to my knowledge) glued them together to make a functional solution. Here’s someone who has gotten very close:
https://github.com/szatmary/libcaption/issues/55#issuecomment-525688953 "I would like to share some of my findings regarding the 'broken' output from flv+srt when you use pipe eg '-' instead of file. As a TS my goal is also to inject CC in the livestream. I only use Gstreamer instead of ffmpeg. I was able to generate input data with gstreamer(h264 video wraped in flv) pass it to flv+srt and save to a file successfully. gst-launch-1.0 videotestsrc ! ...etc ... ! flvmux ! fdsink | flv+srt - mysrtfile.srt output_with_cc.flv The problem was when I was trying to pass output from flv+srt further to the next process (ffmpeg or gstreamer) for re-sending the result data to streaming server. I was able to capture this (broken) output to a file and compare it with working output created by flv+srt eg 'output_with_cc.flv' and there where a bunch of added lines with 'Matches: 2 Start pts: 4.271000' etc. Those are produced by vtt.c (line 164 and 168) uncommenting this lines has helped to resolve this issue for now. I assume this lines should not be printed when using pipe and it's bug." > On Nov 20, 2019, at 2:16 PM, Verachten Bruno <gount...@gmail.com> wrote: > > That's a very interesting subject (to me at least). > I would like to embed automatic (or human generated, depending on the > budget) subtitles to help hearing-impaired people grab most of the > talk in our conference. > I am producing H.264 and sending it (for the time being) to YouTube, > so your request is not far from my needs. > I will follow this subject with great attention. > Thanks. > > On Wed, Nov 20, 2019 at 5:20 PM Michael Shaffer <mikeshaf...@gmail.com> wrote: >> >> I noticed your Youtube streams only last a day or so. I have a Python >> script I made that keeps the ffmpeg process sending to Youtube. I have 5 IP >> cameras going to youtube and they have been going about 9 months without >> the stream ending. Anyways, if you want I could show you how the script >> works. You would just have to change the stream keys and the bitrate that >> each camera uses, so it knows when to restart the stream. >> >> Michael >> >> On Wed, Nov 20, 2019 at 12:17 AM Steven Kan <ste...@kan.org> wrote: >> >>> First time poster, so please be kind if I ask anything stupid! >>> >>> I have a live BeeCam feed on YouTube: >>> >>> https://www.youtube.com/channel/UCE0jx2Z6qbc5Co8x8Kyisag/live < >>> https://www.youtube.com/channel/UCE0jx2Z6qbc5Co8x8Kyisag/live> >>> >>> using YouTube’s “Stream Now” feature, which is distinct from a streaming >>> “event” because I don’t have to schedule it. Whenever I’m pushing video to >>> YouTube, the channel goes live. >>> >>> The stream is supplied by a Raspberry Pi running as an ffmpeg “relay >>> server,” e.g. it’s not doing any transcoding; it’s just repacking an RTSP >>> stream from an off-the-shelf camera: >>> >>> ./ffmpeg -re -thread_queue_size 512 -rtsp_transport tcp -i "rtsp:// >>> anonymous:password@192.168.1.11:554" -f concat -safe 0 -i playlist.txt >>> -vcodec copy -acodec copy -t 01:47:02 -f flv "rtmp:// >>> a.rtmp.youtube.com/live2/my-youtube-streaming-key” >>> >>> The -t and playlist.txt are because my camera lacks and audio feed, and YT >>> requires an audio stream, so I have a collection of royalty-free mp3s in >>> the playlist, and I’m wrapping this command in a loop. >>> >>> When I run this on my RPi 2, CPU utilization for ffmpeg is <<<<10%, which >>> is what I want, because I will have up to 3 instances of ffmpeg pushing 3 >>> camera streams to 3 YT channels during honey bee swarm season in Spring. >>> >>> What I want to do is add some captions to the video as soft subtitles, >>> e.g. my location, the present temperature, and the weather forecast. I >>> don’t have enough CPU on the Pi to burn these into the video stream. >>> >>> Is this possible in ffmpeg and with YouTube’s “stream now” feature? >>> >>> I can get ffmpeg to put a soft subtitle into a local .mkv file: >>> >>> ./ffmpeg -i video.mp4" -i SubtitleTest.srt -acodec copy -scodec copy >>> out.mkv >>> >>> but I changing the output to .m4v, mp4, or .flv results in errors such as: >>> >>> Subtitle codec 'ass' for stream 2 is not compatible with FLV >>> >>> and pushing mkv to YouTube via: >>> >>> ./ffmpeg -i video.mp4" -acodec copy -f mkv "rtmp:// >>> a.rtmp.youtube.com/live2/my-youtube-streaming-key” >>> >>> returns: >>> >>> Requested output format 'mkv' is not a suitable output format >>> rtmp://a.rtmp.youtube.com/live2/my-youtube-streaming-key <rtmp:// >>> a.rtmp.youtube.com/live2/my-youtube-streaming-key> >>> >>> Am I doing this fundamentally wrong? Or is this just not possible? If it’s >>> possible I will continue reading documentation until I get it working!!! >>> >>> Thanks! >>> >>> _______________________________________________ >>> ffmpeg-user mailing list >>> ffmpeg-user@ffmpeg.org >>> https://ffmpeg.org/mailman/listinfo/ffmpeg-user >>> >>> To unsubscribe, visit link above, or email >>> ffmpeg-user-requ...@ffmpeg.org with subject "unsubscribe". >> _______________________________________________ >> ffmpeg-user mailing list >> ffmpeg-user@ffmpeg.org >> https://ffmpeg.org/mailman/listinfo/ffmpeg-user >> >> To unsubscribe, visit link above, or email >> ffmpeg-user-requ...@ffmpeg.org with subject "unsubscribe". > > > > -- > Bruno Verachten > _______________________________________________ > ffmpeg-user mailing list > ffmpeg-user@ffmpeg.org > https://ffmpeg.org/mailman/listinfo/ffmpeg-user > > To unsubscribe, visit link above, or email > ffmpeg-user-requ...@ffmpeg.org with subject "unsubscribe". _______________________________________________ ffmpeg-user mailing list ffmpeg-user@ffmpeg.org https://ffmpeg.org/mailman/listinfo/ffmpeg-user To unsubscribe, visit link above, or email ffmpeg-user-requ...@ffmpeg.org with subject "unsubscribe".
