From 0251d3f2986bf70d4721b7127ca6ddcc9da3b256 Mon Sep 17 00:00:00 2001 From: Carl Hetherington Date: Wed, 22 Aug 2012 18:57:05 +0100 Subject: Add basic example; tweak bits and pieces. --- examples/help.j2c | Bin 0 -> 161027 bytes examples/help.png | Bin 0 -> 49919 bytes examples/make_dcp.cc | 58 ++++++++++++++++++++++++++++++++++++++++++++ examples/sine_440_-12dB.wav | Bin 0 -> 384080 bytes examples/sine_880_-12dB.wav | Bin 0 -> 384080 bytes examples/wscript | 7 ++++++ 6 files changed, 65 insertions(+) create mode 100644 examples/help.j2c create mode 100644 examples/help.png create mode 100644 examples/make_dcp.cc create mode 100644 examples/sine_440_-12dB.wav create mode 100644 examples/sine_880_-12dB.wav create mode 100644 examples/wscript (limited to 'examples') diff --git a/examples/help.j2c b/examples/help.j2c new file mode 100644 index 00000000..5ff1afb0 Binary files /dev/null and b/examples/help.j2c differ diff --git a/examples/help.png b/examples/help.png new file mode 100644 index 00000000..a192abc7 Binary files /dev/null and b/examples/help.png differ diff --git a/examples/make_dcp.cc b/examples/make_dcp.cc new file mode 100644 index 00000000..71e15427 --- /dev/null +++ b/examples/make_dcp.cc @@ -0,0 +1,58 @@ +/* + Copyright (C) 2012 Carl Hetherington + + This program is free software; you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by + the Free Software Foundation; either version 2 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License + along with this program; if not, write to the Free Software + Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. + +*/ + +#include +#include +#include +#include "dcp.h" +#include "picture_asset.h" +#include "sound_asset.h" +#include "reel.h" + +std::string +video_frame (int /* frame */) +{ + return "examples/help.j2c"; +} + +int +main () +{ + libdcp::DCP dcp ("My Film DCP", "My Film", libdcp::FEATURE, 24, 48); + + boost::shared_ptr picture_asset ( + new libdcp::MonoPictureAsset (sigc::ptr_fun (&video_frame), "My Film DCP", "video.mxf", 0, 24, 48, 1998, 1080) + ); + + std::vector sound_files; + sound_files.push_back ("examples/sine_440_-12dB.wav"); + sound_files.push_back ("examples/sine_880_-12dB.wav"); + + boost::shared_ptr sound_asset ( + new libdcp::SoundAsset (sound_files, "My Film DCP", "audio.mxf", 0, 24, 48) + ); + + dcp.add_reel ( + boost::shared_ptr ( + new libdcp::Reel (picture_asset, sound_asset, boost::shared_ptr ()) + ) + ); + + dcp.write_xml (); +} diff --git a/examples/sine_440_-12dB.wav b/examples/sine_440_-12dB.wav new file mode 100644 index 00000000..e213d8c8 Binary files /dev/null and b/examples/sine_440_-12dB.wav differ diff --git a/examples/sine_880_-12dB.wav b/examples/sine_880_-12dB.wav new file mode 100644 index 00000000..772799bb Binary files /dev/null and b/examples/sine_880_-12dB.wav differ diff --git a/examples/wscript b/examples/wscript new file mode 100644 index 00000000..b6b28653 --- /dev/null +++ b/examples/wscript @@ -0,0 +1,7 @@ +def build(bld): + obj = bld(features = 'cxx cxxprogram') + obj.name = 'examples' + obj.use = 'libdcp' + obj.source = 'make_dcp.cc' + obj.target = 'make_dcp' + obj.install_path = '' -- cgit v1.2.3