[FFmpeg-user] what program to use to grab device and send to ffserver?

Ricardo Kleemann ricardo at americasnet.com
Sun Jul 26 00:36:45 CEST 2015


Hi guys,

I’ve had the chance to try out all 16 modes…

> On Jun 24, 2015, at 10:04 AM, Ricardo Kleemann <ricardo at americasnet.com> wrote:
> 
> Thanks. I was thinking about that last night. With Flash Media Live Encoder, the only one that works is the 1920x1080 60fps. I guess I'll have to try each one and see.
> 

I only got video from modes 9 and 12

[decklink @ 0x7f94b081ba00] 	9	1920x1080 at 30000/1001 fps
[decklink @ 0x7f94b081ba00] 	12	1920x1080 at 30000/1001 fps (interlaced, upper field first)

what is the effective difference between interlaced and non-interlaced, in terms of the resulting video file? In terms of streaming, also…?

thank you
Ricardo


> On Wed, Jun 24, 2015 at 1:08 AM, Arnaud Wijns <arnaud.wijns at ulb.ac.be <mailto:arnaud.wijns at ulb.ac.be>> wrote:
> Hello,
> 
> Make sure you are using the good input format for your device. BMD is quite touchy in that field.
> For instance, with a 1080i 50fps camera, I must choose the following format : 11 1920x1080 at 25000/1000 fps (interlaced, upper field first). If I use any other, I also have the mire (vertical color bars).
> Do not hesitate to try all available formats. One of them will suit your needs (typically 8, 10, 11 or 13 if you use a full HD camera / 14, 16 for a screen grabber).
> 
> If none of them works, I am not sure what to do in that case ;)
> 
> Arnaud.
> 
> Arnaud WIJNS
> ULB Podcast | Informaticien
> http://podcast.ulb.ac.be <http://podcast.ulb.ac.be/> <http://podcast.ulb.ac.be/ <http://podcast.ulb.ac.be/>>
> 
> Téléphone : 02/650.29.26
> Email : arnaud.wijns at ulb.ac.be <mailto:arnaud.wijns at ulb.ac.be> <mailto:arnaud.wijns at ulb.ac.be <mailto:arnaud.wijns at ulb.ac.be>>
> 
> Université libre de Bruxelles
> Campus du Solbosch - CP 160/26
> Avenue F.D. Roosevelt, 50 - 1050 Ixelles
> 
> > Le 24 juin 2015 à 04:42, Ricardo Kleemann <ricardo at americasnet.com <mailto:ricardo at americasnet.com>> a écrit :
> >
> > Hello Arnaud,
> >
> > Thanks again for your great help.
> >
> > Please see below…
> >
> >> On Jun 22, 2015, at 5:28 AM, Arnaud Wijns <arnaud.wijns at ulb.ac.be <mailto:arnaud.wijns at ulb.ac.be>> wrote:
> >>
> >> Hello Ricardo,
> >>
> >> I am working on a project which uses the same devices for the same purpose.
> >>
> >> You can use both bmdtools (with pipe to FFMPEG) or decklink support for FFMPEG (the second solution is easier and works better imo).
> >>
> >> 1) Install the Mac driver for BMD (BMD Desktop)
> >> 2) Download the Decklink SDK (from https://www.blackmagicdesign.com/support/download/f3e35f03b97440c4893fdf7e0dfdf97c/Mac%20OS%20X <https://www.blackmagicdesign.com/support/download/f3e35f03b97440c4893fdf7e0dfdf97c/Mac%20OS%20X>)
> >> 3) Install all dependencies for FFMPEG (use Brew as explained in the FFMPEG compilation guide for Mac OS)
> >> —> brew install automake fdk-aac git lame libass libtool libvorbis libvpx \
> >>      opus sdl shtool texi2html theora wget x264 xvid yasm
> >> 4) Download FFMPEG from Git
> >> —> git clone git://source.ffmpeg.org/ffmpeg.git <http://source.ffmpeg.org/ffmpeg.git> ffmpeg
> >>      cd ffmpeg
> >> 5) Prepare the configuration file (adapt according to your needs BUT —enable-deckling is required for BMD). Adapt the path for your Decklink SDK
> >> —> ./configure  --prefix=/usr/local --enable-gpl --enable-nonfree --enable-libass \
> >> --enable-libfdk-aac --enable-libfreetype --enable-libmp3lame --enable-libopus \
> >> --enable-libtheora --enable-libvorbis --enable-libvpx --enable-libx264 --enable-libxvid --enable-decklink --extra-cflags=-I/somepath/blackmagicsdk/Mac/include --extra-ldflags=-L/somepath/blackmagicsdk/Mac/include
> >> 6) If you use Mac OS X 10.9 or above, edit « config.mak »
> >> —> vi config.mak
> >>      Remove all references to « -std=c99 » (there are 2)
> >> 7) Edit DeckLinkAPIDispatch.cpp (in /somepath/blackmagicsdk/Mac/include)
> >> —> add the word "static" to the beginning of lines 56, 77, and 157
> >> 56: void     InitDeckLinkAPI (void)
> >> 77: bool            IsDeckLinkAPIPresent (void)
> >> 157: void InitBMDStreamingAPI(void)
> >> 8) Make && sudo make install
> >>
> >> Now that FFMPEG in installed with Decklink support, you can get the audio-video stream from your BMD devices directly in FFMPEG.
> >>
> >> Use the following commands:
> >>>> ffmpeg -f decklink -list_devices 1 -i dummy
> >>>> ffmpeg -f decklink -list_formats 1 -i ‘UltraStudio Mini Recorder’
> >>>> ffmpeg -f decklink -i ‘UltraStudio Mini Recorder at 16’ output.mov
> >>
> >
> > I was able to build ffmpeg with support for BMD.
> >
> >
> > These commands are now all working and I get the set of formats supported.
> >
> > My problem now is that ffmpeg (and even ffplay) all they show is the multi-colored vertical bars. If I run BMD Media Express, however, I see the video coming from the camera. So something seems quite strange in how ffmpeg is acquiring the source.
> >
> > I get the error of “No input signal detected”
> >
> > $ ffmpeg -f decklink -i 'UltraStudio Mini Recorder at 10' output.mov
> > ffmpeg version N-73104-g7604358 Copyright (c) 2000-2015 the FFmpeg developers
> >  built with Apple LLVM version 6.1.0 (clang-602.0.53) (based on LLVM 3.6.0svn)
> >  configuration: --prefix=/usr/local --enable-gpl --enable-nonfree --enable-ffplay --enable-libass --enable-libfdk-aac --enable-libfreetype --enable-libmp3lame --enable-libopus --enable-libtheora --enable-libvorbis --enable-libvpx --enable-libx264 --enable-libxvid --enable-decklink --extra-cflags=-I/Users/ptl/blackmagicsdk/Mac/include --extra-ldflags=-L/Users/ptl/blackmagicsdk/Mac/include
> >  libavutil      54. 27.100 / 54. 27.100
> >  libavcodec     56. 44.100 / 56. 44.100
> >  libavformat    56. 38.100 / 56. 38.100
> >  libavdevice    56.  4.100 / 56.  4.100
> >  libavfilter     5. 17.100 /  5. 17.100
> >  libswscale      3.  1.101 /  3.  1.101
> >  libswresample   1.  2.100 /  1.  2.100
> >  libpostproc    53.  3.100 / 53.  3.100
> > [decklink @ 0x7fba09800000] Found Decklink mode 1920 x 1080 with rate 30.00
> > [decklink @ 0x7fba09800000] Frame received (#1) - No input signal detected - Frames dropped 1
> > Guessed Channel Layout for  Input Stream #0.0 : stereo
> > Input #0, decklink, from 'UltraStudio Mini Recorder at 10':
> >  Duration: N/A, start: 0.000000, bitrate: 1536 kb/s
> >    Stream #0:0: Audio: pcm_s16le, 48000 Hz, 2 channels, s16, 1536 kb/s
> >    Stream #0:1: Video: rawvideo (UYVY / 0x59565955), uyvy422, 1920x1080, -5 kb/s, 30 tbr, 1000k tbn, 30 tbc
> > No pixel format specified, yuv422p for H.264 encoding chosen.
> > Use -pix_fmt yuv420p for compatibility with outdated media players.
> > [libx264 @ 0x7fba0a008800] using cpu capabilities: MMX2 SSE2Fast SSSE3 SSE4.2 AVX
> > [libx264 @ 0x7fba0a008800] profile High 4:2:2, level 4.0, 4:2:2 8-bit
> > [libx264 @ 0x7fba0a008800] 264 - core 144 r2533 c8a773e - H.264/MPEG-4 AVC codec - Copyleft 2003-2015 - http://www.videolan.org/x264.html <http://www.videolan.org/x264.html> - options: cabac=1 ref=3 deblock=1:0:0 analyse=0x3:0x113 me=hex subme=7 psy=1 psy_rd=1.00:0.00 mixed_ref=1 me_range=16 chroma_me=1 trellis=1 8x8dct=1 cqm=0 deadzone=21,11 fast_pskip=1 chroma_qp_offset=-2 threads=6 lookahead_threads=1 sliced_threads=0 nr=0 decimate=1 interlaced=0 bluray_compat=0 constrained_intra=0 bframes=3 b_pyramid=2 b_adapt=1 b_bias=0 direct=1 weightb=1 open_gop=0 weightp=2 keyint=250 keyint_min=25 scenecut=40 intra_refresh=0 rc_lookahead=40 rc=crf mbtree=1 crf=23.0 qcomp=0.60 qpmin=0 qpmax=69 qpstep=4 ip_ratio=1.40 aq=1:1.00
> > Output #0, mov, to 'output.mov':
> >  Metadata:
> >    encoder         : Lavf56.38.100
> >    Stream #0:0: Video: h264 (libx264) (avc1 / 0x31637661), yuv422p, 1920x1080, q=-1--1, 30 fps, 15360 tbn, 30 tbc
> >    Metadata:
> >      encoder         : Lavc56.44.100 libx264
> >    Stream #0:1: Audio: aac (libfdk_aac) (mp4a / 0x6134706D), 48000 Hz, stereo, s16, 139 kb/s
> >    Metadata:
> >      encoder         : Lavc56.44.100 libfdk_aac
> > Stream mapping:
> >  Stream #0:1 -> #0:0 (rawvideo (native) -> h264 (libx264))
> >  Stream #0:0 -> #0:1 (pcm_s16le (native) -> aac (libfdk_aac))
> > Press [q] to stop, [?] for help
> >
> >
> > I get the same signal error with ffprobe
> > $ ffprobe -f decklink -i 'UltraStudio Mini Recorder at 10'
> > ffprobe version N-73104-g7604358 Copyright (c) 2007-2015 the FFmpeg developers
> >  built with Apple LLVM version 6.1.0 (clang-602.0.53) (based on LLVM 3.6.0svn)
> >  configuration: --prefix=/usr/local --enable-gpl --enable-nonfree --enable-ffplay --enable-libass --enable-libfdk-aac --enable-libfreetype --enable-libmp3lame --enable-libopus --enable-libtheora --enable-libvorbis --enable-libvpx --enable-libx264 --enable-libxvid --enable-decklink --extra-cflags=-I/Users/ptl/blackmagicsdk/Mac/include --extra-ldflags=-L/Users/ptl/blackmagicsdk/Mac/include
> >  libavutil      54. 27.100 / 54. 27.100
> >  libavcodec     56. 44.100 / 56. 44.100
> >  libavformat    56. 38.100 / 56. 38.100
> >  libavdevice    56.  4.100 / 56.  4.100
> >  libavfilter     5. 17.100 /  5. 17.100
> >  libswscale      3.  1.101 /  3.  1.101
> >  libswresample   1.  2.100 /  1.  2.100
> >  libpostproc    53.  3.100 / 53.  3.100
> > [decklink @ 0x7ff23400be00] Found Decklink mode 1920 x 1080 with rate 30.00
> > Input #0, decklink, from 'UltraStudio Mini Recorder at 10':
> >  Duration: N/A, start: 0.000000, bitrate: 1536 kb/s
> >    Stream #0:0: Audio: pcm_s16le, 48000 Hz, 2 channels, s16, 1536 kb/s
> >    Stream #0:1: Video: rawvideo (UYVY / 0x59565955), uyvy422, 1920x1080, -5 kb/s, 30 tbr, 1000k tbn, 30 tbc
> > Ricardos-MacBook-Pro:~ ptl$ ffprobe -f decklink -i 'UltraStudio Mini Recorder at 10'
> > ffprobe version N-73104-g7604358 Copyright (c) 2007-2015 the FFmpeg developers
> >  built with Apple LLVM version 6.1.0 (clang-602.0.53) (based on LLVM 3.6.0svn)
> >  configuration: --prefix=/usr/local --enable-gpl --enable-nonfree --enable-ffplay --enable-libass --enable-libfdk-aac --enable-libfreetype --enable-libmp3lame --enable-libopus --enable-libtheora --enable-libvorbis --enable-libvpx --enable-libx264 --enable-libxvid --enable-decklink --extra-cflags=-I/Users/ptl/blackmagicsdk/Mac/include --extra-ldflags=-L/Users/ptl/blackmagicsdk/Mac/include
> >  libavutil      54. 27.100 / 54. 27.100
> >  libavcodec     56. 44.100 / 56. 44.100
> >  libavformat    56. 38.100 / 56. 38.100
> >  libavdevice    56.  4.100 / 56.  4.100
> >  libavfilter     5. 17.100 /  5. 17.100
> >  libswscale      3.  1.101 /  3.  1.101
> >  libswresample   1.  2.100 /  1.  2.100
> >  libpostproc    53.  3.100 / 53.  3.100
> > [decklink @ 0x7f9ed0808c00] Found Decklink mode 1920 x 1080 with rate 30.00
> > [decklink @ 0x7f9ed0808c00] Frame received (#1) - No input signal detected - Frames dropped 1
> > Input #0, decklink, from 'UltraStudio Mini Recorder at 10':
> >  Duration: N/A, start: 0.000000, bitrate: 1536 kb/s
> >    Stream #0:0: Audio: pcm_s16le, 48000 Hz, 2 channels, s16, 1536 kb/s
> >    Stream #0:1: Video: rawvideo (UYVY / 0x59565955), uyvy422, 1920x1080, -5 kb/s, 30 tbr, 1000k tbn, 30 tbc
> >
> >
> >> Cheers,
> >> Arnaud.
> >>
> >> Arnaud WIJNS
> >> ULB Podcast | Informaticien
> >> http://podcast.ulb.ac.be <http://podcast.ulb.ac.be/> <http://podcast.ulb.ac.be/ <http://podcast.ulb.ac.be/>>
> >>
> >> Téléphone : 02/650.29.26
> >> Email : arnaud.wijns at ulb.ac.be <mailto:arnaud.wijns at ulb.ac.be> <mailto:arnaud.wijns at ulb.ac.be <mailto:arnaud.wijns at ulb.ac.be>>
> >>
> >> Université libre de Bruxelles
> >> Campus du Solbosch - CP 160/26
> >> Avenue F.D. Roosevelt, 50 - 1050 Ixelles
> >>
> >>> Le 16 juin 2015 à 19:30, Ricardo Kleemann <ricardo at americasnet.com <mailto:ricardo at americasnet.com>> a écrit :
> >>>
> >>> On Tue, Jun 16, 2015 at 9:03 AM, Carl Eugen Hoyos <cehoyos at ag.or.at <mailto:cehoyos at ag.or.at>> wrote:
> >>>
> >>>> Ricardo Kleemann <ricardo <at> americasnet.com <http://americasnet.com/>> writes:
> >>>>
> >>>>> I have a BlackMagic Design Ultrastudio mini recorder
> >>>>> connected to macbook pro thunderbolt. But it seems
> >>>>> the only program that recognizes the device is FMLE.
> >>>>
> >>>> What is FMLE?
> >>>> Why can't you feed whatever FMLE produces to ffmpeg
> >>>> (the application)?
> >>>>
> >>>>
> >>> Sorry, it is Flash Media Live Encoder, and it does its own encoding and
> >>> sends to a server like Red5 or Flash Media Server.
> >>>
> >>> I was hoping to not have to use FMLE and instead something that can push
> >>> directly to ffserver.
> >>>
> >>> Certainly I can feed the FMLE output to ffmpeg and then to ffserver but
> >>> then I'm just adding another component into the chain.
> >>>
> >>> I was hoping to go directly to ffserver, if for example ffmpeg was able to
> >>> see the input video device.
> >>>
> >>> thanks
> >>> Ricardo
> >>> _______________________________________________
> >>> ffmpeg-user mailing list
> >>> ffmpeg-user at ffmpeg.org <mailto:ffmpeg-user at ffmpeg.org>
> >>> http://ffmpeg.org/mailman/listinfo/ffmpeg-user <http://ffmpeg.org/mailman/listinfo/ffmpeg-user>
> >>
> >> _______________________________________________
> >> ffmpeg-user mailing list
> >> ffmpeg-user at ffmpeg.org <mailto:ffmpeg-user at ffmpeg.org>
> >> http://ffmpeg.org/mailman/listinfo/ffmpeg-user <http://ffmpeg.org/mailman/listinfo/ffmpeg-user>
> >
> > _______________________________________________
> > ffmpeg-user mailing list
> > ffmpeg-user at ffmpeg.org <mailto:ffmpeg-user at ffmpeg.org>
> > http://ffmpeg.org/mailman/listinfo/ffmpeg-user <http://ffmpeg.org/mailman/listinfo/ffmpeg-user>
> 
> _______________________________________________
> ffmpeg-user mailing list
> ffmpeg-user at ffmpeg.org <mailto:ffmpeg-user at ffmpeg.org>
> http://ffmpeg.org/mailman/listinfo/ffmpeg-user <http://ffmpeg.org/mailman/listinfo/ffmpeg-user>
> 



More information about the ffmpeg-user mailing list