Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 539894 - media-video/kino-1.3.4 - frame.cc:106:46: error: ‘CODEC_ID_DVVIDEO’ was not declared in this scope
Summary: media-video/kino-1.3.4 - frame.cc:106:46: error: ‘CODEC_ID_DVVIDEO’ was not d...
Status: RESOLVED FIXED
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: Current packages (show other bugs)
Hardware: All Linux
: Normal normal (vote)
Assignee: Denis Dupeyron (RETIRED)
URL:
Whiteboard:
Keywords:
: 601798 610748 611722 (view as bug list)
Depends on:
Blocks: ffmpeg-3
  Show dependency tree
 
Reported: 2015-02-12 18:55 UTC by Reto Gantenbein (ganto)
Modified: 2017-06-17 09:26 UTC (History)
18 users (show)

See Also:
Package list:
Runtime testing required: ---


Attachments
media-video/kino-1.3.4 build.log against media-video/libav-11.2 (kino-1.3.4_build.log.xz,7.23 KB, application/x-xz)
2015-02-12 19:00 UTC, Reto Gantenbein (ganto)
Details
patch to compile with ffmpeg-3.2 (kino-ffmpeg3.patch,6.68 KB, patch)
2016-12-10 17:18 UTC, milan hodoscek
Details | Diff
patch to compile kino-1.3.4 with the ffmpeg-3.2 (kino-ffmpeg3.patch,6.68 KB, patch)
2016-12-10 19:20 UTC, milan hodoscek
Details | Diff
kino-1.34 proposed patch for FFmpeg-3 (kino-ffmpeg3.x.patch,6.64 KB, patch)
2016-12-18 19:23 UTC, Jean-Francois Ostiguy
Details | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description Reto Gantenbein (ganto) 2015-02-12 18:55:18 UTC
There is a build failure when building media-video/kino-1.3.4 against the latest tilde-masked media-video/libav

Reproducible: Always

Steps to Reproduce:
ACCEPT_KEYWORDS="~amd64" emerge media-video/libav media-video/kino
Actual Results:  
x86_64-pc-linux-gnu-g++ -DHAVE_CONFIG_H -I. -I.. -Wall     -I/usr/include/lqt  -I/usr/include/alsa  -I/usr/include/libxml2  -pthread -I/usr/include/libglade-2.0 -I/usr/include/libxml2 -I/usr/include/gtk-2.0 -I/usr/lib64/gtk-2.0/include -I/usr/include/pango-1.0 -I/usr/include/atk-1.0 -I/usr/include/cairo -I/usr/include/pixman-1 -I/usr/include/libdrm -I/usr/include/gdk-pixbuf-2.0 -I/usr/include/libpng16 -I/usr/include/pango-1.0 -I/usr/include/harfbuzz -I/usr/include/pango-1.0 -I/usr/include/glib-2.0 -I/usr/lib64/glib-2.0/include -I/usr/include/freetype2     -D_FILE_OFFSET_BITS=64 -DKINO_PLUGINDIR=\""/usr/lib64/kino-gtk2"\" -DDATADIR=\""/usr/share"\" -D_REENTRANT -D__STDC_CONSTANT_MACROS  -I/usr/include/libavcodec -I/usr/include/libavformat -I/usr/include/libswscale  -march=amdfam10 -O2 -pipe -c -o ieee1394io.o ieee1394io.cc
frame.cc: In constructor ‘Frame::Frame()’:
frame.cc:106:46: error: ‘CODEC_ID_DVVIDEO’ was not declared in this scope
                        avcodec_find_decoder( CODEC_ID_DVVIDEO ), NULL );
[...]

Makefile:744: recipe for target 'frame.o' failed
make[3]: *** [frame.o] Error 1
make[3]: *** Waiting for unfinished jobs....
ieee1394io.cc: In member function ‘int IEEE1394Writer::WaitForAction(bool, int)’:
ieee1394io.cc:1266:9: warning: variable ‘result’ set but not used [-Wunused-but-set-variable]
     int result;

Expected Results:  
Successful build or hint about incompatibility

