hi Gary,
ChIPQC should work fine for BAM files aligned to any genome. Since there isn't a prebuilt TxDB package for mandarin duck, the summary of gene signal within genic regions is not immediately supported.
To run ChIPQC on a single BAM.
ChIPQCsample("MyDuckData.bam")
I would recommend running all your samples together using the ChIPQC function with a sample sheet showing the set-up of your experiment. This is detailed in the package vignette (http://bioconductor.org/packages/release/bioc/vignettes/ChIPQC/inst/doc/ChIPQC.pdf)
You can also provide custom annotation to ChIPQC in the form of a list of GRanges objects. This is described in this workshop
http://bioconductor.org/help/course-materials/2014/BioC2014/Bioc2014_ChIPQC_Practical.pdf
and in this previous post
creating custom genome annotation for the ChIPQC package
If you have a gtf for gene models you should be able to build a ChIPQC annotation for your genome of interest.
require(GenomicFeatures)
require(GenomicRanges)
txdb <- makeTxDbFromGFF("MyGTF.gtf",format="gtf")
All5utrs <- reduce(unique(unlist(fiveUTRsByTranscript(txdb))))
All3utrs <- reduce(unique(unlist(threeUTRsByTranscript(txdb))))
Allcds <- reduce(unique(unlist(cdsBy(txdb,"tx"))))
Allintrons <- reduce(unique(unlist(intronsByTranscript(txdb))))
Alltranscripts <- reduce(unique(unlist(transcripts(txdb))))
posAllTranscripts <- Alltranscripts[strand(Alltranscripts) == "+"]
posAllTranscripts <- posAllTranscripts[!(start(posAllTranscripts)-20000 < 0)]
negAllTranscripts <- Alltranscripts[strand(Alltranscripts) == "-"]
chrLimits <- seqlengths(negAllTranscripts)[as.character(seqnames(negAllTranscripts))]
negAllTranscripts <- negAllTranscripts[!(end(negAllTranscripts)+20000 > chrLimits)]
Alltranscripts <- c(posAllTranscripts,negAllTranscripts)
Promoters500 <- reduce(flank(Alltranscripts,500))
Promoters2000to500 <- reduce(flank(Promoters500,1500))
LongPromoter20000to2000 <- reduce(flank(Promoters2000to500,18000))
duckAnnotation <- list(version="",LongPromoter20000to2000=LongPromoter20000to2000,
Promoters2000to500=Promoters2000to500,Promoters500=Promoters500,
All5utrs=All5utrs,Alltranscripts=Alltranscripts,Allcds=Allcds,
Allintrons=Allintrons,All3utrs=All3utrs)
ChIPQCsample("MyDuckData.bam",annotation=duckAnnotation)
very best,
tom