!"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~          Safe-Inferred A basic three component vector. !Quadrance between two 3D points. None  !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~  !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~ !"#$%&'()*+,-./012<3=4>5?6@7A8B9CG:DH;EIJFKLM NROSPTQUVWXYZ[\]^_`abcdefghijklmno pqrs tuvwxyz{|}~    !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~NoneJsizeof the  structure in bytes. L Convert an  to a  M2Rescale an integer from one time base to another.       !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLM      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMGHEFABCD=>?@9:;<567834/012+,-.'()*#$%& !"     JKILMW      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNoneN Convert an  to a  with the result in the   transformer.  toJuicyT = MaybeT . toJuicy O Convert an  to a . PSave an 0 to a PNG file on disk assuming the frame could  be converted to a  using O. NOPNOPNOPNOPNone[<Catch an IOException from an IO action and re-throw it in a  wrapping monad transformer. \Throw an error with a  message. ] Allocate an ' and set its fields to default values. ^AAllocate new buffer(s) for audio or video data with the required 2 alignment. Note, for video frames, pixel format, width, and  height5 must be set before calling this function. For audio  frames, sample format,  nb_samples, and channel_layout must be  set. QRSTUVWXYZ[\]^QRSTUVWXYZ[\]^ZYXWVUTSRQ[\]^QRSTUVWXYZ[\]^None_,A common interface required of arguments to k (a higher  level wrapper for the Q function from  libswscale). i:Obtain a context for converting the source to destination E format. If the given context is already configured for the required C conversion, it is returned. Otherwise, the given context is freed , and a new, configured context is returned. j<Supplies a continuation with all components provided by the  _ class. kswsScale ctx src dst scales the entire src image to dst " using the previously initialized ctx. _`abcdefghijk _`abcdefghijk cdefghi_`abjk_`abcdefghijkNone wOpen an input media file. xAVFrame is a superset of  AVPicture, so we can upcast an   to an . yFind a codec given by name. z@Read packets of a media file to get stream information. This is 7 useful for file formats with no headers such as MPEG. {"Searches for a video stream in an E . If one is B found, returns the index of the stream in the container, and its  associated 3 and . |AFind a registered decoder with a codec ID matching that found in  the given 3. }Initialize the given 3 to use the given  .. **NOTE**: This function is not thread safe! ~#Return the next frame of a stream. %Read RGB frames from a video stream. 'Read RGB frames with the result in the  transformer. 2 frameReaderT = fmap (first MaybeT) . frameReader @Read time stamped RGB frames from a video stream. Time is given * in seconds from the start of the stream. 4Read time stamped RGB frames with the result in the   transformer. 2 frameReaderT = fmap (first MaybeT) . frameReader ?Construct an action that gets the next available frame, and an D action to release all resources associated with this video stream. lmnopqrstuvwxyz{|}~lmnopqrstuvwxyz{|}~vutsrqponmlwxyz{|}~lmnopqrstuvwxyz{|}~None8Minimal parameters describing the desired video output. If , then the codec  is inferred from the output  file name. If , then  this codec is manually chosen. :Use default parameters for a video of the given width and 1 height, forcing the choice of the h264 encoder. :Use default parameters for a video of the given width and B height. The output format is determined by the output file name. ADetermine if the bitwise intersection of two values is non-zero. BFind and initialize the requested encoder, and add a video stream  to the output container. ?Initialize a temporary YUV frame of the same resolution as the E output video stream. We well convert RGB frames using this frame as 0 a destination before encoding the video frame. >Allocate an output context inferring the codec from the given  file name. !Open the given file for writing. Close an open IO context. Returns  if the  was updated with new output  data;  otherwise. @Allocate the stream private data and write the stream header to  an output media file. (Write a packet to an output media file. >Write the stream trailer to an output media file and free the = private data. May only be called after a successful call to  . AQuantize RGB24 pixels to the systematic RGB8 color palette. This E is slow, but lets us prepare an RGB24 pixel format for output as an  RGB8 GIF. <Open a target file for writing a video stream. The function E returned may be used to write RGB images of the resolution given by  the provided  . The function will convert the * supplied RGB frame to YUV (specifically, yuv420p) before encoding ? the image to the video stream. If this function is applied to  ., then the output stream is closed. Note that   must3 be provided to properly terminate video encoding. &&&  NoneFFmpeg' s built-in format debug utlity. 4Print the short name, long name, and ID of a codec. Print various codec settings. -Print all pixel formats supported by a given . Get the name of a codec.  None8Initialize FFmpeg by registering all known codecs. This must 0 be called before using other FFmpeg functions. \  !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPONP      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~      !"#$%&'(()*+,-./01234567899:;<=>?@ABCDEFGHIJKLMNOPQRSTUVVWXYZ[\]^_`abcdefghijklmnopqrstuvvwxyz{|}~          ffmpeg-light-0.3.1Codec.FFmpeg.Internal.V3Codec.FFmpeg.EnumsCodec.FFmpeg.TypesCodec.FFmpeg.JuicyCodec.FFmpeg.CommonCodec.FFmpeg.ScalerCodec.FFmpeg.DecodeCodec.FFmpeg.EncodeCodec.FFmpeg.Internal.Debug Codec.FFmpegV3qd PacketFlag FormatFlag CodecFlag AVRoundModeAVIOFlag FFProfile SwsAlgorithm AVCodecID AVPixelFormat AVMediaTypeavmediaTypeVideoavmediaTypeAudioavmediaTypeDataavmediaTypeSubtitleavmediaTypeAttachment avmediaTypeNb avPixFmtNone avPixFmtRgb24 avPixFmtY400a avPixFmtRgb32avPixFmtRgb321 avPixFmtBgr32avPixFmtBgr321 avPixFmtRgb8 avPixFmtBgr8avPixFmtRgb4ByteavPixFmtBgr4Byte avPixFmtGray8avPixFmtGray16avPixFmtGray8a avPixFmtPal8avPixFmtRgb565avPixFmtRgb555avPixFmtYuv420pavPixFmtYuv420p9avPixFmtYuv420p10avPixFmtYuv420p12avPixFmtYuv422p12avPixFmtYuv444p12avPixFmtYuv420p14avPixFmtYuv422p14avPixFmtYuv444p14avPixFmtYuv420p16avPixFmtYuv422p16avPixFmtYuv444p16avPixFmtRgba64avPixFmtBgra64 avCodecIdH264 avCodecIdHevcavCodecIdTheora avCodecIdVc1avCodecIdMpeg4avCodecIdMpeg2videoavCodecIdRawvideo avCodecIdGif avCodecIdAac avCodecIdMp3 avCodecIdDtsswsFastBilinear swsBilinear swsBicubicswsXswsPointswsArea swsBicublinswsGaussswsSinc swsLanczos swsSplineffProfileAacMainffProfileAacLowffProfileAacSsrffProfileAacLtpffProfileAacHeffProfileAacHeV2ffProfileAacLdffProfileAacEldffProfileMpeg2AacLowffProfileMpeg2AacHe ffProfileDtsffProfileDtsEsffProfileDts9624ffProfileDtsHdHraffProfileDtsHdMaffProfileMpeg2422ffProfileMpeg2HighffProfileMpeg2SsffProfileMpeg2SnrScalableffProfileMpeg2MainffProfileMpeg2SimpleffProfileH264ConstrainedffProfileH264IntraffProfileH264Baseline ffProfileH264ConstrainedBaselineffProfileH264MainffProfileH264ExtendedffProfileH264HighffProfileH264High10ffProfileH264High10IntraffProfileH264High422ffProfileH264High422IntraffProfileH264High444ffProfileH264High444PredictiveffProfileH264High444IntraffProfileH264Cavlc444ffProfileVc1SimpleffProfileVc1MainffProfileVc1ComplexffProfileVc1AdvancedffProfileMpeg4SimpleffProfileMpeg4SimpleScalableffProfileMpeg4CoreffProfileMpeg4MainffProfileMpeg4NBitffProfileMpeg4ScalableTexture!ffProfileMpeg4SimpleFaceAnimation"ffProfileMpeg4BasicAnimatedTextureffProfileMpeg4HybridffProfileMpeg4AdvancedRealTimeffProfileMpeg4CoreScalableffProfileMpeg4AdvancedCodingffProfileMpeg4AdvancedCore%ffProfileMpeg4AdvancedScalableTextureffProfileMpeg4SimpleStudioffProfileMpeg4AdvancedSimple avioFlagRead avioFlagWriteavioFlagReadWriteavioFlagNonblockavioFlagDirect avRoundZero avRoundInf avRoundDown avRoundUpavRoundNearInfavRoundPassMinmaxcodecFlagUnalignedcodecFlagQscale codecFlag4mvcodecFlagOutputCorrupt codecFlagQpel codecFlagGmc codecFlagMv0codecFlagInputPreservedcodecFlagPass1codecFlagPass2 codecFlagGraycodecFlagEmuEdge codecFlagPsnrcodecFlagTruncatedcodecFlagNormalizeAqpcodecFlagInterlacedDctcodecFlagLowDelaycodecFlagGlobalHeadercodecFlagBitexactcodecFlagAcPredcodecFlagLoopFiltercodecFlagInterlacedMecodecFlagClosedGop avfmtNofileavfmtNeednumberavfmtRawpictureavfmtGlobalheaderavfmtNotimestampsavfmtVariableFpsavfmtNodimensionsavfmtNostreamsavfmtAllowFlushavfmtTsNonstrict avPktFlagKeyavPktFlagCorruptAVFracfracValfracNumfracDen AVRational numerator denomenatorHasDtsgetDtssetDtshasDtsHasPacketFlagsgetPacketFlagssetPacketFlagshasPacketFlagsHasSizegetSizesetSizehasSizeHasDatagetDatasetDatahasDataAVPacket AVIOContextHasVideoCodecIDgetVideoCodecIDsetVideoCodecIDhasVideoCodecIDHasFormatFlagsgetFormatFlagssetFormatFlagshasFormatFlagsAVOutputFormat SwsContext AVPicture HasLineSize getLineSize setLineSize hasLineSize HasPktPts getPktPts setPktPts hasPktPtsHasPtsgetPtssetPtshasPtsAVFrame AVDictionaryHasPixelFormatsgetPixelFormatssetPixelFormatshasPixelFormatsHasNamegetNamesetNamehasName HasLongName getLongName setLongName hasLongNameAVCodecHasStreamIndexgetStreamIndexsetStreamIndexhasStreamIndexHasCodecContextgetCodecContextsetCodecContexthasCodecContextHasIdgetIdsetIdhasIdAVStream HasPrivData getPrivData setPrivData hasPrivData HasCodecID getCodecID setCodecID hasCodecID HasCodecFlags getCodecFlags setCodecFlags hasCodecFlagsHasPixelFormatgetPixelFormatsetPixelFormathasPixelFormat HasGopSize getGopSize setGopSize hasGopSize HasTimeBase getTimeBase setTimeBase hasTimeBase HasHeight getHeight setHeight hasHeightHasWidthgetWidthsetWidthhasWidth HasBitRate getBitRate setBitRate hasBitRateAVCodecContext HasIOContext getIOContext setIOContext hasIOContextHasOutputFormatgetOutputFormatsetOutputFormathasOutputFormat HasStreams getStreams setStreams hasStreams HasNumStreams getNumStreams setNumStreams hasNumStreamsAVFormatContextHasPtrgetPtrav_rescale_rnd packetSize pictureSizeav_q2d av_rescale_qtoJuicyTtoJuicy saveJuicy sws_scalesws_getCachedContextav_free free_packet init_packet codec_close av_frame_freeav_frame_get_bufferav_frame_alloc open_codec wrapIOErrorerrMsgframe_alloc_checkframe_get_buffer_check SwsCompatible swsPlanes swsStrides sliceHeight ImageInfoimgWidth imgHeight imgFormatswsInitswsResetwithSwsswsScale close_input decode_video av_read_frame av_mallocavpicture_get_sizeavcodec_get_frame_defaultsavcodec_find_decoder_by_nameavcodec_find_decoderav_find_best_streamavformat_find_stream_infoavformat_open_input openInputframeAsPicture findDecoder checkStreamsfindVideoStream getDecoder openCodecread_frame_check frameReader frameReaderTframeReaderTimeframeReaderTimeT prepareReaderEncodingParamsepWidthepHeightepFpsepCodecepPresetav_image_fill_arraysavformat_free_context avio_close avio_openav_write_traileravformat_write_headerav_interleaved_write_frameav_write_frameavformat_new_streamavformat_alloc_output_contextav_guess_formatav_freepav_image_allocavcodec_encode_video2 av_opt_setavcodec_find_encoder_by_nameavcodec_find_encoder defaultH264 defaultParams checkFlag initStream initTempFrameallocOutputContextavio_open_checkavio_close_checkencode_video_checkwrite_header_checkwrite_frame_checkwrite_trailer_check palettizeRGB8 frameWriteravcodec_get_nameav_get_pix_fmt_nameav_dump_format debugCodecdebugCodecContext pixFmtNamedebugPixelFormatsdebugCodecName initFFmpeg $fStorableV3 $fFunctorV3$fShowAVPixelFormatghc-prim GHC.TypesDouble$fStorableAVFrac$fStorableAVRational$fHasDtsAVPacket$fHasPtsAVPacket$fHasStreamIndexAVPacket$fHasPacketFlagsAVPacket$fHasSizeAVPacket$fHasDataAVPacket$fHasVideoCodecIDAVOutputFormat$fHasFormatFlagsAVOutputFormat$fHasDataAVPicture$fHasDataAVFrame$fHasPktPtsAVFrame$fHasPtsAVFrame$fHasLineSizeAVFrame$fHasHeightAVFrame$fHasWidthAVFrame$fHasPixelFormatAVFrame$fHasPixelFormatsAVCodec$fHasCodecIDAVCodec$fHasNameAVCodec$fHasLongNameAVCodec$fHasStreamIndexAVStream$fHasCodecContextAVStream$fHasTimeBaseAVStream$fHasIdAVStream$fHasPrivDataAVCodecContext$fHasCodecIDAVCodecContext$fHasCodecFlagsAVCodecContext$fHasPixelFormatAVCodecContext$fHasGopSizeAVCodecContext$fHasTimeBaseAVCodecContext$fHasHeightAVCodecContext$fHasWidthAVCodecContext$fHasBitRateAVCodecContext$fHasIOContextAVFormatContext $fHasOutputFormatAVFormatContext$fHasStreamsAVFormatContext$fHasNumStreamsAVFormatContext $fHasPtrPtrJuicyPixels-3.1.5Codec.Picture.Types DynamicImagetransformers-0.3.0.0Control.Monad.Trans.MaybeMaybeTbaseGHC.BaseString$fSwsCompatibleImage$fSwsCompatibleAVFrame Data.MaybeNothingJustTrueFalseav_register_all