Portage 2.2.14 (python 2.7.9-final-0, default/linux/amd64/13.0/no-emul-linux-x86/desktop/gnome/systemd, gcc-4.8.3, glibc-2.19-r1, 3.18.6-gentoo x86_64)
=================================================================
System uname: Linux-3.18.6-gentoo-x86_64-AMD_Phenom-tm-_II_X6_1075T_Processor-with-gentoo-2.2
KiB Mem:    16372244 total,   5606912 free
KiB Swap:    4194300 total,   4194300 free
Timestamp of tree: Thu, 12 Feb 2015 02:00:01 +0000
ld GNU ld (Gentoo 2.24 p1.4) 2.24
ccache version 3.1.9 [disabled]
app-shells/bash:          4.3_p33-r1
dev-java/java-config:     2.2.0
dev-lang/perl:            5.20.1-r4
dev-lang/python:          2.7.9-r1, 3.3.5-r1, 3.4.1
dev-util/ccache:          3.1.9-r4
dev-util/cmake:           2.8.12.2-r1
dev-util/pkgconfig:       0.28-r1
sys-apps/baselayout:      2.2
sys-apps/openrc:          0.13.9
sys-apps/sandbox:         2.6-r1
sys-devel/autoconf:       2.13, 2.69
sys-devel/automake:       1.10.3-r1, 1.11.6-r1, 1.12.6, 1.13.4, 1.14.1
sys-devel/binutils:       2.24-r3
sys-devel/gcc:            4.8.3
sys-devel/gcc-config:     1.7.3
sys-devel/libtool:        2.4.4
sys-devel/make:           4.0-r1
sys-kernel/linux-headers: 3.19 (virtual/os-headers)
sys-libs/glibc:           2.19-r1
Repositories: gentoo x11 ruby
ACCEPT_KEYWORDS="amd64"
ACCEPT_LICENSE="*"
CBUILD="x86_64-pc-linux-gnu"
CFLAGS="-march=amdfam10 -O2 -pipe"
CHOST="x86_64-pc-linux-gnu"
CONFIG_PROTECT="/etc /usr/share/gnupg/qualified.txt /var/lib/hsqldb /var/spool/munin-async/.ssh"
CONFIG_PROTECT_MASK="/etc/ca-certificates.conf /etc/dconf /etc/env.d /etc/fonts/fonts.conf /etc/gconf /etc/gentoo-release /etc/php/apache2-php5.5/ext-active/ /etc/php/cgi-php5.5/ext-active/ /etc/php/cli-php5.5/ext-active/ /etc/revdep-rebuild /etc/sandbox.d /etc/terminfo /etc/texmf/language.dat.d /etc/texmf/language.def.d /etc/texmf/updmap.d /etc/texmf/web2c"
CXXFLAGS="-march=amdfam10 -O2 -pipe"
DISTDIR="/usr/portage/distfiles"
FCFLAGS="-O2 -pipe"
FEATURES="assume-digests binpkg-logs config-protect-if-modified distlocks ebuild-locks fakeroot fixlafiles merge-sync news parallel-fetch preserve-libs protect-owned sandbox sfperms strict unknown-features-warn unmerge-logs unmerge-orphans userfetch userpriv usersandbox usersync xattr"
FFLAGS="-O2 -pipe"
GENTOO_MIRRORS="http://mirror.switch.ch/ftp/mirror/gentoo/ http://de-mirror.org/distro/gentoo/"
LANG="en_US"
LDFLAGS="-Wl,-O1 -Wl,--as-needed"
MAKEOPTS="-j7"
PKGDIR="/usr/portage/packages"
PORTAGE_CONFIGROOT="/"
PORTAGE_RSYNC_OPTS="--recursive --links --safe-links --perms --times --omit-dir-times --compress --force --whole-file --delete --stats --human-readable --timeout=180 --exclude=/distfiles --exclude=/local --exclude=/packages"
PORTAGE_TMPDIR="/var/tmp"
PORTDIR="/usr/portage"
PORTDIR_OVERLAY="/var/lib/layman/x11 /var/lib/layman/ruby"
USE="3dnow 3dnowext X X509 a52 aac aalib acl acpi aio aisleriot alsa amd64 amr apng archive aspell async audio audit avahi bash-completion berkdb bluetooth bonjour bookmarks branding brasero btrfs bzip2 cairo caps ccache cdaudio cdda cddb cdio cdr cdrkit cjk cli clutter colord console corefonts cracklib crypt css cups curl cxx daap dbus dc1394 dconf deskbar device-mapper dga dhcp dia discouraged disk-partition diskio divx dmi dmraid dri drm dts dv dvd dvdr dvi dvipdfm eds emboss emerald enca encode evo exchange exif expat fam fasttrack fat fbcon ffmpeg firefox flac flickr fontconfig fortran ftp fts fts3 fuse gaim gallium gbm gcj gconf gd gdbm gdu gedit geoip gif gimp gimpprint git glamor glib glitz glsa glut gmp gnome gnome-keyring gnome-online-accounts gnome-print gnuplot gnutella gnutls gphoto2 gpm graphics graphviz grilo gs gsf gstreamer gtk gtk3 gtkhtml gudev guile h323 hddtemp hfs hwdb ical iconv icq icu id3tag idn ieee1394 imagemagick imap inherit-graph inkjar introspection ios ipod iptc ipv6 irc ithreads jabber jpeg kate kerberos keymap keyring kpathsea kqemu kvm lame lastfm latex lcms ldap libass libav libnotify libsamplerate libsecret libsexy live llvm-gcc lm_sensors logrotate lvm lzma lzo mad magic map matroska mdadm mdnsresponder-compat midi mjpeg mmap mmx mmxext mng modules mono mp2 mp3 mp4 mpeg msn mtp multilib musepack musicbrainz nautilus ncurses network networking networkmanager nfs nfsidmap nls nntp nolvm1 nolvmstatic nptl nsplugin nss ntfs ntfsprogs nvidia ocamlopt ofx ogg opengl openmp openvg osmesa pam pango parted pcntl pcre pdf pdfimport playlist plotutils png podcast policykit postscript ppds prediction print pstricks pulseaudio python3 qemu qt3support qt4 quicktime rar rdesktop readline resolvconf rtc rtmp rtsp sasl schroedinger science scrobbler sdl secure-delete sendto session shout sip smi smp socialweb soundtouch soup sourceview spell sse sse2 ssh ssl stream subtitles subversion svg symlink systemd taglib tagwriting tcpd telepathy tex4ht tga theora threads threadsonly tiff tk toolkit-scroll-bars totem tracker truetype udev udisks unicode unique upnp upower urandom usb usbredir v4l2 vala vcd vdisk vdpau video vim-syntax virtualbox vlm vnc vorbis vpx vte wav webgl webkit wma wmf wxwidgets x264 xa xanim xattr xcb xcomposite xetex xfs xinerama xml xmldoclet xmp xulrunner xv xvid xvmc youtube zeitgeist zeroconf zlib" ABI_X86="64" ALSA_CARDS="hda-intel" APACHE2_MPMS="worker" CALLIGRA_FEATURES="kexi words flow plan sheets stage tables krita karbon braindump author" CAMERAS="ptp2" COLLECTD_PLUGINS="df interface irq load memory rrdtool swap syslog" CPU_FLAGS_X86="3dnow 3dnowext mmx mmxext popcnt sse sse2 sse3 sse4a" CURL_SSL="openssl" ELIBC="glibc" GPSD_PROTOCOLS="ashtech aivdm earthmate evermore fv18 garmin garmintxt gpsclock itrax mtk3301 nmea ntrip navcom oceanserver oldstyle oncore rtcm104v2 rtcm104v3 sirf superstar2 timing tsip tripmate tnt ublox ubx" GRUB_PLATFORMS="efi-64" INPUT_DEVICES="evdev" KERNEL="linux" LCD_DEVICES="bayrad cfontz cfontz633 glk hd44780 lb216 lcdm001 mtxorb ncurses text" LIBREOFFICE_EXTENSIONS="presenter-console presenter-minimizer" LINGUAS="en" OFFICE_IMPLEMENTATION="libreoffice" PYTHON_SINGLE_TARGET="python3_4" PYTHON_TARGETS="python2_7 python3_4" QEMU_SOFTMMU_TARGETS="i386 x86_64" QEMU_USER_TARGETS="i386 x86_64" RUBY_TARGETS="ruby20" SANE_BACKENDS="plustek" USERLAND="GNU" VIDEO_CARDS="nouveau vesa" XTABLES_ADDONS="quota2 psd pknock lscan length2 ipv4options ipset ipp2p iface geoip fuzzy condition tee tarpit sysrq steal rawnat logmark ipmark dhcpmac delude chaos account"
Unset:  CPPFLAGS, CTARGET, EMERGE_DEFAULT_OPTS, INSTALL_MASK, LC_ALL, PORTAGE_BUNZIP2_COMMAND, PORTAGE_COMPRESS, PORTAGE_COMPRESS_FLAGS, PORTAGE_RSYNC_EXTRA_OPTS, SYNC, USE_PYTHON
Comment 1 Reto Gantenbein (ganto) 2015-02-12 19:00:36 UTC
Created attachment 396272 [details]
media-video/kino-1.3.4 build.log against media-video/libav-11.2
Comment 2 Oldrich Jedlicka 2015-02-18 20:50:51 UTC
CODEC_ID_DVVIDEO is only a beginning. When you update it to AV_CODEC_ID_DVVIDEO, you fail with non-existing call to avcodec_encode_video.
Comment 3 Pacho Ramos gentoo-dev 2016-12-06 20:32:09 UTC
Also with ffmpeg-3.2
Comment 4 Pacho Ramos gentoo-dev 2016-12-06 20:32:14 UTC
*** Bug 601798 has been marked as a duplicate of this bug. ***
Comment 5 Alexis Ballier gentoo-dev 2016-12-07 09:40:41 UTC
from http://www.kinodv.org/



