Re: [Libav-user] Using ffmpeg.exe in a project (non-commercial)

2012-02-23 Thread John Dexter
On 23 February 2012 01:19, Phil Turmel phi...@turmel.org wrote:
 On 02/22/2012 10:53 AM, Benjamin Gamisch wrote:
 [...]
 I would appreciate an answer whether I am allowed to use the FFMPEG.exe file 
 or not.

 Per your screenshot, probably not.  If you distribute FFmpeg, you must follow 
 the license.  There's no exception for non-commercial use.  You must provide 
 or offer to provide the source code for the version of FFmpeg you ship.

In cases where just the .EXE is distributed and used, isn't standard
practice simply to include a license.txt which has the GPL license,
credits use of ffmpeg and provides a link, etc - and to add a notice
to your in-app credits section, installer wizard, etc if applicable?
___
Libav-user mailing list
Libav-user@ffmpeg.org
http://ffmpeg.org/mailman/listinfo/libav-user


Re: [Libav-user] Using ffmpeg.exe in a project (non-commercial)

2012-02-23 Thread jan hölscher
2012/2/23 John Dexter jdxsoluti...@gmail.com

 On 23 February 2012 01:19, Phil Turmel phi...@turmel.org wrote:
  On 02/22/2012 10:53 AM, Benjamin Gamisch wrote:
  [...]
  I would appreciate an answer whether I am allowed to use the FFMPEG.exe
 file or not.
 
  Per your screenshot, probably not.  If you distribute FFmpeg, you must
 follow the license.  There's no exception for non-commercial use.  You must
 provide or offer to provide the source code for the version of FFmpeg you
 ship.

 In cases where just the .EXE is distributed and used, isn't standard
 practice simply to include a license.txt which has the GPL license,
 credits use of ffmpeg and provides a link, etc - and to add a notice
 to your in-app credits section, installer wizard, etc if applicable?
 ___
 Libav-user mailing list
 Libav-user@ffmpeg.org
 http://ffmpeg.org/mailman/listinfo/libav-user


this could be interresting for you!

http://www.gnu.org/licenses/gpl-faq.html#NFUseGPLPlugins

-- 
*Media Encoding Cluster http://codergrid.de, *
*the first Open Source Cluster Encoding Solution *
*for distributed Media Encoding.*
___
Libav-user mailing list
Libav-user@ffmpeg.org
http://ffmpeg.org/mailman/listinfo/libav-user


Re: [Libav-user] Help Required - FFmpeg usage in own product

2012-02-23 Thread Andrey Utkin
2012/2/22 Zeeshan Mahmood z4zees...@gmail.com:
 use FFmpeg executable file
 (without modifying and providing source code) in my own software, which will
 NOT  be available as FREE for its customers?

Do you mean
1) Software is available for customers, but NOT for free, i.e. you sell it;
2) FFmpeg is used on server side, and is not distributed to consumers.

-- 
Andrey Utkin
___
Libav-user mailing list
Libav-user@ffmpeg.org
http://ffmpeg.org/mailman/listinfo/libav-user


Re: [Libav-user] Using ffmpeg.exe in a project (non-commercial)

2012-02-23 Thread John Dexter
On 23 February 2012 09:41, jan hölscher jan.hoelsc...@codergrid.de wrote:


 2012/2/23 John Dexter jdxsoluti...@gmail.com

 On 23 February 2012 01:19, Phil Turmel phi...@turmel.org wrote:
  On 02/22/2012 10:53 AM, Benjamin Gamisch wrote:
  [...]
  I would appreciate an answer whether I am allowed to use the FFMPEG.exe
  file or not.
 
  Per your screenshot, probably not.  If you distribute FFmpeg, you must
  follow the license.  There's no exception for non-commercial use.  You must
  provide or offer to provide the source code for the version of FFmpeg you
  ship.

 In cases where just the .EXE is distributed and used, isn't standard
 practice simply to include a license.txt which has the GPL license,
 credits use of ffmpeg and provides a link, etc - and to add a notice
 to your in-app credits section, installer wizard, etc if applicable?
 ___
 Libav-user mailing list
 Libav-user@ffmpeg.org
 http://ffmpeg.org/mailman/listinfo/libav-user


 this could be interresting for you!

 http://www.gnu.org/licenses/gpl-faq.html#NFUseGPLPlugins

