Newest 'ffmpeg' Questions - Stack Overflow

http://stackoverflow.com/questions/tagged/ffmpeg

Les articles publiés sur le site

  • HLS streaming using FFMPEG

    1er décembre 2014, par user3663917

    I am new to FFMPEG. Now i was trying to do HLS live streaming using FFMPEG.Is there some method by which we can use FFMPEG for converting data from camera to ts and then this ts to segments so that it can be used for HLS live streaming?

  • FFMPEG frame from BLOB

    1er décembre 2014, par bobbdelsol

    I'm trying to work around an issue with ImageMagick, doesn't work with FFMPEG on Herouku

    to avoid over using /tmp for files, is there a way to feed FFMPEG a blob so that I can write from IMAGEMAGIC to_blob, then import the blob into FFMPEG without having to go to disk.

  • ffmpeg, download video stream from url

    1er décembre 2014, par samiullah

    I am developing application to save any online webinar(video or audio) given the url using ffmpeg library. Url usually contain other contents like text, images as well. So i have problem, how to separately get video stream from url using ffmpeg(or some other better free library). Url may be for any site, not only for youtube, but as an example, link may be like http://wildkingdom.magnify.net/video/Dangerous-Moments-in-the-Wild-K;recent or http://www.youtube.com/watch?v=wnrJJYm7qIw etc

  • List of input frame names for ffmpeg image2 demux

    1er décembre 2014, par Gert Gottschalk

    Is it possible to provide a set of ascii file names to the image2 demux in ffmpeg? I understand about its pattern capabilities. But I can't use them as my image names could be out of sequence or even random. I have a python script that selects the frames and their sequence and builds up the ffmpeg command line automatically. So far I tried

    ffmpeg -r 16 -threads 0 -f image2 -i f1.png f4.png f3.png f0.png -c:v libx264 -s 1280x960 -crf 16 -y my_video.mp4
    

    The above doesn't work. It actually overwrote my input files.

    Thanks, Gert

  • FFMPEG Link error

    30 novembre 2014, par Thomas

    I'm trying to compile a modified version of this transcoding example from the FFMPEG site, I've used all the required includes and joined the libs using this :

    INCLUDEPATH += $$(FFMPEG_DEV_PATH)\include
        LIBS += -L$$(FFMPEG_DEV_PATH)\lib -lavformat -lavcodec -lavutil -lswscale -liconv -lz -lavfilter
    

    but I get this linking error that I can't understand :

      "avio_close(AVIOContext*)", referenced from:
          PhVideoEncoder::PhVideoEncoder(QString) in PhVideoEncoder.o
      "av_strerror(int, char*, unsigned long)", referenced from:
          av_make_error_string(char*, unsigned long, int) in PhVideoEncoder.o
      "av_rescale_q(long long, AVRational, AVRational)", referenced from:
          PhVideoEncoder::encode_write_frame(AVFrame*, unsigned int, int*) in PhVideoEncoder.o
      "av_frame_free(AVFrame**)", referenced from:
          PhVideoEncoder::PhVideoEncoder(QString) in PhVideoEncoder.o
          PhVideoEncoder::filter_encode_write_frame(AVFrame*, unsigned int) in PhVideoEncoder.o
          PhVideoEncoder::encode_write_frame(AVFrame*, unsigned int, int*) in PhVideoEncoder.o
      "av_read_frame(AVFormatContext*, AVPacket*)", referenced from:
          PhVideoEncoder::PhVideoEncoder(QString) in PhVideoEncoder.o
      "avcodec_close(AVCodecContext*)", referenced from:
          PhVideoEncoder::PhVideoEncoder(QString) in PhVideoEncoder.o
      "avcodec_open2(AVCodecContext*, AVCodec const*, AVDictionary**)", referenced from:
          PhVideoEncoder::open_input_file(char const*) in PhVideoEncoder.o
          PhVideoEncoder::open_output_file(char const*) in PhVideoEncoder.o
      "av_dump_format(AVFormatContext*, int, char const*, int)", referenced from:
          PhVideoEncoder::open_input_file(char const*) in PhVideoEncoder.o
          PhVideoEncoder::open_output_file(char const*) in PhVideoEncoder.o
      "av_frame_alloc()", referenced from:
          PhVideoEncoder::PhVideoEncoder(QString) in PhVideoEncoder.o
          PhVideoEncoder::filter_encode_write_frame(AVFrame*, unsigned int) in PhVideoEncoder.o
      "av_free_packet(AVPacket*)", referenced from:
          PhVideoEncoder::PhVideoEncoder(QString) in PhVideoEncoder.o
      "av_init_packet(AVPacket*)", referenced from:
          PhVideoEncoder::encode_write_frame(AVFrame*, unsigned int, int*) in PhVideoEncoder.o
      "av_opt_set_bin(void*, char const*, unsigned char const*, int, int)", referenced from:
          PhVideoEncoder::init_filter(FilteringContext*, AVCodecContext*, AVCodecContext*, char const*) in PhVideoEncoder.o
      "av_register_all()", referenced from:
          PhVideoEncoder::PhVideoEncoder(QString) in PhVideoEncoder.o
      "av_rescale_q_rnd(long long, AVRational, AVRational, AVRounding)", referenced from:
          PhVideoEncoder::PhVideoEncoder(QString) in PhVideoEncoder.o
          PhVideoEncoder::encode_write_frame(AVFrame*, unsigned int, int*) in PhVideoEncoder.o
      "av_write_trailer(AVFormatContext*)", referenced from:
          PhVideoEncoder::PhVideoEncoder(QString) in PhVideoEncoder.o
      "avfilter_graph_free(AVFilterGraph**)", referenced from:
          PhVideoEncoder::PhVideoEncoder(QString) in PhVideoEncoder.o
      "avfilter_inout_free(AVFilterInOut**)", referenced from:
          PhVideoEncoder::init_filter(FilteringContext*, AVCodecContext*, AVCodecContext*, char const*) in PhVideoEncoder.o
      "avformat_new_stream(AVFormatContext*, AVCodec const*)", referenced from:
          PhVideoEncoder::open_output_file(char const*) in PhVideoEncoder.o
      "avformat_open_input(AVFormatContext**, char const*, AVInputFormat*, AVDictionary**)", referenced from:
          PhVideoEncoder::open_input_file(char const*) in PhVideoEncoder.o
      "avcodec_copy_context(AVCodecContext*, AVCodecContext const*)", referenced from:
          PhVideoEncoder::open_output_file(char const*) in PhVideoEncoder.o
      "avcodec_find_decoder(AVCodecID)", referenced from:
          PhVideoEncoder::open_input_file(char const*) in PhVideoEncoder.o
      "avcodec_find_encoder(AVCodecID)", referenced from:
          PhVideoEncoder::open_output_file(char const*) in PhVideoEncoder.o
      "avfilter_get_by_name(char const*)", referenced from:
          PhVideoEncoder::init_filter(FilteringContext*, AVCodecContext*, AVCodecContext*, char const*) in PhVideoEncoder.o
      "avfilter_graph_alloc()", referenced from:
          PhVideoEncoder::init_filter(FilteringContext*, AVCodecContext*, AVCodecContext*, char const*) in PhVideoEncoder.o
      "avfilter_inout_alloc()", referenced from:
          PhVideoEncoder::init_filter(FilteringContext*, AVCodecContext*, AVCodecContext*, char const*) in PhVideoEncoder.o
      "avformat_close_input(AVFormatContext**)", referenced from:
          PhVideoEncoder::PhVideoEncoder(QString) in PhVideoEncoder.o
      "avcodec_decode_audio4(AVCodecContext*, AVFrame*, int*, AVPacket const*)", referenced from:
          PhVideoEncoder::PhVideoEncoder(QString) in PhVideoEncoder.o
      "avcodec_decode_video2(AVCodecContext*, AVFrame*, int*, AVPacket const*)", referenced from:
          PhVideoEncoder::PhVideoEncoder(QString) in PhVideoEncoder.o
      "avcodec_encode_audio2(AVCodecContext*, AVPacket*, AVFrame const*, int*)", referenced from:
          PhVideoEncoder::encode_write_frame(AVFrame*, unsigned int, int*) in PhVideoEncoder.o
      "avcodec_encode_video2(AVCodecContext*, AVPacket*, AVFrame const*, int*)", referenced from:
          PhVideoEncoder::encode_write_frame(AVFrame*, unsigned int, int*) in PhVideoEncoder.o
      "avfilter_graph_config(AVFilterGraph*, void*)", referenced from:
          PhVideoEncoder::init_filter(FilteringContext*, AVCodecContext*, AVCodecContext*, char const*) in PhVideoEncoder.o
      "avfilter_register_all()", referenced from:
          PhVideoEncoder::PhVideoEncoder(QString) in PhVideoEncoder.o
      "avformat_free_context(AVFormatContext*)", referenced from:
          PhVideoEncoder::PhVideoEncoder(QString) in PhVideoEncoder.o
      "avformat_write_header(AVFormatContext*, AVDictionary**)", referenced from:
          PhVideoEncoder::open_output_file(char const*) in PhVideoEncoder.o
      "av_get_sample_fmt_name(AVSampleFormat)", referenced from:
          PhVideoEncoder::init_filter(FilteringContext*, AVCodecContext*, AVCodecContext*, char const*) in PhVideoEncoder.o
      "av_buffersink_get_frame(AVFilterContext*, AVFrame*)", referenced from:
          PhVideoEncoder::filter_encode_write_frame(AVFrame*, unsigned int) in PhVideoEncoder.o
      "avfilter_graph_parse_ptr(AVFilterGraph*, char const*, AVFilterInOut**, AVFilterInOut**, void*)", referenced from:
          PhVideoEncoder::init_filter(FilteringContext*, AVCodecContext*, AVCodecContext*, char const*) in PhVideoEncoder.o
      "avformat_find_stream_info(AVFormatContext*, AVDictionary**)", referenced from:
          PhVideoEncoder::open_input_file(char const*) in PhVideoEncoder.o
      "av_interleaved_write_frame(AVFormatContext*, AVPacket*)", referenced from:
          PhVideoEncoder::PhVideoEncoder(QString) in PhVideoEncoder.o
          PhVideoEncoder::encode_write_frame(AVFrame*, unsigned int, int*) in PhVideoEncoder.o
      "av_buffersrc_add_frame_flags(AVFilterContext*, AVFrame*, int)", referenced from:
          PhVideoEncoder::filter_encode_write_frame(AVFrame*, unsigned int) in PhVideoEncoder.o
      "avfilter_graph_create_filter(AVFilterContext**, AVFilter const*, char const*, char const*, void*, AVFilterGraph*)", referenced from:
          PhVideoEncoder::init_filter(FilteringContext*, AVCodecContext*, AVCodecContext*, char const*) in PhVideoEncoder.o
      "av_get_default_channel_layout(int)", referenced from:
          PhVideoEncoder::init_filter(FilteringContext*, AVCodecContext*, AVCodecContext*, char const*) in PhVideoEncoder.o
      "avformat_alloc_output_context2(AVFormatContext**, AVOutputFormat*, char const*, char const*)", referenced from:
          PhVideoEncoder::open_output_file(char const*) in PhVideoEncoder.o
      "av_get_channel_layout_nb_channels(unsigned long long)", referenced from:
          PhVideoEncoder::open_output_file(char const*) in PhVideoEncoder.o
      "av_frame_get_best_effort_timestamp(AVFrame const*)", referenced from:
          PhVideoEncoder::PhVideoEncoder(QString) in PhVideoEncoder.o
      "av_log(void*, int, char const*, ...)", referenced from:
          PhVideoEncoder::PhVideoEncoder(QString) in PhVideoEncoder.o
          PhVideoEncoder::filter_encode_write_frame(AVFrame*, unsigned int) in PhVideoEncoder.o
          PhVideoEncoder::flush_encoder(unsigned int) in PhVideoEncoder.o
          PhVideoEncoder::open_input_file(char const*) in PhVideoEncoder.o
          PhVideoEncoder::open_output_file(char const*) in PhVideoEncoder.o
          PhVideoEncoder::init_filter(FilteringContext*, AVCodecContext*, AVCodecContext*, char const*) in PhVideoEncoder.o
          PhVideoEncoder::encode_write_frame(AVFrame*, unsigned int, int*) in PhVideoEncoder.o
          ...
      "av_free(void*)", referenced from:
          PhVideoEncoder::PhVideoEncoder(QString) in PhVideoEncoder.o
      "av_malloc(unsigned long)", referenced from:
          av_malloc_array(unsigned long, unsigned long) in PhVideoEncoder.o
      "av_strdup(char const*)", referenced from:
          PhVideoEncoder::init_filter(FilteringContext*, AVCodecContext*, AVCodecContext*, char const*) in PhVideoEncoder.o
      "avio_open(AVIOContext**, char const*, int)", referenced from:
          PhVideoEncoder::open_output_file(char const*) in PhVideoEncoder.o
    

    I tried looking for missing libraries but with no luck... What am I missing ?

    EDIT

    Thanks to the first answer, I added the extern C stuff but I still face a few errors :

    Undefined symbols for architecture x86_64:
      "_av_buffersink_get_frame", referenced from:
          PhVideoEncoder::filter_encode_write_frame(AVFrame*, unsigned int) in PhVideoEncoder.o
      "_av_buffersrc_add_frame_flags", referenced from:
          PhVideoEncoder::filter_encode_write_frame(AVFrame*, unsigned int) in PhVideoEncoder.o
      "_avfilter_get_by_name", referenced from:
          PhVideoEncoder::init_filter(FilteringContext*, AVCodecContext*, AVCodecContext*, char const*) in PhVideoEncoder.o
      "_avfilter_graph_alloc", referenced from:
          PhVideoEncoder::init_filter(FilteringContext*, AVCodecContext*, AVCodecContext*, char const*) in PhVideoEncoder.o
      "_avfilter_graph_config", referenced from:
          PhVideoEncoder::init_filter(FilteringContext*, AVCodecContext*, AVCodecContext*, char const*) in PhVideoEncoder.o
      "_avfilter_graph_create_filter", referenced from:
          PhVideoEncoder::init_filter(FilteringContext*, AVCodecContext*, AVCodecContext*, char const*) in PhVideoEncoder.o
      "_avfilter_graph_free", referenced from:
          PhVideoEncoder::PhVideoEncoder(QString) in PhVideoEncoder.o
      "_avfilter_graph_parse_ptr", referenced from:
          PhVideoEncoder::init_filter(FilteringContext*, AVCodecContext*, AVCodecContext*, char const*) in PhVideoEncoder.o
      "_avfilter_inout_alloc", referenced from:
          PhVideoEncoder::init_filter(FilteringContext*, AVCodecContext*, AVCodecContext*, char const*) in PhVideoEncoder.o
      "_avfilter_inout_free", referenced from:
          PhVideoEncoder::init_filter(FilteringContext*, AVCodecContext*, AVCodecContext*, char const*) in PhVideoEncoder.o
      "_avfilter_register_all", referenced from:
          PhVideoEncoder::PhVideoEncoder(QString) in PhVideoEncoder.o
    ld: symbol(s) not found for architecture x86_64