Kino is a dead project
( 05.08.2013 14:15 )
Kino has not been actively maintained since 2009. We encourage you to try other Linux video editors such as Shotcut, Kdenlive, Flowblade, OpenShot, PiTiVi, LiVES, and LightWorks.




maybe it is time to treeclean it? Denis, your call.
Comment 6 milan hodoscek 2016-12-10 17:18:24 UTC
Created attachment 455772 [details, diff]
patch to compile with ffmpeg-3.2

The suggested replacements are to fancy. Kino is still useful, so I spent few minutes to bring it up to date with the new ffmpeg :-)

I put this patch into /etc/portage/patches/media-video/kino-1.3.4 folder

But for some unknown reason to me I needed to put epatch_user in to the ebuild. I don't know why some ebuilds can do it without the epatch_user and others still need to have it in the ebuild ???
Comment 7 milan hodoscek 2016-12-10 19:20:51 UTC
Created attachment 455778 [details, diff]
patch to compile kino-1.3.4 with the ffmpeg-3.2

somehow previous incomplete version of a patch got uploaded. This is the working one. Also it needs -fpermissive to compile.
Comment 8 Helmut Jarausch 2016-12-11 12:00:33 UTC
(In reply to milan hodoscek from comment #7)
> Created attachment 455778 [details, diff] [details, diff]
> patch to compile kino-1.3.4 with the ffmpeg-3.2
> 
> somehow previous incomplete version of a patch got uploaded. This is the
> working one. Also it needs -fpermissive to compile.

Hi,
even with this patch I get an error:

frame.cc:1476:96: error: invalid conversion from 'size_t {aka long unsigned int}' to 'const AVFrame*' [-fpermissive]
 avcodec_encode_video2( avcodecEncoder, &avpacketEncoder, size, (int *)output );
                                                                              ^
In file included from frame.h:51:0,
                 from frame.cc:56:
/usr/include/libavcodec/avcodec.h:5329:5: note:   initializing argument 3 of 'int avcodec_encode_video2(AVCodecContext*, AVPacket*, const AVFrame*, int*)'
 int avcodec_encode_video2(AVCodecContext *avctx, AVPacket *avpkt,
     ^
frame.cc:1476:96: warning: 'int avcodec_encode_video2(AVCodecContext*, AVPacket*, const AVFrame*, int*)' is deprecated [-Wdeprecated-declarations]
 avcodec_encode_video2( avcodecEncoder, &avpacketEncoder, size, (int *)output );
                                                                              ^
I.e., the 3rd argument isn't 'size' anymore, but a pointer.
Do you have any fix?
Comment 9 milan hodoscek 2016-12-11 12:11:37 UTC
You need a -fpermissive flag in your g++. I added the file with the name kino to the /etc/portage/env/media-video folder. It contains the following line:

CXXFLAGS="${CXXFLAGS} -fpermissive"

I use this because it was suggested by compiler. But it would be better to fix it properly. I tried -fpermissive compiled kino on a random movie file - cut it a little and export it and it works, so I guess we are good even with this flag ??
Comment 10 Jean-Francois Ostiguy 2016-12-18 19:23:37 UTC
Created attachment 456616 [details, diff]
kino-1.34 proposed patch  for FFmpeg-3


I have been using this patch successfully. Note that the patch is not combatible with older versions of FFmpeg. A more general, fully compatible patch is possible but would require a bit more work and some testing.
Comment 11 Pacho Ramos gentoo-dev 2017-01-11 12:22:12 UTC
do you want to proxy maintain this package?
wiki.gentoo.org/wiki/Project:Proxy_Maintainers
Comment 12 Jeff Hubbs 2017-01-16 00:22:51 UTC
I'd certainly appreciate a fix because as far as I know this is the only Linux app that can pull video off of a DV (e.g. Canon Elura) camcorder via Firewire.
Comment 13 Pacho Ramos gentoo-dev 2017-01-16 10:06:05 UTC
CCing treecleaners for the case this doesn't get any maintainer as, in upstream state (completely abandoned), this will be a hell to maintain on every ffmpeg major bump
Comment 14 Sergey S. Starikoff 2017-02-18 15:48:46 UTC
(In reply to Jeff Hubbs from comment #12)
> I'd certainly appreciate a fix because as far as I know this is the only
> Linux app that can pull video off of a DV (e.g. Canon Elura) camcorder via
> Firewire.

Please, note, that for grabbing video from Firewire-connected camcoder net-misc/clipgrab is much more pretty tool.
Comment 15 Randy Andy 2017-02-18 16:21:53 UTC
I guess yo mixed it up with
media-video/dvgrab ;-)


(In reply to Sergey S. Starikoff from comment #14)
> Please, note, that for grabbing video from Firewire-connected camcoder
> net-misc/clipgrab is much more pretty tool.
Comment 16 Sergey S. Starikoff 2017-02-19 17:42:15 UTC
(In reply to milan hodoscek from comment #6)
> But for some unknown reason to me I needed to put epatch_user in to the
> ebuild. I don't know why some ebuilds can do it without the epatch_user and
> others still need to have it in the ebuild ???

Why «unknown»?
For this particular ebuild this reason is well-known. It is redefined src_prepare function with missed epatch_user function call.

kino-ffmpeg3.patch for me failed with =media-video/ffmpeg-3.2.4, kino-ffmpeg3.x.patch succeed.


Alternatives for this abandoned project of course welcome.
But I don't want to loose my existing projects archive.
Here we should at least point a question about some common format, like Open Document for office docs.
Comment 17 fjmccloud 2017-04-10 06:58:00 UTC
Thank you for the patch!
I can confirm the ffmpeg3.x.patch indeed compiles fine against current gentoo ffmpeg, and the resulting kino binary seems functional.

I made a local portage overlay kino, and I chose to rename the patch for consistency.
All I had to do was add one line to the ebuild, following the example of other patches:
epatch "${FILESDIR}/${P}-ffmpeg3.x.patch"

I love kino and am happy to see it buildable.
Comment 18 Pacho Ramos gentoo-dev 2017-05-28 12:08:07 UTC
*** Bug 611722 has been marked as a duplicate of this bug. ***
Comment 19 Pacho Ramos gentoo-dev 2017-05-28 12:08:53 UTC
*** Bug 610748 has been marked as a duplicate of this bug. ***
Comment 20 Pacho Ramos gentoo-dev 2017-06-17 09:26:51 UTC
fixed in -r1