Yep - his case is to simply run the .EXE from his application
(emulating automated command-line usage basically). So his app avoids
the 'viral' nature of GPL but he still has some responsibilities.

See: 
http://stackoverflow.com/questions/9162234/packaging-a-gpled-utility-with-an-application
___
Libav-user mailing list
Libav-user@ffmpeg.org
http://ffmpeg.org/mailman/listinfo/libav-user


Re: [Libav-user] Muxing settings for h264 + mp4

2012-02-23 Thread ALESSANDRO PAGANELLI
The stream I'm using is coded with h264 without mpegts.

However, I'm following a sort of low level approach, since my goal is to
read frames from the file, move their content into a RTP packet and, at the
receiver side, rebuild the set of sent packets (regardless if this has an
actual sense for the file I consider).
I supposed that a simple copy of the packet's payload could be enough to
rebuild the stream at the receiver side, but I guess that I'm missing
something important.

Another weird thing: if I make a raw copy of the following AVStream's
parameters (m_copyStream is the original sender-side stream,
while outputStream is the one at the receiver side)

outputStream-r_frame_rate = m_copyStream.r_frame_rate;
outputStream-first_dts = m_copyStream.first_dts;
outputStream-pts = m_copyStream.pts;
outputStream-time_base = m_copyStream.time_base;
outputStream-pts_wrap_bits = m_copyStream.pts_wrap_bits;
outputStream-start_time = AV_NOPTS_VALUE;
outputStream-sample_aspect_ratio =
m_copyStream.sample_aspect_ratio;
outputStream-avg_frame_rate = m_copyStream.avg_frame_rate;

which I assume should replicate the sender AVStream at the receiver, the
program stops for an arithmetic exception caused by the pts, whose
denominator is 0. However, it's not clear how the original file could play
perfectly without these information...

Regards,
Alessandro

Il giorno 23 febbraio 2012 04:24, Kalileo kali...@universalx.net ha
scritto:


 On Feb 23, 2012, at 00:59 , ALESSANDRO PAGANELLI wrote:

  I'm working on a project (which uses Libav/Ffmpeg) in which I have to
 transmit an h264 encoded file (with Mp4 file format) over a simulated
 network (I'm using network simulator 3 for this), to emulate a real video
 streaming.
 
  Now, I'm facing the problem regarding how to rebuild the transmitted
 file at the receiver side. More in details, this issue regards the settings
 needed to replicate the configurations for AVFormatContext, AVStream and
 AVCodecContext, starting from the same structures I have at the transmitter.
  As for now, I just copied the content of the sender's AVCodecContext
 structure to the receiver's one, but the resulting file is broken. I
 suspect that other settings have to be replicated too, but it's not clear
 which ones are those required by h264 and Mp4.
 
  Is there any document/tutorial about the required settings for each
 specific codec or format?

 If your source file is mp4 and your stream is mpegts then you might need
 to add the h264_mp4toannexb filter. This filter is available as an option
 for ffmpeg and you can also use it between av_read_frame and av_write_frame.

  More in general, do you have suggestions about how to approach this
 problem for a generic combination of codec and format? I planned to
 implement different possible combinations of them, so it would be great if
 there is a smart way to copy these contexts without doing it by hand :)
 .

 If you scan through this list you'll note a lot of questions which
 basically come back to the same problem you see here  (and yes, one of them
 I had been asking).

 As far as I understood this problem the reason is that h264 (and I think
 also aac) are packed differently depending of if they are to be saved to a
 file or if they are to be streamed. h264 frames in a mpegts stream require
 a specific header for each frame, which is this annex B.

 This h264_mp4toannexb filter will take the required information from the
 file header and put it in the annex B frame header. This  is meant to work
 if you have a mp4 file to begin with. (There is a similar filter for aac.)

 If your source file is not in the mp4 format which this filter expects
 then you're out of luck (this is where I'm stuck too :( ). I have source
 files which are h264+aac in mpegts format, and there these filters do not
 work.

 Unfortunately there seems to be no other documentation about how to build
 a correct annex B header manually except what's in the source code (if
 there is, please point me to it!).


 ___
 Libav-user mailing list
 Libav-user@ffmpeg.org
 http://ffmpeg.org/mailman/listinfo/libav-user




-- 
__

Ing. Alessandro Paganelli, Ph. D. Student, 25th Cycle

Department of Information Engineering
University of Modena and Reggio Emilia
via Vignolese 905, 41125 Modena (MO), ITALY

E-mail: alessandro.pagane...@unimore.it
___
Libav-user mailing list
Libav-user@ffmpeg.org
http://ffmpeg.org/mailman/listinfo/libav-user


Re: [Libav-user] Using ffmpeg.exe in a project (non-commercial)

2012-02-23 Thread Phil Turmel
On 02/23/2012 04:05 AM, John Dexter wrote:
 On 23 February 2012 01:19, Phil Turmel phi...@turmel.org wrote:
 On 02/22/2012 10:53 AM, Benjamin Gamisch wrote:
 [...]
 I would appreciate an answer whether I am allowed to use the FFMPEG.exe 
 file or not.

 Per your screenshot, probably not.  If you distribute FFmpeg, you must 
 follow the license.  There's no exception for non-commercial use.  You must 
 provide or offer to provide the source code for the version of FFmpeg you 
 ship.
 
 In cases where just the .EXE is distributed and used, isn't standard
 practice simply to include a license.txt which has the GPL license,
 credits use of ffmpeg and provides a link, etc - and to add a notice
 to your in-app credits section, installer wizard, etc if applicable?

I can't say whether it is standard practice, but it is wrong.  If you
distribute, *you* are responsible for the source code of what you
distributed.  If the original app website disappears, or stops carrying
the source for the version you used, you must still be able to deliver
that source to your users.

If you deliver the correct source code with every installer, you don't
have to offer later delivery of the source code.

If you haven't delivered the source in your installer, your copyright
notice in your app can't just be an acknowledgement.  There must
be a link or a contact address where your users can request the source
from *you*.

Finally, whatever the legality, it is at least rude to hijack an open-
source app's website bandwidth to deliver source code to *your* users.

Phil
___
Libav-user mailing list
Libav-user@ffmpeg.org
http://ffmpeg.org/mailman/listinfo/libav-user


Re: [Libav-user] Using ffmpeg.exe in a project (non-commercial)

2012-02-23 Thread John Dexter
On 23 February 2012 12:07, Phil Turmel phi...@turmel.org wrote:
 Finally, whatever the legality, it is at least rude to hijack an open-
 source app's website bandwidth to deliver source code to *your* users.

Apart from the inherent problem of defining social etiquette within a
legal contract... if I distribute ffmpeg.exe _un-modified_,  are the
users MY users or ffmpeg's users? If I _don't_ distribute it but tell
users they need to download it, then who is responsible?
___
Libav-user mailing list
Libav-user@ffmpeg.org
http://ffmpeg.org/mailman/listinfo/libav-user


Re: [Libav-user] Using ffmpeg.exe in a project (non-commercial)

2012-02-23 Thread Phil Turmel
On 02/23/2012 07:16 AM, John Dexter wrote:
 On 23 February 2012 12:07, Phil Turmel phi...@turmel.org wrote:
 Finally, whatever the legality, it is at least rude to hijack an open-
 source app's website bandwidth to deliver source code to *your* users.
 
 Apart from the inherent problem of defining social etiquette within a
 legal contract... if I distribute ffmpeg.exe _un-modified_,  are the
 users MY users or ffmpeg's users? If I _don't_ distribute it but tell
 users they need to download it, then who is responsible?

The GPL is a license to distribute.  The terms of distributing binary
versions do not distinguish between modified and unmodified.  (Section 6).

Modifying the source, and then distributing, whether in source or binary
form, has further requirements.  (Section 5).

http://www.gnu.org/licenses/gpl.html

Phil
___
Libav-user mailing list
Libav-user@ffmpeg.org
http://ffmpeg.org/mailman/listinfo/libav-user


Re: [Libav-user] Muxing settings for h264 + mp4

2012-02-23 Thread Kalileo

On Feb 23, 2012, at 18:37 , ALESSANDRO PAGANELLI wrote:

 The stream I'm using is coded with h264 without mpegts. 

if you have as input an mp4 file and as output an h264 stream, with or without 
mpegts, then AFAIK you need the h264_mp4toannexb filter.
___
Libav-user mailing list
Libav-user@ffmpeg.org
http://ffmpeg.org/mailman/listinfo/libav-user


[Libav-user] DeckLink libavdevice

2012-02-23 Thread Deron
Taking Nicolas George's suggestion, I have created a basic libavdevice 
for Blackmagic's DeckLink HD-SDI cards. I'm thrilled to have it working 
to any degree (much easier than I expected), but still have several 
issues to work out. Where is the proper place to ask questions for a new 
libavdevice? ffmpeg-dev or here or ?


The most important is that the normal use of the device will be to 
output a specific frame size/fps and the audio is _always_ 48k s16le 2, 
8 or 16 channels.


The issues I'm not sure about are:

1) Automatically converting audio to 48k, s16le, 2/4/8 channels.

2) Automatically scale/crop video to output.

3) Proper configure detection of installed DeckLink includes.

And of course getting past the patch review ;-) I am certainly not 
compliant at this moment!


If creating an input device is as easy as this has been so far, then I 
hope to create a capture device next.


Thanks,

Deron

___
Libav-user mailing list
Libav-user@ffmpeg.org
http://ffmpeg.org/mailman/listinfo/libav-user


Re: [Libav-user] Using ffmpeg.exe in a project (non-commercial)

2012-02-23 Thread Carl Eugen Hoyos
John Dexter jdxsolutions@... writes:

 On 23 February 2012 12:07, Phil Turmel philip@... wrote:
  Finally, whatever the legality, it is at least rude to hijack an open-
  source app's website bandwidth to deliver source code to *your* users.
 
 Apart from the inherent problem of defining social etiquette within a
 legal contract... if I distribute ffmpeg.exe _un-modified_,  are the
 users MY users or ffmpeg's users? If I _don't_ distribute it but tell
 users they need to download it, then who is responsible?

You have to tell them where they can download the exact sources you 
used to compile ffmpeg.exe - therefore you have to provide the source on 
your own download server, because this is the only way to make sure the 
sources are really available.

If your installer installs ffmpeg.exe on the user's computer, do not 
forget to inform your users (in your EULA) that you are installing 
FFmpeg, that FFmpeg is released under the GPL and where to find the 
authors of FFmpeg (and repeat that for all other projects that you 
use, like for example x264).

Note that all requirements you have to follow make absolutely no 
difference between commercial and non-commercial projects.

Carl Eugen

___
Libav-user mailing list
Libav-user@ffmpeg.org
http://ffmpeg.org/mailman/listinfo/libav-user


Re: [Libav-user] DeckLink libavdevice

2012-02-23 Thread Carl Eugen Hoyos
Deron deron@... writes:

 Taking Nicolas George's suggestion, I have created a basic 
 libavdevice for Blackmagic's DeckLink HD-SDI cards.

Then please send the patch to ffmpeg-devel where it can be discussed 
(and later applied).

Consider running tools/patcheck over your patch and please note that 
plain text is heavily preferred over html on all mailing lists.

Carl Eugen

___
Libav-user mailing list
Libav-user@ffmpeg.org
http://ffmpeg.org/mailman/listinfo/libav-user


[Libav-user] A very general question

2012-02-23 Thread amir . rouhi
When somebody ask a question and don't receive any response...what does it
mean?
___
Libav-user mailing list
Libav-user@ffmpeg.org
http://ffmpeg.org/mailman/listinfo/libav-user


Re: [Libav-user] A very general question

2012-02-23 Thread Peter Enerccio
C-C-C-C-COMBO BREAKER

2012/2/24 amir.ro...@rmit.edu.au

 When somebody ask a question and don't receive any response...what does it
 mean?


 ___
 Libav-user mailing list
 Libav-user@ffmpeg.org
 http://ffmpeg.org/mailman/listinfo/libav-user


___
Libav-user mailing list
Libav-user@ffmpeg.org
http://ffmpeg.org/mailman/listinfo/libav-user


Re: [Libav-user] A very general question

2012-02-23 Thread amir . rouhi
Whats is that?  C-C-C-C-COMBO BREAKER  i have no idea toward this

On 24 February 2012 12:15, Peter Enerccio enerc...@gmail.com wrote:

 C-C-C-C-COMBO BREAKER

 2012/2/24 amir.ro...@rmit.edu.au

 When somebody ask a question and don't receive any response...what does
 it mean?


 ___
 Libav-user mailing list
 Libav-user@ffmpeg.org
 http://ffmpeg.org/mailman/listinfo/libav-user


 ___
 Libav-user mailing list
 Libav-user@ffmpeg.org
 http://ffmpeg.org/mailman/listinfo/libav-user




-- 
Amir H. Rouhi
PhD Student/ CSIT RMIT University
Room: 14-09-04
http://raws.adc.rmit.edu.au/~s3288736/blog2/
___
Libav-user mailing list
Libav-user@ffmpeg.org
http://ffmpeg.org/mailman/listinfo/libav-user


Re: [Libav-user] [libav-user] demuxing of incoming rtp stream by means of libavformat and custom IO

2012-02-23 Thread Dmitry Volyntsev
I found out the answer by myself. May be it could be useful for other
ffmpeg newbies.

It is impossible to feed only rtp stream to libav for just depacketising
purpose without establishing rtsp input by means of libav

//! Demuxer will use avio_open, no opened file should be provided by the
caller.
#define AVFMT_NOFILE0x0001

[rtp @ 0x8d2500] Custom AVIOContext makes no sense and will be ignored with
AVFMT_NOFILE format.

./libavformat/rtspenc.c:.flags = AVFMT_NOFILE | AVFMT_GLOBALHEADER,
./libavformat/rtsp.c:.flags = AVFMT_NOFILE,
./libavformat/rtspdec.c:.flags = AVFMT_NOFILE,


/*
 * I/O context.
 *
 * decoding: either set by the user before avformat_open_input() (then
 * the user must close it manually) or set by avformat_open_input().
 * encoding: set by the user.
 *
 * Do NOT set this field if AVFMT_NOFILE flag is set in

 * iformat/oformat.flags. In such a case, the (de)muxer will handle
 * I/O in some other way and this field will be NULL.
 */
AVIOContext *pb;

On Fri, Feb 17, 2012 at 6:48 PM, Dmitry Volyntsev
xeioexcept...@gmail.comwrote:

 Hi All!

 I have a question related to demuxing of incoming rtp stream by means of
 libavformat.

 1) My program has it own event loop (libevent) and I can't easily
 integrate libavformat routines to reading from udp and tcp sockets
 straightforwardly
 2) I already wrote custom IO routines and RTSP protocol negotiator
 (communicates with other side and requests streaming from RTSP server to
 local udp ports)

 What I tried to do:

  ioBuffer_ = (unsigned char *)av_mallocz(_IO_BUFFER_SIZE
 +
 FF_INPUT_BUFFER_PADDING_SIZE);

  ioContext_ = avio_alloc_context(ioBuffer_, _IO_BUFFER_SIZE,
0, ptr, my_read, NULL, NULL);


  formatCtx_ = avformat_alloc_context();
  formatCtx_-flags |= AVFMT_FLAG_CUSTOM_IO | AVFMT_FLAG_NONBLOCK;
  formatCtx_-pb = ioContext_;
  res = avformat_open_input(formatCtx_, spf-avs, NULL, NULL);


 my_read() - reads incoming raw RTP stream packets

 Unfortunately constantly returns AVERROR(EAGAIN)

 I just want to feed raw RTP data to libavformat for demuxing  purposes and
 just get the pure videodata back for further processing

 What should I do for to get it done?

 Thanks in advance!

 --
 Be happy,
 Best regards,
 Dmitry Volyntsev




-- 
Be happy,
Best regards,
Dmitry Volyntsev
___
Libav-user mailing list
Libav-user@ffmpeg.org
http://ffmpeg.org/mailman/listinfo/libav-user